diff --git a/src/tools/token-generator/token-generator.service.ts b/src/tools/token-generator/token-generator.service.ts index c4a497b8..ad22628a 100644 --- a/src/tools/token-generator/token-generator.service.ts +++ b/src/tools/token-generator/token-generator.service.ts @@ -24,5 +24,6 @@ export function createToken({ + (withSymbols ? '.,;:!?./-"\'#{([-|\\@)]=}*+' : '') )).split('').filter(c => !(deniedChars?.includes(c))).join(''); - return shuffleString(allAlphabet.repeat(length)).substring(0, length); + const len = length < 1 ? 1 : length; + return shuffleString(allAlphabet.repeat(len)).substring(0, len); } diff --git a/src/tools/token-generator/token-generator.tool.vue b/src/tools/token-generator/token-generator.tool.vue index 912d1f32..3000fea6 100644 --- a/src/tools/token-generator/token-generator.tool.vue +++ b/src/tools/token-generator/token-generator.tool.vue @@ -14,7 +14,7 @@ const deniedChars = useQueryParamOrStorage({ name: 'deny', storageName: 'token-g const { t } = useI18n(); const [tokens, refreshTokens] = computedRefreshable(() => - Array.from({ length: count.value }, + Array.from({ length: count.value < 1 ? 1 : count.value }, () => createToken({ length: length.value, withUppercase: withUppercase.value, @@ -59,11 +59,12 @@ const { copy } = useCopy({ source: tokens, text: t('tools.token-generator.copied - + - + +