@digitaldefiance/node-express-suite 3.7.3 → 3.7.5
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/package.json +4 -5
- package/src/__tests__/fixtures/{index.d.ts → index.ts} +0 -1
- package/src/__tests__/fixtures/model-mocks.mock.ts +164 -0
- package/src/__tests__/helpers/application.mock.ts +89 -0
- package/src/__tests__/helpers/{index.d.ts → index.ts} +0 -1
- package/src/__tests__/helpers/setup-test-env.ts +202 -0
- package/src/__tests__/{index.d.ts → index.ts} +0 -1
- package/src/application-base.ts +548 -0
- package/src/application-concrete.ts +62 -0
- package/src/application.ts +330 -0
- package/src/backup-code.ts +348 -0
- package/src/builders/application-builder.ts +147 -0
- package/src/builders/{index.d.ts → index.ts} +0 -1
- package/src/constants.ts +89 -0
- package/src/container/{index.d.ts → index.ts} +0 -1
- package/src/container/service-container.ts +85 -0
- package/src/container/service-definitions.ts +23 -0
- package/src/controllers/base.ts +512 -0
- package/src/controllers/{index.d.ts → index.ts} +0 -1
- package/src/controllers/user.ts +1734 -0
- package/src/database/database-initializer.ts +13 -0
- package/src/database/{index.d.ts → index.ts} +0 -1
- package/src/decorators/base-controller.ts +91 -0
- package/src/decorators/controller.ts +152 -0
- package/src/decorators/{index.d.ts → index.ts} +0 -1
- package/src/decorators/zod-validation.ts +64 -0
- package/src/defaults.ts +259 -0
- package/src/documents/base.ts +17 -0
- package/src/documents/email-token.ts +20 -0
- package/src/documents/{index.d.ts → index.ts} +0 -1
- package/src/documents/mnemonic.ts +20 -0
- package/src/documents/role.ts +19 -0
- package/src/documents/used-direct-login-token.ts +18 -0
- package/src/documents/user-role.ts +20 -0
- package/src/documents/user.ts +20 -0
- package/src/enumerations/base-model-name.ts +47 -0
- package/src/enumerations/{index.d.ts → index.ts} +0 -1
- package/src/enumerations/length-encoding-type.ts +16 -0
- package/src/enumerations/schema-collection.ts +39 -0
- package/src/enumerations/symmetric-error-type.ts +13 -0
- package/src/environment.ts +859 -0
- package/src/errors/express-validation.ts +38 -0
- package/src/errors/{index.d.ts → index.ts} +0 -1
- package/src/errors/invalid-backup-code-version.ts +30 -0
- package/src/errors/invalid-jwt-token.ts +24 -0
- package/src/errors/invalid-model.ts +24 -0
- package/src/errors/invalid-new-password.ts +33 -0
- package/src/errors/invalid-password.ts +28 -0
- package/src/errors/missing-validated-data.ts +55 -0
- package/src/errors/mnemonic-or-password-required.ts +26 -0
- package/src/errors/model-not-registered.ts +24 -0
- package/src/errors/mongoose-validation.ts +56 -0
- package/src/errors/symmetric.ts +53 -0
- package/src/errors/token-expired.ts +24 -0
- package/src/get-language.ts +64 -0
- package/src/get-timezone.ts +76 -0
- package/src/{index.d.ts → index.ts} +44 -2
- package/src/interfaces/api-error-response.ts +15 -0
- package/src/interfaces/api-express-validation-error-response.ts +17 -0
- package/src/interfaces/api-message-response.ts +12 -0
- package/src/interfaces/api-mongo-validation-error-response.ts +17 -0
- package/src/interfaces/api-responses/backup-codes-response.ts +15 -0
- package/src/interfaces/api-responses/challenge-response.ts +17 -0
- package/src/interfaces/api-responses/code-count-response.ts +12 -0
- package/src/interfaces/api-responses/{index.d.ts → index.ts} +0 -1
- package/src/interfaces/api-responses/login-response.ts +18 -0
- package/src/interfaces/api-responses/mnemonic-response.ts +15 -0
- package/src/interfaces/api-responses/registration-response.ts +17 -0
- package/src/interfaces/api-responses/request-user-response.ts +16 -0
- package/src/interfaces/api-responses/user-settings-response.ts +19 -0
- package/src/interfaces/application.ts +40 -0
- package/src/interfaces/backend-objects/email-token.ts +18 -0
- package/src/interfaces/backend-objects/{index.d.ts → index.ts} +0 -1
- package/src/interfaces/backend-objects/request-user.ts +19 -0
- package/src/interfaces/backend-objects/role.ts +18 -0
- package/src/interfaces/backend-objects/user.ts +18 -0
- package/src/interfaces/checksum-config.ts +15 -0
- package/src/interfaces/checksum-consts.ts +23 -0
- package/src/interfaces/constants.ts +114 -0
- package/src/interfaces/controller-config.ts +54 -0
- package/src/interfaces/create-user-basics.ts +24 -0
- package/src/interfaces/csp-config.ts +32 -0
- package/src/interfaces/csp-definition.ts +71 -0
- package/src/interfaces/db-init-result.ts +17 -0
- package/src/interfaces/deep-partial.ts +14 -0
- package/src/interfaces/discriminator-collections.ts +21 -0
- package/src/interfaces/email-service.ts +26 -0
- package/src/interfaces/environment-mongo.ts +86 -0
- package/src/interfaces/environment.ts +191 -0
- package/src/interfaces/failable-result.ts +20 -0
- package/src/interfaces/fec-consts.ts +14 -0
- package/src/interfaces/flexible-csp.ts +35 -0
- package/src/interfaces/handleable-error-options.ts +19 -0
- package/src/interfaces/{index.d.ts → index.ts} +0 -1
- package/src/interfaces/jwt-consts.ts +33 -0
- package/src/interfaces/jwt-sign-response.ts +31 -0
- package/src/interfaces/models/email-token.ts +13 -0
- package/src/interfaces/models/{index.d.ts → index.ts} +0 -1
- package/src/interfaces/models/mnemonic.ts +14 -0
- package/src/interfaces/models/role.ts +13 -0
- package/src/interfaces/models/token-role.ts +23 -0
- package/src/interfaces/models/used-direct-login-token.ts +21 -0
- package/src/interfaces/models/user-role.ts +23 -0
- package/src/interfaces/models/user.ts +30 -0
- package/src/interfaces/mongo-errors.ts +14 -0
- package/src/interfaces/request-user.ts +80 -0
- package/src/interfaces/required-string-keys.ts +33 -0
- package/src/interfaces/schema.ts +43 -0
- package/src/interfaces/server-init-result.ts +48 -0
- package/src/interfaces/status-code-response.ts +20 -0
- package/src/interfaces/symmetric-encryption-results.d.ts.map +1 -1
- package/src/interfaces/symmetric-encryption-results.js.map +1 -1
- package/src/interfaces/symmetric-encryption-results.ts +15 -0
- package/src/interfaces/test-environment.ts +23 -0
- package/src/interfaces/token-response.ts +16 -0
- package/src/middleware-utils.ts +138 -0
- package/src/middlewares/authenticate-crypto.ts +237 -0
- package/src/middlewares/authenticate-token.ts +165 -0
- package/src/middlewares/cleanup-crypto.ts +47 -0
- package/src/middlewares/{index.d.ts → index.ts} +0 -1
- package/src/middlewares/set-global-context-language.ts +38 -0
- package/src/model-registry.ts +142 -0
- package/src/models/email-token.ts +49 -0
- package/src/models/{index.d.ts → index.ts} +0 -1
- package/src/models/mnemonic.ts +42 -0
- package/src/models/role.ts +38 -0
- package/src/models/used-direct-login-token.ts +49 -0
- package/src/models/user-role.ts +40 -0
- package/src/models/user.ts +42 -0
- package/src/pipeline/{index.d.ts → index.ts} +0 -1
- package/src/pipeline/pipeline-builder.ts +27 -0
- package/src/plugins/{index.d.ts → index.ts} +0 -1
- package/src/plugins/plugin-interface.ts +19 -0
- package/src/plugins/plugin-manager.ts +53 -0
- package/src/registry/email-service-registry.ts +76 -0
- package/src/registry/{index.d.ts → index.ts} +0 -1
- package/src/responses/{index.d.ts → index.ts} +0 -1
- package/src/responses/response-builder.ts +166 -0
- package/src/routers/api.ts +233 -0
- package/src/routers/app.ts +395 -0
- package/src/routers/base.ts +34 -0
- package/src/routers/{index.d.ts → index.ts} +0 -1
- package/src/routers/router-config.ts +34 -0
- package/src/routing/index.ts +1 -0
- package/src/routing/route-builder.ts +214 -0
- package/src/schemas/email-token.ts +112 -0
- package/src/schemas/{index.d.ts → index.ts} +0 -1
- package/src/schemas/mnemonic.ts +48 -0
- package/src/schemas/role.ts +153 -0
- package/src/schemas/schema.ts +185 -0
- package/src/schemas/used-direct-login-token.ts +58 -0
- package/src/schemas/user-role.ts +93 -0
- package/src/schemas/user.ts +244 -0
- package/src/services/backup-code.ts +327 -0
- package/src/services/base.ts +46 -0
- package/src/services/checksum.ts +189 -0
- package/src/services/database-initialization.ts +1653 -0
- package/src/services/db-init-cache.ts +28 -0
- package/src/services/direct-login-token.ts +83 -0
- package/src/services/dummy-email-service.ts +43 -0
- package/src/services/fec-usage-example.ts +123 -0
- package/src/services/fec.ts +399 -0
- package/src/services/{index.d.ts → index.ts} +0 -2
- package/src/services/jwt.ts +146 -0
- package/src/services/key-wrapping.ts +528 -0
- package/src/services/mnemonic.ts +174 -0
- package/src/services/request-user.ts +127 -0
- package/src/services/role.ts +417 -0
- package/src/services/symmetric.ts +164 -0
- package/src/services/system-user.ts +87 -0
- package/src/services/user.ts +2324 -0
- package/src/services/xor.ts +39 -0
- package/src/testing.ts +9 -0
- package/src/transactions/{index.d.ts → index.ts} +0 -1
- package/src/transactions/transaction-manager.ts +63 -0
- package/src/types/app-config.ts +36 -0
- package/src/types/controller-config.ts +28 -0
- package/src/types/{environment-variables.d.ts → environment-variables.ts} +32 -5
- package/src/types/{index.d.ts → index.ts} +0 -1
- package/src/types/{mongoose-helpers.d.ts → mongoose-helpers.ts} +8 -2
- package/src/types/mongoose-override.d.ts +1 -0
- package/src/types/mongoose.d.ts +1 -0
- package/src/types.ts +189 -0
- package/src/utils.ts +1116 -0
- package/src/validation/{index.d.ts → index.ts} +0 -1
- package/src/validation/validation-builder.ts +155 -0
- package/src/__tests__/fixtures/index.d.ts.map +0 -1
- package/src/__tests__/fixtures/index.js +0 -5
- package/src/__tests__/fixtures/index.js.map +0 -1
- package/src/__tests__/fixtures/model-mocks.mock.d.ts +0 -12
- package/src/__tests__/fixtures/model-mocks.mock.d.ts.map +0 -1
- package/src/__tests__/fixtures/model-mocks.mock.js +0 -102
- package/src/__tests__/fixtures/model-mocks.mock.js.map +0 -1
- package/src/__tests__/helpers/application.mock.d.ts +0 -8
- package/src/__tests__/helpers/application.mock.d.ts.map +0 -1
- package/src/__tests__/helpers/application.mock.js +0 -77
- package/src/__tests__/helpers/application.mock.js.map +0 -1
- package/src/__tests__/helpers/index.d.ts.map +0 -1
- package/src/__tests__/helpers/index.js +0 -7
- package/src/__tests__/helpers/index.js.map +0 -1
- package/src/__tests__/helpers/setup-test-env.d.ts +0 -12
- package/src/__tests__/helpers/setup-test-env.d.ts.map +0 -1
- package/src/__tests__/helpers/setup-test-env.js +0 -121
- package/src/__tests__/helpers/setup-test-env.js.map +0 -1
- package/src/__tests__/index.d.ts.map +0 -1
- package/src/__tests__/index.js +0 -6
- package/src/__tests__/index.js.map +0 -1
- package/src/application-base.d.ts +0 -123
- package/src/application-base.d.ts.map +0 -1
- package/src/application-base.js +0 -359
- package/src/application-base.js.map +0 -1
- package/src/application-concrete.d.ts +0 -13
- package/src/application-concrete.d.ts.map +0 -1
- package/src/application-concrete.js +0 -21
- package/src/application-concrete.js.map +0 -1
- package/src/application.d.ts +0 -29
- package/src/application.d.ts.map +0 -1
- package/src/application.js +0 -167
- package/src/application.js.map +0 -1
- package/src/backup-code.d.ts +0 -67
- package/src/backup-code.d.ts.map +0 -1
- package/src/backup-code.js +0 -238
- package/src/backup-code.js.map +0 -1
- package/src/builders/application-builder.d.ts +0 -35
- package/src/builders/application-builder.d.ts.map +0 -1
- package/src/builders/application-builder.js +0 -64
- package/src/builders/application-builder.js.map +0 -1
- package/src/builders/index.d.ts.map +0 -1
- package/src/builders/index.js +0 -5
- package/src/builders/index.js.map +0 -1
- package/src/constants.d.ts +0 -16
- package/src/constants.d.ts.map +0 -1
- package/src/constants.js +0 -58
- package/src/constants.js.map +0 -1
- package/src/container/index.d.ts.map +0 -1
- package/src/container/index.js +0 -6
- package/src/container/index.js.map +0 -1
- package/src/container/service-container.d.ts +0 -11
- package/src/container/service-container.d.ts.map +0 -1
- package/src/container/service-container.js +0 -38
- package/src/container/service-container.js.map +0 -1
- package/src/container/service-definitions.d.ts +0 -11
- package/src/container/service-definitions.d.ts.map +0 -1
- package/src/container/service-definitions.js +0 -13
- package/src/container/service-definitions.js.map +0 -1
- package/src/controllers/base.d.ts +0 -67
- package/src/controllers/base.d.ts.map +0 -1
- package/src/controllers/base.js +0 -305
- package/src/controllers/base.js.map +0 -1
- package/src/controllers/index.d.ts.map +0 -1
- package/src/controllers/index.js +0 -6
- package/src/controllers/index.js.map +0 -1
- package/src/controllers/user.d.ts +0 -49
- package/src/controllers/user.d.ts.map +0 -1
- package/src/controllers/user.js +0 -919
- package/src/controllers/user.js.map +0 -1
- package/src/database/database-initializer.d.ts +0 -7
- package/src/database/database-initializer.d.ts.map +0 -1
- package/src/database/database-initializer.js +0 -3
- package/src/database/database-initializer.js.map +0 -1
- package/src/database/index.d.ts.map +0 -1
- package/src/database/index.js +0 -5
- package/src/database/index.js.map +0 -1
- package/src/decorators/base-controller.d.ts +0 -11
- package/src/decorators/base-controller.d.ts.map +0 -1
- package/src/decorators/base-controller.js +0 -60
- package/src/decorators/base-controller.js.map +0 -1
- package/src/decorators/controller.d.ts +0 -38
- package/src/decorators/controller.d.ts.map +0 -1
- package/src/decorators/controller.js +0 -68
- package/src/decorators/controller.js.map +0 -1
- package/src/decorators/index.d.ts.map +0 -1
- package/src/decorators/index.js +0 -7
- package/src/decorators/index.js.map +0 -1
- package/src/decorators/zod-validation.d.ts +0 -5
- package/src/decorators/zod-validation.d.ts.map +0 -1
- package/src/decorators/zod-validation.js +0 -48
- package/src/decorators/zod-validation.js.map +0 -1
- package/src/defaults.d.ts +0 -7
- package/src/defaults.d.ts.map +0 -1
- package/src/defaults.js +0 -205
- package/src/defaults.js.map +0 -1
- package/src/documents/base.d.ts +0 -4
- package/src/documents/base.d.ts.map +0 -1
- package/src/documents/base.js +0 -3
- package/src/documents/base.js.map +0 -1
- package/src/documents/email-token.d.ts +0 -8
- package/src/documents/email-token.d.ts.map +0 -1
- package/src/documents/email-token.js +0 -3
- package/src/documents/email-token.js.map +0 -1
- package/src/documents/index.d.ts.map +0 -1
- package/src/documents/index.js +0 -3
- package/src/documents/index.js.map +0 -1
- package/src/documents/mnemonic.d.ts +0 -8
- package/src/documents/mnemonic.d.ts.map +0 -1
- package/src/documents/mnemonic.js +0 -3
- package/src/documents/mnemonic.js.map +0 -1
- package/src/documents/role.d.ts +0 -8
- package/src/documents/role.d.ts.map +0 -1
- package/src/documents/role.js +0 -3
- package/src/documents/role.js.map +0 -1
- package/src/documents/used-direct-login-token.d.ts +0 -5
- package/src/documents/used-direct-login-token.d.ts.map +0 -1
- package/src/documents/used-direct-login-token.js +0 -3
- package/src/documents/used-direct-login-token.js.map +0 -1
- package/src/documents/user-role.d.ts +0 -8
- package/src/documents/user-role.d.ts.map +0 -1
- package/src/documents/user-role.js +0 -3
- package/src/documents/user-role.js.map +0 -1
- package/src/documents/user.d.ts +0 -8
- package/src/documents/user.d.ts.map +0 -1
- package/src/documents/user.js +0 -3
- package/src/documents/user.js.map +0 -1
- package/src/enumerations/base-model-name.d.ts +0 -38
- package/src/enumerations/base-model-name.d.ts.map +0 -1
- package/src/enumerations/base-model-name.js +0 -34
- package/src/enumerations/base-model-name.js.map +0 -1
- package/src/enumerations/index.d.ts.map +0 -1
- package/src/enumerations/index.js +0 -8
- package/src/enumerations/index.js.map +0 -1
- package/src/enumerations/length-encoding-type.d.ts +0 -7
- package/src/enumerations/length-encoding-type.d.ts.map +0 -1
- package/src/enumerations/length-encoding-type.js +0 -11
- package/src/enumerations/length-encoding-type.js.map +0 -1
- package/src/enumerations/schema-collection.d.ts +0 -34
- package/src/enumerations/schema-collection.d.ts.map +0 -1
- package/src/enumerations/schema-collection.js +0 -38
- package/src/enumerations/schema-collection.js.map +0 -1
- package/src/enumerations/symmetric-error-type.d.ts +0 -5
- package/src/enumerations/symmetric-error-type.d.ts.map +0 -1
- package/src/enumerations/symmetric-error-type.js +0 -9
- package/src/enumerations/symmetric-error-type.js.map +0 -1
- package/src/environment.d.ts +0 -189
- package/src/environment.d.ts.map +0 -1
- package/src/environment.js +0 -641
- package/src/environment.js.map +0 -1
- package/src/errors/express-validation.d.ts +0 -9
- package/src/errors/express-validation.d.ts.map +0 -1
- package/src/errors/express-validation.js +0 -18
- package/src/errors/express-validation.js.map +0 -1
- package/src/errors/index.d.ts.map +0 -1
- package/src/errors/index.js +0 -16
- package/src/errors/index.js.map +0 -1
- package/src/errors/invalid-backup-code-version.d.ts +0 -6
- package/src/errors/invalid-backup-code-version.d.ts.map +0 -1
- package/src/errors/invalid-backup-code-version.js +0 -16
- package/src/errors/invalid-backup-code-version.js.map +0 -1
- package/src/errors/invalid-jwt-token.d.ts +0 -5
- package/src/errors/invalid-jwt-token.d.ts.map +0 -1
- package/src/errors/invalid-jwt-token.js +0 -12
- package/src/errors/invalid-jwt-token.js.map +0 -1
- package/src/errors/invalid-model.d.ts +0 -6
- package/src/errors/invalid-model.d.ts.map +0 -1
- package/src/errors/invalid-model.js +0 -14
- package/src/errors/invalid-model.js.map +0 -1
- package/src/errors/invalid-new-password.d.ts +0 -5
- package/src/errors/invalid-new-password.d.ts.map +0 -1
- package/src/errors/invalid-new-password.js +0 -14
- package/src/errors/invalid-new-password.js.map +0 -1
- package/src/errors/invalid-password.d.ts +0 -5
- package/src/errors/invalid-password.d.ts.map +0 -1
- package/src/errors/invalid-password.js +0 -14
- package/src/errors/invalid-password.js.map +0 -1
- package/src/errors/missing-validated-data.d.ts +0 -7
- package/src/errors/missing-validated-data.d.ts.map +0 -1
- package/src/errors/missing-validated-data.js +0 -36
- package/src/errors/missing-validated-data.js.map +0 -1
- package/src/errors/mnemonic-or-password-required.d.ts +0 -5
- package/src/errors/mnemonic-or-password-required.d.ts.map +0 -1
- package/src/errors/mnemonic-or-password-required.js +0 -14
- package/src/errors/mnemonic-or-password-required.js.map +0 -1
- package/src/errors/model-not-registered.d.ts +0 -6
- package/src/errors/model-not-registered.d.ts.map +0 -1
- package/src/errors/model-not-registered.js +0 -14
- package/src/errors/model-not-registered.js.map +0 -1
- package/src/errors/mongoose-validation.d.ts +0 -12
- package/src/errors/mongoose-validation.d.ts.map +0 -1
- package/src/errors/mongoose-validation.js +0 -17
- package/src/errors/mongoose-validation.js.map +0 -1
- package/src/errors/symmetric.d.ts +0 -8
- package/src/errors/symmetric.d.ts.map +0 -1
- package/src/errors/symmetric.js +0 -22
- package/src/errors/symmetric.js.map +0 -1
- package/src/errors/token-expired.d.ts +0 -5
- package/src/errors/token-expired.d.ts.map +0 -1
- package/src/errors/token-expired.js +0 -12
- package/src/errors/token-expired.js.map +0 -1
- package/src/get-language.d.ts +0 -2
- package/src/get-language.d.ts.map +0 -1
- package/src/get-language.js +0 -30
- package/src/get-language.js.map +0 -1
- package/src/get-timezone.d.ts +0 -2
- package/src/get-timezone.d.ts.map +0 -1
- package/src/get-timezone.js +0 -39
- package/src/get-timezone.js.map +0 -1
- package/src/index.d.ts.map +0 -1
- package/src/index.js +0 -80
- package/src/index.js.map +0 -1
- package/src/interfaces/api-error-response.d.ts +0 -5
- package/src/interfaces/api-error-response.d.ts.map +0 -1
- package/src/interfaces/api-error-response.js +0 -3
- package/src/interfaces/api-error-response.js.map +0 -1
- package/src/interfaces/api-express-validation-error-response.d.ts +0 -7
- package/src/interfaces/api-express-validation-error-response.d.ts.map +0 -1
- package/src/interfaces/api-express-validation-error-response.js +0 -3
- package/src/interfaces/api-express-validation-error-response.js.map +0 -1
- package/src/interfaces/api-message-response.d.ts +0 -4
- package/src/interfaces/api-message-response.d.ts.map +0 -1
- package/src/interfaces/api-message-response.js +0 -3
- package/src/interfaces/api-message-response.js.map +0 -1
- package/src/interfaces/api-mongo-validation-error-response.d.ts +0 -6
- package/src/interfaces/api-mongo-validation-error-response.d.ts.map +0 -1
- package/src/interfaces/api-mongo-validation-error-response.js +0 -3
- package/src/interfaces/api-mongo-validation-error-response.js.map +0 -1
- package/src/interfaces/api-responses/backup-codes-response.d.ts +0 -5
- package/src/interfaces/api-responses/backup-codes-response.d.ts.map +0 -1
- package/src/interfaces/api-responses/backup-codes-response.js +0 -3
- package/src/interfaces/api-responses/backup-codes-response.js.map +0 -1
- package/src/interfaces/api-responses/challenge-response.d.ts +0 -6
- package/src/interfaces/api-responses/challenge-response.d.ts.map +0 -1
- package/src/interfaces/api-responses/challenge-response.js +0 -3
- package/src/interfaces/api-responses/challenge-response.js.map +0 -1
- package/src/interfaces/api-responses/code-count-response.d.ts +0 -5
- package/src/interfaces/api-responses/code-count-response.d.ts.map +0 -1
- package/src/interfaces/api-responses/code-count-response.js +0 -3
- package/src/interfaces/api-responses/code-count-response.js.map +0 -1
- package/src/interfaces/api-responses/index.d.ts.map +0 -1
- package/src/interfaces/api-responses/index.js +0 -12
- package/src/interfaces/api-responses/index.js.map +0 -1
- package/src/interfaces/api-responses/login-response.d.ts +0 -8
- package/src/interfaces/api-responses/login-response.d.ts.map +0 -1
- package/src/interfaces/api-responses/login-response.js +0 -3
- package/src/interfaces/api-responses/login-response.js.map +0 -1
- package/src/interfaces/api-responses/mnemonic-response.d.ts +0 -5
- package/src/interfaces/api-responses/mnemonic-response.d.ts.map +0 -1
- package/src/interfaces/api-responses/mnemonic-response.js +0 -3
- package/src/interfaces/api-responses/mnemonic-response.js.map +0 -1
- package/src/interfaces/api-responses/registration-response.d.ts +0 -6
- package/src/interfaces/api-responses/registration-response.d.ts.map +0 -1
- package/src/interfaces/api-responses/registration-response.js +0 -3
- package/src/interfaces/api-responses/registration-response.js.map +0 -1
- package/src/interfaces/api-responses/request-user-response.d.ts +0 -6
- package/src/interfaces/api-responses/request-user-response.d.ts.map +0 -1
- package/src/interfaces/api-responses/request-user-response.js +0 -3
- package/src/interfaces/api-responses/request-user-response.js.map +0 -1
- package/src/interfaces/api-responses/user-settings-response.d.ts +0 -12
- package/src/interfaces/api-responses/user-settings-response.d.ts.map +0 -1
- package/src/interfaces/api-responses/user-settings-response.js +0 -3
- package/src/interfaces/api-responses/user-settings-response.js.map +0 -1
- package/src/interfaces/application.d.ts +0 -17
- package/src/interfaces/application.d.ts.map +0 -1
- package/src/interfaces/application.js +0 -3
- package/src/interfaces/application.js.map +0 -1
- package/src/interfaces/backend-objects/email-token.d.ts +0 -4
- package/src/interfaces/backend-objects/email-token.d.ts.map +0 -1
- package/src/interfaces/backend-objects/email-token.js +0 -3
- package/src/interfaces/backend-objects/email-token.js.map +0 -1
- package/src/interfaces/backend-objects/index.d.ts.map +0 -1
- package/src/interfaces/backend-objects/index.js +0 -8
- package/src/interfaces/backend-objects/index.js.map +0 -1
- package/src/interfaces/backend-objects/request-user.d.ts +0 -5
- package/src/interfaces/backend-objects/request-user.d.ts.map +0 -1
- package/src/interfaces/backend-objects/request-user.js +0 -3
- package/src/interfaces/backend-objects/request-user.js.map +0 -1
- package/src/interfaces/backend-objects/role.d.ts +0 -4
- package/src/interfaces/backend-objects/role.d.ts.map +0 -1
- package/src/interfaces/backend-objects/role.js +0 -3
- package/src/interfaces/backend-objects/role.js.map +0 -1
- package/src/interfaces/backend-objects/user.d.ts +0 -4
- package/src/interfaces/backend-objects/user.d.ts.map +0 -1
- package/src/interfaces/backend-objects/user.js +0 -3
- package/src/interfaces/backend-objects/user.js.map +0 -1
- package/src/interfaces/checksum-config.d.ts +0 -5
- package/src/interfaces/checksum-config.d.ts.map +0 -1
- package/src/interfaces/checksum-config.js +0 -3
- package/src/interfaces/checksum-config.js.map +0 -1
- package/src/interfaces/checksum-consts.d.ts +0 -11
- package/src/interfaces/checksum-consts.d.ts.map +0 -1
- package/src/interfaces/checksum-consts.js +0 -3
- package/src/interfaces/checksum-consts.js.map +0 -1
- package/src/interfaces/constants.d.ts +0 -102
- 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/controller-config.d.ts +0 -21
- package/src/interfaces/controller-config.d.ts.map +0 -1
- package/src/interfaces/controller-config.js +0 -3
- package/src/interfaces/controller-config.js.map +0 -1
- package/src/interfaces/create-user-basics.d.ts +0 -18
- package/src/interfaces/create-user-basics.d.ts.map +0 -1
- package/src/interfaces/create-user-basics.js +0 -3
- package/src/interfaces/create-user-basics.js.map +0 -1
- package/src/interfaces/csp-config.d.ts +0 -7
- package/src/interfaces/csp-config.d.ts.map +0 -1
- package/src/interfaces/csp-config.js +0 -13
- package/src/interfaces/csp-config.js.map +0 -1
- package/src/interfaces/csp-definition.d.ts +0 -13
- package/src/interfaces/csp-definition.d.ts.map +0 -1
- package/src/interfaces/csp-definition.js +0 -22
- package/src/interfaces/csp-definition.js.map +0 -1
- package/src/interfaces/db-init-result.d.ts +0 -5
- package/src/interfaces/db-init-result.d.ts.map +0 -1
- package/src/interfaces/db-init-result.js +0 -3
- package/src/interfaces/db-init-result.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/discriminator-collections.d.ts +0 -7
- package/src/interfaces/discriminator-collections.d.ts.map +0 -1
- package/src/interfaces/discriminator-collections.js +0 -3
- package/src/interfaces/discriminator-collections.js.map +0 -1
- package/src/interfaces/email-service.d.ts +0 -4
- package/src/interfaces/email-service.d.ts.map +0 -1
- package/src/interfaces/email-service.js +0 -3
- package/src/interfaces/email-service.js.map +0 -1
- package/src/interfaces/environment-mongo.d.ts +0 -76
- package/src/interfaces/environment-mongo.d.ts.map +0 -1
- package/src/interfaces/environment-mongo.js +0 -3
- package/src/interfaces/environment-mongo.js.map +0 -1
- package/src/interfaces/environment.d.ts +0 -180
- package/src/interfaces/environment.d.ts.map +0 -1
- package/src/interfaces/environment.js +0 -3
- package/src/interfaces/environment.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/fec-consts.d.ts +0 -5
- package/src/interfaces/fec-consts.d.ts.map +0 -1
- package/src/interfaces/fec-consts.js +0 -3
- package/src/interfaces/fec-consts.js.map +0 -1
- package/src/interfaces/flexible-csp.d.ts +0 -8
- package/src/interfaces/flexible-csp.d.ts.map +0 -1
- package/src/interfaces/flexible-csp.js +0 -14
- package/src/interfaces/flexible-csp.js.map +0 -1
- package/src/interfaces/handleable-error-options.d.ts +0 -7
- package/src/interfaces/handleable-error-options.d.ts.map +0 -1
- package/src/interfaces/handleable-error-options.js +0 -3
- package/src/interfaces/handleable-error-options.js.map +0 -1
- package/src/interfaces/index.d.ts.map +0 -1
- package/src/interfaces/index.js +0 -38
- package/src/interfaces/index.js.map +0 -1
- package/src/interfaces/jwt-consts.d.ts +0 -11
- package/src/interfaces/jwt-consts.d.ts.map +0 -1
- package/src/interfaces/jwt-consts.js +0 -3
- package/src/interfaces/jwt-consts.js.map +0 -1
- package/src/interfaces/jwt-sign-response.d.ts +0 -11
- package/src/interfaces/jwt-sign-response.d.ts.map +0 -1
- package/src/interfaces/jwt-sign-response.js +0 -3
- package/src/interfaces/jwt-sign-response.js.map +0 -1
- package/src/interfaces/models/email-token.d.ts +0 -6
- package/src/interfaces/models/email-token.d.ts.map +0 -1
- package/src/interfaces/models/email-token.js +0 -3
- package/src/interfaces/models/email-token.js.map +0 -1
- package/src/interfaces/models/index.d.ts.map +0 -1
- package/src/interfaces/models/index.js +0 -11
- package/src/interfaces/models/index.js.map +0 -1
- package/src/interfaces/models/mnemonic.d.ts +0 -6
- package/src/interfaces/models/mnemonic.d.ts.map +0 -1
- package/src/interfaces/models/mnemonic.js +0 -3
- package/src/interfaces/models/mnemonic.js.map +0 -1
- package/src/interfaces/models/role.d.ts +0 -6
- package/src/interfaces/models/role.d.ts.map +0 -1
- package/src/interfaces/models/role.js +0 -3
- package/src/interfaces/models/role.js.map +0 -1
- package/src/interfaces/models/token-role.d.ts +0 -11
- package/src/interfaces/models/token-role.d.ts.map +0 -1
- package/src/interfaces/models/token-role.js +0 -3
- package/src/interfaces/models/token-role.js.map +0 -1
- package/src/interfaces/models/used-direct-login-token.d.ts +0 -11
- package/src/interfaces/models/used-direct-login-token.d.ts.map +0 -1
- package/src/interfaces/models/used-direct-login-token.js +0 -3
- package/src/interfaces/models/used-direct-login-token.js.map +0 -1
- package/src/interfaces/models/user-role.d.ts +0 -11
- package/src/interfaces/models/user-role.d.ts.map +0 -1
- package/src/interfaces/models/user-role.js +0 -3
- package/src/interfaces/models/user-role.js.map +0 -1
- package/src/interfaces/models/user.d.ts +0 -11
- package/src/interfaces/models/user.d.ts.map +0 -1
- package/src/interfaces/models/user.js +0 -3
- package/src/interfaces/models/user.js.map +0 -1
- package/src/interfaces/mongo-errors.d.ts +0 -5
- package/src/interfaces/mongo-errors.d.ts.map +0 -1
- package/src/interfaces/mongo-errors.js +0 -3
- package/src/interfaces/mongo-errors.js.map +0 -1
- package/src/interfaces/request-user.d.ts +0 -58
- package/src/interfaces/request-user.d.ts.map +0 -1
- package/src/interfaces/request-user.js +0 -3
- package/src/interfaces/request-user.js.map +0 -1
- package/src/interfaces/required-string-keys.d.ts +0 -22
- package/src/interfaces/required-string-keys.d.ts.map +0 -1
- package/src/interfaces/required-string-keys.js +0 -3
- package/src/interfaces/required-string-keys.js.map +0 -1
- package/src/interfaces/schema.d.ts +0 -29
- package/src/interfaces/schema.d.ts.map +0 -1
- package/src/interfaces/schema.js +0 -3
- package/src/interfaces/schema.js.map +0 -1
- package/src/interfaces/server-init-result.d.ts +0 -35
- package/src/interfaces/server-init-result.d.ts.map +0 -1
- package/src/interfaces/server-init-result.js +0 -3
- package/src/interfaces/server-init-result.js.map +0 -1
- package/src/interfaces/status-code-response.d.ts +0 -7
- package/src/interfaces/status-code-response.d.ts.map +0 -1
- package/src/interfaces/status-code-response.js +0 -3
- package/src/interfaces/status-code-response.js.map +0 -1
- package/src/interfaces/symmetric-encryption-results.d.ts +0 -5
- package/src/interfaces/test-environment.d.ts +0 -12
- package/src/interfaces/test-environment.d.ts.map +0 -1
- package/src/interfaces/test-environment.js +0 -3
- package/src/interfaces/test-environment.js.map +0 -1
- package/src/interfaces/token-response.d.ts +0 -5
- package/src/interfaces/token-response.d.ts.map +0 -1
- package/src/interfaces/token-response.js +0 -3
- package/src/interfaces/token-response.js.map +0 -1
- package/src/middleware-utils.d.ts +0 -8
- package/src/middleware-utils.d.ts.map +0 -1
- package/src/middleware-utils.js +0 -94
- package/src/middleware-utils.js.map +0 -1
- package/src/middlewares/authenticate-crypto.d.ts +0 -10
- package/src/middlewares/authenticate-crypto.d.ts.map +0 -1
- package/src/middlewares/authenticate-crypto.js +0 -126
- package/src/middlewares/authenticate-crypto.js.map +0 -1
- package/src/middlewares/authenticate-token.d.ts +0 -21
- package/src/middlewares/authenticate-token.d.ts.map +0 -1
- package/src/middlewares/authenticate-token.js +0 -104
- package/src/middlewares/authenticate-token.js.map +0 -1
- package/src/middlewares/cleanup-crypto.d.ts +0 -7
- package/src/middlewares/cleanup-crypto.d.ts.map +0 -1
- package/src/middlewares/cleanup-crypto.js +0 -32
- package/src/middlewares/cleanup-crypto.js.map +0 -1
- package/src/middlewares/index.d.ts.map +0 -1
- package/src/middlewares/index.js +0 -8
- package/src/middlewares/index.js.map +0 -1
- package/src/middlewares/set-global-context-language.d.ts +0 -3
- package/src/middlewares/set-global-context-language.d.ts.map +0 -1
- package/src/middlewares/set-global-context-language.js +0 -14
- package/src/middlewares/set-global-context-language.js.map +0 -1
- package/src/model-registry.d.ts +0 -23
- package/src/model-registry.d.ts.map +0 -1
- package/src/model-registry.js +0 -47
- package/src/model-registry.js.map +0 -1
- package/src/models/email-token.d.ts +0 -8
- package/src/models/email-token.d.ts.map +0 -1
- package/src/models/email-token.js +0 -11
- package/src/models/email-token.js.map +0 -1
- package/src/models/index.d.ts.map +0 -1
- package/src/models/index.js +0 -10
- package/src/models/index.js.map +0 -1
- package/src/models/mnemonic.d.ts +0 -8
- package/src/models/mnemonic.d.ts.map +0 -1
- package/src/models/mnemonic.js +0 -11
- package/src/models/mnemonic.js.map +0 -1
- package/src/models/role.d.ts +0 -8
- package/src/models/role.d.ts.map +0 -1
- package/src/models/role.js +0 -11
- package/src/models/role.js.map +0 -1
- package/src/models/used-direct-login-token.d.ts +0 -8
- package/src/models/used-direct-login-token.d.ts.map +0 -1
- package/src/models/used-direct-login-token.js +0 -11
- package/src/models/used-direct-login-token.js.map +0 -1
- package/src/models/user-role.d.ts +0 -7
- package/src/models/user-role.d.ts.map +0 -1
- package/src/models/user-role.js +0 -10
- package/src/models/user-role.js.map +0 -1
- package/src/models/user.d.ts +0 -8
- package/src/models/user.d.ts.map +0 -1
- package/src/models/user.js +0 -11
- package/src/models/user.js.map +0 -1
- package/src/pipeline/index.d.ts.map +0 -1
- package/src/pipeline/index.js +0 -5
- package/src/pipeline/index.js.map +0 -1
- package/src/pipeline/pipeline-builder.d.ts +0 -8
- package/src/pipeline/pipeline-builder.d.ts.map +0 -1
- package/src/pipeline/pipeline-builder.js +0 -18
- package/src/pipeline/pipeline-builder.js.map +0 -1
- package/src/plugins/index.d.ts.map +0 -1
- package/src/plugins/index.js +0 -6
- package/src/plugins/index.js.map +0 -1
- package/src/plugins/plugin-interface.d.ts +0 -9
- package/src/plugins/plugin-interface.d.ts.map +0 -1
- package/src/plugins/plugin-interface.js +0 -3
- package/src/plugins/plugin-interface.js.map +0 -1
- package/src/plugins/plugin-manager.d.ts +0 -13
- package/src/plugins/plugin-manager.d.ts.map +0 -1
- package/src/plugins/plugin-manager.js +0 -37
- package/src/plugins/plugin-manager.js.map +0 -1
- package/src/registry/email-service-registry.d.ts +0 -27
- package/src/registry/email-service-registry.d.ts.map +0 -1
- package/src/registry/email-service-registry.js +0 -42
- package/src/registry/email-service-registry.js.map +0 -1
- package/src/registry/index.d.ts.map +0 -1
- package/src/registry/index.js +0 -6
- package/src/registry/index.js.map +0 -1
- package/src/responses/index.d.ts.map +0 -1
- package/src/responses/index.js +0 -5
- package/src/responses/index.js.map +0 -1
- package/src/responses/response-builder.d.ts +0 -24
- package/src/responses/response-builder.d.ts.map +0 -1
- package/src/responses/response-builder.js +0 -63
- package/src/responses/response-builder.js.map +0 -1
- package/src/routers/api.d.ts +0 -28
- package/src/routers/api.d.ts.map +0 -1
- package/src/routers/api.js +0 -80
- package/src/routers/api.js.map +0 -1
- package/src/routers/app.d.ts +0 -33
- package/src/routers/app.d.ts.map +0 -1
- package/src/routers/app.js +0 -228
- package/src/routers/app.js.map +0 -1
- package/src/routers/base.d.ts +0 -9
- package/src/routers/base.d.ts.map +0 -1
- package/src/routers/base.js +0 -14
- package/src/routers/base.js.map +0 -1
- package/src/routers/index.d.ts.map +0 -1
- package/src/routers/index.js +0 -7
- package/src/routers/index.js.map +0 -1
- package/src/routers/router-config.d.ts +0 -18
- package/src/routers/router-config.d.ts.map +0 -1
- package/src/routers/router-config.js +0 -8
- package/src/routers/router-config.js.map +0 -1
- package/src/routing/index.d.ts +0 -2
- package/src/routing/index.d.ts.map +0 -1
- package/src/routing/index.js +0 -5
- package/src/routing/index.js.map +0 -1
- package/src/routing/route-builder.d.ts +0 -36
- package/src/routing/route-builder.d.ts.map +0 -1
- package/src/routing/route-builder.js +0 -86
- package/src/routing/route-builder.js.map +0 -1
- package/src/schemas/email-token.d.ts +0 -49
- package/src/schemas/email-token.d.ts.map +0 -1
- package/src/schemas/email-token.js +0 -55
- package/src/schemas/email-token.js.map +0 -1
- package/src/schemas/index.d.ts.map +0 -1
- package/src/schemas/index.js +0 -11
- package/src/schemas/index.js.map +0 -1
- package/src/schemas/mnemonic.d.ts +0 -27
- package/src/schemas/mnemonic.d.ts.map +0 -1
- package/src/schemas/mnemonic.js +0 -31
- package/src/schemas/mnemonic.js.map +0 -1
- package/src/schemas/role.d.ts +0 -42
- package/src/schemas/role.d.ts.map +0 -1
- package/src/schemas/role.js +0 -89
- package/src/schemas/role.js.map +0 -1
- package/src/schemas/schema.d.ts +0 -42
- package/src/schemas/schema.d.ts.map +0 -1
- package/src/schemas/schema.js +0 -70
- package/src/schemas/schema.js.map +0 -1
- package/src/schemas/used-direct-login-token.d.ts +0 -37
- package/src/schemas/used-direct-login-token.d.ts.map +0 -1
- package/src/schemas/used-direct-login-token.js +0 -24
- package/src/schemas/used-direct-login-token.js.map +0 -1
- package/src/schemas/user-role.d.ts +0 -39
- package/src/schemas/user-role.d.ts.map +0 -1
- package/src/schemas/user-role.js +0 -55
- package/src/schemas/user-role.js.map +0 -1
- package/src/schemas/user.d.ts +0 -24
- package/src/schemas/user.d.ts.map +0 -1
- package/src/schemas/user.js +0 -195
- package/src/schemas/user.js.map +0 -1
- package/src/services/backup-code.d.ts +0 -76
- package/src/services/backup-code.d.ts.map +0 -1
- package/src/services/backup-code.js +0 -185
- package/src/services/backup-code.js.map +0 -1
- package/src/services/base.d.ts +0 -11
- package/src/services/base.d.ts.map +0 -1
- package/src/services/base.js +0 -15
- package/src/services/base.js.map +0 -1
- package/src/services/checksum.d.ts +0 -69
- package/src/services/checksum.d.ts.map +0 -1
- package/src/services/checksum.js +0 -145
- package/src/services/checksum.js.map +0 -1
- package/src/services/crc.d.ts +0 -87
- package/src/services/crc.d.ts.map +0 -1
- package/src/services/crc.js +0 -198
- package/src/services/crc.js.map +0 -1
- package/src/services/database-initialization.d.ts +0 -111
- package/src/services/database-initialization.d.ts.map +0 -1
- package/src/services/database-initialization.js +0 -878
- package/src/services/database-initialization.js.map +0 -1
- package/src/services/db-init-cache.d.ts +0 -10
- package/src/services/db-init-cache.d.ts.map +0 -1
- package/src/services/db-init-cache.js +0 -3
- package/src/services/db-init-cache.js.map +0 -1
- package/src/services/direct-login-token.d.ts +0 -7
- package/src/services/direct-login-token.d.ts.map +0 -1
- package/src/services/direct-login-token.js +0 -41
- package/src/services/direct-login-token.js.map +0 -1
- package/src/services/dummy-email-service.d.ts +0 -11
- package/src/services/dummy-email-service.d.ts.map +0 -1
- package/src/services/dummy-email-service.js +0 -16
- package/src/services/dummy-email-service.js.map +0 -1
- package/src/services/fec-usage-example.d.ts +0 -38
- package/src/services/fec-usage-example.d.ts.map +0 -1
- package/src/services/fec-usage-example.js +0 -75
- package/src/services/fec-usage-example.js.map +0 -1
- package/src/services/fec.d.ts +0 -46
- package/src/services/fec.d.ts.map +0 -1
- package/src/services/fec.js +0 -214
- package/src/services/fec.js.map +0 -1
- package/src/services/index.d.ts.map +0 -1
- package/src/services/index.js +0 -23
- package/src/services/index.js.map +0 -1
- package/src/services/jwt.d.ts +0 -30
- package/src/services/jwt.d.ts.map +0 -1
- package/src/services/jwt.js +0 -90
- package/src/services/jwt.js.map +0 -1
- package/src/services/key-wrapping.d.ts +0 -61
- package/src/services/key-wrapping.d.ts.map +0 -1
- package/src/services/key-wrapping.js +0 -307
- package/src/services/key-wrapping.js.map +0 -1
- package/src/services/mnemonic.d.ts +0 -62
- package/src/services/mnemonic.d.ts.map +0 -1
- package/src/services/mnemonic.js +0 -114
- package/src/services/mnemonic.js.map +0 -1
- package/src/services/request-user.d.ts +0 -23
- package/src/services/request-user.d.ts.map +0 -1
- package/src/services/request-user.js +0 -68
- package/src/services/request-user.js.map +0 -1
- package/src/services/role.d.ts +0 -87
- package/src/services/role.d.ts.map +0 -1
- package/src/services/role.js +0 -279
- package/src/services/role.js.map +0 -1
- package/src/services/symmetric.d.ts +0 -42
- package/src/services/symmetric.d.ts.map +0 -1
- package/src/services/symmetric.js +0 -101
- package/src/services/symmetric.js.map +0 -1
- package/src/services/system-user.d.ts +0 -16
- package/src/services/system-user.d.ts.map +0 -1
- package/src/services/system-user.js +0 -46
- package/src/services/system-user.js.map +0 -1
- package/src/services/user.d.ts +0 -345
- package/src/services/user.d.ts.map +0 -1
- package/src/services/user.js +0 -1447
- package/src/services/user.js.map +0 -1
- package/src/services/xor.d.ts +0 -24
- package/src/services/xor.d.ts.map +0 -1
- package/src/services/xor.js +0 -37
- package/src/services/xor.js.map +0 -1
- package/src/testing.d.ts +0 -3
- package/src/testing.d.ts.map +0 -1
- package/src/testing.js +0 -7
- package/src/testing.js.map +0 -1
- package/src/transactions/index.d.ts.map +0 -1
- package/src/transactions/index.js +0 -5
- package/src/transactions/index.js.map +0 -1
- package/src/transactions/transaction-manager.d.ts +0 -12
- package/src/transactions/transaction-manager.d.ts.map +0 -1
- package/src/transactions/transaction-manager.js +0 -30
- package/src/transactions/transaction-manager.js.map +0 -1
- package/src/types/app-config.d.ts +0 -16
- package/src/types/app-config.d.ts.map +0 -1
- package/src/types/app-config.js +0 -3
- package/src/types/app-config.js.map +0 -1
- package/src/types/controller-config.d.ts +0 -14
- package/src/types/controller-config.d.ts.map +0 -1
- package/src/types/controller-config.js +0 -3
- package/src/types/controller-config.js.map +0 -1
- package/src/types/environment-variables.d.ts.map +0 -1
- package/src/types/environment-variables.js +0 -39
- package/src/types/environment-variables.js.map +0 -1
- package/src/types/index.d.ts.map +0 -1
- package/src/types/index.js +0 -6
- package/src/types/index.js.map +0 -1
- package/src/types/mongoose-helpers.d.ts.map +0 -1
- package/src/types/mongoose-helpers.js +0 -6
- package/src/types/mongoose-helpers.js.map +0 -1
- package/src/types.d.ts +0 -104
- package/src/types.d.ts.map +0 -1
- package/src/types.js +0 -14
- package/src/types.js.map +0 -1
- package/src/utils.d.ts +0 -211
- package/src/utils.d.ts.map +0 -1
- package/src/utils.js +0 -818
- package/src/utils.js.map +0 -1
- package/src/validation/index.d.ts.map +0 -1
- package/src/validation/index.js +0 -5
- package/src/validation/index.js.map +0 -1
- package/src/validation/validation-builder.d.ts +0 -32
- package/src/validation/validation-builder.d.ts.map +0 -1
- package/src/validation/validation-builder.js +0 -81
- package/src/validation/validation-builder.js.map +0 -1
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Discriminator collections interface.
|
|
3
|
+
* Defines structure for Mongoose discriminator model collections.
|
|
4
|
+
* @module interfaces/discriminator-collections
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { Model } from '@digitaldefiance/mongoose-types';
|
|
8
|
+
import { IBaseDocument } from '../documents/base';
|
|
9
|
+
import type { PlatformID } from '@digitaldefiance/node-ecies-lib';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Collections of discriminator models.
|
|
13
|
+
* @template T - Document type extending IBaseDocument
|
|
14
|
+
*/
|
|
15
|
+
export interface IDiscriminatorCollections<
|
|
16
|
+
TID extends PlatformID,
|
|
17
|
+
T extends IBaseDocument<any, TID>,
|
|
18
|
+
> {
|
|
19
|
+
byType: Record<string, Model<T>>;
|
|
20
|
+
array: Array<Model<T>>;
|
|
21
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Email service interface for sending emails.
|
|
3
|
+
* Defines contract for email delivery implementations.
|
|
4
|
+
* @module interfaces/email-service
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Email service interface for sending emails.
|
|
9
|
+
* Implementations handle email delivery with text and HTML content.
|
|
10
|
+
*/
|
|
11
|
+
export interface IEmailService {
|
|
12
|
+
/**
|
|
13
|
+
* Sends an email with text and HTML content.
|
|
14
|
+
* @param {string} to - Recipient email address
|
|
15
|
+
* @param {string} subject - Email subject line
|
|
16
|
+
* @param {string} text - Plain text email body
|
|
17
|
+
* @param {string} html - HTML email body
|
|
18
|
+
* @returns {Promise<void>} Resolves when email is sent
|
|
19
|
+
*/
|
|
20
|
+
sendEmail(
|
|
21
|
+
to: string,
|
|
22
|
+
subject: string,
|
|
23
|
+
text: string,
|
|
24
|
+
html: string,
|
|
25
|
+
): Promise<void>;
|
|
26
|
+
}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview MongoDB environment configuration interface.
|
|
3
|
+
* Defines comprehensive MongoDB connection and behavior settings.
|
|
4
|
+
* @module interfaces/environment-mongo
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { ReadConcernLike, WriteConcern } from 'mongodb';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* MongoDB environment configuration.
|
|
11
|
+
* Defines connection pool, timeout, transaction, and consistency settings.
|
|
12
|
+
*/
|
|
13
|
+
export interface IMongoEnvironment {
|
|
14
|
+
/**
|
|
15
|
+
* The URI of the MongoDB database
|
|
16
|
+
*/
|
|
17
|
+
uri: string;
|
|
18
|
+
/**
|
|
19
|
+
* The name of the MongoDB database
|
|
20
|
+
*/
|
|
21
|
+
dbName: string;
|
|
22
|
+
/**
|
|
23
|
+
* The maximum number of connections in the connection pool (default: 10)
|
|
24
|
+
*/
|
|
25
|
+
maxPoolSize: number;
|
|
26
|
+
/**
|
|
27
|
+
* The minimum number of connections in the connection pool (default: 2)
|
|
28
|
+
*/
|
|
29
|
+
minPoolSize: number;
|
|
30
|
+
/**
|
|
31
|
+
* The maximum number of milliseconds that a connection can remain idle in the connection pool (default: 30000)
|
|
32
|
+
*/
|
|
33
|
+
maxIdleTimeMS: number;
|
|
34
|
+
/**
|
|
35
|
+
* The maximum time in milliseconds to wait for a connection to be established (default: 5000)
|
|
36
|
+
*/
|
|
37
|
+
serverSelectionTimeoutMS: number;
|
|
38
|
+
/**
|
|
39
|
+
* The maximum time in milliseconds to wait for a socket to be established (default: 30000)
|
|
40
|
+
*/
|
|
41
|
+
socketTimeoutMS: number;
|
|
42
|
+
/**
|
|
43
|
+
* Whether to retry writes (default: true)
|
|
44
|
+
*/
|
|
45
|
+
retryWrites: boolean;
|
|
46
|
+
/**
|
|
47
|
+
* Whether to retry reads (default: true)
|
|
48
|
+
*/
|
|
49
|
+
retryReads: boolean;
|
|
50
|
+
/**
|
|
51
|
+
* The read concern for the MongoDB database
|
|
52
|
+
*/
|
|
53
|
+
readConcern: ReadConcernLike;
|
|
54
|
+
/**
|
|
55
|
+
* The write concern for the MongoDB database (default: { w: 'majority', j: true })
|
|
56
|
+
*/
|
|
57
|
+
writeConcern: WriteConcern;
|
|
58
|
+
/**
|
|
59
|
+
* Whether the MongoDB server supports the setParameter command (MongoDB 4.4+)
|
|
60
|
+
*/
|
|
61
|
+
setParameterSupported: boolean;
|
|
62
|
+
/**
|
|
63
|
+
* Whether the MongoDB server supports setting transactionLifetimeLimitSeconds (MongoDB 4.2+)
|
|
64
|
+
*/
|
|
65
|
+
transactionLifetimeLimitSecondsSupported: boolean;
|
|
66
|
+
/**
|
|
67
|
+
* Whether the MongoDB server supports setting maxTransactionLockRequestTimeoutMillis (MongoDB 4.4+)
|
|
68
|
+
*/
|
|
69
|
+
maxTransactionLockRequestTimeoutMillisSupported: boolean;
|
|
70
|
+
/**
|
|
71
|
+
* How long for transactions to timeout
|
|
72
|
+
*/
|
|
73
|
+
transactionTimeout: number;
|
|
74
|
+
/**
|
|
75
|
+
* The maximum time to wait for a lock when using transactions (MongoDB 4.4+)
|
|
76
|
+
*/
|
|
77
|
+
transactionLockRequestTimeout: number;
|
|
78
|
+
/**
|
|
79
|
+
* Use transactions
|
|
80
|
+
*/
|
|
81
|
+
useTransactions: boolean;
|
|
82
|
+
/**
|
|
83
|
+
* Base delay in milliseconds for transaction retry backoff
|
|
84
|
+
*/
|
|
85
|
+
transactionRetryBaseDelay: number;
|
|
86
|
+
}
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Environment interface defining application configuration and credentials.
|
|
3
|
+
* Contains all environment variables, database configuration, and user credentials.
|
|
4
|
+
* @module interfaces/environment
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { SecureBuffer, SecureString } from '@digitaldefiance/ecies-lib';
|
|
8
|
+
import { BackupCode } from '../backup-code';
|
|
9
|
+
import { IMongoEnvironment } from './environment-mongo';
|
|
10
|
+
import type { PlatformID } from '@digitaldefiance/node-ecies-lib';
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Environment configuration interface for the application.
|
|
14
|
+
* Contains all configuration values, credentials, and environment-specific settings.
|
|
15
|
+
* @template TID Platform-specific ID type (Buffer, ObjectId, etc.)
|
|
16
|
+
*/
|
|
17
|
+
export interface IEnvironment<TID extends PlatformID = Buffer> {
|
|
18
|
+
/**
|
|
19
|
+
* Whether to use a memory database for local development (eg with MongoMemoryServer)
|
|
20
|
+
* If set, this will create a new in-memory database instance on application start with the given database name
|
|
21
|
+
*/
|
|
22
|
+
devDatabase?: string;
|
|
23
|
+
/**
|
|
24
|
+
* Whether to print certain console debug messages
|
|
25
|
+
*/
|
|
26
|
+
debug: boolean;
|
|
27
|
+
/**
|
|
28
|
+
* Whether to enable super verbose debug messags
|
|
29
|
+
*/
|
|
30
|
+
detailedDebug: boolean;
|
|
31
|
+
/**
|
|
32
|
+
* The host name of the server
|
|
33
|
+
*/
|
|
34
|
+
host: string;
|
|
35
|
+
/**
|
|
36
|
+
* The port the server is running on
|
|
37
|
+
*/
|
|
38
|
+
port: number;
|
|
39
|
+
/**
|
|
40
|
+
* The base path of the server
|
|
41
|
+
*/
|
|
42
|
+
basePath: string;
|
|
43
|
+
/**
|
|
44
|
+
* The URL of the server
|
|
45
|
+
*/
|
|
46
|
+
serverUrl: string;
|
|
47
|
+
/**
|
|
48
|
+
* The secret used to sign JWTs
|
|
49
|
+
*/
|
|
50
|
+
jwtSecret: string;
|
|
51
|
+
/**
|
|
52
|
+
* The email address to send notifications from
|
|
53
|
+
*/
|
|
54
|
+
emailSender: string;
|
|
55
|
+
/**
|
|
56
|
+
* API distribution directory
|
|
57
|
+
*/
|
|
58
|
+
apiDistDir: string;
|
|
59
|
+
/**
|
|
60
|
+
* react dist dir
|
|
61
|
+
*/
|
|
62
|
+
reactDistDir: string;
|
|
63
|
+
/**
|
|
64
|
+
* The directory and root filename to store HTTPS development certificates
|
|
65
|
+
*/
|
|
66
|
+
httpsDevCertRoot?: string;
|
|
67
|
+
/**
|
|
68
|
+
* The port to use for HTTPS development certificates
|
|
69
|
+
*/
|
|
70
|
+
httpsDevPort: number;
|
|
71
|
+
/**
|
|
72
|
+
* Disable email sending
|
|
73
|
+
*/
|
|
74
|
+
disableEmailSend: boolean;
|
|
75
|
+
/**
|
|
76
|
+
* MongoDB configuration
|
|
77
|
+
*/
|
|
78
|
+
mongo: IMongoEnvironment;
|
|
79
|
+
/**
|
|
80
|
+
* Mnemonic for the admin user
|
|
81
|
+
*/
|
|
82
|
+
adminMnemonic?: SecureString;
|
|
83
|
+
/**
|
|
84
|
+
* The ID of the admin user
|
|
85
|
+
*/
|
|
86
|
+
adminId?: TID;
|
|
87
|
+
/**
|
|
88
|
+
* The creation date of the admin user
|
|
89
|
+
*/
|
|
90
|
+
adminCreatedAt?: Date;
|
|
91
|
+
/**
|
|
92
|
+
* The password of the admin user
|
|
93
|
+
*/
|
|
94
|
+
adminPassword?: SecureString;
|
|
95
|
+
/**
|
|
96
|
+
* The ID of the admin user role object
|
|
97
|
+
*/
|
|
98
|
+
adminRoleId?: TID;
|
|
99
|
+
/**
|
|
100
|
+
* The ID of the admin user's user role object
|
|
101
|
+
*/
|
|
102
|
+
adminUserRoleId?: TID;
|
|
103
|
+
/**
|
|
104
|
+
* Backup codes for the admin user
|
|
105
|
+
*/
|
|
106
|
+
adminBackupCodes?: BackupCode[];
|
|
107
|
+
/**
|
|
108
|
+
* Mnemonic for the member user
|
|
109
|
+
*/
|
|
110
|
+
memberMnemonic?: SecureString;
|
|
111
|
+
/**
|
|
112
|
+
* The ID of the member user
|
|
113
|
+
*/
|
|
114
|
+
memberId?: TID;
|
|
115
|
+
/**
|
|
116
|
+
* The creation date of the member user
|
|
117
|
+
*/
|
|
118
|
+
memberCreatedAt?: Date;
|
|
119
|
+
/**
|
|
120
|
+
* The password of the member user
|
|
121
|
+
*/
|
|
122
|
+
memberPassword?: SecureString;
|
|
123
|
+
/**
|
|
124
|
+
* The ID of the member user role object
|
|
125
|
+
*/
|
|
126
|
+
memberRoleId?: TID;
|
|
127
|
+
/**
|
|
128
|
+
* The ID of the member user's user role object
|
|
129
|
+
*/
|
|
130
|
+
memberUserRoleId?: TID;
|
|
131
|
+
/**
|
|
132
|
+
* Backup codes for the member user
|
|
133
|
+
*/
|
|
134
|
+
memberBackupCodes?: BackupCode[];
|
|
135
|
+
/**
|
|
136
|
+
* Mnemonic for the system user
|
|
137
|
+
*/
|
|
138
|
+
systemMnemonic?: SecureString;
|
|
139
|
+
/**
|
|
140
|
+
* The ID of the system user
|
|
141
|
+
*/
|
|
142
|
+
systemId?: TID;
|
|
143
|
+
/**
|
|
144
|
+
* The creation date of the system user
|
|
145
|
+
*/
|
|
146
|
+
systemCreatedAt?: Date;
|
|
147
|
+
/**
|
|
148
|
+
* The public key of the system user
|
|
149
|
+
*/
|
|
150
|
+
systemPublicKeyHex?: string;
|
|
151
|
+
/**
|
|
152
|
+
* The password of the system user
|
|
153
|
+
*/
|
|
154
|
+
systemPassword?: SecureString;
|
|
155
|
+
/**
|
|
156
|
+
* The ID of the system user role object
|
|
157
|
+
*/
|
|
158
|
+
systemRoleId?: TID;
|
|
159
|
+
/**
|
|
160
|
+
* The ID of the system user's user role object
|
|
161
|
+
*/
|
|
162
|
+
systemUserRoleId?: TID;
|
|
163
|
+
/**
|
|
164
|
+
* Backup codes for the system user
|
|
165
|
+
*/
|
|
166
|
+
systemBackupCodes?: BackupCode[];
|
|
167
|
+
/**
|
|
168
|
+
* HMAC secret for mnemonic encryption
|
|
169
|
+
*/
|
|
170
|
+
mnemonicHmacSecret: SecureBuffer;
|
|
171
|
+
/**
|
|
172
|
+
* Encryption key for mnemonics
|
|
173
|
+
*/
|
|
174
|
+
mnemonicEncryptionKey: SecureBuffer;
|
|
175
|
+
/**
|
|
176
|
+
* The timezone for the server
|
|
177
|
+
*/
|
|
178
|
+
timezone: string;
|
|
179
|
+
/**
|
|
180
|
+
* The default language for the admin interface/CLI
|
|
181
|
+
*/
|
|
182
|
+
adminLanguage: string;
|
|
183
|
+
/**
|
|
184
|
+
* The number of PBKDF2 iterations for key wrapping
|
|
185
|
+
*/
|
|
186
|
+
pbkdf2Iterations: number;
|
|
187
|
+
/**
|
|
188
|
+
* Whether this is a production environment
|
|
189
|
+
*/
|
|
190
|
+
production: boolean;
|
|
191
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Failable result interface for operation outcomes.
|
|
3
|
+
* Generic interface for operations that can succeed or fail.
|
|
4
|
+
* @module interfaces/failable-result
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Result of an operation that can succeed or fail.
|
|
9
|
+
* @template T - Result data type
|
|
10
|
+
* @property {boolean} success - True if operation succeeded
|
|
11
|
+
* @property {T} [data] - Result data if successful
|
|
12
|
+
* @property {string} [message] - Success or informational message
|
|
13
|
+
* @property {string | Error} [error] - Error message or object if failed
|
|
14
|
+
*/
|
|
15
|
+
export interface IFailableResult<T> {
|
|
16
|
+
success: boolean;
|
|
17
|
+
data?: T;
|
|
18
|
+
message?: string;
|
|
19
|
+
error?: string | Error;
|
|
20
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Forward Error Correction constants interface.
|
|
3
|
+
* Defines configuration constants for FEC shard operations.
|
|
4
|
+
* @module interfaces/fec-consts
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Constants for Forward Error Correction operations.
|
|
9
|
+
* Defines maximum shard size for data splitting.
|
|
10
|
+
*/
|
|
11
|
+
export interface IFECConsts {
|
|
12
|
+
/** Maximum size of a single shard */
|
|
13
|
+
MAX_SHARD_SIZE: number;
|
|
14
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Flexible CSP configuration interface.
|
|
3
|
+
* Supports both simple CSP definitions and Helmet options.
|
|
4
|
+
* @module interfaces/flexible-csp
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { HelmetOptions } from 'helmet';
|
|
8
|
+
import { isHelmetOptions } from '../middleware-utils';
|
|
9
|
+
import { ISimpleCSPDef, isSimpleCSPDef } from './csp-definition';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Flexible Content Security Policy configuration.
|
|
13
|
+
* Accepts either simplified CSP definition or full Helmet options.
|
|
14
|
+
* @property {string[]} corsWhitelist - Allowed CORS origins
|
|
15
|
+
* @property {ISimpleCSPDef | HelmetOptions} csp - CSP configuration
|
|
16
|
+
*/
|
|
17
|
+
export interface IFlexibleCSP {
|
|
18
|
+
corsWhitelist: string[];
|
|
19
|
+
csp: ISimpleCSPDef | HelmetOptions;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Type guard to check if object is flexible CSP configuration.
|
|
24
|
+
* @param {any} obj - Object to validate
|
|
25
|
+
* @returns {boolean} True if object matches IFlexibleCSP interface
|
|
26
|
+
*/
|
|
27
|
+
export const isFlexibleCSP = (obj: any): obj is IFlexibleCSP => {
|
|
28
|
+
return (
|
|
29
|
+
!!obj &&
|
|
30
|
+
typeof obj === 'object' &&
|
|
31
|
+
'corsWhitelist' in obj &&
|
|
32
|
+
'csp' in obj &&
|
|
33
|
+
(isSimpleCSPDef(obj.csp) || isHelmetOptions(obj.csp))
|
|
34
|
+
);
|
|
35
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Handleable error options interface.
|
|
3
|
+
* Defines options for errors that can be handled by error middleware.
|
|
4
|
+
* @module interfaces/handleable-error-options
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Options for handleable errors.
|
|
9
|
+
* @property {Error} [cause] - Original error that caused this error
|
|
10
|
+
* @property {boolean} [handled] - Whether error has been handled
|
|
11
|
+
* @property {number} [statusCode] - HTTP status code for error response
|
|
12
|
+
* @property {unknown} [sourceData] - Additional data related to the error
|
|
13
|
+
*/
|
|
14
|
+
export interface HandleableErrorOptions {
|
|
15
|
+
cause?: Error;
|
|
16
|
+
handled?: boolean;
|
|
17
|
+
statusCode?: number;
|
|
18
|
+
sourceData?: unknown;
|
|
19
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview JWT constants interface.
|
|
3
|
+
* Defines configuration constants for JWT token generation and validation.
|
|
4
|
+
* @module interfaces/jwt-consts
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Constants for JWT token configuration.
|
|
9
|
+
* Defines algorithm and expiration settings.
|
|
10
|
+
*/
|
|
11
|
+
export interface IJwtConsts {
|
|
12
|
+
/**
|
|
13
|
+
* Algorithm to use for JWT
|
|
14
|
+
*/
|
|
15
|
+
ALGORITHM:
|
|
16
|
+
| 'HS256'
|
|
17
|
+
| 'HS384'
|
|
18
|
+
| 'HS512'
|
|
19
|
+
| 'RS256'
|
|
20
|
+
| 'RS384'
|
|
21
|
+
| 'RS512'
|
|
22
|
+
| 'ES256'
|
|
23
|
+
| 'ES384'
|
|
24
|
+
| 'ES512'
|
|
25
|
+
| 'PS256'
|
|
26
|
+
| 'PS384'
|
|
27
|
+
| 'PS512';
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* The expiration time for a JWT token in seconds
|
|
31
|
+
*/
|
|
32
|
+
EXPIRATION_SEC: number;
|
|
33
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview JWT sign response interface.
|
|
3
|
+
* Defines structure for JWT token generation response with user and role data.
|
|
4
|
+
* @module interfaces/jwt-sign-response
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import type { PlatformID } from '@digitaldefiance/node-ecies-lib';
|
|
8
|
+
import {
|
|
9
|
+
ITokenRole,
|
|
10
|
+
ITokenRoleDTO,
|
|
11
|
+
ITokenUser,
|
|
12
|
+
} from '@digitaldefiance/suite-core-lib';
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Response from JWT token signing operation.
|
|
16
|
+
* @template TID - Platform ID type (defaults to Buffer)
|
|
17
|
+
* @template D - Date type (defaults to Date)
|
|
18
|
+
* @template TTokenRole - Token role type (defaults to ITokenRole<I, D>)
|
|
19
|
+
*/
|
|
20
|
+
export interface IJwtSignResponse<
|
|
21
|
+
TID extends PlatformID = Buffer,
|
|
22
|
+
D extends Date = Date,
|
|
23
|
+
TTokenRole extends ITokenRole<TID, D> = ITokenRole<TID, D>,
|
|
24
|
+
> {
|
|
25
|
+
token: string;
|
|
26
|
+
tokenUser: ITokenUser;
|
|
27
|
+
roleNames: string[];
|
|
28
|
+
roleTranslatedNames: string[];
|
|
29
|
+
roles: TTokenRole[];
|
|
30
|
+
roleDTOs: ITokenRoleDTO[];
|
|
31
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Email token model interface for frontend.
|
|
3
|
+
* Defines type alias for email token documents with string IDs.
|
|
4
|
+
* @module interfaces/models/email-token
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { IEmailTokenBase } from '@digitaldefiance/suite-core-lib';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Front-end interface for email token collection documents.
|
|
11
|
+
* Uses string IDs for browser compatibility.
|
|
12
|
+
*/
|
|
13
|
+
export type IFrontendEmailToken = IEmailTokenBase<string, Date, string>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Mnemonic model interface for frontend.
|
|
3
|
+
* Defines type alias for mnemonic hash storage documents.
|
|
4
|
+
* @module interfaces/models/mnemonic
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { IMnemonicBase } from '@digitaldefiance/suite-core-lib';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Front-end interface for mnemonic hash storage.
|
|
11
|
+
* Represents a mnemonic hash being stored to check for uniqueness.
|
|
12
|
+
* Uses string IDs for browser compatibility.
|
|
13
|
+
*/
|
|
14
|
+
export type IFrontendMnemonic = IMnemonicBase<string>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Role model interfaces for frontend.
|
|
3
|
+
* Defines type alias for role documents with string IDs.
|
|
4
|
+
* @module interfaces/models/role
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { IRoleBase } from '@digitaldefiance/suite-core-lib';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Front-end interface for role collection documents.
|
|
11
|
+
* Uses string IDs for browser compatibility.
|
|
12
|
+
*/
|
|
13
|
+
export type IFrontendRole = IRoleBase<string, Date>;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Token role model interfaces for frontend and backend.
|
|
3
|
+
* Defines type aliases for token role documents with platform-specific IDs.
|
|
4
|
+
* @module interfaces/models/token-role
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import type { PlatformID } from '@digitaldefiance/node-ecies-lib';
|
|
8
|
+
import { ITokenRole } from '@digitaldefiance/suite-core-lib';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Front-end interface for token role collection documents.
|
|
12
|
+
* Uses string IDs for browser compatibility.
|
|
13
|
+
*/
|
|
14
|
+
export type IFrontendTokenRole = ITokenRole<string, Date>;
|
|
15
|
+
/**
|
|
16
|
+
* Back-end interface for token role collection documents.
|
|
17
|
+
* Uses platform-specific IDs (Buffer, ObjectId, etc.).
|
|
18
|
+
* @template TID - Platform ID type (defaults to Buffer)
|
|
19
|
+
*/
|
|
20
|
+
export type IBackendTokenRole<TID extends PlatformID = Buffer> = ITokenRole<
|
|
21
|
+
TID,
|
|
22
|
+
Date
|
|
23
|
+
>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Used direct login token model interfaces for frontend and backend.
|
|
3
|
+
* Defines type aliases for tracking consumed direct login tokens.
|
|
4
|
+
* @module interfaces/models/used-direct-login-token
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import type { PlatformID } from '@digitaldefiance/node-ecies-lib';
|
|
8
|
+
import { IUsedDirectLoginTokenBase } from '@digitaldefiance/suite-core-lib';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Front-end interface for used direct login token documents.
|
|
12
|
+
* Uses string IDs for browser compatibility.
|
|
13
|
+
*/
|
|
14
|
+
export type IFrontendUsedDirectLoginToken = IUsedDirectLoginTokenBase<string>;
|
|
15
|
+
/**
|
|
16
|
+
* Back-end interface for used direct login token documents.
|
|
17
|
+
* Uses platform-specific IDs (Buffer, ObjectId, etc.).
|
|
18
|
+
* @template TID - Platform ID type (defaults to Buffer)
|
|
19
|
+
*/
|
|
20
|
+
export type IBackendUsedDirectLoginToken<TID extends PlatformID = Buffer> =
|
|
21
|
+
IUsedDirectLoginTokenBase<TID>;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview User-role model interfaces for frontend and backend.
|
|
3
|
+
* Defines type aliases for user-role relationship documents.
|
|
4
|
+
* @module interfaces/models/user-role
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import type { PlatformID } from '@digitaldefiance/node-ecies-lib';
|
|
8
|
+
import { IUserRoleBase } from '@digitaldefiance/suite-core-lib';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Front-end interface for user role collection documents.
|
|
12
|
+
* Uses string IDs for browser compatibility.
|
|
13
|
+
*/
|
|
14
|
+
export type IFrontendUserRole = IUserRoleBase<string, Date>;
|
|
15
|
+
/**
|
|
16
|
+
* Back-end interface for user role collection documents.
|
|
17
|
+
* Uses platform-specific IDs (Buffer, ObjectId, etc.).
|
|
18
|
+
* @template TID - Platform ID type (defaults to Buffer)
|
|
19
|
+
*/
|
|
20
|
+
export type IBackendUserRole<TID extends PlatformID = Buffer> = IUserRoleBase<
|
|
21
|
+
TID,
|
|
22
|
+
Date
|
|
23
|
+
>;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview User model interfaces for frontend and backend.
|
|
3
|
+
* Defines type aliases for user documents with platform-specific IDs.
|
|
4
|
+
* @module interfaces/models/user
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import type { PlatformID } from '@digitaldefiance/node-ecies-lib';
|
|
8
|
+
import { AccountStatus, IUserBase } from '@digitaldefiance/suite-core-lib';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Front-end interface for user collection documents.
|
|
12
|
+
* Uses string IDs for browser compatibility.
|
|
13
|
+
* @template TLanguage - Language code type
|
|
14
|
+
*/
|
|
15
|
+
export type IFrontendUser<TLanguage extends string> = IUserBase<
|
|
16
|
+
string,
|
|
17
|
+
Date,
|
|
18
|
+
TLanguage,
|
|
19
|
+
AccountStatus
|
|
20
|
+
>;
|
|
21
|
+
/**
|
|
22
|
+
* Back-end interface for user collection documents.
|
|
23
|
+
* Uses platform-specific IDs (Buffer, ObjectId, etc.).
|
|
24
|
+
* @template TLanguage - Language code type
|
|
25
|
+
* @template TID - Platform ID type (defaults to Buffer)
|
|
26
|
+
*/
|
|
27
|
+
export type IBackendUser<
|
|
28
|
+
TLanguage extends string,
|
|
29
|
+
TID extends PlatformID = Buffer,
|
|
30
|
+
> = IUserBase<TID, Date, TLanguage, AccountStatus>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview MongoDB validation errors interface.
|
|
3
|
+
* Defines structure for Mongoose validation error collections.
|
|
4
|
+
* @module interfaces/mongo-errors
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { Error } from '@digitaldefiance/mongoose-types';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Collection of MongoDB validation errors.
|
|
11
|
+
*/
|
|
12
|
+
export interface IMongoErrors {
|
|
13
|
+
[key: string]: Error.ValidatorError | Error.CastError;
|
|
14
|
+
}
|