mongodb-dynamic-api 2.10.1 → 2.12.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 (187) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/package.json +1 -1
  3. package/src/dynamic-api.module.d.ts +1 -1
  4. package/src/dynamic-api.module.js +2 -2
  5. package/src/dynamic-api.module.js.map +1 -1
  6. package/src/gateways/base.gateway.js +2 -2
  7. package/src/gateways/base.gateway.js.map +1 -1
  8. package/src/guards/base-policies.guard.d.ts +13 -1
  9. package/src/guards/base-policies.guard.js +52 -2
  10. package/src/guards/base-policies.guard.js.map +1 -1
  11. package/src/guards/index.d.ts +1 -0
  12. package/src/guards/index.js +1 -0
  13. package/src/guards/index.js.map +1 -1
  14. package/src/guards/jwt-socket.guard.d.ts +11 -0
  15. package/src/guards/jwt-socket.guard.js +70 -0
  16. package/src/guards/jwt-socket.guard.js.map +1 -0
  17. package/src/helpers/format.helper.d.ts +1 -1
  18. package/src/helpers/format.helper.js +1 -1
  19. package/src/helpers/format.helper.js.map +1 -1
  20. package/src/index.d.ts +1 -0
  21. package/src/index.js +1 -0
  22. package/src/index.js.map +1 -1
  23. package/src/interfaces/dynamic-api-controller-options.interface.d.ts +2 -1
  24. package/src/interfaces/dynamic-api-options.interface.d.ts +4 -1
  25. package/src/interfaces/dynamic-api-options.interface.js.map +1 -1
  26. package/src/interfaces/dynamic-api-route-config.interface.d.ts +2 -1
  27. package/src/logger/index.d.ts +1 -0
  28. package/src/logger/index.js +18 -0
  29. package/src/logger/index.js.map +1 -0
  30. package/src/logger/mongo-dynamic-api.logger.d.ts +10 -0
  31. package/src/logger/mongo-dynamic-api.logger.js +44 -0
  32. package/src/logger/mongo-dynamic-api.logger.js.map +1 -0
  33. package/src/mixins/index.d.ts +1 -1
  34. package/src/mixins/index.js +1 -1
  35. package/src/mixins/index.js.map +1 -1
  36. package/src/mixins/policies-guard.mixin.d.ts +7 -0
  37. package/src/mixins/{create-policies-guard.mixin.js → policies-guard.mixin.js} +28 -4
  38. package/src/mixins/policies-guard.mixin.js.map +1 -0
  39. package/src/modules/auth/guards/jwt-socket-auth/jwt-socket-auth.guard.js +2 -1
  40. package/src/modules/auth/guards/jwt-socket-auth/jwt-socket-auth.guard.js.map +1 -1
  41. package/src/modules/auth/services/base-auth.service.js +2 -1
  42. package/src/modules/auth/services/base-auth.service.js.map +1 -1
  43. package/src/routes/aggregate/aggregate-controller.mixin.js +1 -1
  44. package/src/routes/aggregate/aggregate-controller.mixin.js.map +1 -1
  45. package/src/routes/aggregate/aggregate-gateway.mixin.js +7 -3
  46. package/src/routes/aggregate/aggregate-gateway.mixin.js.map +1 -1
  47. package/src/routes/create-many/create-many-controller.mixin.d.ts +1 -1
  48. package/src/routes/create-many/create-many-controller.mixin.js +3 -2
  49. package/src/routes/create-many/create-many-controller.mixin.js.map +1 -1
  50. package/src/routes/create-many/create-many-gateway.mixin.d.ts +1 -1
  51. package/src/routes/create-many/create-many-gateway.mixin.js +9 -4
  52. package/src/routes/create-many/create-many-gateway.mixin.js.map +1 -1
  53. package/src/routes/create-many/create-many.helper.d.ts +2 -2
  54. package/src/routes/create-many/create-many.helper.js +4 -3
  55. package/src/routes/create-many/create-many.helper.js.map +1 -1
  56. package/src/routes/create-many/create-many.module.d.ts +2 -2
  57. package/src/routes/create-many/create-many.module.js +4 -3
  58. package/src/routes/create-many/create-many.module.js.map +1 -1
  59. package/src/routes/create-one/create-one-controller.mixin.d.ts +1 -1
  60. package/src/routes/create-one/create-one-controller.mixin.js +3 -2
  61. package/src/routes/create-one/create-one-controller.mixin.js.map +1 -1
  62. package/src/routes/create-one/create-one-gateway.mixin.d.ts +1 -1
  63. package/src/routes/create-one/create-one-gateway.mixin.js +8 -4
  64. package/src/routes/create-one/create-one-gateway.mixin.js.map +1 -1
  65. package/src/routes/create-one/create-one.helper.d.ts +2 -2
  66. package/src/routes/create-one/create-one.helper.js +4 -3
  67. package/src/routes/create-one/create-one.helper.js.map +1 -1
  68. package/src/routes/create-one/create-one.module.d.ts +2 -2
  69. package/src/routes/create-one/create-one.module.js +4 -3
  70. package/src/routes/create-one/create-one.module.js.map +1 -1
  71. package/src/routes/delete-many/delete-many-controller.mixin.d.ts +1 -1
  72. package/src/routes/delete-many/delete-many-controller.mixin.js +3 -2
  73. package/src/routes/delete-many/delete-many-controller.mixin.js.map +1 -1
  74. package/src/routes/delete-many/delete-many-gateway.mixin.d.ts +1 -1
  75. package/src/routes/delete-many/delete-many-gateway.mixin.js +9 -4
  76. package/src/routes/delete-many/delete-many-gateway.mixin.js.map +1 -1
  77. package/src/routes/delete-many/delete-many.helper.d.ts +2 -2
  78. package/src/routes/delete-many/delete-many.helper.js +4 -3
  79. package/src/routes/delete-many/delete-many.helper.js.map +1 -1
  80. package/src/routes/delete-many/delete-many.module.d.ts +2 -2
  81. package/src/routes/delete-many/delete-many.module.js +4 -3
  82. package/src/routes/delete-many/delete-many.module.js.map +1 -1
  83. package/src/routes/delete-one/delete-one-controller.mixin.d.ts +1 -1
  84. package/src/routes/delete-one/delete-one-controller.mixin.js +3 -2
  85. package/src/routes/delete-one/delete-one-controller.mixin.js.map +1 -1
  86. package/src/routes/delete-one/delete-one-gateway.mixin.d.ts +1 -1
  87. package/src/routes/delete-one/delete-one-gateway.mixin.js +9 -4
  88. package/src/routes/delete-one/delete-one-gateway.mixin.js.map +1 -1
  89. package/src/routes/delete-one/delete-one.helper.d.ts +2 -2
  90. package/src/routes/delete-one/delete-one.helper.js +4 -3
  91. package/src/routes/delete-one/delete-one.helper.js.map +1 -1
  92. package/src/routes/delete-one/delete-one.module.d.ts +2 -2
  93. package/src/routes/delete-one/delete-one.module.js +4 -3
  94. package/src/routes/delete-one/delete-one.module.js.map +1 -1
  95. package/src/routes/duplicate-many/duplicate-many-controller.mixin.d.ts +1 -1
  96. package/src/routes/duplicate-many/duplicate-many-controller.mixin.js +3 -2
  97. package/src/routes/duplicate-many/duplicate-many-controller.mixin.js.map +1 -1
  98. package/src/routes/duplicate-many/duplicate-many-gateway.mixin.d.ts +1 -1
  99. package/src/routes/duplicate-many/duplicate-many-gateway.mixin.js +8 -4
  100. package/src/routes/duplicate-many/duplicate-many-gateway.mixin.js.map +1 -1
  101. package/src/routes/duplicate-many/duplicate-many.helper.d.ts +2 -2
  102. package/src/routes/duplicate-many/duplicate-many.helper.js +4 -3
  103. package/src/routes/duplicate-many/duplicate-many.helper.js.map +1 -1
  104. package/src/routes/duplicate-many/duplicate-many.module.d.ts +2 -2
  105. package/src/routes/duplicate-many/duplicate-many.module.js +4 -3
  106. package/src/routes/duplicate-many/duplicate-many.module.js.map +1 -1
  107. package/src/routes/duplicate-one/duplicate-one-controller.mixin.d.ts +1 -1
  108. package/src/routes/duplicate-one/duplicate-one-controller.mixin.js +3 -2
  109. package/src/routes/duplicate-one/duplicate-one-controller.mixin.js.map +1 -1
  110. package/src/routes/duplicate-one/duplicate-one-gateway.mixin.d.ts +1 -1
  111. package/src/routes/duplicate-one/duplicate-one-gateway.mixin.js +8 -4
  112. package/src/routes/duplicate-one/duplicate-one-gateway.mixin.js.map +1 -1
  113. package/src/routes/duplicate-one/duplicate-one.helper.d.ts +2 -2
  114. package/src/routes/duplicate-one/duplicate-one.helper.js +4 -3
  115. package/src/routes/duplicate-one/duplicate-one.helper.js.map +1 -1
  116. package/src/routes/duplicate-one/duplicate-one.module.d.ts +2 -2
  117. package/src/routes/duplicate-one/duplicate-one.module.js +4 -3
  118. package/src/routes/duplicate-one/duplicate-one.module.js.map +1 -1
  119. package/src/routes/get-many/get-many-controller.mixin.d.ts +1 -1
  120. package/src/routes/get-many/get-many-controller.mixin.js +3 -2
  121. package/src/routes/get-many/get-many-controller.mixin.js.map +1 -1
  122. package/src/routes/get-many/get-many-gateway.mixin.d.ts +1 -1
  123. package/src/routes/get-many/get-many-gateway.mixin.js +8 -4
  124. package/src/routes/get-many/get-many-gateway.mixin.js.map +1 -1
  125. package/src/routes/get-many/get-many.helper.d.ts +2 -2
  126. package/src/routes/get-many/get-many.helper.js +4 -3
  127. package/src/routes/get-many/get-many.helper.js.map +1 -1
  128. package/src/routes/get-many/get-many.module.d.ts +2 -2
  129. package/src/routes/get-many/get-many.module.js +4 -3
  130. package/src/routes/get-many/get-many.module.js.map +1 -1
  131. package/src/routes/get-one/get-one-controller.mixin.d.ts +1 -1
  132. package/src/routes/get-one/get-one-controller.mixin.js +3 -2
  133. package/src/routes/get-one/get-one-controller.mixin.js.map +1 -1
  134. package/src/routes/get-one/get-one-gateway.mixin.d.ts +1 -1
  135. package/src/routes/get-one/get-one-gateway.mixin.js +8 -4
  136. package/src/routes/get-one/get-one-gateway.mixin.js.map +1 -1
  137. package/src/routes/get-one/get-one.helper.d.ts +2 -2
  138. package/src/routes/get-one/get-one.helper.js +4 -3
  139. package/src/routes/get-one/get-one.helper.js.map +1 -1
  140. package/src/routes/get-one/get-one.module.d.ts +2 -2
  141. package/src/routes/get-one/get-one.module.js +4 -3
  142. package/src/routes/get-one/get-one.module.js.map +1 -1
  143. package/src/routes/replace-one/replace-one-controller.mixin.d.ts +1 -1
  144. package/src/routes/replace-one/replace-one-controller.mixin.js +3 -2
  145. package/src/routes/replace-one/replace-one-controller.mixin.js.map +1 -1
  146. package/src/routes/replace-one/replace-one-gateway.mixin.d.ts +1 -1
  147. package/src/routes/replace-one/replace-one-gateway.mixin.js +8 -4
  148. package/src/routes/replace-one/replace-one-gateway.mixin.js.map +1 -1
  149. package/src/routes/replace-one/replace-one.helper.d.ts +2 -2
  150. package/src/routes/replace-one/replace-one.helper.js +4 -3
  151. package/src/routes/replace-one/replace-one.helper.js.map +1 -1
  152. package/src/routes/replace-one/replace-one.module.d.ts +2 -2
  153. package/src/routes/replace-one/replace-one.module.js +4 -3
  154. package/src/routes/replace-one/replace-one.module.js.map +1 -1
  155. package/src/routes/update-many/update-many-controller.mixin.d.ts +1 -1
  156. package/src/routes/update-many/update-many-controller.mixin.js +3 -2
  157. package/src/routes/update-many/update-many-controller.mixin.js.map +1 -1
  158. package/src/routes/update-many/update-many-gateway.mixin.d.ts +1 -1
  159. package/src/routes/update-many/update-many-gateway.mixin.js +8 -4
  160. package/src/routes/update-many/update-many-gateway.mixin.js.map +1 -1
  161. package/src/routes/update-many/update-many.helper.d.ts +2 -2
  162. package/src/routes/update-many/update-many.helper.js +4 -3
  163. package/src/routes/update-many/update-many.helper.js.map +1 -1
  164. package/src/routes/update-many/update-many.module.d.ts +2 -2
  165. package/src/routes/update-many/update-many.module.js +4 -3
  166. package/src/routes/update-many/update-many.module.js.map +1 -1
  167. package/src/routes/update-one/update-one-controller.mixin.d.ts +1 -1
  168. package/src/routes/update-one/update-one-controller.mixin.js +3 -2
  169. package/src/routes/update-one/update-one-controller.mixin.js.map +1 -1
  170. package/src/routes/update-one/update-one-gateway.mixin.d.ts +1 -1
  171. package/src/routes/update-one/update-one-gateway.mixin.js +8 -4
  172. package/src/routes/update-one/update-one-gateway.mixin.js.map +1 -1
  173. package/src/routes/update-one/update-one.helper.d.ts +2 -2
  174. package/src/routes/update-one/update-one.helper.js +4 -3
  175. package/src/routes/update-one/update-one.helper.js.map +1 -1
  176. package/src/routes/update-one/update-one.module.d.ts +2 -2
  177. package/src/routes/update-one/update-one.module.js +4 -3
  178. package/src/routes/update-one/update-one.module.js.map +1 -1
  179. package/src/services/base/base.service.d.ts +1 -0
  180. package/src/services/base/base.service.js +22 -0
  181. package/src/services/base/base.service.js.map +1 -1
  182. package/src/version.json +1 -1
  183. package/test/dynamic-api-for-feature.e2e-spec.js +0 -26
  184. package/test/dynamic-api-for-feature.e2e-spec.js.map +1 -1
  185. package/tsconfig.tsbuildinfo +1 -1
  186. package/src/mixins/create-policies-guard.mixin.d.ts +0 -6
  187. package/src/mixins/create-policies-guard.mixin.js.map +0 -1
@@ -1,6 +1,6 @@
1
- import { DynamicModule, Type, ValidationPipeOptions } from '@nestjs/common';
1
+ import { DynamicModule, ModuleMetadata, Type, ValidationPipeOptions } from '@nestjs/common';
2
2
  import { DynamicApiControllerOptions, DynamicAPIRouteConfig, DynamicApiWebSocketOptions } from '../../interfaces';
3
3
  import { BaseEntity } from '../../models';
4
4
  export declare class GetManyModule {
5
- static forFeature<Entity extends BaseEntity>(databaseModule: DynamicModule, entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions, webSocket?: DynamicApiWebSocketOptions): DynamicModule;
5
+ static forFeature<Entity extends BaseEntity>(databaseModule: DynamicModule, entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions, webSocket?: DynamicApiWebSocketOptions, extraImports?: ModuleMetadata['imports'], extraProviders?: ModuleMetadata['providers'], extraControllers?: ModuleMetadata['controllers']): DynamicModule;
6
6
  }
@@ -13,7 +13,7 @@ const dynamic_api_module_1 = require("../../dynamic-api.module");
13
13
  const helpers_1 = require("../../helpers");
14
14
  const get_many_helper_1 = require("./get-many.helper");
15
15
  let GetManyModule = GetManyModule_1 = class GetManyModule {
16
- static forFeature(databaseModule, entity, controllerOptions, routeConfig, version, validationPipeOptions, webSocket) {
16
+ static forFeature(databaseModule, entity, controllerOptions, routeConfig, version, validationPipeOptions, webSocket, extraImports, extraProviders, extraControllers) {
17
17
  const displayedName = (0, helpers_1.getDisplayedName)(controllerOptions.apiTag, entity.name, routeConfig.subPath);
18
18
  const controller = (0, get_many_helper_1.createGetManyController)(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions);
19
19
  const ServiceProvider = (0, get_many_helper_1.createGetManyServiceProvider)(entity, displayedName, version, routeConfig.callback);
@@ -22,13 +22,14 @@ let GetManyModule = GetManyModule_1 = class GetManyModule {
22
22
  : dynamic_api_module_1.DynamicApiModule.state.get('gatewayOptions');
23
23
  return {
24
24
  module: GetManyModule_1,
25
- imports: [databaseModule],
26
- controllers: [controller],
25
+ imports: [databaseModule, ...(extraImports || [])],
26
+ controllers: [controller, ...(extraControllers || [])],
27
27
  providers: [
28
28
  ServiceProvider,
29
29
  ...(gatewayOptions ? [
30
30
  (0, get_many_helper_1.createGetManyGateway)(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions, gatewayOptions)
31
31
  ] : []),
32
+ ...(extraProviders || []),
32
33
  ],
33
34
  };
34
35
  }
@@ -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,2CAAoF;AAEpF,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;QAEtC,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,CAAC;YACzB,WAAW,EAAE,CAAC,UAAU,CAAC;YACzB,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;aACF;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AAhDY,sCAAa;wBAAb,aAAa;IADzB,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,aAAa,CAgDzB"}
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"}
@@ -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 { GetOneControllerConstructor } from './get-one-controller.interface';
5
- declare function GetOneControllerMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): GetOneControllerConstructor<Entity>;
5
+ declare function GetOneControllerMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, useInterceptors, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): GetOneControllerConstructor<Entity>;
6
6
  export { GetOneControllerMixin };
@@ -18,7 +18,7 @@ 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 GetOneControllerMixin(entity, controllerOptions, { dTOs, ...routeConfig }, version) {
21
+ function GetOneControllerMixin(entity, controllerOptions, { dTOs, useInterceptors = [], ...routeConfig }, version) {
22
22
  const { routeType, displayedName, description, isPublic, abilityPredicate, } = (0, helpers_1.getMixinData)(entity, controllerOptions, routeConfig);
23
23
  class GetOnePresenter extends (dTOs?.presenter ?? (0, mixins_1.EntityPresenterMixin)(entity)) {
24
24
  }
@@ -32,7 +32,7 @@ function GetOneControllerMixin(entity, controllerOptions, { dTOs, ...routeConfig
32
32
  param: dtos_1.EntityParam,
33
33
  presenter: GetOnePresenter,
34
34
  });
35
- class GetOnePoliciesGuard extends (0, mixins_1.CreatePoliciesGuardMixin)(entity, routeType, displayedName, version, abilityPredicate) {
35
+ class GetOnePoliciesGuard extends (0, mixins_1.RoutePoliciesGuardMixin)(entity, routeType, displayedName, version, abilityPredicate) {
36
36
  }
37
37
  class BaseGetOneController {
38
38
  constructor(service) {
@@ -48,6 +48,7 @@ function GetOneControllerMixin(entity, controllerOptions, { dTOs, ...routeConfig
48
48
  __decorate([
49
49
  (0, helpers_1.RouteDecoratorsHelper)(routeDecoratorsBuilder),
50
50
  (0, common_1.UseGuards)(GetOnePoliciesGuard),
51
+ (0, common_1.UseInterceptors)(...useInterceptors),
51
52
  __param(0, (0, common_1.Param)('id')),
52
53
  __metadata("design:type", Function),
53
54
  __metadata("design:paramtypes", [String]),
@@ -1 +1 @@
1
- {"version":3,"file":"get-one-controller.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/get-one/get-one-controller.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAwD;AACxD,6CAAwD;AACxD,qCAAyC;AACzC,2CAAmG;AAEnG,yCAA8E;AAK9E,SAAS,qBAAqB,CAC5B,MAAoB,EACpB,iBAAsD,EACtD,EAAE,IAAI,EAAE,GAAG,WAAW,EAAiC,EACvD,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,eAAgB,SAAQ,CAC5B,IAAI,EAAE,SAAS,IAAI,IAAA,6BAAoB,EAAC,MAAM,CAAC,CAChD;KAAG;IAEJ,MAAM,CAAC,cAAc,CAAC,eAAe,EAAE,MAAM,EAAE;QAC7C,KAAK,EAAE,IAAI,EAAE,SAAS;YACpB,CAAC,CAAC,SAAS,aAAa,GAAG,IAAA,0BAAgB,EAAC,OAAO,CAAC,WAAW;YAC/D,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,KAAK,EAAE,kBAAW;QAClB,SAAS,EAAE,eAAe;KAC3B,CACF,CAAC;IAEF,MAAM,mBAAoB,SAAQ,IAAA,iCAAwB,EACxD,MAAM,EACN,SAAS,EACT,aAAa,EACb,OAAO,EACP,gBAAgB,CACjB;KAAG;IAEJ,MAAM,oBAAoB;QAGxB,YAA+B,OAA8B;YAA9B,YAAO,GAAP,OAAO,CAAuB;YAF1C,WAAM,GAAG,MAAM,CAAC;QAGnC,CAAC;QAIK,AAAN,KAAK,CAAC,MAAM,CAAc,EAAU;YAClC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAE7C,MAAM,UAAU,GACd,eACD,CAAC,UAAU,CAAC;YAEb,OAAO,UAAU,CAAC,CAAC,CAAC,UAAU,CAAkB,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACnE,CAAC;KACF;IATO;QAFL,IAAA,+BAAqB,EAAC,sBAAsB,CAAC;QAC7C,IAAA,kBAAS,EAAC,mBAAmB,CAAC;QACjB,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;sDAQxB;IAGH,MAAM,CAAC,cAAc,CAAC,oBAAoB,EAAE,MAAM,EAAE;QAClD,KAAK,EAAE,OAAO,IAAA,qBAAW,EAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE;QAC3E,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAEQ,sDAAqB"}
1
+ {"version":3,"file":"get-one-controller.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/get-one/get-one-controller.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAyE;AACzE,6CAAwD;AACxD,qCAAyC;AACzC,2CAAmG;AAEnG,yCAA6E;AAK7E,SAAS,qBAAqB,CAC5B,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,eAAgB,SAAQ,CAC5B,IAAI,EAAE,SAAS,IAAI,IAAA,6BAAoB,EAAC,MAAM,CAAC,CAChD;KAAG;IAEJ,MAAM,CAAC,cAAc,CAAC,eAAe,EAAE,MAAM,EAAE;QAC7C,KAAK,EAAE,IAAI,EAAE,SAAS;YACpB,CAAC,CAAC,SAAS,aAAa,GAAG,IAAA,0BAAgB,EAAC,OAAO,CAAC,WAAW;YAC/D,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,KAAK,EAAE,kBAAW;QAClB,SAAS,EAAE,eAAe;KAC3B,CACF,CAAC;IAEF,MAAM,mBAAoB,SAAQ,IAAA,gCAAuB,EACvD,MAAM,EACN,SAAS,EACT,aAAa,EACb,OAAO,EACP,gBAAgB,CACjB;KAAG;IAEJ,MAAM,oBAAoB;QAGxB,YAA+B,OAA8B;YAA9B,YAAO,GAAP,OAAO,CAAuB;YAF1C,WAAM,GAAG,MAAM,CAAC;QAGnC,CAAC;QAKK,AAAN,KAAK,CAAC,MAAM,CAAc,EAAU;YAClC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAE7C,MAAM,UAAU,GACd,eACD,CAAC,UAAU,CAAC;YAEb,OAAO,UAAU,CAAC,CAAC,CAAC,UAAU,CAAkB,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACnE,CAAC;KACF;IATO;QAHL,IAAA,+BAAqB,EAAC,sBAAsB,CAAC;QAC7C,IAAA,kBAAS,EAAC,mBAAmB,CAAC;QAC9B,IAAA,wBAAe,EAAC,GAAG,eAAe,CAAC;QACtB,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;sDAQxB;IAGH,MAAM,CAAC,cAAc,CAAC,oBAAoB,EAAE,MAAM,EAAE;QAClD,KAAK,EAAE,OAAO,IAAA,qBAAW,EAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE;QAC3E,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAEQ,sDAAqB"}
@@ -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 { GetOneGatewayConstructor } from './get-one-gateway.interface';
5
- declare function GetOneGatewayMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): GetOneGatewayConstructor<Entity>;
5
+ declare function GetOneGatewayMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, useInterceptors, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): GetOneGatewayConstructor<Entity>;
6
6
  export { GetOneGatewayMixin };
@@ -18,10 +18,11 @@ const websockets_1 = require("@nestjs/websockets");
18
18
  const dtos_1 = require("../../dtos");
19
19
  const filters_1 = require("../../filters");
20
20
  const gateways_1 = require("../../gateways");
21
+ const guards_1 = require("../../guards");
21
22
  const helpers_1 = require("../../helpers");
22
23
  const mixins_1 = require("../../mixins");
23
- function GetOneGatewayMixin(entity, controllerOptions, { dTOs, ...routeConfig }, version) {
24
- const { routeType, displayedName, isPublic, event, } = (0, helpers_1.getMixinData)(entity, controllerOptions, routeConfig, true);
24
+ function GetOneGatewayMixin(entity, controllerOptions, { dTOs, useInterceptors = [], ...routeConfig }, version) {
25
+ const { routeType, displayedName, isPublic, event, abilityPredicate, } = (0, helpers_1.getMixinData)(entity, controllerOptions, routeConfig, true);
25
26
  class GetOneResponse extends (dTOs?.presenter ?? (0, mixins_1.EntityPresenterMixin)(entity)) {
26
27
  }
27
28
  Object.defineProperty(GetOneResponse, 'name', {
@@ -30,6 +31,8 @@ function GetOneGatewayMixin(entity, controllerOptions, { dTOs, ...routeConfig },
30
31
  : `${displayedName}${(0, helpers_1.addVersionSuffix)(version)}Response`,
31
32
  writable: false,
32
33
  });
34
+ class GetOnePoliciesGuard extends (0, mixins_1.SocketPoliciesGuardMixin)(entity, routeType, event, version, abilityPredicate, isPublic) {
35
+ }
33
36
  class BaseGetOneGateway extends gateways_1.BaseGateway {
34
37
  constructor(service, jwtService) {
35
38
  super(jwtService);
@@ -37,11 +40,10 @@ function GetOneGatewayMixin(entity, controllerOptions, { dTOs, ...routeConfig },
37
40
  this.jwtService = jwtService;
38
41
  this.entity = entity;
39
42
  }
40
- async getOne(socket, body) {
43
+ async getOne(_socket, body) {
41
44
  if (!body?.id) {
42
45
  throw new websockets_1.WsException('Invalid request body');
43
46
  }
44
- this.addUserToSocket(socket, isPublic);
45
47
  const entity = await this.service.getOne(body.id);
46
48
  const fromEntity = GetOneResponse.fromEntity;
47
49
  return {
@@ -52,6 +54,8 @@ function GetOneGatewayMixin(entity, controllerOptions, { dTOs, ...routeConfig },
52
54
  }
53
55
  __decorate([
54
56
  (0, common_1.UseFilters)(new filters_1.DynamicAPIWsExceptionFilter()),
57
+ (0, common_1.UseGuards)(new guards_1.JwtSocketGuard(isPublic), GetOnePoliciesGuard),
58
+ (0, common_1.UseInterceptors)(...useInterceptors),
55
59
  (0, websockets_1.SubscribeMessage)(event),
56
60
  __param(0, (0, websockets_1.ConnectedSocket)()),
57
61
  __param(1, (0, websockets_1.MessageBody)()),
@@ -1 +1 @@
1
- {"version":3,"file":"get-one-gateway.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/get-one/get-one-gateway.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAkD;AAElD,mDAAiG;AACjG,qCAAyC;AACzC,2CAA4D;AAC5D,6CAA6C;AAC7C,2CAA4E;AAE5E,yCAAoD;AAKpD,SAAS,kBAAkB,CACzB,MAAoB,EACpB,iBAAsD,EACtD,EAAE,IAAI,EAAE,GAAG,WAAW,EAAiC,EACvD,OAAgB;IAEhB,MAAM,EACJ,SAAS,EACT,aAAa,EACb,QAAQ,EACR,KAAK,GACN,GAAG,IAAA,sBAAY,EACd,MAAM,EACN,iBAAiB,EACjB,WAAW,EACX,IAAI,CACL,CAAC;IAEF,MAAM,cAAe,SAAQ,CAC3B,IAAI,EAAE,SAAS,IAAI,IAAA,6BAAoB,EAAC,MAAM,CAAC,CAChD;KAAG;IAEJ,MAAM,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE;QAC5C,KAAK,EAAE,IAAI,EAAE,SAAS;YACpB,CAAC,CAAC,SAAS,aAAa,GAAG,IAAA,0BAAgB,EAAC,OAAO,CAAC,UAAU;YAC9D,CAAC,CAAC,GAAG,aAAa,GAAG,IAAA,0BAAgB,EAAC,OAAO,CAAC,UAAU;QAC1D,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,MAAM,iBAAkB,SAAQ,sBAAmB;QAGjD,YACqB,OAA8B,EAC9B,UAAsB;YAEzC,KAAK,CAAC,UAAU,CAAC,CAAC;YAHC,YAAO,GAAP,OAAO,CAAuB;YAC9B,eAAU,GAAV,UAAU,CAAY;YAJxB,WAAM,GAAG,MAAM,CAAC;QAOnC,CAAC;QAIK,AAAN,KAAK,CAAC,MAAM,CACS,MAA8B,EAClC,IAAiB;YAEhC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC;gBACd,MAAM,IAAI,wBAAW,CAAC,sBAAsB,CAAC,CAAC;YAChD,CAAC;YAED,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAEvC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAElD,MAAM,UAAU,GACd,cACD,CAAC,UAAU,CAAC;YAEb,OAAO;gBACL,KAAK;gBACL,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,CAAiB,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM;aAC/D,CAAC;QACJ,CAAC;KACF;IArBO;QAFL,IAAA,mBAAU,EAAC,IAAI,qCAA2B,EAAE,CAAC;QAC7C,IAAA,6BAAgB,EAAC,KAAK,CAAC;QAErB,WAAA,IAAA,4BAAe,GAAE,CAAA;QACjB,WAAA,IAAA,wBAAW,GAAE,CAAA;;iDAAO,kBAAW;;mDAkBjC;IAGH,MAAM,CAAC,cAAc,CAAC,iBAAiB,EAAE,MAAM,EAAE;QAC/C,KAAK,EAAE,OAAO,IAAA,qBAAW,EAAC,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE;QACzE,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAEQ,gDAAkB"}
1
+ {"version":3,"file":"get-one-gateway.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/get-one/get-one-gateway.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA8E;AAE9E,mDAAiG;AACjG,qCAAyC;AACzC,2CAA4D;AAC5D,6CAA6C;AAC7C,yCAA8C;AAC9C,2CAA4E;AAE5E,yCAA8E;AAK9E,SAAS,kBAAkB,CACzB,MAAoB,EACpB,iBAAsD,EACtD,EAAE,IAAI,EAAE,eAAe,GAAG,EAAE,EAAE,GAAG,WAAW,EAAiC,EAC7E,OAAgB;IAEhB,MAAM,EACJ,SAAS,EACT,aAAa,EACb,QAAQ,EACR,KAAK,EACL,gBAAgB,GACjB,GAAG,IAAA,sBAAY,EACd,MAAM,EACN,iBAAiB,EACjB,WAAW,EACX,IAAI,CACL,CAAC;IAEF,MAAM,cAAe,SAAQ,CAC3B,IAAI,EAAE,SAAS,IAAI,IAAA,6BAAoB,EAAC,MAAM,CAAC,CAChD;KAAG;IAEJ,MAAM,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE;QAC5C,KAAK,EAAE,IAAI,EAAE,SAAS;YACpB,CAAC,CAAC,SAAS,aAAa,GAAG,IAAA,0BAAgB,EAAC,OAAO,CAAC,UAAU;YAC9D,CAAC,CAAC,GAAG,aAAa,GAAG,IAAA,0BAAgB,EAAC,OAAO,CAAC,UAAU;QAC1D,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,MAAM,mBAAoB,SAAQ,IAAA,iCAAwB,EACxD,MAAM,EACN,SAAS,EACT,KAAK,EACL,OAAO,EACP,gBAAgB,EAChB,QAAQ,CACT;KAAG;IAEJ,MAAM,iBAAkB,SAAQ,sBAAmB;QAGjD,YACqB,OAA8B,EAC9B,UAAsB;YAEzC,KAAK,CAAC,UAAU,CAAC,CAAC;YAHC,YAAO,GAAP,OAAO,CAAuB;YAC9B,eAAU,GAAV,UAAU,CAAY;YAJxB,WAAM,GAAG,MAAM,CAAC;QAOnC,CAAC;QAMK,AAAN,KAAK,CAAC,MAAM,CACS,OAA+B,EACnC,IAAiB;YAEhC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC;gBACd,MAAM,IAAI,wBAAW,CAAC,sBAAsB,CAAC,CAAC;YAChD,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAElD,MAAM,UAAU,GACd,cACD,CAAC,UAAU,CAAC;YAEb,OAAO;gBACL,KAAK;gBACL,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,CAAiB,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM;aAC/D,CAAC;QACJ,CAAC;KACF;IAnBO;QAJL,IAAA,mBAAU,EAAC,IAAI,qCAA2B,EAAE,CAAC;QAC7C,IAAA,kBAAS,EAAC,IAAI,uBAAc,CAAC,QAAQ,CAAC,EAAE,mBAAmB,CAAC;QAC5D,IAAA,wBAAe,EAAC,GAAG,eAAe,CAAC;QACnC,IAAA,6BAAgB,EAAC,KAAK,CAAC;QAErB,WAAA,IAAA,4BAAe,GAAE,CAAA;QACjB,WAAA,IAAA,wBAAW,GAAE,CAAA;;iDAAO,kBAAW;;mDAgBjC;IAGH,MAAM,CAAC,cAAc,CAAC,iBAAiB,EAAE,MAAM,EAAE;QAC/C,KAAK,EAAE,OAAO,IAAA,qBAAW,EAAC,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE;QACzE,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAEQ,gDAAkB"}
@@ -4,6 +4,6 @@ import { BaseEntity } from '../../models';
4
4
  import { GetOneControllerConstructor } from './get-one-controller.interface';
5
5
  import { GetOneGatewayConstructor } from './get-one-gateway.interface';
6
6
  declare function createGetOneServiceProvider<Entity extends BaseEntity>(entity: Type<Entity>, displayedName: string, version: string | undefined, callback: DynamicApiServiceCallback<Entity> | undefined): DynamicAPIServiceProvider;
7
- declare function createGetOneController<Entity extends BaseEntity>(entity: Type<Entity>, displayedName: string, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions): GetOneControllerConstructor<Entity>;
8
- declare function createGetOneGateway<Entity extends BaseEntity>(entity: Type<Entity>, displayedName: string, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions, gatewayOptions?: GatewayOptions): GetOneGatewayConstructor<Entity>;
7
+ declare function createGetOneController<Entity extends BaseEntity>(entity: Type<Entity>, displayedName: string, { useInterceptors, ...controllerOptions }: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions): GetOneControllerConstructor<Entity>;
8
+ declare function createGetOneGateway<Entity extends BaseEntity>(entity: Type<Entity>, displayedName: string, { useInterceptors, ...controllerOptions }: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions, gatewayOptions?: GatewayOptions): GetOneGatewayConstructor<Entity>;
9
9
  export { createGetOneController, createGetOneGateway, createGetOneServiceProvider };
@@ -48,7 +48,7 @@ function createGetOneServiceProvider(entity, displayedName, version, callback) {
48
48
  };
49
49
  }
50
50
  exports.createGetOneServiceProvider = createGetOneServiceProvider;
51
- function createGetOneController(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions) {
51
+ function createGetOneController(entity, displayedName, { useInterceptors = [], ...controllerOptions }, routeConfig, version, validationPipeOptions) {
52
52
  const { path, apiTag } = controllerOptions;
53
53
  let GetOneController = class GetOneController extends (0, get_one_controller_mixin_1.GetOneControllerMixin)(entity, controllerOptions, routeConfig, version) {
54
54
  constructor(service) {
@@ -60,7 +60,7 @@ function createGetOneController(entity, displayedName, controllerOptions, routeC
60
60
  (0, common_1.Controller)({ path, version }),
61
61
  (0, swagger_1.ApiTags)(apiTag || entity.name),
62
62
  (0, decorators_1.ValidatorPipe)(validationPipeOptions),
63
- (0, common_1.UseInterceptors)(common_1.ClassSerializerInterceptor),
63
+ (0, common_1.UseInterceptors)(common_1.ClassSerializerInterceptor, ...useInterceptors),
64
64
  __param(0, (0, common_1.Inject)((0, helpers_1.provideName)('GetOne', displayedName, version, 'Service'))),
65
65
  __metadata("design:paramtypes", [Object])
66
66
  ], GetOneController);
@@ -71,7 +71,7 @@ function createGetOneController(entity, displayedName, controllerOptions, routeC
71
71
  return GetOneController;
72
72
  }
73
73
  exports.createGetOneController = createGetOneController;
74
- function createGetOneGateway(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions, gatewayOptions = {}) {
74
+ function createGetOneGateway(entity, displayedName, { useInterceptors = [], ...controllerOptions }, routeConfig, version, validationPipeOptions, gatewayOptions = {}) {
75
75
  let GetOneGateway = class GetOneGateway extends (0, get_one_gateway_mixin_1.GetOneGatewayMixin)(entity, controllerOptions, routeConfig, version) {
76
76
  constructor(service, jwtService) {
77
77
  super(service, jwtService);
@@ -82,6 +82,7 @@ function createGetOneGateway(entity, displayedName, controllerOptions, routeConf
82
82
  GetOneGateway = __decorate([
83
83
  (0, websockets_1.WebSocketGateway)(gatewayOptions),
84
84
  (0, decorators_1.ValidatorPipe)(validationPipeOptions),
85
+ (0, common_1.UseInterceptors)(common_1.ClassSerializerInterceptor, ...useInterceptors),
85
86
  __param(0, (0, common_1.Inject)((0, helpers_1.provideName)(routeConfig.type, displayedName, version, 'Service'))),
86
87
  __metadata("design:paramtypes", [Object, jwt_1.JwtService])
87
88
  ], GetOneGateway);
@@ -1 +1 @@
1
- {"version":3,"file":"get-one.helper.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/get-one/get-one.helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-one.helper.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/get-one/get-one.helper.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { DynamicModule, Type, ValidationPipeOptions } from '@nestjs/common';
1
+ import { DynamicModule, ModuleMetadata, Type, ValidationPipeOptions } from '@nestjs/common';
2
2
  import { DynamicApiControllerOptions, DynamicAPIRouteConfig, DynamicApiWebSocketOptions } from '../../interfaces';
3
3
  import { BaseEntity } from '../../models';
4
4
  export declare class GetOneModule {
5
- static forFeature<Entity extends BaseEntity>(databaseModule: DynamicModule, entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions, webSocket?: DynamicApiWebSocketOptions): DynamicModule;
5
+ static forFeature<Entity extends BaseEntity>(databaseModule: DynamicModule, entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions, webSocket?: DynamicApiWebSocketOptions, extraImports?: ModuleMetadata['imports'], extraProviders?: ModuleMetadata['providers'], extraControllers?: ModuleMetadata['controllers']): DynamicModule;
6
6
  }
@@ -13,7 +13,7 @@ const dynamic_api_module_1 = require("../../dynamic-api.module");
13
13
  const helpers_1 = require("../../helpers");
14
14
  const get_one_helper_1 = require("./get-one.helper");
15
15
  let GetOneModule = GetOneModule_1 = class GetOneModule {
16
- static forFeature(databaseModule, entity, controllerOptions, routeConfig, version, validationPipeOptions, webSocket) {
16
+ static forFeature(databaseModule, entity, controllerOptions, routeConfig, version, validationPipeOptions, webSocket, extraImports, extraProviders, extraControllers) {
17
17
  const displayedName = (0, helpers_1.getDisplayedName)(controllerOptions.apiTag, entity.name, routeConfig.subPath);
18
18
  const controller = (0, get_one_helper_1.createGetOneController)(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions);
19
19
  const ServiceProvider = (0, get_one_helper_1.createGetOneServiceProvider)(entity, displayedName, version, routeConfig.callback);
@@ -22,13 +22,14 @@ let GetOneModule = GetOneModule_1 = class GetOneModule {
22
22
  : dynamic_api_module_1.DynamicApiModule.state.get('gatewayOptions');
23
23
  return {
24
24
  module: GetOneModule_1,
25
- imports: [databaseModule],
26
- controllers: [controller],
25
+ imports: [databaseModule, ...(extraImports || [])],
26
+ controllers: [controller, ...(extraControllers || [])],
27
27
  providers: [
28
28
  ServiceProvider,
29
29
  ...(gatewayOptions ? [
30
30
  (0, get_one_helper_1.createGetOneGateway)(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions, gatewayOptions)
31
31
  ] : []),
32
+ ...(extraProviders || []),
32
33
  ],
33
34
  };
34
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"get-one.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/get-one/get-one.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAoF;AAEpF,iEAA4D;AAC5D,2CAA8E;AAG9E,qDAG0B;AAGnB,IAAM,YAAY,oBAAlB,MAAM,YAAY;IACvB,MAAM,CAAC,UAAU,CACf,cAA6B,EAC7B,MAAoB,EACpB,iBAAsD,EACtD,WAA0C,EAC1C,OAAgB,EAChB,qBAA6C,EAC7C,SAAsC;QAEtC,MAAM,aAAa,GAAG,IAAA,0BAAgB,EAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;QAEnG,MAAM,UAAU,GAAG,IAAA,uCAAsB,EACvC,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,CACtB,CAAC;QACF,MAAM,eAAe,GAAG,IAAA,4CAA2B,EAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE1G,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,cAAY;YACpB,OAAO,EAAE,CAAC,cAAc,CAAC;YACzB,WAAW,EAAE,CAAC,UAAU,CAAC;YACzB,SAAS,EAAE;gBACT,eAAe;gBACf,GAAG,CACD,cAAc,CAAC,CAAC,CAAC;oBACf,IAAA,oCAAmB,EACjB,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,EACrB,cAAc,CACf;iBACF,CAAC,CAAC,CAAC,EAAE,CACP;aACF;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AAhDY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,YAAY,CAgDxB"}
1
+ {"version":3,"file":"get-one.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/get-one/get-one.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAoG;AAEpG,iEAA4D;AAC5D,2CAA8E;AAG9E,qDAG0B;AAGnB,IAAM,YAAY,oBAAlB,MAAM,YAAY;IACvB,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,uCAAsB,EACvC,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,CACtB,CAAC;QACF,MAAM,eAAe,GAAG,IAAA,4CAA2B,EAAC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE1G,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,cAAY;YACpB,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,oCAAmB,EACjB,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,oCAAY;uBAAZ,YAAY;IADxB,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,YAAY,CAoDxB"}
@@ -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 { ReplaceOneControllerConstructor } from './replace-one-controller.interface';
5
- declare function ReplaceOneControllerMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): ReplaceOneControllerConstructor<Entity>;
5
+ declare function ReplaceOneControllerMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, useInterceptors, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): ReplaceOneControllerConstructor<Entity>;
6
6
  export { ReplaceOneControllerMixin };
@@ -18,7 +18,7 @@ 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 ReplaceOneControllerMixin(entity, controllerOptions, { dTOs, ...routeConfig }, version) {
21
+ function ReplaceOneControllerMixin(entity, controllerOptions, { dTOs, useInterceptors = [], ...routeConfig }, version) {
22
22
  const { routeType, displayedName, description, isPublic, abilityPredicate, } = (0, helpers_1.getMixinData)(entity, controllerOptions, routeConfig);
23
23
  class ReplaceOneBody extends (dTOs?.body ?? (0, mixins_1.EntityBodyMixin)(entity)) {
24
24
  }
@@ -39,7 +39,7 @@ function ReplaceOneControllerMixin(entity, controllerOptions, { dTOs, ...routeCo
39
39
  body: ReplaceOneBody,
40
40
  presenter: ReplaceOnePresenter,
41
41
  });
42
- class ReplaceOnePoliciesGuard extends (0, mixins_1.CreatePoliciesGuardMixin)(entity, routeType, displayedName, version, abilityPredicate) {
42
+ class ReplaceOnePoliciesGuard extends (0, mixins_1.RoutePoliciesGuardMixin)(entity, routeType, displayedName, version, abilityPredicate) {
43
43
  }
44
44
  class BaseReplaceOneController {
45
45
  constructor(service) {
@@ -56,6 +56,7 @@ function ReplaceOneControllerMixin(entity, controllerOptions, { dTOs, ...routeCo
56
56
  __decorate([
57
57
  (0, helpers_1.RouteDecoratorsHelper)(routeDecoratorsBuilder),
58
58
  (0, common_1.UseGuards)(ReplaceOnePoliciesGuard),
59
+ (0, common_1.UseInterceptors)(...useInterceptors),
59
60
  __param(0, (0, common_1.Param)('id')),
60
61
  __param(1, (0, common_1.Body)()),
61
62
  __metadata("design:type", Function),
@@ -1 +1 @@
1
- {"version":3,"file":"replace-one-controller.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/replace-one/replace-one-controller.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA8D;AAC9D,6CAAwD;AACxD,qCAAyC;AACzC,2CAAmG;AAEnG,yCAA+F;AAK/F,SAAS,yBAAyB,CAChC,MAAoB,EACpB,iBAAsD,EACtD,EAAE,IAAI,EAAE,GAAG,WAAW,EAAiC,EACvD,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,cAAe,SAAQ,CAC3B,IAAI,EAAE,IAAI,IAAI,IAAA,wBAAe,EAAC,MAAM,CAAC,CACtC;KAAG;IAEJ,MAAM,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE;QAC5C,KAAK,EAAE,aAAa,aAAa,GAAG,IAAA,0BAAgB,EAAC,OAAO,CAAC,KAAK;QAClE,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,MAAM,mBAAoB,SAAQ,CAChC,IAAI,EAAE,SAAS,IAAI,IAAA,6BAAoB,EAAC,MAAM,CAAC,CAChD;KAAG;IAEJ,MAAM,CAAC,cAAc,CAAC,mBAAmB,EAAE,MAAM,EAAE;QACjD,KAAK,EAAE,IAAI,EAAE,SAAS;YACpB,CAAC,CAAC,aAAa,aAAa,GAAG,IAAA,0BAAgB,EAAC,OAAO,CAAC,WAAW;YACnE,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,KAAK,EAAE,kBAAW;QAClB,IAAI,EAAE,cAAc;QACpB,SAAS,EAAE,mBAAmB;KAC/B,CACF,CAAC;IAEF,MAAM,uBAAwB,SAAQ,IAAA,iCAAwB,EAC5D,MAAM,EACN,SAAS,EACT,aAAa,EACb,OAAO,EACP,gBAAgB,CACjB;KAAG;IAEJ,MAAM,wBAAwB;QAG5B,YAA+B,OAAkC;YAAlC,YAAO,GAAP,OAAO,CAA2B;YAF9C,WAAM,GAAG,MAAM,CAAC;QAGnC,CAAC;QAIK,AAAN,KAAK,CAAC,UAAU,CAAc,EAAU,EAAU,IAAoB;YACpE,MAAM,QAAQ,GACZ,cACD,CAAC,QAAQ,CAAC;YAEX,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAuB,CAAC,CAAC;YAEtG,MAAM,UAAU,GACd,mBACD,CAAC,UAAU,CAAC;YAEb,OAAO,UAAU,CAAC,CAAC,CAAC,UAAU,CAAsB,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACvE,CAAC;KACF;IAbO;QAFL,IAAA,+BAAqB,EAAC,sBAAsB,CAAC;QAC7C,IAAA,kBAAS,EAAC,uBAAuB,CAAC;QACjB,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;QAAc,WAAA,IAAA,aAAI,GAAE,CAAA;;iDAAO,cAAc;;8DAYrE;IAGH,MAAM,CAAC,cAAc,CAAC,wBAAwB,EAAE,MAAM,EAAE;QACtD,KAAK,EAAE,OAAO,IAAA,qBAAW,EAAC,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE;QAC/E,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,wBAAwB,CAAC;AAClC,CAAC;AAEQ,8DAAyB"}
1
+ {"version":3,"file":"replace-one-controller.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/replace-one/replace-one-controller.mixin.ts"],"names":[],"mappings":"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"}
@@ -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 { ReplaceOneGatewayConstructor } from './replace-one-gateway.interface';
5
- declare function ReplaceOneGatewayMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): ReplaceOneGatewayConstructor<Entity>;
5
+ declare function ReplaceOneGatewayMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, useInterceptors, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): ReplaceOneGatewayConstructor<Entity>;
6
6
  export { ReplaceOneGatewayMixin };
@@ -17,10 +17,11 @@ const common_1 = require("@nestjs/common");
17
17
  const websockets_1 = require("@nestjs/websockets");
18
18
  const filters_1 = require("../../filters");
19
19
  const gateways_1 = require("../../gateways");
20
+ const guards_1 = require("../../guards");
20
21
  const helpers_1 = require("../../helpers");
21
22
  const mixins_1 = require("../../mixins");
22
- function ReplaceOneGatewayMixin(entity, controllerOptions, { dTOs, ...routeConfig }, version) {
23
- const { routeType, displayedName, isPublic, event, } = (0, helpers_1.getMixinData)(entity, controllerOptions, routeConfig, true);
23
+ function ReplaceOneGatewayMixin(entity, controllerOptions, { dTOs, useInterceptors = [], ...routeConfig }, version) {
24
+ const { routeType, displayedName, isPublic, event, abilityPredicate, } = (0, helpers_1.getMixinData)(entity, controllerOptions, routeConfig, true);
24
25
  class ReplaceOneData extends (dTOs?.body ?? (0, mixins_1.EntityBodyMixin)(entity)) {
25
26
  }
26
27
  Object.defineProperty(ReplaceOneData, 'name', {
@@ -35,6 +36,8 @@ function ReplaceOneGatewayMixin(entity, controllerOptions, { dTOs, ...routeConfi
35
36
  : `${displayedName}${(0, helpers_1.addVersionSuffix)(version)}Response`,
36
37
  writable: false,
37
38
  });
39
+ class ReplaceOnePoliciesGuard extends (0, mixins_1.SocketPoliciesGuardMixin)(entity, routeType, event, version, abilityPredicate, isPublic) {
40
+ }
38
41
  class BaseReplaceOneGateway extends gateways_1.BaseGateway {
39
42
  constructor(service, jwtService) {
40
43
  super(jwtService);
@@ -42,11 +45,10 @@ function ReplaceOneGatewayMixin(entity, controllerOptions, { dTOs, ...routeConfi
42
45
  this.jwtService = jwtService;
43
46
  this.entity = entity;
44
47
  }
45
- async replaceOne(socket, body) {
48
+ async replaceOne(_socket, body) {
46
49
  if (!body?.id || Object.keys(body).length === 1) {
47
50
  throw new websockets_1.WsException('Invalid request body');
48
51
  }
49
- this.addUserToSocket(socket, isPublic);
50
52
  const { id, ...data } = body;
51
53
  const toEntity = ReplaceOneData.toEntity;
52
54
  const entity = await this.service.replaceOne(id, toEntity ? toEntity(data) : data);
@@ -59,6 +61,8 @@ function ReplaceOneGatewayMixin(entity, controllerOptions, { dTOs, ...routeConfi
59
61
  }
60
62
  __decorate([
61
63
  (0, common_1.UseFilters)(new filters_1.DynamicAPIWsExceptionFilter()),
64
+ (0, common_1.UseGuards)(new guards_1.JwtSocketGuard(isPublic), ReplaceOnePoliciesGuard),
65
+ (0, common_1.UseInterceptors)(...useInterceptors),
62
66
  (0, websockets_1.SubscribeMessage)(event),
63
67
  __param(0, (0, websockets_1.ConnectedSocket)()),
64
68
  __param(1, (0, websockets_1.MessageBody)()),
@@ -1 +1 @@
1
- {"version":3,"file":"replace-one-gateway.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/replace-one/replace-one-gateway.mixin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"replace-one-gateway.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/replace-one/replace-one-gateway.mixin.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,6 @@ import { BaseEntity } from '../../models';
4
4
  import { ReplaceOneControllerConstructor } from './replace-one-controller.interface';
5
5
  import { ReplaceOneGatewayConstructor } from './replace-one-gateway.interface';
6
6
  declare function createReplaceOneServiceProvider<Entity extends BaseEntity>(entity: Type<Entity>, displayedName: string, version: string | undefined, callback: DynamicApiServiceCallback<Entity> | undefined): DynamicAPIServiceProvider;
7
- declare function createReplaceOneController<Entity extends BaseEntity>(entity: Type<Entity>, displayedName: string, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions): ReplaceOneControllerConstructor<Entity>;
8
- declare function createReplaceOneGateway<Entity extends BaseEntity>(entity: Type<Entity>, displayedName: string, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions, gatewayOptions?: GatewayOptions): ReplaceOneGatewayConstructor<Entity>;
7
+ declare function createReplaceOneController<Entity extends BaseEntity>(entity: Type<Entity>, displayedName: string, { useInterceptors, ...controllerOptions }: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions): ReplaceOneControllerConstructor<Entity>;
8
+ declare function createReplaceOneGateway<Entity extends BaseEntity>(entity: Type<Entity>, displayedName: string, { useInterceptors, ...controllerOptions }: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions, gatewayOptions?: GatewayOptions): ReplaceOneGatewayConstructor<Entity>;
9
9
  export { createReplaceOneController, createReplaceOneGateway, createReplaceOneServiceProvider };
@@ -48,7 +48,7 @@ function createReplaceOneServiceProvider(entity, displayedName, version, callbac
48
48
  };
49
49
  }
50
50
  exports.createReplaceOneServiceProvider = createReplaceOneServiceProvider;
51
- function createReplaceOneController(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions) {
51
+ function createReplaceOneController(entity, displayedName, { useInterceptors = [], ...controllerOptions }, routeConfig, version, validationPipeOptions) {
52
52
  const { path, apiTag } = controllerOptions;
53
53
  let ReplaceOneController = class ReplaceOneController extends (0, replace_one_controller_mixin_1.ReplaceOneControllerMixin)(entity, controllerOptions, routeConfig, version) {
54
54
  constructor(service) {
@@ -60,7 +60,7 @@ function createReplaceOneController(entity, displayedName, controllerOptions, ro
60
60
  (0, common_1.Controller)({ path, version }),
61
61
  (0, swagger_1.ApiTags)(apiTag || entity.name),
62
62
  (0, decorators_1.ValidatorPipe)(validationPipeOptions),
63
- (0, common_1.UseInterceptors)(common_1.ClassSerializerInterceptor),
63
+ (0, common_1.UseInterceptors)(common_1.ClassSerializerInterceptor, ...useInterceptors),
64
64
  __param(0, (0, common_1.Inject)((0, helpers_1.provideName)('ReplaceOne', displayedName, version, 'Service'))),
65
65
  __metadata("design:paramtypes", [Object])
66
66
  ], ReplaceOneController);
@@ -71,7 +71,7 @@ function createReplaceOneController(entity, displayedName, controllerOptions, ro
71
71
  return ReplaceOneController;
72
72
  }
73
73
  exports.createReplaceOneController = createReplaceOneController;
74
- function createReplaceOneGateway(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions, gatewayOptions = {}) {
74
+ function createReplaceOneGateway(entity, displayedName, { useInterceptors = [], ...controllerOptions }, routeConfig, version, validationPipeOptions, gatewayOptions = {}) {
75
75
  let ReplaceOneGateway = class ReplaceOneGateway extends (0, replace_one_gateway_mixin_1.ReplaceOneGatewayMixin)(entity, controllerOptions, routeConfig, version) {
76
76
  constructor(service, jwtService) {
77
77
  super(service, jwtService);
@@ -82,6 +82,7 @@ function createReplaceOneGateway(entity, displayedName, controllerOptions, route
82
82
  ReplaceOneGateway = __decorate([
83
83
  (0, websockets_1.WebSocketGateway)(gatewayOptions),
84
84
  (0, decorators_1.ValidatorPipe)(validationPipeOptions),
85
+ (0, common_1.UseInterceptors)(common_1.ClassSerializerInterceptor, ...useInterceptors),
85
86
  __param(0, (0, common_1.Inject)((0, helpers_1.provideName)(routeConfig.type, displayedName, version, 'Service'))),
86
87
  __metadata("design:paramtypes", [Object, jwt_1.JwtService])
87
88
  ], ReplaceOneGateway);
@@ -1 +1 @@
1
- {"version":3,"file":"replace-one.helper.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/replace-one/replace-one.helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"replace-one.helper.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/replace-one/replace-one.helper.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { DynamicModule, Type, ValidationPipeOptions } from '@nestjs/common';
1
+ import { DynamicModule, ModuleMetadata, Type, ValidationPipeOptions } from '@nestjs/common';
2
2
  import { DynamicApiControllerOptions, DynamicAPIRouteConfig, DynamicApiWebSocketOptions } from '../../interfaces';
3
3
  import { BaseEntity } from '../../models';
4
4
  export declare class ReplaceOneModule {
5
- static forFeature<Entity extends BaseEntity>(databaseModule: DynamicModule, entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions, webSocket?: DynamicApiWebSocketOptions): DynamicModule;
5
+ static forFeature<Entity extends BaseEntity>(databaseModule: DynamicModule, entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions, webSocket?: DynamicApiWebSocketOptions, extraImports?: ModuleMetadata['imports'], extraProviders?: ModuleMetadata['providers'], extraControllers?: ModuleMetadata['controllers']): DynamicModule;
6
6
  }
@@ -13,7 +13,7 @@ const dynamic_api_module_1 = require("../../dynamic-api.module");
13
13
  const helpers_1 = require("../../helpers");
14
14
  const replace_one_helper_1 = require("./replace-one.helper");
15
15
  let ReplaceOneModule = ReplaceOneModule_1 = class ReplaceOneModule {
16
- static forFeature(databaseModule, entity, controllerOptions, routeConfig, version, validationPipeOptions, webSocket) {
16
+ static forFeature(databaseModule, entity, controllerOptions, routeConfig, version, validationPipeOptions, webSocket, extraImports, extraProviders, extraControllers) {
17
17
  const displayedName = (0, helpers_1.getDisplayedName)(controllerOptions.apiTag, entity.name, routeConfig.subPath);
18
18
  const controller = (0, replace_one_helper_1.createReplaceOneController)(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions);
19
19
  const ServiceProvider = (0, replace_one_helper_1.createReplaceOneServiceProvider)(entity, displayedName, version, routeConfig.callback);
@@ -22,13 +22,14 @@ let ReplaceOneModule = ReplaceOneModule_1 = class ReplaceOneModule {
22
22
  : dynamic_api_module_1.DynamicApiModule.state.get('gatewayOptions');
23
23
  return {
24
24
  module: ReplaceOneModule_1,
25
- imports: [databaseModule],
26
- controllers: [controller],
25
+ imports: [databaseModule, ...(extraImports || [])],
26
+ controllers: [controller, ...(extraControllers || [])],
27
27
  providers: [
28
28
  ServiceProvider,
29
29
  ...(gatewayOptions ? [
30
30
  (0, replace_one_helper_1.createReplaceOneGateway)(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions, gatewayOptions)
31
31
  ] : []),
32
+ ...(extraProviders || []),
32
33
  ],
33
34
  };
34
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"replace-one.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/replace-one/replace-one.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAoF;AAEpF,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;QAEtC,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,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE9G,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,CAAC;YACzB,WAAW,EAAE,CAAC,UAAU,CAAC;YACzB,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;aACF;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AAhDY,4CAAgB;2BAAhB,gBAAgB;IAD5B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,gBAAgB,CAgD5B"}
1
+ {"version":3,"file":"replace-one.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/replace-one/replace-one.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,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE9G,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"}
@@ -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 { UpdateManyControllerConstructor } from './update-many-controller.interface';
5
- declare function UpdateManyControllerMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): UpdateManyControllerConstructor<Entity>;
5
+ declare function UpdateManyControllerMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, useInterceptors, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): UpdateManyControllerConstructor<Entity>;
6
6
  export { UpdateManyControllerMixin };
@@ -18,7 +18,7 @@ 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 UpdateManyControllerMixin(entity, controllerOptions, { dTOs, ...routeConfig }, version) {
21
+ function UpdateManyControllerMixin(entity, controllerOptions, { dTOs, useInterceptors = [], ...routeConfig }, version) {
22
22
  const { routeType, displayedName, description, isPublic, abilityPredicate, } = (0, helpers_1.getMixinData)(entity, controllerOptions, routeConfig);
23
23
  class UpdateManyBody extends (dTOs?.body ?? (0, mixins_1.EntityBodyMixin)(entity, true)) {
24
24
  }
@@ -38,7 +38,7 @@ function UpdateManyControllerMixin(entity, controllerOptions, { dTOs, ...routeCo
38
38
  body: UpdateManyBody,
39
39
  presenter: UpdateManyPresenter,
40
40
  });
41
- class UpdateManyPoliciesGuard extends (0, mixins_1.CreatePoliciesGuardMixin)(entity, routeType, displayedName, version, abilityPredicate) {
41
+ class UpdateManyPoliciesGuard extends (0, mixins_1.RoutePoliciesGuardMixin)(entity, routeType, displayedName, version, abilityPredicate) {
42
42
  }
43
43
  class BaseUpdateManyController {
44
44
  constructor(service) {
@@ -61,6 +61,7 @@ function UpdateManyControllerMixin(entity, controllerOptions, { dTOs, ...routeCo
61
61
  __decorate([
62
62
  (0, helpers_1.RouteDecoratorsHelper)(routeDecoratorsBuilder),
63
63
  (0, common_1.UseGuards)(UpdateManyPoliciesGuard),
64
+ (0, common_1.UseInterceptors)(...useInterceptors),
64
65
  __param(0, (0, common_1.Query)('ids')),
65
66
  __param(1, (0, common_1.Body)()),
66
67
  __metadata("design:type", Function),
@@ -1 +1 @@
1
- {"version":3,"file":"update-many-controller.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/update-many/update-many-controller.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA8D;AAC9D,mCAAiC;AACjC,6CAAwD;AACxD,2CAAmG;AAEnG,yCAA+F;AAK/F,SAAS,yBAAyB,CAChC,MAAoB,EACpB,iBAAsD,EACtD,EAAE,IAAI,EAAE,GAAG,WAAW,EAAiC,EACvD,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,cAAe,SAAQ,CAC3B,IAAI,EAAE,IAAI,IAAI,IAAA,wBAAe,EAAC,MAAM,EAAE,IAAI,CAAC,CAC5C;KAAG;IAEJ,MAAM,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE;QAC5C,KAAK,EAAE,aAAa,aAAa,GAAG,IAAA,0BAAgB,EAAC,OAAO,CAAC,KAAK;QAClE,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,MAAM,mBAAoB,SAAQ,CAChC,IAAI,EAAE,SAAS,IAAI,IAAA,6BAAoB,EAAC,MAAM,CAAC,CAChD;KAAG;IAEJ,MAAM,CAAC,cAAc,CAAC,mBAAmB,EAAE,MAAM,EAAE;QACjD,KAAK,EAAE,IAAI,EAAE,SAAS;YACpB,CAAC,CAAC,aAAa,aAAa,GAAG,IAAA,0BAAgB,EAAC,OAAO,CAAC,WAAW;YACnE,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,cAAc;QACpB,SAAS,EAAE,mBAAmB;KAC/B,CACF,CAAC;IAEF,MAAM,uBAAwB,SAAQ,IAAA,iCAAwB,EAC5D,MAAM,EACN,SAAS,EACT,aAAa,EACb,OAAO,EACP,gBAAgB,CACjB;KAAG;IAEJ,MAAM,wBAAwB;QAG5B,YAA+B,OAAkC;YAAlC,YAAO,GAAP,OAAO,CAA2B;YAF9C,WAAM,GAAG,MAAM,CAAC;QAGnC,CAAC;QAIK,AAAN,KAAK,CAAC,UAAU,CAAe,GAAa,EAAU,IAAoB;YACxE,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;YACnC,CAAC;YAED,IAAI,IAAA,gBAAO,EAAC,IAAI,CAAC,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAC1C,CAAC;YAED,MAAM,QAAQ,GACZ,cACD,CAAC,QAAQ,CAAC;YAEX,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAuB,CAAC,CAAC;YAErG,MAAM,YAAY,GAChB,mBACD,CAAC,YAAY,CAAC;YAEf,OAAO,YAAY,CAAC,CAAC,CAAC,YAAY,CAAsB,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACvE,CAAC;KACF;IArBO;QAFL,IAAA,+BAAqB,EAAC,sBAAsB,CAAC;QAC7C,IAAA,kBAAS,EAAC,uBAAuB,CAAC;QACjB,WAAA,IAAA,cAAK,EAAC,KAAK,CAAC,CAAA;QAAiB,WAAA,IAAA,aAAI,GAAE,CAAA;;gDAAO,cAAc;;8DAoBzE;IAGH,MAAM,CAAC,cAAc,CAAC,wBAAwB,EAAE,MAAM,EAAE;QACtD,KAAK,EAAE,OAAO,IAAA,qBAAW,EAAC,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE;QAC/E,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,wBAAwB,CAAC;AAClC,CAAC;AAEQ,8DAAyB"}
1
+ {"version":3,"file":"update-many-controller.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/update-many/update-many-controller.mixin.ts"],"names":[],"mappings":"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"}
@@ -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 { UpdateManyGatewayConstructor } from './update-many-gateway.interface';
5
- declare function UpdateManyGatewayMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): UpdateManyGatewayConstructor<Entity>;
5
+ declare function UpdateManyGatewayMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, useInterceptors, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): UpdateManyGatewayConstructor<Entity>;
6
6
  export { UpdateManyGatewayMixin };