aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/tools/token-generator/token-generator.service.ts18
1 files changed, 11 insertions, 7 deletions
diff --git a/src/tools/token-generator/token-generator.service.ts b/src/tools/token-generator/token-generator.service.ts
index bf6d9ac..f48a4de 100644
--- a/src/tools/token-generator/token-generator.service.ts
+++ b/src/tools/token-generator/token-generator.service.ts
@@ -6,19 +6,23 @@ export function createToken({
withNumbers = true,
withSymbols = false,
length = 64,
+ alphabet,
}: {
withUppercase?: boolean;
withLowercase?: boolean;
withNumbers?: boolean;
withSymbols?: boolean;
length?: number;
+ alphabet?: string;
}) {
- const alphabet = [
- ...(withUppercase ? 'ABCDEFGHIJKLMOPQRSTUVWXYZ' : ''),
- ...(withLowercase ? 'abcdefghijklmopqrstuvwxyz' : ''),
- ...(withNumbers ? '0123456789' : ''),
- ...(withSymbols ? '.,;:!?./-"\'#{([-|\\@)]=}*+' : ''),
- ].join('');
+ const allAlphabet =
+ alphabet ??
+ [
+ ...(withUppercase ? 'ABCDEFGHIJKLMOPQRSTUVWXYZ' : ''),
+ ...(withLowercase ? 'abcdefghijklmopqrstuvwxyz' : ''),
+ ...(withNumbers ? '0123456789' : ''),
+ ...(withSymbols ? '.,;:!?./-"\'#{([-|\\@)]=}*+' : ''),
+ ].join('');
- return shuffleString(alphabet.repeat(length)).substring(0, length);
+ return shuffleString(allAlphabet.repeat(length)).substring(0, length);
}