mongodb-dynamic-api 4.24.1 → 5.0.0
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/CHANGELOG.md +128 -0
- package/README.md +79 -2
- package/codemods/migrate-v5/cli.d.ts +3 -0
- package/codemods/migrate-v5/cli.js +38 -0
- package/codemods/migrate-v5/cli.js.map +1 -0
- package/codemods/migrate-v5/migrate-v5.d.ts +18 -0
- package/codemods/migrate-v5/migrate-v5.js +258 -0
- package/codemods/migrate-v5/migrate-v5.js.map +1 -0
- package/codemods/migrate-v5/removed-symbols.d.ts +7 -0
- package/codemods/migrate-v5/removed-symbols.js +122 -0
- package/codemods/migrate-v5/removed-symbols.js.map +1 -0
- package/package.json +44 -55
- package/schematics/resource/files/__name@dasherize__.entity.ts.template +3 -3
- package/schematics.tsbuildinfo +1 -1
- package/src/adapters/socket-adapter.js +5 -6
- package/src/adapters/socket-adapter.js.map +1 -1
- package/src/builders/route-decorators/auth-decorators.builder.d.ts +1 -1
- package/src/builders/route-decorators/route-decorators.builder.d.ts +2 -1
- package/src/builders/route-decorators/route-decorators.builder.js +5 -4
- package/src/builders/route-decorators/route-decorators.builder.js.map +1 -1
- package/src/decorators/entity-exists.decorator.js +2 -2
- package/src/decorators/entity-exists.decorator.js.map +1 -1
- package/src/decorators/index.d.ts +2 -5
- package/src/decorators/index.js +4 -5
- package/src/decorators/index.js.map +1 -1
- package/src/decorators/is-unique.decorator.js +2 -2
- package/src/decorators/is-unique.decorator.js.map +1 -1
- package/src/decorators/schema.decorator.d.ts +5 -0
- package/src/decorators/schema.decorator.js +15 -0
- package/src/decorators/schema.decorator.js.map +1 -0
- package/src/dtos/index.d.ts +0 -4
- package/src/dtos/index.js +0 -4
- package/src/dtos/index.js.map +1 -1
- package/src/dynamic-api.module.d.ts +1 -1
- package/src/dynamic-api.module.js +25 -20
- package/src/dynamic-api.module.js.map +1 -1
- package/src/gateways/base.gateway.js +9 -8
- package/src/gateways/base.gateway.js.map +1 -1
- package/src/gateways/dynamic-api-broadcast.gateway.d.ts +2 -2
- package/src/gateways/dynamic-api-broadcast.gateway.js +5 -5
- package/src/gateways/dynamic-api-broadcast.gateway.js.map +1 -1
- package/src/guards/base-policies.guard.d.ts +1 -1
- package/src/guards/base-policies.guard.js +5 -5
- package/src/guards/base-policies.guard.js.map +1 -1
- package/src/guards/dynamic-api-jwt-auth.guard.d.ts +1 -1
- package/src/guards/dynamic-api-jwt-auth.guard.js +7 -4
- package/src/guards/dynamic-api-jwt-auth.guard.js.map +1 -1
- package/src/guards/jwt-socket.guard.d.ts +1 -1
- package/src/guards/jwt-socket.guard.js +9 -10
- package/src/guards/jwt-socket.guard.js.map +1 -1
- package/src/helpers/event-registry.store.js +2 -2
- package/src/helpers/event-registry.store.js.map +1 -1
- package/src/helpers/index-sync.helper.js +4 -4
- package/src/helpers/index-sync.helper.js.map +1 -1
- package/src/helpers/index.d.ts +3 -21
- package/src/helpers/index.js +6 -21
- package/src/helpers/index.js.map +1 -1
- package/src/helpers/mint-token-pair.helper.js +11 -12
- package/src/helpers/mint-token-pair.helper.js.map +1 -1
- package/src/helpers/mixin-data.helper.d.ts +2 -2
- package/src/helpers/mixin-data.helper.js +2 -2
- package/src/helpers/mixin-data.helper.js.map +1 -1
- package/src/helpers/paging-presenter-warning.helper.js +2 -2
- package/src/helpers/paging-presenter-warning.helper.js.map +1 -1
- package/src/helpers/repository.helper.js +2 -2
- package/src/helpers/repository.helper.js.map +1 -1
- package/src/helpers/route-decorators.helper.d.ts +1 -1
- package/src/helpers/schema.helper.js.map +1 -1
- package/src/helpers/socket-config.helper.d.ts +0 -1
- package/src/helpers/socket-config.helper.js +9 -19
- package/src/helpers/socket-config.helper.js.map +1 -1
- package/src/helpers/swagger-config.helper.d.ts +2 -2
- package/src/helpers/swagger-config.helper.js.map +1 -1
- package/src/helpers/validation-config.helper.js.map +1 -1
- package/src/helpers/versioning-config.helper.js.map +1 -1
- package/src/index.d.ts +0 -9
- package/src/index.js +0 -9
- package/src/index.js.map +1 -1
- package/src/interceptors/dynamic-api-cache.interceptor.d.ts +1 -1
- package/src/interceptors/dynamic-api-cache.interceptor.js +4 -0
- package/src/interceptors/dynamic-api-cache.interceptor.js.map +1 -1
- package/src/interfaces/dynamic-api-options.interface.d.ts +2 -2
- package/src/interfaces/dynamic-api-route-config.interface.d.ts +1 -2
- package/src/interfaces/dynamic-api-route-config.interface.js.map +1 -1
- package/src/interfaces/dynamic-api-schema-options.interface.d.ts +2 -3
- package/src/interfaces/dynamic-api-service-before-save-callback.interface.d.ts +1 -15
- package/src/interfaces/dynamic-api-service-callback.interface.d.ts +1 -3
- package/src/interfaces/dynamic-api-service-provider.interface.d.ts +1 -2
- package/src/interfaces/dynamic-api-swagger-options.type.d.ts +1 -3
- package/src/interfaces/index.d.ts +4 -7
- package/src/interfaces/index.js +0 -7
- package/src/interfaces/index.js.map +1 -1
- package/src/logger/index.d.ts +1 -1
- package/src/logger/index.js +0 -15
- package/src/logger/index.js.map +1 -1
- package/src/mixins/policies-guard.mixin.d.ts +2 -1
- package/src/mixins/policies-guard.mixin.js +3 -3
- package/src/mixins/policies-guard.mixin.js.map +1 -1
- package/src/models/base-entity.model.js.map +1 -1
- package/src/models/soft-deletable-entity.model.js.map +1 -1
- package/src/modules/auth/auth-broadcast.helper.js +2 -2
- package/src/modules/auth/auth-broadcast.helper.js.map +1 -1
- package/src/modules/auth/auth.helper.d.ts +3 -3
- package/src/modules/auth/auth.helper.js +12 -11
- package/src/modules/auth/auth.helper.js.map +1 -1
- package/src/modules/auth/auth.module.js +15 -11
- package/src/modules/auth/auth.module.js.map +1 -1
- package/src/modules/auth/guards/jwt-socket-auth/jwt-socket-auth.guard.d.ts +1 -1
- package/src/modules/auth/guards/jwt-socket-auth/jwt-socket-auth.guard.js +7 -8
- package/src/modules/auth/guards/jwt-socket-auth/jwt-socket-auth.guard.js.map +1 -1
- package/src/modules/auth/guards/jwt-socket-refresh/jwt-socket-refresh.guard.js +4 -4
- package/src/modules/auth/guards/jwt-socket-refresh/jwt-socket-refresh.guard.js.map +1 -1
- package/src/modules/auth/interfaces/auth-controller.interface.d.ts +1 -1
- package/src/modules/auth/interfaces/auth-gateway.interface.d.ts +2 -1
- package/src/modules/auth/mixins/auth-controller.mixin.js +23 -17
- package/src/modules/auth/mixins/auth-controller.mixin.js.map +1 -1
- package/src/modules/auth/mixins/auth-gateway.mixin.js +8 -6
- package/src/modules/auth/mixins/auth-gateway.mixin.js.map +1 -1
- package/src/modules/auth/mixins/auth-policies-guard.mixin.d.ts +2 -1
- package/src/modules/auth/mixins/auth-policies-guard.mixin.js +1 -1
- package/src/modules/auth/mixins/auth-policies-guard.mixin.js.map +1 -1
- package/src/modules/auth/models/otp-code.model.d.ts +4 -4
- package/src/modules/auth/services/base-auth.service.d.ts +2 -1
- package/src/modules/auth/services/base-auth.service.js +4 -4
- package/src/modules/auth/services/base-auth.service.js.map +1 -1
- package/src/modules/dynamic-api-config/dynamic-api-config.module.d.ts +1 -1
- package/src/modules/dynamic-api-config/dynamic-api-config.module.js +3 -3
- package/src/modules/dynamic-api-config/dynamic-api-config.module.js.map +1 -1
- package/src/modules/health/index.d.ts +1 -2
- package/src/modules/health/index.js +3 -16
- package/src/modules/health/index.js.map +1 -1
- package/src/modules/presence/index.d.ts +1 -5
- package/src/modules/presence/index.js +3 -19
- package/src/modules/presence/index.js.map +1 -1
- package/src/modules/presence/presence.gateway.d.ts +1 -1
- package/src/modules/presence/presence.gateway.js +5 -5
- package/src/modules/presence/presence.gateway.js.map +1 -1
- package/src/routes/aggregate/aggregate-controller.mixin.d.ts +2 -2
- package/src/routes/aggregate/aggregate-controller.mixin.js +12 -8
- package/src/routes/aggregate/aggregate-controller.mixin.js.map +1 -1
- package/src/routes/aggregate/aggregate-gateway.interface.d.ts +2 -1
- package/src/routes/aggregate/aggregate-gateway.mixin.d.ts +2 -2
- package/src/routes/aggregate/aggregate-gateway.mixin.js +10 -7
- package/src/routes/aggregate/aggregate-gateway.mixin.js.map +1 -1
- package/src/routes/aggregate/aggregate.helper.d.ts +5 -4
- package/src/routes/aggregate/aggregate.helper.js +10 -10
- package/src/routes/aggregate/aggregate.helper.js.map +1 -1
- package/src/routes/aggregate/aggregate.module.d.ts +2 -2
- package/src/routes/aggregate/aggregate.module.js +4 -3
- package/src/routes/aggregate/aggregate.module.js.map +1 -1
- package/src/routes/aggregate/base-aggregate.service.d.ts +1 -1
- package/src/routes/aggregate/base-aggregate.service.js +2 -2
- package/src/routes/aggregate/base-aggregate.service.js.map +1 -1
- package/src/routes/create-many/base-create-many.service.d.ts +1 -1
- package/src/routes/create-many/base-create-many.service.js +5 -5
- package/src/routes/create-many/base-create-many.service.js.map +1 -1
- package/src/routes/create-many/create-many-controller.interface.d.ts +1 -1
- package/src/routes/create-many/create-many-controller.mixin.d.ts +2 -2
- package/src/routes/create-many/create-many-controller.mixin.js +16 -11
- package/src/routes/create-many/create-many-controller.mixin.js.map +1 -1
- package/src/routes/create-many/create-many-gateway.interface.d.ts +2 -1
- package/src/routes/create-many/create-many-gateway.mixin.d.ts +2 -2
- package/src/routes/create-many/create-many-gateway.mixin.js +10 -7
- package/src/routes/create-many/create-many-gateway.mixin.js.map +1 -1
- package/src/routes/create-many/create-many.helper.d.ts +5 -4
- package/src/routes/create-many/create-many.helper.js +13 -13
- package/src/routes/create-many/create-many.helper.js.map +1 -1
- package/src/routes/create-many/create-many.module.js +6 -5
- package/src/routes/create-many/create-many.module.js.map +1 -1
- package/src/routes/create-one/base-create-one.service.d.ts +1 -1
- package/src/routes/create-one/base-create-one.service.js +5 -5
- package/src/routes/create-one/base-create-one.service.js.map +1 -1
- package/src/routes/create-one/create-one-controller.interface.d.ts +1 -1
- package/src/routes/create-one/create-one-controller.mixin.d.ts +2 -2
- package/src/routes/create-one/create-one-controller.mixin.js +14 -10
- package/src/routes/create-one/create-one-controller.mixin.js.map +1 -1
- package/src/routes/create-one/create-one-gateway.interface.d.ts +2 -1
- package/src/routes/create-one/create-one-gateway.mixin.d.ts +2 -2
- package/src/routes/create-one/create-one-gateway.mixin.js +10 -7
- package/src/routes/create-one/create-one-gateway.mixin.js.map +1 -1
- package/src/routes/create-one/create-one.helper.d.ts +5 -4
- package/src/routes/create-one/create-one.helper.js +13 -13
- package/src/routes/create-one/create-one.helper.js.map +1 -1
- package/src/routes/create-one/create-one.module.js +6 -5
- package/src/routes/create-one/create-one.module.js.map +1 -1
- package/src/routes/custom/create-custom-route-controller.js +15 -13
- package/src/routes/custom/create-custom-route-controller.js.map +1 -1
- package/src/routes/custom/create-custom-route-gateway.js +12 -10
- package/src/routes/custom/create-custom-route-gateway.js.map +1 -1
- package/src/routes/custom/custom-route-callback.service.d.ts +1 -1
- package/src/routes/custom/custom-route-callback.service.js +2 -2
- package/src/routes/custom/custom-route-callback.service.js.map +1 -1
- package/src/routes/delete-many/base-delete-many.service.d.ts +2 -2
- package/src/routes/delete-many/base-delete-many.service.js +5 -5
- package/src/routes/delete-many/base-delete-many.service.js.map +1 -1
- package/src/routes/delete-many/delete-many-controller.interface.d.ts +2 -2
- package/src/routes/delete-many/delete-many-controller.mixin.d.ts +2 -2
- package/src/routes/delete-many/delete-many-controller.mixin.js +14 -10
- package/src/routes/delete-many/delete-many-controller.mixin.js.map +1 -1
- package/src/routes/delete-many/delete-many-gateway.interface.d.ts +3 -2
- package/src/routes/delete-many/delete-many-gateway.mixin.d.ts +2 -2
- package/src/routes/delete-many/delete-many-gateway.mixin.js +10 -7
- package/src/routes/delete-many/delete-many-gateway.mixin.js.map +1 -1
- package/src/routes/delete-many/delete-many.helper.d.ts +5 -4
- package/src/routes/delete-many/delete-many.helper.js +13 -13
- package/src/routes/delete-many/delete-many.helper.js.map +1 -1
- package/src/routes/delete-many/delete-many.module.js +6 -5
- package/src/routes/delete-many/delete-many.module.js.map +1 -1
- package/src/routes/delete-one/base-delete-one.service.d.ts +2 -2
- package/src/routes/delete-one/base-delete-one.service.js +5 -5
- package/src/routes/delete-one/base-delete-one.service.js.map +1 -1
- package/src/routes/delete-one/delete-one-controller.interface.d.ts +1 -1
- package/src/routes/delete-one/delete-one-controller.mixin.d.ts +2 -2
- package/src/routes/delete-one/delete-one-controller.mixin.js +14 -10
- package/src/routes/delete-one/delete-one-controller.mixin.js.map +1 -1
- package/src/routes/delete-one/delete-one-gateway.interface.d.ts +3 -2
- package/src/routes/delete-one/delete-one-gateway.mixin.d.ts +2 -2
- package/src/routes/delete-one/delete-one-gateway.mixin.js +10 -7
- package/src/routes/delete-one/delete-one-gateway.mixin.js.map +1 -1
- package/src/routes/delete-one/delete-one.helper.d.ts +5 -4
- package/src/routes/delete-one/delete-one.helper.js +13 -13
- package/src/routes/delete-one/delete-one.helper.js.map +1 -1
- package/src/routes/delete-one/delete-one.module.js +6 -5
- package/src/routes/delete-one/delete-one.module.js.map +1 -1
- package/src/routes/duplicate-many/base-duplicate-many.service.d.ts +1 -1
- package/src/routes/duplicate-many/base-duplicate-many.service.js +4 -4
- package/src/routes/duplicate-many/base-duplicate-many.service.js.map +1 -1
- package/src/routes/duplicate-many/duplicate-many-controller.interface.d.ts +1 -1
- package/src/routes/duplicate-many/duplicate-many-controller.mixin.d.ts +2 -2
- package/src/routes/duplicate-many/duplicate-many-controller.mixin.js +16 -11
- package/src/routes/duplicate-many/duplicate-many-controller.mixin.js.map +1 -1
- package/src/routes/duplicate-many/duplicate-many-gateway.interface.d.ts +3 -2
- package/src/routes/duplicate-many/duplicate-many-gateway.mixin.d.ts +2 -2
- package/src/routes/duplicate-many/duplicate-many-gateway.mixin.js +10 -7
- package/src/routes/duplicate-many/duplicate-many-gateway.mixin.js.map +1 -1
- package/src/routes/duplicate-many/duplicate-many.helper.d.ts +5 -4
- package/src/routes/duplicate-many/duplicate-many.helper.js +13 -13
- package/src/routes/duplicate-many/duplicate-many.helper.js.map +1 -1
- package/src/routes/duplicate-many/duplicate-many.module.js +6 -5
- package/src/routes/duplicate-many/duplicate-many.module.js.map +1 -1
- package/src/routes/duplicate-one/base-duplicate-one.service.d.ts +1 -1
- package/src/routes/duplicate-one/base-duplicate-one.service.js +4 -4
- package/src/routes/duplicate-one/base-duplicate-one.service.js.map +1 -1
- package/src/routes/duplicate-one/duplicate-one-controller.interface.d.ts +1 -1
- package/src/routes/duplicate-one/duplicate-one-controller.mixin.d.ts +2 -2
- package/src/routes/duplicate-one/duplicate-one-controller.mixin.js +18 -13
- package/src/routes/duplicate-one/duplicate-one-controller.mixin.js.map +1 -1
- package/src/routes/duplicate-one/duplicate-one-gateway.interface.d.ts +3 -2
- package/src/routes/duplicate-one/duplicate-one-gateway.mixin.d.ts +2 -2
- package/src/routes/duplicate-one/duplicate-one-gateway.mixin.js +10 -7
- package/src/routes/duplicate-one/duplicate-one-gateway.mixin.js.map +1 -1
- package/src/routes/duplicate-one/duplicate-one.helper.d.ts +5 -4
- package/src/routes/duplicate-one/duplicate-one.helper.js +13 -13
- package/src/routes/duplicate-one/duplicate-one.helper.js.map +1 -1
- package/src/routes/duplicate-one/duplicate-one.module.js +6 -5
- package/src/routes/duplicate-one/duplicate-one.module.js.map +1 -1
- package/src/routes/get-many/base-get-many.service.d.ts +1 -1
- package/src/routes/get-many/base-get-many.service.js +2 -2
- package/src/routes/get-many/base-get-many.service.js.map +1 -1
- package/src/routes/get-many/get-many-controller.mixin.d.ts +2 -2
- package/src/routes/get-many/get-many-controller.mixin.js +13 -10
- package/src/routes/get-many/get-many-controller.mixin.js.map +1 -1
- package/src/routes/get-many/get-many-gateway.interface.d.ts +2 -1
- package/src/routes/get-many/get-many-gateway.mixin.d.ts +2 -2
- package/src/routes/get-many/get-many-gateway.mixin.js +10 -8
- package/src/routes/get-many/get-many-gateway.mixin.js.map +1 -1
- package/src/routes/get-many/get-many.helper.d.ts +5 -4
- package/src/routes/get-many/get-many.helper.js +10 -10
- package/src/routes/get-many/get-many.helper.js.map +1 -1
- package/src/routes/get-many/get-many.module.js +4 -3
- package/src/routes/get-many/get-many.module.js.map +1 -1
- package/src/routes/get-one/base-get-one.service.d.ts +1 -1
- package/src/routes/get-one/base-get-one.service.js +2 -2
- package/src/routes/get-one/base-get-one.service.js.map +1 -1
- package/src/routes/get-one/get-one-controller.mixin.d.ts +2 -2
- package/src/routes/get-one/get-one-controller.mixin.js +11 -8
- package/src/routes/get-one/get-one-controller.mixin.js.map +1 -1
- package/src/routes/get-one/get-one-gateway.interface.d.ts +3 -2
- package/src/routes/get-one/get-one-gateway.mixin.d.ts +2 -2
- package/src/routes/get-one/get-one-gateway.mixin.js +9 -7
- package/src/routes/get-one/get-one-gateway.mixin.js.map +1 -1
- package/src/routes/get-one/get-one.helper.d.ts +5 -4
- package/src/routes/get-one/get-one.helper.js +10 -10
- package/src/routes/get-one/get-one.helper.js.map +1 -1
- package/src/routes/get-one/get-one.module.js +4 -3
- package/src/routes/get-one/get-one.module.js.map +1 -1
- package/src/routes/replace-one/base-replace-one.service.d.ts +1 -1
- package/src/routes/replace-one/base-replace-one.service.js +5 -5
- package/src/routes/replace-one/base-replace-one.service.js.map +1 -1
- package/src/routes/replace-one/replace-one-controller.interface.d.ts +1 -1
- package/src/routes/replace-one/replace-one-controller.mixin.d.ts +2 -2
- package/src/routes/replace-one/replace-one-controller.mixin.js +16 -12
- package/src/routes/replace-one/replace-one-controller.mixin.js.map +1 -1
- package/src/routes/replace-one/replace-one-gateway.interface.d.ts +3 -2
- package/src/routes/replace-one/replace-one-gateway.mixin.d.ts +2 -2
- package/src/routes/replace-one/replace-one-gateway.mixin.js +8 -6
- package/src/routes/replace-one/replace-one-gateway.mixin.js.map +1 -1
- package/src/routes/replace-one/replace-one.helper.d.ts +5 -4
- package/src/routes/replace-one/replace-one.helper.js +13 -13
- package/src/routes/replace-one/replace-one.helper.js.map +1 -1
- package/src/routes/replace-one/replace-one.module.js +6 -5
- package/src/routes/replace-one/replace-one.module.js.map +1 -1
- package/src/routes/update-many/base-update-many.service.d.ts +1 -1
- package/src/routes/update-many/base-update-many.service.js +4 -4
- package/src/routes/update-many/base-update-many.service.js.map +1 -1
- package/src/routes/update-many/update-many-controller.interface.d.ts +1 -1
- package/src/routes/update-many/update-many-controller.mixin.d.ts +2 -2
- package/src/routes/update-many/update-many-controller.mixin.js +16 -11
- package/src/routes/update-many/update-many-controller.mixin.js.map +1 -1
- package/src/routes/update-many/update-many-gateway.interface.d.ts +3 -2
- package/src/routes/update-many/update-many-gateway.mixin.d.ts +2 -2
- package/src/routes/update-many/update-many-gateway.mixin.js +10 -7
- package/src/routes/update-many/update-many-gateway.mixin.js.map +1 -1
- package/src/routes/update-many/update-many.helper.d.ts +5 -4
- package/src/routes/update-many/update-many.helper.js +13 -13
- package/src/routes/update-many/update-many.helper.js.map +1 -1
- package/src/routes/update-many/update-many.module.js +6 -5
- package/src/routes/update-many/update-many.module.js.map +1 -1
- package/src/routes/update-one/base-update-one.service.d.ts +1 -1
- package/src/routes/update-one/base-update-one.service.js +5 -5
- package/src/routes/update-one/base-update-one.service.js.map +1 -1
- package/src/routes/update-one/update-one-controller.interface.d.ts +1 -1
- package/src/routes/update-one/update-one-controller.mixin.d.ts +2 -2
- package/src/routes/update-one/update-one-controller.mixin.js +18 -13
- package/src/routes/update-one/update-one-controller.mixin.js.map +1 -1
- package/src/routes/update-one/update-one-gateway.interface.d.ts +3 -2
- package/src/routes/update-one/update-one-gateway.mixin.d.ts +2 -2
- package/src/routes/update-one/update-one-gateway.mixin.js +8 -6
- package/src/routes/update-one/update-one-gateway.mixin.js.map +1 -1
- package/src/routes/update-one/update-one.helper.d.ts +5 -4
- package/src/routes/update-one/update-one.helper.js +13 -13
- package/src/routes/update-one/update-one.helper.js.map +1 -1
- package/src/routes/update-one/update-one.module.js +6 -5
- package/src/routes/update-one/update-one.module.js.map +1 -1
- package/src/services/base/base.service.js +3 -4
- package/src/services/base/base.service.js.map +1 -1
- package/src/services/bcrypt/bcrypt.service.js.map +1 -1
- package/src/services/dynamic-api-broadcast/dynamic-api-broadcast.service.js +4 -4
- package/src/services/dynamic-api-broadcast/dynamic-api-broadcast.service.js.map +1 -1
- package/src/services/dynamic-api-cache/dynamic-api-cache.service.js +2 -2
- package/src/services/dynamic-api-cache/dynamic-api-cache.service.js.map +1 -1
- package/src/services/dynamic-api-entity/dynamic-api-entity.service.d.ts +6 -0
- package/src/services/dynamic-api-entity/dynamic-api-entity.service.js +11 -0
- package/src/services/dynamic-api-entity/dynamic-api-entity.service.js.map +1 -0
- package/src/services/dynamic-api-global-state/dynamic-api-global-state.service.d.ts +6 -2
- package/src/services/index.d.ts +1 -2
- package/src/services/index.js +1 -2
- package/src/services/index.js.map +1 -1
- package/src/testing/create-dynamic-api-testing-app.js +1 -1
- package/src/testing/create-dynamic-api-testing-app.js.map +1 -1
- package/src/utils/index.d.ts +0 -1
- package/src/utils/index.js +0 -1
- package/src/utils/index.js.map +1 -1
- package/src/version.json +1 -1
- package/test/e2e.setup.d.ts +3 -3
- package/test/e2e.setup.js +8 -7
- package/test/e2e.setup.js.map +1 -1
- package/test/for-feature/ability-predicate-filter.e2e-spec.js +20 -20
- package/test/for-feature/ability-predicate-filter.e2e-spec.js.map +1 -1
- package/test/for-feature/ability-predicates.e2e-spec.js +28 -27
- package/test/for-feature/ability-predicates.e2e-spec.js.map +1 -1
- package/test/for-feature/after-save-callback-reliability.e2e-spec.js +35 -34
- package/test/for-feature/after-save-callback-reliability.e2e-spec.js.map +1 -1
- package/test/for-feature/aggregate-ability-predicate-paging.e2e-spec.js +20 -19
- package/test/for-feature/aggregate-ability-predicate-paging.e2e-spec.js.map +1 -1
- package/test/for-feature/aggregate-paging-without-from-aggregate.e2e-spec.js +11 -10
- package/test/for-feature/aggregate-paging-without-from-aggregate.e2e-spec.js.map +1 -1
- package/test/for-feature/aggregate-swagger-paginated-response.e2e-spec.js +18 -17
- package/test/for-feature/aggregate-swagger-paginated-response.e2e-spec.js.map +1 -1
- package/test/for-feature/audit-log.e2e-spec.js +26 -25
- package/test/for-feature/audit-log.e2e-spec.js.map +1 -1
- package/test/for-feature/base-entity.e2e-spec.js +126 -125
- package/test/for-feature/base-entity.e2e-spec.js.map +1 -1
- package/test/for-feature/broadcast-event-registry.e2e-spec.js +20 -19
- package/test/for-feature/broadcast-event-registry.e2e-spec.js.map +1 -1
- package/test/for-feature/cache-identity-key.e2e-spec.js +22 -21
- package/test/for-feature/cache-identity-key.e2e-spec.js.map +1 -1
- package/test/for-feature/cache-scoped-invalidation.e2e-spec.js +33 -32
- package/test/for-feature/cache-scoped-invalidation.e2e-spec.js.map +1 -1
- package/test/for-feature/callbacks-user.e2e-spec.js +159 -158
- package/test/for-feature/callbacks-user.e2e-spec.js.map +1 -1
- package/test/for-feature/cascade-and-before-delete.e2e-spec.js +47 -46
- package/test/for-feature/cascade-and-before-delete.e2e-spec.js.map +1 -1
- package/test/for-feature/cascade-transaction-atomicity.e2e-spec.js +17 -16
- package/test/for-feature/cascade-transaction-atomicity.e2e-spec.js.map +1 -1
- package/test/for-feature/custom-route-auth-ability-predicate.e2e-spec.js +17 -16
- package/test/for-feature/custom-route-auth-ability-predicate.e2e-spec.js.map +1 -1
- package/test/for-feature/custom-route-inject.e2e-spec.js +9 -8
- package/test/for-feature/custom-route-inject.e2e-spec.js.map +1 -1
- package/test/for-feature/custom-route-params-openapi.e2e-spec.js +10 -9
- package/test/for-feature/custom-route-params-openapi.e2e-spec.js.map +1 -1
- package/test/for-feature/custom-route-target-param.e2e-spec.js +14 -13
- package/test/for-feature/custom-route-target-param.e2e-spec.js.map +1 -1
- package/test/for-feature/custom-routes.e2e-spec.js +38 -38
- package/test/for-feature/custom-routes.e2e-spec.js.map +1 -1
- package/test/for-feature/db-aware-validators.e2e-spec.js +40 -39
- package/test/for-feature/db-aware-validators.e2e-spec.js.map +1 -1
- package/test/for-feature/derived-fields-protected-from-user.e2e-spec.js +39 -38
- package/test/for-feature/derived-fields-protected-from-user.e2e-spec.js.map +1 -1
- package/test/for-feature/derived-fields-raw-write-recompute.e2e-spec.js +25 -24
- package/test/for-feature/derived-fields-raw-write-recompute.e2e-spec.js.map +1 -1
- package/test/for-feature/exclude-from-response.e2e-spec.js +21 -20
- package/test/for-feature/exclude-from-response.e2e-spec.js.map +1 -1
- package/test/for-feature/http-broadcast.e2e-spec.js +62 -61
- package/test/for-feature/http-broadcast.e2e-spec.js.map +1 -1
- package/test/for-feature/index-sync.e2e-spec.js +39 -28
- package/test/for-feature/index-sync.e2e-spec.js.map +1 -1
- package/test/for-feature/paging-query-helper.e2e-spec.js +21 -20
- package/test/for-feature/paging-query-helper.e2e-spec.js.map +1 -1
- package/test/for-feature/populate.e2e-spec.js +18 -17
- package/test/for-feature/populate.e2e-spec.js.map +1 -1
- package/test/for-feature/presence.e2e-spec.js +18 -17
- package/test/for-feature/presence.e2e-spec.js.map +1 -1
- package/test/for-feature/raw-update-callback-methods.e2e-spec.js +49 -48
- package/test/for-feature/raw-update-callback-methods.e2e-spec.js.map +1 -1
- package/test/for-feature/room-broadcast.e2e-spec.js +61 -60
- package/test/for-feature/room-broadcast.e2e-spec.js.map +1 -1
- package/test/for-feature/soft-deletable-entity.e2e-spec.js +136 -135
- package/test/for-feature/soft-deletable-entity.e2e-spec.js.map +1 -1
- package/test/for-feature/websockets.e2e-spec.js +54 -53
- package/test/for-feature/websockets.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-basic.e2e-spec.js +94 -93
- package/test/for-root/auth-api-basic.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-broadcast.e2e-spec.js +24 -23
- package/test/for-root/auth-api-broadcast.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-login.e2e-spec.js +99 -97
- package/test/for-root/auth-api-login.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-logout.e2e-spec.js +18 -17
- package/test/for-root/auth-api-logout.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-mint-token-pair.e2e-spec.js +17 -16
- package/test/for-root/auth-api-mint-token-pair.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-passwordless.e2e-spec.js +37 -36
- package/test/for-root/auth-api-passwordless.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-rate-limit.e2e-spec.js +14 -13
- package/test/for-root/auth-api-rate-limit.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-refresh-token-cookie.e2e-spec.js +27 -26
- package/test/for-root/auth-api-refresh-token-cookie.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-refresh-token.e2e-spec.js +55 -54
- package/test/for-root/auth-api-refresh-token.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-register.e2e-spec.js +29 -27
- package/test/for-root/auth-api-register.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-reset-password.e2e-spec.js +50 -48
- package/test/for-root/auth-api-reset-password.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-update-account-derived-field.e2e-spec.js +9 -8
- package/test/for-root/auth-api-update-account-derived-field.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-update-account.e2e-spec.js +38 -37
- package/test/for-root/auth-api-update-account.e2e-spec.js.map +1 -1
- package/test/for-root/health-check.e2e-spec.js +21 -20
- package/test/for-root/health-check.e2e-spec.js.map +1 -1
- package/test/for-root/initialization.e2e-spec.js +10 -9
- package/test/for-root/initialization.e2e-spec.js.map +1 -1
- package/test/for-root/websockets-auth-basic.e2e-spec.js +115 -114
- package/test/for-root/websockets-auth-basic.e2e-spec.js.map +1 -1
- package/test/for-root/websockets-auth-broadcast.e2e-spec.js +26 -25
- package/test/for-root/websockets-auth-broadcast.e2e-spec.js.map +1 -1
- package/test/for-root/websockets-auth-login.e2e-spec.js +40 -38
- package/test/for-root/websockets-auth-login.e2e-spec.js.map +1 -1
- package/test/for-root/websockets-auth-refresh-token.e2e-spec.js +22 -21
- package/test/for-root/websockets-auth-refresh-token.e2e-spec.js.map +1 -1
- package/test/for-root/websockets-auth-register.e2e-spec.js +36 -34
- package/test/for-root/websockets-auth-register.e2e-spec.js.map +1 -1
- package/test/for-root/websockets-auth-reset-password.e2e-spec.js +56 -54
- package/test/for-root/websockets-auth-reset-password.e2e-spec.js.map +1 -1
- package/test/helpers/create-mock.helper.d.ts +12 -0
- package/test/helpers/create-mock.helper.js +58 -0
- package/test/helpers/create-mock.helper.js.map +1 -0
- package/test/helpers/index.d.ts +1 -0
- package/test/helpers/index.js +18 -0
- package/test/helpers/index.js.map +1 -0
- package/test/helpers/register-ts-require-hook.d.ts +1 -0
- package/test/helpers/register-ts-require-hook.js +20 -0
- package/test/helpers/register-ts-require-hook.js.map +1 -0
- package/test/testing/create-dynamic-api-testing-app.e2e-spec.js +17 -15
- package/test/testing/create-dynamic-api-testing-app.e2e-spec.js.map +1 -1
- package/test/utils.d.ts +5 -1
- package/test/utils.js +2 -2
- package/test/utils.js.map +1 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/src/decorators/schema-options.decorator.d.ts +0 -5
- package/src/decorators/schema-options.decorator.js +0 -14
- package/src/decorators/schema-options.decorator.js.map +0 -1
- package/src/utils/deep-patial.d.ts +0 -1
- package/src/utils/deep-patial.js +0 -3
- package/src/utils/deep-patial.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-route-auth-ability-predicate.e2e-spec.js","sourceRoot":"","sources":["../../../libs/dynamic-api/test/for-feature/custom-route-auth-ability-predicate.e2e-spec.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,+CAAgD;AAChD,uCAAgC;AAChC,mCAA4E;AAC5E,4CAAuD;AACvD,yBAAuB;AACvB,sCAAoC;AAcpC,
|
|
1
|
+
{"version":3,"file":"custom-route-auth-ability-predicate.e2e-spec.js","sourceRoot":"","sources":["../../../libs/dynamic-api/test/for-feature/custom-route-auth-ability-predicate.e2e-spec.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,mCAAqE;AACrE,+CAAgD;AAChD,uCAAgC;AAChC,mCAA4E;AAC5E,4CAAuD;AACvD,yBAAuB;AACvB,sCAAoC;AAcpC,IAAA,iBAAQ,EAAC,uEAAuE,EAAE,GAAG,EAAE;IAErF,IAAA,mBAAU,EAAC,GAAG,EAAE;QACd,sBAAgB,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,IAAA,kBAAS,EAAC,KAAK,IAAI,EAAE;QACnB,MAAM,IAAA,2BAAe,EAAC,kBAAQ,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAGH,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,gBAAU;KAS/C,CAAA;IAPC;QADC,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;0DACzB;IAGd;QADC,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;6DACtB;IAGjB;QADC,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;;yDAC3B;IART,uBAAuB;QAD5B,IAAA,iBAAM,EAAC,EAAE,UAAU,EAAE,sBAAsB,EAAE,CAAC;OACzC,uBAAuB,CAS5B;IAMD,IAAM,gCAAgC,GAAtC,MAAM,gCAAiC,SAAQ,gBAAU;KAGxD,CAAA;IADC;QADC,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;oEACP;IAFZ,gCAAgC;QADrC,IAAA,iBAAM,EAAC,EAAE,UAAU,EAAE,gCAAgC,EAAE,CAAC;OACnD,gCAAgC,CAGrC;IAED,MAAM,gBAAgB,GAAG,KAAK,EAAE,KAAa,EAAE,IAAY,EAAE,EAAE;QAC7D,MAAM,kBAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9E,MAAM,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,EAAE,GAAG,MAAM,kBAAM,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC;QACvG,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,kBAAM,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC;QAExF,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,OAAO,CAAC,EAAY,EAAE,CAAC;IACnD,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,CAClB,OAAyC,EACzC,IAAsB,EACtB,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC;IAE3B,MAAM,kBAAkB,GAAG,CACzB,uBAAgC,EACqB,EAAE,CAAC,CAAC;QACzD,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE,KAAK;QACb,GAAG,CAAC,uBAAuB;YACzB,CAAC,CAAC,EAAE,oBAAoB,EAAE,CAAC,IAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;YAC7E,CAAC,CAAC,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAC;QACtC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;KACpC,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,KAAK,EAAE,uBAAgC,EAAE,EAAE;QACvD,MAAM,IAAA,gBAAO,EACX;YACE,MAAM,EAAE,gCAAgC;YACxC,iBAAiB,EAAE,EAAE,IAAI,EAAE,gCAAgC,EAAE;YAC7D,YAAY,EAAE,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,CAAC;SAC5D,EACD;YACE,OAAO,EAAE;gBACP,UAAU,EAAE,uBAAuB;gBACnC,KAAK,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,MAAM,CAAC,EAAE;gBACrF,QAAQ,EAAE;oBACR,gBAAgB,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;iBACtD;aACF;SACF,CACF,CAAC;IACJ,CAAC,CAAC;IAEF,IAAA,iBAAQ,EAAC,+EAA+E,EAAE,GAAG,EAAE;QAC7F,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QAE/B,IAAA,WAAE,EAAC,8FAA8F,EAAE,KAAK,IAAI,EAAE;YAC5G,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,0BAA0B,EAAE,MAAM,CAAC,CAAC;YAE5E,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAM,CAAC,GAAG,CACjC,gDAAgD,EAChD,EAAE,SAAS,EAAE,QAAQ,CAAC,WAAW,EAAE,CACpC,CAAC;YAMF,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,iBAAQ,EAAC,gEAAgE,EAAE,GAAG,EAAE;QAC9E,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAE9B,IAAA,WAAE,EAAC,sEAAsE,EAAE,KAAK,IAAI,EAAE;YACpF,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,2BAA2B,EAAE,MAAM,CAAC,CAAC;YAE7E,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAM,CAAC,GAAG,CACjC,gDAAgD,EAChD,EAAE,SAAS,EAAE,QAAQ,CAAC,WAAW,EAAE,CACpC,CAAC;YAEF,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE;YAC/B,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAC;YAEzE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,kBAAM,CAAC,GAAG,CACvC,gDAAgD,EAChD,EAAE,SAAS,EAAE,KAAK,CAAC,WAAW,EAAE,CACjC,CAAC;YAEF,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACzB,IAAA,eAAM,EAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YACjD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAM,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;YAEtF,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -9,6 +9,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const vitest_1 = require("vitest");
|
|
12
13
|
const common_1 = require("@nestjs/common");
|
|
13
14
|
const mongoose_1 = require("@nestjs/mongoose");
|
|
14
15
|
const mongoose_2 = require("mongoose");
|
|
@@ -16,11 +17,11 @@ const src_1 = require("../../src");
|
|
|
16
17
|
const e2e_setup_1 = require("../e2e.setup");
|
|
17
18
|
require("dotenv/config");
|
|
18
19
|
const shared_1 = require("../shared");
|
|
19
|
-
describe('DynamicApiModule forFeature - custom route inject (e2e)', () => {
|
|
20
|
-
beforeEach(() => {
|
|
20
|
+
(0, vitest_1.describe)('DynamicApiModule forFeature - custom route inject (e2e)', () => {
|
|
21
|
+
(0, vitest_1.beforeEach)(() => {
|
|
21
22
|
src_1.DynamicApiModule.state['resetState']();
|
|
22
23
|
});
|
|
23
|
-
afterEach(async () => {
|
|
24
|
+
(0, vitest_1.afterEach)(async () => {
|
|
24
25
|
await (0, e2e_setup_1.closeTestingApp)(mongoose_2.default.connections);
|
|
25
26
|
});
|
|
26
27
|
let MailService = class MailService {
|
|
@@ -54,7 +55,7 @@ describe('DynamicApiModule forFeature - custom route inject (e2e)', () => {
|
|
|
54
55
|
return mail.send(body.email);
|
|
55
56
|
},
|
|
56
57
|
};
|
|
57
|
-
it('should resolve the injected provider and let the handler use it', async () => {
|
|
58
|
+
(0, vitest_1.it)('should resolve the injected provider and let the handler use it', async () => {
|
|
58
59
|
await (0, shared_1.initApp)({
|
|
59
60
|
entity: InviteFamilyEntity,
|
|
60
61
|
controllerOptions: { path: 'invite-families', isPublic: true },
|
|
@@ -65,10 +66,10 @@ describe('DynamicApiModule forFeature - custom route inject (e2e)', () => {
|
|
|
65
66
|
const { status, body } = await e2e_setup_1.server.post('/invite-families/invite-member', {
|
|
66
67
|
email: 'new-member@family.test',
|
|
67
68
|
});
|
|
68
|
-
expect(status).toBe(201);
|
|
69
|
-
expect(body).toEqual({ to: 'new-member@family.test', sent: true });
|
|
69
|
+
(0, vitest_1.expect)(status).toBe(201);
|
|
70
|
+
(0, vitest_1.expect)(body).toEqual({ to: 'new-member@family.test', sent: true });
|
|
70
71
|
});
|
|
71
|
-
it('should reuse the same Nest-managed singleton instance across requests', async () => {
|
|
72
|
+
(0, vitest_1.it)('should reuse the same Nest-managed singleton instance across requests', async () => {
|
|
72
73
|
await (0, shared_1.initApp)({
|
|
73
74
|
entity: InviteFamilyEntity,
|
|
74
75
|
controllerOptions: { path: 'invite-families', isPublic: true },
|
|
@@ -95,7 +96,7 @@ describe('DynamicApiModule forFeature - custom route inject (e2e)', () => {
|
|
|
95
96
|
await e2e_setup_1.server.post('/invite-families/invite-member', { email: 'a@family.test' });
|
|
96
97
|
await e2e_setup_1.server.post('/invite-families/invite-member', { email: 'b@family.test' });
|
|
97
98
|
const { body } = await e2e_setup_1.server.get('/invite-families/invite-count');
|
|
98
|
-
expect(body).toEqual({ sentCount: 2 });
|
|
99
|
+
(0, vitest_1.expect)(body).toEqual({ sentCount: 2 });
|
|
99
100
|
});
|
|
100
101
|
});
|
|
101
102
|
//# sourceMappingURL=custom-route-inject.e2e-spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-route-inject.e2e-spec.js","sourceRoot":"","sources":["../../../libs/dynamic-api/test/for-feature/custom-route-inject.e2e-spec.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,2CAA4C;AAC5C,+CAAgD;AAChD,uCAAgC;AAChC,mCAA4E;AAC5E,4CAAuD;AACvD,yBAAuB;AACvB,sCAAoC;AASpC,
|
|
1
|
+
{"version":3,"file":"custom-route-inject.e2e-spec.js","sourceRoot":"","sources":["../../../libs/dynamic-api/test/for-feature/custom-route-inject.e2e-spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const vitest_1 = require("vitest");
|
|
12
13
|
const mongoose_1 = require("@nestjs/mongoose");
|
|
13
14
|
const swagger_1 = require("@nestjs/swagger");
|
|
14
15
|
const mongoose_2 = require("mongoose");
|
|
@@ -16,11 +17,11 @@ const src_1 = require("../../src");
|
|
|
16
17
|
const e2e_setup_1 = require("../e2e.setup");
|
|
17
18
|
require("dotenv/config");
|
|
18
19
|
const shared_1 = require("../shared");
|
|
19
|
-
describe('DynamicApiModule forFeature - custom route dTOs.params in OpenAPI (e2e)', () => {
|
|
20
|
-
beforeEach(() => {
|
|
20
|
+
(0, vitest_1.describe)('DynamicApiModule forFeature - custom route dTOs.params in OpenAPI (e2e)', () => {
|
|
21
|
+
(0, vitest_1.beforeEach)(() => {
|
|
21
22
|
src_1.DynamicApiModule.state['resetState']();
|
|
22
23
|
});
|
|
23
|
-
afterEach(async () => {
|
|
24
|
+
(0, vitest_1.afterEach)(async () => {
|
|
24
25
|
await (0, e2e_setup_1.closeTestingApp)(mongoose_2.default.connections);
|
|
25
26
|
});
|
|
26
27
|
let OpenApiFamilyEntity = class OpenApiFamilyEntity extends src_1.BaseEntity {
|
|
@@ -43,7 +44,7 @@ describe('DynamicApiModule forFeature - custom route dTOs.params in OpenAPI (e2e
|
|
|
43
44
|
dTOs: { params: InviteMemberParams },
|
|
44
45
|
handler: async () => ({ sent: true }),
|
|
45
46
|
};
|
|
46
|
-
it('should declare the custom route\'s path param in the generated OpenAPI document', async () => {
|
|
47
|
+
(0, vitest_1.it)('should declare the custom route\'s path param in the generated OpenAPI document', async () => {
|
|
47
48
|
await (0, shared_1.initApp)({
|
|
48
49
|
entity: OpenApiFamilyEntity,
|
|
49
50
|
controllerOptions: { path: 'openapi-families', isPublic: true },
|
|
@@ -51,13 +52,13 @@ describe('DynamicApiModule forFeature - custom route dTOs.params in OpenAPI (e2e
|
|
|
51
52
|
});
|
|
52
53
|
const document = swagger_1.SwaggerModule.createDocument(global.app, new swagger_1.DocumentBuilder().build());
|
|
53
54
|
const operation = document.paths['/openapi-families/{familyId}/invite-member']?.post;
|
|
54
|
-
expect(operation).toBeDefined();
|
|
55
|
+
(0, vitest_1.expect)(operation).toBeDefined();
|
|
55
56
|
const pathParams = (operation?.parameters ?? []).filter((p) => 'in' in p && p.in === 'path');
|
|
56
|
-
expect(pathParams).toEqual([
|
|
57
|
-
expect.objectContaining({ name: 'familyId', in: 'path' }),
|
|
57
|
+
(0, vitest_1.expect)(pathParams).toEqual([
|
|
58
|
+
vitest_1.expect.objectContaining({ name: 'familyId', in: 'path' }),
|
|
58
59
|
]);
|
|
59
60
|
});
|
|
60
|
-
it('should not declare any path param when dTOs.params is omitted', async () => {
|
|
61
|
+
(0, vitest_1.it)('should not declare any path param when dTOs.params is omitted', async () => {
|
|
61
62
|
const noParamsRoute = {
|
|
62
63
|
path: 'stats',
|
|
63
64
|
method: 'GET',
|
|
@@ -71,7 +72,7 @@ describe('DynamicApiModule forFeature - custom route dTOs.params in OpenAPI (e2e
|
|
|
71
72
|
const document = swagger_1.SwaggerModule.createDocument(global.app, new swagger_1.DocumentBuilder().build());
|
|
72
73
|
const operation = document.paths['/openapi-families/stats']?.get;
|
|
73
74
|
const pathParams = (operation?.parameters ?? []).filter((p) => 'in' in p && p.in === 'path');
|
|
74
|
-
expect(pathParams).toEqual([]);
|
|
75
|
+
(0, vitest_1.expect)(pathParams).toEqual([]);
|
|
75
76
|
});
|
|
76
77
|
});
|
|
77
78
|
//# sourceMappingURL=custom-route-params-openapi.e2e-spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-route-params-openapi.e2e-spec.js","sourceRoot":"","sources":["../../../libs/dynamic-api/test/for-feature/custom-route-params-openapi.e2e-spec.ts"],"names":[],"mappings":";;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"custom-route-params-openapi.e2e-spec.js","sourceRoot":"","sources":["../../../libs/dynamic-api/test/for-feature/custom-route-params-openapi.e2e-spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,17 +9,18 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const vitest_1 = require("vitest");
|
|
12
13
|
const mongoose_1 = require("@nestjs/mongoose");
|
|
13
14
|
const mongoose_2 = require("mongoose");
|
|
14
15
|
const src_1 = require("../../src");
|
|
15
16
|
const e2e_setup_1 = require("../e2e.setup");
|
|
16
17
|
require("dotenv/config");
|
|
17
18
|
const shared_1 = require("../shared");
|
|
18
|
-
describe('DynamicApiModule forFeature - custom route targetParam (e2e)', () => {
|
|
19
|
-
beforeEach(() => {
|
|
19
|
+
(0, vitest_1.describe)('DynamicApiModule forFeature - custom route targetParam (e2e)', () => {
|
|
20
|
+
(0, vitest_1.beforeEach)(() => {
|
|
20
21
|
src_1.DynamicApiModule.state['resetState']();
|
|
21
22
|
});
|
|
22
|
-
afterEach(async () => {
|
|
23
|
+
(0, vitest_1.afterEach)(async () => {
|
|
23
24
|
await (0, e2e_setup_1.closeTestingApp)(mongoose_2.default.connections);
|
|
24
25
|
});
|
|
25
26
|
let TargetParamUserEntity = class TargetParamUserEntity extends src_1.BaseEntity {
|
|
@@ -53,8 +54,8 @@ describe('DynamicApiModule forFeature - custom route targetParam (e2e)', () => {
|
|
|
53
54
|
...(targetParam ? { targetParam } : {}),
|
|
54
55
|
handler: async ({ model, params }) => model.findByIdAndUpdate(params.userId, { consented: true }, { new: true }),
|
|
55
56
|
});
|
|
56
|
-
describe('with targetParam set to the route\'s actual param', () => {
|
|
57
|
-
beforeEach(async () => {
|
|
57
|
+
(0, vitest_1.describe)('with targetParam set to the route\'s actual param', () => {
|
|
58
|
+
(0, vitest_1.beforeEach)(async () => {
|
|
58
59
|
await (0, shared_1.initApp)({
|
|
59
60
|
entity: TargetParamUserEntity,
|
|
60
61
|
controllerOptions: { path: 'target-param-users' },
|
|
@@ -66,20 +67,20 @@ describe('DynamicApiModule forFeature - custom route targetParam (e2e)', () => {
|
|
|
66
67
|
},
|
|
67
68
|
});
|
|
68
69
|
});
|
|
69
|
-
it('should deny a user granting parental consent to themselves', async () => {
|
|
70
|
+
(0, vitest_1.it)('should deny a user granting parental consent to themselves', async () => {
|
|
70
71
|
const minor = await registerAndLogin('minor@target-param.co');
|
|
71
72
|
const { status } = await e2e_setup_1.server.patch(`/target-param-users/parental-consent/${minor.id}`, {}, { authToken: minor.accessToken });
|
|
72
|
-
expect(status).toBe(403);
|
|
73
|
+
(0, vitest_1.expect)(status).toBe(403);
|
|
73
74
|
});
|
|
74
|
-
it('should allow a user granting parental consent to someone else', async () => {
|
|
75
|
+
(0, vitest_1.it)('should allow a user granting parental consent to someone else', async () => {
|
|
75
76
|
const parent = await registerAndLogin('parent@target-param.co');
|
|
76
77
|
const minor = await registerAndLogin('minor2@target-param.co');
|
|
77
78
|
const { status } = await e2e_setup_1.server.patch(`/target-param-users/parental-consent/${minor.id}`, {}, { authToken: parent.accessToken });
|
|
78
|
-
expect(status).toBe(200);
|
|
79
|
+
(0, vitest_1.expect)(status).toBe(200);
|
|
79
80
|
});
|
|
80
81
|
});
|
|
81
|
-
describe('without targetParam — the misconfiguration this option exists to fix', () => {
|
|
82
|
-
beforeEach(async () => {
|
|
82
|
+
(0, vitest_1.describe)('without targetParam — the misconfiguration this option exists to fix', () => {
|
|
83
|
+
(0, vitest_1.beforeEach)(async () => {
|
|
83
84
|
await (0, shared_1.initApp)({
|
|
84
85
|
entity: TargetParamUserEntity,
|
|
85
86
|
controllerOptions: { path: 'target-param-users' },
|
|
@@ -91,11 +92,11 @@ describe('DynamicApiModule forFeature - custom route targetParam (e2e)', () => {
|
|
|
91
92
|
},
|
|
92
93
|
});
|
|
93
94
|
});
|
|
94
|
-
it('demonstrates the misconfiguration this fix exists for: a legitimate request gets wrongly denied', async () => {
|
|
95
|
+
(0, vitest_1.it)('demonstrates the misconfiguration this fix exists for: a legitimate request gets wrongly denied', async () => {
|
|
95
96
|
const parent = await registerAndLogin('parent3@target-param.co');
|
|
96
97
|
const minor = await registerAndLogin('minor3@target-param.co');
|
|
97
98
|
const { status } = await e2e_setup_1.server.patch(`/target-param-users/parental-consent/${minor.id}`, {}, { authToken: parent.accessToken });
|
|
98
|
-
expect(status).toBe(403);
|
|
99
|
+
(0, vitest_1.expect)(status).toBe(403);
|
|
99
100
|
});
|
|
100
101
|
});
|
|
101
102
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-route-target-param.e2e-spec.js","sourceRoot":"","sources":["../../../libs/dynamic-api/test/for-feature/custom-route-target-param.e2e-spec.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,+CAAgD;AAChD,uCAAgC;AAChC,mCAA4E;AAC5E,4CAAuD;AACvD,yBAAuB;AACvB,sCAAoC;AAYpC,
|
|
1
|
+
{"version":3,"file":"custom-route-target-param.e2e-spec.js","sourceRoot":"","sources":["../../../libs/dynamic-api/test/for-feature/custom-route-target-param.e2e-spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const vitest_1 = require("vitest");
|
|
12
13
|
const common_1 = require("@nestjs/common");
|
|
13
14
|
const swagger_1 = require("@nestjs/swagger");
|
|
14
15
|
const mongoose_1 = require("@nestjs/mongoose");
|
|
@@ -34,8 +35,7 @@ __decorate([
|
|
|
34
35
|
__metadata("design:type", String)
|
|
35
36
|
], Conversation.prototype, "ownerId", void 0);
|
|
36
37
|
Conversation = __decorate([
|
|
37
|
-
(0, src_1.
|
|
38
|
-
(0, mongoose_1.Schema)({ collection: 'conversations-custom-routes' })
|
|
38
|
+
(0, src_1.DynamicApiSchema)({ collection: 'conversations-custom-routes' })
|
|
39
39
|
], Conversation);
|
|
40
40
|
class UpdateWrappedKeyBody {
|
|
41
41
|
}
|
|
@@ -66,12 +66,12 @@ let RejectAllGuard = class RejectAllGuard {
|
|
|
66
66
|
RejectAllGuard = __decorate([
|
|
67
67
|
(0, common_1.Injectable)()
|
|
68
68
|
], RejectAllGuard);
|
|
69
|
-
describe('DynamicApiModule forFeature - customRoutes (e2e)', () => {
|
|
70
|
-
beforeEach(() => {
|
|
69
|
+
(0, vitest_1.describe)('DynamicApiModule forFeature - customRoutes (e2e)', () => {
|
|
70
|
+
(0, vitest_1.beforeEach)(() => {
|
|
71
71
|
src_1.DynamicApiModule.state['resetState']();
|
|
72
72
|
e2e_setup_1.handleSocketException.mockClear();
|
|
73
73
|
});
|
|
74
|
-
afterEach(async () => {
|
|
74
|
+
(0, vitest_1.afterEach)(async () => {
|
|
75
75
|
await (0, e2e_setup_1.closeTestingApp)(mongoose_2.default.connections);
|
|
76
76
|
});
|
|
77
77
|
async function seedConversation(ownerId = 'user-1') {
|
|
@@ -94,8 +94,8 @@ describe('DynamicApiModule forFeature - customRoutes (e2e)', () => {
|
|
|
94
94
|
customRoutes: [customRouteConfig],
|
|
95
95
|
}, {}, seed);
|
|
96
96
|
}
|
|
97
|
-
describe('PATCH /conversations/:id/e2ee-wrapped-keys — happy path', () => {
|
|
98
|
-
it('calls handler with model, params, body and returns updated doc', async () => {
|
|
97
|
+
(0, vitest_1.describe)('PATCH /conversations/:id/e2ee-wrapped-keys — happy path', () => {
|
|
98
|
+
(0, vitest_1.it)('calls handler with model, params, body and returns updated doc', async () => {
|
|
99
99
|
let seededId;
|
|
100
100
|
await setupApp({
|
|
101
101
|
path: ':id/e2ee-wrapped-keys',
|
|
@@ -113,12 +113,12 @@ describe('DynamicApiModule forFeature - customRoutes (e2e)', () => {
|
|
|
113
113
|
});
|
|
114
114
|
const { status, body } = await e2e_setup_1.server
|
|
115
115
|
.patch(`/conversations/${seededId}/e2ee-wrapped-keys`, { wrappedKey: 'new-key-abc' });
|
|
116
|
-
expect(status).toBe(200);
|
|
117
|
-
expect(body.wrappedKey).toBe('new-key-abc');
|
|
116
|
+
(0, vitest_1.expect)(status).toBe(200);
|
|
117
|
+
(0, vitest_1.expect)(body.wrappedKey).toBe('new-key-abc');
|
|
118
118
|
});
|
|
119
119
|
});
|
|
120
|
-
describe('PATCH /conversations/:id/e2ee-wrapped-keys — presenter.fromEntity', () => {
|
|
121
|
-
it('maps result through presenter.fromEntity when present', async () => {
|
|
120
|
+
(0, vitest_1.describe)('PATCH /conversations/:id/e2ee-wrapped-keys — presenter.fromEntity', () => {
|
|
121
|
+
(0, vitest_1.it)('maps result through presenter.fromEntity when present', async () => {
|
|
122
122
|
let seededId;
|
|
123
123
|
await setupApp({
|
|
124
124
|
path: ':id/e2ee-wrapped-keys',
|
|
@@ -138,14 +138,14 @@ describe('DynamicApiModule forFeature - customRoutes (e2e)', () => {
|
|
|
138
138
|
});
|
|
139
139
|
const { status, body } = await e2e_setup_1.server
|
|
140
140
|
.patch(`/conversations/${seededId}/e2ee-wrapped-keys`, { wrappedKey: 'mapped-key' });
|
|
141
|
-
expect(status).toBe(200);
|
|
142
|
-
expect(body).toHaveProperty('id');
|
|
143
|
-
expect(body).toHaveProperty('wrappedKey', 'mapped-key');
|
|
144
|
-
expect(body).not.toHaveProperty('encryptedContent');
|
|
141
|
+
(0, vitest_1.expect)(status).toBe(200);
|
|
142
|
+
(0, vitest_1.expect)(body).toHaveProperty('id');
|
|
143
|
+
(0, vitest_1.expect)(body).toHaveProperty('wrappedKey', 'mapped-key');
|
|
144
|
+
(0, vitest_1.expect)(body).not.toHaveProperty('encryptedContent');
|
|
145
145
|
});
|
|
146
146
|
});
|
|
147
|
-
describe('PATCH /conversations/:id/e2ee-wrapped-keys — custom guard rejects', () => {
|
|
148
|
-
it('returns 403 when a custom guard throws ForbiddenException', async () => {
|
|
147
|
+
(0, vitest_1.describe)('PATCH /conversations/:id/e2ee-wrapped-keys — custom guard rejects', () => {
|
|
148
|
+
(0, vitest_1.it)('returns 403 when a custom guard throws ForbiddenException', async () => {
|
|
149
149
|
let seededId;
|
|
150
150
|
await setupApp({
|
|
151
151
|
path: ':id/e2ee-wrapped-keys',
|
|
@@ -159,11 +159,11 @@ describe('DynamicApiModule forFeature - customRoutes (e2e)', () => {
|
|
|
159
159
|
});
|
|
160
160
|
const { status } = await e2e_setup_1.server
|
|
161
161
|
.patch(`/conversations/${seededId}/e2ee-wrapped-keys`, { wrappedKey: 'any-key' });
|
|
162
|
-
expect(status).toBe(403);
|
|
162
|
+
(0, vitest_1.expect)(status).toBe(403);
|
|
163
163
|
});
|
|
164
164
|
});
|
|
165
|
-
describe('PATCH /conversations/:id/e2ee-wrapped-keys — abilityPredicate fails', () => {
|
|
166
|
-
it('returns 403 when abilityPredicate returns false for the document', async () => {
|
|
165
|
+
(0, vitest_1.describe)('PATCH /conversations/:id/e2ee-wrapped-keys — abilityPredicate fails', () => {
|
|
166
|
+
(0, vitest_1.it)('returns 403 when abilityPredicate returns false for the document', async () => {
|
|
167
167
|
let seededId;
|
|
168
168
|
await setupApp({
|
|
169
169
|
path: ':id/e2ee-wrapped-keys',
|
|
@@ -177,11 +177,11 @@ describe('DynamicApiModule forFeature - customRoutes (e2e)', () => {
|
|
|
177
177
|
});
|
|
178
178
|
const { status } = await e2e_setup_1.server
|
|
179
179
|
.patch(`/conversations/${seededId}/e2ee-wrapped-keys`, { wrappedKey: 'any-key' });
|
|
180
|
-
expect(status).toBe(403);
|
|
180
|
+
(0, vitest_1.expect)(status).toBe(403);
|
|
181
181
|
});
|
|
182
182
|
});
|
|
183
|
-
describe('GET /conversations/metadata — GET custom route', () => {
|
|
184
|
-
it('returns handler result for GET method', async () => {
|
|
183
|
+
(0, vitest_1.describe)('GET /conversations/metadata — GET custom route', () => {
|
|
184
|
+
(0, vitest_1.it)('returns handler result for GET method', async () => {
|
|
185
185
|
await setupApp({
|
|
186
186
|
path: 'metadata',
|
|
187
187
|
method: 'GET',
|
|
@@ -189,12 +189,12 @@ describe('DynamicApiModule forFeature - customRoutes (e2e)', () => {
|
|
|
189
189
|
handler: async () => ({ version: '1.0', algorithm: 'AES-256' }),
|
|
190
190
|
});
|
|
191
191
|
const { status, body } = await e2e_setup_1.server.get('/conversations/metadata');
|
|
192
|
-
expect(status).toBe(200);
|
|
193
|
-
expect(body).toEqual({ version: '1.0', algorithm: 'AES-256' });
|
|
192
|
+
(0, vitest_1.expect)(status).toBe(200);
|
|
193
|
+
(0, vitest_1.expect)(body).toEqual({ version: '1.0', algorithm: 'AES-256' });
|
|
194
194
|
});
|
|
195
195
|
});
|
|
196
|
-
describe('POST /conversations/bulk-wrap — POST custom route', () => {
|
|
197
|
-
it('returns handler result for POST method', async () => {
|
|
196
|
+
(0, vitest_1.describe)('POST /conversations/bulk-wrap — POST custom route', () => {
|
|
197
|
+
(0, vitest_1.it)('returns handler result for POST method', async () => {
|
|
198
198
|
await setupApp({
|
|
199
199
|
path: 'bulk-wrap',
|
|
200
200
|
method: 'POST',
|
|
@@ -206,12 +206,12 @@ describe('DynamicApiModule forFeature - customRoutes (e2e)', () => {
|
|
|
206
206
|
});
|
|
207
207
|
const { status, body } = await e2e_setup_1.server
|
|
208
208
|
.post('/conversations/bulk-wrap', { keys: ['k1', 'k2', 'k3'] });
|
|
209
|
-
expect(status).toBe(201);
|
|
210
|
-
expect(body).toEqual({ wrapped: 3 });
|
|
209
|
+
(0, vitest_1.expect)(status).toBe(201);
|
|
210
|
+
(0, vitest_1.expect)(body).toEqual({ wrapped: 3 });
|
|
211
211
|
});
|
|
212
212
|
});
|
|
213
|
-
describe('WebSocket customRoute — happy path', () => {
|
|
214
|
-
it('receives handler result via WS event', async () => {
|
|
213
|
+
(0, vitest_1.describe)('WebSocket customRoute — happy path', () => {
|
|
214
|
+
(0, vitest_1.it)('receives handler result via WS event', async () => {
|
|
215
215
|
await (0, shared_1.initApp)({
|
|
216
216
|
entity: Conversation,
|
|
217
217
|
controllerOptions: { path: 'conversations', isPublic: true },
|
|
@@ -227,11 +227,11 @@ describe('DynamicApiModule forFeature - customRoutes (e2e)', () => {
|
|
|
227
227
|
],
|
|
228
228
|
}, {}, undefined, async (app) => { app.useWebSocketAdapter(new e2e_setup_1.TestSocketAdapter(app)); });
|
|
229
229
|
const result = await e2e_setup_1.server.emit('custom-metadata-conversation', undefined);
|
|
230
|
-
expect(result).toEqual({ version: '2.0', algo: 'AES-256' });
|
|
230
|
+
(0, vitest_1.expect)(result).toEqual({ version: '2.0', algo: 'AES-256' });
|
|
231
231
|
});
|
|
232
232
|
});
|
|
233
|
-
describe('WebSocket customRoute — custom eventName', () => {
|
|
234
|
-
it('subscribes to the custom event name', async () => {
|
|
233
|
+
(0, vitest_1.describe)('WebSocket customRoute — custom eventName', () => {
|
|
234
|
+
(0, vitest_1.it)('subscribes to the custom event name', async () => {
|
|
235
235
|
await (0, shared_1.initApp)({
|
|
236
236
|
entity: Conversation,
|
|
237
237
|
controllerOptions: { path: 'conversations', isPublic: true },
|
|
@@ -248,11 +248,11 @@ describe('DynamicApiModule forFeature - customRoutes (e2e)', () => {
|
|
|
248
248
|
],
|
|
249
249
|
}, {}, undefined, async (app) => { app.useWebSocketAdapter(new e2e_setup_1.TestSocketAdapter(app)); });
|
|
250
250
|
const result = await e2e_setup_1.server.emit('my-custom-ping', undefined);
|
|
251
|
-
expect(result).toEqual({ pong: true });
|
|
251
|
+
(0, vitest_1.expect)(result).toEqual({ pong: true });
|
|
252
252
|
});
|
|
253
253
|
});
|
|
254
|
-
describe('WebSocket customRoute — Unauthorized', () => {
|
|
255
|
-
it('emits WsException when no access token is provided', async () => {
|
|
254
|
+
(0, vitest_1.describe)('WebSocket customRoute — Unauthorized', () => {
|
|
255
|
+
(0, vitest_1.it)('emits WsException when no access token is provided', async () => {
|
|
256
256
|
await (0, shared_1.initApp)({
|
|
257
257
|
entity: Conversation,
|
|
258
258
|
controllerOptions: { path: 'conversations' },
|
|
@@ -268,7 +268,7 @@ describe('DynamicApiModule forFeature - customRoutes (e2e)', () => {
|
|
|
268
268
|
],
|
|
269
269
|
}, {}, undefined, async (app) => { app.useWebSocketAdapter(new e2e_setup_1.TestSocketAdapter(app)); });
|
|
270
270
|
await e2e_setup_1.server.emit('custom-secret-conversation', undefined);
|
|
271
|
-
expect(e2e_setup_1.handleSocketException).toHaveBeenCalledWith(expect.objectContaining({ message: 'Unauthorized' }));
|
|
271
|
+
(0, vitest_1.expect)(e2e_setup_1.handleSocketException).toHaveBeenCalledWith(vitest_1.expect.objectContaining({ message: 'Unauthorized' }));
|
|
272
272
|
});
|
|
273
273
|
});
|
|
274
274
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-routes.e2e-spec.js","sourceRoot":"","sources":["../../../libs/dynamic-api/test/for-feature/custom-routes.e2e-spec.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,2CAAqG;AACrG,6CAA8C;AAC9C,+
|
|
1
|
+
{"version":3,"file":"custom-routes.e2e-spec.js","sourceRoot":"","sources":["../../../libs/dynamic-api/test/for-feature/custom-routes.e2e-spec.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,mCAAqE;AACrE,2CAAqG;AACrG,6CAA8C;AAC9C,+CAAwC;AACxC,qDAAuD;AACvD,uCAAuD;AACvD,mCAKmB;AACnB,4CAAiG;AACjG,yBAAuB;AACvB,oCAA8C;AAC9C,sCAAoC;AAoBpC,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,gBAAU;CASpC,CAAA;AAPC;IADC,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;sDACd;AAGzB;IADC,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;gDACJ;AAGnB;IADC,IAAA,eAAI,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;6CACP;AARZ,YAAY;IADjB,IAAA,sBAAgB,EAAC,EAAE,UAAU,EAAE,6BAA6B,EAAE,CAAC;GAC1D,YAAY,CASjB;AAID,MAAM,oBAAoB;CAKzB;AADC;IAHC,IAAA,qBAAW,GAAE;IACb,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;wDACQ;AAGrB,MAAM,qBAAqB;IAIzB,MAAM,CAAC,UAAU,CAAC,MAAoB;QACpC,OAAO,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;IACtE,CAAC;CACF;AANgB;IAAd,IAAA,qBAAW,GAAE;;iDAAY;AACX;IAAd,IAAA,qBAAW,GAAE;;yDAAoB;AAUpC,IAAM,cAAc,GAApB,MAAM,cAAc;IAClB,WAAW,CAAC,IAAsB;QAChC,MAAM,IAAI,2BAAkB,CAAC,yBAAyB,CAAC,CAAC;IAC1D,CAAC;CACF,CAAA;AAJK,cAAc;IADnB,IAAA,mBAAU,GAAE;GACP,cAAc,CAInB;AAID,IAAA,iBAAQ,EAAC,kDAAkD,EAAE,GAAG,EAAE;IAEhE,IAAA,mBAAU,EAAC,GAAG,EAAE;QACd,sBAAgB,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;QACvC,iCAAqB,CAAC,SAAS,EAAE,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,IAAA,kBAAS,EAAC,KAAK,IAAI,EAAE;QACnB,MAAM,IAAA,2BAAe,EAAC,kBAAQ,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAIH,KAAK,UAAU,gBAAgB,CAAC,OAAO,GAAG,QAAQ;QAChD,MAAM,KAAK,GAAG,MAAM,IAAA,0BAAkB,EAAC,YAAY,CAAC,CAAC;QACrD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC;YAC7B,gBAAgB,EAAE,gBAAgB;YAClC,UAAU,EAAE,SAAS;YACrB,OAAO;SACR,CAAC,CAAC;QACH,OAAO,GAAG,CAAC,QAAQ,EAAkB,CAAC;IACxC,CAAC;IAED,KAAK,UAAU,QAAQ,CACrB,iBAAkD,EAClD,IAA0C;QAE1C,MAAM,IAAA,gBAAO,EACX;YACE,MAAM,EAAE,YAAY;YACpB,iBAAiB,EAAE;gBACjB,IAAI,EAAE,eAAe;gBACrB,QAAQ,EAAE,IAAI;aACf;YACD,MAAM,EAAE,EAAE;YACV,YAAY,EAAE,CAAC,iBAAiB,CAAC;SAClC,EACD,EAAE,EACF,IAAI,CACL,CAAC;IACJ,CAAC;IAID,IAAA,iBAAQ,EAAC,yDAAyD,EAAE,GAAG,EAAE;QACvE,IAAA,WAAE,EAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;YAC9E,IAAI,QAAgB,CAAC;YAErB,MAAM,QAAQ,CACZ;gBACE,IAAI,EAAE,uBAAuB;gBAC7B,MAAM,EAAE,OAAO;gBACf,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,yBAAyB;gBACtC,IAAI,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE;gBACpC,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;oBACzC,MAAM,KAAK,GAAG,IAA4B,CAAC;oBAC3C,OAAQ,KAA6B,CAAC,iBAAiB,CACrD,MAAM,CAAC,EAAE,EACT,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,EAAE,EAC1C,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAC1B,CAAC;gBACJ,CAAC;aACF,EACD,KAAK,EAAE,KAAiB,EAAE,EAAE;gBAC1B,MAAM,GAAG,GAAG,MAAM,gBAAgB,EAAE,CAAC;gBACrC,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAChC,CAAC,CACF,CAAC;YAEF,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,kBAAM;iBAClC,KAAK,CAAC,kBAAkB,QAAQ,oBAAoB,EAAE,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;YAExF,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACzB,IAAA,eAAM,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAIH,IAAA,iBAAQ,EAAC,mEAAmE,EAAE,GAAG,EAAE;QACjF,IAAA,WAAE,EAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACrE,IAAI,QAAgB,CAAC;YAErB,MAAM,QAAQ,CACZ;gBACE,IAAI,EAAE,uBAAuB;gBAC7B,MAAM,EAAE,OAAO;gBACf,QAAQ,EAAE,IAAI;gBACd,IAAI,EAAE;oBACJ,IAAI,EAAE,oBAAoB;oBAC1B,SAAS,EAAE,qBAA+D;iBAC3E;gBACD,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;oBACzC,MAAM,KAAK,GAAG,IAA4B,CAAC;oBAC3C,OAAQ,KAA6B,CAAC,iBAAiB,CACrD,MAAM,CAAC,EAAE,EACT,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,EAAE,EAC1C,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAC1B,CAAC;gBACJ,CAAC;aACF,EACD,KAAK,EAAE,KAAiB,EAAE,EAAE;gBAC1B,MAAM,GAAG,GAAG,MAAM,gBAAgB,EAAE,CAAC;gBACrC,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAChC,CAAC,CACF,CAAC;YAEF,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,kBAAM;iBAClC,KAAK,CAAC,kBAAkB,QAAQ,oBAAoB,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,CAAC;YAEvF,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAEzB,IAAA,eAAM,EAAC,IAAI,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAClC,IAAA,eAAM,EAAC,IAAI,CAAC,CAAC,cAAc,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;YAExD,IAAA,eAAM,EAAC,IAAI,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAIH,IAAA,iBAAQ,EAAC,mEAAmE,EAAE,GAAG,EAAE;QACjF,IAAA,WAAE,EAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;YACzE,IAAI,QAAgB,CAAC;YAErB,MAAM,QAAQ,CACZ;gBACE,IAAI,EAAE,uBAAuB;gBAC7B,MAAM,EAAE,OAAO;gBACf,QAAQ,EAAE,IAAI;gBACd,MAAM,EAAE,CAAC,cAAc,CAAC;gBACxB,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;aACtC,EACD,KAAK,EAAE,KAAiB,EAAE,EAAE;gBAC1B,MAAM,GAAG,GAAG,MAAM,gBAAgB,EAAE,CAAC;gBACrC,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAChC,CAAC,CACF,CAAC;YAEF,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAM;iBAC5B,KAAK,CAAC,kBAAkB,QAAQ,oBAAoB,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC;YAEpF,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAIH,IAAA,iBAAQ,EAAC,qEAAqE,EAAE,GAAG,EAAE;QACnF,IAAA,WAAE,EAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;YAChF,IAAI,QAAgB,CAAC;YAErB,MAAM,QAAQ,CACZ;gBACE,IAAI,EAAE,uBAAuB;gBAC7B,MAAM,EAAE,OAAO;gBACf,QAAQ,EAAE,IAAI;gBAEd,gBAAgB,EAAE,CAAC,MAAoB,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,KAAK,cAAc;gBAC7E,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;aACtC,EACD,KAAK,EAAE,KAAiB,EAAE,EAAE;gBAE1B,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,QAAQ,CAAC,CAAC;gBAC7C,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAChC,CAAC,CACF,CAAC;YAEF,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAM;iBAC5B,KAAK,CAAC,kBAAkB,QAAQ,oBAAoB,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC;YAEpF,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAIH,IAAA,iBAAQ,EAAC,gDAAgD,EAAE,GAAG,EAAE;QAC9D,IAAA,WAAE,EAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;YACrD,MAAM,QAAQ,CAAC;gBACb,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,KAAK;gBACb,QAAQ,EAAE,IAAI;gBACd,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;aAChE,CAAC,CAAC;YAEH,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,kBAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;YAErE,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACzB,IAAA,eAAM,EAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAIH,IAAA,iBAAQ,EAAC,mDAAmD,EAAE,GAAG,EAAE;QACjE,IAAA,WAAE,EAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;YACtD,MAAM,QAAQ,CAAC;gBACb,IAAI,EAAE,WAAW;gBACjB,MAAM,EAAE,MAAM;gBACd,QAAQ,EAAE,IAAI;gBACd,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;oBAC1B,MAAM,KAAK,GAAG,IAA0B,CAAC;oBACzC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACxC,CAAC;aACF,CAAC,CAAC;YAEH,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,kBAAM;iBAClC,IAAI,CAAC,0BAA0B,EAAE,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAElE,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACzB,IAAA,eAAM,EAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAIH,IAAA,iBAAQ,EAAC,oCAAoC,EAAE,GAAG,EAAE;QAClD,IAAA,WAAE,EAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;YACpD,MAAM,IAAA,gBAAO,EACX;gBACE,MAAM,EAAE,YAAY;gBACpB,iBAAiB,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAC5D,MAAM,EAAE,EAAE;gBACV,YAAY,EAAE;oBACZ;wBACE,IAAI,EAAE,UAAU;wBAChB,MAAM,EAAE,KAAK;wBACb,QAAQ,EAAE,IAAI;wBACd,SAAS,EAAE,IAAI;wBACf,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;qBAC3D;iBACF;aACF,EACD,EAAE,EACF,SAAS,EACT,KAAK,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,CAAC,mBAAmB,CAAC,IAAI,6BAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CACxE,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,kBAAM,CAAC,IAAI,CAC9B,8BAA8B,EAC9B,SAAS,CACV,CAAC;YAEF,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;QAC9D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAIH,IAAA,iBAAQ,EAAC,0CAA0C,EAAE,GAAG,EAAE;QACxD,IAAA,WAAE,EAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;YACnD,MAAM,IAAA,gBAAO,EACX;gBACE,MAAM,EAAE,YAAY;gBACpB,iBAAiB,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAC5D,MAAM,EAAE,EAAE;gBACV,YAAY,EAAE;oBACZ;wBACE,IAAI,EAAE,MAAM;wBACZ,MAAM,EAAE,KAAK;wBACb,QAAQ,EAAE,IAAI;wBACd,SAAS,EAAE,IAAI;wBACf,SAAS,EAAE,gBAAgB;wBAC3B,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;qBACtC;iBACF;aACF,EACD,EAAE,EACF,SAAS,EACT,KAAK,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,CAAC,mBAAmB,CAAC,IAAI,6BAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CACxE,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,kBAAM,CAAC,IAAI,CAA+B,gBAAgB,EAAE,SAAS,CAAC,CAAC;YAC5F,IAAA,eAAM,EAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAIH,IAAA,iBAAQ,EAAC,sCAAsC,EAAE,GAAG,EAAE;QACpD,IAAA,WAAE,EAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;YAClE,MAAM,IAAA,gBAAO,EACX;gBACE,MAAM,EAAE,YAAY;gBACpB,iBAAiB,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE;gBAC5C,MAAM,EAAE,EAAE;gBACV,YAAY,EAAE;oBACZ;wBACE,IAAI,EAAE,QAAQ;wBACd,MAAM,EAAE,KAAK;wBACb,QAAQ,EAAE,KAAK;wBACf,SAAS,EAAE,IAAI;wBACf,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;qBACpC;iBACF;aACF,EACD,EAAE,EACF,SAAS,EACT,KAAK,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,CAAC,mBAAmB,CAAC,IAAI,6BAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CACxE,CAAC;YAGF,MAAM,kBAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,SAAS,CAAC,CAAC;YAE3D,IAAA,eAAM,EAAC,iCAAqB,CAAC,CAAC,oBAAoB,CAChD,eAAM,CAAC,gBAAgB,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CACrD,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|