@digitaldefiance/ecies-lib 4.4.13 → 4.4.15
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/package.json +5 -4
- package/src/builders/ecies-builder.d.ts +18 -0
- package/src/builders/ecies-builder.d.ts.map +1 -0
- package/src/builders/ecies-builder.js +34 -0
- package/src/builders/ecies-builder.js.map +1 -0
- package/src/builders/{index.ts → index.d.ts} +1 -1
- package/src/builders/index.d.ts.map +1 -0
- package/src/builders/index.js +9 -0
- package/src/builders/index.js.map +1 -0
- package/src/builders/member-builder.d.ts +51 -0
- package/src/builders/member-builder.d.ts.map +1 -0
- package/src/builders/member-builder.js +101 -0
- package/src/builders/member-builder.js.map +1 -0
- package/src/constants.d.ts +60 -0
- package/src/constants.d.ts.map +1 -0
- package/src/constants.js +457 -0
- package/src/constants.js.map +1 -0
- package/src/core/errors/crypto-error.d.ts +34 -0
- package/src/core/errors/crypto-error.d.ts.map +1 -0
- package/src/core/errors/crypto-error.js +60 -0
- package/src/core/errors/crypto-error.js.map +1 -0
- package/src/core/{index.ts → index.d.ts} +1 -1
- package/src/core/index.d.ts.map +1 -0
- package/src/core/index.js +9 -0
- package/src/core/index.js.map +1 -0
- package/src/core/types/result.d.ts +16 -0
- package/src/core/types/result.d.ts.map +1 -0
- package/src/core/types/result.js +16 -0
- package/src/core/types/result.js.map +1 -0
- package/src/email-string.d.ts +42 -0
- package/src/email-string.d.ts.map +1 -0
- package/src/email-string.js +72 -0
- package/src/email-string.js.map +1 -0
- package/src/enumerations/disposed-error-type.d.ts +12 -0
- package/src/enumerations/disposed-error-type.d.ts.map +1 -0
- package/src/enumerations/disposed-error-type.js +16 -0
- package/src/enumerations/disposed-error-type.js.map +1 -0
- package/src/enumerations/ecies-cipher-suite.d.ts +4 -0
- package/src/enumerations/ecies-cipher-suite.d.ts.map +1 -0
- package/src/enumerations/ecies-cipher-suite.js +9 -0
- package/src/enumerations/ecies-cipher-suite.js.map +1 -0
- package/src/enumerations/ecies-encryption-type.d.ts +11 -0
- package/src/enumerations/ecies-encryption-type.d.ts.map +1 -0
- package/src/enumerations/ecies-encryption-type.js +30 -0
- package/src/enumerations/ecies-encryption-type.js.map +1 -0
- package/src/enumerations/ecies-error-type.d.ts +44 -0
- package/src/enumerations/ecies-error-type.d.ts.map +1 -0
- package/src/enumerations/ecies-error-type.js +48 -0
- package/src/enumerations/ecies-error-type.js.map +1 -0
- package/src/enumerations/ecies-string-key.d.ts +192 -0
- package/src/enumerations/ecies-string-key.d.ts.map +1 -0
- package/src/enumerations/ecies-string-key.js +202 -0
- package/src/enumerations/ecies-string-key.js.map +1 -0
- package/src/enumerations/ecies-version.d.ts +4 -0
- package/src/enumerations/ecies-version.d.ts.map +1 -0
- package/src/enumerations/ecies-version.js +8 -0
- package/src/enumerations/ecies-version.js.map +1 -0
- package/src/enumerations/guid-brand-type.d.ts +27 -0
- package/src/enumerations/guid-brand-type.d.ts.map +1 -0
- package/src/enumerations/guid-brand-type.js +31 -0
- package/src/enumerations/guid-brand-type.js.map +1 -0
- package/src/enumerations/guid-error-type.d.ts +7 -0
- package/src/enumerations/guid-error-type.d.ts.map +1 -0
- package/src/enumerations/guid-error-type.js +11 -0
- package/src/enumerations/guid-error-type.js.map +1 -0
- package/src/enumerations/id-provider-error-type.d.ts +43 -0
- package/src/enumerations/id-provider-error-type.d.ts.map +1 -0
- package/src/enumerations/id-provider-error-type.js +47 -0
- package/src/enumerations/id-provider-error-type.js.map +1 -0
- package/src/enumerations/{index.ts → index.d.ts} +1 -0
- package/src/enumerations/index.d.ts.map +1 -0
- package/src/enumerations/index.js +21 -0
- package/src/enumerations/index.js.map +1 -0
- package/src/enumerations/invalid-email-type.d.ts +6 -0
- package/src/enumerations/invalid-email-type.d.ts.map +1 -0
- package/src/enumerations/invalid-email-type.js +10 -0
- package/src/enumerations/invalid-email-type.js.map +1 -0
- package/src/enumerations/length-encoding-type.d.ts +7 -0
- package/src/enumerations/length-encoding-type.d.ts.map +1 -0
- package/src/enumerations/length-encoding-type.js +11 -0
- package/src/enumerations/length-encoding-type.js.map +1 -0
- package/src/enumerations/length-error-type.d.ts +6 -0
- package/src/enumerations/length-error-type.d.ts.map +1 -0
- package/src/enumerations/length-error-type.js +10 -0
- package/src/enumerations/length-error-type.js.map +1 -0
- package/src/enumerations/member-error-type.d.ts +87 -0
- package/src/enumerations/member-error-type.d.ts.map +1 -0
- package/src/enumerations/member-error-type.js +91 -0
- package/src/enumerations/member-error-type.js.map +1 -0
- package/src/enumerations/{member-type.ts → member-type.d.ts} +6 -7
- package/src/enumerations/member-type.d.ts.map +1 -0
- package/src/enumerations/member-type.js +19 -0
- package/src/enumerations/member-type.js.map +1 -0
- package/src/enumerations/password-login-error-type.d.ts +5 -0
- package/src/enumerations/password-login-error-type.d.ts.map +1 -0
- package/src/enumerations/password-login-error-type.js +9 -0
- package/src/enumerations/password-login-error-type.js.map +1 -0
- package/src/enumerations/pbkdf2-error-type.d.ts +6 -0
- package/src/enumerations/pbkdf2-error-type.d.ts.map +1 -0
- package/src/enumerations/pbkdf2-error-type.js +10 -0
- package/src/enumerations/pbkdf2-error-type.js.map +1 -0
- package/src/enumerations/pbkdf2-profile.d.ts +6 -0
- package/src/enumerations/pbkdf2-profile.d.ts.map +1 -0
- package/src/enumerations/pbkdf2-profile.js +10 -0
- package/src/enumerations/pbkdf2-profile.js.map +1 -0
- package/src/enumerations/secure-storage-error-type.d.ts +6 -0
- package/src/enumerations/secure-storage-error-type.d.ts.map +1 -0
- package/src/enumerations/secure-storage-error-type.js +10 -0
- package/src/enumerations/secure-storage-error-type.js.map +1 -0
- package/src/errors/disposed.d.ts +22 -0
- package/src/errors/disposed.d.ts.map +1 -0
- package/src/errors/disposed.js +32 -0
- package/src/errors/disposed.js.map +1 -0
- package/src/errors/ecies.d.ts +52 -0
- package/src/errors/ecies.d.ts.map +1 -0
- package/src/errors/ecies.js +82 -0
- package/src/errors/ecies.js.map +1 -0
- package/src/errors/guid.d.ts +49 -0
- package/src/errors/guid.d.ts.map +1 -0
- package/src/errors/guid.js +100 -0
- package/src/errors/guid.js.map +1 -0
- package/src/errors/id-provider.d.ts +23 -0
- package/src/errors/id-provider.d.ts.map +1 -0
- package/src/errors/id-provider.js +33 -0
- package/src/errors/id-provider.js.map +1 -0
- package/src/errors/{index.ts → index.d.ts} +1 -0
- package/src/errors/index.d.ts.map +1 -0
- package/src/errors/index.js +13 -0
- package/src/errors/index.js.map +1 -0
- package/src/errors/invalid-email.d.ts +8 -0
- package/src/errors/invalid-email.d.ts.map +1 -0
- package/src/errors/invalid-email.js +19 -0
- package/src/errors/invalid-email.js.map +1 -0
- package/src/errors/length.d.ts +7 -0
- package/src/errors/length.d.ts.map +1 -0
- package/src/errors/length.js +15 -0
- package/src/errors/length.js.map +1 -0
- package/src/errors/member.d.ts +7 -0
- package/src/errors/member.d.ts.map +1 -0
- package/src/errors/member.js +15 -0
- package/src/errors/member.js.map +1 -0
- package/src/errors/pbkdf2.d.ts +7 -0
- package/src/errors/pbkdf2.d.ts.map +1 -0
- package/src/errors/pbkdf2.js +15 -0
- package/src/errors/pbkdf2.js.map +1 -0
- package/src/errors/secure-storage.d.ts +7 -0
- package/src/errors/secure-storage.d.ts.map +1 -0
- package/src/errors/secure-storage.js +16 -0
- package/src/errors/secure-storage.js.map +1 -0
- package/src/errors/simple-ecies.d.ts +6 -0
- package/src/errors/simple-ecies.d.ts.map +1 -0
- package/src/errors/simple-ecies.js +16 -0
- package/src/errors/simple-ecies.js.map +1 -0
- package/src/errors/simple-test-error.d.ts +4 -0
- package/src/errors/simple-test-error.d.ts.map +1 -0
- package/src/errors/simple-test-error.js +11 -0
- package/src/errors/simple-test-error.js.map +1 -0
- package/src/i18n-setup.d.ts +32 -0
- package/src/i18n-setup.d.ts.map +1 -0
- package/src/i18n-setup.js +109 -0
- package/src/i18n-setup.js.map +1 -0
- package/src/{index.ts → index.d.ts} +12 -72
- package/src/index.d.ts.map +1 -0
- package/src/index.js +146 -0
- package/src/index.js.map +1 -0
- package/src/interfaces/checksum-config.d.ts +5 -0
- package/src/interfaces/checksum-config.d.ts.map +1 -0
- package/src/interfaces/checksum-config.js +3 -0
- package/src/interfaces/checksum-config.js.map +1 -0
- package/src/interfaces/checksum-consts.d.ts +11 -0
- package/src/interfaces/checksum-consts.d.ts.map +1 -0
- package/src/interfaces/checksum-consts.js +3 -0
- package/src/interfaces/checksum-consts.js.map +1 -0
- package/src/interfaces/configuration-provenance.d.ts +43 -0
- package/src/interfaces/configuration-provenance.d.ts.map +1 -0
- package/src/interfaces/configuration-provenance.js +8 -0
- package/src/interfaces/configuration-provenance.js.map +1 -0
- package/src/interfaces/constants.d.ts +70 -0
- package/src/interfaces/constants.d.ts.map +1 -0
- package/src/interfaces/constants.js +3 -0
- package/src/interfaces/constants.js.map +1 -0
- package/src/interfaces/ecies-config.d.ts +9 -0
- package/src/interfaces/ecies-config.d.ts.map +1 -0
- package/src/interfaces/ecies-config.js +3 -0
- package/src/interfaces/ecies-config.js.map +1 -0
- package/src/interfaces/ecies-consts.d.ts +61 -0
- package/src/interfaces/ecies-consts.d.ts.map +1 -0
- package/src/interfaces/ecies-consts.js +3 -0
- package/src/interfaces/ecies-consts.js.map +1 -0
- package/src/interfaces/ecies-file-service.d.ts +7 -0
- package/src/interfaces/ecies-file-service.d.ts.map +1 -0
- package/src/interfaces/ecies-file-service.js +3 -0
- package/src/interfaces/ecies-file-service.js.map +1 -0
- package/src/interfaces/encrypted-chunk.d.ts +55 -0
- package/src/interfaces/encrypted-chunk.d.ts.map +1 -0
- package/src/interfaces/encrypted-chunk.js +15 -0
- package/src/interfaces/encrypted-chunk.js.map +1 -0
- package/src/interfaces/encryption-state.d.ts +18 -0
- package/src/interfaces/encryption-state.d.ts.map +1 -0
- package/src/interfaces/encryption-state.js +5 -0
- package/src/interfaces/encryption-state.js.map +1 -0
- package/src/interfaces/frontend-member-operational.d.ts +51 -0
- package/src/interfaces/frontend-member-operational.d.ts.map +1 -0
- package/src/interfaces/frontend-member-operational.js +3 -0
- package/src/interfaces/frontend-member-operational.js.map +1 -0
- package/src/interfaces/guid.d.ts +78 -0
- package/src/interfaces/guid.d.ts.map +1 -0
- package/src/interfaces/guid.js +3 -0
- package/src/interfaces/guid.js.map +1 -0
- package/src/interfaces/id-provider.d.ts +107 -0
- package/src/interfaces/id-provider.d.ts.map +1 -0
- package/src/interfaces/id-provider.js +56 -0
- package/src/interfaces/id-provider.js.map +1 -0
- package/src/interfaces/{index.ts → index.d.ts} +1 -0
- package/src/interfaces/index.d.ts.map +1 -0
- package/src/interfaces/index.js +16 -0
- package/src/interfaces/index.js.map +1 -0
- package/src/interfaces/invariant.d.ts +46 -0
- package/src/interfaces/invariant.d.ts.map +1 -0
- package/src/interfaces/invariant.js +22 -0
- package/src/interfaces/invariant.js.map +1 -0
- package/src/interfaces/library-error.d.ts +23 -0
- package/src/interfaces/library-error.d.ts.map +1 -0
- package/src/interfaces/library-error.js +3 -0
- package/src/interfaces/library-error.js.map +1 -0
- package/src/interfaces/{member-storage.ts → member-storage.d.ts} +10 -11
- package/src/interfaces/member-storage.d.ts.map +1 -0
- package/src/interfaces/member-storage.js +3 -0
- package/src/interfaces/member-storage.js.map +1 -0
- package/src/interfaces/{member-with-mnemonic.ts → member-with-mnemonic.d.ts} +3 -3
- package/src/interfaces/member-with-mnemonic.d.ts.map +1 -0
- package/src/interfaces/member-with-mnemonic.js +3 -0
- package/src/interfaces/member-with-mnemonic.js.map +1 -0
- package/src/interfaces/member.d.ts +55 -0
- package/src/interfaces/member.d.ts.map +1 -0
- package/src/interfaces/member.js +3 -0
- package/src/interfaces/member.js.map +1 -0
- package/src/interfaces/multi-recipient-chunk.d.ts +54 -0
- package/src/interfaces/multi-recipient-chunk.d.ts.map +1 -0
- package/src/interfaces/multi-recipient-chunk.js +16 -0
- package/src/interfaces/multi-recipient-chunk.js.map +1 -0
- package/src/interfaces/pbkdf2-config.d.ts +7 -0
- package/src/interfaces/pbkdf2-config.d.ts.map +1 -0
- package/src/interfaces/pbkdf2-config.js +3 -0
- package/src/interfaces/pbkdf2-config.js.map +1 -0
- package/src/interfaces/pbkdf2-consts.d.ts +9 -0
- package/src/interfaces/pbkdf2-consts.d.ts.map +1 -0
- package/src/interfaces/pbkdf2-consts.js +3 -0
- package/src/interfaces/pbkdf2-consts.js.map +1 -0
- package/src/interfaces/pbkdf2-result.d.ts +6 -0
- package/src/interfaces/pbkdf2-result.d.ts.map +1 -0
- package/src/interfaces/pbkdf2-result.js +3 -0
- package/src/interfaces/pbkdf2-result.js.map +1 -0
- package/src/interfaces/stream-config.d.ts +14 -0
- package/src/interfaces/stream-config.d.ts.map +1 -0
- package/src/interfaces/stream-config.js +11 -0
- package/src/interfaces/stream-config.js.map +1 -0
- package/src/interfaces/stream-header.d.ts +29 -0
- package/src/interfaces/stream-header.d.ts.map +1 -0
- package/src/interfaces/stream-header.js +12 -0
- package/src/interfaces/stream-header.js.map +1 -0
- package/src/interfaces/stream-progress.d.ts +33 -0
- package/src/interfaces/stream-progress.d.ts.map +1 -0
- package/src/interfaces/stream-progress.js +3 -0
- package/src/interfaces/stream-progress.js.map +1 -0
- package/src/lib/configuration-provenance-utils.d.ts +11 -0
- package/src/lib/configuration-provenance-utils.d.ts.map +1 -0
- package/src/lib/configuration-provenance-utils.js +30 -0
- package/src/lib/configuration-provenance-utils.js.map +1 -0
- package/src/lib/crypto-container.d.ts +25 -0
- package/src/lib/crypto-container.d.ts.map +1 -0
- package/src/lib/crypto-container.js +50 -0
- package/src/lib/crypto-container.js.map +1 -0
- package/src/lib/guid.d.ts +344 -0
- package/src/lib/guid.d.ts.map +1 -0
- package/src/lib/guid.js +919 -0
- package/src/lib/guid.js.map +1 -0
- package/src/lib/id-providers/custom-provider.d.ts +46 -0
- package/src/lib/id-providers/custom-provider.d.ts.map +1 -0
- package/src/lib/id-providers/custom-provider.js +89 -0
- package/src/lib/id-providers/custom-provider.js.map +1 -0
- package/src/lib/id-providers/guidv4-provider.d.ts +56 -0
- package/src/lib/id-providers/guidv4-provider.d.ts.map +1 -0
- package/src/lib/id-providers/guidv4-provider.js +126 -0
- package/src/lib/id-providers/guidv4-provider.js.map +1 -0
- package/src/lib/id-providers/{index.ts → index.d.ts} +5 -6
- package/src/lib/id-providers/index.d.ts.map +1 -0
- package/src/lib/id-providers/index.js +37 -0
- package/src/lib/id-providers/index.js.map +1 -0
- package/src/lib/id-providers/objectid-provider.d.ts +43 -0
- package/src/lib/id-providers/objectid-provider.d.ts.map +1 -0
- package/src/lib/id-providers/objectid-provider.js +108 -0
- package/src/lib/id-providers/objectid-provider.js.map +1 -0
- package/src/lib/id-providers/uuid-provider.d.ts +52 -0
- package/src/lib/id-providers/uuid-provider.d.ts.map +1 -0
- package/src/lib/id-providers/uuid-provider.js +114 -0
- package/src/lib/id-providers/uuid-provider.js.map +1 -0
- package/src/lib/{index.ts → index.d.ts} +2 -2
- package/src/lib/index.d.ts.map +1 -0
- package/src/lib/index.js +9 -0
- package/src/lib/index.js.map +1 -0
- package/src/lib/invariant-validator.d.ts +59 -0
- package/src/lib/invariant-validator.d.ts.map +1 -0
- package/src/lib/invariant-validator.js +101 -0
- package/src/lib/invariant-validator.js.map +1 -0
- package/src/lib/invariants/encryption-algorithm-consistency.d.ts +17 -0
- package/src/lib/invariants/encryption-algorithm-consistency.d.ts.map +1 -0
- package/src/lib/invariants/encryption-algorithm-consistency.js +53 -0
- package/src/lib/invariants/encryption-algorithm-consistency.js.map +1 -0
- package/src/lib/invariants/{index.ts → index.d.ts} +1 -0
- package/src/lib/invariants/index.d.ts.map +1 -0
- package/src/lib/invariants/index.js +7 -0
- package/src/lib/invariants/index.js.map +1 -0
- package/src/lib/invariants/pbkdf2-profiles-validity.d.ts +16 -0
- package/src/lib/invariants/pbkdf2-profiles-validity.d.ts.map +1 -0
- package/src/lib/invariants/pbkdf2-profiles-validity.js +62 -0
- package/src/lib/invariants/pbkdf2-profiles-validity.js.map +1 -0
- package/src/lib/invariants/recipient-id-consistency.d.ts +18 -0
- package/src/lib/invariants/recipient-id-consistency.d.ts.map +1 -0
- package/src/lib/invariants/recipient-id-consistency.js +35 -0
- package/src/lib/invariants/recipient-id-consistency.js.map +1 -0
- package/src/lib/multi-recipient-chunk-utils.d.ts +38 -0
- package/src/lib/multi-recipient-chunk-utils.d.ts.map +1 -0
- package/src/lib/multi-recipient-chunk-utils.js +45 -0
- package/src/lib/multi-recipient-chunk-utils.js.map +1 -0
- package/src/member.d.ts +92 -0
- package/src/member.d.ts.map +1 -0
- package/src/member.js +327 -0
- package/src/member.js.map +1 -0
- package/src/{pbkdf2-profiles.ts → pbkdf2-profiles.d.ts} +2 -2
- package/src/pbkdf2-profiles.d.ts.map +1 -0
- package/src/pbkdf2-profiles.js +3 -0
- package/src/pbkdf2-profiles.js.map +1 -0
- package/src/phone-number.d.ts +6 -0
- package/src/phone-number.d.ts.map +1 -0
- package/src/phone-number.js +22 -0
- package/src/phone-number.js.map +1 -0
- package/src/regexes.d.ts +7 -0
- package/src/regexes.d.ts.map +1 -0
- package/src/regexes.js +10 -0
- package/src/regexes.js.map +1 -0
- package/src/secure-buffer.d.ts +61 -0
- package/src/secure-buffer.d.ts.map +1 -0
- package/src/secure-buffer.js +205 -0
- package/src/secure-buffer.js.map +1 -0
- package/src/secure-string.d.ts +46 -0
- package/src/secure-string.d.ts.map +1 -0
- package/src/secure-string.js +210 -0
- package/src/secure-string.js.map +1 -0
- package/src/services/aes-gcm.d.ts +57 -0
- package/src/services/aes-gcm.d.ts.map +1 -0
- package/src/services/aes-gcm.js +146 -0
- package/src/services/aes-gcm.js.map +1 -0
- package/src/services/chunk-processor.d.ts +31 -0
- package/src/services/chunk-processor.d.ts.map +1 -0
- package/src/services/chunk-processor.js +149 -0
- package/src/services/chunk-processor.js.map +1 -0
- package/src/services/ecies/crypto-core.d.ts +72 -0
- package/src/services/ecies/crypto-core.d.ts.map +1 -0
- package/src/services/ecies/crypto-core.js +209 -0
- package/src/services/ecies/crypto-core.js.map +1 -0
- package/src/services/ecies/example.d.ts +25 -0
- package/src/services/ecies/example.d.ts.map +1 -0
- package/src/services/ecies/example.js +128 -0
- package/src/services/ecies/example.js.map +1 -0
- package/src/services/ecies/file.d.ts +18 -0
- package/src/services/ecies/file.d.ts.map +1 -0
- package/src/services/ecies/file.js +110 -0
- package/src/services/ecies/file.js.map +1 -0
- package/src/services/ecies/{index.ts → index.d.ts} +1 -3
- package/src/services/ecies/index.d.ts.map +1 -0
- package/src/services/ecies/index.js +44 -0
- package/src/services/ecies/index.js.map +1 -0
- package/src/services/ecies/integration.d.ts +59 -0
- package/src/services/ecies/integration.d.ts.map +1 -0
- package/src/services/ecies/integration.js +172 -0
- package/src/services/ecies/integration.js.map +1 -0
- package/src/services/ecies/interfaces.d.ts +54 -0
- package/src/services/ecies/interfaces.d.ts.map +1 -0
- package/src/services/ecies/interfaces.js +6 -0
- package/src/services/ecies/interfaces.js.map +1 -0
- package/src/services/ecies/manual-test.d.ts +29 -0
- package/src/services/ecies/manual-test.d.ts.map +1 -0
- package/src/services/ecies/manual-test.js +171 -0
- package/src/services/ecies/manual-test.js.map +1 -0
- package/src/services/ecies/multi-recipient.d.ts +56 -0
- package/src/services/ecies/multi-recipient.d.ts.map +1 -0
- package/src/services/ecies/multi-recipient.js +348 -0
- package/src/services/ecies/multi-recipient.js.map +1 -0
- package/src/services/ecies/service.d.ts +120 -0
- package/src/services/ecies/service.d.ts.map +1 -0
- package/src/services/ecies/service.js +214 -0
- package/src/services/ecies/service.js.map +1 -0
- package/src/services/ecies/signature.d.ts +27 -0
- package/src/services/ecies/signature.d.ts.map +1 -0
- package/src/services/ecies/signature.js +76 -0
- package/src/services/ecies/signature.js.map +1 -0
- package/src/services/ecies/single-recipient.d.ts +46 -0
- package/src/services/ecies/single-recipient.d.ts.map +1 -0
- package/src/services/ecies/single-recipient.js +326 -0
- package/src/services/ecies/single-recipient.js.map +1 -0
- package/src/services/encryption-stream.d.ts +71 -0
- package/src/services/encryption-stream.d.ts.map +1 -0
- package/src/services/encryption-stream.js +299 -0
- package/src/services/encryption-stream.js.map +1 -0
- package/src/services/{index.ts → index.d.ts} +1 -0
- package/src/services/index.d.ts.map +1 -0
- package/src/services/index.js +14 -0
- package/src/services/index.js.map +1 -0
- package/src/services/multi-recipient-processor.d.ts +35 -0
- package/src/services/multi-recipient-processor.d.ts.map +1 -0
- package/src/services/multi-recipient-processor.js +293 -0
- package/src/services/multi-recipient-processor.js.map +1 -0
- package/src/services/password-login.d.ts +47 -0
- package/src/services/password-login.d.ts.map +1 -0
- package/src/services/password-login.js +119 -0
- package/src/services/password-login.js.map +1 -0
- package/src/services/pbkdf2.d.ts +54 -0
- package/src/services/pbkdf2.d.ts.map +1 -0
- package/src/services/pbkdf2.js +112 -0
- package/src/services/pbkdf2.js.map +1 -0
- package/src/services/progress-tracker.d.ts +23 -0
- package/src/services/progress-tracker.d.ts.map +1 -0
- package/src/services/progress-tracker.js +107 -0
- package/src/services/progress-tracker.js.map +1 -0
- package/src/services/resumable-encryption.d.ts +19 -0
- package/src/services/resumable-encryption.d.ts.map +1 -0
- package/src/services/resumable-encryption.js +109 -0
- package/src/services/resumable-encryption.js.map +1 -0
- package/src/services/xor.d.ts +37 -0
- package/src/services/xor.d.ts.map +1 -0
- package/src/services/xor.js +67 -0
- package/src/services/xor.js.map +1 -0
- package/src/test-mocks/index.d.ts +2 -0
- package/src/test-mocks/index.d.ts.map +1 -0
- package/src/test-mocks/index.js +5 -0
- package/src/test-mocks/index.js.map +1 -0
- package/src/test-mocks/mock-frontend-member.d.ts +85 -0
- package/src/test-mocks/mock-frontend-member.d.ts.map +1 -0
- package/src/test-mocks/mock-frontend-member.js +194 -0
- package/src/test-mocks/mock-frontend-member.js.map +1 -0
- package/src/testing.d.ts +2 -0
- package/src/testing.d.ts.map +1 -0
- package/src/testing.js +6 -0
- package/src/testing.js.map +1 -0
- package/src/translations/de.d.ts +4 -0
- package/src/translations/de.d.ts.map +1 -0
- package/src/translations/de.js +207 -0
- package/src/translations/de.js.map +1 -0
- package/src/translations/en-US.d.ts +4 -0
- package/src/translations/en-US.d.ts.map +1 -0
- package/src/translations/en-US.js +207 -0
- package/src/translations/en-US.js.map +1 -0
- package/src/translations/es.d.ts +4 -0
- package/src/translations/es.d.ts.map +1 -0
- package/src/translations/es.js +207 -0
- package/src/translations/es.js.map +1 -0
- package/src/translations/fr.d.ts +4 -0
- package/src/translations/fr.d.ts.map +1 -0
- package/src/translations/fr.js +207 -0
- package/src/translations/fr.js.map +1 -0
- package/src/translations/ja.d.ts +4 -0
- package/src/translations/ja.d.ts.map +1 -0
- package/src/translations/ja.js +206 -0
- package/src/translations/ja.js.map +1 -0
- package/src/translations/uk.d.ts +4 -0
- package/src/translations/uk.d.ts.map +1 -0
- package/src/translations/uk.js +209 -0
- package/src/translations/uk.js.map +1 -0
- package/src/translations/zh-cn.d.ts +4 -0
- package/src/translations/zh-cn.d.ts.map +1 -0
- package/src/translations/zh-cn.js +206 -0
- package/src/translations/zh-cn.js.map +1 -0
- package/src/types/deep-partial.d.ts +4 -0
- package/src/types/deep-partial.d.ts.map +1 -0
- package/src/types/deep-partial.js +3 -0
- package/src/types/deep-partial.js.map +1 -0
- package/src/{types.ts → types.d.ts} +7 -15
- package/src/types.d.ts.map +1 -0
- package/src/types.js +3 -0
- package/src/types.js.map +1 -0
- package/src/utils/encryption-type-utils.d.ts +29 -0
- package/src/utils/encryption-type-utils.d.ts.map +1 -0
- package/src/utils/encryption-type-utils.js +67 -0
- package/src/utils/encryption-type-utils.js.map +1 -0
- package/src/utils.d.ts +68 -0
- package/src/utils.d.ts.map +1 -0
- package/src/utils.js +291 -0
- package/src/utils.js.map +1 -0
- package/LICENSE +0 -21
- package/src/builders/ecies-builder.ts +0 -39
- package/src/builders/member-builder.ts +0 -155
- package/src/constants.ts +0 -609
- package/src/core/errors/crypto-error.ts +0 -78
- package/src/core/types/result.ts +0 -19
- package/src/email-string.ts +0 -82
- package/src/enumerations/disposed-error-type.ts +0 -11
- package/src/enumerations/ecies-cipher-suite.ts +0 -4
- package/src/enumerations/ecies-encryption-type.ts +0 -41
- package/src/enumerations/ecies-error-type.ts +0 -43
- package/src/enumerations/ecies-string-key.ts +0 -205
- package/src/enumerations/ecies-version.ts +0 -3
- package/src/enumerations/guid-brand-type.ts +0 -26
- package/src/enumerations/guid-error-type.ts +0 -6
- package/src/enumerations/id-provider-error-type.ts +0 -50
- package/src/enumerations/invalid-email-type.ts +0 -5
- package/src/enumerations/length-encoding-type.ts +0 -6
- package/src/enumerations/length-error-type.ts +0 -5
- package/src/enumerations/member-error-type.ts +0 -106
- package/src/enumerations/password-login-error-type.ts +0 -4
- package/src/enumerations/pbkdf2-error-type.ts +0 -5
- package/src/enumerations/pbkdf2-profile.ts +0 -5
- package/src/enumerations/secure-storage-error-type.ts +0 -5
- package/src/errors/disposed.ts +0 -36
- package/src/errors/ecies.ts +0 -153
- package/src/errors/guid.ts +0 -130
- package/src/errors/id-provider.ts +0 -40
- package/src/errors/invalid-email.ts +0 -23
- package/src/errors/length.ts +0 -19
- package/src/errors/member.ts +0 -20
- package/src/errors/pbkdf2.ts +0 -20
- package/src/errors/secure-storage.ts +0 -17
- package/src/errors/simple-ecies.ts +0 -21
- package/src/errors/simple-test-error.ts +0 -6
- package/src/i18n-setup.ts +0 -130
- package/src/interfaces/checksum-config.ts +0 -4
- package/src/interfaces/checksum-consts.ts +0 -13
- package/src/interfaces/configuration-provenance.ts +0 -54
- package/src/interfaces/constants.ts +0 -75
- package/src/interfaces/ecies-config.ts +0 -8
- package/src/interfaces/ecies-consts.ts +0 -76
- package/src/interfaces/ecies-file-service.ts +0 -6
- package/src/interfaces/encrypted-chunk.ts +0 -64
- package/src/interfaces/encryption-state.ts +0 -19
- package/src/interfaces/frontend-member-operational.ts +0 -77
- package/src/interfaces/guid.ts +0 -86
- package/src/interfaces/id-provider.ts +0 -152
- package/src/interfaces/invariant.ts +0 -60
- package/src/interfaces/library-error.ts +0 -23
- package/src/interfaces/member.ts +0 -84
- package/src/interfaces/multi-recipient-chunk.ts +0 -61
- package/src/interfaces/pbkdf2-config.ts +0 -6
- package/src/interfaces/pbkdf2-consts.ts +0 -10
- package/src/interfaces/pbkdf2-result.ts +0 -5
- package/src/interfaces/stream-config.ts +0 -17
- package/src/interfaces/stream-header.ts +0 -34
- package/src/interfaces/stream-progress.ts +0 -31
- package/src/lib/configuration-provenance-utils.ts +0 -29
- package/src/lib/crypto-container.ts +0 -64
- package/src/lib/guid.ts +0 -1097
- package/src/lib/id-providers/custom-provider.ts +0 -109
- package/src/lib/id-providers/guidv4-provider.ts +0 -141
- package/src/lib/id-providers/objectid-provider.ts +0 -125
- package/src/lib/id-providers/uuid-provider.ts +0 -133
- package/src/lib/invariant-validator.ts +0 -133
- package/src/lib/invariants/encryption-algorithm-consistency.ts +0 -73
- package/src/lib/invariants/pbkdf2-profiles-validity.ts +0 -78
- package/src/lib/invariants/recipient-id-consistency.ts +0 -46
- package/src/lib/multi-recipient-chunk-utils.ts +0 -63
- package/src/member.ts +0 -495
- package/src/phone-number.ts +0 -18
- package/src/regexes.ts +0 -10
- package/src/secure-buffer.ts +0 -226
- package/src/secure-string.ts +0 -244
- package/src/services/aes-gcm.ts +0 -220
- package/src/services/chunk-processor.ts +0 -188
- package/src/services/ecies/README.md +0 -147
- package/src/services/ecies/crypto-core.ts +0 -292
- package/src/services/ecies/example.ts +0 -185
- package/src/services/ecies/file.ts +0 -167
- package/src/services/ecies/integration.ts +0 -241
- package/src/services/ecies/interfaces.ts +0 -62
- package/src/services/ecies/manual-test.ts +0 -219
- package/src/services/ecies/multi-recipient.ts +0 -545
- package/src/services/ecies/service.ts +0 -370
- package/src/services/ecies/signature.ts +0 -93
- package/src/services/ecies/single-recipient.ts +0 -476
- package/src/services/encryption-stream.ts +0 -435
- package/src/services/multi-recipient-processor.ts +0 -377
- package/src/services/password-login.ts +0 -226
- package/src/services/pbkdf2.ts +0 -169
- package/src/services/progress-tracker.ts +0 -128
- package/src/services/resumable-encryption.ts +0 -135
- package/src/services/xor.ts +0 -65
- package/src/test-mocks/index.ts +0 -1
- package/src/test-mocks/mock-frontend-member.ts +0 -276
- package/src/testing.ts +0 -2
- package/src/translations/de.ts +0 -260
- package/src/translations/en-US.ts +0 -262
- package/src/translations/es.ts +0 -271
- package/src/translations/fr.ts +0 -269
- package/src/translations/ja.ts +0 -259
- package/src/translations/uk.ts +0 -271
- package/src/translations/zh-cn.ts +0 -234
- package/src/types/deep-partial.ts +0 -11
- package/src/utils/encryption-type-utils.ts +0 -76
- package/src/utils.ts +0 -329
package/src/errors/disposed.ts
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { TranslatableGenericError } from '@digitaldefiance/i18n-lib';
|
|
2
|
-
import { EciesComponentId } from '../i18n-setup';
|
|
3
|
-
import { EciesStringKey } from '../enumerations';
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Error thrown when operations are attempted on disposed objects.
|
|
7
|
-
* Uses TranslatableGenericError for simple i18n support since there's only one error type.
|
|
8
|
-
*
|
|
9
|
-
* @example
|
|
10
|
-
* ```typescript
|
|
11
|
-
* throw new DisposedError();
|
|
12
|
-
* throw new DisposedError('fr'); // French
|
|
13
|
-
* ```
|
|
14
|
-
*/
|
|
15
|
-
export class DisposedError extends TranslatableGenericError<EciesStringKey> {
|
|
16
|
-
/**
|
|
17
|
-
* Creates a new DisposedError instance.
|
|
18
|
-
*
|
|
19
|
-
* @param language - Optional language code for error message localization.
|
|
20
|
-
* @param instanceKey - Optional i18n engine instance key (defaults to ecies engine).
|
|
21
|
-
*/
|
|
22
|
-
constructor(language?: string, instanceKey: string = 'ecies') {
|
|
23
|
-
super(
|
|
24
|
-
EciesComponentId,
|
|
25
|
-
EciesStringKey.Error_DisposedError_ObjectDisposed,
|
|
26
|
-
undefined,
|
|
27
|
-
language,
|
|
28
|
-
undefined,
|
|
29
|
-
instanceKey
|
|
30
|
-
);
|
|
31
|
-
this.name = 'DisposedError';
|
|
32
|
-
|
|
33
|
-
// Maintains proper prototype chain for instanceof checks
|
|
34
|
-
Object.setPrototypeOf(this, DisposedError.prototype);
|
|
35
|
-
}
|
|
36
|
-
}
|
package/src/errors/ecies.ts
DELETED
|
@@ -1,153 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
buildReasonMap,
|
|
3
|
-
HandleableErrorOptions,
|
|
4
|
-
TypedHandleableError,
|
|
5
|
-
} from '@digitaldefiance/i18n-lib';
|
|
6
|
-
import { ECIESErrorTypeEnum } from '../enumerations/ecies-error-type';
|
|
7
|
-
import { EciesStringKey } from '../enumerations/ecies-string-key';
|
|
8
|
-
import { EciesComponentId } from '../i18n-setup';
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
* Context information captured when an error occurs.
|
|
12
|
-
* This provides debugging information beyond just the error message.
|
|
13
|
-
*/
|
|
14
|
-
export interface IErrorContext {
|
|
15
|
-
/**
|
|
16
|
-
* The operation that was being performed when the error occurred
|
|
17
|
-
* e.g., 'encryptChunk', 'decryptStream', 'validateRecipientId'
|
|
18
|
-
*/
|
|
19
|
-
operation: string;
|
|
20
|
-
|
|
21
|
-
/**
|
|
22
|
-
* Stack trace from when the error was created
|
|
23
|
-
*/
|
|
24
|
-
stackTrace: string;
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* Relevant configuration values (sanitized to remove sensitive data)
|
|
28
|
-
*/
|
|
29
|
-
config?: Partial<{
|
|
30
|
-
idProviderName: string;
|
|
31
|
-
idProviderByteLength: number;
|
|
32
|
-
memberIdLength: number;
|
|
33
|
-
recipientIdSize: number;
|
|
34
|
-
curveName: string;
|
|
35
|
-
}>;
|
|
36
|
-
|
|
37
|
-
/**
|
|
38
|
-
* Timestamp when error occurred
|
|
39
|
-
*/
|
|
40
|
-
timestamp: Date;
|
|
41
|
-
|
|
42
|
-
/**
|
|
43
|
-
* Additional metadata specific to the error
|
|
44
|
-
*/
|
|
45
|
-
metadata?: Record<string, unknown>;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
export class ECIESError extends TypedHandleableError<
|
|
49
|
-
typeof ECIESErrorTypeEnum,
|
|
50
|
-
EciesStringKey
|
|
51
|
-
> {
|
|
52
|
-
/**
|
|
53
|
-
* Rich context information for debugging
|
|
54
|
-
*/
|
|
55
|
-
public readonly context?: IErrorContext;
|
|
56
|
-
|
|
57
|
-
constructor(
|
|
58
|
-
type: ECIESErrorTypeEnum,
|
|
59
|
-
options?: HandleableErrorOptions,
|
|
60
|
-
language?: string,
|
|
61
|
-
otherVars?: Record<string, string | number>,
|
|
62
|
-
context?: Partial<IErrorContext>,
|
|
63
|
-
) {
|
|
64
|
-
let source: Error;
|
|
65
|
-
if (
|
|
66
|
-
options &&
|
|
67
|
-
typeof options === 'object' &&
|
|
68
|
-
'cause' in options &&
|
|
69
|
-
options.cause instanceof Error
|
|
70
|
-
) {
|
|
71
|
-
source = options.cause;
|
|
72
|
-
} else {
|
|
73
|
-
source = new Error();
|
|
74
|
-
}
|
|
75
|
-
super(
|
|
76
|
-
EciesComponentId,
|
|
77
|
-
type,
|
|
78
|
-
buildReasonMap<typeof ECIESErrorTypeEnum, EciesStringKey>(
|
|
79
|
-
ECIESErrorTypeEnum,
|
|
80
|
-
['Error', 'ECIESError'],
|
|
81
|
-
),
|
|
82
|
-
source,
|
|
83
|
-
options,
|
|
84
|
-
language,
|
|
85
|
-
otherVars,
|
|
86
|
-
);
|
|
87
|
-
this.name = 'ECIESError';
|
|
88
|
-
|
|
89
|
-
// Capture context if provided
|
|
90
|
-
if (context) {
|
|
91
|
-
this.context = {
|
|
92
|
-
operation: context.operation ?? 'unknown',
|
|
93
|
-
stackTrace:
|
|
94
|
-
context.stackTrace ?? new Error().stack ?? 'stack unavailable',
|
|
95
|
-
config: context.config,
|
|
96
|
-
timestamp: context.timestamp ?? new Date(),
|
|
97
|
-
metadata: context.metadata,
|
|
98
|
-
};
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
/**
|
|
103
|
-
* Serialize error to JSON including context
|
|
104
|
-
*/
|
|
105
|
-
override toJSON(): Record<string, unknown> {
|
|
106
|
-
return {
|
|
107
|
-
name: this.name,
|
|
108
|
-
message: this.message,
|
|
109
|
-
type: this.type,
|
|
110
|
-
context: this.context,
|
|
111
|
-
cause:
|
|
112
|
-
this.cause instanceof Error
|
|
113
|
-
? {
|
|
114
|
-
name: this.cause.name,
|
|
115
|
-
message: this.cause.message,
|
|
116
|
-
}
|
|
117
|
-
: undefined,
|
|
118
|
-
};
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
/**
|
|
122
|
-
* Get a detailed error report including all context
|
|
123
|
-
*/
|
|
124
|
-
getDetailedReport(): string {
|
|
125
|
-
const parts = [`${this.name}: ${this.message}`, `Type: ${this.type}`];
|
|
126
|
-
|
|
127
|
-
if (this.context) {
|
|
128
|
-
parts.push(`Operation: ${this.context.operation}`);
|
|
129
|
-
parts.push(`Timestamp: ${this.context.timestamp.toISOString()}`);
|
|
130
|
-
|
|
131
|
-
if (this.context.config) {
|
|
132
|
-
parts.push('Configuration:');
|
|
133
|
-
Object.entries(this.context.config).forEach(([key, value]) => {
|
|
134
|
-
parts.push(` ${key}: ${value}`);
|
|
135
|
-
});
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
if (this.context.metadata) {
|
|
139
|
-
parts.push('Metadata:');
|
|
140
|
-
Object.entries(this.context.metadata).forEach(([key, value]) => {
|
|
141
|
-
parts.push(` ${key}: ${JSON.stringify(value)}`);
|
|
142
|
-
});
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
if (this.context.stackTrace) {
|
|
146
|
-
parts.push('\nStack Trace:');
|
|
147
|
-
parts.push(this.context.stackTrace);
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
return parts.join('\n');
|
|
152
|
-
}
|
|
153
|
-
}
|
package/src/errors/guid.ts
DELETED
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
buildReasonMap,
|
|
3
|
-
TypedHandleableError,
|
|
4
|
-
} from '@digitaldefiance/i18n-lib';
|
|
5
|
-
import { EciesStringKey } from '../enumerations';
|
|
6
|
-
import { GuidBrandType } from '../enumerations/guid-brand-type';
|
|
7
|
-
import { GuidErrorType } from '../enumerations/guid-error-type';
|
|
8
|
-
import { EciesComponentId } from '../i18n-setup';
|
|
9
|
-
import { RawGuidBuffer } from '../types';
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* Error class for handling GUID-related errors.
|
|
13
|
-
* Provides detailed error information including the error type, optional brand, length, and GUID value.
|
|
14
|
-
*
|
|
15
|
-
* @example
|
|
16
|
-
* ```typescript
|
|
17
|
-
* throw new GuidError(GuidErrorType.InvalidGuid);
|
|
18
|
-
* throw new GuidError(GuidErrorType.InvalidGuidUnknownLength, undefined, 17);
|
|
19
|
-
* throw new GuidError(GuidErrorType.InvalidGuidWithDetails, undefined, undefined, buffer);
|
|
20
|
-
* ```
|
|
21
|
-
*/
|
|
22
|
-
export class GuidError extends TypedHandleableError<
|
|
23
|
-
typeof GuidErrorType,
|
|
24
|
-
EciesStringKey
|
|
25
|
-
> {
|
|
26
|
-
/**
|
|
27
|
-
* Reason map cache to avoid rebuilding on every error instantiation.
|
|
28
|
-
* This improves performance in scenarios where many errors are created.
|
|
29
|
-
*/
|
|
30
|
-
private static readonly REASON_MAP = buildReasonMap<
|
|
31
|
-
typeof GuidErrorType,
|
|
32
|
-
EciesStringKey
|
|
33
|
-
>(
|
|
34
|
-
GuidErrorType,
|
|
35
|
-
['Error', 'GuidError'],
|
|
36
|
-
new Set([
|
|
37
|
-
GuidErrorType.InvalidGuidWithDetails,
|
|
38
|
-
GuidErrorType.InvalidGuidUnknownBrand,
|
|
39
|
-
GuidErrorType.InvalidGuidUnknownLength,
|
|
40
|
-
]),
|
|
41
|
-
);
|
|
42
|
-
|
|
43
|
-
/**
|
|
44
|
-
* Creates a new GuidError instance.
|
|
45
|
-
*
|
|
46
|
-
* @param type - The type of GUID error that occurred.
|
|
47
|
-
* @param brand - Optional GUID brand type (for brand-related errors).
|
|
48
|
-
* @param length - Optional length value (for length-related errors).
|
|
49
|
-
* @param guid - Optional GUID buffer (for errors involving specific GUID values).
|
|
50
|
-
* @param language - Optional language code for error message localization.
|
|
51
|
-
*
|
|
52
|
-
* @throws {Error} If guid parameter is provided but is not a Buffer.
|
|
53
|
-
*/
|
|
54
|
-
constructor(
|
|
55
|
-
type: GuidErrorType,
|
|
56
|
-
public readonly brand?: GuidBrandType,
|
|
57
|
-
public readonly length?: number,
|
|
58
|
-
public readonly guid?: RawGuidBuffer | Buffer,
|
|
59
|
-
language?: string,
|
|
60
|
-
) {
|
|
61
|
-
// Build template parameters only for the values that are provided
|
|
62
|
-
const templateParams: Record<string, string> = {};
|
|
63
|
-
|
|
64
|
-
if (brand !== undefined) {
|
|
65
|
-
templateParams.BRAND = String(brand);
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
if (length !== undefined) {
|
|
69
|
-
templateParams.LENGTH = String(length);
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
if (guid !== undefined) {
|
|
73
|
-
// Defensive check to ensure guid is a Buffer
|
|
74
|
-
if (!Buffer.isBuffer(guid)) {
|
|
75
|
-
throw new Error('GuidError: guid parameter must be a Buffer');
|
|
76
|
-
}
|
|
77
|
-
templateParams.GUID = guid.toString('hex');
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
super(
|
|
81
|
-
EciesComponentId,
|
|
82
|
-
type,
|
|
83
|
-
GuidError.REASON_MAP,
|
|
84
|
-
new Error(), // source error
|
|
85
|
-
undefined, // options
|
|
86
|
-
language,
|
|
87
|
-
templateParams,
|
|
88
|
-
);
|
|
89
|
-
this.name = 'GuidError';
|
|
90
|
-
|
|
91
|
-
// Maintains proper prototype chain for instanceof checks
|
|
92
|
-
Object.setPrototypeOf(this, GuidError.prototype);
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
/**
|
|
96
|
-
* Returns a string representation of the error with all relevant details.
|
|
97
|
-
* @returns A detailed error string.
|
|
98
|
-
*/
|
|
99
|
-
public override toString(): string {
|
|
100
|
-
const parts = [`${this.name}: ${this.message}`];
|
|
101
|
-
|
|
102
|
-
if (this.brand !== undefined) {
|
|
103
|
-
parts.push(`Brand: ${this.brand}`);
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
if (this.length !== undefined) {
|
|
107
|
-
parts.push(`Length: ${this.length}`);
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
if (this.guid !== undefined) {
|
|
111
|
-
parts.push(`GUID: ${this.guid.toString('hex')}`);
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
return parts.join(' | ');
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
/**
|
|
118
|
-
* Serializes the error to JSON including all custom properties.
|
|
119
|
-
* @returns JSON representation of the error.
|
|
120
|
-
*/
|
|
121
|
-
public override toJSON(): Record<string, unknown> {
|
|
122
|
-
const baseJson = super.toJSON();
|
|
123
|
-
return {
|
|
124
|
-
...baseJson,
|
|
125
|
-
brand: this.brand,
|
|
126
|
-
length: this.length,
|
|
127
|
-
guid: this.guid ? this.guid.toString('hex') : undefined,
|
|
128
|
-
};
|
|
129
|
-
}
|
|
130
|
-
}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { IdProviderErrorType } from '../enumerations/id-provider-error-type';
|
|
2
|
-
import { HandleableErrorOptions, TypedHandleableError, buildReasonMap } from '@digitaldefiance/i18n-lib';
|
|
3
|
-
import { EciesStringKey } from '../enumerations/ecies-string-key';
|
|
4
|
-
import { EciesComponentId } from '../i18n-setup';
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* Error class for ID provider operations.
|
|
8
|
-
* Provides i18n support for errors during ID generation, validation, serialization, and deserialization.
|
|
9
|
-
*/
|
|
10
|
-
export class IdProviderError extends TypedHandleableError<typeof IdProviderErrorType, EciesStringKey> {
|
|
11
|
-
/**
|
|
12
|
-
* Reason map cache to avoid rebuilding on every error instantiation.
|
|
13
|
-
*/
|
|
14
|
-
private static readonly REASON_MAP = buildReasonMap<typeof IdProviderErrorType, EciesStringKey>(
|
|
15
|
-
IdProviderErrorType,
|
|
16
|
-
['Error', 'IdProviderError']
|
|
17
|
-
);
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* Creates a new IdProviderError instance.
|
|
21
|
-
*
|
|
22
|
-
* @param type - The type of ID provider error that occurred.
|
|
23
|
-
* @param options - Optional error handling options.
|
|
24
|
-
* @param language - Optional language code for error message localization.
|
|
25
|
-
* @param templateParams - Optional parameters for error message templates.
|
|
26
|
-
*/
|
|
27
|
-
constructor(
|
|
28
|
-
type: IdProviderErrorType,
|
|
29
|
-
options?: HandleableErrorOptions,
|
|
30
|
-
language?: string,
|
|
31
|
-
templateParams?: Record<string, string | number>
|
|
32
|
-
) {
|
|
33
|
-
const source = options?.cause instanceof Error ? options.cause : new Error();
|
|
34
|
-
super(EciesComponentId, type, IdProviderError.REASON_MAP, source, options, language, templateParams);
|
|
35
|
-
this.name = 'IdProviderError';
|
|
36
|
-
|
|
37
|
-
// Maintains proper prototype chain for instanceof checks
|
|
38
|
-
Object.setPrototypeOf(this, IdProviderError.prototype);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { InvalidEmailErrorType } from '../enumerations/invalid-email-type';
|
|
2
|
-
import { buildReasonMap, HandleableErrorOptions, TypedHandleableError } from '@digitaldefiance/i18n-lib';
|
|
3
|
-
import { EciesStringKey } from '../enumerations/ecies-string-key';
|
|
4
|
-
import { EciesComponentId } from '../i18n-setup';
|
|
5
|
-
|
|
6
|
-
export class InvalidEmailError extends TypedHandleableError<typeof InvalidEmailErrorType, EciesStringKey> {
|
|
7
|
-
public readonly email?: string;
|
|
8
|
-
constructor(type: InvalidEmailErrorType, email?: string, options?: HandleableErrorOptions, language?: string) {
|
|
9
|
-
const source = options?.cause instanceof Error ? options.cause : new Error();
|
|
10
|
-
super(
|
|
11
|
-
EciesComponentId,
|
|
12
|
-
type,
|
|
13
|
-
buildReasonMap<typeof InvalidEmailErrorType, EciesStringKey>(InvalidEmailErrorType, ['Error', 'InvalidEmailError']),
|
|
14
|
-
source,
|
|
15
|
-
{ statusCode: 422, ...options },
|
|
16
|
-
language, {
|
|
17
|
-
email: email ?? ''
|
|
18
|
-
}
|
|
19
|
-
);
|
|
20
|
-
this.email = email;
|
|
21
|
-
this.name = 'InvalidEmailError';
|
|
22
|
-
}
|
|
23
|
-
}
|
package/src/errors/length.ts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { LengthErrorType } from '../enumerations/length-error-type';
|
|
2
|
-
import { buildReasonMap, HandleableErrorOptions, TypedHandleableError } from '@digitaldefiance/i18n-lib';
|
|
3
|
-
import { EciesStringKey } from '../enumerations/ecies-string-key';
|
|
4
|
-
import { EciesComponentId } from '../i18n-setup';
|
|
5
|
-
|
|
6
|
-
export class LengthError extends TypedHandleableError<typeof LengthErrorType, EciesStringKey> {
|
|
7
|
-
constructor(type: LengthErrorType, options?: HandleableErrorOptions, language?: string) {
|
|
8
|
-
const source = options?.cause instanceof Error ? options.cause : new Error();
|
|
9
|
-
super(
|
|
10
|
-
EciesComponentId,
|
|
11
|
-
type,
|
|
12
|
-
buildReasonMap<typeof LengthErrorType, EciesStringKey>(LengthErrorType, ['Error', 'LengthError']),
|
|
13
|
-
source,
|
|
14
|
-
options,
|
|
15
|
-
language
|
|
16
|
-
);
|
|
17
|
-
this.name = 'LengthError';
|
|
18
|
-
}
|
|
19
|
-
}
|
package/src/errors/member.ts
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { MemberErrorType } from '../enumerations/member-error-type';
|
|
2
|
-
import { buildReasonMap, HandleableErrorOptions, TypedHandleableError } from '@digitaldefiance/i18n-lib';
|
|
3
|
-
import { EciesStringKey } from '../enumerations/ecies-string-key';
|
|
4
|
-
import { EciesComponentId } from '../i18n-setup';
|
|
5
|
-
|
|
6
|
-
export class MemberError extends TypedHandleableError<typeof MemberErrorType, EciesStringKey> {
|
|
7
|
-
|
|
8
|
-
constructor(type: MemberErrorType, options?: HandleableErrorOptions, language?: string) {
|
|
9
|
-
const source = options?.cause instanceof Error ? options.cause : new Error();
|
|
10
|
-
super(
|
|
11
|
-
EciesComponentId,
|
|
12
|
-
type,
|
|
13
|
-
buildReasonMap<typeof MemberErrorType, EciesStringKey>(MemberErrorType, ['Error', 'MemberError']),
|
|
14
|
-
source,
|
|
15
|
-
options,
|
|
16
|
-
language
|
|
17
|
-
);
|
|
18
|
-
this.name = 'MemberError';
|
|
19
|
-
}
|
|
20
|
-
}
|
package/src/errors/pbkdf2.ts
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { Pbkdf2ErrorType } from '../enumerations/pbkdf2-error-type';
|
|
2
|
-
import { buildReasonMap, HandleableErrorOptions, TypedHandleableError } from '@digitaldefiance/i18n-lib';
|
|
3
|
-
import { EciesStringKey } from '../enumerations/ecies-string-key';
|
|
4
|
-
import { EciesComponentId } from '../i18n-setup';
|
|
5
|
-
|
|
6
|
-
export class Pbkdf2Error extends TypedHandleableError<typeof Pbkdf2ErrorType, EciesStringKey> {
|
|
7
|
-
|
|
8
|
-
constructor(type: Pbkdf2ErrorType, options?: HandleableErrorOptions, language?: string) {
|
|
9
|
-
const source = options?.cause instanceof Error ? options.cause : new Error();
|
|
10
|
-
super(
|
|
11
|
-
EciesComponentId,
|
|
12
|
-
type,
|
|
13
|
-
buildReasonMap<typeof Pbkdf2ErrorType, EciesStringKey>(Pbkdf2ErrorType, ['Error', 'Pbkdf2Error']),
|
|
14
|
-
source,
|
|
15
|
-
options,
|
|
16
|
-
language
|
|
17
|
-
);
|
|
18
|
-
this.name = 'Pbkdf2Error';
|
|
19
|
-
}
|
|
20
|
-
}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { SecureStorageErrorType } from '../enumerations/secure-storage-error-type';
|
|
2
|
-
import { buildReasonMap, HandleableErrorOptions, TypedHandleableError } from '@digitaldefiance/i18n-lib';
|
|
3
|
-
import { EciesStringKey } from '../enumerations/ecies-string-key';
|
|
4
|
-
import { EciesComponentId } from '../i18n-setup';
|
|
5
|
-
|
|
6
|
-
export class SecureStorageError extends TypedHandleableError<typeof SecureStorageErrorType, EciesStringKey> {
|
|
7
|
-
constructor(type: SecureStorageErrorType, options?: HandleableErrorOptions, language?: string) {
|
|
8
|
-
const source = options?.cause instanceof Error ? options.cause : new Error();
|
|
9
|
-
const reasonMap = buildReasonMap<typeof SecureStorageErrorType, EciesStringKey>(
|
|
10
|
-
SecureStorageErrorType,
|
|
11
|
-
['Error', 'SecureStorageError']
|
|
12
|
-
);
|
|
13
|
-
|
|
14
|
-
super(EciesComponentId, type, reasonMap, source, options, language);
|
|
15
|
-
this.name = 'SecureStorageError';
|
|
16
|
-
}
|
|
17
|
-
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { buildReasonMap, HandleableErrorOptions, TypedHandleableError } from '@digitaldefiance/i18n-lib';
|
|
2
|
-
import { ECIESErrorTypeEnum, EciesStringKey } from '../enumerations';
|
|
3
|
-
import { EciesComponentId } from '../i18n-setup';
|
|
4
|
-
|
|
5
|
-
export class SimpleECIESError extends TypedHandleableError<typeof ECIESErrorTypeEnum, EciesStringKey> {
|
|
6
|
-
constructor(
|
|
7
|
-
type: ECIESErrorTypeEnum,
|
|
8
|
-
options?: HandleableErrorOptions,
|
|
9
|
-
language?: string,
|
|
10
|
-
otherVars?: Record<string, string | number>
|
|
11
|
-
) {
|
|
12
|
-
const source = options?.cause instanceof Error ? options.cause : new Error();
|
|
13
|
-
const reasonMap = buildReasonMap<typeof ECIESErrorTypeEnum, EciesStringKey>(
|
|
14
|
-
ECIESErrorTypeEnum,
|
|
15
|
-
['Error', 'ECIESError']
|
|
16
|
-
);
|
|
17
|
-
|
|
18
|
-
super(EciesComponentId, type, reasonMap, source, options, language, otherVars);
|
|
19
|
-
this.name = 'SimpleECIESError';
|
|
20
|
-
}
|
|
21
|
-
}
|
package/src/i18n-setup.ts
DELETED
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* ECIES i18n Setup - v2.0 Architecture
|
|
3
|
-
* Uses i18n-lib 2.0 patterns with runtime validation
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
import {
|
|
7
|
-
I18nEngine,
|
|
8
|
-
LanguageCodes,
|
|
9
|
-
createDefaultLanguages,
|
|
10
|
-
createCoreComponentRegistration,
|
|
11
|
-
} from '@digitaldefiance/i18n-lib';
|
|
12
|
-
import type { ComponentConfig, EngineConfig } from '@digitaldefiance/i18n-lib';
|
|
13
|
-
import { EciesStringKey } from './enumerations/ecies-string-key';
|
|
14
|
-
import { englishTranslations } from './translations/en-US';
|
|
15
|
-
import { frenchTranslations } from './translations/fr';
|
|
16
|
-
import { spanishTranslations } from './translations/es';
|
|
17
|
-
import { germanTranslations } from './translations/de';
|
|
18
|
-
import { mandarinChineseTranslations } from './translations/zh-cn';
|
|
19
|
-
import { japaneseTranslations } from './translations/ja';
|
|
20
|
-
import { ukrainianTranslations } from './translations/uk';
|
|
21
|
-
|
|
22
|
-
export const EciesI18nEngineKey = 'DigitalDefiance.Ecies.I18nEngine' as const;
|
|
23
|
-
export const EciesComponentId = 'ecies' as const;
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* Create ECIES component configuration with all translations
|
|
27
|
-
* Note: Includes all 8 supported languages
|
|
28
|
-
*/
|
|
29
|
-
export function createEciesComponentConfig(): ComponentConfig {
|
|
30
|
-
return {
|
|
31
|
-
id: EciesComponentId,
|
|
32
|
-
strings: {
|
|
33
|
-
[LanguageCodes.EN_US]: englishTranslations,
|
|
34
|
-
[LanguageCodes.EN_GB]: englishTranslations,
|
|
35
|
-
[LanguageCodes.FR]: frenchTranslations,
|
|
36
|
-
[LanguageCodes.ES]: spanishTranslations,
|
|
37
|
-
[LanguageCodes.DE]: germanTranslations,
|
|
38
|
-
[LanguageCodes.ZH_CN]: mandarinChineseTranslations,
|
|
39
|
-
[LanguageCodes.JA]: japaneseTranslations,
|
|
40
|
-
[LanguageCodes.UK]: ukrainianTranslations,
|
|
41
|
-
},
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
/**
|
|
46
|
-
* Create ECIES i18n engine instance
|
|
47
|
-
* Uses i18n 2.0 pattern with runtime validation
|
|
48
|
-
* IMPORTANT: Uses 'default' as instance key so TypedHandleableError can find it
|
|
49
|
-
*/
|
|
50
|
-
function createInstance(config?: EngineConfig): I18nEngine {
|
|
51
|
-
const engine = I18nEngine.registerIfNotExists('default', createDefaultLanguages(), config);
|
|
52
|
-
|
|
53
|
-
// Register core component first (required for error messages)
|
|
54
|
-
const coreReg = createCoreComponentRegistration();
|
|
55
|
-
engine.registerIfNotExists({
|
|
56
|
-
id: coreReg.component.id,
|
|
57
|
-
strings: coreReg.strings as Record<string, Record<string, string>>,
|
|
58
|
-
});
|
|
59
|
-
|
|
60
|
-
// Register ECIES component with aliases
|
|
61
|
-
const eciesConfig = createEciesComponentConfig();
|
|
62
|
-
const result = engine.registerIfNotExists({
|
|
63
|
-
...eciesConfig,
|
|
64
|
-
aliases: ['EciesStringKey']
|
|
65
|
-
});
|
|
66
|
-
|
|
67
|
-
// Warn about missing translations (non-blocking)
|
|
68
|
-
if (!result.isValid && result.errors.length > 0) {
|
|
69
|
-
console.warn(
|
|
70
|
-
`ECIES component has ${result.errors.length} errors`,
|
|
71
|
-
result.errors.slice(0, 5) // Show first 5
|
|
72
|
-
);
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
return engine;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
/**
|
|
79
|
-
* Lazy initialization with Proxy (like core-i18n.ts pattern)
|
|
80
|
-
*/
|
|
81
|
-
let _eciesEngine: I18nEngine | undefined;
|
|
82
|
-
|
|
83
|
-
export function getEciesI18nEngine(config?: EngineConfig): I18nEngine {
|
|
84
|
-
if (!_eciesEngine || !I18nEngine.hasInstance('default')) {
|
|
85
|
-
_eciesEngine = createInstance(config);
|
|
86
|
-
}
|
|
87
|
-
return _eciesEngine;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
/**
|
|
91
|
-
* Proxy for backward compatibility
|
|
92
|
-
*/
|
|
93
|
-
export const eciesI18nEngine = new Proxy({} as I18nEngine, {
|
|
94
|
-
get(target, prop) {
|
|
95
|
-
return getEciesI18nEngine()[prop as keyof I18nEngine];
|
|
96
|
-
}
|
|
97
|
-
});
|
|
98
|
-
|
|
99
|
-
/**
|
|
100
|
-
* Reset function for tests
|
|
101
|
-
*/
|
|
102
|
-
export function resetEciesI18nEngine(): void {
|
|
103
|
-
_eciesEngine = undefined;
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
/**
|
|
107
|
-
* Helper to translate ECIES strings
|
|
108
|
-
*/
|
|
109
|
-
export function getEciesTranslation(
|
|
110
|
-
stringKey: EciesStringKey,
|
|
111
|
-
variables?: Record<string, string | number>,
|
|
112
|
-
language?: string,
|
|
113
|
-
): string {
|
|
114
|
-
return getEciesI18nEngine().translate(EciesComponentId, stringKey, variables, language);
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
/**
|
|
118
|
-
* Safe translation with fallback
|
|
119
|
-
*/
|
|
120
|
-
export function safeEciesTranslation(
|
|
121
|
-
stringKey: EciesStringKey,
|
|
122
|
-
variables?: Record<string, string | number>,
|
|
123
|
-
language?: string,
|
|
124
|
-
): string {
|
|
125
|
-
try {
|
|
126
|
-
return getEciesTranslation(stringKey, variables, language);
|
|
127
|
-
} catch {
|
|
128
|
-
return `[${stringKey}]`;
|
|
129
|
-
}
|
|
130
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export interface IChecksumConsts {
|
|
2
|
-
/** Default hash bits for SHA3 */
|
|
3
|
-
SHA3_DEFAULT_HASH_BITS: number;
|
|
4
|
-
|
|
5
|
-
/** Length of a SHA3 checksum buffer in bytes */
|
|
6
|
-
SHA3_BUFFER_LENGTH: number;
|
|
7
|
-
|
|
8
|
-
/** Algorithm name for checksums */
|
|
9
|
-
ALGORITHM: string;
|
|
10
|
-
|
|
11
|
-
/** Encoding for checksums */
|
|
12
|
-
ENCODING: 'hex' | 'base64';
|
|
13
|
-
}
|