@digitaldefiance/node-express-suite 4.22.2 → 4.23.1
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/README.md +173 -407
- package/package.json +1 -5
- package/src/__tests__/fixtures/index.d.ts +1 -1
- package/src/__tests__/fixtures/index.d.ts.map +1 -1
- package/src/__tests__/fixtures/index.js +1 -2
- package/src/__tests__/fixtures/index.js.map +1 -1
- package/src/__tests__/helpers/index.d.ts +1 -3
- package/src/__tests__/helpers/index.d.ts.map +1 -1
- package/src/__tests__/helpers/index.js +1 -4
- package/src/__tests__/helpers/index.js.map +1 -1
- package/src/__tests__/index.d.ts.map +1 -1
- package/src/__tests__/index.js +1 -0
- package/src/__tests__/index.js.map +1 -1
- package/src/application.d.ts +8 -11
- package/src/application.d.ts.map +1 -1
- package/src/application.js +8 -17
- package/src/application.js.map +1 -1
- package/src/branded-responses/branded-api-responses.d.ts +10 -2
- package/src/branded-responses/branded-api-responses.d.ts.map +1 -1
- package/src/branded-responses/branded-api-responses.js +5 -0
- package/src/branded-responses/branded-api-responses.js.map +1 -1
- package/src/branded-responses/serializers.d.ts +4 -1
- package/src/branded-responses/serializers.d.ts.map +1 -1
- package/src/builders/index.d.ts +1 -1
- package/src/builders/index.d.ts.map +1 -1
- package/src/builders/index.js +1 -2
- package/src/builders/index.js.map +1 -1
- package/src/controllers/base.d.ts +5 -18
- package/src/controllers/base.d.ts.map +1 -1
- package/src/controllers/base.js +7 -62
- package/src/controllers/base.js.map +1 -1
- package/src/controllers/index.d.ts +1 -1
- package/src/controllers/index.d.ts.map +1 -1
- package/src/controllers/index.js +2 -1
- package/src/controllers/index.js.map +1 -1
- package/src/controllers/openapi.d.ts +3 -3
- package/src/controllers/openapi.d.ts.map +1 -1
- package/src/controllers/openapi.js.map +1 -1
- package/src/enumerations/index.d.ts +0 -2
- package/src/enumerations/index.d.ts.map +1 -1
- package/src/enumerations/index.js +0 -2
- package/src/enumerations/index.js.map +1 -1
- package/src/environment.d.ts +4 -3
- package/src/environment.d.ts.map +1 -1
- package/src/environment.js +3 -1
- package/src/environment.js.map +1 -1
- package/src/errors/index.d.ts +0 -3
- package/src/errors/index.d.ts.map +1 -1
- package/src/errors/index.js +0 -3
- package/src/errors/index.js.map +1 -1
- package/src/index.d.ts +1 -8
- package/src/index.d.ts.map +1 -1
- package/src/index.js +1 -11
- package/src/index.js.map +1 -1
- package/src/interfaces/controller-config.d.ts +1 -2
- package/src/interfaces/controller-config.d.ts.map +1 -1
- package/src/interfaces/document-store.d.ts +3 -2
- package/src/interfaces/document-store.d.ts.map +1 -1
- package/src/interfaces/document-store.js +3 -3
- package/src/interfaces/document-store.js.map +1 -1
- package/src/interfaces/documents/base.d.ts +24 -0
- package/src/interfaces/documents/base.d.ts.map +1 -0
- package/src/interfaces/documents/base.js +13 -0
- package/src/interfaces/documents/base.js.map +1 -0
- package/src/interfaces/documents/email-token.d.ts +15 -0
- package/src/interfaces/documents/email-token.d.ts.map +1 -0
- package/src/interfaces/documents/email-token.js +7 -0
- package/src/interfaces/{models → documents}/email-token.js.map +1 -1
- package/src/interfaces/documents/index.d.ts +25 -0
- package/src/interfaces/documents/index.d.ts.map +1 -0
- package/src/interfaces/documents/index.js +20 -0
- package/src/interfaces/documents/index.js.map +1 -0
- package/src/interfaces/documents/mnemonic.d.ts +15 -0
- package/src/interfaces/documents/mnemonic.d.ts.map +1 -0
- package/src/interfaces/documents/mnemonic.js +7 -0
- package/src/interfaces/{models → documents}/mnemonic.js.map +1 -1
- package/src/interfaces/documents/role.d.ts +15 -0
- package/src/interfaces/documents/role.d.ts.map +1 -0
- package/src/interfaces/documents/role.js +7 -0
- package/src/interfaces/{models → documents}/role.js.map +1 -1
- package/src/interfaces/documents/used-direct-login-token.d.ts +15 -0
- package/src/interfaces/documents/used-direct-login-token.d.ts.map +1 -0
- package/src/interfaces/documents/used-direct-login-token.js +7 -0
- package/src/interfaces/{models → documents}/used-direct-login-token.js.map +1 -1
- package/src/interfaces/documents/user-role.d.ts +15 -0
- package/src/interfaces/documents/user-role.d.ts.map +1 -0
- package/src/interfaces/documents/user-role.js +7 -0
- package/src/interfaces/{models → documents}/user-role.js.map +1 -1
- package/src/interfaces/documents/user.d.ts +16 -0
- package/src/interfaces/documents/user.d.ts.map +1 -0
- package/src/interfaces/documents/user.js +7 -0
- package/src/interfaces/{models → documents}/user.js.map +1 -1
- package/src/interfaces/environment.d.ts +3 -2
- package/src/interfaces/environment.d.ts.map +1 -1
- package/src/interfaces/index.d.ts +3 -10
- package/src/interfaces/index.d.ts.map +1 -1
- package/src/interfaces/index.js +3 -10
- package/src/interfaces/index.js.map +1 -1
- package/src/interfaces/jwt-service.d.ts +27 -0
- package/src/interfaces/jwt-service.d.ts.map +1 -0
- package/src/interfaces/jwt-service.js +10 -0
- package/src/interfaces/jwt-service.js.map +1 -0
- package/src/interfaces/role-service.d.ts +55 -0
- package/src/interfaces/role-service.d.ts.map +1 -0
- package/src/interfaces/role-service.js +10 -0
- package/src/interfaces/role-service.js.map +1 -0
- package/src/interfaces/server-init-result.d.ts +10 -18
- package/src/interfaces/server-init-result.d.ts.map +1 -1
- package/src/interfaces/server-init-result.js +4 -2
- package/src/interfaces/server-init-result.js.map +1 -1
- package/src/plugins/database-plugin.d.ts +12 -0
- package/src/plugins/database-plugin.d.ts.map +1 -1
- package/src/plugins/index.d.ts +0 -1
- package/src/plugins/index.d.ts.map +1 -1
- package/src/plugins/index.js +0 -1
- package/src/plugins/index.js.map +1 -1
- package/src/routers/index.d.ts +0 -1
- package/src/routers/index.d.ts.map +1 -1
- package/src/routers/index.js +0 -1
- package/src/routers/index.js.map +1 -1
- package/src/services/abstract-jwt-service.d.ts +34 -0
- package/src/services/abstract-jwt-service.d.ts.map +1 -0
- package/src/services/abstract-jwt-service.js +68 -0
- package/src/services/abstract-jwt-service.js.map +1 -0
- package/src/services/abstract-role-service.d.ts +61 -0
- package/src/services/abstract-role-service.d.ts.map +1 -0
- package/src/services/abstract-role-service.js +69 -0
- package/src/services/abstract-role-service.js.map +1 -0
- package/src/services/base.d.ts +10 -13
- package/src/services/base.d.ts.map +1 -1
- package/src/services/base.js +7 -21
- package/src/services/base.js.map +1 -1
- package/src/services/index.d.ts +2 -15
- package/src/services/index.d.ts.map +1 -1
- package/src/services/index.js +2 -15
- package/src/services/index.js.map +1 -1
- package/src/testing.d.ts +1 -1
- package/src/testing.d.ts.map +1 -1
- package/src/testing.js +1 -1
- package/src/testing.js.map +1 -1
- package/src/types.d.ts +6 -17
- package/src/types.d.ts.map +1 -1
- package/src/types.js.map +1 -1
- package/src/utils.d.ts +5 -34
- package/src/utils.d.ts.map +1 -1
- package/src/utils.js +24 -165
- package/src/utils.js.map +1 -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 -85
- package/src/__tests__/helpers/application.mock.js.map +0 -1
- package/src/__tests__/helpers/setup-test-env.d.ts +0 -13
- package/src/__tests__/helpers/setup-test-env.d.ts.map +0 -1
- package/src/__tests__/helpers/setup-test-env.js +0 -133
- package/src/__tests__/helpers/setup-test-env.js.map +0 -1
- package/src/builders/application-builder.d.ts +0 -53
- package/src/builders/application-builder.d.ts.map +0 -1
- package/src/builders/application-builder.js +0 -91
- package/src/builders/application-builder.js.map +0 -1
- package/src/controllers/user.d.ts +0 -66
- package/src/controllers/user.d.ts.map +0 -1
- package/src/controllers/user.js +0 -949
- package/src/controllers/user.js.map +0 -1
- package/src/documents/base.d.ts +0 -15
- package/src/documents/base.d.ts.map +0 -1
- package/src/documents/base.js +0 -8
- package/src/documents/base.js.map +0 -1
- package/src/documents/email-token.d.ts +0 -15
- package/src/documents/email-token.d.ts.map +0 -1
- package/src/documents/email-token.js +0 -8
- package/src/documents/email-token.js.map +0 -1
- package/src/documents/index.d.ts +0 -8
- 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 -16
- package/src/documents/mnemonic.d.ts.map +0 -1
- package/src/documents/mnemonic.js +0 -8
- package/src/documents/mnemonic.js.map +0 -1
- package/src/documents/role.d.ts +0 -15
- package/src/documents/role.d.ts.map +0 -1
- package/src/documents/role.js +0 -8
- package/src/documents/role.js.map +0 -1
- package/src/documents/used-direct-login-token.d.ts +0 -16
- package/src/documents/used-direct-login-token.d.ts.map +0 -1
- package/src/documents/used-direct-login-token.js +0 -8
- package/src/documents/used-direct-login-token.js.map +0 -1
- package/src/documents/user-role.d.ts +0 -16
- package/src/documents/user-role.d.ts.map +0 -1
- package/src/documents/user-role.js +0 -8
- package/src/documents/user-role.js.map +0 -1
- package/src/documents/user.d.ts +0 -16
- package/src/documents/user.d.ts.map +0 -1
- package/src/documents/user.js +0 -8
- package/src/documents/user.js.map +0 -1
- package/src/enumerations/base-model-name.d.ts +0 -43
- package/src/enumerations/base-model-name.d.ts.map +0 -1
- package/src/enumerations/base-model-name.js +0 -39
- package/src/enumerations/base-model-name.js.map +0 -1
- package/src/enumerations/schema-collection.d.ts +0 -39
- package/src/enumerations/schema-collection.d.ts.map +0 -1
- package/src/enumerations/schema-collection.js +0 -43
- package/src/enumerations/schema-collection.js.map +0 -1
- package/src/errors/invalid-model.d.ts +0 -18
- package/src/errors/invalid-model.d.ts.map +0 -1
- package/src/errors/invalid-model.js +0 -26
- package/src/errors/invalid-model.js.map +0 -1
- package/src/errors/model-not-registered.d.ts +0 -18
- package/src/errors/model-not-registered.d.ts.map +0 -1
- package/src/errors/model-not-registered.js +0 -26
- package/src/errors/model-not-registered.js.map +0 -1
- package/src/errors/mongoose-validation.d.ts +0 -28
- package/src/errors/mongoose-validation.d.ts.map +0 -1
- package/src/errors/mongoose-validation.js +0 -33
- package/src/errors/mongoose-validation.js.map +0 -1
- package/src/interfaces/api-mongo-validation-error-response.d.ts +0 -16
- package/src/interfaces/api-mongo-validation-error-response.d.ts.map +0 -1
- package/src/interfaces/api-mongo-validation-error-response.js +0 -8
- package/src/interfaces/api-mongo-validation-error-response.js.map +0 -1
- package/src/interfaces/database-init-result-tx.d.ts +0 -27
- package/src/interfaces/database-init-result-tx.d.ts.map +0 -1
- package/src/interfaces/database-init-result-tx.js +0 -3
- package/src/interfaces/database-init-result-tx.js.map +0 -1
- package/src/interfaces/db-init-result.d.ts +0 -16
- package/src/interfaces/db-init-result.d.ts.map +0 -1
- package/src/interfaces/db-init-result.js +0 -8
- package/src/interfaces/db-init-result.js.map +0 -1
- package/src/interfaces/discriminator-collections.d.ts +0 -17
- package/src/interfaces/discriminator-collections.d.ts.map +0 -1
- package/src/interfaces/discriminator-collections.js +0 -8
- package/src/interfaces/discriminator-collections.js.map +0 -1
- package/src/interfaces/environment-mongo.d.ts +0 -86
- package/src/interfaces/environment-mongo.d.ts.map +0 -1
- package/src/interfaces/environment-mongo.js +0 -8
- package/src/interfaces/environment-mongo.js.map +0 -1
- package/src/interfaces/models/email-token.d.ts +0 -12
- package/src/interfaces/models/email-token.d.ts.map +0 -1
- package/src/interfaces/models/email-token.js +0 -8
- package/src/interfaces/models/index.d.ts +0 -8
- 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 -13
- package/src/interfaces/models/mnemonic.d.ts.map +0 -1
- package/src/interfaces/models/mnemonic.js +0 -8
- package/src/interfaces/models/role.d.ts +0 -12
- package/src/interfaces/models/role.d.ts.map +0 -1
- package/src/interfaces/models/role.js +0 -8
- package/src/interfaces/models/token-role.d.ts +0 -19
- package/src/interfaces/models/token-role.d.ts.map +0 -1
- package/src/interfaces/models/token-role.js +0 -8
- package/src/interfaces/models/token-role.js.map +0 -1
- package/src/interfaces/models/used-direct-login-token.d.ts +0 -19
- package/src/interfaces/models/used-direct-login-token.d.ts.map +0 -1
- package/src/interfaces/models/used-direct-login-token.js +0 -8
- package/src/interfaces/models/user-role.d.ts +0 -19
- package/src/interfaces/models/user-role.d.ts.map +0 -1
- package/src/interfaces/models/user-role.js +0 -8
- package/src/interfaces/models/user.d.ts +0 -21
- package/src/interfaces/models/user.d.ts.map +0 -1
- package/src/interfaces/models/user.js +0 -8
- package/src/interfaces/mongo-application.d.ts +0 -35
- package/src/interfaces/mongo-application.d.ts.map +0 -1
- package/src/interfaces/mongo-application.js +0 -10
- package/src/interfaces/mongo-application.js.map +0 -1
- package/src/interfaces/mongo-errors.d.ts +0 -13
- package/src/interfaces/mongo-errors.d.ts.map +0 -1
- package/src/interfaces/mongo-errors.js +0 -8
- package/src/interfaces/mongo-errors.js.map +0 -1
- package/src/interfaces/mongoose-document-store.d.ts +0 -42
- package/src/interfaces/mongoose-document-store.d.ts.map +0 -1
- package/src/interfaces/mongoose-document-store.js +0 -10
- package/src/interfaces/mongoose-document-store.js.map +0 -1
- package/src/interfaces/schema.d.ts +0 -37
- package/src/interfaces/schema.d.ts.map +0 -1
- package/src/interfaces/schema.js +0 -8
- package/src/interfaces/schema.js.map +0 -1
- package/src/interfaces/test-environment.d.ts +0 -22
- package/src/interfaces/test-environment.d.ts.map +0 -1
- package/src/interfaces/test-environment.js +0 -8
- package/src/interfaces/test-environment.js.map +0 -1
- package/src/model-registry.d.ts +0 -79
- package/src/model-registry.d.ts.map +0 -1
- package/src/model-registry.js +0 -97
- package/src/model-registry.js.map +0 -1
- package/src/models/email-token.d.ts +0 -24
- package/src/models/email-token.d.ts.map +0 -1
- package/src/models/email-token.js +0 -16
- package/src/models/email-token.js.map +0 -1
- package/src/models/index.d.ts +0 -7
- 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 -24
- package/src/models/mnemonic.d.ts.map +0 -1
- package/src/models/mnemonic.js +0 -27
- package/src/models/mnemonic.js.map +0 -1
- package/src/models/role.d.ts +0 -24
- package/src/models/role.d.ts.map +0 -1
- package/src/models/role.js +0 -27
- package/src/models/role.js.map +0 -1
- package/src/models/used-direct-login-token.d.ts +0 -24
- package/src/models/used-direct-login-token.d.ts.map +0 -1
- package/src/models/used-direct-login-token.js +0 -16
- package/src/models/used-direct-login-token.js.map +0 -1
- package/src/models/user-role.d.ts +0 -23
- package/src/models/user-role.d.ts.map +0 -1
- package/src/models/user-role.js +0 -26
- package/src/models/user-role.js.map +0 -1
- package/src/models/user.d.ts +0 -24
- package/src/models/user.d.ts.map +0 -1
- package/src/models/user.js +0 -27
- package/src/models/user.js.map +0 -1
- package/src/mongo-application-concrete.d.ts +0 -32
- package/src/mongo-application-concrete.d.ts.map +0 -1
- package/src/mongo-application-concrete.js +0 -49
- package/src/mongo-application-concrete.js.map +0 -1
- package/src/plugins/mongo-database-plugin.d.ts +0 -115
- package/src/plugins/mongo-database-plugin.d.ts.map +0 -1
- package/src/plugins/mongo-database-plugin.js +0 -234
- package/src/plugins/mongo-database-plugin.js.map +0 -1
- package/src/routers/api.d.ts +0 -60
- package/src/routers/api.d.ts.map +0 -1
- package/src/routers/api.js +0 -116
- package/src/routers/api.js.map +0 -1
- package/src/schemas/email-token.d.ts +0 -65
- package/src/schemas/email-token.d.ts.map +0 -1
- package/src/schemas/email-token.js +0 -68
- package/src/schemas/email-token.js.map +0 -1
- package/src/schemas/index.d.ts +0 -8
- 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 -37
- package/src/schemas/mnemonic.d.ts.map +0 -1
- package/src/schemas/mnemonic.js +0 -41
- package/src/schemas/mnemonic.js.map +0 -1
- package/src/schemas/role.d.ts +0 -57
- package/src/schemas/role.d.ts.map +0 -1
- package/src/schemas/role.js +0 -102
- package/src/schemas/role.js.map +0 -1
- package/src/schemas/schema.d.ts +0 -62
- package/src/schemas/schema.d.ts.map +0 -1
- package/src/schemas/schema.js +0 -81
- package/src/schemas/schema.js.map +0 -1
- package/src/schemas/used-direct-login-token.d.ts +0 -49
- package/src/schemas/used-direct-login-token.d.ts.map +0 -1
- package/src/schemas/used-direct-login-token.js +0 -35
- package/src/schemas/used-direct-login-token.js.map +0 -1
- package/src/schemas/user-role.d.ts +0 -52
- package/src/schemas/user-role.d.ts.map +0 -1
- package/src/schemas/user-role.js +0 -67
- package/src/schemas/user-role.js.map +0 -1
- package/src/schemas/user.d.ts +0 -43
- package/src/schemas/user.d.ts.map +0 -1
- package/src/schemas/user.js +0 -214
- package/src/schemas/user.js.map +0 -1
- package/src/services/backup-code.d.ts +0 -120
- package/src/services/backup-code.d.ts.map +0 -1
- package/src/services/backup-code.js +0 -323
- package/src/services/backup-code.js.map +0 -1
- package/src/services/database-initialization.d.ts +0 -138
- package/src/services/database-initialization.d.ts.map +0 -1
- package/src/services/database-initialization.js +0 -913
- package/src/services/database-initialization.js.map +0 -1
- package/src/services/db-init-cache.d.ts +0 -18
- package/src/services/db-init-cache.d.ts.map +0 -1
- package/src/services/db-init-cache.js +0 -7
- package/src/services/db-init-cache.js.map +0 -1
- package/src/services/direct-login-token.d.ts +0 -28
- package/src/services/direct-login-token.d.ts.map +0 -1
- package/src/services/direct-login-token.js +0 -62
- package/src/services/direct-login-token.js.map +0 -1
- package/src/services/jwt.d.ts +0 -45
- package/src/services/jwt.d.ts.map +0 -1
- package/src/services/jwt.js +0 -105
- package/src/services/jwt.js.map +0 -1
- package/src/services/mnemonic.d.ts +0 -68
- package/src/services/mnemonic.d.ts.map +0 -1
- package/src/services/mnemonic.js +0 -120
- package/src/services/mnemonic.js.map +0 -1
- package/src/services/mongo-authentication-provider.d.ts +0 -27
- package/src/services/mongo-authentication-provider.d.ts.map +0 -1
- package/src/services/mongo-authentication-provider.js +0 -84
- package/src/services/mongo-authentication-provider.js.map +0 -1
- package/src/services/mongo-backup-code-store.d.ts +0 -40
- package/src/services/mongo-backup-code-store.d.ts.map +0 -1
- package/src/services/mongo-backup-code-store.js +0 -104
- package/src/services/mongo-backup-code-store.js.map +0 -1
- package/src/services/mongo-base.d.ts +0 -24
- package/src/services/mongo-base.d.ts.map +0 -1
- package/src/services/mongo-base.js +0 -28
- package/src/services/mongo-base.js.map +0 -1
- package/src/services/mongoose-collection.d.ts +0 -52
- package/src/services/mongoose-collection.d.ts.map +0 -1
- package/src/services/mongoose-collection.js +0 -326
- package/src/services/mongoose-collection.js.map +0 -1
- package/src/services/mongoose-database.d.ts +0 -64
- package/src/services/mongoose-database.d.ts.map +0 -1
- package/src/services/mongoose-database.js +0 -121
- package/src/services/mongoose-database.js.map +0 -1
- package/src/services/mongoose-document-store.d.ts +0 -109
- package/src/services/mongoose-document-store.d.ts.map +0 -1
- package/src/services/mongoose-document-store.js +0 -264
- package/src/services/mongoose-document-store.js.map +0 -1
- package/src/services/mongoose-session-adapter.d.ts +0 -39
- package/src/services/mongoose-session-adapter.d.ts.map +0 -1
- package/src/services/mongoose-session-adapter.js +0 -63
- package/src/services/mongoose-session-adapter.js.map +0 -1
- package/src/services/request-user.d.ts +0 -45
- package/src/services/request-user.d.ts.map +0 -1
- package/src/services/request-user.js +0 -90
- package/src/services/request-user.js.map +0 -1
- package/src/services/role.d.ts +0 -97
- package/src/services/role.d.ts.map +0 -1
- package/src/services/role.js +0 -289
- package/src/services/role.js.map +0 -1
- package/src/services/user.d.ts +0 -368
- package/src/services/user.d.ts.map +0 -1
- package/src/services/user.js +0 -1495
- package/src/services/user.js.map +0 -1
- package/src/transactions/index.d.ts +0 -2
- 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 -37
- package/src/transactions/transaction-manager.d.ts.map +0 -1
- package/src/transactions/transaction-manager.js +0 -50
- package/src/transactions/transaction-manager.js.map +0 -1
- package/src/types/mongoose-helpers.d.ts +0 -16
- package/src/types/mongoose-helpers.d.ts.map +0 -1
- package/src/types/mongoose-helpers.js +0 -8
- package/src/types/mongoose-helpers.js.map +0 -1
- package/src/utils/default-mongo-uri-validator.d.ts +0 -15
- package/src/utils/default-mongo-uri-validator.d.ts.map +0 -1
- package/src/utils/default-mongo-uri-validator.js +0 -46
- package/src/utils/default-mongo-uri-validator.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"model-mocks.mock.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-express-suite/src/__tests__/fixtures/model-mocks.mock.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { Environment } from '../../../src/environment';
|
|
2
|
-
import { IMongoApplication } from '../../../src/interfaces/mongo-application';
|
|
3
|
-
export declare function createApplicationMock(overrides?: Partial<IMongoApplication>, envOverrides?: Partial<Environment>): IMongoApplication;
|
|
4
|
-
/**
|
|
5
|
-
* Create a minimal IApplication mock suitable for router/middleware tests.
|
|
6
|
-
*/
|
|
7
|
-
export declare function createApplicationMock2(apiDistDir: string, reactDistDir: string, serverUrl?: string, overrides?: Partial<IMongoApplication>, envOverrides?: Partial<Environment>): IMongoApplication;
|
|
8
|
-
//# sourceMappingURL=application.mock.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"application.mock.d.ts","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-express-suite/src/__tests__/helpers/application.mock.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAG9E,wBAAgB,qBAAqB,CACnC,SAAS,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,EACtC,YAAY,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAClC,iBAAiB,CA+BnB;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,SAAS,GAAE,MAAgC,EAC3C,SAAS,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,EACtC,YAAY,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAClC,iBAAiB,CA2CnB"}
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createApplicationMock = createApplicationMock;
|
|
4
|
-
exports.createApplicationMock2 = createApplicationMock2;
|
|
5
|
-
const tslib_1 = require("tslib");
|
|
6
|
-
const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
|
|
7
|
-
const mongoose_types_1 = tslib_1.__importDefault(require("@digitaldefiance/mongoose-types"));
|
|
8
|
-
const constants_1 = require("../../../src/constants");
|
|
9
|
-
const container_1 = require("../../../src/container");
|
|
10
|
-
const plugins_1 = require("../../../src/plugins");
|
|
11
|
-
function createApplicationMock(overrides, envOverrides) {
|
|
12
|
-
const mockEnvironment = {
|
|
13
|
-
jwtSecret: new ecies_lib_1.SecureString('test-jwt-secret'),
|
|
14
|
-
mnemonicHmacSecret: new ecies_lib_1.SecureString('test-hmac-secret'),
|
|
15
|
-
mnemonicEncryptionKey: new ecies_lib_1.SecureString('test-encryption-key'),
|
|
16
|
-
timezone: { value: 'UTC' },
|
|
17
|
-
mongo: { useTransactions: false },
|
|
18
|
-
disableEmailSend: true,
|
|
19
|
-
devDatabase: true,
|
|
20
|
-
...overrides?.environment,
|
|
21
|
-
...envOverrides,
|
|
22
|
-
};
|
|
23
|
-
const defaultGetModel = (name) => ({});
|
|
24
|
-
return {
|
|
25
|
-
environment: mockEnvironment,
|
|
26
|
-
constants: constants_1.LocalhostConstants,
|
|
27
|
-
disableEmailSend: true,
|
|
28
|
-
db: overrides?.db || {},
|
|
29
|
-
database: overrides?.database ?? undefined,
|
|
30
|
-
authProvider: overrides?.authProvider ?? undefined,
|
|
31
|
-
ready: true,
|
|
32
|
-
async start() {
|
|
33
|
-
/* noop */
|
|
34
|
-
},
|
|
35
|
-
getModel: overrides?.getModel || defaultGetModel,
|
|
36
|
-
services: new container_1.ServiceContainer(),
|
|
37
|
-
plugins: new plugins_1.PluginManager(),
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Create a minimal IApplication mock suitable for router/middleware tests.
|
|
42
|
-
*/
|
|
43
|
-
function createApplicationMock2(apiDistDir, reactDistDir, serverUrl = 'http://localhost:3000', overrides, envOverrides) {
|
|
44
|
-
// minimal environment-like object with only fields used by constructors
|
|
45
|
-
const env = {
|
|
46
|
-
debug: false,
|
|
47
|
-
detailedDebug: false,
|
|
48
|
-
serverUrl: serverUrl,
|
|
49
|
-
disableEmailSend: true,
|
|
50
|
-
basePath: '/',
|
|
51
|
-
apiDistDir: apiDistDir,
|
|
52
|
-
reactDistDir: reactDistDir,
|
|
53
|
-
...envOverrides,
|
|
54
|
-
};
|
|
55
|
-
const application = {
|
|
56
|
-
get environment() {
|
|
57
|
-
return { ...env };
|
|
58
|
-
},
|
|
59
|
-
get db() {
|
|
60
|
-
return mongoose_types_1.default;
|
|
61
|
-
},
|
|
62
|
-
get database() {
|
|
63
|
-
return undefined;
|
|
64
|
-
},
|
|
65
|
-
get authProvider() {
|
|
66
|
-
return undefined;
|
|
67
|
-
},
|
|
68
|
-
get ready() {
|
|
69
|
-
return true;
|
|
70
|
-
},
|
|
71
|
-
async start() {
|
|
72
|
-
/* noop */
|
|
73
|
-
},
|
|
74
|
-
getModel() {
|
|
75
|
-
throw new Error('getModel not implemented in test mock');
|
|
76
|
-
},
|
|
77
|
-
services: new container_1.ServiceContainer(),
|
|
78
|
-
plugins: new plugins_1.PluginManager(),
|
|
79
|
-
constants: constants_1.LocalhostConstants,
|
|
80
|
-
disableEmailSend: true,
|
|
81
|
-
...overrides,
|
|
82
|
-
};
|
|
83
|
-
return application;
|
|
84
|
-
}
|
|
85
|
-
//# sourceMappingURL=application.mock.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"application.mock.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-express-suite/src/__tests__/helpers/application.mock.ts"],"names":[],"mappings":";;AAQA,sDAkCC;AAKD,wDAiDC;;AAhGD,0DAA0D;AAC1D,6FAA4E;AAC5E,sDAA4D;AAC5D,sDAA0D;AAG1D,kDAAqD;AAErD,SAAgB,qBAAqB,CACnC,SAAsC,EACtC,YAAmC;IAEnC,MAAM,eAAe,GAAG;QACtB,SAAS,EAAE,IAAI,wBAAY,CAAC,iBAAiB,CAAC;QAC9C,kBAAkB,EAAE,IAAI,wBAAY,CAAC,kBAAkB,CAAC;QACxD,qBAAqB,EAAE,IAAI,wBAAY,CAAC,qBAAqB,CAAC;QAC9D,QAAQ,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;QAC1B,KAAK,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE;QACjC,gBAAgB,EAAE,IAAI;QACtB,WAAW,EAAE,IAAI;QACjB,GAAG,SAAS,EAAE,WAAW;QACzB,GAAG,YAAY;KACD,CAAC;IAEjB,MAAM,eAAe,GAAG,CAAqB,IAAY,EAAY,EAAE,CACrE,CAAC,EAAE,CAAa,CAAC;IAEnB,OAAO;QACL,WAAW,EAAE,eAAe;QAC5B,SAAS,EAAE,8BAAkB;QAC7B,gBAAgB,EAAE,IAAI;QACtB,EAAE,EAAE,SAAS,EAAE,EAAE,IAAK,EAAsB;QAC5C,QAAQ,EAAG,SAAiB,EAAE,QAAQ,IAAI,SAAS;QACnD,YAAY,EAAG,SAAiB,EAAE,YAAY,IAAI,SAAS;QAC3D,KAAK,EAAE,IAAI;QACX,KAAK,CAAC,KAAK;YACT,UAAU;QACZ,CAAC;QACD,QAAQ,EAAE,SAAS,EAAE,QAAQ,IAAI,eAAe;QAChD,QAAQ,EAAE,IAAI,4BAAgB,EAAE;QAChC,OAAO,EAAE,IAAI,uBAAa,EAAE;KACR,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,SAAgB,sBAAsB,CACpC,UAAkB,EAClB,YAAoB,EACpB,YAAoB,uBAAuB,EAC3C,SAAsC,EACtC,YAAmC;IAEnC,wEAAwE;IACxE,MAAM,GAAG,GAAyB;QAChC,KAAK,EAAE,KAAK;QACZ,aAAa,EAAE,KAAK;QACpB,SAAS,EAAE,SAAS;QACpB,gBAAgB,EAAE,IAAI;QACtB,QAAQ,EAAE,GAAG;QACb,UAAU,EAAE,UAAU;QACtB,YAAY,EAAE,YAAY;QAC1B,GAAG,YAAY;KAChB,CAAC;IAEF,MAAM,WAAW,GAAsB;QACrC,IAAI,WAAW;YACb,OAAO,EAAE,GAAG,GAAG,EAAiB,CAAC;QACnC,CAAC;QACD,IAAI,EAAE;YACJ,OAAO,wBAAQ,CAAC;QAClB,CAAC;QACD,IAAI,QAAQ;YACV,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,YAAY;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,KAAK;YACP,OAAO,IAAI,CAAC;QACd,CAAC;QACD,KAAK,CAAC,KAAK;YACT,UAAU;QACZ,CAAC;QACD,QAAQ;YACN,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAC3D,CAAC;QACD,QAAQ,EAAE,IAAI,4BAAgB,EAAE;QAChC,OAAO,EAAE,IAAI,uBAAa,EAAE;QAC5B,SAAS,EAAE,8BAAkB;QAC7B,gBAAgB,EAAE,IAAI;QACtB,GAAI,SAAoB;KACJ,CAAC;IAEvB,OAAO,WAAW,CAAC;AACrB,CAAC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { Connection } from '@digitaldefiance/mongoose-types';
|
|
2
|
-
import { IFailableResult } from '@digitaldefiance/suite-core-lib';
|
|
3
|
-
import { HelmetOptions } from 'helmet';
|
|
4
|
-
import { BaseDocument } from '../../documents';
|
|
5
|
-
import { IApplication, IConstants, ICSPConfig, IFlexibleCSP, IServerInitResult } from '../../interfaces';
|
|
6
|
-
import { IMongoApplication } from '../../interfaces/mongo-application';
|
|
7
|
-
import { ITestEnvironment } from '../../interfaces/test-environment';
|
|
8
|
-
import { initMiddleware } from '../../middleware-utils';
|
|
9
|
-
import { AppRouter, BaseRouter } from '../../routers';
|
|
10
|
-
import { SchemaMap } from '../../types';
|
|
11
|
-
import type { PlatformID } from '@digitaldefiance/node-ecies-lib';
|
|
12
|
-
export declare function setupTestEnvironment<TID extends PlatformID = Buffer, TModelDocs extends Record<string, BaseDocument<never, TID>> = Record<string, BaseDocument<never, TID>>, TConstants extends IConstants = IConstants, TAppRouter extends AppRouter<TID> = AppRouter<TID>>(constants: TConstants, apiRouterFactory: (app: IApplication<TID>) => BaseRouter<TID>, schemaMapFactory: (connection: Connection) => SchemaMap<TID, TModelDocs>, appRouterFactory?: (apiRouter: BaseRouter<TID>) => TAppRouter, customInitMiddleware?: typeof initMiddleware, envLocation?: string, databaseInitFunction?: (application: IMongoApplication<TID>) => Promise<IFailableResult<IServerInitResult<TID>>>, initResultHashFunction?: (initResults: IServerInitResult<TID>) => string, cspConfig?: ICSPConfig | HelmetOptions | IFlexibleCSP): Promise<ITestEnvironment<TID>>;
|
|
13
|
-
//# sourceMappingURL=setup-test-env.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setup-test-env.d.ts","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-express-suite/src/__tests__/helpers/setup-test-env.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAEvC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EACL,YAAY,EACZ,UAAU,EACV,UAAU,EACV,YAAY,EACZ,iBAAiB,EAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAGtD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE,wBAAsB,oBAAoB,CACxC,GAAG,SAAS,UAAU,GAAG,MAAM,EAC/B,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,GAAG,MAAM,CAClE,MAAM,EACN,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,CACzB,EACD,UAAU,SAAS,UAAU,GAAG,UAAU,EAC1C,UAAU,SAAS,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,EAElD,SAAS,EAAE,UAAU,EACrB,gBAAgB,EAAE,CAAC,GAAG,EAAE,YAAY,CAAC,GAAG,CAAC,KAAK,UAAU,CAAC,GAAG,CAAC,EAC7D,gBAAgB,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,EACxE,gBAAgB,GAAE,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,CAAC,KAAK,UACV,EACxC,oBAAoB,GAAE,OAAO,cAA+B,EAC5D,WAAW,CAAC,EAAE,MAAM,EACpB,oBAAoB,CAAC,EAAE,CACrB,WAAW,EAAE,iBAAiB,CAAC,GAAG,CAAC,KAChC,OAAO,CAAC,eAAe,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EACrD,sBAAsB,CAAC,EAAE,CAAC,WAAW,EAAE,iBAAiB,CAAC,GAAG,CAAC,KAAK,MAAM,EACxE,SAAS,GAAE,UAAU,GAAG,aAAa,GAAG,YAWvC,GACA,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAmKhC"}
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.setupTestEnvironment = setupTestEnvironment;
|
|
4
|
-
const i18n_lib_1 = require("@digitaldefiance/i18n-lib");
|
|
5
|
-
const application_1 = require("../../application");
|
|
6
|
-
const environment_1 = require("../../environment");
|
|
7
|
-
const middleware_utils_1 = require("../../middleware-utils");
|
|
8
|
-
const routers_1 = require("../../routers");
|
|
9
|
-
const services_1 = require("../../services");
|
|
10
|
-
const mongo_database_plugin_1 = require("../../plugins/mongo-database-plugin");
|
|
11
|
-
async function setupTestEnvironment(constants, apiRouterFactory, schemaMapFactory, appRouterFactory = (apiRouter) => new routers_1.AppRouter(apiRouter), customInitMiddleware = middleware_utils_1.initMiddleware, envLocation, databaseInitFunction, initResultHashFunction, cspConfig = {
|
|
12
|
-
corsWhitelist: [],
|
|
13
|
-
csp: {
|
|
14
|
-
defaultSrc: [],
|
|
15
|
-
imgSrc: [],
|
|
16
|
-
connectSrc: [],
|
|
17
|
-
scriptSrc: [],
|
|
18
|
-
styleSrc: [],
|
|
19
|
-
fontSrc: [],
|
|
20
|
-
frameSrc: [],
|
|
21
|
-
},
|
|
22
|
-
}) {
|
|
23
|
-
// Make runtime deterministic for tests
|
|
24
|
-
process.env.NODE_ENV = 'test';
|
|
25
|
-
process.env['DEV_DATABASE'] = 'test';
|
|
26
|
-
// Increase libuv threadpool for concurrent pbkdf2 work
|
|
27
|
-
if (!process.env['UV_THREADPOOL_SIZE']) {
|
|
28
|
-
process.env['UV_THREADPOOL_SIZE'] = '16';
|
|
29
|
-
}
|
|
30
|
-
// Optimize MongoDB settings for test performance while maintaining reliability
|
|
31
|
-
if (!process.env['MONGO_MAX_POOL_SIZE']) {
|
|
32
|
-
process.env['MONGO_MAX_POOL_SIZE'] = '5';
|
|
33
|
-
}
|
|
34
|
-
if (!process.env['MONGO_MIN_POOL_SIZE']) {
|
|
35
|
-
process.env['MONGO_MIN_POOL_SIZE'] = '2';
|
|
36
|
-
}
|
|
37
|
-
if (!process.env['MONGO_SERVER_SELECTION_TIMEOUT_MS']) {
|
|
38
|
-
process.env['MONGO_SERVER_SELECTION_TIMEOUT_MS'] = '5000';
|
|
39
|
-
}
|
|
40
|
-
if (!process.env['MONGO_SOCKET_TIMEOUT_MS']) {
|
|
41
|
-
process.env['MONGO_SOCKET_TIMEOUT_MS'] = '15000';
|
|
42
|
-
}
|
|
43
|
-
if (!process.env['MONGO_TRANSACTION_TIMEOUT']) {
|
|
44
|
-
process.env['MONGO_TRANSACTION_TIMEOUT'] = '15000';
|
|
45
|
-
}
|
|
46
|
-
if (!process.env['MONGO_TRANSACTION_LOCK_REQUEST_TIMEOUT']) {
|
|
47
|
-
process.env['MONGO_TRANSACTION_LOCK_REQUEST_TIMEOUT'] = '8000';
|
|
48
|
-
}
|
|
49
|
-
if (!process.env['MONGO_TRANSACTION_RETRY_BASE_DELAY']) {
|
|
50
|
-
process.env['MONGO_TRANSACTION_RETRY_BASE_DELAY'] = '100';
|
|
51
|
-
}
|
|
52
|
-
// Disable transactions in test environment for better reliability
|
|
53
|
-
if (!process.env['MONGO_USE_TRANSACTIONS']) {
|
|
54
|
-
process.env['MONGO_USE_TRANSACTIONS'] = 'false';
|
|
55
|
-
}
|
|
56
|
-
// Ensure language is set to English for consistent test behavior
|
|
57
|
-
process.env.LANGUAGE = 'English (US)';
|
|
58
|
-
// Use a random high port to avoid conflicts
|
|
59
|
-
process.env['PORT'] = String(Math.floor(Math.random() * 10000) + 50000);
|
|
60
|
-
// Use unique database name for each test to avoid conflicts
|
|
61
|
-
const uniqueDbName = `test_${Date.now()}_${Math.floor(Math.random() * 10000)}`;
|
|
62
|
-
process.env['DEV_DATABASE'] = uniqueDbName;
|
|
63
|
-
// Reset global language context to English
|
|
64
|
-
const setAdminLanguage = (language) => {
|
|
65
|
-
const context = i18n_lib_1.GlobalActiveContext.getInstance();
|
|
66
|
-
context.setAdminLanguage(language);
|
|
67
|
-
};
|
|
68
|
-
setAdminLanguage('en-US');
|
|
69
|
-
const env = new environment_1.Environment(envLocation, true);
|
|
70
|
-
// Create the Application with MongoDatabasePlugin
|
|
71
|
-
const application = new application_1.Application(env, apiRouterFactory, cspConfig, constants, appRouterFactory, customInitMiddleware);
|
|
72
|
-
const mongoPlugin = new mongo_database_plugin_1.MongoDatabasePlugin({
|
|
73
|
-
schemaMapFactory,
|
|
74
|
-
databaseInitFunction: databaseInitFunction ??
|
|
75
|
-
services_1.DatabaseInitializationService.initUserDb.bind(services_1.DatabaseInitializationService),
|
|
76
|
-
initResultHashFunction: initResultHashFunction ??
|
|
77
|
-
services_1.DatabaseInitializationService.serverInitResultHash.bind(services_1.DatabaseInitializationService),
|
|
78
|
-
environment: env,
|
|
79
|
-
constants,
|
|
80
|
-
});
|
|
81
|
-
application.useDatabasePlugin(mongoPlugin);
|
|
82
|
-
// Create and start your app — this connects the DB, inits plugins,
|
|
83
|
-
// and runs initializeDevStore (which calls initUserDb) via the plugin.
|
|
84
|
-
try {
|
|
85
|
-
await application.start();
|
|
86
|
-
if (mongoPlugin.db.connection.db) {
|
|
87
|
-
const command = {
|
|
88
|
-
...(application.environment.mongo.setParameterSupported
|
|
89
|
-
? { setParameter: 1 }
|
|
90
|
-
: {}),
|
|
91
|
-
...(application.environment.mongo.useTransactions &&
|
|
92
|
-
application.environment.mongo.transactionLifetimeLimitSecondsSupported
|
|
93
|
-
? {
|
|
94
|
-
transactionLifetimeLimitSeconds: application.environment.mongo.transactionTimeout,
|
|
95
|
-
}
|
|
96
|
-
: {}),
|
|
97
|
-
...(application.environment.mongo.useTransactions &&
|
|
98
|
-
application.environment.mongo
|
|
99
|
-
.maxTransactionLockRequestTimeoutMillisSupported
|
|
100
|
-
? {
|
|
101
|
-
maxTransactionLockRequestTimeoutMillis: application.environment.mongo.transactionLockRequestTimeout,
|
|
102
|
-
}
|
|
103
|
-
: {}),
|
|
104
|
-
};
|
|
105
|
-
if (Object.keys(command).length > 0) {
|
|
106
|
-
await mongoPlugin.db.connection.db
|
|
107
|
-
.admin()
|
|
108
|
-
.command(command)
|
|
109
|
-
.catch(() => undefined);
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
catch (error) {
|
|
114
|
-
console.error('Failed to start application with MongoDB URI:', application.environment.mongo.uri);
|
|
115
|
-
console.error('Connection error:', error);
|
|
116
|
-
throw error;
|
|
117
|
-
}
|
|
118
|
-
// Ensure the test process uses the same JWT secret as the application
|
|
119
|
-
process.env.JWT_SECRET = application.environment.jwtSecret;
|
|
120
|
-
// Get the init result from the plugin (populated during start() → initializeDevStore)
|
|
121
|
-
const accountData = mongoPlugin.lastInitResult;
|
|
122
|
-
if (!accountData) {
|
|
123
|
-
throw new Error('Failed to initialize database for tests — no init result from plugin');
|
|
124
|
-
}
|
|
125
|
-
return {
|
|
126
|
-
application: application,
|
|
127
|
-
mongoServer: mongoPlugin.devDatabase,
|
|
128
|
-
mongoUri: application.environment.mongo.uri,
|
|
129
|
-
accountData,
|
|
130
|
-
dbName: application.environment.devDatabase,
|
|
131
|
-
};
|
|
132
|
-
}
|
|
133
|
-
//# sourceMappingURL=setup-test-env.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"setup-test-env.js","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-express-suite/src/__tests__/helpers/setup-test-env.ts"],"names":[],"mappings":";;AA2BA,oDAmMC;AA9ND,wDAImC;AAInC,mDAAgD;AAEhD,mDAAgD;AAUhD,6DAAwD;AACxD,2CAAsD;AACtD,6CAA+D;AAC/D,+EAA0E;AAInE,KAAK,UAAU,oBAAoB,CASxC,SAAqB,EACrB,gBAA6D,EAC7D,gBAAwE,EACxE,mBAA+D,CAAC,SAAS,EAAE,EAAE,CAC3E,IAAI,mBAAS,CAAC,SAAS,CAAe,EACxC,uBAA8C,iCAAc,EAC5D,WAAoB,EACpB,oBAEqD,EACrD,sBAAwE,EACxE,YAAuD;IACrD,aAAa,EAAE,EAAE;IACjB,GAAG,EAAE;QACH,UAAU,EAAE,EAAE;QACd,MAAM,EAAE,EAAE;QACV,UAAU,EAAE,EAAE;QACd,SAAS,EAAE,EAAE;QACb,QAAQ,EAAE,EAAE;QACZ,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,EAAE;KACb;CACF;IAED,uCAAuC;IACvC,OAAO,CAAC,GAAG,CAAC,QAAQ,GAAG,MAAM,CAAC;IAC9B,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC;IACrC,uDAAuD;IACvD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,GAAG,IAAI,CAAC;IAC3C,CAAC;IAED,+EAA+E;IAC/E,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,GAAG,GAAG,CAAC;IAC3C,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,GAAG,GAAG,CAAC;IAC3C,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,EAAE,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,GAAG,MAAM,CAAC;IAC5D,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,EAAE,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,GAAG,OAAO,CAAC;IACnD,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,EAAE,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,GAAG,OAAO,CAAC;IACrD,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,EAAE,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,GAAG,MAAM,CAAC;IACjE,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,EAAE,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,GAAG,KAAK,CAAC;IAC5D,CAAC;IACD,kEAAkE;IAClE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,EAAE,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,GAAG,OAAO,CAAC;IAClD,CAAC;IAED,iEAAiE;IACjE,OAAO,CAAC,GAAG,CAAC,QAAQ,GAAG,cAAc,CAAC;IAEtC,4CAA4C;IAC5C,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;IAExE,4DAA4D;IAC5D,MAAM,YAAY,GAAG,QAAQ,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,KAAK,CACnD,IAAI,CAAC,MAAM,EAAE,GAAG,KAAK,CACtB,EAAE,CAAC;IACJ,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,GAAG,YAAY,CAAC;IAE3C,2CAA2C;IAC3C,MAAM,gBAAgB,GAAG,CAAC,QAA0B,EAAE,EAAE;QACtD,MAAM,OAAO,GAAG,8BAAmB,CAAC,WAAW,EAG5C,CAAC;QACJ,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC,CAAC;IACF,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAE1B,MAAM,GAAG,GAAG,IAAI,yBAAW,CAAM,WAAW,EAAE,IAAI,CAAC,CAAC;IAEpD,kDAAkD;IAClD,MAAM,WAAW,GAAG,IAAI,yBAAW,CAMjC,GAAG,EACH,gBAAgB,EAChB,SAAS,EACT,SAAS,EACT,gBAAgB,EAChB,oBAAoB,CACrB,CAAC;IAEF,MAAM,WAAW,GAAG,IAAI,2CAAmB,CAKzC;QACA,gBAAgB;QAChB,oBAAoB,EAClB,oBAAoB;YACnB,wCAA6B,CAAC,UAAU,CAAC,IAAI,CAC5C,wCAA6B,CAGuB;QACxD,sBAAsB,EACpB,sBAAsB;YACrB,wCAA6B,CAAC,oBAAoB,CAAC,IAAI,CACtD,wCAA6B,CACsB;QACvD,WAAW,EAAE,GAAG;QAChB,SAAS;KACV,CAAC,CAAC;IAEH,WAAW,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAE3C,mEAAmE;IACnE,uEAAuE;IACvE,IAAI,CAAC;QACH,MAAM,WAAW,CAAC,KAAK,EAAE,CAAC;QAE1B,IAAI,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;YACjC,MAAM,OAAO,GAAG;gBACd,GAAG,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,qBAAqB;oBACrD,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;oBACrB,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,eAAe;oBACjD,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,wCAAwC;oBACpE,CAAC,CAAC;wBACE,+BAA+B,EAC7B,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,kBAAkB;qBACnD;oBACH,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,eAAe;oBACjD,WAAW,CAAC,WAAW,CAAC,KAAK;yBAC1B,+CAA+C;oBAChD,CAAC,CAAC;wBACE,sCAAsC,EACpC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,6BAA6B;qBAC9D;oBACH,CAAC,CAAC,EAAE,CAAC;aACR,CAAC;YAEF,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpC,MAAM,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE;qBAC/B,KAAK,EAAE;qBACP,OAAO,CAAC,OAAO,CAAC;qBAChB,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CACX,+CAA+C,EAC/C,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAClC,CAAC;QACF,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;QAC1C,MAAM,KAAK,CAAC;IACd,CAAC;IAED,sEAAsE;IACtE,OAAO,CAAC,GAAG,CAAC,UAAU,GAAG,WAAW,CAAC,WAAW,CAAC,SAAS,CAAC;IAE3D,sFAAsF;IACtF,MAAM,WAAW,GAAG,WAAW,CAAC,cAEnB,CAAC;IACd,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,sEAAsE,CACvE,CAAC;IACJ,CAAC;IAED,OAAO;QACL,WAAW,EAAE,WAA8D;QAC3E,WAAW,EAAE,WAAW,CAAC,WAAY;QACrC,QAAQ,EAAE,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,GAAI;QAC5C,WAAW;QACX,MAAM,EAAE,WAAW,CAAC,WAAW,CAAC,WAAY;KAC7C,CAAC;AACJ,CAAC"}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview Application builder for fluent application construction.
|
|
3
|
-
* Provides builder pattern for creating Application instances with MongoDatabasePlugin.
|
|
4
|
-
* @module builders/application-builder
|
|
5
|
-
*/
|
|
6
|
-
import mongoose from '@digitaldefiance/mongoose-types';
|
|
7
|
-
import { IFailableResult } from '@digitaldefiance/suite-core-lib';
|
|
8
|
-
import { HelmetOptions } from 'helmet';
|
|
9
|
-
import { Application } from '../application';
|
|
10
|
-
import { BaseDocument } from '../documents';
|
|
11
|
-
import { Environment } from '../environment';
|
|
12
|
-
import { IApplication, ICSPConfig, IServerInitResult } from '../interfaces';
|
|
13
|
-
import { IConstants } from '../interfaces/constants';
|
|
14
|
-
import { IFlexibleCSP } from '../interfaces/flexible-csp';
|
|
15
|
-
import { IMongoApplication } from '../interfaces/mongo-application';
|
|
16
|
-
import { initMiddleware } from '../middleware-utils';
|
|
17
|
-
import { AppRouter } from '../routers/app';
|
|
18
|
-
import { BaseRouter } from '../routers/base';
|
|
19
|
-
import { SchemaMap } from '../types';
|
|
20
|
-
import type { PlatformID } from '@digitaldefiance/node-ecies-lib';
|
|
21
|
-
/**
|
|
22
|
-
* Builder for constructing Application instances with MongoDatabasePlugin using a fluent API.
|
|
23
|
-
*
|
|
24
|
-
* @template TID - Platform ID type
|
|
25
|
-
* @template TModelDocs - Model documents type
|
|
26
|
-
* @template TInitResults - Initialization results type
|
|
27
|
-
* @template TConstants - Constants type (defaults to IConstants)
|
|
28
|
-
*/
|
|
29
|
-
export declare class ApplicationBuilder<TID extends PlatformID, TModelDocs extends Record<string, BaseDocument<never, TID>>, TInitResults extends IServerInitResult<TID>, TConstants extends IConstants = IConstants> {
|
|
30
|
-
private environment?;
|
|
31
|
-
private apiRouterFactory?;
|
|
32
|
-
private appRouterFactory?;
|
|
33
|
-
private schemaMapFactory?;
|
|
34
|
-
private databaseInitFunction?;
|
|
35
|
-
private initResultHashFunction?;
|
|
36
|
-
private cspConfig?;
|
|
37
|
-
private constants?;
|
|
38
|
-
private customInitMiddleware?;
|
|
39
|
-
withEnvironment(env: Environment<TID>): this;
|
|
40
|
-
withApiRouter(factory: (app: IApplication<TID>) => BaseRouter<TID>): this;
|
|
41
|
-
withAppRouter(factory: (apiRouter: BaseRouter<TID>) => AppRouter<TID>): this;
|
|
42
|
-
withSchemaMap(factory: (connection: mongoose.Connection) => SchemaMap<TID, TModelDocs>): this;
|
|
43
|
-
withDatabaseInit(initFn: (app: IMongoApplication<TID>) => Promise<IFailableResult<TInitResults>>, hashFn: (results: TInitResults) => string): this;
|
|
44
|
-
withCSP(config: ICSPConfig | HelmetOptions | IFlexibleCSP): this;
|
|
45
|
-
withConstants(constants: TConstants): this;
|
|
46
|
-
withMiddleware(middleware: typeof initMiddleware): this;
|
|
47
|
-
/**
|
|
48
|
-
* Build an Application with a MongoDatabasePlugin pre-registered.
|
|
49
|
-
* Returns the Application instance with the plugin already wired up.
|
|
50
|
-
*/
|
|
51
|
-
build(): Application<TID, Environment<TID>, TConstants, AppRouter<TID>>;
|
|
52
|
-
}
|
|
53
|
-
//# sourceMappingURL=application-builder.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"application-builder.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/builders/application-builder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,QAAQ,MAAM,iCAAiC,CAAC;AACvD,OAAO,EACL,eAAe,EAGhB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE;;;;;;;GAOG;AACH,qBAAa,kBAAkB,CAC7B,GAAG,SAAS,UAAU,EACtB,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,EAC3D,YAAY,SAAS,iBAAiB,CAAC,GAAG,CAAC,EAC3C,UAAU,SAAS,UAAU,GAAG,UAAU;IAE1C,OAAO,CAAC,WAAW,CAAC,CAAmB;IACvC,OAAO,CAAC,gBAAgB,CAAC,CAA8C;IACvE,OAAO,CAAC,gBAAgB,CAAC,CAAiD;IAC1E,OAAO,CAAC,gBAAgB,CAAC,CAEO;IAChC,OAAO,CAAC,oBAAoB,CAAC,CAEe;IAC5C,OAAO,CAAC,sBAAsB,CAAC,CAAoC;IACnE,OAAO,CAAC,SAAS,CAAC,CAA4C;IAC9D,OAAO,CAAC,SAAS,CAAC,CAAa;IAC/B,OAAO,CAAC,oBAAoB,CAAC,CAAwB;IAErD,eAAe,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,IAAI;IAK5C,aAAa,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,YAAY,CAAC,GAAG,CAAC,KAAK,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI;IAKzE,aAAa,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI;IAK5E,aAAa,CACX,OAAO,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,KAAK,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,GACvE,IAAI;IAKP,gBAAgB,CACd,MAAM,EAAE,CACN,GAAG,EAAE,iBAAiB,CAAC,GAAG,CAAC,KACxB,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,EAC3C,MAAM,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK,MAAM,GACxC,IAAI;IAMP,OAAO,CAAC,MAAM,EAAE,UAAU,GAAG,aAAa,GAAG,YAAY,GAAG,IAAI;IAKhE,aAAa,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI;IAK1C,cAAc,CAAC,UAAU,EAAE,OAAO,cAAc,GAAG,IAAI;IAKvD;;;OAGG;IACH,KAAK,IAAI,WAAW,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;CAqDxE"}
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* @fileoverview Application builder for fluent application construction.
|
|
4
|
-
* Provides builder pattern for creating Application instances with MongoDatabasePlugin.
|
|
5
|
-
* @module builders/application-builder
|
|
6
|
-
*/
|
|
7
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
-
exports.ApplicationBuilder = void 0;
|
|
9
|
-
const suite_core_lib_1 = require("@digitaldefiance/suite-core-lib");
|
|
10
|
-
const application_1 = require("../application");
|
|
11
|
-
const mongo_database_plugin_1 = require("../plugins/mongo-database-plugin");
|
|
12
|
-
/**
|
|
13
|
-
* Builder for constructing Application instances with MongoDatabasePlugin using a fluent API.
|
|
14
|
-
*
|
|
15
|
-
* @template TID - Platform ID type
|
|
16
|
-
* @template TModelDocs - Model documents type
|
|
17
|
-
* @template TInitResults - Initialization results type
|
|
18
|
-
* @template TConstants - Constants type (defaults to IConstants)
|
|
19
|
-
*/
|
|
20
|
-
class ApplicationBuilder {
|
|
21
|
-
environment;
|
|
22
|
-
apiRouterFactory;
|
|
23
|
-
appRouterFactory;
|
|
24
|
-
schemaMapFactory;
|
|
25
|
-
databaseInitFunction;
|
|
26
|
-
initResultHashFunction;
|
|
27
|
-
cspConfig;
|
|
28
|
-
constants;
|
|
29
|
-
customInitMiddleware;
|
|
30
|
-
withEnvironment(env) {
|
|
31
|
-
this.environment = env;
|
|
32
|
-
return this;
|
|
33
|
-
}
|
|
34
|
-
withApiRouter(factory) {
|
|
35
|
-
this.apiRouterFactory = factory;
|
|
36
|
-
return this;
|
|
37
|
-
}
|
|
38
|
-
withAppRouter(factory) {
|
|
39
|
-
this.appRouterFactory = factory;
|
|
40
|
-
return this;
|
|
41
|
-
}
|
|
42
|
-
withSchemaMap(factory) {
|
|
43
|
-
this.schemaMapFactory = factory;
|
|
44
|
-
return this;
|
|
45
|
-
}
|
|
46
|
-
withDatabaseInit(initFn, hashFn) {
|
|
47
|
-
this.databaseInitFunction = initFn;
|
|
48
|
-
this.initResultHashFunction = hashFn;
|
|
49
|
-
return this;
|
|
50
|
-
}
|
|
51
|
-
withCSP(config) {
|
|
52
|
-
this.cspConfig = config;
|
|
53
|
-
return this;
|
|
54
|
-
}
|
|
55
|
-
withConstants(constants) {
|
|
56
|
-
this.constants = constants;
|
|
57
|
-
return this;
|
|
58
|
-
}
|
|
59
|
-
withMiddleware(middleware) {
|
|
60
|
-
this.customInitMiddleware = middleware;
|
|
61
|
-
return this;
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Build an Application with a MongoDatabasePlugin pre-registered.
|
|
65
|
-
* Returns the Application instance with the plugin already wired up.
|
|
66
|
-
*/
|
|
67
|
-
build() {
|
|
68
|
-
if (!this.environment)
|
|
69
|
-
throw new suite_core_lib_1.TranslatableSuiteError(suite_core_lib_1.SuiteCoreStringKey.Error_EnvironmentIsRequired);
|
|
70
|
-
if (!this.apiRouterFactory)
|
|
71
|
-
throw new suite_core_lib_1.TranslatableSuiteError(suite_core_lib_1.SuiteCoreStringKey.Error_ApiRouterFactoryIsRequired);
|
|
72
|
-
if (!this.schemaMapFactory)
|
|
73
|
-
throw new suite_core_lib_1.TranslatableSuiteError(suite_core_lib_1.SuiteCoreStringKey.Error_SchemaMapFactoryIsRequired);
|
|
74
|
-
if (!this.databaseInitFunction)
|
|
75
|
-
throw new suite_core_lib_1.TranslatableSuiteError(suite_core_lib_1.SuiteCoreStringKey.Error_DatabaseInitFunctionIsRequired);
|
|
76
|
-
if (!this.initResultHashFunction)
|
|
77
|
-
throw new suite_core_lib_1.TranslatableSuiteError(suite_core_lib_1.SuiteCoreStringKey.Error_InitResultHashFunctionIsRequired);
|
|
78
|
-
const app = new application_1.Application(this.environment, this.apiRouterFactory, this.cspConfig, this.constants, this.appRouterFactory, this.customInitMiddleware);
|
|
79
|
-
const mongoPlugin = new mongo_database_plugin_1.MongoDatabasePlugin({
|
|
80
|
-
schemaMapFactory: this.schemaMapFactory,
|
|
81
|
-
databaseInitFunction: this.databaseInitFunction,
|
|
82
|
-
initResultHashFunction: this.initResultHashFunction,
|
|
83
|
-
environment: this.environment,
|
|
84
|
-
constants: this.constants,
|
|
85
|
-
});
|
|
86
|
-
app.useDatabasePlugin(mongoPlugin);
|
|
87
|
-
return app;
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
exports.ApplicationBuilder = ApplicationBuilder;
|
|
91
|
-
//# sourceMappingURL=application-builder.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"application-builder.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/builders/application-builder.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAGH,oEAIyC;AAEzC,gDAA6C;AAU7C,4EAAuE;AAIvE;;;;;;;GAOG;AACH,MAAa,kBAAkB;IAMrB,WAAW,CAAoB;IAC/B,gBAAgB,CAA+C;IAC/D,gBAAgB,CAAkD;IAClE,gBAAgB,CAEQ;IACxB,oBAAoB,CAEgB;IACpC,sBAAsB,CAAqC;IAC3D,SAAS,CAA6C;IACtD,SAAS,CAAc;IACvB,oBAAoB,CAAyB;IAErD,eAAe,CAAC,GAAqB;QACnC,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,OAAoD;QAChE,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,OAAuD;QACnE,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CACX,OAAwE;QAExE,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,gBAAgB,CACd,MAE2C,EAC3C,MAAyC;QAEzC,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC;QACnC,IAAI,CAAC,sBAAsB,GAAG,MAAM,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,MAAiD;QACvD,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,SAAqB;QACjC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,cAAc,CAAC,UAAiC;QAC9C,IAAI,CAAC,oBAAoB,GAAG,UAAU,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,KAAK;QACH,IAAI,CAAC,IAAI,CAAC,WAAW;YACnB,MAAM,IAAI,uCAAsB,CAC9B,mCAAkB,CAAC,2BAA2B,CAC/C,CAAC;QACJ,IAAI,CAAC,IAAI,CAAC,gBAAgB;YACxB,MAAM,IAAI,uCAAsB,CAC9B,mCAAkB,CAAC,gCAAgC,CACpD,CAAC;QACJ,IAAI,CAAC,IAAI,CAAC,gBAAgB;YACxB,MAAM,IAAI,uCAAsB,CAC9B,mCAAkB,CAAC,gCAAgC,CACpD,CAAC;QACJ,IAAI,CAAC,IAAI,CAAC,oBAAoB;YAC5B,MAAM,IAAI,uCAAsB,CAC9B,mCAAkB,CAAC,oCAAoC,CACxD,CAAC;QACJ,IAAI,CAAC,IAAI,CAAC,sBAAsB;YAC9B,MAAM,IAAI,uCAAsB,CAC9B,mCAAkB,CAAC,sCAAsC,CAC1D,CAAC;QAEJ,MAAM,GAAG,GAAG,IAAI,yBAAW,CAMzB,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,gBAAgB,EACrB,IAAI,CAAC,oBAAoB,CAC1B,CAAC;QAEF,MAAM,WAAW,GAAG,IAAI,2CAAmB,CAKzC;YACA,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;YACnD,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC,CAAC;QAEH,GAAG,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAEnC,OAAO,GAAG,CAAC;IACb,CAAC;CACF;AA7HD,gDA6HC"}
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview User controller handling authentication, registration, and user management endpoints.
|
|
3
|
-
* Provides comprehensive user operations including login, password management, and settings.
|
|
4
|
-
* @module controllers/user
|
|
5
|
-
*/
|
|
6
|
-
import { CoreLanguageCode } from '@digitaldefiance/i18n-lib';
|
|
7
|
-
import { Member as BackendMember, ECIESService, PlatformID } from '@digitaldefiance/node-ecies-lib';
|
|
8
|
-
import { ITokenRole, ITokenUser, IUserBase } from '@digitaldefiance/suite-core-lib';
|
|
9
|
-
import type { NextFunction, Request, Response } from 'express';
|
|
10
|
-
import { DecoratorBaseController } from '../decorators/base-controller';
|
|
11
|
-
import { BaseDocument } from '../documents';
|
|
12
|
-
import { UserDocument } from '../documents/user';
|
|
13
|
-
import { Environment } from '../environment';
|
|
14
|
-
import { IApiChallengeResponse, IApiCodeCountResponse, IApiLoginResponse, IApiMessageResponse, IApiMnemonicResponse, IApiRegistrationResponse, IApiRequestUserResponse, IApiUserSettingsResponse } from '../interfaces';
|
|
15
|
-
import { IApiBackupCodesResponse } from '../interfaces/api-responses/backup-codes-response';
|
|
16
|
-
import type { IMongoApplication } from '../interfaces/mongo-application';
|
|
17
|
-
import { IConstants } from '../interfaces/constants';
|
|
18
|
-
import { IStatusCodeResponse } from '../interfaces/status-code-response';
|
|
19
|
-
import { BackupCodeService } from '../services/backup-code';
|
|
20
|
-
import { JwtService } from '../services/jwt';
|
|
21
|
-
import { RoleService } from '../services/role';
|
|
22
|
-
import { UserService } from '../services/user';
|
|
23
|
-
import { ApiErrorResponse } from '../types';
|
|
24
|
-
/**
|
|
25
|
-
* User controller handling all user-related API endpoints.
|
|
26
|
-
* Manages authentication, registration, password operations, settings, and backup codes.
|
|
27
|
-
* @template TID Platform ID type
|
|
28
|
-
* @template TDate Date type
|
|
29
|
-
* @template TLanguage Site language string type
|
|
30
|
-
* @template TAccountStatus Account status string type
|
|
31
|
-
* @template TUser User base type
|
|
32
|
-
* @template TTokenRole Token role type
|
|
33
|
-
* @template TTokenUser Token user type
|
|
34
|
-
* @template TApplication Application type
|
|
35
|
-
*/
|
|
36
|
-
export declare class UserController<TID extends PlatformID = Buffer, TDate extends Date = Date, TLanguage extends CoreLanguageCode = CoreLanguageCode, TAccountStatus extends string = string, TUser extends IUserBase<TID, TDate, TLanguage, TAccountStatus> = IUserBase<TID, TDate, TLanguage, TAccountStatus>, TTokenRole extends ITokenRole<TID, TDate> = ITokenRole<TID, TDate>, TTokenUser extends ITokenUser = ITokenUser, TApplication extends IMongoApplication<TID> = IMongoApplication<TID>> extends DecoratorBaseController<TLanguage, TID, TApplication> {
|
|
37
|
-
protected readonly userService: UserService<UserDocument, TID, TDate, TLanguage, TAccountStatus, Environment<TID>, IConstants, BaseDocument<UserDocument, TID>, TUser, TTokenRole, TApplication>;
|
|
38
|
-
protected readonly jwtService: JwtService<TID, TDate, TTokenRole, TTokenUser, TApplication>;
|
|
39
|
-
protected readonly backupCodeService: BackupCodeService<TID, TDate, TTokenRole, TApplication>;
|
|
40
|
-
protected readonly roleService: RoleService<TID, TDate, TTokenRole>;
|
|
41
|
-
protected readonly eciesService: ECIESService<TID>;
|
|
42
|
-
protected readonly systemUser: BackendMember<TID>;
|
|
43
|
-
constructor(application: TApplication, jwtService: JwtService<TID, TDate, TTokenRole, TTokenUser, TApplication>, userService: UserService<any, TID, TDate, TLanguage, TAccountStatus, any, any, any, TUser, TTokenRole, TApplication>, backupCodeService: BackupCodeService<TID, TDate, TTokenRole, TApplication>, roleService: RoleService<TID, TDate, TTokenRole>, eciesService: ECIESService<TID>);
|
|
44
|
-
tokenVerifiedResponse(req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiRequestUserResponse | ApiErrorResponse>>;
|
|
45
|
-
refreshToken(req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiLoginResponse | ApiErrorResponse>>;
|
|
46
|
-
register(req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiRegistrationResponse | ApiErrorResponse>>;
|
|
47
|
-
completeAccountVerification(_req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiMessageResponse | ApiErrorResponse>>;
|
|
48
|
-
setLanguage(req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiRequestUserResponse | ApiErrorResponse>>;
|
|
49
|
-
setDarkMode(req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiRequestUserResponse | ApiErrorResponse>>;
|
|
50
|
-
getSettings(req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiUserSettingsResponse | ApiErrorResponse>>;
|
|
51
|
-
updateSettings(req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiRequestUserResponse | ApiErrorResponse>>;
|
|
52
|
-
getBackupCodeCount(req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiCodeCountResponse | ApiErrorResponse>>;
|
|
53
|
-
resetBackupCodes(req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiBackupCodesResponse | ApiErrorResponse>>;
|
|
54
|
-
recoverMnemonic(req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiMnemonicResponse | ApiErrorResponse>>;
|
|
55
|
-
changePassword(req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiMessageResponse | ApiErrorResponse>>;
|
|
56
|
-
requestDirectLogin(_req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiChallengeResponse | ApiErrorResponse>>;
|
|
57
|
-
directLoginChallenge(req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiLoginResponse | ApiErrorResponse>>;
|
|
58
|
-
requestEmailLogin(_req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiMessageResponse | ApiErrorResponse>>;
|
|
59
|
-
emailLoginChallenge(req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiLoginResponse | ApiErrorResponse>>;
|
|
60
|
-
resendVerification(_req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiMessageResponse | ApiErrorResponse>>;
|
|
61
|
-
useBackupCodeLogin(_req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiLoginResponse | ApiErrorResponse>>;
|
|
62
|
-
forgotPassword(_req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiMessageResponse | ApiErrorResponse>>;
|
|
63
|
-
verifyResetToken(req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiMessageResponse | ApiErrorResponse>>;
|
|
64
|
-
resetPassword(_req: Request, _res: Response, _next: NextFunction): Promise<IStatusCodeResponse<IApiMessageResponse | ApiErrorResponse>>;
|
|
65
|
-
}
|
|
66
|
-
//# sourceMappingURL=user.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/controllers/user.ts"],"names":[],"mappings":"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"}
|