@digitaldefiance/suite-core-lib 3.6.6 → 3.6.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +82 -44
- package/package.json +10 -6
- package/src/backup-code-string.ts +96 -0
- package/src/builders/{index.d.ts → index.ts} +1 -1
- package/src/builders/role-builder.ts +63 -0
- package/src/builders/user-builder.ts +72 -0
- package/src/constants.ts +220 -0
- package/src/core/{errors.d.ts → errors.ts} +4 -1
- package/src/core/{index.d.ts → index.ts} +1 -1
- package/src/core/result.ts +36 -0
- package/src/core/{types.d.ts → types.ts} +6 -1
- package/src/defaults.ts +110 -0
- package/src/enumerations/account-status.ts +17 -0
- package/src/enumerations/email-token-type.ts +24 -0
- package/src/enumerations/fec-error-type.ts +13 -0
- package/src/enumerations/{index.d.ts → index.ts} +1 -2
- package/src/enumerations/pbkdf2-error-type.ts +4 -0
- package/src/enumerations/role.ts +5 -0
- package/src/enumerations/suite-core-string-key.ts +495 -0
- package/src/errors/account-locked.ts +9 -0
- package/src/errors/account-status.ts +33 -0
- package/src/errors/admin-role-not-found.ts +10 -0
- package/src/errors/core-typed-handleable.ts +69 -0
- package/src/errors/direct-challenge-not-enabled.ts +12 -0
- package/src/errors/direct-token-used.ts +9 -0
- package/src/errors/email-in-use.ts +11 -0
- package/src/errors/email-token-expired.ts +12 -0
- package/src/errors/email-token-failed-to-send.ts +20 -0
- package/src/errors/email-token-sent-too-recently.ts +29 -0
- package/src/errors/email-token-used-or-invalid.ts +12 -0
- package/src/errors/email-verified.ts +11 -0
- package/src/errors/failed-to-use-direct-token.ts +9 -0
- package/src/errors/fec-error.ts +33 -0
- package/src/errors/generic-validation.ts +11 -0
- package/src/errors/{index.d.ts → index.ts} +0 -1
- package/src/errors/invalid-backup-code.ts +6 -0
- package/src/errors/invalid-challenge-response.ts +12 -0
- package/src/errors/invalid-challenge.ts +9 -0
- package/src/errors/invalid-credentials.ts +14 -0
- package/src/errors/invalid-email.ts +22 -0
- package/src/errors/invalid-expired-token.ts +11 -0
- package/src/errors/invalid-token.ts +13 -0
- package/src/errors/invalid-userid.ts +21 -0
- package/src/errors/invalid-username.ts +14 -0
- package/src/errors/last-admin-error.ts +12 -0
- package/src/errors/login-challenge-expired.ts +12 -0
- package/src/errors/member-role-not-found.ts +10 -0
- package/src/errors/password-login-not-enabled.ts +12 -0
- package/src/errors/password-login-not-setup.ts +12 -0
- package/src/errors/pbkdf2-error.ts +19 -0
- package/src/errors/pending-email-verification.ts +9 -0
- package/src/errors/private-key-required.ts +13 -0
- package/src/errors/system-role-not-found.ts +10 -0
- package/src/errors/token-not-found.ts +26 -0
- package/src/errors/translatable-suite-handleable.ts +27 -0
- package/src/errors/translatable-suite.ts +34 -0
- package/src/errors/user-not-found.ts +14 -0
- package/src/errors/username-email-required.ts +20 -0
- package/src/errors/username-in-use.ts +14 -0
- package/src/i18n-setup.ts +141 -0
- package/src/{index.d.ts → index.ts} +0 -1
- package/src/interfaces/backup-code-consts.ts +15 -0
- package/src/interfaces/backup-code.ts +6 -0
- package/src/interfaces/bases/email-token.ts +38 -0
- package/src/interfaces/bases/{index.d.ts → index.ts} +0 -1
- package/src/interfaces/bases/{mnemonic.d.ts → mnemonic.ts} +5 -5
- package/src/interfaces/bases/role.ts +40 -0
- package/src/interfaces/bases/token-role.ts +9 -0
- package/src/interfaces/bases/{used-direct-login-token.d.ts → used-direct-login-token.ts} +3 -3
- package/src/interfaces/bases/user-role.ts +21 -0
- package/src/interfaces/bases/user.ts +88 -0
- package/src/interfaces/combined-role-privileges.ts +6 -0
- package/src/interfaces/constants.ts +56 -0
- package/src/interfaces/core-consts.ts +130 -0
- package/src/interfaces/deep-partial.ts +3 -0
- package/src/interfaces/dto/{email-token.d.ts → email-token.ts} +1 -1
- package/src/interfaces/dto/{index.d.ts → index.ts} +1 -2
- package/src/interfaces/dto/{mnemonic.d.ts → mnemonic.ts} +1 -1
- package/src/interfaces/dto/request-user.ts +19 -0
- package/src/interfaces/dto/{role.d.ts → role.ts} +1 -1
- package/src/interfaces/dto/{token-role.d.ts → token-role.ts} +9 -3
- package/src/interfaces/dto/{user-role.d.ts → user-role.ts} +1 -1
- package/src/interfaces/dto/{user-settings.d.ts → user-settings.ts} +1 -2
- package/src/interfaces/dto/{user.d.ts → user.ts} +1 -1
- package/src/interfaces/failable-result.ts +6 -0
- package/src/interfaces/frontend-objects/email-token.ts +8 -0
- package/src/interfaces/frontend-objects/{index.d.ts → index.ts} +1 -2
- package/src/interfaces/frontend-objects/request-user.ts +17 -0
- package/src/interfaces/frontend-objects/{role.d.ts → role.ts} +1 -1
- package/src/interfaces/frontend-objects/{user-role.d.ts → user-role.ts} +1 -1
- package/src/interfaces/frontend-objects/user.ts +9 -0
- package/src/interfaces/has-creation.ts +6 -0
- package/src/interfaces/has-creator.ts +6 -0
- package/src/interfaces/has-id.ts +3 -0
- package/src/interfaces/has-soft-delete.ts +6 -0
- package/src/interfaces/has-soft-deleter.ts +6 -0
- package/src/interfaces/has-timestamp-owners.ts +6 -0
- package/src/interfaces/has-timestamps.ts +7 -0
- package/src/interfaces/has-updater.ts +6 -0
- package/src/interfaces/has-updates.ts +3 -0
- package/src/interfaces/{index.d.ts → index.ts} +0 -1
- package/src/interfaces/success-message.ts +4 -0
- package/src/interfaces/{token-user.d.ts → token-user.ts} +3 -3
- package/src/interfaces/{user-settings.d.ts → user-settings.ts} +2 -2
- package/src/lib/flags.ts +286 -0
- package/src/lib/formatters.ts +28 -0
- package/src/lib/hydrate-dehydrate.ts +27 -0
- package/src/lib/{index.d.ts → index.ts} +2 -2
- package/src/lib/validators-with-constants.ts +72 -0
- package/src/lib/validators.ts +72 -0
- package/src/local-storage-manager.ts +69 -0
- package/src/strings/de.ts +689 -0
- package/src/strings/en-GB.ts +626 -0
- package/src/strings/en-US.ts +628 -0
- package/src/strings/es.ts +688 -0
- package/src/strings/fr.ts +685 -0
- package/src/strings/ja.ts +654 -0
- package/src/strings/uk.ts +667 -0
- package/src/strings/zh-CN.ts +566 -0
- package/src/backup-code-string.d.ts +0 -29
- package/src/backup-code-string.d.ts.map +0 -1
- package/src/backup-code-string.js +0 -81
- package/src/backup-code-string.js.map +0 -1
- package/src/builders/index.d.ts.map +0 -1
- package/src/builders/index.js +0 -9
- package/src/builders/index.js.map +0 -1
- package/src/builders/role-builder.d.ts +0 -19
- package/src/builders/role-builder.d.ts.map +0 -1
- package/src/builders/role-builder.js +0 -57
- package/src/builders/role-builder.js.map +0 -1
- package/src/builders/user-builder.d.ts +0 -23
- package/src/builders/user-builder.d.ts.map +0 -1
- package/src/builders/user-builder.js +0 -63
- package/src/builders/user-builder.js.map +0 -1
- package/src/constants.d.ts +0 -7
- package/src/constants.d.ts.map +0 -1
- package/src/constants.js +0 -209
- package/src/constants.js.map +0 -1
- package/src/core/errors.d.ts.map +0 -1
- package/src/core/errors.js +0 -29
- package/src/core/errors.js.map +0 -1
- package/src/core/index.d.ts.map +0 -1
- package/src/core/index.js +0 -10
- package/src/core/index.js.map +0 -1
- package/src/core/result.d.ts +0 -34
- package/src/core/result.d.ts.map +0 -1
- package/src/core/result.js +0 -35
- package/src/core/result.js.map +0 -1
- package/src/core/types.d.ts.map +0 -1
- package/src/core/types.js +0 -6
- package/src/core/types.js.map +0 -1
- package/src/defaults.d.ts +0 -7
- package/src/defaults.d.ts.map +0 -1
- package/src/defaults.js +0 -66
- package/src/defaults.js.map +0 -1
- package/src/enumerations/account-status.d.ts +0 -18
- package/src/enumerations/account-status.d.ts.map +0 -1
- package/src/enumerations/account-status.js +0 -22
- package/src/enumerations/account-status.js.map +0 -1
- package/src/enumerations/email-token-type.d.ts +0 -25
- package/src/enumerations/email-token-type.d.ts.map +0 -1
- package/src/enumerations/email-token-type.js +0 -29
- package/src/enumerations/email-token-type.js.map +0 -1
- package/src/enumerations/fec-error-type.d.ts +0 -14
- package/src/enumerations/fec-error-type.d.ts.map +0 -1
- package/src/enumerations/fec-error-type.js +0 -18
- package/src/enumerations/fec-error-type.js.map +0 -1
- package/src/enumerations/index.d.ts.map +0 -1
- package/src/enumerations/index.js +0 -10
- package/src/enumerations/index.js.map +0 -1
- package/src/enumerations/pbkdf2-error-type.d.ts +0 -5
- package/src/enumerations/pbkdf2-error-type.d.ts.map +0 -1
- package/src/enumerations/pbkdf2-error-type.js +0 -9
- package/src/enumerations/pbkdf2-error-type.js.map +0 -1
- package/src/enumerations/role.d.ts +0 -6
- package/src/enumerations/role.d.ts.map +0 -1
- package/src/enumerations/role.js +0 -10
- package/src/enumerations/role.js.map +0 -1
- package/src/enumerations/suite-core-string-key.d.ts +0 -482
- package/src/enumerations/suite-core-string-key.d.ts.map +0 -1
- package/src/enumerations/suite-core-string-key.js +0 -493
- package/src/enumerations/suite-core-string-key.js.map +0 -1
- package/src/errors/account-locked.d.ts +0 -5
- package/src/errors/account-locked.d.ts.map +0 -1
- package/src/errors/account-locked.js +0 -13
- package/src/errors/account-locked.js.map +0 -1
- package/src/errors/account-status.d.ts +0 -7
- package/src/errors/account-status.d.ts.map +0 -1
- package/src/errors/account-status.js +0 -31
- package/src/errors/account-status.js.map +0 -1
- package/src/errors/admin-role-not-found.d.ts +0 -6
- package/src/errors/admin-role-not-found.d.ts.map +0 -1
- package/src/errors/admin-role-not-found.js +0 -13
- package/src/errors/admin-role-not-found.js.map +0 -1
- package/src/errors/core-typed-handleable.d.ts +0 -12
- package/src/errors/core-typed-handleable.d.ts.map +0 -1
- package/src/errors/core-typed-handleable.js +0 -51
- package/src/errors/core-typed-handleable.js.map +0 -1
- package/src/errors/direct-challenge-not-enabled.d.ts +0 -5
- package/src/errors/direct-challenge-not-enabled.d.ts.map +0 -1
- package/src/errors/direct-challenge-not-enabled.js +0 -16
- package/src/errors/direct-challenge-not-enabled.js.map +0 -1
- package/src/errors/direct-token-used.d.ts +0 -5
- package/src/errors/direct-token-used.d.ts.map +0 -1
- package/src/errors/direct-token-used.js +0 -13
- package/src/errors/direct-token-used.js.map +0 -1
- package/src/errors/email-in-use.d.ts +0 -5
- package/src/errors/email-in-use.d.ts.map +0 -1
- package/src/errors/email-in-use.js +0 -15
- package/src/errors/email-in-use.js.map +0 -1
- package/src/errors/email-token-expired.d.ts +0 -5
- package/src/errors/email-token-expired.d.ts.map +0 -1
- package/src/errors/email-token-expired.js +0 -15
- package/src/errors/email-token-expired.js.map +0 -1
- package/src/errors/email-token-failed-to-send.d.ts +0 -6
- package/src/errors/email-token-failed-to-send.d.ts.map +0 -1
- package/src/errors/email-token-failed-to-send.js +0 -22
- package/src/errors/email-token-failed-to-send.js.map +0 -1
- package/src/errors/email-token-sent-too-recently.d.ts +0 -7
- package/src/errors/email-token-sent-too-recently.d.ts.map +0 -1
- package/src/errors/email-token-sent-too-recently.js +0 -21
- package/src/errors/email-token-sent-too-recently.js.map +0 -1
- package/src/errors/email-token-used-or-invalid.d.ts +0 -5
- package/src/errors/email-token-used-or-invalid.d.ts.map +0 -1
- package/src/errors/email-token-used-or-invalid.js +0 -15
- package/src/errors/email-token-used-or-invalid.js.map +0 -1
- package/src/errors/email-verified.d.ts +0 -5
- package/src/errors/email-verified.d.ts.map +0 -1
- package/src/errors/email-verified.js +0 -15
- package/src/errors/email-verified.js.map +0 -1
- package/src/errors/failed-to-use-direct-token.d.ts +0 -5
- package/src/errors/failed-to-use-direct-token.d.ts.map +0 -1
- package/src/errors/failed-to-use-direct-token.js +0 -13
- package/src/errors/failed-to-use-direct-token.js.map +0 -1
- package/src/errors/fec-error.d.ts +0 -6
- package/src/errors/fec-error.d.ts.map +0 -1
- package/src/errors/fec-error.js +0 -26
- package/src/errors/fec-error.js.map +0 -1
- package/src/errors/generic-validation.d.ts +0 -5
- package/src/errors/generic-validation.d.ts.map +0 -1
- package/src/errors/generic-validation.js +0 -12
- package/src/errors/generic-validation.js.map +0 -1
- package/src/errors/index.d.ts.map +0 -1
- package/src/errors/index.js +0 -43
- package/src/errors/index.js.map +0 -1
- package/src/errors/invalid-backup-code.d.ts +0 -4
- package/src/errors/invalid-backup-code.d.ts.map +0 -1
- package/src/errors/invalid-backup-code.js +0 -11
- package/src/errors/invalid-backup-code.js.map +0 -1
- package/src/errors/invalid-challenge-response.d.ts +0 -5
- package/src/errors/invalid-challenge-response.d.ts.map +0 -1
- package/src/errors/invalid-challenge-response.js +0 -16
- package/src/errors/invalid-challenge-response.js.map +0 -1
- package/src/errors/invalid-challenge.d.ts +0 -5
- package/src/errors/invalid-challenge.d.ts.map +0 -1
- package/src/errors/invalid-challenge.js +0 -13
- package/src/errors/invalid-challenge.js.map +0 -1
- package/src/errors/invalid-credentials.d.ts +0 -5
- package/src/errors/invalid-credentials.d.ts.map +0 -1
- package/src/errors/invalid-credentials.js +0 -15
- package/src/errors/invalid-credentials.js.map +0 -1
- package/src/errors/invalid-email.d.ts +0 -8
- package/src/errors/invalid-email.d.ts.map +0 -1
- package/src/errors/invalid-email.js +0 -25
- package/src/errors/invalid-email.js.map +0 -1
- package/src/errors/invalid-expired-token.d.ts +0 -7
- package/src/errors/invalid-expired-token.d.ts.map +0 -1
- package/src/errors/invalid-expired-token.js +0 -13
- package/src/errors/invalid-expired-token.js.map +0 -1
- package/src/errors/invalid-token.d.ts +0 -5
- package/src/errors/invalid-token.d.ts.map +0 -1
- package/src/errors/invalid-token.js +0 -16
- package/src/errors/invalid-token.js.map +0 -1
- package/src/errors/invalid-userid.d.ts +0 -6
- package/src/errors/invalid-userid.d.ts.map +0 -1
- package/src/errors/invalid-userid.js +0 -18
- package/src/errors/invalid-userid.js.map +0 -1
- package/src/errors/invalid-username.d.ts +0 -5
- package/src/errors/invalid-username.d.ts.map +0 -1
- package/src/errors/invalid-username.js +0 -13
- package/src/errors/invalid-username.js.map +0 -1
- package/src/errors/last-admin-error.d.ts +0 -6
- package/src/errors/last-admin-error.d.ts.map +0 -1
- package/src/errors/last-admin-error.js +0 -15
- package/src/errors/last-admin-error.js.map +0 -1
- package/src/errors/login-challenge-expired.d.ts +0 -5
- package/src/errors/login-challenge-expired.d.ts.map +0 -1
- package/src/errors/login-challenge-expired.js +0 -16
- package/src/errors/login-challenge-expired.js.map +0 -1
- package/src/errors/member-role-not-found.d.ts +0 -6
- package/src/errors/member-role-not-found.d.ts.map +0 -1
- package/src/errors/member-role-not-found.js +0 -13
- package/src/errors/member-role-not-found.js.map +0 -1
- package/src/errors/password-login-not-enabled.d.ts +0 -5
- package/src/errors/password-login-not-enabled.d.ts.map +0 -1
- package/src/errors/password-login-not-enabled.js +0 -16
- package/src/errors/password-login-not-enabled.js.map +0 -1
- package/src/errors/password-login-not-setup.d.ts +0 -5
- package/src/errors/password-login-not-setup.d.ts.map +0 -1
- package/src/errors/password-login-not-setup.js +0 -16
- package/src/errors/password-login-not-setup.js.map +0 -1
- package/src/errors/pbkdf2-error.d.ts +0 -7
- package/src/errors/pbkdf2-error.d.ts.map +0 -1
- package/src/errors/pbkdf2-error.js +0 -20
- package/src/errors/pbkdf2-error.js.map +0 -1
- package/src/errors/pending-email-verification.d.ts +0 -5
- package/src/errors/pending-email-verification.d.ts.map +0 -1
- package/src/errors/pending-email-verification.js +0 -13
- package/src/errors/pending-email-verification.js.map +0 -1
- package/src/errors/private-key-required.d.ts +0 -5
- package/src/errors/private-key-required.d.ts.map +0 -1
- package/src/errors/private-key-required.js +0 -13
- package/src/errors/private-key-required.js.map +0 -1
- package/src/errors/system-role-not-found.d.ts +0 -6
- package/src/errors/system-role-not-found.d.ts.map +0 -1
- package/src/errors/system-role-not-found.js +0 -13
- package/src/errors/system-role-not-found.js.map +0 -1
- package/src/errors/token-not-found.d.ts +0 -7
- package/src/errors/token-not-found.d.ts.map +0 -1
- package/src/errors/token-not-found.js +0 -19
- package/src/errors/token-not-found.js.map +0 -1
- package/src/errors/translatable-suite-handleable.d.ts +0 -10
- package/src/errors/translatable-suite-handleable.d.ts.map +0 -1
- package/src/errors/translatable-suite-handleable.js +0 -15
- package/src/errors/translatable-suite-handleable.js.map +0 -1
- package/src/errors/translatable-suite.d.ts +0 -13
- package/src/errors/translatable-suite.d.ts.map +0 -1
- package/src/errors/translatable-suite.js +0 -29
- package/src/errors/translatable-suite.js.map +0 -1
- package/src/errors/user-not-found.d.ts +0 -5
- package/src/errors/user-not-found.d.ts.map +0 -1
- package/src/errors/user-not-found.js +0 -13
- package/src/errors/user-not-found.js.map +0 -1
- package/src/errors/username-email-required.d.ts +0 -6
- package/src/errors/username-email-required.d.ts.map +0 -1
- package/src/errors/username-email-required.js +0 -16
- package/src/errors/username-email-required.js.map +0 -1
- package/src/errors/username-in-use.d.ts +0 -5
- package/src/errors/username-in-use.d.ts.map +0 -1
- package/src/errors/username-in-use.js +0 -13
- package/src/errors/username-in-use.js.map +0 -1
- package/src/i18n-setup.d.ts +0 -13
- package/src/i18n-setup.d.ts.map +0 -1
- package/src/i18n-setup.js +0 -116
- package/src/i18n-setup.js.map +0 -1
- package/src/index.d.ts.map +0 -1
- package/src/index.js +0 -15
- package/src/index.js.map +0 -1
- package/src/interfaces/backup-code-consts.d.ts +0 -16
- package/src/interfaces/backup-code-consts.d.ts.map +0 -1
- package/src/interfaces/backup-code-consts.js +0 -3
- package/src/interfaces/backup-code-consts.js.map +0 -1
- package/src/interfaces/backup-code.d.ts +0 -7
- package/src/interfaces/backup-code.d.ts.map +0 -1
- package/src/interfaces/backup-code.js +0 -3
- package/src/interfaces/backup-code.js.map +0 -1
- package/src/interfaces/bases/email-token.d.ts +0 -33
- package/src/interfaces/bases/email-token.d.ts.map +0 -1
- package/src/interfaces/bases/email-token.js +0 -3
- package/src/interfaces/bases/email-token.js.map +0 -1
- package/src/interfaces/bases/index.d.ts.map +0 -1
- package/src/interfaces/bases/index.js +0 -11
- package/src/interfaces/bases/index.js.map +0 -1
- package/src/interfaces/bases/mnemonic.d.ts.map +0 -1
- package/src/interfaces/bases/mnemonic.js +0 -3
- package/src/interfaces/bases/mnemonic.js.map +0 -1
- package/src/interfaces/bases/role.d.ts +0 -32
- package/src/interfaces/bases/role.d.ts.map +0 -1
- package/src/interfaces/bases/role.js +0 -3
- package/src/interfaces/bases/role.js.map +0 -1
- package/src/interfaces/bases/token-role.d.ts +0 -8
- package/src/interfaces/bases/token-role.d.ts.map +0 -1
- package/src/interfaces/bases/token-role.js +0 -3
- package/src/interfaces/bases/token-role.js.map +0 -1
- package/src/interfaces/bases/used-direct-login-token.d.ts.map +0 -1
- package/src/interfaces/bases/used-direct-login-token.js +0 -3
- package/src/interfaces/bases/used-direct-login-token.js.map +0 -1
- package/src/interfaces/bases/user-role.d.ts +0 -16
- package/src/interfaces/bases/user-role.d.ts.map +0 -1
- package/src/interfaces/bases/user-role.js +0 -3
- package/src/interfaces/bases/user-role.js.map +0 -1
- package/src/interfaces/bases/user.d.ts +0 -79
- package/src/interfaces/bases/user.d.ts.map +0 -1
- package/src/interfaces/bases/user.js +0 -3
- package/src/interfaces/bases/user.js.map +0 -1
- package/src/interfaces/combined-role-privileges.d.ts +0 -7
- package/src/interfaces/combined-role-privileges.d.ts.map +0 -1
- package/src/interfaces/combined-role-privileges.js +0 -3
- package/src/interfaces/combined-role-privileges.js.map +0 -1
- package/src/interfaces/constants.d.ts +0 -56
- package/src/interfaces/constants.d.ts.map +0 -1
- package/src/interfaces/constants.js +0 -3
- package/src/interfaces/constants.js.map +0 -1
- package/src/interfaces/core-consts.d.ts +0 -130
- package/src/interfaces/core-consts.d.ts.map +0 -1
- package/src/interfaces/core-consts.js +0 -3
- package/src/interfaces/core-consts.js.map +0 -1
- package/src/interfaces/deep-partial.d.ts +0 -4
- package/src/interfaces/deep-partial.d.ts.map +0 -1
- package/src/interfaces/deep-partial.js +0 -3
- package/src/interfaces/deep-partial.js.map +0 -1
- package/src/interfaces/dto/email-token.d.ts.map +0 -1
- package/src/interfaces/dto/email-token.js +0 -3
- package/src/interfaces/dto/email-token.js.map +0 -1
- package/src/interfaces/dto/index.d.ts.map +0 -1
- package/src/interfaces/dto/index.js +0 -12
- package/src/interfaces/dto/index.js.map +0 -1
- package/src/interfaces/dto/mnemonic.d.ts.map +0 -1
- package/src/interfaces/dto/mnemonic.js +0 -3
- package/src/interfaces/dto/mnemonic.js.map +0 -1
- package/src/interfaces/dto/request-user.d.ts +0 -17
- package/src/interfaces/dto/request-user.d.ts.map +0 -1
- package/src/interfaces/dto/request-user.js +0 -3
- package/src/interfaces/dto/request-user.js.map +0 -1
- package/src/interfaces/dto/role.d.ts.map +0 -1
- package/src/interfaces/dto/role.js +0 -3
- package/src/interfaces/dto/role.js.map +0 -1
- package/src/interfaces/dto/token-role.d.ts.map +0 -1
- package/src/interfaces/dto/token-role.js +0 -3
- package/src/interfaces/dto/token-role.js.map +0 -1
- package/src/interfaces/dto/user-role.d.ts.map +0 -1
- package/src/interfaces/dto/user-role.js +0 -3
- package/src/interfaces/dto/user-role.js.map +0 -1
- package/src/interfaces/dto/user-settings.d.ts.map +0 -1
- package/src/interfaces/dto/user-settings.js +0 -3
- package/src/interfaces/dto/user-settings.js.map +0 -1
- package/src/interfaces/dto/user.d.ts.map +0 -1
- package/src/interfaces/dto/user.js +0 -3
- package/src/interfaces/dto/user.js.map +0 -1
- package/src/interfaces/failable-result.d.ts +0 -7
- package/src/interfaces/failable-result.d.ts.map +0 -1
- package/src/interfaces/failable-result.js +0 -3
- package/src/interfaces/failable-result.js.map +0 -1
- package/src/interfaces/frontend-objects/email-token.d.ts +0 -4
- package/src/interfaces/frontend-objects/email-token.d.ts.map +0 -1
- package/src/interfaces/frontend-objects/email-token.js +0 -3
- package/src/interfaces/frontend-objects/email-token.js.map +0 -1
- package/src/interfaces/frontend-objects/index.d.ts.map +0 -1
- package/src/interfaces/frontend-objects/index.js +0 -9
- package/src/interfaces/frontend-objects/index.js.map +0 -1
- package/src/interfaces/frontend-objects/request-user.d.ts +0 -17
- package/src/interfaces/frontend-objects/request-user.d.ts.map +0 -1
- package/src/interfaces/frontend-objects/request-user.js +0 -3
- package/src/interfaces/frontend-objects/request-user.js.map +0 -1
- package/src/interfaces/frontend-objects/role.d.ts.map +0 -1
- package/src/interfaces/frontend-objects/role.js +0 -3
- package/src/interfaces/frontend-objects/role.js.map +0 -1
- package/src/interfaces/frontend-objects/user-role.d.ts.map +0 -1
- package/src/interfaces/frontend-objects/user-role.js +0 -3
- package/src/interfaces/frontend-objects/user-role.js.map +0 -1
- package/src/interfaces/frontend-objects/user.d.ts +0 -4
- package/src/interfaces/frontend-objects/user.d.ts.map +0 -1
- package/src/interfaces/frontend-objects/user.js +0 -3
- package/src/interfaces/frontend-objects/user.js.map +0 -1
- package/src/interfaces/has-creation.d.ts +0 -7
- package/src/interfaces/has-creation.d.ts.map +0 -1
- package/src/interfaces/has-creation.js +0 -3
- package/src/interfaces/has-creation.js.map +0 -1
- package/src/interfaces/has-creator.d.ts +0 -7
- package/src/interfaces/has-creator.d.ts.map +0 -1
- package/src/interfaces/has-creator.js +0 -3
- package/src/interfaces/has-creator.js.map +0 -1
- package/src/interfaces/has-id.d.ts +0 -4
- package/src/interfaces/has-id.d.ts.map +0 -1
- package/src/interfaces/has-id.js +0 -3
- package/src/interfaces/has-id.js.map +0 -1
- package/src/interfaces/has-soft-delete.d.ts +0 -7
- package/src/interfaces/has-soft-delete.d.ts.map +0 -1
- package/src/interfaces/has-soft-delete.js +0 -3
- package/src/interfaces/has-soft-delete.js.map +0 -1
- package/src/interfaces/has-soft-deleter.d.ts +0 -7
- package/src/interfaces/has-soft-deleter.d.ts.map +0 -1
- package/src/interfaces/has-soft-deleter.js +0 -3
- package/src/interfaces/has-soft-deleter.js.map +0 -1
- package/src/interfaces/has-timestamp-owners.d.ts +0 -5
- package/src/interfaces/has-timestamp-owners.d.ts.map +0 -1
- package/src/interfaces/has-timestamp-owners.js +0 -3
- package/src/interfaces/has-timestamp-owners.js.map +0 -1
- package/src/interfaces/has-timestamps.d.ts +0 -6
- package/src/interfaces/has-timestamps.d.ts.map +0 -1
- package/src/interfaces/has-timestamps.js +0 -3
- package/src/interfaces/has-timestamps.js.map +0 -1
- package/src/interfaces/has-updater.d.ts +0 -7
- package/src/interfaces/has-updater.d.ts.map +0 -1
- package/src/interfaces/has-updater.js +0 -3
- package/src/interfaces/has-updater.js.map +0 -1
- package/src/interfaces/has-updates.d.ts +0 -4
- package/src/interfaces/has-updates.d.ts.map +0 -1
- package/src/interfaces/has-updates.js +0 -3
- package/src/interfaces/has-updates.js.map +0 -1
- package/src/interfaces/index.d.ts.map +0 -1
- package/src/interfaces/index.js +0 -26
- package/src/interfaces/index.js.map +0 -1
- package/src/interfaces/success-message.d.ts +0 -5
- package/src/interfaces/success-message.d.ts.map +0 -1
- package/src/interfaces/success-message.js +0 -3
- package/src/interfaces/success-message.js.map +0 -1
- package/src/interfaces/token-user.d.ts.map +0 -1
- package/src/interfaces/token-user.js +0 -3
- package/src/interfaces/token-user.js.map +0 -1
- package/src/interfaces/user-settings.d.ts.map +0 -1
- package/src/interfaces/user-settings.js +0 -3
- package/src/interfaces/user-settings.js.map +0 -1
- package/src/lib/flags.d.ts +0 -10
- package/src/lib/flags.d.ts.map +0 -1
- package/src/lib/flags.js +0 -288
- package/src/lib/flags.js.map +0 -1
- package/src/lib/formatters.d.ts +0 -16
- package/src/lib/formatters.d.ts.map +0 -1
- package/src/lib/formatters.js +0 -29
- package/src/lib/formatters.js.map +0 -1
- package/src/lib/hydrate-dehydrate.d.ts +0 -4
- package/src/lib/hydrate-dehydrate.d.ts.map +0 -1
- package/src/lib/hydrate-dehydrate.js +0 -27
- package/src/lib/hydrate-dehydrate.js.map +0 -1
- package/src/lib/index.d.ts.map +0 -1
- package/src/lib/index.js +0 -12
- package/src/lib/index.js.map +0 -1
- package/src/lib/validators-with-constants.d.ts +0 -73
- package/src/lib/validators-with-constants.d.ts.map +0 -1
- package/src/lib/validators-with-constants.js +0 -64
- package/src/lib/validators-with-constants.js.map +0 -1
- package/src/lib/validators.d.ts +0 -37
- package/src/lib/validators.d.ts.map +0 -1
- package/src/lib/validators.js +0 -74
- package/src/lib/validators.js.map +0 -1
- package/src/local-storage-manager.d.ts +0 -22
- package/src/local-storage-manager.d.ts.map +0 -1
- package/src/local-storage-manager.js +0 -74
- package/src/local-storage-manager.js.map +0 -1
- package/src/strings/de.d.ts +0 -3
- package/src/strings/de.d.ts.map +0 -1
- package/src/strings/de.js +0 -486
- package/src/strings/de.js.map +0 -1
- package/src/strings/en-GB.d.ts +0 -3
- package/src/strings/en-GB.d.ts.map +0 -1
- package/src/strings/en-GB.js +0 -486
- package/src/strings/en-GB.js.map +0 -1
- package/src/strings/en-US.d.ts +0 -3
- package/src/strings/en-US.d.ts.map +0 -1
- package/src/strings/en-US.js +0 -486
- package/src/strings/en-US.js.map +0 -1
- package/src/strings/es.d.ts +0 -3
- package/src/strings/es.d.ts.map +0 -1
- package/src/strings/es.js +0 -486
- package/src/strings/es.js.map +0 -1
- package/src/strings/fr.d.ts +0 -3
- package/src/strings/fr.d.ts.map +0 -1
- package/src/strings/fr.js +0 -486
- package/src/strings/fr.js.map +0 -1
- package/src/strings/ja.d.ts +0 -3
- package/src/strings/ja.d.ts.map +0 -1
- package/src/strings/ja.js +0 -486
- package/src/strings/ja.js.map +0 -1
- package/src/strings/uk.d.ts +0 -3
- package/src/strings/uk.d.ts.map +0 -1
- package/src/strings/uk.js +0 -486
- package/src/strings/uk.js.map +0 -1
- package/src/strings/zh-CN.d.ts +0 -3
- package/src/strings/zh-CN.d.ts.map +0 -1
- package/src/strings/zh-CN.js +0 -486
- package/src/strings/zh-CN.js.map +0 -1
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ICombinedRolePrivileges } from '../combined-role-privileges';
|
|
2
|
+
import { IRoleFrontendObject } from './role';
|
|
3
|
+
|
|
4
|
+
export interface IRequestUserFrontendObject {
|
|
5
|
+
id: string;
|
|
6
|
+
roles: Array<IRoleFrontendObject>;
|
|
7
|
+
rolePrivileges: ICombinedRolePrivileges;
|
|
8
|
+
username: string;
|
|
9
|
+
email: string;
|
|
10
|
+
timezone: string;
|
|
11
|
+
currency: string;
|
|
12
|
+
directChallenge: boolean;
|
|
13
|
+
siteLanguage: string;
|
|
14
|
+
lastLogin?: Date;
|
|
15
|
+
emailVerified: boolean;
|
|
16
|
+
darkMode: boolean;
|
|
17
|
+
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { ITokenRoleDTO } from './dto/token-role';
|
|
2
|
+
|
|
2
3
|
/**
|
|
3
4
|
* Interface for the user object stored in the JWT token
|
|
4
5
|
*/
|
|
5
6
|
export interface ITokenUser {
|
|
6
|
-
|
|
7
|
-
|
|
7
|
+
userId: string;
|
|
8
|
+
roles: ITokenRoleDTO[];
|
|
8
9
|
}
|
|
9
|
-
//# sourceMappingURL=token-user.d.ts.map
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { EmailString } from '@digitaldefiance/ecies-lib';
|
|
2
2
|
import { CurrencyCode, Timezone } from '@digitaldefiance/i18n-lib';
|
|
3
|
+
|
|
3
4
|
export interface IUserSettings {
|
|
4
5
|
email: EmailString;
|
|
5
6
|
timezone: Timezone;
|
|
@@ -7,5 +8,4 @@ export interface IUserSettings {
|
|
|
7
8
|
siteLanguage: string;
|
|
8
9
|
darkMode: boolean;
|
|
9
10
|
directChallenge: boolean;
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=user-settings.d.ts.map
|
|
11
|
+
}
|
package/src/lib/flags.ts
ADDED
|
@@ -0,0 +1,286 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mapping from BCP-47 language codes to FlagCDN flag codes
|
|
3
|
+
* Based on Flagpedia.net flag codes
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
export const BCP47_TO_FLAG_CDN: Record<string, string> = {
|
|
7
|
+
// Major languages with country flags
|
|
8
|
+
'en-US': 'us',
|
|
9
|
+
'en-GB': 'gb',
|
|
10
|
+
'en': 'gb',
|
|
11
|
+
'fr': 'fr',
|
|
12
|
+
'fr-FR': 'fr',
|
|
13
|
+
'es': 'es',
|
|
14
|
+
'es-ES': 'es',
|
|
15
|
+
'de': 'de',
|
|
16
|
+
'de-DE': 'de',
|
|
17
|
+
'zh-CN': 'cn',
|
|
18
|
+
'zh': 'cn',
|
|
19
|
+
'ja': 'jp',
|
|
20
|
+
'ja-JP': 'jp',
|
|
21
|
+
'uk': 'ua',
|
|
22
|
+
'uk-UA': 'ua',
|
|
23
|
+
|
|
24
|
+
// All ISO 3166-1 alpha-2 codes from the HTML
|
|
25
|
+
'af': 'af', // Afghanistan
|
|
26
|
+
'ax': 'ax', // Åland Islands
|
|
27
|
+
'al': 'al', // Albania
|
|
28
|
+
'dz': 'dz', // Algeria
|
|
29
|
+
'as': 'as', // American Samoa
|
|
30
|
+
'ad': 'ad', // Andorra
|
|
31
|
+
'ao': 'ao', // Angola
|
|
32
|
+
'ai': 'ai', // Anguilla
|
|
33
|
+
'aq': 'aq', // Antarctica
|
|
34
|
+
'ag': 'ag', // Antigua and Barbuda
|
|
35
|
+
'ar': 'ar', // Argentina
|
|
36
|
+
'am': 'am', // Armenia
|
|
37
|
+
'aw': 'aw', // Aruba
|
|
38
|
+
'au': 'au', // Australia
|
|
39
|
+
'at': 'at', // Austria
|
|
40
|
+
'az': 'az', // Azerbaijan
|
|
41
|
+
'bs': 'bs', // Bahamas
|
|
42
|
+
'bh': 'bh', // Bahrain
|
|
43
|
+
'bd': 'bd', // Bangladesh
|
|
44
|
+
'bb': 'bb', // Barbados
|
|
45
|
+
'by': 'by', // Belarus
|
|
46
|
+
'be': 'be', // Belgium
|
|
47
|
+
'bz': 'bz', // Belize
|
|
48
|
+
'bj': 'bj', // Benin
|
|
49
|
+
'bm': 'bm', // Bermuda
|
|
50
|
+
'bt': 'bt', // Bhutan
|
|
51
|
+
'bo': 'bo', // Bolivia
|
|
52
|
+
'ba': 'ba', // Bosnia and Herzegovina
|
|
53
|
+
'bw': 'bw', // Botswana
|
|
54
|
+
'bv': 'bv', // Bouvet Island
|
|
55
|
+
'br': 'br', // Brazil
|
|
56
|
+
'io': 'io', // British Indian Ocean Territory
|
|
57
|
+
'bn': 'bn', // Brunei
|
|
58
|
+
'bg': 'bg', // Bulgaria
|
|
59
|
+
'bf': 'bf', // Burkina Faso
|
|
60
|
+
'bi': 'bi', // Burundi
|
|
61
|
+
'kh': 'kh', // Cambodia
|
|
62
|
+
'cm': 'cm', // Cameroon
|
|
63
|
+
'ca': 'ca', // Canada
|
|
64
|
+
'cv': 'cv', // Cape Verde
|
|
65
|
+
'bq': 'bq', // Caribbean Netherlands
|
|
66
|
+
'ky': 'ky', // Cayman Islands
|
|
67
|
+
'cf': 'cf', // Central African Republic
|
|
68
|
+
'td': 'td', // Chad
|
|
69
|
+
'cl': 'cl', // Chile
|
|
70
|
+
'cn': 'cn', // China
|
|
71
|
+
'cx': 'cx', // Christmas Island
|
|
72
|
+
'cc': 'cc', // Cocos Islands
|
|
73
|
+
'co': 'co', // Colombia
|
|
74
|
+
'km': 'km', // Comoros
|
|
75
|
+
'cg': 'cg', // Republic of the Congo
|
|
76
|
+
'cd': 'cd', // DR Congo
|
|
77
|
+
'ck': 'ck', // Cook Islands
|
|
78
|
+
'cr': 'cr', // Costa Rica
|
|
79
|
+
'ci': 'ci', // Côte d'Ivoire
|
|
80
|
+
'hr': 'hr', // Croatia
|
|
81
|
+
'cu': 'cu', // Cuba
|
|
82
|
+
'cw': 'cw', // Curaçao
|
|
83
|
+
'cy': 'cy', // Cyprus
|
|
84
|
+
'cz': 'cz', // Czechia
|
|
85
|
+
'dk': 'dk', // Denmark
|
|
86
|
+
'dj': 'dj', // Djibouti
|
|
87
|
+
'dm': 'dm', // Dominica
|
|
88
|
+
'do': 'do', // Dominican Republic
|
|
89
|
+
'ec': 'ec', // Ecuador
|
|
90
|
+
'eg': 'eg', // Egypt
|
|
91
|
+
'sv': 'sv', // El Salvador
|
|
92
|
+
'gq': 'gq', // Equatorial Guinea
|
|
93
|
+
'er': 'er', // Eritrea
|
|
94
|
+
'ee': 'ee', // Estonia
|
|
95
|
+
'sz': 'sz', // Eswatini
|
|
96
|
+
'et': 'et', // Ethiopia
|
|
97
|
+
'fk': 'fk', // Falkland Islands
|
|
98
|
+
'fo': 'fo', // Faroe Islands
|
|
99
|
+
'fj': 'fj', // Fiji
|
|
100
|
+
'fi': 'fi', // Finland
|
|
101
|
+
'gf': 'gf', // French Guiana
|
|
102
|
+
'pf': 'pf', // French Polynesia
|
|
103
|
+
'tf': 'tf', // French Southern and Antarctic Lands
|
|
104
|
+
'ga': 'ga', // Gabon
|
|
105
|
+
'gm': 'gm', // Gambia
|
|
106
|
+
'ge': 'ge', // Georgia
|
|
107
|
+
'gh': 'gh', // Ghana
|
|
108
|
+
'gi': 'gi', // Gibraltar
|
|
109
|
+
'gr': 'gr', // Greece
|
|
110
|
+
'gl': 'gl', // Greenland
|
|
111
|
+
'gd': 'gd', // Grenada
|
|
112
|
+
'gp': 'gp', // Guadeloupe
|
|
113
|
+
'gu': 'gu', // Guam
|
|
114
|
+
'gt': 'gt', // Guatemala
|
|
115
|
+
'gg': 'gg', // Guernsey
|
|
116
|
+
'gn': 'gn', // Guinea
|
|
117
|
+
'gw': 'gw', // Guinea-Bissau
|
|
118
|
+
'gy': 'gy', // Guyana
|
|
119
|
+
'ht': 'ht', // Haiti
|
|
120
|
+
'hm': 'hm', // Heard Island and McDonald Islands
|
|
121
|
+
'hn': 'hn', // Honduras
|
|
122
|
+
'hk': 'hk', // Hong Kong
|
|
123
|
+
'hu': 'hu', // Hungary
|
|
124
|
+
'is': 'is', // Iceland
|
|
125
|
+
'in': 'in', // India
|
|
126
|
+
'id': 'id', // Indonesia
|
|
127
|
+
'ir': 'ir', // Iran
|
|
128
|
+
'iq': 'iq', // Iraq
|
|
129
|
+
'ie': 'ie', // Ireland
|
|
130
|
+
'im': 'im', // Isle of Man
|
|
131
|
+
'il': 'il', // Israel
|
|
132
|
+
'it': 'it', // Italy
|
|
133
|
+
'jm': 'jm', // Jamaica
|
|
134
|
+
'jp': 'jp', // Japan
|
|
135
|
+
'je': 'je', // Jersey
|
|
136
|
+
'jo': 'jo', // Jordan
|
|
137
|
+
'kz': 'kz', // Kazakhstan
|
|
138
|
+
'ke': 'ke', // Kenya
|
|
139
|
+
'ki': 'ki', // Kiribati
|
|
140
|
+
'kp': 'kp', // North Korea
|
|
141
|
+
'kr': 'kr', // South Korea
|
|
142
|
+
'xk': 'xk', // Kosovo
|
|
143
|
+
'kw': 'kw', // Kuwait
|
|
144
|
+
'kg': 'kg', // Kyrgyzstan
|
|
145
|
+
'la': 'la', // Laos
|
|
146
|
+
'lv': 'lv', // Latvia
|
|
147
|
+
'lb': 'lb', // Lebanon
|
|
148
|
+
'ls': 'ls', // Lesotho
|
|
149
|
+
'lr': 'lr', // Liberia
|
|
150
|
+
'ly': 'ly', // Libya
|
|
151
|
+
'li': 'li', // Liechtenstein
|
|
152
|
+
'lt': 'lt', // Lithuania
|
|
153
|
+
'lu': 'lu', // Luxembourg
|
|
154
|
+
'mo': 'mo', // Macau
|
|
155
|
+
'mg': 'mg', // Madagascar
|
|
156
|
+
'mw': 'mw', // Malawi
|
|
157
|
+
'my': 'my', // Malaysia
|
|
158
|
+
'mv': 'mv', // Maldives
|
|
159
|
+
'ml': 'ml', // Mali
|
|
160
|
+
'mt': 'mt', // Malta
|
|
161
|
+
'mh': 'mh', // Marshall Islands
|
|
162
|
+
'mq': 'mq', // Martinique
|
|
163
|
+
'mr': 'mr', // Mauritania
|
|
164
|
+
'mu': 'mu', // Mauritius
|
|
165
|
+
'yt': 'yt', // Mayotte
|
|
166
|
+
'mx': 'mx', // Mexico
|
|
167
|
+
'fm': 'fm', // Micronesia
|
|
168
|
+
'md': 'md', // Moldova
|
|
169
|
+
'mc': 'mc', // Monaco
|
|
170
|
+
'mn': 'mn', // Mongolia
|
|
171
|
+
'me': 'me', // Montenegro
|
|
172
|
+
'ms': 'ms', // Montserrat
|
|
173
|
+
'ma': 'ma', // Morocco
|
|
174
|
+
'mz': 'mz', // Mozambique
|
|
175
|
+
'mm': 'mm', // Myanmar
|
|
176
|
+
'na': 'na', // Namibia
|
|
177
|
+
'nr': 'nr', // Nauru
|
|
178
|
+
'np': 'np', // Nepal
|
|
179
|
+
'nl': 'nl', // Netherlands
|
|
180
|
+
'nc': 'nc', // New Caledonia
|
|
181
|
+
'nz': 'nz', // New Zealand
|
|
182
|
+
'ni': 'ni', // Nicaragua
|
|
183
|
+
'ne': 'ne', // Niger
|
|
184
|
+
'ng': 'ng', // Nigeria
|
|
185
|
+
'nu': 'nu', // Niue
|
|
186
|
+
'nf': 'nf', // Norfolk Island
|
|
187
|
+
'mk': 'mk', // North Macedonia
|
|
188
|
+
'mp': 'mp', // Northern Mariana Islands
|
|
189
|
+
'no': 'no', // Norway
|
|
190
|
+
'om': 'om', // Oman
|
|
191
|
+
'pk': 'pk', // Pakistan
|
|
192
|
+
'pw': 'pw', // Palau
|
|
193
|
+
'ps': 'ps', // Palestine
|
|
194
|
+
'pa': 'pa', // Panama
|
|
195
|
+
'pg': 'pg', // Papua New Guinea
|
|
196
|
+
'py': 'py', // Paraguay
|
|
197
|
+
'pe': 'pe', // Peru
|
|
198
|
+
'ph': 'ph', // Philippines
|
|
199
|
+
'pn': 'pn', // Pitcairn Islands
|
|
200
|
+
'pl': 'pl', // Poland
|
|
201
|
+
'pt': 'pt', // Portugal
|
|
202
|
+
'pr': 'pr', // Puerto Rico
|
|
203
|
+
'qa': 'qa', // Qatar
|
|
204
|
+
're': 're', // Réunion
|
|
205
|
+
'ro': 'ro', // Romania
|
|
206
|
+
'ru': 'ru', // Russia
|
|
207
|
+
'rw': 'rw', // Rwanda
|
|
208
|
+
'bl': 'bl', // Saint Barthélemy
|
|
209
|
+
'sh': 'sh', // Saint Helena
|
|
210
|
+
'kn': 'kn', // Saint Kitts and Nevis
|
|
211
|
+
'lc': 'lc', // Saint Lucia
|
|
212
|
+
'mf': 'mf', // Saint Martin
|
|
213
|
+
'pm': 'pm', // Saint Pierre and Miquelon
|
|
214
|
+
'vc': 'vc', // Saint Vincent and the Grenadines
|
|
215
|
+
'ws': 'ws', // Samoa
|
|
216
|
+
'sm': 'sm', // San Marino
|
|
217
|
+
'st': 'st', // São Tomé and Príncipe
|
|
218
|
+
'sa': 'sa', // Saudi Arabia
|
|
219
|
+
'sn': 'sn', // Senegal
|
|
220
|
+
'rs': 'rs', // Serbia
|
|
221
|
+
'sc': 'sc', // Seychelles
|
|
222
|
+
'sl': 'sl', // Sierra Leone
|
|
223
|
+
'sg': 'sg', // Singapore
|
|
224
|
+
'sx': 'sx', // Sint Maarten
|
|
225
|
+
'sk': 'sk', // Slovakia
|
|
226
|
+
'si': 'si', // Slovenia
|
|
227
|
+
'sb': 'sb', // Solomon Islands
|
|
228
|
+
'so': 'so', // Somalia
|
|
229
|
+
'za': 'za', // South Africa
|
|
230
|
+
'gs': 'gs', // South Georgia
|
|
231
|
+
'ss': 'ss', // South Sudan
|
|
232
|
+
'lk': 'lk', // Sri Lanka
|
|
233
|
+
'sd': 'sd', // Sudan
|
|
234
|
+
'sr': 'sr', // Suriname
|
|
235
|
+
'sj': 'sj', // Svalbard and Jan Mayen
|
|
236
|
+
'se': 'se', // Sweden
|
|
237
|
+
'ch': 'ch', // Switzerland
|
|
238
|
+
'sy': 'sy', // Syria
|
|
239
|
+
'tw': 'tw', // Taiwan
|
|
240
|
+
'tj': 'tj', // Tajikistan
|
|
241
|
+
'tz': 'tz', // Tanzania
|
|
242
|
+
'th': 'th', // Thailand
|
|
243
|
+
'tl': 'tl', // Timor-Leste
|
|
244
|
+
'tg': 'tg', // Togo
|
|
245
|
+
'tk': 'tk', // Tokelau
|
|
246
|
+
'to': 'to', // Tonga
|
|
247
|
+
'tt': 'tt', // Trinidad and Tobago
|
|
248
|
+
'tn': 'tn', // Tunisia
|
|
249
|
+
'tr': 'tr', // Turkey
|
|
250
|
+
'tm': 'tm', // Turkmenistan
|
|
251
|
+
'tc': 'tc', // Turks and Caicos Islands
|
|
252
|
+
'tv': 'tv', // Tuvalu
|
|
253
|
+
'ug': 'ug', // Uganda
|
|
254
|
+
'ua': 'ua', // Ukraine
|
|
255
|
+
'ae': 'ae', // United Arab Emirates
|
|
256
|
+
'gb': 'gb', // United Kingdom
|
|
257
|
+
'us': 'us', // United States
|
|
258
|
+
'um': 'um', // United States Minor Outlying Islands
|
|
259
|
+
'uy': 'uy', // Uruguay
|
|
260
|
+
'uz': 'uz', // Uzbekistan
|
|
261
|
+
'vu': 'vu', // Vanuatu
|
|
262
|
+
'va': 'va', // Vatican City
|
|
263
|
+
've': 've', // Venezuela
|
|
264
|
+
'vn': 'vn', // Vietnam
|
|
265
|
+
'vg': 'vg', // British Virgin Islands
|
|
266
|
+
'vi': 'vi', // United States Virgin Islands
|
|
267
|
+
'wf': 'wf', // Wallis and Futuna
|
|
268
|
+
'eh': 'eh', // Western Sahara
|
|
269
|
+
'ye': 'ye', // Yemen
|
|
270
|
+
'zm': 'zm', // Zambia
|
|
271
|
+
'zw': 'zw', // Zimbabwe
|
|
272
|
+
|
|
273
|
+
// UK constituent countries
|
|
274
|
+
'en-GB-ENG': 'gb-eng', // England
|
|
275
|
+
'en-GB-SCT': 'gb-sct', // Scotland
|
|
276
|
+
'en-GB-WLS': 'gb-wls', // Wales
|
|
277
|
+
'en-GB-NIR': 'gb-nir', // Northern Ireland
|
|
278
|
+
};
|
|
279
|
+
|
|
280
|
+
/**
|
|
281
|
+
* Get FlagCDN flag code from BCP-47 language code
|
|
282
|
+
*/
|
|
283
|
+
export function getFlagCode(bcp47: string): string | undefined {
|
|
284
|
+
if (!bcp47) return undefined;
|
|
285
|
+
return BCP47_TO_FLAG_CDN[bcp47] || BCP47_TO_FLAG_CDN[bcp47.toLowerCase()];
|
|
286
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Common formatting helpers
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
import { BackupCodeString } from '../backup-code-string';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Format backup code with dashes (XXXX-XXXX-XXXX-XXXX)
|
|
9
|
+
*/
|
|
10
|
+
export function formatBackupCode(code: string): string {
|
|
11
|
+
const cleaned = code.replace(/[^A-Z0-9]/gi, '').toUpperCase();
|
|
12
|
+
return cleaned.match(/.{1,4}/g)?.join('-') || cleaned;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Validate backup code format
|
|
17
|
+
*/
|
|
18
|
+
export function isValidBackupCodeFormat(code: string): boolean {
|
|
19
|
+
const cleaned = code.replace(/[^A-Z0-9]/gi, '');
|
|
20
|
+
return cleaned.length === 16;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Normalize backup code (remove dashes, uppercase)
|
|
25
|
+
*/
|
|
26
|
+
export function normalizeBackupCode(code: string): string {
|
|
27
|
+
return code.replace(/[^A-Z0-9]/gi, '').toUpperCase();
|
|
28
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { EmailString } from '@digitaldefiance/ecies-lib';
|
|
2
|
+
import { IUserSettings, IUserSettingsDTO } from '../interfaces';
|
|
3
|
+
import { CurrencyCode, Timezone } from '@digitaldefiance/i18n-lib';
|
|
4
|
+
|
|
5
|
+
export function hydrateUserSettings(dto: IUserSettingsDTO): IUserSettings {
|
|
6
|
+
return {
|
|
7
|
+
email: new EmailString(dto.email),
|
|
8
|
+
timezone: new Timezone(dto.timezone),
|
|
9
|
+
currency: new CurrencyCode(dto.currency),
|
|
10
|
+
siteLanguage: dto.siteLanguage,
|
|
11
|
+
darkMode: dto.darkMode,
|
|
12
|
+
directChallenge: dto.directChallenge,
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export function dehydrateUserSettings(
|
|
17
|
+
settings: IUserSettings,
|
|
18
|
+
): IUserSettingsDTO {
|
|
19
|
+
return {
|
|
20
|
+
email: settings.email.email,
|
|
21
|
+
timezone: settings.timezone.value,
|
|
22
|
+
currency: settings.currency.value,
|
|
23
|
+
siteLanguage: settings.siteLanguage,
|
|
24
|
+
darkMode: settings.darkMode,
|
|
25
|
+
directChallenge: settings.directChallenge,
|
|
26
|
+
};
|
|
27
|
+
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Library utilities - validators, formatters, and helpers
|
|
3
3
|
*/
|
|
4
|
+
|
|
4
5
|
export * from './flags';
|
|
5
6
|
export * from './formatters';
|
|
6
7
|
export * from './validators';
|
|
7
8
|
export * from './validators-with-constants';
|
|
8
|
-
export * from './hydrate-dehydrate';
|
|
9
|
-
//# sourceMappingURL=index.d.ts.map
|
|
9
|
+
export * from './hydrate-dehydrate';
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Validators that accept custom constants
|
|
3
|
+
* Allows consumers to pass their own IConstants implementation
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import { IConstants } from '../interfaces/constants';
|
|
7
|
+
import { ICoreConstants } from '../interfaces/core-consts';
|
|
8
|
+
import { CORE } from '../constants';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Create validators bound to specific constants
|
|
12
|
+
*/
|
|
13
|
+
export function createValidators(constants: ICoreConstants | IConstants = CORE) {
|
|
14
|
+
return {
|
|
15
|
+
/**
|
|
16
|
+
* Validate username format using provided constants
|
|
17
|
+
*/
|
|
18
|
+
isValidUsername(username: string): boolean {
|
|
19
|
+
return constants.UsernameRegex.test(username);
|
|
20
|
+
},
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Validate password format using provided constants
|
|
24
|
+
*/
|
|
25
|
+
isValidPassword(password: string): boolean {
|
|
26
|
+
return constants.PasswordRegex.test(password);
|
|
27
|
+
},
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Validate mnemonic format using provided constants
|
|
31
|
+
*/
|
|
32
|
+
isValidMnemonic(mnemonic: string): boolean {
|
|
33
|
+
return constants.MnemonicRegex.test(mnemonic);
|
|
34
|
+
},
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Validate backup code normalized format using provided constants
|
|
38
|
+
*/
|
|
39
|
+
isValidBackupCodeNormalized(code: string): boolean {
|
|
40
|
+
return constants.BACKUP_CODES.NormalizedHexRegex.test(code);
|
|
41
|
+
},
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Validate backup code display format using provided constants
|
|
45
|
+
*/
|
|
46
|
+
isValidBackupCodeDisplay(code: string): boolean {
|
|
47
|
+
return constants.BACKUP_CODES.DisplayRegex.test(code);
|
|
48
|
+
},
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Validate username length using provided constants
|
|
52
|
+
*/
|
|
53
|
+
isValidUsernameLength(username: string): boolean {
|
|
54
|
+
return (
|
|
55
|
+
username.length >= constants.UsernameMinLength &&
|
|
56
|
+
username.length <= constants.UsernameMaxLength
|
|
57
|
+
);
|
|
58
|
+
},
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Validate password length using provided constants
|
|
62
|
+
*/
|
|
63
|
+
isValidPasswordLength(password: string): boolean {
|
|
64
|
+
return password.length >= constants.PasswordMinLength;
|
|
65
|
+
},
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Default validators using CORE constants
|
|
71
|
+
*/
|
|
72
|
+
export const defaultValidators = createValidators();
|