mongodb-dynamic-api 4.15.0 → 4.18.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 +89 -0
- package/README.md +2 -1
- package/package.json +1 -1
- package/src/decorators/entity-exists.decorator.d.ts +10 -0
- package/src/decorators/entity-exists.decorator.js +46 -0
- package/src/decorators/entity-exists.decorator.js.map +1 -0
- package/src/decorators/index.d.ts +2 -0
- package/src/decorators/index.js +2 -0
- package/src/decorators/index.js.map +1 -1
- package/src/decorators/is-unique.decorator.d.ts +10 -0
- package/src/decorators/is-unique.decorator.js +57 -0
- package/src/decorators/is-unique.decorator.js.map +1 -0
- package/src/dynamic-api.module.d.ts +1 -1
- package/src/dynamic-api.module.js +4 -3
- package/src/dynamic-api.module.js.map +1 -1
- package/src/gateways/base.gateway.js +17 -23
- package/src/gateways/base.gateway.js.map +1 -1
- package/src/helpers/event-registry.store.d.ts +29 -0
- package/src/helpers/event-registry.store.js +45 -0
- package/src/helpers/event-registry.store.js.map +1 -0
- package/src/helpers/index.d.ts +4 -0
- package/src/helpers/index.js +4 -0
- package/src/helpers/index.js.map +1 -1
- package/src/helpers/mixin-data.helper.d.ts +2 -2
- package/src/helpers/mixin-data.helper.js +14 -1
- package/src/helpers/mixin-data.helper.js.map +1 -1
- package/src/helpers/mongoose-cast-error.helper.d.ts +2 -0
- package/src/helpers/mongoose-cast-error.helper.js +8 -0
- package/src/helpers/mongoose-cast-error.helper.js.map +1 -0
- package/src/helpers/predicate-identifier.helper.d.ts +3 -0
- package/src/helpers/predicate-identifier.helper.js +34 -0
- package/src/helpers/predicate-identifier.helper.js.map +1 -0
- package/src/helpers/resolve-broadcast.helper.d.ts +8 -0
- package/src/helpers/resolve-broadcast.helper.js +25 -0
- package/src/helpers/resolve-broadcast.helper.js.map +1 -0
- package/src/helpers/socket-config.helper.js +14 -0
- package/src/helpers/socket-config.helper.js.map +1 -1
- package/src/helpers/strip-business-validators.helper.d.ts +3 -0
- package/src/helpers/strip-business-validators.helper.js +17 -0
- package/src/helpers/strip-business-validators.helper.js.map +1 -0
- package/src/index.d.ts +1 -0
- package/src/index.js +1 -0
- package/src/index.js.map +1 -1
- package/src/interceptors/index.d.ts +1 -0
- package/src/interceptors/index.js +1 -0
- package/src/interceptors/index.js.map +1 -1
- package/src/interceptors/merge-id-param.interceptor.d.ts +6 -0
- package/src/interceptors/merge-id-param.interceptor.js +24 -0
- package/src/interceptors/merge-id-param.interceptor.js.map +1 -0
- package/src/interfaces/dynamic-api-global-state.interface.d.ts +2 -0
- package/src/interfaces/dynamic-api-options.interface.d.ts +2 -0
- package/src/interfaces/dynamic-api-options.interface.js.map +1 -1
- package/src/interfaces/dynamic-api-route-config.interface.d.ts +2 -1
- package/src/interfaces/dynamic-api-route-config.interface.js.map +1 -1
- package/src/interfaces/dynamic-api-service-callback.interface.d.ts +14 -1
- package/src/interfaces/dynamic-api-web-socket.interface.d.ts +1 -0
- package/src/modules/auth/mixins/auth-controller.mixin.js +52 -1
- package/src/modules/auth/mixins/auth-controller.mixin.js.map +1 -1
- package/src/modules/auth/mixins/auth-gateway.mixin.js +52 -1
- package/src/modules/auth/mixins/auth-gateway.mixin.js.map +1 -1
- package/src/predicates/admin.predicate.d.ts +9 -0
- package/src/predicates/admin.predicate.js +17 -0
- package/src/predicates/admin.predicate.js.map +1 -0
- package/src/predicates/composition.predicate.d.ts +6 -0
- package/src/predicates/composition.predicate.js +15 -0
- package/src/predicates/composition.predicate.js.map +1 -0
- package/src/predicates/group-member.predicate.d.ts +9 -0
- package/src/predicates/group-member.predicate.js +21 -0
- package/src/predicates/group-member.predicate.js.map +1 -0
- package/src/predicates/index.d.ts +6 -0
- package/src/predicates/index.js +23 -0
- package/src/predicates/index.js.map +1 -0
- package/src/predicates/ownership.predicate.d.ts +9 -0
- package/src/predicates/ownership.predicate.js +16 -0
- package/src/predicates/ownership.predicate.js.map +1 -0
- package/src/predicates/soft-delete.predicate.d.ts +7 -0
- package/src/predicates/soft-delete.predicate.js +8 -0
- package/src/predicates/soft-delete.predicate.js.map +1 -0
- package/src/predicates/visibility.predicate.d.ts +7 -0
- package/src/predicates/visibility.predicate.js +8 -0
- package/src/predicates/visibility.predicate.js.map +1 -0
- package/src/routes/aggregate/aggregate.helper.d.ts +2 -2
- package/src/routes/aggregate/aggregate.helper.js +3 -2
- package/src/routes/aggregate/aggregate.helper.js.map +1 -1
- package/src/routes/aggregate/aggregate.module.js +1 -1
- package/src/routes/aggregate/aggregate.module.js.map +1 -1
- package/src/routes/aggregate/base-aggregate.service.d.ts +2 -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 +2 -1
- package/src/routes/create-many/base-create-many.service.js +2 -2
- package/src/routes/create-many/base-create-many.service.js.map +1 -1
- package/src/routes/create-many/create-many-controller.mixin.js +1 -1
- package/src/routes/create-many/create-many-controller.mixin.js.map +1 -1
- package/src/routes/create-many/create-many-gateway.mixin.js +1 -1
- package/src/routes/create-many/create-many-gateway.mixin.js.map +1 -1
- package/src/routes/create-many/create-many.helper.d.ts +2 -2
- package/src/routes/create-many/create-many.helper.js +3 -2
- package/src/routes/create-many/create-many.helper.js.map +1 -1
- package/src/routes/create-many/create-many.module.js +1 -1
- package/src/routes/create-many/create-many.module.js.map +1 -1
- package/src/routes/create-one/base-create-one.service.d.ts +2 -1
- package/src/routes/create-one/base-create-one.service.js +1 -3
- package/src/routes/create-one/base-create-one.service.js.map +1 -1
- package/src/routes/create-one/create-one-controller.mixin.js +1 -1
- package/src/routes/create-one/create-one-controller.mixin.js.map +1 -1
- package/src/routes/create-one/create-one-gateway.mixin.js +1 -1
- package/src/routes/create-one/create-one-gateway.mixin.js.map +1 -1
- package/src/routes/create-one/create-one.helper.d.ts +2 -2
- package/src/routes/create-one/create-one.helper.js +3 -2
- package/src/routes/create-one/create-one.helper.js.map +1 -1
- package/src/routes/create-one/create-one.module.js +1 -1
- package/src/routes/create-one/create-one.module.js.map +1 -1
- package/src/routes/delete-many/base-delete-many.service.d.ts +2 -1
- package/src/routes/delete-many/base-delete-many.service.js +2 -2
- package/src/routes/delete-many/base-delete-many.service.js.map +1 -1
- package/src/routes/delete-many/delete-many-controller.mixin.js +2 -2
- package/src/routes/delete-many/delete-many-controller.mixin.js.map +1 -1
- package/src/routes/delete-many/delete-many-gateway.mixin.js +1 -1
- package/src/routes/delete-many/delete-many-gateway.mixin.js.map +1 -1
- package/src/routes/delete-many/delete-many.helper.d.ts +2 -2
- package/src/routes/delete-many/delete-many.helper.js +3 -2
- package/src/routes/delete-many/delete-many.helper.js.map +1 -1
- package/src/routes/delete-many/delete-many.module.js +1 -1
- package/src/routes/delete-many/delete-many.module.js.map +1 -1
- package/src/routes/delete-one/base-delete-one.service.d.ts +2 -1
- package/src/routes/delete-one/base-delete-one.service.js +2 -2
- package/src/routes/delete-one/base-delete-one.service.js.map +1 -1
- package/src/routes/delete-one/delete-one-controller.mixin.js +1 -1
- package/src/routes/delete-one/delete-one-controller.mixin.js.map +1 -1
- package/src/routes/delete-one/delete-one-gateway.mixin.js +1 -1
- package/src/routes/delete-one/delete-one-gateway.mixin.js.map +1 -1
- package/src/routes/delete-one/delete-one.helper.d.ts +2 -2
- package/src/routes/delete-one/delete-one.helper.js +3 -2
- package/src/routes/delete-one/delete-one.helper.js.map +1 -1
- package/src/routes/delete-one/delete-one.module.js +1 -1
- package/src/routes/delete-one/delete-one.module.js.map +1 -1
- package/src/routes/duplicate-many/base-duplicate-many.service.d.ts +2 -1
- package/src/routes/duplicate-many/base-duplicate-many.service.js +2 -2
- package/src/routes/duplicate-many/base-duplicate-many.service.js.map +1 -1
- package/src/routes/duplicate-many/duplicate-many-controller.mixin.js +2 -2
- package/src/routes/duplicate-many/duplicate-many-controller.mixin.js.map +1 -1
- package/src/routes/duplicate-many/duplicate-many-gateway.mixin.js +1 -1
- package/src/routes/duplicate-many/duplicate-many-gateway.mixin.js.map +1 -1
- package/src/routes/duplicate-many/duplicate-many.helper.d.ts +2 -2
- package/src/routes/duplicate-many/duplicate-many.helper.js +3 -2
- package/src/routes/duplicate-many/duplicate-many.helper.js.map +1 -1
- package/src/routes/duplicate-many/duplicate-many.module.js +1 -1
- package/src/routes/duplicate-many/duplicate-many.module.js.map +1 -1
- package/src/routes/duplicate-one/base-duplicate-one.service.d.ts +2 -1
- package/src/routes/duplicate-one/base-duplicate-one.service.js +1 -3
- package/src/routes/duplicate-one/base-duplicate-one.service.js.map +1 -1
- package/src/routes/duplicate-one/duplicate-one-controller.mixin.js +1 -1
- package/src/routes/duplicate-one/duplicate-one-controller.mixin.js.map +1 -1
- package/src/routes/duplicate-one/duplicate-one-gateway.mixin.js +1 -1
- package/src/routes/duplicate-one/duplicate-one-gateway.mixin.js.map +1 -1
- package/src/routes/duplicate-one/duplicate-one.helper.d.ts +2 -2
- package/src/routes/duplicate-one/duplicate-one.helper.js +3 -2
- package/src/routes/duplicate-one/duplicate-one.helper.js.map +1 -1
- package/src/routes/duplicate-one/duplicate-one.module.js +1 -1
- package/src/routes/duplicate-one/duplicate-one.module.js.map +1 -1
- package/src/routes/get-many/base-get-many.service.d.ts +2 -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.helper.d.ts +2 -2
- package/src/routes/get-many/get-many.helper.js +3 -2
- package/src/routes/get-many/get-many.helper.js.map +1 -1
- package/src/routes/get-many/get-many.module.js +1 -1
- package/src/routes/get-many/get-many.module.js.map +1 -1
- package/src/routes/get-one/base-get-one.service.d.ts +2 -1
- package/src/routes/get-one/base-get-one.service.js +1 -3
- package/src/routes/get-one/base-get-one.service.js.map +1 -1
- package/src/routes/get-one/get-one.helper.d.ts +2 -2
- package/src/routes/get-one/get-one.helper.js +3 -2
- package/src/routes/get-one/get-one.helper.js.map +1 -1
- package/src/routes/get-one/get-one.module.js +1 -1
- package/src/routes/get-one/get-one.module.js.map +1 -1
- package/src/routes/replace-one/base-replace-one.service.d.ts +2 -1
- package/src/routes/replace-one/base-replace-one.service.js +1 -3
- package/src/routes/replace-one/base-replace-one.service.js.map +1 -1
- package/src/routes/replace-one/replace-one-controller.mixin.js +1 -1
- package/src/routes/replace-one/replace-one-controller.mixin.js.map +1 -1
- package/src/routes/replace-one/replace-one-gateway.mixin.js +1 -1
- package/src/routes/replace-one/replace-one-gateway.mixin.js.map +1 -1
- package/src/routes/replace-one/replace-one.helper.d.ts +2 -2
- package/src/routes/replace-one/replace-one.helper.js +3 -2
- package/src/routes/replace-one/replace-one.helper.js.map +1 -1
- package/src/routes/replace-one/replace-one.module.js +1 -1
- package/src/routes/replace-one/replace-one.module.js.map +1 -1
- package/src/routes/update-many/base-update-many.service.d.ts +2 -1
- package/src/routes/update-many/base-update-many.service.js +2 -2
- package/src/routes/update-many/base-update-many.service.js.map +1 -1
- package/src/routes/update-many/update-many-controller.mixin.js +3 -3
- package/src/routes/update-many/update-many-controller.mixin.js.map +1 -1
- package/src/routes/update-many/update-many-gateway.mixin.js +1 -1
- package/src/routes/update-many/update-many-gateway.mixin.js.map +1 -1
- package/src/routes/update-many/update-many.helper.d.ts +2 -2
- package/src/routes/update-many/update-many.helper.js +3 -2
- package/src/routes/update-many/update-many.helper.js.map +1 -1
- package/src/routes/update-many/update-many.module.js +1 -1
- package/src/routes/update-many/update-many.module.js.map +1 -1
- package/src/routes/update-one/base-update-one.service.d.ts +2 -1
- package/src/routes/update-one/base-update-one.service.js +1 -3
- package/src/routes/update-one/base-update-one.service.js.map +1 -1
- package/src/routes/update-one/update-one-controller.mixin.js +15 -5
- package/src/routes/update-one/update-one-controller.mixin.js.map +1 -1
- package/src/routes/update-one/update-one-gateway.mixin.js +1 -1
- package/src/routes/update-one/update-one-gateway.mixin.js.map +1 -1
- package/src/routes/update-one/update-one.helper.d.ts +2 -2
- package/src/routes/update-one/update-one.helper.js +3 -2
- package/src/routes/update-one/update-one.helper.js.map +1 -1
- package/src/routes/update-one/update-one.module.js +1 -1
- package/src/routes/update-one/update-one.module.js.map +1 -1
- package/src/services/base/base.service.d.ts +3 -1
- package/src/services/base/base.service.js +32 -0
- package/src/services/base/base.service.js.map +1 -1
- package/src/services/dynamic-api-broadcast/dynamic-api-broadcast.service.d.ts +1 -0
- package/src/services/dynamic-api-broadcast/dynamic-api-broadcast.service.js +19 -17
- package/src/services/dynamic-api-broadcast/dynamic-api-broadcast.service.js.map +1 -1
- package/src/services/dynamic-api-global-state/dynamic-api-global-state.service.js +1 -0
- package/src/services/dynamic-api-global-state/dynamic-api-global-state.service.js.map +1 -1
- package/src/version.json +1 -1
- package/test/for-feature/ability-predicates.e2e-spec.d.ts +1 -0
- package/test/for-feature/ability-predicates.e2e-spec.js +216 -0
- package/test/for-feature/ability-predicates.e2e-spec.js.map +1 -0
- package/test/for-feature/after-save-callback-reliability.e2e-spec.d.ts +1 -0
- package/test/for-feature/after-save-callback-reliability.e2e-spec.js +139 -0
- package/test/for-feature/after-save-callback-reliability.e2e-spec.js.map +1 -0
- package/test/for-feature/broadcast-event-registry.e2e-spec.d.ts +1 -0
- package/test/for-feature/broadcast-event-registry.e2e-spec.js +122 -0
- package/test/for-feature/broadcast-event-registry.e2e-spec.js.map +1 -0
- package/test/for-feature/db-aware-validators.e2e-spec.d.ts +1 -0
- package/test/for-feature/db-aware-validators.e2e-spec.js +172 -0
- package/test/for-feature/db-aware-validators.e2e-spec.js.map +1 -0
- package/test/for-feature/http-broadcast.e2e-spec.js +56 -2
- package/test/for-feature/http-broadcast.e2e-spec.js.map +1 -1
- package/test/for-feature/raw-update-callback-methods.e2e-spec.js +8 -6
- package/test/for-feature/raw-update-callback-methods.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-basic.e2e-spec.js +2 -0
- package/test/for-root/auth-api-basic.e2e-spec.js.map +1 -1
- package/test/for-root/auth-api-login.e2e-spec.js +29 -0
- package/test/for-root/auth-api-login.e2e-spec.js.map +1 -1
- package/test/for-root/initialization.e2e-spec.js +2 -0
- package/test/for-root/initialization.e2e-spec.js.map +1 -1
- package/test/for-root/websockets-auth-basic.e2e-spec.js +1 -0
- package/test/for-root/websockets-auth-basic.e2e-spec.js.map +1 -1
- package/test/for-root/websockets-auth-login.e2e-spec.js +32 -0
- package/test/for-root/websockets-auth-login.e2e-spec.js.map +1 -1
- package/test/shared/entities/index.d.ts +1 -0
- package/test/shared/entities/index.js +1 -0
- package/test/shared/entities/index.js.map +1 -1
- package/test/shared/entities/unique-login-user.factory.d.ts +14 -0
- package/test/shared/entities/unique-login-user.factory.js +40 -0
- package/test/shared/entities/unique-login-user.factory.js.map +1 -0
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mixin-data.helper.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/mixin-data.helper.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"mixin-data.helper.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/mixin-data.helper.ts"],"names":[],"mappings":";;AAkGS,oCAAY;AAjGrB,mDAA4C;AAC5C,iEAAsE;AAUtE,iGAAqG;AACrG,mDAAmD;AAGnD,SAAS,YAAY,CACnB,MAAoB,EACpB,EACE,MAAM,EACN,QAAQ,EAAE,kBAAkB,EAC5B,YAAY,EAAE,sBAAsB,EACpC,iBAAiB,EAAE,2BAA2B,GACV,EACtC,EACE,IAAI,EAAE,SAAS,EACf,OAAO,EACP,WAAW,EACX,QAAQ,EAAE,aAAa,EACvB,YAAY,EAAE,iBAAiB,EAC/B,gBAAgB,EAAE,qBAAqB,EACvC,iBAAiB,EACjB,SAAS,GACqB,EAChC,SAAS,GAAG,KAAK,EACjB,eAAyC;IAWzC,MAAM,aAAa,GAAG,IAAA,gCAAgB,EAAC,MAAM,EAAG,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAEtE,IAAI,QAAiB,CAAC;IACtB,IAAI,OAAO,aAAa,KAAK,SAAS,EAAE,CAAC;QACvC,QAAQ,GAAG,aAAa,CAAC;IAC3B,CAAC;SAAM,IAAI,OAAO,kBAAkB,KAAK,SAAS,EAAE,CAAC;QACnD,QAAQ,GAAG,kBAAkB,CAAC;IAChC,CAAC;SAAM,CAAC;QACN,QAAQ,GAAG,KAAK,CAAC;IACnB,CAAC;IAED,IAAI,YAAqB,CAAC;IAC1B,IAAI,OAAO,iBAAiB,KAAK,SAAS,EAAE,CAAC;QAC3C,YAAY,GAAG,iBAAiB,CAAC;IACnC,CAAC;SAAM,IAAI,OAAO,sBAAsB,KAAK,SAAS,EAAE,CAAC;QACvD,YAAY,GAAG,sBAAsB,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,YAAY,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,MAAM,gBAAgB,GAAG,qBAAqB,IAAI,IAAA,kFAA2C,EAC3F,2BAA2B,EAC3B,SAAS,CACV,CAAC;IAEF,MAAM,KAAK,GAAG,SAAS,IAAI,IAAA,yBAAS,EAAC,GAAG,SAAS,IAAI,aAAa,EAAE,CAAC,CAAC;IAEtE,IAAI,eAAe,EAAE,CAAC;QACpB,mDAA4B,CAAC,QAAQ,CAAC;YACpC,KAAK,EAAE,eAAe,CAAC,SAAS,IAAI,KAAK;YACzC,SAAS;YACT,UAAU,EAAE,MAAM,CAAC,IAAI;YACvB,aAAa;YACb,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;YAClC,gBAAgB,EAAE,CAAC,CAAC,eAAe,CAAC,KAAK;YACzC,mBAAmB,EAAE,OAAO,eAAe,CAAC,OAAO,KAAK,UAAU;YAClE,iBAAiB,EAAE,CAAC,CAAC,eAAe,CAAC,SAAS;SAC/C,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL,SAAS;QACT,aAAa;QACb,WAAW;QACX,QAAQ;QACR,YAAY;QACZ,gBAAgB;QAChB,iBAAiB;QACjB,KAAK;KACN,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isMongooseCastError = isMongooseCastError;
|
|
4
|
+
const mongoose_1 = require("mongoose");
|
|
5
|
+
function isMongooseCastError(error) {
|
|
6
|
+
return error instanceof mongoose_1.Error.CastError;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=mongoose-cast-error.helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mongoose-cast-error.helper.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/mongoose-cast-error.helper.ts"],"names":[],"mappings":";;AAmBS,kDAAmB;AAnB5B,uCAAkD;AAelD,SAAS,mBAAmB,CAAC,KAAc;IACzC,OAAO,KAAK,YAAY,gBAAa,CAAC,SAAS,CAAC;AAClD,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.resolveIdentifierField = resolveIdentifierField;
|
|
4
|
+
exports.identifiersMatch = identifiersMatch;
|
|
5
|
+
function resolveIdentifierField(source, fields) {
|
|
6
|
+
const fieldList = Array.isArray(fields) ? fields : [fields];
|
|
7
|
+
for (const field of fieldList) {
|
|
8
|
+
const value = source[field];
|
|
9
|
+
if (value !== undefined && value !== null) {
|
|
10
|
+
return value;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
return undefined;
|
|
14
|
+
}
|
|
15
|
+
function isStringifiable(value) {
|
|
16
|
+
const type = typeof value;
|
|
17
|
+
if (type === 'string' || type === 'number' || type === 'boolean' || type === 'bigint') {
|
|
18
|
+
return true;
|
|
19
|
+
}
|
|
20
|
+
return type === 'object' && value !== null && value.toString !== Object.prototype.toString;
|
|
21
|
+
}
|
|
22
|
+
function identifiersMatch(entityValue, userValue) {
|
|
23
|
+
if (entityValue === userValue) {
|
|
24
|
+
return true;
|
|
25
|
+
}
|
|
26
|
+
if (entityValue == null || userValue == null) {
|
|
27
|
+
return false;
|
|
28
|
+
}
|
|
29
|
+
if (!isStringifiable(entityValue) || !isStringifiable(userValue)) {
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
return String(entityValue) === String(userValue);
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=predicate-identifier.helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"predicate-identifier.helper.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/predicate-identifier.helper.ts"],"names":[],"mappings":";;AAmES,wDAAsB;AAAE,4CAAgB;AA1DjD,SAAS,sBAAsB,CAAI,MAAS,EAAE,MAA6B;IACzE,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAE5D,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAE5B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC1C,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAWD,SAAS,eAAe,CAAC,KAAc;IACrC,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC;IAE1B,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAK,KAAgB,CAAC,QAAQ,KAAK,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;AACzG,CAAC;AAWD,SAAS,gBAAgB,CAAC,WAAoB,EAAE,SAAkB;IAChE,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,WAAW,IAAI,IAAI,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;QAC7C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;QACjE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,MAAM,CAAC,WAAW,CAAC,KAAK,MAAM,CAAC,SAAS,CAAC,CAAC;AACnD,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { BroadcastConfig } from '../interfaces';
|
|
2
|
+
interface ResolvedBroadcast<T extends object> {
|
|
3
|
+
event: string;
|
|
4
|
+
rooms?: string[];
|
|
5
|
+
data: T[];
|
|
6
|
+
}
|
|
7
|
+
declare function resolveBroadcast<T extends object, User = unknown>(event: string, data: T[], broadcastConfig: BroadcastConfig<T, User> | undefined, user?: User): ResolvedBroadcast<T> | undefined;
|
|
8
|
+
export { resolveBroadcast, ResolvedBroadcast };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.resolveBroadcast = resolveBroadcast;
|
|
4
|
+
const resolve_rooms_helper_1 = require("./resolve-rooms.helper");
|
|
5
|
+
function resolveBroadcast(event, data, broadcastConfig, user) {
|
|
6
|
+
if (!broadcastConfig || !data?.length) {
|
|
7
|
+
return undefined;
|
|
8
|
+
}
|
|
9
|
+
const { enabled, eventName, rooms } = broadcastConfig;
|
|
10
|
+
if (typeof enabled === 'boolean' && !enabled) {
|
|
11
|
+
return undefined;
|
|
12
|
+
}
|
|
13
|
+
const broadcastData = typeof enabled === 'function'
|
|
14
|
+
? data.filter((item) => enabled(item, user))
|
|
15
|
+
: data;
|
|
16
|
+
if (!broadcastData.length) {
|
|
17
|
+
return undefined;
|
|
18
|
+
}
|
|
19
|
+
return {
|
|
20
|
+
event: eventName || event,
|
|
21
|
+
rooms: (0, resolve_rooms_helper_1.resolveRooms)(rooms, broadcastData, user),
|
|
22
|
+
data: broadcastData,
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=resolve-broadcast.helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolve-broadcast.helper.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/resolve-broadcast.helper.ts"],"names":[],"mappings":";;AAkDS,4CAAgB;AAlDzB,iEAAsD;AAmBtD,SAAS,gBAAgB,CACvB,KAAa,EACb,IAAS,EACT,eAAqD,EACrD,IAAW;IAEX,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QACtC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,eAAe,CAAC;IAEtD,IAAI,OAAO,OAAO,KAAK,SAAS,IAAI,CAAC,OAAO,EAAE,CAAC;QAC7C,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,aAAa,GAAG,OAAO,OAAO,KAAK,UAAU;QACjD,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAE,OAA8C,CAAC,IAAI,EAAE,IAAY,CAAC,CAAC;QAC5F,CAAC,CAAC,IAAI,CAAC;IAET,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO;QACL,KAAK,EAAE,SAAS,IAAI,KAAK;QACzB,KAAK,EAAE,IAAA,mCAAY,EAAC,KAAK,EAAE,aAAa,EAAE,IAAI,CAAC;QAC/C,IAAI,EAAE,aAAa;KACpB,CAAC;AACJ,CAAC"}
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.initializeConfigFromOptions = initializeConfigFromOptions;
|
|
4
4
|
exports.enableDynamicAPIWebSockets = enableDynamicAPIWebSockets;
|
|
5
5
|
const socket_adapter_1 = require("../adapters/socket-adapter");
|
|
6
|
+
const event_registry_store_1 = require("./event-registry.store");
|
|
6
7
|
const ws_config_store_1 = require("./ws-config.store");
|
|
7
8
|
function initEventsListeners(maxListeners = 10) {
|
|
8
9
|
require('events').EventEmitter.prototype._maxListeners = 100;
|
|
@@ -21,6 +22,19 @@ function enableDynamicAPIWebSockets(app, optionsOrMaxListeners) {
|
|
|
21
22
|
else if (optionsOrMaxListeners) {
|
|
22
23
|
resolvedOptions = optionsOrMaxListeners;
|
|
23
24
|
}
|
|
25
|
+
if (resolvedOptions.failOnEventCollision) {
|
|
26
|
+
const collisions = event_registry_store_1.DynamicApiEventRegistryStore.getCollisions();
|
|
27
|
+
if (collisions.length) {
|
|
28
|
+
const details = collisions
|
|
29
|
+
.map(({ event, registrations }) => {
|
|
30
|
+
const sources = registrations.map((r) => `${r.routeType}/${r.entityName}`).join(', ');
|
|
31
|
+
return `"${event}" (${sources})`;
|
|
32
|
+
})
|
|
33
|
+
.join('; ');
|
|
34
|
+
throw new Error(`[DynamicAPI] enableDynamicAPIWebSockets: broadcast event name collision detected: ${details}. `
|
|
35
|
+
+ 'Set a unique "eventName" on the conflicting routes, or disable failOnEventCollision.');
|
|
36
|
+
}
|
|
37
|
+
}
|
|
24
38
|
initEventsListeners(resolvedOptions.maxListeners);
|
|
25
39
|
ws_config_store_1.DynamicApiWsConfigStore.onConnection = resolvedOptions.onConnection;
|
|
26
40
|
ws_config_store_1.DynamicApiWsConfigStore.customEvents = resolvedOptions.customEvents ?? [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socket-config.helper.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/socket-config.helper.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"socket-config.helper.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/socket-config.helper.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.stripBusinessValidators = stripBusinessValidators;
|
|
4
|
+
const class_validator_1 = require("class-validator");
|
|
5
|
+
const BUSINESS_VALIDATOR_NAMES = ['isUnique', 'entityExists'];
|
|
6
|
+
function stripBusinessValidators(target, validatorNames = BUSINESS_VALIDATOR_NAMES) {
|
|
7
|
+
const { validationMetadatas } = (0, class_validator_1.getMetadataStorage)();
|
|
8
|
+
if (!(validationMetadatas instanceof Map)) {
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
const metadatas = validationMetadatas.get(target);
|
|
12
|
+
if (!metadatas?.length) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
validationMetadatas.set(target, metadatas.filter((metadata) => !validatorNames.includes(metadata.name)));
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=strip-business-validators.helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"strip-business-validators.helper.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/helpers/strip-business-validators.helper.ts"],"names":[],"mappings":";;AA8CS,0DAAuB;AA7ChC,qDAAqD;AAMrD,MAAM,wBAAwB,GAAG,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;AAe9D,SAAS,uBAAuB,CAC9B,MAAoB,EACpB,iBAA2B,wBAAwB;IAEnD,MAAM,EAAE,mBAAmB,EAAE,GAAG,IAAA,oCAAkB,GAEjD,CAAC;IAEF,IAAI,CAAC,CAAC,mBAAmB,YAAY,GAAG,CAAC,EAAE,CAAC;QAC1C,OAAO;IACT,CAAC;IAED,MAAM,SAAS,GAAG,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAElD,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;QACvB,OAAO;IACT,CAAC;IAED,mBAAmB,CAAC,GAAG,CACrB,MAAM,EACN,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAc,CAAC,CAAC,CAClF,CAAC;AACJ,CAAC"}
|
package/src/index.d.ts
CHANGED
package/src/index.js
CHANGED
|
@@ -29,6 +29,7 @@ __exportStar(require("./mixins"), exports);
|
|
|
29
29
|
__exportStar(require("./models"), exports);
|
|
30
30
|
__exportStar(require("./modules"), exports);
|
|
31
31
|
__exportStar(require("./modules/presence"), exports);
|
|
32
|
+
__exportStar(require("./predicates"), exports);
|
|
32
33
|
__exportStar(require("./routes"), exports);
|
|
33
34
|
__exportStar(require("./services"), exports);
|
|
34
35
|
__exportStar(require("./utils"), exports);
|
package/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../libs/dynamic-api/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,+CAA6B;AAC7B,yCAAuB;AACvB,4CAA0B;AAC1B,6CAA2B;AAC3B,2CAAyB;AACzB,4CAA0B;AAC1B,iDAA+B;AAC/B,+CAA6B;AAC7B,2CAAyB;AACzB,2CAAyB;AACzB,2CAAyB;AACzB,4CAA0B;AAC1B,qDAAmC;AACnC,2CAAyB;AACzB,6CAA2B;AAC3B,0CAAwB;AACxB,uDAAqC;AACrC,gFAAsG;AAAvE,iIAAA,uBAAuB,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../libs/dynamic-api/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,+CAA6B;AAC7B,yCAAuB;AACvB,4CAA0B;AAC1B,6CAA2B;AAC3B,2CAAyB;AACzB,4CAA0B;AAC1B,iDAA+B;AAC/B,+CAA6B;AAC7B,2CAAyB;AACzB,2CAAyB;AACzB,2CAAyB;AACzB,4CAA0B;AAC1B,qDAAmC;AACnC,+CAA6B;AAC7B,2CAAyB;AACzB,6CAA2B;AAC3B,0CAAwB;AACxB,uDAAqC;AACrC,gFAAsG;AAAvE,iIAAA,uBAAuB,OAAA"}
|
|
@@ -15,4 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./dynamic-api-cache.interceptor"), exports);
|
|
18
|
+
__exportStar(require("./merge-id-param.interceptor"), exports);
|
|
18
19
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/interceptors/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kEAAgD"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/interceptors/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kEAAgD;AAChD,+DAA6C"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { CallHandler, ExecutionContext, NestInterceptor } from '@nestjs/common';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
declare class MergeIdParamInterceptor implements NestInterceptor {
|
|
4
|
+
intercept(context: ExecutionContext, next: CallHandler): Observable<unknown>;
|
|
5
|
+
}
|
|
6
|
+
export { MergeIdParamInterceptor };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.MergeIdParamInterceptor = void 0;
|
|
10
|
+
const common_1 = require("@nestjs/common");
|
|
11
|
+
let MergeIdParamInterceptor = class MergeIdParamInterceptor {
|
|
12
|
+
intercept(context, next) {
|
|
13
|
+
const request = context.switchToHttp().getRequest();
|
|
14
|
+
if (request?.body && typeof request.body === 'object' && request.params?.id !== undefined) {
|
|
15
|
+
request.body.id = request.params.id;
|
|
16
|
+
}
|
|
17
|
+
return next.handle();
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
exports.MergeIdParamInterceptor = MergeIdParamInterceptor;
|
|
21
|
+
exports.MergeIdParamInterceptor = MergeIdParamInterceptor = __decorate([
|
|
22
|
+
(0, common_1.Injectable)()
|
|
23
|
+
], MergeIdParamInterceptor);
|
|
24
|
+
//# sourceMappingURL=merge-id-param.interceptor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"merge-id-param.interceptor.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/interceptors/merge-id-param.interceptor.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA4F;AAmB5F,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAC3B,SAAS,CAAC,OAAyB,EAAE,IAAiB;QACpD,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;QAEpD,IAAI,OAAO,EAAE,IAAI,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE,KAAK,SAAS,EAAE,CAAC;YAC1F,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;IACvB,CAAC;CACF,CAAA;AAEQ,0DAAuB;kCAZ1B,uBAAuB;IAD5B,IAAA,mBAAU,GAAE;GACP,uBAAuB,CAU5B"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { GatewayMetadata } from '@nestjs/websockets';
|
|
2
2
|
import { Schema } from 'mongoose';
|
|
3
|
+
import { OnAfterSaveErrorHook } from './dynamic-api-service-callback.interface';
|
|
3
4
|
import { RouteType } from './dynamic-api-route-type.type';
|
|
4
5
|
type Credentials = {
|
|
5
6
|
loginField: string;
|
|
@@ -25,6 +26,7 @@ interface DynamicApiGlobalState {
|
|
|
25
26
|
jwtRefreshTokenExpiresIn: string | number | undefined;
|
|
26
27
|
jwtRefreshSecret: string | undefined;
|
|
27
28
|
jwtRefreshUseCookie: boolean | undefined;
|
|
29
|
+
onAfterSaveError: OnAfterSaveErrorHook | undefined;
|
|
28
30
|
refreshTokenOnUpdate: boolean;
|
|
29
31
|
routesConfig: RoutesConfig;
|
|
30
32
|
gatewayOptions: GatewayMetadata | undefined;
|
|
@@ -7,6 +7,7 @@ import { DynamicApiCacheOptions } from './dynamic-api-cache-options.interface';
|
|
|
7
7
|
import { CustomRouteConfig } from './dynamic-api-custom-route.interface';
|
|
8
8
|
import { RoutesConfig } from './dynamic-api-global-state.interface';
|
|
9
9
|
import { DynamicAPIRouteConfig } from './dynamic-api-route-config.interface';
|
|
10
|
+
import { OnAfterSaveErrorHook } from './dynamic-api-service-callback.interface';
|
|
10
11
|
import { DynamicApiWebSocketOptions } from './dynamic-api-web-socket.interface';
|
|
11
12
|
declare const DYNAMIC_API_GLOBAL_STATE: unique symbol;
|
|
12
13
|
interface DynamicApiForRootOptions<Entity extends BaseEntity = any, RegisterExtra = Record<never, never>> {
|
|
@@ -16,6 +17,7 @@ interface DynamicApiForRootOptions<Entity extends BaseEntity = any, RegisterExtr
|
|
|
16
17
|
routesConfig?: Partial<RoutesConfig>;
|
|
17
18
|
webSocket?: DynamicApiWebSocketOptions;
|
|
18
19
|
broadcastGatewayOptions?: GatewayMetadata;
|
|
20
|
+
onAfterSaveError?: OnAfterSaveErrorHook;
|
|
19
21
|
}
|
|
20
22
|
interface DynamicApiForFeatureOptions<Entity extends BaseEntity> {
|
|
21
23
|
entity: Type<Entity>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamic-api-options.interface.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/interfaces/dynamic-api-options.interface.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"dynamic-api-options.interface.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/interfaces/dynamic-api-options.interface.ts"],"names":[],"mappings":";;;AAaA,MAAM,wBAAwB,GAAG,MAAM,CAAC,0BAA0B,CAAC,CAAC;AAgCJ,4DAAwB"}
|
|
@@ -5,7 +5,7 @@ import { BroadcastConfig } from './dynamic-api-broadcast-config.interface';
|
|
|
5
5
|
import { CascadeConfig } from './dynamic-api-cascade-config.interface';
|
|
6
6
|
import { DTOsBundle } from './dynamic-api-route-dtos-bundle.type';
|
|
7
7
|
import { BeforeDeleteCallback, BeforeDeleteManyCallback, BeforeSaveCallback, BeforeSaveCreateContext, BeforeSaveCreateManyContext, BeforeSaveDeleteCallback, BeforeSaveDeleteContext, BeforeSaveDeleteManyCallback, BeforeSaveDeleteManyContext, BeforeSaveDuplicateContext, BeforeSaveDuplicateManyContext, BeforeSaveListCallback, BeforeSaveReplaceContext, BeforeSaveUpdateContext, BeforeSaveUpdateManyContext } from './dynamic-api-service-before-save-callback.interface';
|
|
8
|
-
import { AfterSaveCallback } from './dynamic-api-service-callback.interface';
|
|
8
|
+
import { AfterSaveCallback, CallbackRetryOptions } from './dynamic-api-service-callback.interface';
|
|
9
9
|
import { DynamicApiWebSocketOptions } from './dynamic-api-web-socket.interface';
|
|
10
10
|
type FromUserMap<Entity> = Partial<Record<keyof Entity, string | ((user: unknown) => unknown)>>;
|
|
11
11
|
interface BaseRouteConfig<Entity extends BaseEntity> {
|
|
@@ -19,6 +19,7 @@ interface BaseRouteConfig<Entity extends BaseEntity> {
|
|
|
19
19
|
abilityPredicate?: AbilityPredicate<Entity>;
|
|
20
20
|
predicateBehavior?: PredicateBehavior;
|
|
21
21
|
callback?: AfterSaveCallback<Entity>;
|
|
22
|
+
callbackRetry?: CallbackRetryOptions;
|
|
22
23
|
webSocket?: DynamicApiWebSocketOptions;
|
|
23
24
|
eventName?: string;
|
|
24
25
|
broadcast?: BroadcastConfig<Entity>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dynamic-api-route-config.interface.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/interfaces/dynamic-api-route-config.interface.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"dynamic-api-route-config.interface.js","sourceRoot":"","sources":["../../../libs/dynamic-api/src/interfaces/dynamic-api-route-config.interface.ts"],"names":[],"mappings":";;AAgXE,oDAAoB;AACpB,4DAAwB;AACxB,oDAAoB;AACpB,4DAAwB;AACxB,sDAAqB;AACrB,0DAAuB;AACvB,kEAA2B;AAtG7B,SAAS,oBAAoB,CAC3B,EAAwE;IAExE,OAAO,EAAE,CAAC;AACZ,CAAC;AAMD,SAAS,wBAAwB,CAC/B,EAAgF;IAEhF,OAAO,EAAE,CAAC;AACZ,CAAC;AAkBD,SAAS,oBAAoB,CAC3B,EAAwE;IAExE,OAAO,EAAE,CAAC;AACZ,CAAC;AAMD,SAAS,wBAAwB,CAC/B,EAAgF;IAEhF,OAAO,EAAE,CAAC;AACZ,CAAC;AAMD,SAAS,qBAAqB,CAC5B,EAAyE;IAEzE,OAAO,EAAE,CAAC;AACZ,CAAC;AAMD,SAAS,uBAAuB,CAC9B,EAA2E;IAE3E,OAAO,EAAE,CAAC;AACZ,CAAC;AAMD,SAAS,2BAA2B,CAClC,EAAmF;IAEnF,OAAO,EAAE,CAAC;AACZ,CAAC"}
|
|
@@ -42,6 +42,19 @@ type CallbackMethods = {
|
|
|
42
42
|
type DynamicApiCallbackMethods = CallbackMethods;
|
|
43
43
|
type AfterSaveCallback<Entity extends BaseEntity, User = unknown> = (entity: Entity, methods: CallbackMethods, user?: User) => Promise<void>;
|
|
44
44
|
type DynamicApiServiceCallback<Entity extends BaseEntity, User = unknown> = AfterSaveCallback<Entity, User>;
|
|
45
|
+
type CallbackRetryOptions = {
|
|
46
|
+
attempts?: number;
|
|
47
|
+
delayMs?: number;
|
|
48
|
+
};
|
|
49
|
+
type AfterSaveCallbackConfig<Entity extends BaseEntity, User = unknown> = {
|
|
50
|
+
callback: AfterSaveCallback<Entity, User> | undefined;
|
|
51
|
+
retry?: CallbackRetryOptions;
|
|
52
|
+
};
|
|
53
|
+
type OnAfterSaveErrorHook = (error: unknown, context: {
|
|
54
|
+
entityName: string | undefined;
|
|
55
|
+
entity: unknown;
|
|
56
|
+
user: unknown;
|
|
57
|
+
}) => void | Promise<void>;
|
|
45
58
|
type DynamicApiResetPasswordCallbackMethods<Entity extends BaseEntity, UpdateBy = 'userId'> = {
|
|
46
59
|
findUserByEmail: () => Promise<Entity>;
|
|
47
60
|
updateUserByEmail: (update: UpdateQuery<Entity> | UpdateWithAggregationPipeline) => Promise<Entity>;
|
|
@@ -50,4 +63,4 @@ type DynamicApiResetPasswordCallback<Entity extends BaseEntity> = (_: {
|
|
|
50
63
|
resetPasswordToken: string;
|
|
51
64
|
email: string;
|
|
52
65
|
}, methods: DynamicApiResetPasswordCallbackMethods<Entity>) => Promise<void>;
|
|
53
|
-
export type { AfterSaveCallback, DynamicApiServiceCallback, DynamicApiResetPasswordCallback, DynamicApiCallbackMethods, DynamicApiResetPasswordCallbackMethods, CallbackMethods, MongoUpdateOperators, };
|
|
66
|
+
export type { AfterSaveCallback, DynamicApiServiceCallback, DynamicApiResetPasswordCallback, DynamicApiCallbackMethods, DynamicApiResetPasswordCallbackMethods, CallbackMethods, CallbackRetryOptions, AfterSaveCallbackConfig, OnAfterSaveErrorHook, MongoUpdateOperators, };
|
|
@@ -20,5 +20,6 @@ interface DynamicApiWebSocketSetupOptions {
|
|
|
20
20
|
onConnection?: (socket: ExtendedSocket, user?: unknown) => void | Promise<void>;
|
|
21
21
|
debug?: boolean;
|
|
22
22
|
customEvents?: CustomSocketEventConfig[];
|
|
23
|
+
failOnEventCollision?: boolean;
|
|
23
24
|
}
|
|
24
25
|
export type { CustomSocketEventConfig, DynamicApiWebSocketOptions, DynamicApiWebSocketSetupOptions, ExtendedSocket, GatewayOptions, GatewayResponse, };
|
|
@@ -19,6 +19,7 @@ const swagger_1 = require("@nestjs/swagger");
|
|
|
19
19
|
const builders_1 = require("../../../builders");
|
|
20
20
|
const decorators_1 = require("../../../decorators");
|
|
21
21
|
const helpers_1 = require("../../../helpers");
|
|
22
|
+
const event_registry_store_1 = require("../../../helpers/event-registry.store");
|
|
22
23
|
const mixins_1 = require("../../../mixins");
|
|
23
24
|
const services_1 = require("../../../services");
|
|
24
25
|
const auth_broadcast_helper_1 = require("../auth-broadcast.helper");
|
|
@@ -37,6 +38,54 @@ function AuthControllerMixin(userEntity, { loginOptions: { loginField, passwordF
|
|
|
37
38
|
if (!loginField || !passwordField) {
|
|
38
39
|
throw new Error('Login and password fields are required');
|
|
39
40
|
}
|
|
41
|
+
if (loginBroadcastConfig) {
|
|
42
|
+
event_registry_store_1.DynamicApiEventRegistryStore.register({
|
|
43
|
+
event: loginBroadcastConfig.eventName || auth_events_constants_1.AUTH_LOGIN_BROADCAST_EVENT,
|
|
44
|
+
routeType: 'Auth',
|
|
45
|
+
entityName: userEntity.name,
|
|
46
|
+
displayedName: userEntity.name,
|
|
47
|
+
channel: 'http',
|
|
48
|
+
hasRoomTargeting: !!loginBroadcastConfig.rooms,
|
|
49
|
+
hasAbilityPredicate: typeof loginBroadcastConfig.enabled === 'function',
|
|
50
|
+
isCustomEventName: !!loginBroadcastConfig.eventName,
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
if (registerBroadcastConfig) {
|
|
54
|
+
event_registry_store_1.DynamicApiEventRegistryStore.register({
|
|
55
|
+
event: registerBroadcastConfig.eventName || auth_events_constants_1.AUTH_REGISTER_BROADCAST_EVENT,
|
|
56
|
+
routeType: 'Auth',
|
|
57
|
+
entityName: userEntity.name,
|
|
58
|
+
displayedName: userEntity.name,
|
|
59
|
+
channel: 'http',
|
|
60
|
+
hasRoomTargeting: !!registerBroadcastConfig.rooms,
|
|
61
|
+
hasAbilityPredicate: typeof registerBroadcastConfig.enabled === 'function',
|
|
62
|
+
isCustomEventName: !!registerBroadcastConfig.eventName,
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
if (getAccountBroadcastConfig) {
|
|
66
|
+
event_registry_store_1.DynamicApiEventRegistryStore.register({
|
|
67
|
+
event: getAccountBroadcastConfig.eventName || auth_events_constants_1.AUTH_GET_ACCOUNT_BROADCAST_EVENT,
|
|
68
|
+
routeType: 'Auth',
|
|
69
|
+
entityName: userEntity.name,
|
|
70
|
+
displayedName: userEntity.name,
|
|
71
|
+
channel: 'http',
|
|
72
|
+
hasRoomTargeting: !!getAccountBroadcastConfig.rooms,
|
|
73
|
+
hasAbilityPredicate: typeof getAccountBroadcastConfig.enabled === 'function',
|
|
74
|
+
isCustomEventName: !!getAccountBroadcastConfig.eventName,
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
if (updateAccountBroadcastConfig) {
|
|
78
|
+
event_registry_store_1.DynamicApiEventRegistryStore.register({
|
|
79
|
+
event: updateAccountBroadcastConfig.eventName || auth_events_constants_1.AUTH_UPDATE_ACCOUNT_BROADCAST_EVENT,
|
|
80
|
+
routeType: 'Auth',
|
|
81
|
+
entityName: userEntity.name,
|
|
82
|
+
displayedName: userEntity.name,
|
|
83
|
+
channel: 'http',
|
|
84
|
+
hasRoomTargeting: !!updateAccountBroadcastConfig.rooms,
|
|
85
|
+
hasAbilityPredicate: typeof updateAccountBroadcastConfig.enabled === 'function',
|
|
86
|
+
isCustomEventName: !!updateAccountBroadcastConfig.eventName,
|
|
87
|
+
});
|
|
88
|
+
}
|
|
40
89
|
class AuthBodyPasswordFieldDto extends (0, swagger_1.PickType)(userEntity, [passwordField]) {
|
|
41
90
|
}
|
|
42
91
|
_a = passwordField;
|
|
@@ -44,7 +93,9 @@ function AuthControllerMixin(userEntity, { loginOptions: { loginField, passwordF
|
|
|
44
93
|
(0, swagger_1.ApiProperty)(),
|
|
45
94
|
__metadata("design:type", String)
|
|
46
95
|
], AuthBodyPasswordFieldDto.prototype, _a, void 0);
|
|
47
|
-
|
|
96
|
+
const AuthLoginFieldDto = (0, swagger_1.PickType)(userEntity, [loginField]);
|
|
97
|
+
(0, helpers_1.stripBusinessValidators)(AuthLoginFieldDto);
|
|
98
|
+
class AuthLoginDto extends (0, swagger_1.IntersectionType)(AuthLoginFieldDto, AuthBodyPasswordFieldDto) {
|
|
48
99
|
}
|
|
49
100
|
__decorate([
|
|
50
101
|
(0, swagger_1.ApiProperty)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-controller.mixin.js","sourceRoot":"","sources":["../../../../../libs/dynamic-api/src/modules/auth/mixins/auth-controller.mixin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"auth-controller.mixin.js","sourceRoot":"","sources":["../../../../../libs/dynamic-api/src/modules/auth/mixins/auth-controller.mixin.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,7 @@ const swagger_1 = require("@nestjs/swagger");
|
|
|
18
18
|
const websockets_1 = require("@nestjs/websockets");
|
|
19
19
|
const gateways_1 = require("../../../gateways");
|
|
20
20
|
const helpers_1 = require("../../../helpers");
|
|
21
|
+
const event_registry_store_1 = require("../../../helpers/event-registry.store");
|
|
21
22
|
const mixins_1 = require("../../../mixins");
|
|
22
23
|
const auth_broadcast_helper_1 = require("../auth-broadcast.helper");
|
|
23
24
|
const auth_operation_context_1 = require("../auth-operation-context");
|
|
@@ -28,6 +29,54 @@ const guards_1 = require("../guards");
|
|
|
28
29
|
const auth_policies_guard_mixin_1 = require("./auth-policies-guard.mixin");
|
|
29
30
|
function AuthGatewayMixin(userEntity, { loginField, passwordField, abilityPredicate: loginAbilityPredicate, useInterceptors: loginUseInterceptors = [], broadcast: loginBroadcastConfig, }, { additionalFields: additionalSocketRegisterFields, protected: registerProtected, abilityPredicate: registerAbilityPredicate, useInterceptors: registerUseInterceptors = [], broadcast: registerBroadcastConfig, } = {}, { resetPasswordUseInterceptors = [], changePasswordUseInterceptors = [], ...resetPasswordOptions } = {}, { useInterceptors: updateAccountUseInterceptors = [], broadcast: updateAccountBroadcastConfig, ...updateAccountOptions } = {}, { useInterceptors: getAccountUseInterceptors = [], broadcast: getAccountBroadcastConfig, } = {}, { useInterceptors: refreshTokenUseInterceptors = [], } = {}) {
|
|
30
31
|
var _a;
|
|
32
|
+
if (loginBroadcastConfig) {
|
|
33
|
+
event_registry_store_1.DynamicApiEventRegistryStore.register({
|
|
34
|
+
event: loginBroadcastConfig.eventName || auth_events_constants_1.AUTH_LOGIN_BROADCAST_EVENT,
|
|
35
|
+
routeType: 'Auth',
|
|
36
|
+
entityName: userEntity.name,
|
|
37
|
+
displayedName: userEntity.name,
|
|
38
|
+
channel: 'ws',
|
|
39
|
+
hasRoomTargeting: !!loginBroadcastConfig.rooms,
|
|
40
|
+
hasAbilityPredicate: typeof loginBroadcastConfig.enabled === 'function',
|
|
41
|
+
isCustomEventName: !!loginBroadcastConfig.eventName,
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
if (registerBroadcastConfig) {
|
|
45
|
+
event_registry_store_1.DynamicApiEventRegistryStore.register({
|
|
46
|
+
event: registerBroadcastConfig.eventName || auth_events_constants_1.AUTH_REGISTER_BROADCAST_EVENT,
|
|
47
|
+
routeType: 'Auth',
|
|
48
|
+
entityName: userEntity.name,
|
|
49
|
+
displayedName: userEntity.name,
|
|
50
|
+
channel: 'ws',
|
|
51
|
+
hasRoomTargeting: !!registerBroadcastConfig.rooms,
|
|
52
|
+
hasAbilityPredicate: typeof registerBroadcastConfig.enabled === 'function',
|
|
53
|
+
isCustomEventName: !!registerBroadcastConfig.eventName,
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
if (getAccountBroadcastConfig) {
|
|
57
|
+
event_registry_store_1.DynamicApiEventRegistryStore.register({
|
|
58
|
+
event: getAccountBroadcastConfig.eventName || auth_events_constants_1.AUTH_GET_ACCOUNT_BROADCAST_EVENT,
|
|
59
|
+
routeType: 'Auth',
|
|
60
|
+
entityName: userEntity.name,
|
|
61
|
+
displayedName: userEntity.name,
|
|
62
|
+
channel: 'ws',
|
|
63
|
+
hasRoomTargeting: !!getAccountBroadcastConfig.rooms,
|
|
64
|
+
hasAbilityPredicate: typeof getAccountBroadcastConfig.enabled === 'function',
|
|
65
|
+
isCustomEventName: !!getAccountBroadcastConfig.eventName,
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
if (updateAccountBroadcastConfig) {
|
|
69
|
+
event_registry_store_1.DynamicApiEventRegistryStore.register({
|
|
70
|
+
event: updateAccountBroadcastConfig.eventName || auth_events_constants_1.AUTH_UPDATE_ACCOUNT_BROADCAST_EVENT,
|
|
71
|
+
routeType: 'Auth',
|
|
72
|
+
entityName: userEntity.name,
|
|
73
|
+
displayedName: userEntity.name,
|
|
74
|
+
channel: 'ws',
|
|
75
|
+
hasRoomTargeting: !!updateAccountBroadcastConfig.rooms,
|
|
76
|
+
hasAbilityPredicate: typeof updateAccountBroadcastConfig.enabled === 'function',
|
|
77
|
+
isCustomEventName: !!updateAccountBroadcastConfig.eventName,
|
|
78
|
+
});
|
|
79
|
+
}
|
|
31
80
|
class AuthSocketBodyPasswordFieldDto extends (0, swagger_1.PickType)(userEntity, [passwordField]) {
|
|
32
81
|
}
|
|
33
82
|
_a = passwordField;
|
|
@@ -35,7 +84,9 @@ function AuthGatewayMixin(userEntity, { loginField, passwordField, abilityPredic
|
|
|
35
84
|
(0, swagger_1.ApiProperty)(),
|
|
36
85
|
__metadata("design:type", String)
|
|
37
86
|
], AuthSocketBodyPasswordFieldDto.prototype, _a, void 0);
|
|
38
|
-
|
|
87
|
+
const AuthSocketLoginFieldDto = (0, swagger_1.PickType)(userEntity, [loginField]);
|
|
88
|
+
(0, helpers_1.stripBusinessValidators)(AuthSocketLoginFieldDto);
|
|
89
|
+
class AuthSocketLoginDto extends (0, swagger_1.IntersectionType)(AuthSocketLoginFieldDto, AuthSocketBodyPasswordFieldDto) {
|
|
39
90
|
}
|
|
40
91
|
const additionalSocketMandatoryFields = [];
|
|
41
92
|
const additionalSocketOptionalFields = [];
|