summary refs log tree commit diff
path: root/src/api/util/utility/passwordStrength.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/api/util/utility/passwordStrength.ts')
-rw-r--r--src/api/util/utility/passwordStrength.ts20
1 files changed, 13 insertions, 7 deletions
diff --git a/src/api/util/utility/passwordStrength.ts b/src/api/util/utility/passwordStrength.ts
index 439700d0..35c55999 100644
--- a/src/api/util/utility/passwordStrength.ts
+++ b/src/api/util/utility/passwordStrength.ts
@@ -18,7 +18,8 @@ const blocklist: string[] = []; // TODO: update ones passwordblocklist is stored
  * Returns: 0 > pw > 1
  */
 export function checkPassword(password: string): number {
-	const { minLength, minNumbers, minUpperCase, minSymbols } = Config.get().register.password;
+	const { minLength, minNumbers, minUpperCase, minSymbols } =
+		Config.get().register.password;
 	var strength = 0;
 
 	// checks for total password len
@@ -42,19 +43,24 @@ export function checkPassword(password: string): number {
 	}
 
 	// checks if password only consists of numbers or only consists of chars
-	if (password.length == password.count(reNUMBER) || password.length === password.count(reUPPERCASELETTER)) {
+	if (
+		password.length == password.count(reNUMBER) ||
+		password.length === password.count(reUPPERCASELETTER)
+	) {
 		strength = 0;
 	}
-	
+
 	let entropyMap: { [key: string]: number } = {};
 	for (let i = 0; i < password.length; i++) {
 		if (entropyMap[password[i]]) entropyMap[password[i]]++;
 		else entropyMap[password[i]] = 1;
 	}
-	
+
 	let entropies = Object.values(entropyMap);
-	
-	entropies.map(x => (x / entropyMap.length));
-	strength += entropies.reduceRight((a: number, x: number) => a - (x * Math.log2(x))) / Math.log2(password.length);	
+
+	entropies.map((x) => x / entropyMap.length);
+	strength +=
+		entropies.reduceRight((a: number, x: number) => a - x * Math.log2(x)) /
+		Math.log2(password.length);
 	return strength;
 }