From 748af7ac643286f12a376633aa250dfc2355bd22 Mon Sep 17 00:00:00 2001 From: mehmet-erim Date: Tue, 21 Apr 2020 15:51:37 +0300 Subject: [PATCH] refactor(core): improve generatePassword code quality --- .../core/src/lib/utils/generator-utils.ts | 21 ++++++++----------- 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/npm/ng-packs/packages/core/src/lib/utils/generator-utils.ts b/npm/ng-packs/packages/core/src/lib/utils/generator-utils.ts index f29e33f2bb..9fccfb8271 100644 --- a/npm/ng-packs/packages/core/src/lib/utils/generator-utils.ts +++ b/npm/ng-packs/packages/core/src/lib/utils/generator-utils.ts @@ -29,18 +29,15 @@ export function generatePassword(length = 8) { const getRandom = (chrSet: string) => chrSet[Math.floor(Math.random() * chrSet.length)]; - let password = ''; - password += getRandom(lowers); - password += getRandom(uppers); - password += getRandom(numbers); - password += getRandom(specials); - - for (let i = 1; i <= length - 4; i++) { - password += getRandom(all); + const password = Array({ length }); + password[0] = getRandom(lowers); + password[1] = getRandom(uppers); + password[2] = getRandom(numbers); + password[3] = getRandom(specials); + + for (let i = 4; i < length; i++) { + password[i] = getRandom(all); } - return password - .split('') - .sort(() => 0.5 - Math.random()) - .join(''); + return password.sort(() => 0.5 - Math.random()).join(''); }