From 633bbe96fa34df2a2bf094e222cb2931c2fdfad3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=9C=A8=20Audrey=20=E2=9C=A8?= Date: Mon, 11 Nov 2024 18:43:34 -0500 Subject: [PATCH] upgrade generator account storage to object keys --- .../generator/core/src/data/generators.ts | 63 ++++++++++++++++--- 1 file changed, 55 insertions(+), 8 deletions(-) diff --git a/libs/tools/generator/core/src/data/generators.ts b/libs/tools/generator/core/src/data/generators.ts index 6ddea595ec7..baec77643ab 100644 --- a/libs/tools/generator/core/src/data/generators.ts +++ b/libs/tools/generator/core/src/data/generators.ts @@ -24,11 +24,6 @@ import { } from "../policies"; import { CatchallConstraints } from "../policies/catchall-constraints"; import { SubaddressConstraints } from "../policies/subaddress-constraints"; -import { - EFF_USERNAME_SETTINGS, - PASSPHRASE_SETTINGS, - PASSWORD_SETTINGS, -} from "../strategies/storage"; import { CatchallGenerationOptions, CredentialGenerator, @@ -76,7 +71,23 @@ const PASSPHRASE = Object.freeze({ }, wordSeparator: { maxLength: 1 }, }, - account: PASSPHRASE_SETTINGS, + account: { + key: "passphraseGeneratorSettings", + target: "object", + format: "plain", + classifier: new PublicClassifier([ + "numWords", + "wordSeparator", + "capitalize", + "includeNumber", + ]), + state: GENERATOR_DISK, + initial: DefaultPassphraseGenerationOptions, + options: { + deserializer: (value) => value, + clearOn: ["logout"], + }, + } satisfies ObjectKey, }, policy: { type: PolicyType.PasswordGenerator, @@ -126,7 +137,29 @@ const PASSWORD = Object.freeze({ max: DefaultPasswordBoundaries.minSpecialCharacters.max, }, }, - account: PASSWORD_SETTINGS, + account: { + key: "passwordGeneratorSettings", + target: "object", + format: "plain", + classifier: new PublicClassifier([ + "length", + "ambiguous", + "uppercase", + "minUppercase", + "lowercase", + "minLowercase", + "number", + "minNumber", + "special", + "minSpecial", + ]), + state: GENERATOR_DISK, + initial: DefaultPasswordGenerationOptions, + options: { + deserializer: (value) => value, + clearOn: ["logout"], + }, + } satisfies ObjectKey, }, policy: { type: PolicyType.PasswordGenerator, @@ -164,7 +197,21 @@ const USERNAME = Object.freeze({ settings: { initial: DefaultEffUsernameOptions, constraints: {}, - account: EFF_USERNAME_SETTINGS, + account: { + key: "effUsernameGeneratorSettings", + target: "object", + format: "plain", + classifier: new PublicClassifier([ + "wordCapitalize", + "wordIncludeNumber", + ]), + state: GENERATOR_DISK, + initial: DefaultEffUsernameOptions, + options: { + deserializer: (value) => value, + clearOn: ["logout"], + }, + } satisfies ObjectKey, }, policy: { type: PolicyType.PasswordGenerator,