yegara 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (211) hide show
  1. package/dist/db/index.d.ts +1 -0
  2. package/dist/db/index.js +18 -0
  3. package/dist/db/index.js.map +1 -0
  4. package/dist/db/typeorm/audit.entity.d.ts +5 -0
  5. package/dist/db/typeorm/audit.entity.js +32 -0
  6. package/dist/db/typeorm/audit.entity.js.map +1 -0
  7. package/dist/db/typeorm/index.d.ts +3 -0
  8. package/dist/db/typeorm/index.js +20 -0
  9. package/dist/db/typeorm/index.js.map +1 -0
  10. package/dist/db/typeorm/typeorm.config.d.ts +5 -0
  11. package/dist/db/typeorm/typeorm.config.js +27 -0
  12. package/dist/db/typeorm/typeorm.config.js.map +1 -0
  13. package/dist/db/typeorm/typeorm.service.d.ts +8 -0
  14. package/dist/db/typeorm/typeorm.service.js +30 -0
  15. package/dist/db/typeorm/typeorm.service.js.map +1 -0
  16. package/dist/dtos/index.d.ts +1 -0
  17. package/dist/dtos/index.js +18 -0
  18. package/dist/dtos/index.js.map +1 -0
  19. package/dist/dtos/language.dto.d.ts +4 -0
  20. package/dist/dtos/language.dto.js +36 -0
  21. package/dist/dtos/language.dto.js.map +1 -0
  22. package/dist/generics/controllers/extra-crud.controller.d.ts +28 -0
  23. package/dist/generics/controllers/extra-crud.controller.js +86 -0
  24. package/dist/generics/controllers/extra-crud.controller.js.map +1 -0
  25. package/dist/generics/controllers/index.d.ts +2 -0
  26. package/dist/generics/controllers/index.js +19 -0
  27. package/dist/generics/controllers/index.js.map +1 -0
  28. package/dist/generics/controllers/relation-crud.controller.d.ts +23 -0
  29. package/dist/generics/controllers/relation-crud.controller.js +69 -0
  30. package/dist/generics/controllers/relation-crud.controller.js.map +1 -0
  31. package/dist/generics/controllers/schema-crud.controller.d.ts +28 -0
  32. package/dist/generics/controllers/schema-crud.controller.js +85 -0
  33. package/dist/generics/controllers/schema-crud.controller.js.map +1 -0
  34. package/dist/generics/drizzle/controllers/extra-crud.controller.d.ts +28 -0
  35. package/dist/generics/drizzle/controllers/extra-crud.controller.js +86 -0
  36. package/dist/generics/drizzle/controllers/extra-crud.controller.js.map +1 -0
  37. package/dist/generics/drizzle/controllers/index.d.ts +2 -0
  38. package/dist/generics/drizzle/controllers/index.js +19 -0
  39. package/dist/generics/drizzle/controllers/index.js.map +1 -0
  40. package/dist/generics/drizzle/controllers/relation-crud.controller.d.ts +23 -0
  41. package/dist/generics/drizzle/controllers/relation-crud.controller.js +69 -0
  42. package/dist/generics/drizzle/controllers/relation-crud.controller.js.map +1 -0
  43. package/dist/generics/drizzle/controllers/schema-crud.controller.d.ts +28 -0
  44. package/dist/generics/drizzle/controllers/schema-crud.controller.js +85 -0
  45. package/dist/generics/drizzle/controllers/schema-crud.controller.js.map +1 -0
  46. package/dist/generics/drizzle/index.d.ts +2 -0
  47. package/dist/generics/drizzle/index.js +19 -0
  48. package/dist/generics/drizzle/index.js.map +1 -0
  49. package/dist/generics/drizzle/services/extra-crud.service.d.ts +22 -0
  50. package/dist/generics/drizzle/services/extra-crud.service.js +51 -0
  51. package/dist/generics/drizzle/services/extra-crud.service.js.map +1 -0
  52. package/dist/generics/drizzle/services/index.d.ts +2 -0
  53. package/dist/generics/drizzle/services/index.js +19 -0
  54. package/dist/generics/drizzle/services/index.js.map +1 -0
  55. package/dist/generics/drizzle/services/relation-crud.service.d.ts +28 -0
  56. package/dist/generics/drizzle/services/relation-crud.service.js +90 -0
  57. package/dist/generics/drizzle/services/relation-crud.service.js.map +1 -0
  58. package/dist/generics/drizzle/services/schema-crud.service.d.ts +21 -0
  59. package/dist/generics/drizzle/services/schema-crud.service.js +48 -0
  60. package/dist/generics/drizzle/services/schema-crud.service.js.map +1 -0
  61. package/dist/generics/dtos/index.d.ts +1 -0
  62. package/dist/generics/dtos/index.js +18 -0
  63. package/dist/generics/dtos/index.js.map +1 -0
  64. package/dist/generics/dtos/relation-crud.dto.d.ts +8 -0
  65. package/dist/generics/dtos/relation-crud.dto.js +43 -0
  66. package/dist/generics/dtos/relation-crud.dto.js.map +1 -0
  67. package/dist/generics/exceptions/global-filter-exceptions.d.ts +5 -0
  68. package/dist/generics/exceptions/global-filter-exceptions.js +44 -0
  69. package/dist/generics/exceptions/global-filter-exceptions.js.map +1 -0
  70. package/dist/generics/exceptions/index.d.ts +1 -0
  71. package/dist/generics/exceptions/index.js +18 -0
  72. package/dist/generics/exceptions/index.js.map +1 -0
  73. package/dist/generics/index.d.ts +5 -0
  74. package/dist/generics/index.js +22 -0
  75. package/dist/generics/index.js.map +1 -0
  76. package/dist/generics/schemas/audit.schema.d.ts +5 -0
  77. package/dist/generics/schemas/audit.schema.js +10 -0
  78. package/dist/generics/schemas/audit.schema.js.map +1 -0
  79. package/dist/generics/schemas/index.d.ts +1 -0
  80. package/dist/generics/schemas/index.js +18 -0
  81. package/dist/generics/schemas/index.js.map +1 -0
  82. package/dist/generics/services/extra-crud.service.d.ts +22 -0
  83. package/dist/generics/services/extra-crud.service.js +51 -0
  84. package/dist/generics/services/extra-crud.service.js.map +1 -0
  85. package/dist/generics/services/index.d.ts +2 -0
  86. package/dist/generics/services/index.js +19 -0
  87. package/dist/generics/services/index.js.map +1 -0
  88. package/dist/generics/services/relation-crud.service.d.ts +28 -0
  89. package/dist/generics/services/relation-crud.service.js +90 -0
  90. package/dist/generics/services/relation-crud.service.js.map +1 -0
  91. package/dist/generics/services/schema-crud.service.d.ts +21 -0
  92. package/dist/generics/services/schema-crud.service.js +48 -0
  93. package/dist/generics/services/schema-crud.service.js.map +1 -0
  94. package/dist/generics/typeorm/controllers/entity-crud.controller.d.ts +22 -0
  95. package/dist/generics/typeorm/controllers/entity-crud.controller.js +85 -0
  96. package/dist/generics/typeorm/controllers/entity-crud.controller.js.map +1 -0
  97. package/dist/generics/typeorm/controllers/extra-crud.controller.d.ts +22 -0
  98. package/dist/generics/typeorm/controllers/extra-crud.controller.js +86 -0
  99. package/dist/generics/typeorm/controllers/extra-crud.controller.js.map +1 -0
  100. package/dist/generics/typeorm/controllers/index.d.ts +3 -0
  101. package/dist/generics/typeorm/controllers/index.js +20 -0
  102. package/dist/generics/typeorm/controllers/index.js.map +1 -0
  103. package/dist/generics/typeorm/controllers/relation-crud.controller.d.ts +23 -0
  104. package/dist/generics/typeorm/controllers/relation-crud.controller.js +74 -0
  105. package/dist/generics/typeorm/controllers/relation-crud.controller.js.map +1 -0
  106. package/dist/generics/typeorm/index.d.ts +2 -0
  107. package/dist/generics/typeorm/index.js +19 -0
  108. package/dist/generics/typeorm/index.js.map +1 -0
  109. package/dist/generics/typeorm/services/entity-crud.service.d.ts +13 -0
  110. package/dist/generics/typeorm/services/entity-crud.service.js +50 -0
  111. package/dist/generics/typeorm/services/entity-crud.service.js.map +1 -0
  112. package/dist/generics/typeorm/services/extra-crud.service.d.ts +14 -0
  113. package/dist/generics/typeorm/services/extra-crud.service.js +55 -0
  114. package/dist/generics/typeorm/services/extra-crud.service.js.map +1 -0
  115. package/dist/generics/typeorm/services/index.d.ts +3 -0
  116. package/dist/generics/typeorm/services/index.js +20 -0
  117. package/dist/generics/typeorm/services/index.js.map +1 -0
  118. package/dist/generics/typeorm/services/relation-crud.service.d.ts +26 -0
  119. package/dist/generics/typeorm/services/relation-crud.service.js +98 -0
  120. package/dist/generics/typeorm/services/relation-crud.service.js.map +1 -0
  121. package/dist/index.d.ts +4 -0
  122. package/dist/index.js +21 -0
  123. package/dist/index.js.map +1 -0
  124. package/dist/modules/auth/auth.module.d.ts +2 -0
  125. package/dist/modules/auth/auth.module.js +48 -0
  126. package/dist/modules/auth/auth.module.js.map +1 -0
  127. package/dist/modules/auth/decorators/current-user.decorator.d.ts +1 -0
  128. package/dist/modules/auth/decorators/current-user.decorator.js +9 -0
  129. package/dist/modules/auth/decorators/current-user.decorator.js.map +1 -0
  130. package/dist/modules/auth/decorators/index.d.ts +2 -0
  131. package/dist/modules/auth/decorators/index.js +19 -0
  132. package/dist/modules/auth/decorators/index.js.map +1 -0
  133. package/dist/modules/auth/decorators/public.decorator.d.ts +2 -0
  134. package/dist/modules/auth/decorators/public.decorator.js +8 -0
  135. package/dist/modules/auth/decorators/public.decorator.js.map +1 -0
  136. package/dist/modules/auth/dtos/index.d.ts +0 -0
  137. package/dist/modules/auth/dtos/index.js +1 -0
  138. package/dist/modules/auth/dtos/index.js.map +1 -0
  139. package/dist/modules/auth/guards/index.d.ts +1 -0
  140. package/dist/modules/auth/guards/index.js +18 -0
  141. package/dist/modules/auth/guards/index.js.map +1 -0
  142. package/dist/modules/auth/guards/jwt.guard.d.ts +11 -0
  143. package/dist/modules/auth/guards/jwt.guard.js +51 -0
  144. package/dist/modules/auth/guards/jwt.guard.js.map +1 -0
  145. package/dist/modules/auth/index.d.ts +4 -0
  146. package/dist/modules/auth/index.js +21 -0
  147. package/dist/modules/auth/index.js.map +1 -0
  148. package/dist/modules/auth/services/auth.helper.d.ts +13 -0
  149. package/dist/modules/auth/services/auth.helper.js +137 -0
  150. package/dist/modules/auth/services/auth.helper.js.map +1 -0
  151. package/dist/modules/auth/services/index.d.ts +2 -0
  152. package/dist/modules/auth/services/index.js +19 -0
  153. package/dist/modules/auth/services/index.js.map +1 -0
  154. package/dist/modules/auth/services/jwt-strategy.service.d.ts +7 -0
  155. package/dist/modules/auth/services/jwt-strategy.service.js +33 -0
  156. package/dist/modules/auth/services/jwt-strategy.service.js.map +1 -0
  157. package/dist/modules/index.d.ts +1 -0
  158. package/dist/modules/index.js +18 -0
  159. package/dist/modules/index.js.map +1 -0
  160. package/dist/tsconfig.tsbuildinfo +1 -0
  161. package/dist/yegara.module.d.ts +2 -0
  162. package/dist/yegara.module.js +24 -0
  163. package/dist/yegara.module.js.map +1 -0
  164. package/package.json +59 -0
  165. package/src/db/index.ts +1 -0
  166. package/src/db/typeorm/audit.entity.ts +13 -0
  167. package/src/db/typeorm/index.ts +3 -0
  168. package/src/db/typeorm/typeorm.config.ts +29 -0
  169. package/src/db/typeorm/typeorm.service.ts +18 -0
  170. package/src/dtos/index.ts +1 -0
  171. package/src/dtos/language.dto.ts +20 -0
  172. package/src/generics/drizzle/controllers/extra-crud.controller.ts +62 -0
  173. package/src/generics/drizzle/controllers/index.ts +2 -0
  174. package/src/generics/drizzle/controllers/relation-crud.controller.ts +39 -0
  175. package/src/generics/drizzle/controllers/schema-crud.controller.ts +60 -0
  176. package/src/generics/drizzle/index.ts +2 -0
  177. package/src/generics/drizzle/services/extra-crud.service.ts +44 -0
  178. package/src/generics/drizzle/services/index.ts +2 -0
  179. package/src/generics/drizzle/services/relation-crud.service.ts +97 -0
  180. package/src/generics/drizzle/services/schema-crud.service.ts +39 -0
  181. package/src/generics/dtos/index.ts +1 -0
  182. package/src/generics/dtos/relation-crud.dto.ts +24 -0
  183. package/src/generics/exceptions/global-filter-exceptions.ts +42 -0
  184. package/src/generics/exceptions/index.ts +1 -0
  185. package/src/generics/index.ts +5 -0
  186. package/src/generics/schemas/audit.schema.ts +7 -0
  187. package/src/generics/schemas/index.ts +1 -0
  188. package/src/generics/typeorm/controllers/entity-crud.controller.ts +60 -0
  189. package/src/generics/typeorm/controllers/extra-crud.controller.ts +62 -0
  190. package/src/generics/typeorm/controllers/index.ts +3 -0
  191. package/src/generics/typeorm/controllers/relation-crud.controller.ts +46 -0
  192. package/src/generics/typeorm/index.ts +2 -0
  193. package/src/generics/typeorm/services/entity-crud.service.ts +39 -0
  194. package/src/generics/typeorm/services/extra-crud.service.ts +45 -0
  195. package/src/generics/typeorm/services/index.ts +3 -0
  196. package/src/generics/typeorm/services/relation-crud.service.ts +90 -0
  197. package/src/index.ts +4 -0
  198. package/src/modules/auth/auth.module.ts +35 -0
  199. package/src/modules/auth/decorators/current-user.decorator.ts +8 -0
  200. package/src/modules/auth/decorators/index.ts +2 -0
  201. package/src/modules/auth/decorators/public.decorator.ts +4 -0
  202. package/src/modules/auth/dtos/index.ts +0 -0
  203. package/src/modules/auth/guards/index.ts +1 -0
  204. package/src/modules/auth/guards/jwt.guard.ts +45 -0
  205. package/src/modules/auth/index.ts +4 -0
  206. package/src/modules/auth/services/auth.helper.ts +146 -0
  207. package/src/modules/auth/services/index.ts +2 -0
  208. package/src/modules/auth/services/jwt-strategy.service.ts +18 -0
  209. package/src/modules/index.ts +1 -0
  210. package/src/yegara.module.ts +11 -0
  211. package/tsconfig.json +25 -0
@@ -0,0 +1,28 @@
1
+ import { DExtraCrudService } from "../services/extra-crud.service";
2
+ export type ExtraCrudOptions = {
3
+ createDto?: {
4
+ new (): NonNullable<unknown>;
5
+ };
6
+ updateDto?: {
7
+ new (): NonNullable<unknown>;
8
+ };
9
+ };
10
+ export declare function DExtraCrudController(options?: ExtraCrudOptions): {
11
+ new (schemaCrudService: DExtraCrudService): {
12
+ readonly schemaCrudService: DExtraCrudService;
13
+ findAll(parentId: string): Promise<{
14
+ count: number;
15
+ items: {
16
+ [x: string]: any;
17
+ }[];
18
+ }>;
19
+ findOne(id: string): Promise<{
20
+ [x: string]: any;
21
+ }[]>;
22
+ create(itemData: any): Promise<{
23
+ [x: string]: any;
24
+ }[]>;
25
+ update(id: string, itemData: any): Promise<import("pg").QueryResult<never>>;
26
+ delete(id: string): Promise<import("pg").QueryResult<never>>;
27
+ };
28
+ };
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.DExtraCrudController = DExtraCrudController;
16
+ const common_1 = require("@nestjs/common");
17
+ const swagger_1 = require("@nestjs/swagger");
18
+ const extra_crud_service_1 = require("../services/extra-crud.service");
19
+ function DExtraCrudController(options) {
20
+ let ExtraCrudControllerHost = class ExtraCrudControllerHost {
21
+ constructor(schemaCrudService) {
22
+ this.schemaCrudService = schemaCrudService;
23
+ }
24
+ async findAll(parentId) {
25
+ return await this.schemaCrudService.findAll(parentId);
26
+ }
27
+ async findOne(id) {
28
+ return await this.schemaCrudService.findOne(id);
29
+ }
30
+ async create(itemData) {
31
+ return await this.schemaCrudService.create(itemData);
32
+ }
33
+ async update(id, itemData) {
34
+ return await this.schemaCrudService.update(id, itemData);
35
+ }
36
+ async delete(id) {
37
+ return await this.schemaCrudService.delete(id);
38
+ }
39
+ };
40
+ __decorate([
41
+ (0, common_1.Get)('/list/:parentId'),
42
+ __param(0, (0, common_1.Param)('parentId')),
43
+ __metadata("design:type", Function),
44
+ __metadata("design:paramtypes", [String]),
45
+ __metadata("design:returntype", Promise)
46
+ ], ExtraCrudControllerHost.prototype, "findAll", null);
47
+ __decorate([
48
+ (0, common_1.Get)('/:id'),
49
+ __param(0, (0, common_1.Param)('id')),
50
+ __metadata("design:type", Function),
51
+ __metadata("design:paramtypes", [String]),
52
+ __metadata("design:returntype", Promise)
53
+ ], ExtraCrudControllerHost.prototype, "findOne", null);
54
+ __decorate([
55
+ (0, common_1.Post)(),
56
+ (0, swagger_1.ApiBody)({ type: options === null || options === void 0 ? void 0 : options.createDto }),
57
+ __param(0, (0, common_1.Body)()),
58
+ __metadata("design:type", Function),
59
+ __metadata("design:paramtypes", [Object]),
60
+ __metadata("design:returntype", Promise)
61
+ ], ExtraCrudControllerHost.prototype, "create", null);
62
+ __decorate([
63
+ (0, common_1.Put)('/:id'),
64
+ (0, swagger_1.ApiBody)({ type: options === null || options === void 0 ? void 0 : options.updateDto }),
65
+ __param(0, (0, common_1.Param)('id')),
66
+ __param(1, (0, common_1.Body)()),
67
+ __metadata("design:type", Function),
68
+ __metadata("design:paramtypes", [String, Object]),
69
+ __metadata("design:returntype", Promise)
70
+ ], ExtraCrudControllerHost.prototype, "update", null);
71
+ __decorate([
72
+ (0, common_1.Delete)('/:id'),
73
+ __param(0, (0, common_1.Param)('id')),
74
+ __metadata("design:type", Function),
75
+ __metadata("design:paramtypes", [String]),
76
+ __metadata("design:returntype", Promise)
77
+ ], ExtraCrudControllerHost.prototype, "delete", null);
78
+ ExtraCrudControllerHost = __decorate([
79
+ (0, common_1.Controller)(),
80
+ (0, common_1.UseInterceptors)(),
81
+ (0, swagger_1.ApiBearerAuth)(),
82
+ __metadata("design:paramtypes", [extra_crud_service_1.DExtraCrudService])
83
+ ], ExtraCrudControllerHost);
84
+ return ExtraCrudControllerHost;
85
+ }
86
+ //# sourceMappingURL=extra-crud.controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extra-crud.controller.js","sourceRoot":"","sources":["../../../../src/generics/drizzle/controllers/extra-crud.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAUA,oDAmDC;AA7DD,2CAAkG;AAClG,6CAAyD;AACzD,uEAAmE;AAQnE,SAAgB,oBAAoB,CAChC,OAA0B;IAE1B,IAGM,uBAAuB,GAH7B,MAGM,uBAAuB;QACzB,YACoB,iBAAoC;YAApC,sBAAiB,GAAjB,iBAAiB,CAAmB;QAExD,CAAC;QAGK,AAAN,KAAK,CAAC,OAAO,CACU,QAAgB;YAEnC,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QACzD,CAAC;QAGK,AAAN,KAAK,CAAC,OAAO,CACI,EAAU;YAEvB,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QACnD,CAAC;QAIK,AAAN,KAAK,CAAC,MAAM,CACA,QAAa;YAErB,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QACxD,CAAC;QAIK,AAAN,KAAK,CAAC,MAAM,CACK,EAAU,EACf,QAAa;YAErB,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QAC5D,CAAC;QAGK,AAAN,KAAK,CAAC,MAAM,CACK,EAAU;YAEvB,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAClD,CAAC;KACJ,CAAA;IApCS;QADL,IAAA,YAAG,EAAC,iBAAiB,CAAC;QAElB,WAAA,IAAA,cAAK,EAAC,UAAU,CAAC,CAAA;;;;0DAGrB;IAGK;QADL,IAAA,YAAG,EAAC,MAAM,CAAC;QAEP,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;0DAGf;IAIK;QAFL,IAAA,aAAI,GAAE;QACN,IAAA,iBAAO,EAAC,EAAE,IAAI,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,EAAE,CAAC;QAEjC,WAAA,IAAA,aAAI,GAAE,CAAA;;;;yDAGV;IAIK;QAFL,IAAA,YAAG,EAAC,MAAM,CAAC;QACX,IAAA,iBAAO,EAAC,EAAE,IAAI,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,EAAE,CAAC;QAEjC,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;QACX,WAAA,IAAA,aAAI,GAAE,CAAA;;;;yDAGV;IAGK;QADL,IAAA,eAAM,EAAC,MAAM,CAAC;QAEV,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;yDAGf;IA1CC,uBAAuB;QAH5B,IAAA,mBAAU,GAAE;QACZ,IAAA,wBAAe,GAAgC;QAC/C,IAAA,uBAAa,GAAE;yCAG2B,sCAAiB;OAFtD,uBAAuB,CA2C5B;IACD,OAAO,uBAAuB,CAAA;AAClC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './extra-crud.controller';
2
+ export * from './extra-crud.controller';
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./extra-crud.controller"), exports);
18
+ __exportStar(require("./extra-crud.controller"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/generics/drizzle/controllers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAuC;AACvC,0DAAuC"}
@@ -0,0 +1,23 @@
1
+ import { DRelationCrudService } from "../services/relation-crud.service";
2
+ import { AssignSecondForFirstDTO, AssignFirstForSecondDTO } from "../../dtos/relation-crud.dto";
3
+ export declare class DRelationCrudController {
4
+ private readonly schemaCrudService;
5
+ constructor(schemaCrudService: DRelationCrudService);
6
+ givenFirst(id: string): Promise<{
7
+ count: number;
8
+ items: {}[];
9
+ }>;
10
+ givenSecond(id: string): Promise<{
11
+ count: number;
12
+ items: {}[];
13
+ }>;
14
+ assignSecond(itemData: AssignFirstForSecondDTO): Promise<{
15
+ count: number;
16
+ items: {
17
+ [x: string]: any;
18
+ }[];
19
+ }>;
20
+ assignFirst(itemData: AssignSecondForFirstDTO): Promise<{
21
+ [x: string]: any;
22
+ }[]>;
23
+ }
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.DRelationCrudController = void 0;
16
+ const common_1 = require("@nestjs/common");
17
+ const relation_crud_service_1 = require("../services/relation-crud.service");
18
+ const relation_crud_dto_1 = require("../../dtos/relation-crud.dto");
19
+ let DRelationCrudController = class DRelationCrudController {
20
+ constructor(schemaCrudService) {
21
+ this.schemaCrudService = schemaCrudService;
22
+ }
23
+ async givenFirst(id) {
24
+ return await this.schemaCrudService.givenFirst(id);
25
+ }
26
+ async givenSecond(id) {
27
+ return await this.schemaCrudService.givenSecond(id);
28
+ }
29
+ async assignSecond(itemData) {
30
+ return await this.schemaCrudService.assignFirstsForSecond(itemData.secondId, itemData.firstIds);
31
+ }
32
+ async assignFirst(itemData) {
33
+ return await this.schemaCrudService.assignSecondsForFirst(itemData.firstId, itemData.secondIds);
34
+ }
35
+ };
36
+ exports.DRelationCrudController = DRelationCrudController;
37
+ __decorate([
38
+ (0, common_1.Get)('/given-first/:id'),
39
+ __param(0, (0, common_1.Param)('id')),
40
+ __metadata("design:type", Function),
41
+ __metadata("design:paramtypes", [String]),
42
+ __metadata("design:returntype", Promise)
43
+ ], DRelationCrudController.prototype, "givenFirst", null);
44
+ __decorate([
45
+ (0, common_1.Get)('/given-second/:id'),
46
+ __param(0, (0, common_1.Param)('id')),
47
+ __metadata("design:type", Function),
48
+ __metadata("design:paramtypes", [String]),
49
+ __metadata("design:returntype", Promise)
50
+ ], DRelationCrudController.prototype, "givenSecond", null);
51
+ __decorate([
52
+ (0, common_1.Post)('assign-firsts-for-second'),
53
+ __param(0, (0, common_1.Body)()),
54
+ __metadata("design:type", Function),
55
+ __metadata("design:paramtypes", [relation_crud_dto_1.AssignFirstForSecondDTO]),
56
+ __metadata("design:returntype", Promise)
57
+ ], DRelationCrudController.prototype, "assignSecond", null);
58
+ __decorate([
59
+ (0, common_1.Post)('assign-seconds-for-first'),
60
+ __param(0, (0, common_1.Body)()),
61
+ __metadata("design:type", Function),
62
+ __metadata("design:paramtypes", [relation_crud_dto_1.AssignSecondForFirstDTO]),
63
+ __metadata("design:returntype", Promise)
64
+ ], DRelationCrudController.prototype, "assignFirst", null);
65
+ exports.DRelationCrudController = DRelationCrudController = __decorate([
66
+ (0, common_1.Controller)(),
67
+ __metadata("design:paramtypes", [relation_crud_service_1.DRelationCrudService])
68
+ ], DRelationCrudController);
69
+ //# sourceMappingURL=relation-crud.controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relation-crud.controller.js","sourceRoot":"","sources":["../../../../src/generics/drizzle/controllers/relation-crud.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAoE;AACpE,6EAAyE;AACzE,oEAAgG;AAGzF,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAChC,YACqB,iBAAuC;QAAvC,sBAAiB,GAAjB,iBAAiB,CAAsB;IAE5D,CAAC;IAGK,AAAN,KAAK,CAAC,UAAU,CACC,EAAU;QAEvB,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IACtD,CAAC;IAGK,AAAN,KAAK,CAAC,WAAW,CACA,EAAU;QAEvB,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;IACvD,CAAC;IAGK,AAAN,KAAK,CAAC,YAAY,CACN,QAAiC;QAEzC,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAA;IACnG,CAAC;IAGK,AAAN,KAAK,CAAC,WAAW,CACL,QAAiC;QAEzC,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAA;IACnG,CAAC;CACJ,CAAA;AAjCY,0DAAuB;AAO1B;IADL,IAAA,YAAG,EAAC,kBAAkB,CAAC;IAEnB,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;yDAGf;AAGK;IADL,IAAA,YAAG,EAAC,mBAAmB,CAAC;IAEpB,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;0DAGf;AAGK;IADL,IAAA,aAAI,EAAC,0BAA0B,CAAC;IAE5B,WAAA,IAAA,aAAI,GAAE,CAAA;;qCAAW,2CAAuB;;2DAG5C;AAGK;IADL,IAAA,aAAI,EAAC,0BAA0B,CAAC;IAE5B,WAAA,IAAA,aAAI,GAAE,CAAA;;qCAAW,2CAAuB;;0DAG5C;kCAhCQ,uBAAuB;IADnC,IAAA,mBAAU,GAAE;qCAG+B,4CAAoB;GAFnD,uBAAuB,CAiCnC"}
@@ -0,0 +1,28 @@
1
+ import { DSchemaCrudService } from "../services/schema-crud.service";
2
+ export type SchemaCrudOptions = {
3
+ createDto?: {
4
+ new (): NonNullable<unknown>;
5
+ };
6
+ updateDto?: {
7
+ new (): NonNullable<unknown>;
8
+ };
9
+ };
10
+ export declare function DSchemaCrudController(options?: SchemaCrudOptions): {
11
+ new (schemaCrudService: DSchemaCrudService): {
12
+ readonly schemaCrudService: DSchemaCrudService;
13
+ findAll(): Promise<{
14
+ count: number;
15
+ items: {
16
+ [x: string]: any;
17
+ }[];
18
+ }>;
19
+ findOne(id: string): Promise<{
20
+ [x: string]: any;
21
+ }[]>;
22
+ create(itemData: any): Promise<{
23
+ [x: string]: any;
24
+ }[]>;
25
+ update(id: string, itemData: any): Promise<import("pg").QueryResult<never>>;
26
+ delete(id: string): Promise<import("pg").QueryResult<never>>;
27
+ };
28
+ };
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.DSchemaCrudController = DSchemaCrudController;
16
+ const common_1 = require("@nestjs/common");
17
+ const schema_crud_service_1 = require("../services/schema-crud.service");
18
+ const swagger_1 = require("@nestjs/swagger");
19
+ function DSchemaCrudController(options) {
20
+ let SchemaCrudControllerHost = class SchemaCrudControllerHost {
21
+ constructor(schemaCrudService) {
22
+ this.schemaCrudService = schemaCrudService;
23
+ }
24
+ async findAll() {
25
+ return await this.schemaCrudService.findAll();
26
+ }
27
+ async findOne(id) {
28
+ return await this.schemaCrudService.findOne(id);
29
+ }
30
+ async create(itemData) {
31
+ return await this.schemaCrudService.create(itemData);
32
+ }
33
+ async update(id, itemData) {
34
+ return await this.schemaCrudService.update(id, itemData);
35
+ }
36
+ async delete(id) {
37
+ return await this.schemaCrudService.delete(id);
38
+ }
39
+ };
40
+ __decorate([
41
+ (0, common_1.Get)(),
42
+ __metadata("design:type", Function),
43
+ __metadata("design:paramtypes", []),
44
+ __metadata("design:returntype", Promise)
45
+ ], SchemaCrudControllerHost.prototype, "findAll", null);
46
+ __decorate([
47
+ (0, common_1.Get)('/:id'),
48
+ __param(0, (0, common_1.Param)('id')),
49
+ __metadata("design:type", Function),
50
+ __metadata("design:paramtypes", [String]),
51
+ __metadata("design:returntype", Promise)
52
+ ], SchemaCrudControllerHost.prototype, "findOne", null);
53
+ __decorate([
54
+ (0, common_1.Post)(),
55
+ (0, swagger_1.ApiBody)({ type: options === null || options === void 0 ? void 0 : options.createDto }),
56
+ __param(0, (0, common_1.Body)()),
57
+ __metadata("design:type", Function),
58
+ __metadata("design:paramtypes", [Object]),
59
+ __metadata("design:returntype", Promise)
60
+ ], SchemaCrudControllerHost.prototype, "create", null);
61
+ __decorate([
62
+ (0, common_1.Put)('/:id'),
63
+ (0, swagger_1.ApiBody)({ type: options === null || options === void 0 ? void 0 : options.updateDto }),
64
+ __param(0, (0, common_1.Param)('id')),
65
+ __param(1, (0, common_1.Body)()),
66
+ __metadata("design:type", Function),
67
+ __metadata("design:paramtypes", [String, Object]),
68
+ __metadata("design:returntype", Promise)
69
+ ], SchemaCrudControllerHost.prototype, "update", null);
70
+ __decorate([
71
+ (0, common_1.Delete)('/:id'),
72
+ __param(0, (0, common_1.Param)('id')),
73
+ __metadata("design:type", Function),
74
+ __metadata("design:paramtypes", [String]),
75
+ __metadata("design:returntype", Promise)
76
+ ], SchemaCrudControllerHost.prototype, "delete", null);
77
+ SchemaCrudControllerHost = __decorate([
78
+ (0, common_1.Controller)(),
79
+ (0, common_1.UseInterceptors)(),
80
+ (0, swagger_1.ApiBearerAuth)(),
81
+ __metadata("design:paramtypes", [schema_crud_service_1.DSchemaCrudService])
82
+ ], SchemaCrudControllerHost);
83
+ return SchemaCrudControllerHost;
84
+ }
85
+ //# sourceMappingURL=schema-crud.controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-crud.controller.js","sourceRoot":"","sources":["../../../../src/generics/drizzle/controllers/schema-crud.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAUA,sDAiDC;AA3DD,2CAAkG;AAClG,yEAAqE;AACrE,6CAAyD;AAQzD,SAAgB,qBAAqB,CACjC,OAA2B;IAE3B,IAGM,wBAAwB,GAH9B,MAGM,wBAAwB;QAC1B,YACoB,iBAAqC;YAArC,sBAAiB,GAAjB,iBAAiB,CAAoB;QAEzD,CAAC;QAGK,AAAN,KAAK,CAAC,OAAO;YACT,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAA;QACjD,CAAC;QAGK,AAAN,KAAK,CAAC,OAAO,CACI,EAAU;YAEvB,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QACnD,CAAC;QAIK,AAAN,KAAK,CAAC,MAAM,CACA,QAAa;YAErB,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QACxD,CAAC;QAIK,AAAN,KAAK,CAAC,MAAM,CACK,EAAU,EACf,QAAa;YAErB,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QAC5D,CAAC;QAGK,AAAN,KAAK,CAAC,MAAM,CACK,EAAU;YAEvB,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAClD,CAAC;KACJ,CAAA;IAlCS;QADL,IAAA,YAAG,GAAE;;;;2DAGL;IAGK;QADL,IAAA,YAAG,EAAC,MAAM,CAAC;QAEP,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;2DAGf;IAIK;QAFL,IAAA,aAAI,GAAE;QACN,IAAA,iBAAO,EAAC,EAAE,IAAI,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,EAAE,CAAC;QAEjC,WAAA,IAAA,aAAI,GAAE,CAAA;;;;0DAGV;IAIK;QAFL,IAAA,YAAG,EAAC,MAAM,CAAC;QACX,IAAA,iBAAO,EAAC,EAAE,IAAI,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,EAAE,CAAC;QAEjC,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;QACX,WAAA,IAAA,aAAI,GAAE,CAAA;;;;0DAGV;IAGK;QADL,IAAA,eAAM,EAAC,MAAM,CAAC;QAEV,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;0DAGf;IAxCC,wBAAwB;QAH7B,IAAA,mBAAU,GAAE;QACZ,IAAA,wBAAe,GAAgC;QAC/C,IAAA,uBAAa,GAAE;yCAG2B,wCAAkB;OAFvD,wBAAwB,CAyC7B;IACD,OAAO,wBAAwB,CAAA;AACnC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './controllers';
2
+ export * from './services';
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./controllers"), exports);
18
+ __exportStar(require("./services"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/generics/drizzle/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA6B;AAC7B,6CAA0B"}
@@ -0,0 +1,22 @@
1
+ import { NodePgDatabase } from "drizzle-orm/node-postgres";
2
+ import { PgTableWithColumns } from "drizzle-orm/pg-core";
3
+ export declare class DExtraCrudService {
4
+ protected readonly db: NodePgDatabase<any>;
5
+ private readonly schema;
6
+ private readonly parentFieldName;
7
+ constructor(db: NodePgDatabase<any>, schema: PgTableWithColumns<any>, parentFieldName: string);
8
+ findAll(parentFieldValue: string): Promise<{
9
+ count: number;
10
+ items: {
11
+ [x: string]: any;
12
+ }[];
13
+ }>;
14
+ findOne(id: string): Promise<{
15
+ [x: string]: any;
16
+ }[]>;
17
+ create(itemData: any): Promise<{
18
+ [x: string]: any;
19
+ }[]>;
20
+ update(id: string, itemData: any): Promise<import("pg").QueryResult<never>>;
21
+ delete(id: string): Promise<import("pg").QueryResult<never>>;
22
+ }
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.DExtraCrudService = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const drizzle_orm_1 = require("drizzle-orm");
15
+ const node_postgres_1 = require("drizzle-orm/node-postgres");
16
+ let DExtraCrudService = class DExtraCrudService {
17
+ constructor(db, schema, parentFieldName) {
18
+ this.db = db;
19
+ this.schema = schema;
20
+ this.parentFieldName = parentFieldName;
21
+ }
22
+ async findAll(parentFieldValue) {
23
+ const data = await this.db.select()
24
+ .from(this.schema)
25
+ .where((0, drizzle_orm_1.eq)(this.schema[this.parentFieldName], parentFieldValue));
26
+ return {
27
+ count: data.length,
28
+ items: data
29
+ };
30
+ }
31
+ async findOne(id) {
32
+ return await this.db.select()
33
+ .from(this.schema)
34
+ .where((0, drizzle_orm_1.eq)(this.schema.id, id));
35
+ }
36
+ async create(itemData) {
37
+ return await this.db.insert(this.schema).values(itemData).returning();
38
+ }
39
+ async update(id, itemData) {
40
+ return await this.db.update(this.schema).set(itemData).where((0, drizzle_orm_1.eq)(this.schema.id, id));
41
+ }
42
+ async delete(id) {
43
+ return await this.db.delete(this.schema).where((0, drizzle_orm_1.eq)(this.schema.id, id));
44
+ }
45
+ };
46
+ exports.DExtraCrudService = DExtraCrudService;
47
+ exports.DExtraCrudService = DExtraCrudService = __decorate([
48
+ (0, common_1.Injectable)(),
49
+ __metadata("design:paramtypes", [node_postgres_1.NodePgDatabase, Object, String])
50
+ ], DExtraCrudService);
51
+ //# sourceMappingURL=extra-crud.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extra-crud.service.js","sourceRoot":"","sources":["../../../../src/generics/drizzle/services/extra-crud.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA4C;AAC5C,6CAAiC;AACjC,6DAA2D;AAIpD,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAC1B,YACuB,EAAuB,EACzB,MAA+B,EAC/B,eAAuB;QAFrB,OAAE,GAAF,EAAE,CAAqB;QACzB,WAAM,GAAN,MAAM,CAAyB;QAC/B,oBAAe,GAAf,eAAe,CAAQ;IAE5C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,gBAAwB;QAClC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE;aAC9B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;aACjB,KAAK,CAAC,IAAA,gBAAE,EAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAA;QAEnE,OAAO;YACH,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,KAAK,EAAE,IAAI;SACd,CAAA;IAEL,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAU;QACpB,OAAO,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE;aACxB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;aACjB,KAAK,CAAC,IAAA,gBAAE,EAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,QAAa;QACtB,OAAO,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,CAAC;IAC1E,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU,EAAE,QAAa;QAClC,OAAO,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,IAAA,gBAAE,EAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IACzF,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACnB,OAAO,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,IAAA,gBAAE,EAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3E,CAAC;CACJ,CAAA;AArCY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,mBAAU,GAAE;qCAGkB,8BAAc;GAFhC,iBAAiB,CAqC7B"}
@@ -0,0 +1,2 @@
1
+ export * from './schema-crud.service';
2
+ export * from './extra-crud.service';
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./schema-crud.service"), exports);
18
+ __exportStar(require("./extra-crud.service"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/generics/drizzle/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAqC;AACrC,uDAAoC"}
@@ -0,0 +1,28 @@
1
+ import { NodePgDatabase } from "drizzle-orm/node-postgres";
2
+ import { PgTableWithColumns } from "drizzle-orm/pg-core";
3
+ export declare class DRelationCrudService {
4
+ protected readonly db: NodePgDatabase<any>;
5
+ private readonly schema;
6
+ private readonly firstSchema;
7
+ private readonly secondSchema;
8
+ private readonly firstFieldName;
9
+ private readonly secondFieldName;
10
+ constructor(db: NodePgDatabase<any>, schema: PgTableWithColumns<any>, firstSchema: PgTableWithColumns<any>, secondSchema: PgTableWithColumns<any>, firstFieldName: string, secondFieldName: string);
11
+ givenFirst(schemaId: string): Promise<{
12
+ count: number;
13
+ items: {}[];
14
+ }>;
15
+ givenSecond(schemaId: string): Promise<{
16
+ count: number;
17
+ items: {}[];
18
+ }>;
19
+ assignFirstsForSecond(secondId: string, firstIds: string[]): Promise<{
20
+ count: number;
21
+ items: {
22
+ [x: string]: any;
23
+ }[];
24
+ }>;
25
+ assignSecondsForFirst(firstId: string, secondsIds: string[]): Promise<{
26
+ [x: string]: any;
27
+ }[]>;
28
+ }
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.DRelationCrudService = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const drizzle_orm_1 = require("drizzle-orm");
15
+ const node_postgres_1 = require("drizzle-orm/node-postgres");
16
+ let DRelationCrudService = class DRelationCrudService {
17
+ constructor(db, schema, firstSchema, secondSchema, firstFieldName, secondFieldName) {
18
+ this.db = db;
19
+ this.schema = schema;
20
+ this.firstSchema = firstSchema;
21
+ this.secondSchema = secondSchema;
22
+ this.firstFieldName = firstFieldName;
23
+ this.secondFieldName = secondFieldName;
24
+ }
25
+ async givenFirst(schemaId) {
26
+ try {
27
+ const result = await this.db.select(Object.assign({}, (0, drizzle_orm_1.getTableColumns)(this.secondSchema)))
28
+ .from(this.secondSchema)
29
+ .leftJoin(this.schema, (0, drizzle_orm_1.eq)(this.secondSchema.id, this.schema[this.secondFieldName]))
30
+ .where((0, drizzle_orm_1.eq)(this.schema[this.firstFieldName], schemaId));
31
+ return {
32
+ count: result.length,
33
+ items: result
34
+ };
35
+ }
36
+ catch (error) {
37
+ console.error('Error in givenFirst:', error);
38
+ throw error;
39
+ }
40
+ }
41
+ async givenSecond(schemaId) {
42
+ try {
43
+ const result = await this.db.select(Object.assign({}, (0, drizzle_orm_1.getTableColumns)(this.firstSchema)))
44
+ .from(this.firstSchema)
45
+ .leftJoin(this.schema, (0, drizzle_orm_1.eq)(this.firstSchema.id, this.schema[this.firstFieldName]))
46
+ .where((0, drizzle_orm_1.eq)(this.schema[this.secondFieldName], schemaId));
47
+ return {
48
+ count: result.length,
49
+ items: result
50
+ };
51
+ }
52
+ catch (error) {
53
+ console.error('Error in givenSecond:', error);
54
+ throw error;
55
+ }
56
+ }
57
+ async assignFirstsForSecond(secondId, firstIds) {
58
+ try {
59
+ const result = await this.db.insert(this.schema)
60
+ .values(firstIds.map((firstId) => ({ [this.firstFieldName]: firstId, [this.secondFieldName]: secondId })))
61
+ .returning();
62
+ return {
63
+ count: result.length,
64
+ items: result
65
+ };
66
+ }
67
+ catch (error) {
68
+ console.error('Error in assignSecond:', error);
69
+ throw error;
70
+ }
71
+ }
72
+ async assignSecondsForFirst(firstId, secondsIds) {
73
+ try {
74
+ const result = await this.db.insert(this.schema)
75
+ .values(secondsIds.map((secondId) => ({ [this.secondFieldName]: secondId, [this.firstFieldName]: firstId })))
76
+ .returning();
77
+ return result;
78
+ }
79
+ catch (error) {
80
+ console.error('Error in assignFirst:', error);
81
+ throw error;
82
+ }
83
+ }
84
+ };
85
+ exports.DRelationCrudService = DRelationCrudService;
86
+ exports.DRelationCrudService = DRelationCrudService = __decorate([
87
+ (0, common_1.Injectable)(),
88
+ __metadata("design:paramtypes", [node_postgres_1.NodePgDatabase, Object, Object, Object, String, String])
89
+ ], DRelationCrudService);
90
+ //# sourceMappingURL=relation-crud.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relation-crud.service.js","sourceRoot":"","sources":["../../../../src/generics/drizzle/services/relation-crud.service.ts"],"names":[],"mappings":"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"}