mongodb-dynamic-api 3.1.0 → 3.2.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.
Files changed (123) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/package.json +1 -1
  3. package/src/dynamic-api.module.d.ts +1 -1
  4. package/src/dynamic-api.module.js +11 -3
  5. package/src/dynamic-api.module.js.map +1 -1
  6. package/src/gateways/dynamic-api-broadcast.gateway.d.ts +11 -0
  7. package/src/gateways/dynamic-api-broadcast.gateway.js +41 -0
  8. package/src/gateways/dynamic-api-broadcast.gateway.js.map +1 -0
  9. package/src/gateways/index.d.ts +1 -0
  10. package/src/gateways/index.js +1 -0
  11. package/src/gateways/index.js.map +1 -1
  12. package/src/helpers/mixin-data.helper.d.ts +1 -1
  13. package/src/helpers/mixin-data.helper.js +2 -1
  14. package/src/helpers/mixin-data.helper.js.map +1 -1
  15. package/src/interfaces/dynamic-api-global-state.interface.d.ts +1 -0
  16. package/src/interfaces/dynamic-api-options.interface.d.ts +2 -0
  17. package/src/interfaces/dynamic-api-options.interface.js.map +1 -1
  18. package/src/modules/auth/auth.helper.d.ts +7 -5
  19. package/src/modules/auth/auth.helper.js +10 -9
  20. package/src/modules/auth/auth.helper.js.map +1 -1
  21. package/src/modules/auth/auth.module.js +9 -5
  22. package/src/modules/auth/auth.module.js.map +1 -1
  23. package/src/modules/auth/interfaces/auth-options.interface.d.ts +6 -1
  24. package/src/modules/auth/mixins/auth-controller.mixin.d.ts +2 -2
  25. package/src/modules/auth/mixins/auth-controller.mixin.js +2 -1
  26. package/src/modules/auth/mixins/auth-controller.mixin.js.map +1 -1
  27. package/src/modules/auth/mixins/auth-gateway.mixin.d.ts +2 -2
  28. package/src/modules/auth/mixins/auth-gateway.mixin.js +2 -1
  29. package/src/modules/auth/mixins/auth-gateway.mixin.js.map +1 -1
  30. package/src/modules/auth/services/base-auth.service.d.ts +1 -0
  31. package/src/modules/auth/services/base-auth.service.js +4 -0
  32. package/src/modules/auth/services/base-auth.service.js.map +1 -1
  33. package/src/routes/aggregate/aggregate.module.js +1 -1
  34. package/src/routes/aggregate/aggregate.module.js.map +1 -1
  35. package/src/routes/create-many/create-many-controller.interface.d.ts +2 -1
  36. package/src/routes/create-many/create-many-controller.mixin.d.ts +1 -1
  37. package/src/routes/create-many/create-many-controller.mixin.js +14 -6
  38. package/src/routes/create-many/create-many-controller.mixin.js.map +1 -1
  39. package/src/routes/create-many/create-many.helper.js +7 -3
  40. package/src/routes/create-many/create-many.helper.js.map +1 -1
  41. package/src/routes/create-many/create-many.module.js +4 -1
  42. package/src/routes/create-many/create-many.module.js.map +1 -1
  43. package/src/routes/create-one/create-one-controller.interface.d.ts +2 -1
  44. package/src/routes/create-one/create-one-controller.mixin.d.ts +1 -1
  45. package/src/routes/create-one/create-one-controller.mixin.js +14 -6
  46. package/src/routes/create-one/create-one-controller.mixin.js.map +1 -1
  47. package/src/routes/create-one/create-one.helper.js +7 -3
  48. package/src/routes/create-one/create-one.helper.js.map +1 -1
  49. package/src/routes/create-one/create-one.module.js +4 -1
  50. package/src/routes/create-one/create-one.module.js.map +1 -1
  51. package/src/routes/delete-many/delete-many-controller.interface.d.ts +2 -1
  52. package/src/routes/delete-many/delete-many-controller.mixin.d.ts +1 -1
  53. package/src/routes/delete-many/delete-many-controller.mixin.js +14 -6
  54. package/src/routes/delete-many/delete-many-controller.mixin.js.map +1 -1
  55. package/src/routes/delete-many/delete-many.helper.js +7 -3
  56. package/src/routes/delete-many/delete-many.helper.js.map +1 -1
  57. package/src/routes/delete-many/delete-many.module.js +4 -1
  58. package/src/routes/delete-many/delete-many.module.js.map +1 -1
  59. package/src/routes/delete-one/delete-one-controller.interface.d.ts +2 -1
  60. package/src/routes/delete-one/delete-one-controller.mixin.d.ts +1 -1
  61. package/src/routes/delete-one/delete-one-controller.mixin.js +14 -6
  62. package/src/routes/delete-one/delete-one-controller.mixin.js.map +1 -1
  63. package/src/routes/delete-one/delete-one.helper.js +7 -3
  64. package/src/routes/delete-one/delete-one.helper.js.map +1 -1
  65. package/src/routes/delete-one/delete-one.module.js +4 -1
  66. package/src/routes/delete-one/delete-one.module.js.map +1 -1
  67. package/src/routes/duplicate-many/duplicate-many-controller.interface.d.ts +2 -1
  68. package/src/routes/duplicate-many/duplicate-many-controller.mixin.d.ts +1 -1
  69. package/src/routes/duplicate-many/duplicate-many-controller.mixin.js +14 -6
  70. package/src/routes/duplicate-many/duplicate-many-controller.mixin.js.map +1 -1
  71. package/src/routes/duplicate-many/duplicate-many.helper.js +7 -3
  72. package/src/routes/duplicate-many/duplicate-many.helper.js.map +1 -1
  73. package/src/routes/duplicate-many/duplicate-many.module.js +4 -1
  74. package/src/routes/duplicate-many/duplicate-many.module.js.map +1 -1
  75. package/src/routes/duplicate-one/duplicate-one-controller.interface.d.ts +2 -1
  76. package/src/routes/duplicate-one/duplicate-one-controller.mixin.d.ts +1 -1
  77. package/src/routes/duplicate-one/duplicate-one-controller.mixin.js +14 -6
  78. package/src/routes/duplicate-one/duplicate-one-controller.mixin.js.map +1 -1
  79. package/src/routes/duplicate-one/duplicate-one.helper.js +7 -3
  80. package/src/routes/duplicate-one/duplicate-one.helper.js.map +1 -1
  81. package/src/routes/duplicate-one/duplicate-one.module.js +4 -1
  82. package/src/routes/duplicate-one/duplicate-one.module.js.map +1 -1
  83. package/src/routes/get-many/get-many.module.js +1 -1
  84. package/src/routes/get-many/get-many.module.js.map +1 -1
  85. package/src/routes/get-one/get-one.module.js +1 -1
  86. package/src/routes/get-one/get-one.module.js.map +1 -1
  87. package/src/routes/replace-one/replace-one-controller.interface.d.ts +2 -1
  88. package/src/routes/replace-one/replace-one-controller.mixin.d.ts +1 -1
  89. package/src/routes/replace-one/replace-one-controller.mixin.js +14 -6
  90. package/src/routes/replace-one/replace-one-controller.mixin.js.map +1 -1
  91. package/src/routes/replace-one/replace-one.helper.js +7 -3
  92. package/src/routes/replace-one/replace-one.helper.js.map +1 -1
  93. package/src/routes/replace-one/replace-one.module.js +4 -1
  94. package/src/routes/replace-one/replace-one.module.js.map +1 -1
  95. package/src/routes/update-many/update-many-controller.interface.d.ts +2 -1
  96. package/src/routes/update-many/update-many-controller.mixin.d.ts +1 -1
  97. package/src/routes/update-many/update-many-controller.mixin.js +14 -6
  98. package/src/routes/update-many/update-many-controller.mixin.js.map +1 -1
  99. package/src/routes/update-many/update-many.helper.js +7 -3
  100. package/src/routes/update-many/update-many.helper.js.map +1 -1
  101. package/src/routes/update-many/update-many.module.js +4 -1
  102. package/src/routes/update-many/update-many.module.js.map +1 -1
  103. package/src/routes/update-one/update-one-controller.interface.d.ts +2 -1
  104. package/src/routes/update-one/update-one-controller.mixin.d.ts +1 -1
  105. package/src/routes/update-one/update-one-controller.mixin.js +14 -6
  106. package/src/routes/update-one/update-one-controller.mixin.js.map +1 -1
  107. package/src/routes/update-one/update-one.helper.js +7 -3
  108. package/src/routes/update-one/update-one.helper.js.map +1 -1
  109. package/src/routes/update-one/update-one.module.js +4 -1
  110. package/src/routes/update-one/update-one.module.js.map +1 -1
  111. package/src/services/dynamic-api-broadcast/dynamic-api-broadcast.service.d.ts +7 -0
  112. package/src/services/dynamic-api-broadcast/dynamic-api-broadcast.service.js +38 -0
  113. package/src/services/dynamic-api-broadcast/dynamic-api-broadcast.service.js.map +1 -0
  114. package/src/services/index.d.ts +1 -0
  115. package/src/services/index.js +1 -0
  116. package/src/services/index.js.map +1 -1
  117. package/src/version.json +1 -1
  118. package/test/dynamic-api-for-feature.e2e-spec.js +162 -0
  119. package/test/dynamic-api-for-feature.e2e-spec.js.map +1 -1
  120. package/test/e2e.setup.d.ts +13 -1
  121. package/test/e2e.setup.js +60 -0
  122. package/test/e2e.setup.js.map +1 -1
  123. package/tsconfig.tsbuildinfo +1 -1
@@ -11,21 +11,24 @@ exports.DeleteManyModule = void 0;
11
11
  const common_1 = require("@nestjs/common");
12
12
  const dynamic_api_module_1 = require("../../dynamic-api.module");
13
13
  const helpers_1 = require("../../helpers");
14
+ const services_1 = require("../../services");
14
15
  const delete_many_helper_1 = require("./delete-many.helper");
15
16
  let DeleteManyModule = DeleteManyModule_1 = class DeleteManyModule {
16
17
  static forFeature(databaseModule, entity, controllerOptions, routeConfig, version, validationPipeOptions, webSocket, extraImports, extraProviders, extraControllers) {
17
18
  const displayedName = (0, helpers_1.getDisplayedName)(controllerOptions.apiTag, entity.name, routeConfig.subPath);
18
19
  const controller = (0, delete_many_helper_1.createDeleteManyController)(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions);
19
20
  const ServiceProvider = (0, delete_many_helper_1.createDeleteManyServiceProvider)(entity, displayedName, version);
21
+ const hasBroadcast = !!routeConfig.broadcast;
20
22
  const gatewayOptions = webSocket
21
23
  ? (0, helpers_1.initializeConfigFromOptions)(webSocket)
22
- : dynamic_api_module_1.DynamicApiModule.state.get('gatewayOptions');
24
+ : dynamic_api_module_1.DynamicApiModule.state.get('gatewayOptions') ?? null;
23
25
  return {
24
26
  module: DeleteManyModule_1,
25
27
  imports: [databaseModule, ...(extraImports || [])],
26
28
  controllers: [controller, ...(extraControllers || [])],
27
29
  providers: [
28
30
  ServiceProvider,
31
+ ...(hasBroadcast ? [services_1.DynamicApiBroadcastService] : []),
29
32
  ...(gatewayOptions ? [
30
33
  (0, delete_many_helper_1.createDeleteManyGateway)(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions, gatewayOptions),
31
34
  ] : []),
@@ -1 +1 @@
1
- {"version":3,"file":"delete-many.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/delete-many/delete-many.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAoG;AAEpG,iEAA4D;AAC5D,2CAA8E;AAG9E,6DAI8B;AAGvB,IAAM,gBAAgB,wBAAtB,MAAM,gBAAgB;IAC3B,MAAM,CAAC,UAAU,CACf,cAA6B,EAC7B,MAAoB,EACpB,iBAAsD,EACtD,WAA0C,EAC1C,OAAgB,EAChB,qBAA6C,EAC7C,SAAsC,EACtC,YAAwC,EACxC,cAA4C,EAC5C,gBAAgD;QAEhD,MAAM,aAAa,GAAG,IAAA,0BAAgB,EAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;QAEnG,MAAM,UAAU,GAAG,IAAA,+CAA0B,EAC3C,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,CACtB,CAAC;QACF,MAAM,eAAe,GAAG,IAAA,oDAA+B,EAAC,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;QAExF,MAAM,cAAc,GAAG,SAAS;YAC9B,CAAC,CAAC,IAAA,qCAA2B,EAAC,SAAS,CAAC;YACxC,CAAC,CAAC,qCAAgB,CAAC,KAAK,CAAC,GAAG,CAAkB,gBAAgB,CAAC,CAAC;QAElE,OAAO;YACL,MAAM,EAAE,kBAAgB;YACxB,OAAO,EAAE,CAAC,cAAc,EAAE,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;YAClD,WAAW,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;YACtD,SAAS,EAAE;gBACT,eAAe;gBACf,GAAG,CACD,cAAc,CAAC,CAAC,CAAC;oBACf,IAAA,4CAAuB,EACrB,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,EACrB,cAAc,CACf;iBACF,CAAC,CAAC,CAAC,EAAE,CACP;gBACD,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;aAC1B;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AApDY,4CAAgB;2BAAhB,gBAAgB;IAD5B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,gBAAgB,CAoD5B"}
1
+ {"version":3,"file":"delete-many.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/delete-many/delete-many.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAoG;AAEpG,iEAA4D;AAC5D,2CAA8E;AAG9E,6CAA4D;AAC5D,6DAI8B;AAGvB,IAAM,gBAAgB,wBAAtB,MAAM,gBAAgB;IAC3B,MAAM,CAAC,UAAU,CACf,cAA6B,EAC7B,MAAoB,EACpB,iBAAsD,EACtD,WAA0C,EAC1C,OAAgB,EAChB,qBAA6C,EAC7C,SAAsC,EACtC,YAAwC,EACxC,cAA4C,EAC5C,gBAAgD;QAEhD,MAAM,aAAa,GAAG,IAAA,0BAAgB,EAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;QAEnG,MAAM,UAAU,GAAG,IAAA,+CAA0B,EAC3C,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,CACtB,CAAC;QACF,MAAM,eAAe,GAAG,IAAA,oDAA+B,EAAC,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;QAExF,MAAM,YAAY,GAAG,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC;QAC7C,MAAM,cAAc,GAAG,SAAS;YAC9B,CAAC,CAAC,IAAA,qCAA2B,EAAC,SAAS,CAAC;YACxC,CAAC,CAAC,qCAAgB,CAAC,KAAK,CAAC,GAAG,CAAkB,gBAAgB,CAAC,IAAI,IAAI,CAAC;QAG1E,OAAO;YACL,MAAM,EAAE,kBAAgB;YACxB,OAAO,EAAE,CAAC,cAAc,EAAE,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;YAClD,WAAW,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;YACtD,SAAS,EAAE;gBACT,eAAe;gBACf,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,qCAA0B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrD,GAAG,CACD,cAAc,CAAC,CAAC,CAAC;oBACf,IAAA,4CAAuB,EACrB,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,EACrB,cAAc,CACf;iBACF,CAAC,CAAC,CAAC,EAAE,CACP;gBACD,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;aAC1B;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AAvDY,4CAAgB;2BAAhB,gBAAgB;IAD5B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,gBAAgB,CAuD5B"}
@@ -1,8 +1,9 @@
1
1
  import { DeleteResult } from '../../interfaces';
2
2
  import { BaseEntity } from '../../models';
3
+ import { DynamicApiBroadcastService } from '../../services';
3
4
  import { DeleteOneService } from './delete-one-service.interface';
4
5
  interface DeleteOneController<_Entity extends BaseEntity, Response = any> {
5
6
  deleteOne(id: string): Promise<DeleteResult | Response>;
6
7
  }
7
- type DeleteOneControllerConstructor<Entity extends BaseEntity> = new (service: DeleteOneService<Entity>) => DeleteOneController<Entity>;
8
+ type DeleteOneControllerConstructor<Entity extends BaseEntity> = new (service: DeleteOneService<Entity>, broadcastService?: DynamicApiBroadcastService) => DeleteOneController<Entity>;
8
9
  export type { DeleteOneController, DeleteOneControllerConstructor };
@@ -2,5 +2,5 @@ import { Type } from '@nestjs/common';
2
2
  import { DynamicApiControllerOptions, DynamicAPIRouteConfig } from '../../interfaces';
3
3
  import { BaseEntity } from '../../models';
4
4
  import { DeleteOneControllerConstructor } from './delete-one-controller.interface';
5
- declare function DeleteOneControllerMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, useInterceptors, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): DeleteOneControllerConstructor<Entity>;
5
+ declare function DeleteOneControllerMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, useInterceptors, broadcast: broadcastConfig, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): DeleteOneControllerConstructor<Entity>;
6
6
  export { DeleteOneControllerMixin };
@@ -18,8 +18,9 @@ const builders_1 = require("../../builders");
18
18
  const dtos_1 = require("../../dtos");
19
19
  const helpers_1 = require("../../helpers");
20
20
  const mixins_1 = require("../../mixins");
21
- function DeleteOneControllerMixin(entity, controllerOptions, { dTOs, useInterceptors = [], ...routeConfig }, version) {
22
- const { routeType, displayedName, description, isPublic, abilityPredicate, } = (0, helpers_1.getMixinData)(entity, controllerOptions, routeConfig);
21
+ const services_1 = require("../../services");
22
+ function DeleteOneControllerMixin(entity, controllerOptions, { dTOs, useInterceptors = [], broadcast: broadcastConfig, ...routeConfig }, version) {
23
+ const { routeType, displayedName, description, isPublic, abilityPredicate, event, } = (0, helpers_1.getMixinData)(entity, controllerOptions, routeConfig);
23
24
  class DeleteOnePresenter extends (dTOs?.presenter ?? dtos_1.DeletePresenter) {
24
25
  }
25
26
  Object.defineProperty(DeleteOnePresenter, 'name', {
@@ -34,17 +35,20 @@ function DeleteOneControllerMixin(entity, controllerOptions, { dTOs, useIntercep
34
35
  });
35
36
  class DeleteOnePoliciesGuard extends (0, mixins_1.RoutePoliciesGuardMixin)(entity, routeType, displayedName, version, abilityPredicate) {
36
37
  }
37
- class BaseDeleteOneController {
38
- constructor(service) {
38
+ let BaseDeleteOneController = class BaseDeleteOneController {
39
+ constructor(service, broadcastService) {
39
40
  this.service = service;
41
+ this.broadcastService = broadcastService;
40
42
  this.entity = entity;
41
43
  }
42
44
  async deleteOne(id) {
43
45
  const deleteResult = await this.service.deleteOne(id);
44
46
  const fromDeleteResult = DeleteOnePresenter.fromDeleteResult;
45
- return fromDeleteResult ? fromDeleteResult(deleteResult) : deleteResult;
47
+ const responseData = fromDeleteResult ? fromDeleteResult(deleteResult) : deleteResult;
48
+ this.broadcastService?.broadcastFromHttp(event, [{ id }], broadcastConfig);
49
+ return responseData;
46
50
  }
47
- }
51
+ };
48
52
  __decorate([
49
53
  (0, helpers_1.RouteDecoratorsHelper)(routeDecoratorsBuilder),
50
54
  (0, common_1.UseGuards)(DeleteOnePoliciesGuard),
@@ -54,6 +58,10 @@ function DeleteOneControllerMixin(entity, controllerOptions, { dTOs, useIntercep
54
58
  __metadata("design:paramtypes", [String]),
55
59
  __metadata("design:returntype", Promise)
56
60
  ], BaseDeleteOneController.prototype, "deleteOne", null);
61
+ BaseDeleteOneController = __decorate([
62
+ __param(1, (0, common_1.Optional)()),
63
+ __metadata("design:paramtypes", [Object, services_1.DynamicApiBroadcastService])
64
+ ], BaseDeleteOneController);
57
65
  Object.defineProperty(BaseDeleteOneController, 'name', {
58
66
  value: `Base${(0, helpers_1.provideName)('DeleteOne', displayedName, version, 'Controller')}`,
59
67
  writable: false,
@@ -1 +1 @@
1
- {"version":3,"file":"delete-one-controller.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/delete-one/delete-one-controller.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAyE;AACzE,6CAAwD;AACxD,qCAA0D;AAC1D,2CAAmG;AAEnG,yCAAuD;AAKvD,SAAS,wBAAwB,CAC/B,MAAoB,EACpB,iBAAsD,EACtD,EAAE,IAAI,EAAE,eAAe,GAAG,EAAE,EAAE,GAAG,WAAW,EAAiC,EAC7E,OAAgB;IAEhB,MAAM,EACJ,SAAS,EACT,aAAa,EACb,WAAW,EACX,QAAQ,EACR,gBAAgB,GACjB,GAAG,IAAA,sBAAY,EACd,MAAM,EACN,iBAAiB,EACjB,WAAW,CACZ,CAAC;IAEF,MAAM,kBAAmB,SAAQ,CAC/B,IAAI,EAAE,SAAS,IAAI,sBAAe,CACnC;KAAG;IAEJ,MAAM,CAAC,cAAc,CAAC,kBAAkB,EAAE,MAAM,EAAE;QAChD,KAAK,EAAE,IAAI,EAAE,SAAS;YACpB,CAAC,CAAC,YAAY,aAAa,GAAG,IAAA,0BAAgB,EAAC,OAAO,CAAC,WAAW;YAClE,CAAC,CAAC,uBAAuB;QAC3B,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,MAAM,sBAAsB,GAAG,IAAI,iCAAsB,CACvD,SAAS,EACT,MAAM,EACN,WAAW,CAAC,OAAO,EACnB,OAAO,EACP,WAAW,EACX,QAAQ,EACR;QACE,KAAK,EAAE,kBAAW;QAClB,SAAS,EAAE,kBAAkB;KAC9B,CACF,CAAC;IAEF,MAAM,sBAAuB,SAAQ,IAAA,gCAAuB,EAC1D,MAAM,EACN,SAAS,EACT,aAAa,EACb,OAAO,EACP,gBAAgB,CACjB;KAAG;IAEJ,MAAM,uBAAuB;QAG3B,YAA+B,OAAiC;YAAjC,YAAO,GAAP,OAAO,CAA0B;YAF7C,WAAM,GAAG,MAAM,CAAC;QAGnC,CAAC;QAKK,AAAN,KAAK,CAAC,SAAS,CAAc,EAAU;YACrC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAEtD,MAAM,gBAAgB,GACpB,kBACD,CAAC,gBAAgB,CAAC;YAEnB,OAAO,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAqB,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;QAC9F,CAAC;KACF;IATO;QAHL,IAAA,+BAAqB,EAAC,sBAAsB,CAAC;QAC7C,IAAA,kBAAS,EAAC,sBAAsB,CAAC;QACjC,IAAA,wBAAe,EAAC,GAAG,eAAe,CAAC;QACnB,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;4DAQ3B;IAGH,MAAM,CAAC,cAAc,CAAC,uBAAuB,EAAE,MAAM,EAAE;QACrD,KAAK,EAAE,OAAO,IAAA,qBAAW,EAAC,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE;QAC9E,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,uBAAuB,CAAC;AACjC,CAAC;AAEQ,4DAAwB"}
1
+ {"version":3,"file":"delete-one-controller.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/delete-one/delete-one-controller.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAmF;AACnF,6CAAwD;AACxD,qCAA0D;AAC1D,2CAAmG;AAEnG,yCAAuD;AAEvD,6CAA4D;AAI5D,SAAS,wBAAwB,CAC/B,MAAoB,EACpB,iBAAsD,EACtD,EAAE,IAAI,EAAE,eAAe,GAAG,EAAE,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,WAAW,EAAiC,EACzG,OAAgB;IAEhB,MAAM,EACJ,SAAS,EACT,aAAa,EACb,WAAW,EACX,QAAQ,EACR,gBAAgB,EAChB,KAAK,GACN,GAAG,IAAA,sBAAY,EACd,MAAM,EACN,iBAAiB,EACjB,WAAW,CACZ,CAAC;IAEF,MAAM,kBAAmB,SAAQ,CAC/B,IAAI,EAAE,SAAS,IAAI,sBAAe,CACnC;KAAG;IAEJ,MAAM,CAAC,cAAc,CAAC,kBAAkB,EAAE,MAAM,EAAE;QAChD,KAAK,EAAE,IAAI,EAAE,SAAS;YACpB,CAAC,CAAC,YAAY,aAAa,GAAG,IAAA,0BAAgB,EAAC,OAAO,CAAC,WAAW;YAClE,CAAC,CAAC,uBAAuB;QAC3B,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,MAAM,sBAAsB,GAAG,IAAI,iCAAsB,CACvD,SAAS,EACT,MAAM,EACN,WAAW,CAAC,OAAO,EACnB,OAAO,EACP,WAAW,EACX,QAAQ,EACR;QACE,KAAK,EAAE,kBAAW;QAClB,SAAS,EAAE,kBAAkB;KAC9B,CACF,CAAC;IAEF,MAAM,sBAAuB,SAAQ,IAAA,gCAAuB,EAC1D,MAAM,EACN,SAAS,EACT,aAAa,EACb,OAAO,EACP,gBAAgB,CACjB;KAAG;IAEJ,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;QAG3B,YACqB,OAAiC,EACxC,gBAAgE;YADzD,YAAO,GAAP,OAAO,CAA0B;YACrB,qBAAgB,GAAhB,gBAAgB,CAA6B;YAJ3D,WAAM,GAAG,MAAM,CAAC;QAKhC,CAAC;QAKE,AAAN,KAAK,CAAC,SAAS,CAAc,EAAU;YACrC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAEtD,MAAM,gBAAgB,GACpB,kBACD,CAAC,gBAAgB,CAAC;YAEnB,MAAM,YAAY,GAAG,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAqB,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;YAE1G,IAAI,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAY,CAAC,EAAE,eAAe,CAAC,CAAC;YAErF,OAAO,YAAY,CAAC;QACtB,CAAC;KACF,CAAA;IAbO;QAHL,IAAA,+BAAqB,EAAC,sBAAsB,CAAC;QAC7C,IAAA,kBAAS,EAAC,sBAAsB,CAAC;QACjC,IAAA,wBAAe,EAAC,GAAG,eAAe,CAAC;QACnB,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;4DAY3B;IAvBG,uBAAuB;QAKxB,WAAA,IAAA,iBAAQ,GAAE,CAAA;iDAAuC,qCAA0B;OAL1E,uBAAuB,CAwB5B;IAED,MAAM,CAAC,cAAc,CAAC,uBAAuB,EAAE,MAAM,EAAE;QACrD,KAAK,EAAE,OAAO,IAAA,qBAAW,EAAC,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE;QAC9E,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,uBAAuB,CAAC;AACjC,CAAC;AAEQ,4DAAwB"}
@@ -22,6 +22,7 @@ const mongoose_2 = require("mongoose");
22
22
  const decorators_1 = require("../../decorators");
23
23
  const dynamic_api_module_1 = require("../../dynamic-api.module");
24
24
  const helpers_1 = require("../../helpers");
25
+ const services_1 = require("../../services");
25
26
  const base_delete_one_service_1 = require("./base-delete-one.service");
26
27
  const delete_one_controller_mixin_1 = require("./delete-one-controller.mixin");
27
28
  const delete_one_gateway_mixin_1 = require("./delete-one-gateway.mixin");
@@ -50,9 +51,10 @@ exports.createDeleteOneServiceProvider = createDeleteOneServiceProvider;
50
51
  function createDeleteOneController(entity, displayedName, { useInterceptors = [], ...controllerOptions }, routeConfig, version, validationPipeOptions) {
51
52
  const { path, apiTag } = controllerOptions;
52
53
  let DeleteOneController = class DeleteOneController extends (0, delete_one_controller_mixin_1.DeleteOneControllerMixin)(entity, controllerOptions, routeConfig, version) {
53
- constructor(service) {
54
- super(service);
54
+ constructor(service, broadcastService) {
55
+ super(service, broadcastService);
55
56
  this.service = service;
57
+ this.broadcastService = broadcastService;
56
58
  }
57
59
  };
58
60
  DeleteOneController = __decorate([
@@ -61,7 +63,9 @@ function createDeleteOneController(entity, displayedName, { useInterceptors = []
61
63
  (0, decorators_1.ValidatorPipe)(validationPipeOptions),
62
64
  (0, common_1.UseInterceptors)(common_1.ClassSerializerInterceptor, ...useInterceptors),
63
65
  __param(0, (0, common_1.Inject)((0, helpers_1.provideName)('DeleteOne', displayedName, version, 'Service'))),
64
- __metadata("design:paramtypes", [Object])
66
+ __param(1, (0, common_1.Optional)()),
67
+ __param(1, (0, common_1.Inject)(services_1.DynamicApiBroadcastService)),
68
+ __metadata("design:paramtypes", [Object, services_1.DynamicApiBroadcastService])
65
69
  ], DeleteOneController);
66
70
  Object.defineProperty(DeleteOneController, 'name', {
67
71
  value: `${(0, helpers_1.provideName)('DeleteOne', displayedName, version, 'Controller')}`,
@@ -1 +1 @@
1
- {"version":3,"file":"delete-one.helper.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/delete-one/delete-one.helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delete-one.helper.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/delete-one/delete-one.helper.ts"],"names":[],"mappings":"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"}
@@ -11,21 +11,24 @@ exports.DeleteOneModule = void 0;
11
11
  const common_1 = require("@nestjs/common");
12
12
  const dynamic_api_module_1 = require("../../dynamic-api.module");
13
13
  const helpers_1 = require("../../helpers");
14
+ const services_1 = require("../../services");
14
15
  const delete_one_helper_1 = require("./delete-one.helper");
15
16
  let DeleteOneModule = DeleteOneModule_1 = class DeleteOneModule {
16
17
  static forFeature(databaseModule, entity, controllerOptions, routeConfig, version, validationPipeOptions, webSocket, extraImports, extraProviders, extraControllers) {
17
18
  const displayedName = (0, helpers_1.getDisplayedName)(controllerOptions.apiTag, entity.name, routeConfig.subPath);
18
19
  const controller = (0, delete_one_helper_1.createDeleteOneController)(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions);
19
20
  const ServiceProvider = (0, delete_one_helper_1.createDeleteOneServiceProvider)(entity, displayedName, version);
21
+ const hasBroadcast = !!routeConfig.broadcast;
20
22
  const gatewayOptions = webSocket
21
23
  ? (0, helpers_1.initializeConfigFromOptions)(webSocket)
22
- : dynamic_api_module_1.DynamicApiModule.state.get('gatewayOptions');
24
+ : dynamic_api_module_1.DynamicApiModule.state.get('gatewayOptions') ?? null;
23
25
  return {
24
26
  module: DeleteOneModule_1,
25
27
  imports: [databaseModule, ...(extraImports || [])],
26
28
  controllers: [controller, ...(extraControllers || [])],
27
29
  providers: [
28
30
  ServiceProvider,
31
+ ...(hasBroadcast ? [services_1.DynamicApiBroadcastService] : []),
29
32
  ...(gatewayOptions ? [
30
33
  (0, delete_one_helper_1.createDeleteOneGateway)(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions, gatewayOptions),
31
34
  ] : []),
@@ -1 +1 @@
1
- {"version":3,"file":"delete-one.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/delete-one/delete-one.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAoG;AAEpG,iEAA4D;AAC5D,2CAA8E;AAG9E,2DAI6B;AAGtB,IAAM,eAAe,uBAArB,MAAM,eAAe;IAC1B,MAAM,CAAC,UAAU,CACf,cAA6B,EAC7B,MAAoB,EACpB,iBAAsD,EACtD,WAA0C,EAC1C,OAAgB,EAChB,qBAA6C,EAC7C,SAAsC,EACtC,YAAwC,EACxC,cAA4C,EAC5C,gBAAgD;QAEhD,MAAM,aAAa,GAAG,IAAA,0BAAgB,EAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;QAEnG,MAAM,UAAU,GAAG,IAAA,6CAAyB,EAC1C,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,CACtB,CAAC;QACF,MAAM,eAAe,GAAG,IAAA,kDAA8B,EAAC,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;QAEvF,MAAM,cAAc,GAAG,SAAS;YAC9B,CAAC,CAAC,IAAA,qCAA2B,EAAC,SAAS,CAAC;YACxC,CAAC,CAAC,qCAAgB,CAAC,KAAK,CAAC,GAAG,CAAkB,gBAAgB,CAAC,CAAC;QAElE,OAAO;YACL,MAAM,EAAE,iBAAe;YACvB,OAAO,EAAE,CAAC,cAAc,EAAE,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;YAClD,WAAW,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;YACtD,SAAS,EAAE;gBACT,eAAe;gBACf,GAAG,CACD,cAAc,CAAC,CAAC,CAAC;oBACf,IAAA,0CAAsB,EACpB,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,EACrB,cAAc,CACf;iBACF,CAAC,CAAC,CAAC,EAAE,CACP;gBACD,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;aAC1B;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AApDY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,eAAe,CAoD3B"}
1
+ {"version":3,"file":"delete-one.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/delete-one/delete-one.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAoG;AAEpG,iEAA4D;AAC5D,2CAA8E;AAG9E,6CAA4D;AAC5D,2DAI6B;AAGtB,IAAM,eAAe,uBAArB,MAAM,eAAe;IAC1B,MAAM,CAAC,UAAU,CACf,cAA6B,EAC7B,MAAoB,EACpB,iBAAsD,EACtD,WAA0C,EAC1C,OAAgB,EAChB,qBAA6C,EAC7C,SAAsC,EACtC,YAAwC,EACxC,cAA4C,EAC5C,gBAAgD;QAEhD,MAAM,aAAa,GAAG,IAAA,0BAAgB,EAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;QAEnG,MAAM,UAAU,GAAG,IAAA,6CAAyB,EAC1C,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,CACtB,CAAC;QACF,MAAM,eAAe,GAAG,IAAA,kDAA8B,EAAC,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;QAEvF,MAAM,YAAY,GAAG,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC;QAC7C,MAAM,cAAc,GAAG,SAAS;YAC9B,CAAC,CAAC,IAAA,qCAA2B,EAAC,SAAS,CAAC;YACxC,CAAC,CAAC,qCAAgB,CAAC,KAAK,CAAC,GAAG,CAAkB,gBAAgB,CAAC,IAAI,IAAI,CAAC;QAG1E,OAAO;YACL,MAAM,EAAE,iBAAe;YACvB,OAAO,EAAE,CAAC,cAAc,EAAE,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;YAClD,WAAW,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;YACtD,SAAS,EAAE;gBACT,eAAe;gBACf,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,qCAA0B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrD,GAAG,CACD,cAAc,CAAC,CAAC,CAAC;oBACf,IAAA,0CAAsB,EACpB,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,EACrB,cAAc,CACf;iBACF,CAAC,CAAC,CAAC,EAAE,CACP;gBACD,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;aAC1B;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AAvDY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,eAAe,CAuD3B"}
@@ -1,7 +1,8 @@
1
1
  import { BaseEntity } from '../../models';
2
+ import { DynamicApiBroadcastService } from '../../services';
2
3
  import { DuplicateManyService } from './duplicate-many-service.interface';
3
4
  interface DuplicateManyController<Entity extends BaseEntity, Body = any, Response = any> {
4
5
  duplicateMany(ids: string[], body?: Body): Promise<(Entity | Response)[]>;
5
6
  }
6
- type DuplicateManyControllerConstructor<Entity extends BaseEntity> = new (service: DuplicateManyService<Entity>) => DuplicateManyController<Entity>;
7
+ type DuplicateManyControllerConstructor<Entity extends BaseEntity> = new (service: DuplicateManyService<Entity>, broadcastService?: DynamicApiBroadcastService) => DuplicateManyController<Entity>;
7
8
  export type { DuplicateManyController, DuplicateManyControllerConstructor };
@@ -2,5 +2,5 @@ import { Type } from '@nestjs/common';
2
2
  import { DynamicApiControllerOptions, DynamicAPIRouteConfig } from '../../interfaces';
3
3
  import { BaseEntity } from '../../models';
4
4
  import { DuplicateManyControllerConstructor } from './duplicate-many-controller.interface';
5
- declare function DuplicateManyControllerMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, useInterceptors, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): DuplicateManyControllerConstructor<Entity>;
5
+ declare function DuplicateManyControllerMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, useInterceptors, broadcast: broadcastConfig, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): DuplicateManyControllerConstructor<Entity>;
6
6
  export { DuplicateManyControllerMixin };
@@ -18,8 +18,9 @@ const lodash_1 = require("lodash");
18
18
  const builders_1 = require("../../builders");
19
19
  const helpers_1 = require("../../helpers");
20
20
  const mixins_1 = require("../../mixins");
21
- function DuplicateManyControllerMixin(entity, controllerOptions, { dTOs, useInterceptors = [], ...routeConfig }, version) {
22
- const { routeType, displayedName, description, isPublic, abilityPredicate, } = (0, helpers_1.getMixinData)(entity, controllerOptions, routeConfig);
21
+ const services_1 = require("../../services");
22
+ function DuplicateManyControllerMixin(entity, controllerOptions, { dTOs, useInterceptors = [], broadcast: broadcastConfig, ...routeConfig }, version) {
23
+ const { routeType, displayedName, description, isPublic, abilityPredicate, event, } = (0, helpers_1.getMixinData)(entity, controllerOptions, routeConfig);
23
24
  class DuplicateManyBody extends (dTOs?.body ?? (0, mixins_1.EntityBodyMixin)(entity, true)) {
24
25
  }
25
26
  Object.defineProperty(DuplicateManyBody, 'name', {
@@ -40,9 +41,10 @@ function DuplicateManyControllerMixin(entity, controllerOptions, { dTOs, useInte
40
41
  });
41
42
  class DuplicateManyPoliciesGuard extends (0, mixins_1.RoutePoliciesGuardMixin)(entity, routeType, displayedName, version, abilityPredicate) {
42
43
  }
43
- class BaseDuplicateManyController {
44
- constructor(service) {
44
+ let BaseDuplicateManyController = class BaseDuplicateManyController {
45
+ constructor(service, broadcastService) {
45
46
  this.service = service;
47
+ this.broadcastService = broadcastService;
46
48
  this.entity = entity;
47
49
  }
48
50
  async duplicateMany(ids, body) {
@@ -52,9 +54,11 @@ function DuplicateManyControllerMixin(entity, controllerOptions, { dTOs, useInte
52
54
  const toEntity = DuplicateManyBody.toEntity;
53
55
  const list = await this.service.duplicateMany(ids, !(0, lodash_1.isEmpty)(body) && toEntity ? toEntity(body) : body);
54
56
  const fromEntities = DuplicateManyPresenter.fromEntities;
55
- return fromEntities ? fromEntities(list) : list;
57
+ const responseData = fromEntities ? fromEntities(list) : list;
58
+ this.broadcastService?.broadcastFromHttp(event, responseData, broadcastConfig);
59
+ return responseData;
56
60
  }
57
- }
61
+ };
58
62
  __decorate([
59
63
  (0, helpers_1.RouteDecoratorsHelper)(routeDecoratorsBuilder),
60
64
  (0, common_1.UseGuards)(DuplicateManyPoliciesGuard),
@@ -65,6 +69,10 @@ function DuplicateManyControllerMixin(entity, controllerOptions, { dTOs, useInte
65
69
  __metadata("design:paramtypes", [Array, DuplicateManyBody]),
66
70
  __metadata("design:returntype", Promise)
67
71
  ], BaseDuplicateManyController.prototype, "duplicateMany", null);
72
+ BaseDuplicateManyController = __decorate([
73
+ __param(1, (0, common_1.Optional)()),
74
+ __metadata("design:paramtypes", [Object, services_1.DynamicApiBroadcastService])
75
+ ], BaseDuplicateManyController);
68
76
  Object.defineProperty(BaseDuplicateManyController, 'name', {
69
77
  value: `Base${(0, helpers_1.provideName)('DuplicateMany', displayedName, version, 'Controller')}`,
70
78
  writable: false,
@@ -1 +1 @@
1
- {"version":3,"file":"duplicate-many-controller.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/duplicate-many/duplicate-many-controller.mixin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"duplicate-many-controller.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/duplicate-many/duplicate-many-controller.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAyF;AACzF,mCAAiC;AACjC,6CAAwD;AACxD,2CAAmG;AAEnG,yCAA8F;AAE9F,6CAA4D;AAI5D,SAAS,4BAA4B,CACnC,MAAoB,EACpB,iBAAsD,EACtD,EAAE,IAAI,EAAE,eAAe,GAAG,EAAE,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,WAAW,EAAiC,EACzG,OAAgB;IAEhB,MAAM,EACJ,SAAS,EACT,aAAa,EACb,WAAW,EACX,QAAQ,EACR,gBAAgB,EAChB,KAAK,GACN,GAAG,IAAA,sBAAY,EACd,MAAM,EACN,iBAAiB,EACjB,WAAW,CACZ,CAAC;IAEF,MAAM,iBAAkB,SAAQ,CAC9B,IAAI,EAAE,IAAI,IAAI,IAAA,wBAAe,EAAC,MAAM,EAAE,IAAI,CAAC,CAC5C;KAAG;IAEJ,MAAM,CAAC,cAAc,CAAC,iBAAiB,EAAE,MAAM,EAAE;QAC/C,KAAK,EAAE,GAAG,SAAS,GAAG,aAAa,GAAG,IAAA,0BAAgB,EAAC,OAAO,CAAC,KAAK;QACpE,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,MAAM,sBAAuB,SAAQ,CACnC,IAAI,EAAE,SAAS,IAAI,IAAA,6BAAoB,EAAC,MAAM,CAAC,CAChD;KAAG;IAEJ,MAAM,CAAC,cAAc,CAAC,sBAAsB,EAAE,MAAM,EAAE;QACpD,KAAK,EAAE,IAAI,EAAE,SAAS;YACpB,CAAC,CAAC,GAAG,SAAS,GAAG,aAAa,GAAG,IAAA,0BAAgB,EAAC,OAAO,CAAC,WAAW;YACrE,CAAC,CAAC,GAAG,aAAa,GAAG,IAAA,0BAAgB,EAAC,OAAO,CAAC,WAAW;QAC3D,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,MAAM,sBAAsB,GAAG,IAAI,iCAAsB,CACvD,SAAS,EACT,MAAM,EACN,WAAW,CAAC,OAAO,EACnB,OAAO,EACP,WAAW,EACX,QAAQ,EACR;QACE,IAAI,EAAE,iBAAiB;QACvB,SAAS,EAAE,sBAAsB;KAClC,CACF,CAAC;IAEF,MAAM,0BAA2B,SAAQ,IAAA,gCAAuB,EAC9D,MAAM,EACN,SAAS,EACT,aAAa,EACb,OAAO,EACP,gBAAgB,CACjB;KAAG;IAEJ,IAAM,2BAA2B,GAAjC,MAAM,2BAA2B;QAG/B,YACqB,OAAqC,EAC5C,gBAAgE;YADzD,YAAO,GAAP,OAAO,CAA8B;YACzB,qBAAgB,GAAhB,gBAAgB,CAA6B;YAJ3D,WAAM,GAAG,MAAM,CAAC;QAKhC,CAAC;QAKE,AAAN,KAAK,CAAC,aAAa,CAAe,GAAa,EAAU,IAAwB;YAC/E,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;YACnC,CAAC;YAED,MAAM,QAAQ,GACZ,iBACD,CAAC,QAAQ,CAAC;YAEX,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAC3C,GAAG,EACH,CAAC,IAAA,gBAAO,EAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAuB,CACtE,CAAC;YAEF,MAAM,YAAY,GAChB,sBACD,CAAC,YAAY,CAAC;YAEf,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAyB,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAEtF,IAAI,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,KAAK,EAAE,YAAwB,EAAE,eAAe,CAAC,CAAC;YAE3F,OAAO,YAAY,CAAC;QACtB,CAAC;KACF,CAAA;IAxBO;QAHL,IAAA,+BAAqB,EAAC,sBAAsB,CAAC;QAC7C,IAAA,kBAAS,EAAC,0BAA0B,CAAC;QACrC,IAAA,wBAAe,EAAC,GAAG,eAAe,CAAC;QACf,WAAA,IAAA,cAAK,EAAC,KAAK,CAAC,CAAA;QAAiB,WAAA,IAAA,aAAI,GAAE,CAAA;;gDAAQ,iBAAiB;;oEAuBhF;IAlCG,2BAA2B;QAK5B,WAAA,IAAA,iBAAQ,GAAE,CAAA;iDAAuC,qCAA0B;OAL1E,2BAA2B,CAmChC;IAED,MAAM,CAAC,cAAc,CAAC,2BAA2B,EAAE,MAAM,EAAE;QACzD,KAAK,EAAE,OAAO,IAAA,qBAAW,EAAC,eAAe,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE;QAClF,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,2BAA2B,CAAC;AACrC,CAAC;AAEQ,oEAA4B"}
@@ -22,6 +22,7 @@ const mongoose_2 = require("mongoose");
22
22
  const decorators_1 = require("../../decorators");
23
23
  const dynamic_api_module_1 = require("../../dynamic-api.module");
24
24
  const helpers_1 = require("../../helpers");
25
+ const services_1 = require("../../services");
25
26
  const base_duplicate_many_service_1 = require("./base-duplicate-many.service");
26
27
  const duplicate_many_controller_mixin_1 = require("./duplicate-many-controller.mixin");
27
28
  const duplicate_many_gateway_mixin_1 = require("./duplicate-many-gateway.mixin");
@@ -51,9 +52,10 @@ exports.createDuplicateManyServiceProvider = createDuplicateManyServiceProvider;
51
52
  function createDuplicateManyController(entity, displayedName, { useInterceptors = [], ...controllerOptions }, routeConfig, version, validationPipeOptions) {
52
53
  const { path, apiTag } = controllerOptions;
53
54
  let DuplicateManyController = class DuplicateManyController extends (0, duplicate_many_controller_mixin_1.DuplicateManyControllerMixin)(entity, controllerOptions, routeConfig, version) {
54
- constructor(service) {
55
- super(service);
55
+ constructor(service, broadcastService) {
56
+ super(service, broadcastService);
56
57
  this.service = service;
58
+ this.broadcastService = broadcastService;
57
59
  }
58
60
  };
59
61
  DuplicateManyController = __decorate([
@@ -62,7 +64,9 @@ function createDuplicateManyController(entity, displayedName, { useInterceptors
62
64
  (0, decorators_1.ValidatorPipe)(validationPipeOptions),
63
65
  (0, common_1.UseInterceptors)(common_1.ClassSerializerInterceptor, ...useInterceptors),
64
66
  __param(0, (0, common_1.Inject)((0, helpers_1.provideName)('DuplicateMany', displayedName, version, 'Service'))),
65
- __metadata("design:paramtypes", [Object])
67
+ __param(1, (0, common_1.Optional)()),
68
+ __param(1, (0, common_1.Inject)(services_1.DynamicApiBroadcastService)),
69
+ __metadata("design:paramtypes", [Object, services_1.DynamicApiBroadcastService])
66
70
  ], DuplicateManyController);
67
71
  Object.defineProperty(DuplicateManyController, 'name', {
68
72
  value: `${(0, helpers_1.provideName)('DuplicateMany', displayedName, version, 'Controller')}`,
@@ -1 +1 @@
1
- {"version":3,"file":"duplicate-many.helper.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/duplicate-many/duplicate-many.helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"duplicate-many.helper.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/duplicate-many/duplicate-many.helper.ts"],"names":[],"mappings":"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"}
@@ -11,21 +11,24 @@ exports.DuplicateManyModule = void 0;
11
11
  const common_1 = require("@nestjs/common");
12
12
  const dynamic_api_module_1 = require("../../dynamic-api.module");
13
13
  const helpers_1 = require("../../helpers");
14
+ const services_1 = require("../../services");
14
15
  const duplicate_many_helper_1 = require("./duplicate-many.helper");
15
16
  let DuplicateManyModule = DuplicateManyModule_1 = class DuplicateManyModule {
16
17
  static forFeature(databaseModule, entity, controllerOptions, routeConfig, version, validationPipeOptions, webSocket, extraImports, extraProviders, extraControllers) {
17
18
  const displayedName = (0, helpers_1.getDisplayedName)(controllerOptions.apiTag, entity.name, routeConfig.subPath);
18
19
  const controller = (0, duplicate_many_helper_1.createDuplicateManyController)(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions);
19
20
  const ServiceProvider = (0, duplicate_many_helper_1.createDuplicateManyServiceProvider)(entity, displayedName, version, routeConfig.callback);
21
+ const hasBroadcast = !!routeConfig.broadcast;
20
22
  const gatewayOptions = webSocket
21
23
  ? (0, helpers_1.initializeConfigFromOptions)(webSocket)
22
- : dynamic_api_module_1.DynamicApiModule.state.get('gatewayOptions');
24
+ : dynamic_api_module_1.DynamicApiModule.state.get('gatewayOptions') ?? null;
23
25
  return {
24
26
  module: DuplicateManyModule_1,
25
27
  imports: [databaseModule, ...(extraImports || [])],
26
28
  controllers: [controller, ...(extraControllers || [])],
27
29
  providers: [
28
30
  ServiceProvider,
31
+ ...(hasBroadcast ? [services_1.DynamicApiBroadcastService] : []),
29
32
  ...(gatewayOptions ? [
30
33
  (0, duplicate_many_helper_1.createDuplicateManyGateway)(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions, gatewayOptions)
31
34
  ] : []),
@@ -1 +1 @@
1
- {"version":3,"file":"duplicate-many.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/duplicate-many/duplicate-many.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAoG;AAEpG,iEAA4D;AAC5D,2CAA8E;AAG9E,mEAIiC;AAG1B,IAAM,mBAAmB,2BAAzB,MAAM,mBAAmB;IAC9B,MAAM,CAAC,UAAU,CACf,cAA6B,EAC7B,MAAoB,EACpB,iBAAsD,EACtD,WAA0C,EAC1C,OAAgB,EAChB,qBAA6C,EAC7C,SAAsC,EACtC,YAAwC,EACxC,cAA4C,EAC5C,gBAAgD;QAEhD,MAAM,aAAa,GAAG,IAAA,0BAAgB,EAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;QAEnG,MAAM,UAAU,GAAG,IAAA,qDAA6B,EAC9C,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,CACtB,CAAC;QACF,MAAM,eAAe,GAAG,IAAA,0DAAkC,EAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;QAEjH,MAAM,cAAc,GAAG,SAAS;YAC9B,CAAC,CAAC,IAAA,qCAA2B,EAAC,SAAS,CAAC;YACxC,CAAC,CAAC,qCAAgB,CAAC,KAAK,CAAC,GAAG,CAAkB,gBAAgB,CAAC,CAAC;QAElE,OAAO;YACL,MAAM,EAAE,qBAAmB;YAC3B,OAAO,EAAE,CAAC,cAAc,EAAE,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;YAClD,WAAW,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;YACtD,SAAS,EAAE;gBACT,eAAe;gBACf,GAAG,CACD,cAAc,CAAC,CAAC,CAAC;oBACf,IAAA,kDAA0B,EACxB,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,EACrB,cAAc,CACf;iBACF,CAAC,CAAC,CAAC,EAAE,CACP;gBACD,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;aAC1B;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AApDY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,mBAAmB,CAoD/B"}
1
+ {"version":3,"file":"duplicate-many.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/duplicate-many/duplicate-many.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAoG;AAEpG,iEAA4D;AAC5D,2CAA8E;AAG9E,6CAA4D;AAC5D,mEAIiC;AAG1B,IAAM,mBAAmB,2BAAzB,MAAM,mBAAmB;IAC9B,MAAM,CAAC,UAAU,CACf,cAA6B,EAC7B,MAAoB,EACpB,iBAAsD,EACtD,WAA0C,EAC1C,OAAgB,EAChB,qBAA6C,EAC7C,SAAsC,EACtC,YAAwC,EACxC,cAA4C,EAC5C,gBAAgD;QAEhD,MAAM,aAAa,GAAG,IAAA,0BAAgB,EAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;QAEnG,MAAM,UAAU,GAAG,IAAA,qDAA6B,EAC9C,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,CACtB,CAAC;QACF,MAAM,eAAe,GAAG,IAAA,0DAAkC,EAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;QAEjH,MAAM,YAAY,GAAG,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC;QAC7C,MAAM,cAAc,GAAG,SAAS;YAC9B,CAAC,CAAC,IAAA,qCAA2B,EAAC,SAAS,CAAC;YACxC,CAAC,CAAC,qCAAgB,CAAC,KAAK,CAAC,GAAG,CAAkB,gBAAgB,CAAC,IAAI,IAAI,CAAC;QAG1E,OAAO;YACL,MAAM,EAAE,qBAAmB;YAC3B,OAAO,EAAE,CAAC,cAAc,EAAE,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;YAClD,WAAW,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;YACtD,SAAS,EAAE;gBACT,eAAe;gBACf,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,qCAA0B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrD,GAAG,CACD,cAAc,CAAC,CAAC,CAAC;oBACf,IAAA,kDAA0B,EACxB,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,EACrB,cAAc,CACf;iBACF,CAAC,CAAC,CAAC,EAAE,CACP;gBACD,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;aAC1B;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AAvDY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,mBAAmB,CAuD/B"}
@@ -1,7 +1,8 @@
1
1
  import { BaseEntity } from '../../models';
2
+ import { DynamicApiBroadcastService } from '../../services';
2
3
  import { DuplicateOneService } from './duplicate-one-service.interface';
3
4
  interface DuplicateOneController<Entity extends BaseEntity, Body = any, Response = any> {
4
5
  duplicateOne(id: string, body?: Body): Promise<Entity | Response>;
5
6
  }
6
- type DuplicateOneControllerConstructor<Entity extends BaseEntity> = new (service: DuplicateOneService<Entity>) => DuplicateOneController<Entity>;
7
+ type DuplicateOneControllerConstructor<Entity extends BaseEntity> = new (service: DuplicateOneService<Entity>, broadcastService?: DynamicApiBroadcastService) => DuplicateOneController<Entity>;
7
8
  export type { DuplicateOneController, DuplicateOneControllerConstructor };
@@ -2,5 +2,5 @@ import { Type } from '@nestjs/common';
2
2
  import { DynamicApiControllerOptions, DynamicAPIRouteConfig } from '../../interfaces';
3
3
  import { BaseEntity } from '../../models';
4
4
  import { DuplicateOneControllerConstructor } from './duplicate-one-controller.interface';
5
- declare function DuplicateOneControllerMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, useInterceptors, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): DuplicateOneControllerConstructor<Entity>;
5
+ declare function DuplicateOneControllerMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, useInterceptors, broadcast: broadcastConfig, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): DuplicateOneControllerConstructor<Entity>;
6
6
  export { DuplicateOneControllerMixin };
@@ -19,8 +19,9 @@ const builders_1 = require("../../builders");
19
19
  const dtos_1 = require("../../dtos");
20
20
  const helpers_1 = require("../../helpers");
21
21
  const mixins_1 = require("../../mixins");
22
- function DuplicateOneControllerMixin(entity, controllerOptions, { dTOs, useInterceptors = [], ...routeConfig }, version) {
23
- const { routeType, displayedName, description, isPublic, abilityPredicate, } = (0, helpers_1.getMixinData)(entity, controllerOptions, routeConfig);
22
+ const services_1 = require("../../services");
23
+ function DuplicateOneControllerMixin(entity, controllerOptions, { dTOs, useInterceptors = [], broadcast: broadcastConfig, ...routeConfig }, version) {
24
+ const { routeType, displayedName, description, isPublic, abilityPredicate, event, } = (0, helpers_1.getMixinData)(entity, controllerOptions, routeConfig);
24
25
  class DuplicateOneBody extends (dTOs?.body ?? (0, mixins_1.EntityBodyMixin)(entity, true)) {
25
26
  }
26
27
  Object.defineProperty(DuplicateOneBody, 'name', {
@@ -42,18 +43,21 @@ function DuplicateOneControllerMixin(entity, controllerOptions, { dTOs, useInter
42
43
  });
43
44
  class DuplicateOnePoliciesGuard extends (0, mixins_1.RoutePoliciesGuardMixin)(entity, routeType, displayedName, version, abilityPredicate) {
44
45
  }
45
- class BaseDuplicateOneController {
46
- constructor(service) {
46
+ let BaseDuplicateOneController = class BaseDuplicateOneController {
47
+ constructor(service, broadcastService) {
47
48
  this.service = service;
49
+ this.broadcastService = broadcastService;
48
50
  this.entity = entity;
49
51
  }
50
52
  async duplicateOne(id, body) {
51
53
  const toEntity = DuplicateOneBody.toEntity;
52
54
  const entity = await this.service.duplicateOne(id, !(0, lodash_1.isEmpty)(body) && toEntity ? toEntity(body) : body);
53
55
  const fromEntity = DuplicateOnePresenter.fromEntity;
54
- return fromEntity ? fromEntity(entity) : entity;
56
+ const responseData = fromEntity ? fromEntity(entity) : entity;
57
+ this.broadcastService?.broadcastFromHttp(event, [responseData], broadcastConfig);
58
+ return responseData;
55
59
  }
56
- }
60
+ };
57
61
  __decorate([
58
62
  (0, helpers_1.RouteDecoratorsHelper)(routeDecoratorsBuilder),
59
63
  (0, common_1.UseGuards)(DuplicateOnePoliciesGuard),
@@ -64,6 +68,10 @@ function DuplicateOneControllerMixin(entity, controllerOptions, { dTOs, useInter
64
68
  __metadata("design:paramtypes", [String, DuplicateOneBody]),
65
69
  __metadata("design:returntype", Promise)
66
70
  ], BaseDuplicateOneController.prototype, "duplicateOne", null);
71
+ BaseDuplicateOneController = __decorate([
72
+ __param(1, (0, common_1.Optional)()),
73
+ __metadata("design:paramtypes", [Object, services_1.DynamicApiBroadcastService])
74
+ ], BaseDuplicateOneController);
67
75
  Object.defineProperty(BaseDuplicateOneController, 'name', {
68
76
  value: `Base${(0, helpers_1.provideName)('DuplicateOne', displayedName, version, 'Controller')}`,
69
77
  writable: false,
@@ -1 +1 @@
1
- {"version":3,"file":"duplicate-one-controller.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/duplicate-one/duplicate-one-controller.mixin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"duplicate-one-controller.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/duplicate-one/duplicate-one-controller.mixin.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,7 @@ const mongoose_2 = require("mongoose");
22
22
  const decorators_1 = require("../../decorators");
23
23
  const dynamic_api_module_1 = require("../../dynamic-api.module");
24
24
  const helpers_1 = require("../../helpers");
25
+ const services_1 = require("../../services");
25
26
  const base_duplicate_one_service_1 = require("./base-duplicate-one.service");
26
27
  const duplicate_one_controller_mixin_1 = require("./duplicate-one-controller.mixin");
27
28
  const duplicate_one_gateway_mixin_1 = require("./duplicate-one-gateway.mixin");
@@ -51,9 +52,10 @@ exports.createDuplicateOneServiceProvider = createDuplicateOneServiceProvider;
51
52
  function createDuplicateOneController(entity, displayedName, { useInterceptors = [], ...controllerOptions }, routeConfig, version, validationPipeOptions) {
52
53
  const { path, apiTag } = controllerOptions;
53
54
  let DuplicateOneController = class DuplicateOneController extends (0, duplicate_one_controller_mixin_1.DuplicateOneControllerMixin)(entity, controllerOptions, routeConfig, version) {
54
- constructor(service) {
55
- super(service);
55
+ constructor(service, broadcastService) {
56
+ super(service, broadcastService);
56
57
  this.service = service;
58
+ this.broadcastService = broadcastService;
57
59
  }
58
60
  };
59
61
  DuplicateOneController = __decorate([
@@ -62,7 +64,9 @@ function createDuplicateOneController(entity, displayedName, { useInterceptors =
62
64
  (0, decorators_1.ValidatorPipe)(validationPipeOptions),
63
65
  (0, common_1.UseInterceptors)(common_1.ClassSerializerInterceptor, ...useInterceptors),
64
66
  __param(0, (0, common_1.Inject)((0, helpers_1.provideName)('DuplicateOne', displayedName, version, 'Service'))),
65
- __metadata("design:paramtypes", [Object])
67
+ __param(1, (0, common_1.Optional)()),
68
+ __param(1, (0, common_1.Inject)(services_1.DynamicApiBroadcastService)),
69
+ __metadata("design:paramtypes", [Object, services_1.DynamicApiBroadcastService])
66
70
  ], DuplicateOneController);
67
71
  Object.defineProperty(DuplicateOneController, 'name', {
68
72
  value: `${(0, helpers_1.provideName)('DuplicateOne', displayedName, version, 'Controller')}`,
@@ -1 +1 @@
1
- {"version":3,"file":"duplicate-one.helper.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/duplicate-one/duplicate-one.helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"duplicate-one.helper.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/duplicate-one/duplicate-one.helper.ts"],"names":[],"mappings":"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"}
@@ -11,21 +11,24 @@ exports.DuplicateOneModule = void 0;
11
11
  const common_1 = require("@nestjs/common");
12
12
  const dynamic_api_module_1 = require("../../dynamic-api.module");
13
13
  const helpers_1 = require("../../helpers");
14
+ const services_1 = require("../../services");
14
15
  const duplicate_one_helper_1 = require("./duplicate-one.helper");
15
16
  let DuplicateOneModule = DuplicateOneModule_1 = class DuplicateOneModule {
16
17
  static forFeature(databaseModule, entity, controllerOptions, routeConfig, version, validationPipeOptions, webSocket, extraImports, extraProviders, extraControllers) {
17
18
  const displayedName = (0, helpers_1.getDisplayedName)(controllerOptions.apiTag, entity.name, routeConfig.subPath);
18
19
  const controller = (0, duplicate_one_helper_1.createDuplicateOneController)(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions);
19
20
  const ServiceProvider = (0, duplicate_one_helper_1.createDuplicateOneServiceProvider)(entity, displayedName, version, routeConfig.callback);
21
+ const hasBroadcast = !!routeConfig.broadcast;
20
22
  const gatewayOptions = webSocket
21
23
  ? (0, helpers_1.initializeConfigFromOptions)(webSocket)
22
- : dynamic_api_module_1.DynamicApiModule.state.get('gatewayOptions');
24
+ : dynamic_api_module_1.DynamicApiModule.state.get('gatewayOptions') ?? null;
23
25
  return {
24
26
  module: DuplicateOneModule_1,
25
27
  imports: [databaseModule, ...(extraImports || [])],
26
28
  controllers: [controller, ...(extraControllers || [])],
27
29
  providers: [
28
30
  ServiceProvider,
31
+ ...(hasBroadcast ? [services_1.DynamicApiBroadcastService] : []),
29
32
  ...(gatewayOptions ? [
30
33
  (0, duplicate_one_helper_1.createDuplicateOneGateway)(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions, gatewayOptions)
31
34
  ] : []),
@@ -1 +1 @@
1
- {"version":3,"file":"duplicate-one.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/duplicate-one/duplicate-one.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAoG;AAEpG,iEAA4D;AAC5D,2CAA8E;AAG9E,iEAIgC;AAGzB,IAAM,kBAAkB,0BAAxB,MAAM,kBAAkB;IAC7B,MAAM,CAAC,UAAU,CACf,cAA6B,EAC7B,MAAoB,EACpB,iBAAsD,EACtD,WAA0C,EAC1C,OAAgB,EAChB,qBAA6C,EAC7C,SAAsC,EACtC,YAAwC,EACxC,cAA4C,EAC5C,gBAAgD;QAEhD,MAAM,aAAa,GAAG,IAAA,0BAAgB,EAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;QAEnG,MAAM,UAAU,GAAG,IAAA,mDAA4B,EAC7C,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,CACtB,CAAC;QACF,MAAM,eAAe,GAAG,IAAA,wDAAiC,EAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;QAEhH,MAAM,cAAc,GAAG,SAAS;YAC9B,CAAC,CAAC,IAAA,qCAA2B,EAAC,SAAS,CAAC;YACxC,CAAC,CAAC,qCAAgB,CAAC,KAAK,CAAC,GAAG,CAAkB,gBAAgB,CAAC,CAAC;QAElE,OAAO;YACL,MAAM,EAAE,oBAAkB;YAC1B,OAAO,EAAE,CAAC,cAAc,EAAE,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;YAClD,WAAW,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;YACtD,SAAS,EAAE;gBACT,eAAe;gBACf,GAAG,CACD,cAAc,CAAC,CAAC,CAAC;oBACf,IAAA,gDAAyB,EACvB,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,EACrB,cAAc,CACf;iBACF,CAAC,CAAC,CAAC,EAAE,CACP;gBACD,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;aAC1B;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AApDY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,kBAAkB,CAoD9B"}
1
+ {"version":3,"file":"duplicate-one.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/duplicate-one/duplicate-one.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAoG;AAEpG,iEAA4D;AAC5D,2CAA8E;AAG9E,6CAA4D;AAC5D,iEAIgC;AAGzB,IAAM,kBAAkB,0BAAxB,MAAM,kBAAkB;IAC7B,MAAM,CAAC,UAAU,CACf,cAA6B,EAC7B,MAAoB,EACpB,iBAAsD,EACtD,WAA0C,EAC1C,OAAgB,EAChB,qBAA6C,EAC7C,SAAsC,EACtC,YAAwC,EACxC,cAA4C,EAC5C,gBAAgD;QAEhD,MAAM,aAAa,GAAG,IAAA,0BAAgB,EAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;QAEnG,MAAM,UAAU,GAAG,IAAA,mDAA4B,EAC7C,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,CACtB,CAAC;QACF,MAAM,eAAe,GAAG,IAAA,wDAAiC,EAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;QAEhH,MAAM,YAAY,GAAG,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC;QAC7C,MAAM,cAAc,GAAG,SAAS;YAC9B,CAAC,CAAC,IAAA,qCAA2B,EAAC,SAAS,CAAC;YACxC,CAAC,CAAC,qCAAgB,CAAC,KAAK,CAAC,GAAG,CAAkB,gBAAgB,CAAC,IAAI,IAAI,CAAC;QAG1E,OAAO;YACL,MAAM,EAAE,oBAAkB;YAC1B,OAAO,EAAE,CAAC,cAAc,EAAE,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;YAClD,WAAW,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;YACtD,SAAS,EAAE;gBACT,eAAe;gBACf,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,qCAA0B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrD,GAAG,CACD,cAAc,CAAC,CAAC,CAAC;oBACf,IAAA,gDAAyB,EACvB,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,EACrB,cAAc,CACf;iBACF,CAAC,CAAC,CAAC,EAAE,CACP;gBACD,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;aAC1B;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AAvDY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,kBAAkB,CAuD9B"}
@@ -19,7 +19,7 @@ let GetManyModule = GetManyModule_1 = class GetManyModule {
19
19
  const ServiceProvider = (0, get_many_helper_1.createGetManyServiceProvider)(entity, displayedName, version, routeConfig.callback);
20
20
  const gatewayOptions = webSocket
21
21
  ? (0, helpers_1.initializeConfigFromOptions)(webSocket)
22
- : dynamic_api_module_1.DynamicApiModule.state.get('gatewayOptions');
22
+ : dynamic_api_module_1.DynamicApiModule.state.get('gatewayOptions') ?? null;
23
23
  return {
24
24
  module: GetManyModule_1,
25
25
  imports: [databaseModule, ...(extraImports || [])],
@@ -1 +1 @@
1
- {"version":3,"file":"get-many.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/get-many/get-many.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAoG;AAEpG,iEAA4D;AAC5D,2CAA8E;AAG9E,uDAAgH;AAGzG,IAAM,aAAa,qBAAnB,MAAM,aAAa;IACxB,MAAM,CAAC,UAAU,CACf,cAA6B,EAC7B,MAAoB,EACpB,iBAAsD,EACtD,WAA0C,EAC1C,OAAgB,EAChB,qBAA6C,EAC7C,SAAsC,EACtC,YAAwC,EACxC,cAA4C,EAC5C,gBAAgD;QAEhD,MAAM,aAAa,GAAG,IAAA,0BAAgB,EAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;QAEnG,MAAM,UAAU,GAAG,IAAA,yCAAuB,EACxC,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,CACtB,CAAC;QACF,MAAM,eAAe,GAAG,IAAA,8CAA4B,EAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE3G,MAAM,cAAc,GAAG,SAAS;YAC9B,CAAC,CAAC,IAAA,qCAA2B,EAAC,SAAS,CAAC;YACxC,CAAC,CAAC,qCAAgB,CAAC,KAAK,CAAC,GAAG,CAAkB,gBAAgB,CAAC,CAAC;QAElE,OAAO;YACL,MAAM,EAAE,eAAa;YACrB,OAAO,EAAE,CAAC,cAAc,EAAE,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;YAClD,WAAW,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;YACtD,SAAS,EAAE;gBACT,eAAe;gBACf,GAAG,CACD,cAAc,CAAC,CAAC,CAAC;oBACf,IAAA,sCAAoB,EAClB,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,EACrB,cAAc,CACf;iBACF,CAAC,CAAC,CAAC,EAAE,CACP;gBACD,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;aAC1B;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AApDY,sCAAa;wBAAb,aAAa;IADzB,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,aAAa,CAoDzB"}
1
+ {"version":3,"file":"get-many.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/get-many/get-many.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAoG;AAEpG,iEAA4D;AAC5D,2CAA8E;AAG9E,uDAAgH;AAGzG,IAAM,aAAa,qBAAnB,MAAM,aAAa;IACxB,MAAM,CAAC,UAAU,CACf,cAA6B,EAC7B,MAAoB,EACpB,iBAAsD,EACtD,WAA0C,EAC1C,OAAgB,EAChB,qBAA6C,EAC7C,SAAsC,EACtC,YAAwC,EACxC,cAA4C,EAC5C,gBAAgD;QAEhD,MAAM,aAAa,GAAG,IAAA,0BAAgB,EAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;QAEnG,MAAM,UAAU,GAAG,IAAA,yCAAuB,EACxC,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,CACtB,CAAC;QACF,MAAM,eAAe,GAAG,IAAA,8CAA4B,EAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE3G,MAAM,cAAc,GAAG,SAAS;YAC9B,CAAC,CAAC,IAAA,qCAA2B,EAAC,SAAS,CAAC;YACxC,CAAC,CAAC,qCAAgB,CAAC,KAAK,CAAC,GAAG,CAAkB,gBAAgB,CAAC,IAAI,IAAI,CAAC;QAE1E,OAAO;YACL,MAAM,EAAE,eAAa;YACrB,OAAO,EAAE,CAAC,cAAc,EAAE,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;YAClD,WAAW,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;YACtD,SAAS,EAAE;gBACT,eAAe;gBACf,GAAG,CACD,cAAc,CAAC,CAAC,CAAC;oBACf,IAAA,sCAAoB,EAClB,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,EACrB,cAAc,CACf;iBACF,CAAC,CAAC,CAAC,EAAE,CACP;gBACD,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;aAC1B;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AApDY,sCAAa;wBAAb,aAAa;IADzB,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,aAAa,CAoDzB"}
@@ -19,7 +19,7 @@ let GetOneModule = GetOneModule_1 = class GetOneModule {
19
19
  const ServiceProvider = (0, get_one_helper_1.createGetOneServiceProvider)(entity, displayedName, version, routeConfig.callback);
20
20
  const gatewayOptions = webSocket
21
21
  ? (0, helpers_1.initializeConfigFromOptions)(webSocket)
22
- : dynamic_api_module_1.DynamicApiModule.state.get('gatewayOptions');
22
+ : dynamic_api_module_1.DynamicApiModule.state.get('gatewayOptions') ?? null;
23
23
  return {
24
24
  module: GetOneModule_1,
25
25
  imports: [databaseModule, ...(extraImports || [])],