17 lines
584 B
TypeScript
17 lines
584 B
TypeScript
![]() |
export class Obfuscator {
|
||
|
obfuscate = (value: string) => {
|
||
|
if (value.length < 4) {
|
||
|
return "*".repeat(value.length);
|
||
|
}
|
||
|
|
||
|
return value.replace(/.(?=.{4})/g, "*");
|
||
|
};
|
||
|
|
||
|
/*
|
||
|
* // ! What if the user password contains "****"? We shouldn't rely on the characters to verify the obfuscation,
|
||
|
* // ! but rather on the context. For example, when updating a provider configuration,
|
||
|
* // ! we could check if the value has changed. If it's the same as returned from the server, then it's obfuscated.
|
||
|
*/
|
||
|
isObfuscated = (value: string) => value.includes("****");
|
||
|
}
|