mongodb-dynamic-api 2.5.1 → 2.7.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 (190) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/package.json +1 -2
  3. package/src/builders/route-decorators/route-decorators.builder.d.ts +2 -1
  4. package/src/builders/route-decorators/route-decorators.builder.js +24 -14
  5. package/src/builders/route-decorators/route-decorators.builder.js.map +1 -1
  6. package/src/dynamic-api.module.js +4 -3
  7. package/src/dynamic-api.module.js.map +1 -1
  8. package/src/helpers/format.helper.d.ts +3 -3
  9. package/src/helpers/format.helper.js +8 -8
  10. package/src/helpers/format.helper.js.map +1 -1
  11. package/src/helpers/index.d.ts +1 -1
  12. package/src/helpers/index.js +1 -1
  13. package/src/helpers/index.js.map +1 -1
  14. package/src/helpers/mixin-data.helper.d.ts +12 -0
  15. package/src/helpers/mixin-data.helper.js +30 -0
  16. package/src/helpers/mixin-data.helper.js.map +1 -0
  17. package/src/interfaces/dynamic-api-route-config.interface.d.ts +1 -0
  18. package/src/interfaces/dynamic-api-route-dtos-bundle.type.d.ts +9 -1
  19. package/src/mixins/create-policies-guard.mixin.d.ts +1 -1
  20. package/src/mixins/create-policies-guard.mixin.js +2 -2
  21. package/src/mixins/create-policies-guard.mixin.js.map +1 -1
  22. package/src/mixins/entity-body.mixin.d.ts +1 -1
  23. package/src/mixins/entity-body.mixin.js +2 -2
  24. package/src/mixins/entity-body.mixin.js.map +1 -1
  25. package/src/routes/create-many/create-many-body.mixin.d.ts +17 -0
  26. package/src/routes/create-many/{create-many-body-dto.mixin.js → create-many-body.mixin.js} +15 -10
  27. package/src/routes/create-many/create-many-body.mixin.js.map +1 -0
  28. package/src/routes/create-many/create-many-controller.interface.d.ts +2 -2
  29. package/src/routes/create-many/create-many-controller.mixin.d.ts +1 -1
  30. package/src/routes/create-many/create-many-controller.mixin.js +36 -10
  31. package/src/routes/create-many/create-many-controller.mixin.js.map +1 -1
  32. package/src/routes/create-many/create-many-gateway.interface.d.ts +2 -2
  33. package/src/routes/create-many/create-many-gateway.mixin.d.ts +1 -1
  34. package/src/routes/create-many/create-many-gateway.mixin.js +30 -9
  35. package/src/routes/create-many/create-many-gateway.mixin.js.map +1 -1
  36. package/src/routes/create-many/create-many-presenter.mixin.d.ts +17 -0
  37. package/src/routes/create-many/create-many-presenter.mixin.js +11 -0
  38. package/src/routes/create-many/create-many-presenter.mixin.js.map +1 -0
  39. package/src/routes/create-many/create-many.helper.d.ts +3 -3
  40. package/src/routes/create-many/create-many.helper.js +12 -8
  41. package/src/routes/create-many/create-many.helper.js.map +1 -1
  42. package/src/routes/create-many/create-many.module.js +4 -3
  43. package/src/routes/create-many/create-many.module.js.map +1 -1
  44. package/src/routes/create-many/index.d.ts +2 -1
  45. package/src/routes/create-many/index.js +2 -1
  46. package/src/routes/create-many/index.js.map +1 -1
  47. package/src/routes/create-one/create-one-controller.interface.d.ts +2 -2
  48. package/src/routes/create-one/create-one-controller.mixin.d.ts +1 -1
  49. package/src/routes/create-one/create-one-controller.mixin.js +26 -10
  50. package/src/routes/create-one/create-one-controller.mixin.js.map +1 -1
  51. package/src/routes/create-one/create-one-gateway.interface.d.ts +2 -2
  52. package/src/routes/create-one/create-one-gateway.mixin.d.ts +1 -1
  53. package/src/routes/create-one/create-one-gateway.mixin.js +23 -8
  54. package/src/routes/create-one/create-one-gateway.mixin.js.map +1 -1
  55. package/src/routes/create-one/create-one.helper.d.ts +3 -3
  56. package/src/routes/create-one/create-one.helper.js +12 -8
  57. package/src/routes/create-one/create-one.helper.js.map +1 -1
  58. package/src/routes/create-one/create-one.module.js +4 -3
  59. package/src/routes/create-one/create-one.module.js.map +1 -1
  60. package/src/routes/delete-many/base-delete-many.service.js +3 -3
  61. package/src/routes/delete-many/base-delete-many.service.js.map +1 -1
  62. package/src/routes/delete-many/delete-many-controller.interface.d.ts +4 -3
  63. package/src/routes/delete-many/delete-many-controller.mixin.d.ts +1 -1
  64. package/src/routes/delete-many/delete-many-controller.mixin.js +17 -9
  65. package/src/routes/delete-many/delete-many-controller.mixin.js.map +1 -1
  66. package/src/routes/delete-many/delete-many-gateway.interface.d.ts +4 -4
  67. package/src/routes/delete-many/delete-many-gateway.mixin.d.ts +1 -1
  68. package/src/routes/delete-many/delete-many-gateway.mixin.js +14 -6
  69. package/src/routes/delete-many/delete-many-gateway.mixin.js.map +1 -1
  70. package/src/routes/delete-many/delete-many.helper.d.ts +3 -3
  71. package/src/routes/delete-many/delete-many.helper.js +12 -8
  72. package/src/routes/delete-many/delete-many.helper.js.map +1 -1
  73. package/src/routes/delete-many/delete-many.module.js +4 -3
  74. package/src/routes/delete-many/delete-many.module.js.map +1 -1
  75. package/src/routes/delete-one/base-delete-one.service.js +3 -3
  76. package/src/routes/delete-one/base-delete-one.service.js.map +1 -1
  77. package/src/routes/delete-one/delete-one-controller.interface.d.ts +3 -3
  78. package/src/routes/delete-one/delete-one-controller.mixin.d.ts +1 -1
  79. package/src/routes/delete-one/delete-one-controller.mixin.js +18 -10
  80. package/src/routes/delete-one/delete-one-controller.mixin.js.map +1 -1
  81. package/src/routes/delete-one/delete-one-gateway.interface.d.ts +4 -4
  82. package/src/routes/delete-one/delete-one-gateway.mixin.d.ts +1 -1
  83. package/src/routes/delete-one/delete-one-gateway.mixin.js +14 -6
  84. package/src/routes/delete-one/delete-one-gateway.mixin.js.map +1 -1
  85. package/src/routes/delete-one/delete-one.helper.d.ts +3 -3
  86. package/src/routes/delete-one/delete-one.helper.js +12 -8
  87. package/src/routes/delete-one/delete-one.helper.js.map +1 -1
  88. package/src/routes/delete-one/delete-one.module.js +4 -3
  89. package/src/routes/delete-one/delete-one.module.js.map +1 -1
  90. package/src/routes/duplicate-many/duplicate-many-controller.interface.d.ts +2 -2
  91. package/src/routes/duplicate-many/duplicate-many-controller.mixin.d.ts +1 -1
  92. package/src/routes/duplicate-many/duplicate-many-controller.mixin.js +27 -10
  93. package/src/routes/duplicate-many/duplicate-many-controller.mixin.js.map +1 -1
  94. package/src/routes/duplicate-many/duplicate-many-gateway.interface.d.ts +2 -2
  95. package/src/routes/duplicate-many/duplicate-many-gateway.mixin.d.ts +1 -1
  96. package/src/routes/duplicate-many/duplicate-many-gateway.mixin.js +23 -6
  97. package/src/routes/duplicate-many/duplicate-many-gateway.mixin.js.map +1 -1
  98. package/src/routes/duplicate-many/duplicate-many-service.interface.d.ts +2 -2
  99. package/src/routes/duplicate-many/duplicate-many.helper.d.ts +3 -3
  100. package/src/routes/duplicate-many/duplicate-many.helper.js +12 -8
  101. package/src/routes/duplicate-many/duplicate-many.helper.js.map +1 -1
  102. package/src/routes/duplicate-many/duplicate-many.module.js +4 -3
  103. package/src/routes/duplicate-many/duplicate-many.module.js.map +1 -1
  104. package/src/routes/duplicate-one/duplicate-one-controller.interface.d.ts +2 -2
  105. package/src/routes/duplicate-one/duplicate-one-controller.mixin.d.ts +1 -1
  106. package/src/routes/duplicate-one/duplicate-one-controller.mixin.js +27 -10
  107. package/src/routes/duplicate-one/duplicate-one-controller.mixin.js.map +1 -1
  108. package/src/routes/duplicate-one/duplicate-one-gateway.interface.d.ts +2 -2
  109. package/src/routes/duplicate-one/duplicate-one-gateway.mixin.d.ts +1 -1
  110. package/src/routes/duplicate-one/duplicate-one-gateway.mixin.js +23 -6
  111. package/src/routes/duplicate-one/duplicate-one-gateway.mixin.js.map +1 -1
  112. package/src/routes/duplicate-one/duplicate-one.helper.d.ts +3 -3
  113. package/src/routes/duplicate-one/duplicate-one.helper.js +12 -8
  114. package/src/routes/duplicate-one/duplicate-one.helper.js.map +1 -1
  115. package/src/routes/duplicate-one/duplicate-one.module.js +4 -3
  116. package/src/routes/duplicate-one/duplicate-one.module.js.map +1 -1
  117. package/src/routes/get-many/get-many-controller.interface.d.ts +2 -2
  118. package/src/routes/get-many/get-many-controller.mixin.d.ts +1 -1
  119. package/src/routes/get-many/get-many-controller.mixin.js +25 -11
  120. package/src/routes/get-many/get-many-controller.mixin.js.map +1 -1
  121. package/src/routes/get-many/get-many-gateway.interface.d.ts +2 -2
  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 +23 -7
  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 +3 -3
  126. package/src/routes/get-many/get-many.helper.js +12 -8
  127. package/src/routes/get-many/get-many.helper.js.map +1 -1
  128. package/src/routes/get-many/get-many.module.js +4 -3
  129. package/src/routes/get-many/get-many.module.js.map +1 -1
  130. package/src/routes/get-one/get-one-controller.interface.d.ts +2 -2
  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 +17 -7
  133. package/src/routes/get-one/get-one-controller.mixin.js.map +1 -1
  134. package/src/routes/get-one/get-one-gateway.interface.d.ts +2 -2
  135. package/src/routes/get-one/get-one-gateway.mixin.d.ts +1 -1
  136. package/src/routes/get-one/get-one-gateway.mixin.js +15 -6
  137. package/src/routes/get-one/get-one-gateway.mixin.js.map +1 -1
  138. package/src/routes/get-one/get-one.helper.d.ts +3 -3
  139. package/src/routes/get-one/get-one.helper.js +12 -8
  140. package/src/routes/get-one/get-one.helper.js.map +1 -1
  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.interface.d.ts +2 -2
  144. package/src/routes/replace-one/replace-one-controller.mixin.d.ts +1 -1
  145. package/src/routes/replace-one/replace-one-controller.mixin.js +28 -11
  146. package/src/routes/replace-one/replace-one-controller.mixin.js.map +1 -1
  147. package/src/routes/replace-one/replace-one-gateway.interface.d.ts +2 -2
  148. package/src/routes/replace-one/replace-one-gateway.mixin.d.ts +1 -1
  149. package/src/routes/replace-one/replace-one-gateway.mixin.js +23 -7
  150. package/src/routes/replace-one/replace-one-gateway.mixin.js.map +1 -1
  151. package/src/routes/replace-one/replace-one.helper.d.ts +3 -3
  152. package/src/routes/replace-one/replace-one.helper.js +12 -8
  153. package/src/routes/replace-one/replace-one.helper.js.map +1 -1
  154. package/src/routes/replace-one/replace-one.module.js +4 -3
  155. package/src/routes/replace-one/replace-one.module.js.map +1 -1
  156. package/src/routes/update-many/update-many-controller.interface.d.ts +2 -2
  157. package/src/routes/update-many/update-many-controller.mixin.d.ts +1 -1
  158. package/src/routes/update-many/update-many-controller.mixin.js +30 -10
  159. package/src/routes/update-many/update-many-controller.mixin.js.map +1 -1
  160. package/src/routes/update-many/update-many-gateway.interface.d.ts +2 -2
  161. package/src/routes/update-many/update-many-gateway.mixin.d.ts +1 -1
  162. package/src/routes/update-many/update-many-gateway.mixin.js +24 -7
  163. package/src/routes/update-many/update-many-gateway.mixin.js.map +1 -1
  164. package/src/routes/update-many/update-many.helper.d.ts +3 -3
  165. package/src/routes/update-many/update-many.helper.js +12 -8
  166. package/src/routes/update-many/update-many.helper.js.map +1 -1
  167. package/src/routes/update-many/update-many.module.js +4 -3
  168. package/src/routes/update-many/update-many.module.js.map +1 -1
  169. package/src/routes/update-one/update-one-controller.interface.d.ts +2 -2
  170. package/src/routes/update-one/update-one-controller.mixin.d.ts +1 -1
  171. package/src/routes/update-one/update-one-controller.mixin.js +32 -11
  172. package/src/routes/update-one/update-one-controller.mixin.js.map +1 -1
  173. package/src/routes/update-one/update-one-gateway.interface.d.ts +2 -2
  174. package/src/routes/update-one/update-one-gateway.mixin.d.ts +1 -1
  175. package/src/routes/update-one/update-one-gateway.mixin.js +23 -7
  176. package/src/routes/update-one/update-one-gateway.mixin.js.map +1 -1
  177. package/src/routes/update-one/update-one.helper.d.ts +3 -3
  178. package/src/routes/update-one/update-one.helper.js +12 -8
  179. package/src/routes/update-one/update-one.helper.js.map +1 -1
  180. package/src/routes/update-one/update-one.module.js +4 -3
  181. package/src/routes/update-one/update-one.module.js.map +1 -1
  182. package/src/services/base/base.service.js +5 -4
  183. package/src/services/base/base.service.js.map +1 -1
  184. package/src/version.json +1 -1
  185. package/tsconfig.tsbuildinfo +1 -1
  186. package/src/helpers/controller-mixin.helper.d.ts +0 -42
  187. package/src/helpers/controller-mixin.helper.js +0 -132
  188. package/src/helpers/controller-mixin.helper.js.map +0 -1
  189. package/src/routes/create-many/create-many-body-dto.mixin.d.ts +0 -7
  190. package/src/routes/create-many/create-many-body-dto.mixin.js.map +0 -1
@@ -14,17 +14,31 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.UpdateManyControllerMixin = void 0;
16
16
  const common_1 = require("@nestjs/common");
17
+ const lodash_1 = require("lodash");
17
18
  const builders_1 = require("../../builders");
18
19
  const helpers_1 = require("../../helpers");
19
20
  const mixins_1 = require("../../mixins");
20
- function UpdateManyControllerMixin(entity, controllerOptions, routeConfig, version) {
21
- var _a;
22
- const { routeType, description, isPublic, RouteBody, RoutePresenter, abilityPredicate, } = (0, helpers_1.getControllerMixinData)(entity, controllerOptions, routeConfig, version);
23
- const routeDecoratorsBuilder = new builders_1.RouteDecoratorsBuilder(routeType, entity, version, description, isPublic, {
24
- body: RouteBody,
25
- presenter: RoutePresenter,
21
+ function UpdateManyControllerMixin(entity, controllerOptions, { dTOs, ...routeConfig }, version) {
22
+ const { routeType, displayedName, description, isPublic, abilityPredicate, } = (0, helpers_1.getMixinData)(entity, controllerOptions, routeConfig);
23
+ class UpdateManyBody extends (dTOs?.body ?? (0, mixins_1.EntityBodyMixin)(entity, true)) {
24
+ }
25
+ Object.defineProperty(UpdateManyBody, 'name', {
26
+ value: `UpdateMany${displayedName}${(0, helpers_1.addVersionSuffix)(version)}Dto`,
27
+ writable: false,
28
+ });
29
+ class UpdateManyPresenter extends (dTOs?.presenter ?? (0, mixins_1.EntityPresenterMixin)(entity)) {
30
+ }
31
+ Object.defineProperty(UpdateManyPresenter, 'name', {
32
+ value: dTOs?.presenter
33
+ ? `UpdateMany${displayedName}${(0, helpers_1.addVersionSuffix)(version)}Presenter`
34
+ : `${displayedName}${(0, helpers_1.addVersionSuffix)(version)}Presenter`,
35
+ writable: false,
36
+ });
37
+ const routeDecoratorsBuilder = new builders_1.RouteDecoratorsBuilder(routeType, entity, routeConfig.subPath, version, description, isPublic, {
38
+ body: UpdateManyBody,
39
+ presenter: UpdateManyPresenter,
26
40
  });
27
- class UpdateManyPoliciesGuard extends (0, mixins_1.CreatePoliciesGuardMixin)(entity, routeType, version, abilityPredicate) {
41
+ class UpdateManyPoliciesGuard extends (0, mixins_1.CreatePoliciesGuardMixin)(entity, routeType, displayedName, version, abilityPredicate) {
28
42
  }
29
43
  class BaseUpdateManyController {
30
44
  constructor(service) {
@@ -32,7 +46,13 @@ function UpdateManyControllerMixin(entity, controllerOptions, routeConfig, versi
32
46
  this.entity = entity;
33
47
  }
34
48
  async updateMany(ids, body) {
35
- return this.service.updateMany(ids, body);
49
+ if ((0, lodash_1.isEmpty)(body)) {
50
+ throw new Error('Invalid request body');
51
+ }
52
+ const toEntity = UpdateManyBody.toEntity;
53
+ const list = await this.service.updateMany(ids, toEntity ? toEntity(body) : body);
54
+ const fromEntities = UpdateManyPresenter.fromEntities;
55
+ return fromEntities ? fromEntities(list) : list;
36
56
  }
37
57
  }
38
58
  __decorate([
@@ -41,11 +61,11 @@ function UpdateManyControllerMixin(entity, controllerOptions, routeConfig, versi
41
61
  __param(0, (0, common_1.Query)('ids')),
42
62
  __param(1, (0, common_1.Body)()),
43
63
  __metadata("design:type", Function),
44
- __metadata("design:paramtypes", [Array, typeof (_a = typeof RouteBody !== "undefined" && RouteBody) === "function" ? _a : Object]),
64
+ __metadata("design:paramtypes", [Array, UpdateManyBody]),
45
65
  __metadata("design:returntype", Promise)
46
66
  ], BaseUpdateManyController.prototype, "updateMany", null);
47
67
  Object.defineProperty(BaseUpdateManyController, 'name', {
48
- value: `Base${(0, helpers_1.provideName)('UpdateMany', entity.name, version, 'Controller')}`,
68
+ value: `Base${(0, helpers_1.provideName)('UpdateMany', displayedName, version, 'Controller')}`,
49
69
  writable: false,
50
70
  });
51
71
  return BaseUpdateManyController;
@@ -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,6CAAwD;AACxD,2CAA2F;AAE3F,yCAAwD;AAKxD,SAAS,yBAAyB,CAChC,MAAoB,EACpB,iBAAsD,EACtD,WAA0C,EAC1C,OAAgB;;IAEhB,MAAM,EACJ,SAAS,EACT,WAAW,EACX,QAAQ,EACR,SAAS,EACT,cAAc,EACd,gBAAgB,GACjB,GAAG,IAAA,gCAAsB,EACxB,MAAM,EACN,iBAAiB,EACjB,WAAW,EACX,OAAO,CACR,CAAC;IAEF,MAAM,sBAAsB,GAAG,IAAI,iCAAsB,CACvD,SAAS,EACT,MAAM,EACN,OAAO,EACP,WAAW,EACX,QAAQ,EACR;QACE,IAAI,EAAE,SAAS;QACf,SAAS,EAAE,cAAc;KAC1B,CACF,CAAC;IAEF,MAAM,uBAAwB,SAAQ,IAAA,iCAAwB,EAC5D,MAAM,EACN,SAAS,EACT,OAAO,EACP,gBAAgB,CACjB;KAAG;IAEJ,MAAM,wBAAwB;QAG5B,YAA+B,OAAkC;YAAlC,YAAO,GAAP,OAAO,CAA2B;YAF9C,WAAM,GAAG,MAAM,CAAC;QAGnC,CAAC;QAKK,AAAN,KAAK,CAAC,UAAU,CAAe,GAAa,EAAU,IAAe;YACnE,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,IAAW,CAAC,CAAC;QACnD,CAAC;KACF;IAHO;QAHL,IAAA,+BAAqB,EAAC,sBAAsB,CAAC;QAC7C,IAAA,kBAAS,EAAC,uBAAuB,CAAC;QAEjB,WAAA,IAAA,cAAK,EAAC,KAAK,CAAC,CAAA;QAAiB,WAAA,IAAA,aAAI,GAAE,CAAA;;oEAAO,SAAS,oBAAT,SAAS;;8DAEpE;IAGH,MAAM,CAAC,cAAc,CAAC,wBAAwB,EAAE,MAAM,EAAE;QACtD,KAAK,EAAE,OAAO,IAAA,qBAAW,EAAC,YAAY,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE;QAC7E,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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"}
@@ -3,8 +3,8 @@ import { ManyEntityQuery } from '../../dtos';
3
3
  import { ExtendedSocket, GatewayResponse } from '../../interfaces';
4
4
  import { BaseEntity } from '../../models';
5
5
  import { UpdateManyService } from './update-many-service.interface';
6
- interface UpdateManyGateway<Entity extends BaseEntity> {
7
- updateMany(socket: ExtendedSocket, body: ManyEntityQuery & Partial<Entity>): GatewayResponse<Entity[]>;
6
+ interface UpdateManyGateway<Entity extends BaseEntity, Data = any, Response = any> {
7
+ updateMany(socket: ExtendedSocket, body: ManyEntityQuery & Data): GatewayResponse<(Entity | Response)[]>;
8
8
  }
9
9
  type UpdateManyGatewayConstructor<Entity extends BaseEntity> = new (service: UpdateManyService<Entity>, jwtService: JwtService) => UpdateManyGateway<Entity>;
10
10
  export type { UpdateManyGateway, UpdateManyGatewayConstructor };
@@ -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>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string): UpdateManyGatewayConstructor<Entity>;
5
+ declare function UpdateManyGatewayMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): UpdateManyGatewayConstructor<Entity>;
6
6
  export { UpdateManyGatewayMixin };
@@ -19,9 +19,23 @@ const lodash_1 = require("lodash");
19
19
  const dynamic_api_ws_exception_filter_1 = require("../../filters/ws-exception/dynamic-api-ws-exception.filter");
20
20
  const gateways_1 = require("../../gateways");
21
21
  const helpers_1 = require("../../helpers");
22
- function UpdateManyGatewayMixin(entity, controllerOptions, routeConfig, version) {
23
- const { routeType, isPublic, } = (0, helpers_1.getControllerMixinData)(entity, controllerOptions, routeConfig, version);
24
- const event = routeConfig.eventName ?? (0, lodash_1.kebabCase)(`${controllerOptions.path}/${routeType}`);
22
+ const mixins_1 = require("../../mixins");
23
+ function UpdateManyGatewayMixin(entity, controllerOptions, { dTOs, ...routeConfig }, version) {
24
+ const { routeType, displayedName, isPublic, event, } = (0, helpers_1.getMixinData)(entity, controllerOptions, routeConfig, true);
25
+ class UpdateManyData extends (dTOs?.body ?? (0, mixins_1.EntityBodyMixin)(entity, true)) {
26
+ }
27
+ Object.defineProperty(UpdateManyData, 'name', {
28
+ value: `UpdateMany${displayedName}${(0, helpers_1.addVersionSuffix)(version)}Data`,
29
+ writable: false,
30
+ });
31
+ class UpdateManyResponse extends (dTOs?.presenter ?? (0, mixins_1.EntityPresenterMixin)(entity)) {
32
+ }
33
+ Object.defineProperty(UpdateManyResponse, 'name', {
34
+ value: dTOs?.presenter
35
+ ? `UpdateMany${displayedName}${(0, helpers_1.addVersionSuffix)(version)}Response`
36
+ : `${displayedName}${(0, helpers_1.addVersionSuffix)(version)}Response`,
37
+ writable: false,
38
+ });
25
39
  class BaseUpdateManyGateway extends gateways_1.BaseGateway {
26
40
  constructor(service, jwtService) {
27
41
  super(jwtService);
@@ -34,13 +48,16 @@ function UpdateManyGatewayMixin(entity, controllerOptions, routeConfig, version)
34
48
  throw new websockets_1.WsException('Invalid request body');
35
49
  }
36
50
  this.addUserToSocket(socket, isPublic);
37
- const { ids, ...partialEntity } = body;
38
- if ((0, lodash_1.isEmpty)(partialEntity)) {
51
+ const { ids, ...data } = body;
52
+ if ((0, lodash_1.isEmpty)(data)) {
39
53
  throw new websockets_1.WsException('Invalid request body');
40
54
  }
55
+ const toEntity = UpdateManyData.toEntity;
56
+ const list = await this.service.updateMany(ids, toEntity ? toEntity(data) : data);
57
+ const fromEntities = UpdateManyResponse.fromEntities;
41
58
  return {
42
59
  event,
43
- data: await this.service.updateMany(ids, partialEntity),
60
+ data: fromEntities ? fromEntities(list) : list,
44
61
  };
45
62
  }
46
63
  }
@@ -54,7 +71,7 @@ function UpdateManyGatewayMixin(entity, controllerOptions, routeConfig, version)
54
71
  __metadata("design:returntype", Promise)
55
72
  ], BaseUpdateManyGateway.prototype, "updateMany", null);
56
73
  Object.defineProperty(BaseUpdateManyGateway, 'name', {
57
- value: `Base${(0, helpers_1.provideName)(routeType, entity.name, version, 'Gateway')}`,
74
+ value: `Base${(0, helpers_1.provideName)(routeType, displayedName, version, 'Gateway')}`,
58
75
  writable: false,
59
76
  });
60
77
  return BaseUpdateManyGateway;
@@ -1 +1 @@
1
- {"version":3,"file":"update-many-gateway.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/update-many/update-many-gateway.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAkD;AAElD,mDAAiG;AACjG,mCAA4C;AAE5C,gHAAyG;AACzG,6CAA6C;AAC7C,2CAAoE;AAMpE,SAAS,sBAAsB,CAC7B,MAAoB,EACpB,iBAAsD,EACtD,WAA0C,EAC1C,OAAgB;IAEhB,MAAM,EACJ,SAAS,EACT,QAAQ,GACT,GAAG,IAAA,gCAAsB,EACxB,MAAM,EACN,iBAAiB,EACjB,WAAW,EACX,OAAO,CACR,CAAC;IAEF,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS,IAAI,IAAA,kBAAS,EAAC,GAAG,iBAAiB,CAAC,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC;IAE3F,MAAM,qBAAsB,SAAQ,sBAAmB;QAGrD,YACqB,OAAkC,EAClC,UAAsB;YAEzC,KAAK,CAAC,UAAU,CAAC,CAAC;YAHC,YAAO,GAAP,OAAO,CAA2B;YAClC,eAAU,GAAV,UAAU,CAAY;YAJxB,WAAM,GAAG,MAAM,CAAC;QAOnC,CAAC;QAIK,AAAN,KAAK,CAAC,UAAU,CACK,MAA8B,EAClC,IAAuC;YAEtD,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChC,MAAM,IAAI,wBAAW,CAAC,sBAAsB,CAAC,CAAC;YAChD,CAAC;YAED,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAEvC,MAAM,EAAE,GAAG,EAAE,GAAG,aAAa,EAAE,GAAG,IAAI,CAAC;YAEvC,IAAI,IAAA,gBAAO,EAAC,aAAa,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,wBAAW,CAAC,sBAAsB,CAAC,CAAC;YAChD,CAAC;YAED,OAAO;gBACL,KAAK;gBACL,IAAI,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,aAA2C,CAAC;aACtF,CAAC;QACJ,CAAC;KACF;IArBO;QAFL,IAAA,mBAAU,EAAC,IAAI,6DAA2B,EAAE,CAAC;QAC7C,IAAA,6BAAgB,EAAC,KAAK,CAAC;QAErB,WAAA,IAAA,4BAAe,GAAE,CAAA;QACjB,WAAA,IAAA,wBAAW,GAAE,CAAA;;;;2DAkBf;IAGH,MAAM,CAAC,cAAc,CAAC,qBAAqB,EAAE,MAAM,EAAE;QACnD,KAAK,EAAE,OAAO,IAAA,qBAAW,EAAC,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE;QACvE,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAEQ,wDAAsB"}
1
+ {"version":3,"file":"update-many-gateway.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/update-many/update-many-gateway.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAkD;AAElD,mDAAiG;AACjG,mCAAiC;AAEjC,gHAAyG;AACzG,6CAA6C;AAC7C,2CAA4E;AAE5E,yCAAqE;AAKrE,SAAS,sBAAsB,CAC7B,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,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,MAAM;QACnE,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,MAAM,kBAAmB,SAAQ,CAC/B,IAAI,EAAE,SAAS,IAAI,IAAA,6BAAoB,EAAC,MAAM,CAAC,CAChD;KAAG;IAEJ,MAAM,CAAC,cAAc,CAAC,kBAAkB,EAAE,MAAM,EAAE;QAChD,KAAK,EAAE,IAAI,EAAE,SAAS;YACpB,CAAC,CAAC,aAAa,aAAa,GAAG,IAAA,0BAAgB,EAAC,OAAO,CAAC,UAAU;YAClE,CAAC,CAAC,GAAG,aAAa,GAAG,IAAA,0BAAgB,EAAC,OAAO,CAAC,UAAU;QAC1D,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,MAAM,qBAAsB,SAAQ,sBAAmB;QAGrD,YACqB,OAAkC,EAClC,UAAsB;YAEzC,KAAK,CAAC,UAAU,CAAC,CAAC;YAHC,YAAO,GAAP,OAAO,CAA2B;YAClC,eAAU,GAAV,UAAU,CAAY;YAJxB,WAAM,GAAG,MAAM,CAAC;QAOnC,CAAC;QAIK,AAAN,KAAK,CAAC,UAAU,CACK,MAA8B,EAClC,IAAsC;YAErD,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChC,MAAM,IAAI,wBAAW,CAAC,sBAAsB,CAAC,CAAC;YAChD,CAAC;YAED,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAEvC,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;YAE9B,IAAI,IAAA,gBAAO,EAAC,IAAI,CAAC,EAAE,CAAC;gBAClB,MAAM,IAAI,wBAAW,CAAC,sBAAsB,CAAC,CAAC;YAChD,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,kBACD,CAAC,YAAY,CAAC;YAEf,OAAO;gBACL,KAAK;gBACL,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,YAAY,CAAqB,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;aACnE,CAAC;QACJ,CAAC;KACF;IA/BO;QAFL,IAAA,mBAAU,EAAC,IAAI,6DAA2B,EAAE,CAAC;QAC7C,IAAA,6BAAgB,EAAC,KAAK,CAAC;QAErB,WAAA,IAAA,4BAAe,GAAE,CAAA;QACjB,WAAA,IAAA,wBAAW,GAAE,CAAA;;;;2DA4Bf;IAGH,MAAM,CAAC,cAAc,CAAC,qBAAqB,EAAE,MAAM,EAAE;QACnD,KAAK,EAAE,OAAO,IAAA,qBAAW,EAAC,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE;QACzE,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAEQ,wDAAsB"}
@@ -3,7 +3,7 @@ import { DynamicApiControllerOptions, DynamicAPIRouteConfig, DynamicApiServiceCa
3
3
  import { BaseEntity } from '../../models';
4
4
  import { UpdateManyControllerConstructor } from './update-many-controller.interface';
5
5
  import { UpdateManyGatewayConstructor } from './update-many-gateway.interface';
6
- declare function createUpdateManyServiceProvider<Entity extends BaseEntity>(entity: Type<Entity>, version: string | undefined, callback: DynamicApiServiceCallback<Entity> | undefined): DynamicAPIServiceProvider;
7
- declare function createUpdateManyController<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions): UpdateManyControllerConstructor<Entity>;
8
- declare function createUpdateManyGateway<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions, gatewayOptions?: GatewayOptions): UpdateManyGatewayConstructor<Entity>;
6
+ declare function createUpdateManyServiceProvider<Entity extends BaseEntity>(entity: Type<Entity>, displayedName: string, version: string | undefined, callback: DynamicApiServiceCallback<Entity> | undefined): DynamicAPIServiceProvider;
7
+ declare function createUpdateManyController<Entity extends BaseEntity>(entity: Type<Entity>, displayedName: string, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions): UpdateManyControllerConstructor<Entity>;
8
+ declare function createUpdateManyGateway<Entity extends BaseEntity>(entity: Type<Entity>, displayedName: string, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions, gatewayOptions?: GatewayOptions): UpdateManyGatewayConstructor<Entity>;
9
9
  export { createUpdateManyController, createUpdateManyGateway, createUpdateManyServiceProvider };
@@ -25,7 +25,7 @@ const helpers_1 = require("../../helpers");
25
25
  const base_update_many_service_1 = require("./base-update-many.service");
26
26
  const update_many_controller_mixin_1 = require("./update-many-controller.mixin");
27
27
  const update_many_gateway_mixin_1 = require("./update-many-gateway.mixin");
28
- function createUpdateManyServiceProvider(entity, version, callback) {
28
+ function createUpdateManyServiceProvider(entity, displayedName, version, callback) {
29
29
  let UpdateManyService = class UpdateManyService extends base_update_many_service_1.BaseUpdateManyService {
30
30
  constructor(model) {
31
31
  super(model);
@@ -39,16 +39,16 @@ function createUpdateManyServiceProvider(entity, version, callback) {
39
39
  __metadata("design:paramtypes", [mongoose_2.Model])
40
40
  ], UpdateManyService);
41
41
  Object.defineProperty(UpdateManyService, 'name', {
42
- value: (0, helpers_1.provideName)('UpdateMany', entity.name, version, 'Service'),
42
+ value: (0, helpers_1.provideName)('UpdateMany', displayedName, version, 'Service'),
43
43
  writable: false,
44
44
  });
45
45
  return {
46
- provide: (0, helpers_1.provideName)('UpdateMany', entity.name, version, 'Service'),
46
+ provide: (0, helpers_1.provideName)('UpdateMany', displayedName, version, 'Service'),
47
47
  useClass: UpdateManyService,
48
48
  };
49
49
  }
50
50
  exports.createUpdateManyServiceProvider = createUpdateManyServiceProvider;
51
- function createUpdateManyController(entity, controllerOptions, routeConfig, version, validationPipeOptions) {
51
+ function createUpdateManyController(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions) {
52
52
  const { path, apiTag } = controllerOptions;
53
53
  let UpdateManyController = class UpdateManyController extends (0, update_many_controller_mixin_1.UpdateManyControllerMixin)(entity, controllerOptions, routeConfig, version) {
54
54
  constructor(service) {
@@ -61,17 +61,17 @@ function createUpdateManyController(entity, controllerOptions, routeConfig, vers
61
61
  (0, swagger_1.ApiTags)(apiTag || entity.name),
62
62
  (0, decorators_1.ValidatorPipe)(validationPipeOptions),
63
63
  (0, common_1.UseInterceptors)(common_1.ClassSerializerInterceptor),
64
- __param(0, (0, common_1.Inject)((0, helpers_1.provideName)('UpdateMany', entity.name, version, 'Service'))),
64
+ __param(0, (0, common_1.Inject)((0, helpers_1.provideName)('UpdateMany', displayedName, version, 'Service'))),
65
65
  __metadata("design:paramtypes", [Object])
66
66
  ], UpdateManyController);
67
67
  Object.defineProperty(UpdateManyController, 'name', {
68
- value: `${(0, helpers_1.provideName)('UpdateMany', entity.name, version, 'Controller')}`,
68
+ value: `${(0, helpers_1.provideName)('UpdateMany', displayedName, version, 'Controller')}`,
69
69
  writable: false,
70
70
  });
71
71
  return UpdateManyController;
72
72
  }
73
73
  exports.createUpdateManyController = createUpdateManyController;
74
- function createUpdateManyGateway(entity, controllerOptions, routeConfig, version, validationPipeOptions, gatewayOptions = {}) {
74
+ function createUpdateManyGateway(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions, gatewayOptions = {}) {
75
75
  let UpdateManyGateway = class UpdateManyGateway extends (0, update_many_gateway_mixin_1.UpdateManyGatewayMixin)(entity, controllerOptions, routeConfig, version) {
76
76
  constructor(service, jwtService) {
77
77
  super(service, jwtService);
@@ -82,9 +82,13 @@ function createUpdateManyGateway(entity, controllerOptions, routeConfig, version
82
82
  UpdateManyGateway = __decorate([
83
83
  (0, websockets_1.WebSocketGateway)(gatewayOptions),
84
84
  (0, decorators_1.ValidatorPipe)(validationPipeOptions),
85
- __param(0, (0, common_1.Inject)((0, helpers_1.provideName)(routeConfig.type, entity.name, version, 'Service'))),
85
+ __param(0, (0, common_1.Inject)((0, helpers_1.provideName)(routeConfig.type, displayedName, version, 'Service'))),
86
86
  __metadata("design:paramtypes", [Object, jwt_1.JwtService])
87
87
  ], UpdateManyGateway);
88
+ Object.defineProperty(UpdateManyGateway, 'name', {
89
+ value: `${(0, helpers_1.provideName)(routeConfig.type, displayedName, version, 'Gateway')}`,
90
+ writable: false,
91
+ });
88
92
  return UpdateManyGateway;
89
93
  }
90
94
  exports.createUpdateManyGateway = createUpdateManyGateway;
@@ -1 +1 @@
1
- {"version":3,"file":"update-many.helper.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/update-many/update-many.helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update-many.helper.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/update-many/update-many.helper.ts"],"names":[],"mappings":"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"}
@@ -14,8 +14,9 @@ const helpers_1 = require("../../helpers");
14
14
  const update_many_helper_1 = require("./update-many.helper");
15
15
  let UpdateManyModule = UpdateManyModule_1 = class UpdateManyModule {
16
16
  static forFeature(databaseModule, entity, controllerOptions, routeConfig, version, validationPipeOptions, webSocket) {
17
- const controller = (0, update_many_helper_1.createUpdateManyController)(entity, controllerOptions, routeConfig, version, validationPipeOptions);
18
- const ServiceProvider = (0, update_many_helper_1.createUpdateManyServiceProvider)(entity, version, routeConfig.callback);
17
+ const displayedName = (0, helpers_1.getDisplayedName)(controllerOptions.apiTag, entity.name, routeConfig.subPath);
18
+ const controller = (0, update_many_helper_1.createUpdateManyController)(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions);
19
+ const ServiceProvider = (0, update_many_helper_1.createUpdateManyServiceProvider)(entity, displayedName, version, routeConfig.callback);
19
20
  const gatewayOptions = webSocket
20
21
  ? (0, helpers_1.initializeConfigFromOptions)(webSocket)
21
22
  : dynamic_api_module_1.DynamicApiModule.state.get('gatewayOptions');
@@ -26,7 +27,7 @@ let UpdateManyModule = UpdateManyModule_1 = class UpdateManyModule {
26
27
  providers: [
27
28
  ServiceProvider,
28
29
  ...(gatewayOptions ? [
29
- (0, update_many_helper_1.createUpdateManyGateway)(entity, controllerOptions, routeConfig, version, validationPipeOptions, gatewayOptions)
30
+ (0, update_many_helper_1.createUpdateManyGateway)(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions, gatewayOptions)
30
31
  ] : []),
31
32
  ],
32
33
  };
@@ -1 +1 @@
1
- {"version":3,"file":"update-many.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/update-many/update-many.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAoF;AAEpF,iEAA4D;AAC5D,2CAA4D;AAG5D,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,UAAU,GAAG,IAAA,+CAA0B,EAC3C,MAAM,EACN,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,CACtB,CAAC;QACF,MAAM,eAAe,GAAG,IAAA,oDAA+B,EAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE/F,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,iBAAiB,EACjB,WAAW,EACX,OAAO,EACP,qBAAqB,EACrB,cAAc,CACf;iBACF,CAAC,CAAC,CAAC,EAAE,CACP;aACF;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AA5CY,4CAAgB;2BAAhB,gBAAgB;IAD5B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,gBAAgB,CA4C5B"}
1
+ {"version":3,"file":"update-many.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/update-many/update-many.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,7 +1,7 @@
1
1
  import { BaseEntity } from '../../models';
2
2
  import { UpdateOneService } from './update-one-service.interface';
3
- interface UpdateOneController<Entity extends BaseEntity> {
4
- updateOne(id: string, partial: Partial<Entity>): Promise<Entity | undefined>;
3
+ interface UpdateOneController<Entity extends BaseEntity, Body = any, Response = any> {
4
+ updateOne(id: string, partial: Body): Promise<Entity | Response>;
5
5
  }
6
6
  type UpdateOneControllerConstructor<Entity extends BaseEntity> = new (service: UpdateOneService<Entity>) => UpdateOneController<Entity>;
7
7
  export type { UpdateOneController, UpdateOneControllerConstructor };
@@ -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 { UpdateOneControllerConstructor } from './update-one-controller.interface';
5
- declare function UpdateOneControllerMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string): UpdateOneControllerConstructor<Entity>;
5
+ declare function UpdateOneControllerMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): UpdateOneControllerConstructor<Entity>;
6
6
  export { UpdateOneControllerMixin };
@@ -14,18 +14,33 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.UpdateOneControllerMixin = void 0;
16
16
  const common_1 = require("@nestjs/common");
17
+ const lodash_1 = require("lodash");
17
18
  const builders_1 = require("../../builders");
19
+ const dtos_1 = require("../../dtos");
18
20
  const helpers_1 = require("../../helpers");
19
21
  const mixins_1 = require("../../mixins");
20
- function UpdateOneControllerMixin(entity, controllerOptions, routeConfig, version) {
21
- var _a;
22
- const { routeType, description, isPublic, EntityParam, RouteBody, RoutePresenter, abilityPredicate, } = (0, helpers_1.getControllerMixinData)(entity, controllerOptions, routeConfig, version);
23
- const routeDecoratorsBuilder = new builders_1.RouteDecoratorsBuilder(routeType, entity, version, description, isPublic, {
24
- param: EntityParam,
25
- body: RouteBody,
26
- presenter: RoutePresenter,
22
+ function UpdateOneControllerMixin(entity, controllerOptions, { dTOs, ...routeConfig }, version) {
23
+ const { routeType, displayedName, description, isPublic, abilityPredicate, } = (0, helpers_1.getMixinData)(entity, controllerOptions, routeConfig);
24
+ class UpdateOneBody extends (dTOs?.body ?? (0, mixins_1.EntityBodyMixin)(entity, true)) {
25
+ }
26
+ Object.defineProperty(UpdateOneBody, 'name', {
27
+ value: `UpdateOne${displayedName}${(0, helpers_1.addVersionSuffix)(version)}Dto`,
28
+ writable: false,
29
+ });
30
+ class UpdateOnePresenter extends (dTOs?.presenter ?? (0, mixins_1.EntityPresenterMixin)(entity)) {
31
+ }
32
+ Object.defineProperty(UpdateOnePresenter, 'name', {
33
+ value: dTOs?.presenter
34
+ ? `UpdateOne${displayedName}${(0, helpers_1.addVersionSuffix)(version)}Presenter`
35
+ : `${displayedName}${(0, helpers_1.addVersionSuffix)(version)}Presenter`,
36
+ writable: false,
37
+ });
38
+ const routeDecoratorsBuilder = new builders_1.RouteDecoratorsBuilder(routeType, entity, routeConfig.subPath, version, description, isPublic, {
39
+ param: dtos_1.EntityParam,
40
+ body: UpdateOneBody,
41
+ presenter: UpdateOnePresenter,
27
42
  });
28
- class UpdateOnePoliciesGuard extends (0, mixins_1.CreatePoliciesGuardMixin)(entity, routeType, version, abilityPredicate) {
43
+ class UpdateOnePoliciesGuard extends (0, mixins_1.CreatePoliciesGuardMixin)(entity, routeType, displayedName, version, abilityPredicate) {
29
44
  }
30
45
  class BaseUpdateOneController {
31
46
  constructor(service) {
@@ -33,7 +48,13 @@ function UpdateOneControllerMixin(entity, controllerOptions, routeConfig, versio
33
48
  this.entity = entity;
34
49
  }
35
50
  async updateOne(id, body) {
36
- return this.service.updateOne(id, body);
51
+ if ((0, lodash_1.isEmpty)(body)) {
52
+ throw new Error('Invalid request body');
53
+ }
54
+ const toEntity = UpdateOneBody.toEntity;
55
+ const entity = await this.service.updateOne(id, toEntity ? toEntity(body) : body);
56
+ const fromEntity = UpdateOnePresenter.fromEntity;
57
+ return fromEntity ? fromEntity(entity) : entity;
37
58
  }
38
59
  }
39
60
  __decorate([
@@ -42,11 +63,11 @@ function UpdateOneControllerMixin(entity, controllerOptions, routeConfig, versio
42
63
  __param(0, (0, common_1.Param)('id')),
43
64
  __param(1, (0, common_1.Body)()),
44
65
  __metadata("design:type", Function),
45
- __metadata("design:paramtypes", [String, typeof (_a = typeof RouteBody !== "undefined" && RouteBody) === "function" ? _a : Object]),
66
+ __metadata("design:paramtypes", [String, UpdateOneBody]),
46
67
  __metadata("design:returntype", Promise)
47
68
  ], BaseUpdateOneController.prototype, "updateOne", null);
48
69
  Object.defineProperty(BaseUpdateOneController, 'name', {
49
- value: `Base${(0, helpers_1.provideName)('UpdateOne', entity.name, version, 'Controller')}`,
70
+ value: `Base${(0, helpers_1.provideName)('UpdateOne', displayedName, version, 'Controller')}`,
50
71
  writable: false,
51
72
  });
52
73
  return BaseUpdateOneController;
@@ -1 +1 @@
1
- {"version":3,"file":"update-one-controller.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/update-one/update-one-controller.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA8D;AAC9D,6CAAwD;AACxD,2CAA2F;AAE3F,yCAAwD;AAKxD,SAAS,wBAAwB,CAC/B,MAAoB,EACpB,iBAAsD,EACtD,WAA0C,EAC1C,OAAgB;;IAEhB,MAAM,EACJ,SAAS,EACT,WAAW,EACX,QAAQ,EACR,WAAW,EACX,SAAS,EACT,cAAc,EACd,gBAAgB,GACjB,GAAG,IAAA,gCAAsB,EACxB,MAAM,EACN,iBAAiB,EACjB,WAAW,EACX,OAAO,CACR,CAAC;IAEF,MAAM,sBAAsB,GAAG,IAAI,iCAAsB,CACvD,SAAS,EACT,MAAM,EACN,OAAO,EACP,WAAW,EACX,QAAQ,EACR;QACE,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,SAAS;QACf,SAAS,EAAE,cAAc;KAC1B,CACF,CAAC;IAEF,MAAM,sBAAuB,SAAQ,IAAA,iCAAwB,EAC3D,MAAM,EACN,SAAS,EACT,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,EAAU,IAAe;YAC9D,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,IAAW,CAAC,CAAC;QACjD,CAAC;KACF;IAHO;QAHL,IAAA,+BAAqB,EAAC,sBAAsB,CAAC;QAC7C,IAAA,kBAAS,EAAC,sBAAsB,CAAC;QAEjB,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;QAAc,WAAA,IAAA,aAAI,GAAE,CAAA;;qEAAO,SAAS,oBAAT,SAAS;;4DAE/D;IAGH,MAAM,CAAC,cAAc,CAAC,uBAAuB,EAAE,MAAM,EAAE;QACrD,KAAK,EAAE,OAAO,IAAA,qBAAW,EAAC,WAAW,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE;QAC5E,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,uBAAuB,CAAC;AACjC,CAAC;AAEQ,4DAAwB"}
1
+ {"version":3,"file":"update-one-controller.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/update-one/update-one-controller.mixin.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,8 @@ import { EntityParam } from '../../dtos';
3
3
  import { ExtendedSocket, GatewayResponse } from '../../interfaces';
4
4
  import { BaseEntity } from '../../models';
5
5
  import { UpdateOneService } from './update-one-service.interface';
6
- interface UpdateOneGateway<Entity extends BaseEntity> {
7
- updateOne(socket: ExtendedSocket, body: EntityParam & Partial<Entity>): GatewayResponse<Entity | undefined>;
6
+ interface UpdateOneGateway<Entity extends BaseEntity, Data = any, Response = any> {
7
+ updateOne(socket: ExtendedSocket, body: EntityParam & Data): GatewayResponse<Entity | Response>;
8
8
  }
9
9
  type UpdateOneGatewayConstructor<Entity extends BaseEntity> = new (service: UpdateOneService<Entity>, jwtService: JwtService) => UpdateOneGateway<Entity>;
10
10
  export type { UpdateOneGateway, UpdateOneGatewayConstructor };
@@ -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 { UpdateOneGatewayConstructor } from './update-one-gateway.interface';
5
- declare function UpdateOneGatewayMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string): UpdateOneGatewayConstructor<Entity>;
5
+ declare function UpdateOneGatewayMixin<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, { dTOs, ...routeConfig }: DynamicAPIRouteConfig<Entity>, version?: string): UpdateOneGatewayConstructor<Entity>;
6
6
  export { UpdateOneGatewayMixin };
@@ -15,13 +15,26 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.UpdateOneGatewayMixin = void 0;
16
16
  const common_1 = require("@nestjs/common");
17
17
  const websockets_1 = require("@nestjs/websockets");
18
- const lodash_1 = require("lodash");
19
18
  const dynamic_api_ws_exception_filter_1 = require("../../filters/ws-exception/dynamic-api-ws-exception.filter");
20
19
  const gateways_1 = require("../../gateways");
21
20
  const helpers_1 = require("../../helpers");
22
- function UpdateOneGatewayMixin(entity, controllerOptions, routeConfig, version) {
23
- const { routeType, isPublic, } = (0, helpers_1.getControllerMixinData)(entity, controllerOptions, routeConfig, version);
24
- const event = routeConfig.eventName ?? (0, lodash_1.kebabCase)(`${controllerOptions.path}/${routeType}`);
21
+ const mixins_1 = require("../../mixins");
22
+ function UpdateOneGatewayMixin(entity, controllerOptions, { dTOs, ...routeConfig }, version) {
23
+ const { routeType, displayedName, isPublic, event, } = (0, helpers_1.getMixinData)(entity, controllerOptions, routeConfig, true);
24
+ class UpdateOneData extends (dTOs?.body ?? (0, mixins_1.EntityBodyMixin)(entity, true)) {
25
+ }
26
+ Object.defineProperty(UpdateOneData, 'name', {
27
+ value: `UpdateOne${displayedName}${(0, helpers_1.addVersionSuffix)(version)}Data`,
28
+ writable: false,
29
+ });
30
+ class UpdateOneResponse extends (dTOs?.presenter ?? (0, mixins_1.EntityPresenterMixin)(entity)) {
31
+ }
32
+ Object.defineProperty(UpdateOneResponse, 'name', {
33
+ value: dTOs?.presenter
34
+ ? `UpdateOne${displayedName}${(0, helpers_1.addVersionSuffix)(version)}Response`
35
+ : `${displayedName}${(0, helpers_1.addVersionSuffix)(version)}Response`,
36
+ writable: false,
37
+ });
25
38
  class BaseUpdateOneGateway extends gateways_1.BaseGateway {
26
39
  constructor(service, jwtService) {
27
40
  super(jwtService);
@@ -34,10 +47,13 @@ function UpdateOneGatewayMixin(entity, controllerOptions, routeConfig, version)
34
47
  throw new websockets_1.WsException('Invalid request body');
35
48
  }
36
49
  this.addUserToSocket(socket, isPublic);
37
- const { id, ...partialEntity } = body;
50
+ const { id, ...data } = body;
51
+ const toEntity = UpdateOneData.toEntity;
52
+ const entity = await this.service.updateOne(id, toEntity ? toEntity(data) : data);
53
+ const fromEntity = UpdateOneResponse.fromEntity;
38
54
  return {
39
55
  event,
40
- data: await this.service.updateOne(id, partialEntity),
56
+ data: fromEntity ? fromEntity(entity) : entity,
41
57
  };
42
58
  }
43
59
  }
@@ -51,7 +67,7 @@ function UpdateOneGatewayMixin(entity, controllerOptions, routeConfig, version)
51
67
  __metadata("design:returntype", Promise)
52
68
  ], BaseUpdateOneGateway.prototype, "updateOne", null);
53
69
  Object.defineProperty(BaseUpdateOneGateway, 'name', {
54
- value: `Base${(0, helpers_1.provideName)(routeType, entity.name, version, 'Gateway')}`,
70
+ value: `Base${(0, helpers_1.provideName)(routeType, displayedName, version, 'Gateway')}`,
55
71
  writable: false,
56
72
  });
57
73
  return BaseUpdateOneGateway;
@@ -1 +1 @@
1
- {"version":3,"file":"update-one-gateway.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/update-one/update-one-gateway.mixin.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAkD;AAElD,mDAAiG;AACjG,mCAAmC;AAEnC,gHAAyG;AACzG,6CAA6C;AAC7C,2CAAoE;AAMpE,SAAS,qBAAqB,CAC5B,MAAoB,EACpB,iBAAsD,EACtD,WAA0C,EAC1C,OAAgB;IAEhB,MAAM,EACJ,SAAS,EACT,QAAQ,GACT,GAAG,IAAA,gCAAsB,EACxB,MAAM,EACN,iBAAiB,EACjB,WAAW,EACX,OAAO,CACR,CAAC;IAEF,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS,IAAI,IAAA,kBAAS,EAAC,GAAG,iBAAiB,CAAC,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC;IAE3F,MAAM,oBAAqB,SAAQ,sBAAmB;QAGpD,YACqB,OAAiC,EACjC,UAAsB;YAEzC,KAAK,CAAC,UAAU,CAAC,CAAC;YAHC,YAAO,GAAP,OAAO,CAA0B;YACjC,eAAU,GAAV,UAAU,CAAY;YAJxB,WAAM,GAAG,MAAM,CAAC;QAOnC,CAAC;QAIK,AAAN,KAAK,CAAC,SAAS,CACM,MAA8B,EAClC,IAAmC;YAElD,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAChD,MAAM,IAAI,wBAAW,CAAC,sBAAsB,CAAC,CAAC;YAChD,CAAC;YAED,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAEvC,MAAM,EAAE,EAAE,EAAE,GAAG,aAAa,EAAE,GAAG,IAAI,CAAC;YAEtC,OAAO;gBACL,KAAK;gBACL,IAAI,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,aAA2C,CAAC;aACpF,CAAC;QACJ,CAAC;KACF;IAjBO;QAFL,IAAA,mBAAU,EAAC,IAAI,6DAA2B,EAAE,CAAC;QAC7C,IAAA,6BAAgB,EAAC,KAAK,CAAC;QAErB,WAAA,IAAA,4BAAe,GAAE,CAAA;QACjB,WAAA,IAAA,wBAAW,GAAE,CAAA;;;;yDAcf;IAGH,MAAM,CAAC,cAAc,CAAC,oBAAoB,EAAE,MAAM,EAAE;QAClD,KAAK,EAAE,OAAO,IAAA,qBAAW,EAAC,SAAS,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE;QACvE,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IAEH,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAEQ,sDAAqB"}
1
+ {"version":3,"file":"update-one-gateway.mixin.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/update-one/update-one-gateway.mixin.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { DynamicApiControllerOptions, DynamicAPIRouteConfig, DynamicApiServiceCa
3
3
  import { BaseEntity } from '../../models';
4
4
  import { UpdateOneControllerConstructor } from './update-one-controller.interface';
5
5
  import { UpdateOneGatewayConstructor } from './update-one-gateway.interface';
6
- declare function createUpdateOneServiceProvider<Entity extends BaseEntity>(entity: Type<Entity>, version: string | undefined, callback: DynamicApiServiceCallback<Entity> | undefined): DynamicAPIServiceProvider;
7
- declare function createUpdateOneController<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions): UpdateOneControllerConstructor<Entity>;
8
- declare function createUpdateOneGateway<Entity extends BaseEntity>(entity: Type<Entity>, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions, gatewayOptions?: GatewayOptions): UpdateOneGatewayConstructor<Entity>;
6
+ declare function createUpdateOneServiceProvider<Entity extends BaseEntity>(entity: Type<Entity>, displayedName: string, version: string | undefined, callback: DynamicApiServiceCallback<Entity> | undefined): DynamicAPIServiceProvider;
7
+ declare function createUpdateOneController<Entity extends BaseEntity>(entity: Type<Entity>, displayedName: string, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions): UpdateOneControllerConstructor<Entity>;
8
+ declare function createUpdateOneGateway<Entity extends BaseEntity>(entity: Type<Entity>, displayedName: string, controllerOptions: DynamicApiControllerOptions<Entity>, routeConfig: DynamicAPIRouteConfig<Entity>, version?: string, validationPipeOptions?: ValidationPipeOptions, gatewayOptions?: GatewayOptions): UpdateOneGatewayConstructor<Entity>;
9
9
  export { createUpdateOneController, createUpdateOneGateway, createUpdateOneServiceProvider };
@@ -25,7 +25,7 @@ const helpers_1 = require("../../helpers");
25
25
  const base_update_one_service_1 = require("./base-update-one.service");
26
26
  const update_one_controller_mixin_1 = require("./update-one-controller.mixin");
27
27
  const update_one_gateway_mixin_1 = require("./update-one-gateway.mixin");
28
- function createUpdateOneServiceProvider(entity, version, callback) {
28
+ function createUpdateOneServiceProvider(entity, displayedName, version, callback) {
29
29
  let UpdateOneService = class UpdateOneService extends base_update_one_service_1.BaseUpdateOneService {
30
30
  constructor(model) {
31
31
  super(model);
@@ -39,16 +39,16 @@ function createUpdateOneServiceProvider(entity, version, callback) {
39
39
  __metadata("design:paramtypes", [mongoose_2.Model])
40
40
  ], UpdateOneService);
41
41
  Object.defineProperty(UpdateOneService, 'name', {
42
- value: (0, helpers_1.provideName)('UpdateOne', entity.name, version, 'Service'),
42
+ value: (0, helpers_1.provideName)('UpdateOne', displayedName, version, 'Service'),
43
43
  writable: false,
44
44
  });
45
45
  return {
46
- provide: (0, helpers_1.provideName)('UpdateOne', entity.name, version, 'Service'),
46
+ provide: (0, helpers_1.provideName)('UpdateOne', displayedName, version, 'Service'),
47
47
  useClass: UpdateOneService,
48
48
  };
49
49
  }
50
50
  exports.createUpdateOneServiceProvider = createUpdateOneServiceProvider;
51
- function createUpdateOneController(entity, controllerOptions, routeConfig, version, validationPipeOptions) {
51
+ function createUpdateOneController(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions) {
52
52
  const { path, apiTag } = controllerOptions;
53
53
  let UpdateOneController = class UpdateOneController extends (0, update_one_controller_mixin_1.UpdateOneControllerMixin)(entity, controllerOptions, routeConfig, version) {
54
54
  constructor(service) {
@@ -61,17 +61,17 @@ function createUpdateOneController(entity, controllerOptions, routeConfig, versi
61
61
  (0, swagger_1.ApiTags)(apiTag || entity.name),
62
62
  (0, decorators_1.ValidatorPipe)(validationPipeOptions),
63
63
  (0, common_1.UseInterceptors)(common_1.ClassSerializerInterceptor),
64
- __param(0, (0, common_1.Inject)((0, helpers_1.provideName)('UpdateOne', entity.name, version, 'Service'))),
64
+ __param(0, (0, common_1.Inject)((0, helpers_1.provideName)('UpdateOne', displayedName, version, 'Service'))),
65
65
  __metadata("design:paramtypes", [Object])
66
66
  ], UpdateOneController);
67
67
  Object.defineProperty(UpdateOneController, 'name', {
68
- value: `${(0, helpers_1.provideName)('UpdateOne', entity.name, version, 'Controller')}`,
68
+ value: `${(0, helpers_1.provideName)('UpdateOne', displayedName, version, 'Controller')}`,
69
69
  writable: false,
70
70
  });
71
71
  return UpdateOneController;
72
72
  }
73
73
  exports.createUpdateOneController = createUpdateOneController;
74
- function createUpdateOneGateway(entity, controllerOptions, routeConfig, version, validationPipeOptions, gatewayOptions = {}) {
74
+ function createUpdateOneGateway(entity, displayedName, controllerOptions, routeConfig, version, validationPipeOptions, gatewayOptions = {}) {
75
75
  let UpdateOneGateway = class UpdateOneGateway extends (0, update_one_gateway_mixin_1.UpdateOneGatewayMixin)(entity, controllerOptions, routeConfig, version) {
76
76
  constructor(service, jwtService) {
77
77
  super(service, jwtService);
@@ -82,9 +82,13 @@ function createUpdateOneGateway(entity, controllerOptions, routeConfig, version,
82
82
  UpdateOneGateway = __decorate([
83
83
  (0, websockets_1.WebSocketGateway)(gatewayOptions),
84
84
  (0, decorators_1.ValidatorPipe)(validationPipeOptions),
85
- __param(0, (0, common_1.Inject)((0, helpers_1.provideName)(routeConfig.type, entity.name, version, 'Service'))),
85
+ __param(0, (0, common_1.Inject)((0, helpers_1.provideName)(routeConfig.type, displayedName, version, 'Service'))),
86
86
  __metadata("design:paramtypes", [Object, jwt_1.JwtService])
87
87
  ], UpdateOneGateway);
88
+ Object.defineProperty(UpdateOneGateway, 'name', {
89
+ value: `${(0, helpers_1.provideName)(routeConfig.type, displayedName, version, 'Gateway')}`,
90
+ writable: false,
91
+ });
88
92
  return UpdateOneGateway;
89
93
  }
90
94
  exports.createUpdateOneGateway = createUpdateOneGateway;
@@ -1 +1 @@
1
- {"version":3,"file":"update-one.helper.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/update-one/update-one.helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update-one.helper.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/routes/update-one/update-one.helper.ts"],"names":[],"mappings":"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"}