@steroidsjs/nest 4.2.1 → 4.4.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 (119) hide show
  1. package/infrastructure/adapters/QueryAdapterTypeORM.js +2 -1
  2. package/infrastructure/adapters/QueryAdapterTypeORM.js.map +1 -1
  3. package/infrastructure/applications/BaseApplication.js +2 -1
  4. package/infrastructure/applications/BaseApplication.js.map +1 -1
  5. package/infrastructure/applications/rest/IRestAppModuleConfig.d.ts +4 -0
  6. package/infrastructure/applications/rest/RestApplication.d.ts +10 -0
  7. package/infrastructure/applications/rest/RestApplication.js +23 -6
  8. package/infrastructure/applications/rest/RestApplication.js.map +1 -1
  9. package/infrastructure/commands/MigrateCommand.d.ts +0 -1
  10. package/infrastructure/commands/MigrateCommand.js +0 -34
  11. package/infrastructure/commands/MigrateCommand.js.map +1 -1
  12. package/infrastructure/commands/generate/index.d.ts +6 -6
  13. package/infrastructure/commands/generate/index.js +7 -39
  14. package/infrastructure/commands/generate/index.js.map +1 -1
  15. package/infrastructure/decorators/Transform.d.ts +2 -2
  16. package/infrastructure/decorators/fields/BaseField.d.ts +15 -47
  17. package/infrastructure/decorators/fields/BaseField.js +36 -105
  18. package/infrastructure/decorators/fields/BaseField.js.map +1 -1
  19. package/infrastructure/decorators/fields/BooleanField.js +1 -1
  20. package/infrastructure/decorators/fields/BooleanField.js.map +1 -1
  21. package/infrastructure/decorators/fields/ComputableField.js +0 -1
  22. package/infrastructure/decorators/fields/ComputableField.js.map +1 -1
  23. package/infrastructure/decorators/fields/CoordinateField.js +1 -1
  24. package/infrastructure/decorators/fields/CoordinateField.js.map +1 -1
  25. package/infrastructure/decorators/fields/CreateTimeField.js +1 -1
  26. package/infrastructure/decorators/fields/CreateTimeField.js.map +1 -1
  27. package/infrastructure/decorators/fields/DateField.js +1 -1
  28. package/infrastructure/decorators/fields/DateField.js.map +1 -1
  29. package/infrastructure/decorators/fields/DateTimeField.js +2 -2
  30. package/infrastructure/decorators/fields/DateTimeField.js.map +1 -1
  31. package/infrastructure/decorators/fields/DecimalField.js +1 -1
  32. package/infrastructure/decorators/fields/DecimalField.js.map +1 -1
  33. package/infrastructure/decorators/fields/DecimalNumberField.js +1 -1
  34. package/infrastructure/decorators/fields/DecimalNumberField.js.map +1 -1
  35. package/infrastructure/decorators/fields/DeleteDateField.js +1 -1
  36. package/infrastructure/decorators/fields/DeleteDateField.js.map +1 -1
  37. package/infrastructure/decorators/fields/EmailField.js +1 -1
  38. package/infrastructure/decorators/fields/EmailField.js.map +1 -1
  39. package/infrastructure/decorators/fields/EnumField.js +1 -1
  40. package/infrastructure/decorators/fields/EnumField.js.map +1 -1
  41. package/infrastructure/decorators/fields/FileField.js +1 -1
  42. package/infrastructure/decorators/fields/FileField.js.map +1 -1
  43. package/infrastructure/decorators/fields/GeometryField.d.ts +2 -0
  44. package/infrastructure/decorators/fields/GeometryField.js +2 -1
  45. package/infrastructure/decorators/fields/GeometryField.js.map +1 -1
  46. package/infrastructure/decorators/fields/HtmlField.js +1 -1
  47. package/infrastructure/decorators/fields/HtmlField.js.map +1 -1
  48. package/infrastructure/decorators/fields/IntegerField.js +1 -1
  49. package/infrastructure/decorators/fields/IntegerField.js.map +1 -1
  50. package/infrastructure/decorators/fields/JSONBField.d.ts +4 -1
  51. package/infrastructure/decorators/fields/JSONBField.js +2 -2
  52. package/infrastructure/decorators/fields/JSONBField.js.map +1 -1
  53. package/infrastructure/decorators/fields/PasswordField.js +1 -1
  54. package/infrastructure/decorators/fields/PasswordField.js.map +1 -1
  55. package/infrastructure/decorators/fields/PhoneField.js +1 -1
  56. package/infrastructure/decorators/fields/PhoneField.js.map +1 -1
  57. package/infrastructure/decorators/fields/PrimaryKeyField.js +1 -1
  58. package/infrastructure/decorators/fields/PrimaryKeyField.js.map +1 -1
  59. package/infrastructure/decorators/fields/RelationField.d.ts +6 -4
  60. package/infrastructure/decorators/fields/RelationField.js +5 -8
  61. package/infrastructure/decorators/fields/RelationField.js.map +1 -1
  62. package/infrastructure/decorators/fields/RelationIdField.js +1 -1
  63. package/infrastructure/decorators/fields/RelationIdField.js.map +1 -1
  64. package/infrastructure/decorators/fields/StringField.js +1 -1
  65. package/infrastructure/decorators/fields/StringField.js.map +1 -1
  66. package/infrastructure/decorators/fields/TextField.js +1 -1
  67. package/infrastructure/decorators/fields/TextField.js.map +1 -1
  68. package/infrastructure/decorators/fields/TimeField.js +1 -1
  69. package/infrastructure/decorators/fields/TimeField.js.map +1 -1
  70. package/infrastructure/decorators/fields/UidField.js +1 -1
  71. package/infrastructure/decorators/fields/UidField.js.map +1 -1
  72. package/infrastructure/decorators/fields/UpdateTimeField.js +1 -1
  73. package/infrastructure/decorators/fields/UpdateTimeField.js.map +1 -1
  74. package/infrastructure/decorators/fields/helpers/InternalFieldMetadataHelpers.d.ts +27 -0
  75. package/infrastructure/decorators/fields/helpers/InternalFieldMetadataHelpers.js +104 -0
  76. package/infrastructure/decorators/fields/helpers/InternalFieldMetadataHelpers.js.map +1 -0
  77. package/infrastructure/decorators/typeorm/TypeOrmDecoratorFactory.d.ts +3 -2
  78. package/infrastructure/decorators/typeorm/TypeOrmDecoratorFactory.js.map +1 -1
  79. package/infrastructure/decorators/typeorm/TypeOrmTableFromModel.js.map +1 -1
  80. package/infrastructure/decorators/typeorm/fields/TypeOrmBooleanField/index.js +1 -1
  81. package/infrastructure/decorators/typeorm/fields/TypeOrmBooleanField/index.js.map +1 -1
  82. package/infrastructure/decorators/typeorm/fields/TypeOrmUidField/index.js +1 -1
  83. package/infrastructure/decorators/typeorm/fields/TypeOrmUidField/index.js.map +1 -1
  84. package/infrastructure/filters/UserExceptionFilter.d.ts +1 -0
  85. package/infrastructure/filters/UserExceptionFilter.js +1 -0
  86. package/infrastructure/filters/UserExceptionFilter.js.map +1 -1
  87. package/infrastructure/pipes/CreateDtoPipe.d.ts +5 -1
  88. package/infrastructure/pipes/CreateDtoPipe.js +23 -4
  89. package/infrastructure/pipes/CreateDtoPipe.js.map +1 -1
  90. package/infrastructure/pipes/CreateDtoPipe.test.d.ts +1 -0
  91. package/infrastructure/pipes/CreateDtoPipe.test.js +98 -0
  92. package/infrastructure/pipes/CreateDtoPipe.test.js.map +1 -0
  93. package/package.json +6 -2
  94. package/tsconfig.tsbuildinfo +1 -1
  95. package/usecases/base/SearchQuery.d.ts +11 -0
  96. package/usecases/base/SearchQuery.js +36 -19
  97. package/usecases/base/SearchQuery.js.map +1 -1
  98. package/usecases/base/SearchQuery.test.d.ts +1 -0
  99. package/usecases/base/SearchQuery.test.js +102 -0
  100. package/usecases/base/SearchQuery.test.js.map +1 -0
  101. package/usecases/exceptions/UserException.d.ts +1 -0
  102. package/usecases/exceptions/UserException.js +1 -0
  103. package/usecases/exceptions/UserException.js.map +1 -1
  104. package/usecases/helpers/DataMapper.js +13 -8
  105. package/usecases/helpers/DataMapper.js.map +1 -1
  106. package/usecases/helpers/getMetaRelationsFromObject.d.ts +2 -0
  107. package/usecases/helpers/getMetaRelationsFromObject.js +53 -0
  108. package/usecases/helpers/getMetaRelationsFromObject.js.map +1 -0
  109. package/usecases/helpers/getMetaRelationsFromObject.test.d.ts +1 -0
  110. package/usecases/helpers/getMetaRelationsFromObject.test.js +327 -0
  111. package/usecases/helpers/getMetaRelationsFromObject.test.js.map +1 -0
  112. package/usecases/services/CrudService.js +5 -1
  113. package/usecases/services/CrudService.js.map +1 -1
  114. package/usecases/utils/wrapInDoubleQuotes.d.ts +1 -0
  115. package/usecases/utils/wrapInDoubleQuotes.js +15 -0
  116. package/usecases/utils/wrapInDoubleQuotes.js.map +1 -0
  117. package/infrastructure/utils/getNewPermissions.d.ts +0 -2
  118. package/infrastructure/utils/getNewPermissions.js +0 -18
  119. package/infrastructure/utils/getNewPermissions.js.map +0 -1
@@ -0,0 +1,327 @@
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
+ const globals_1 = require("@jest/globals");
13
+ const fields_1 = require("../../infrastructure/decorators/fields");
14
+ const fields_2 = require("../../infrastructure/decorators/fields");
15
+ const fields_3 = require("../../infrastructure/decorators/fields");
16
+ const fields_4 = require("../../infrastructure/decorators/fields");
17
+ const getMetaRelationsFromObject_1 = require("./getMetaRelationsFromObject");
18
+ class FileSchema {
19
+ }
20
+ __decorate([
21
+ (0, fields_1.PrimaryKeyField)(),
22
+ __metadata("design:type", Number)
23
+ ], FileSchema.prototype, "id", void 0);
24
+ __decorate([
25
+ (0, fields_4.StringField)(),
26
+ __metadata("design:type", String)
27
+ ], FileSchema.prototype, "name", void 0);
28
+ class CompanySchema {
29
+ }
30
+ __decorate([
31
+ (0, fields_1.PrimaryKeyField)(),
32
+ __metadata("design:type", Number)
33
+ ], CompanySchema.prototype, "id", void 0);
34
+ __decorate([
35
+ (0, fields_4.StringField)(),
36
+ __metadata("design:type", String)
37
+ ], CompanySchema.prototype, "title", void 0);
38
+ class UserProfileSchema {
39
+ }
40
+ __decorate([
41
+ (0, fields_1.PrimaryKeyField)(),
42
+ __metadata("design:type", Number)
43
+ ], UserProfileSchema.prototype, "id", void 0);
44
+ __decorate([
45
+ (0, fields_3.RelationIdField)({ relationName: 'avatar' }),
46
+ __metadata("design:type", Number)
47
+ ], UserProfileSchema.prototype, "avatarId", void 0);
48
+ __decorate([
49
+ (0, fields_2.RelationField)({
50
+ type: 'OneToOne',
51
+ isOwningSide: true,
52
+ relationClass: () => FileSchema,
53
+ }),
54
+ __metadata("design:type", FileSchema)
55
+ ], UserProfileSchema.prototype, "avatar", void 0);
56
+ class UserSchema {
57
+ }
58
+ __decorate([
59
+ (0, fields_1.PrimaryKeyField)(),
60
+ __metadata("design:type", Number)
61
+ ], UserSchema.prototype, "id", void 0);
62
+ __decorate([
63
+ (0, fields_3.RelationIdField)({ relationName: 'company' }),
64
+ __metadata("design:type", Number)
65
+ ], UserSchema.prototype, "companyId", void 0);
66
+ __decorate([
67
+ (0, fields_2.RelationField)({
68
+ type: 'ManyToOne',
69
+ relationClass: () => CompanySchema,
70
+ }),
71
+ __metadata("design:type", CompanySchema)
72
+ ], UserSchema.prototype, "company", void 0);
73
+ __decorate([
74
+ (0, fields_2.RelationField)({
75
+ type: 'OneToOne',
76
+ isOwningSide: true,
77
+ relationClass: () => UserProfileSchema,
78
+ }),
79
+ __metadata("design:type", UserProfileSchema)
80
+ ], UserSchema.prototype, "profile", void 0);
81
+ __decorate([
82
+ (0, fields_4.StringField)(),
83
+ __metadata("design:type", String)
84
+ ], UserSchema.prototype, "name", void 0);
85
+ class CommentSchema {
86
+ }
87
+ __decorate([
88
+ (0, fields_1.PrimaryKeyField)(),
89
+ __metadata("design:type", Number)
90
+ ], CommentSchema.prototype, "id", void 0);
91
+ __decorate([
92
+ (0, fields_3.RelationIdField)({ relationName: 'author' }),
93
+ __metadata("design:type", Number)
94
+ ], CommentSchema.prototype, "authorId", void 0);
95
+ __decorate([
96
+ (0, fields_2.RelationField)({
97
+ type: 'ManyToOne',
98
+ relationClass: () => UserSchema,
99
+ }),
100
+ __metadata("design:type", UserSchema)
101
+ ], CommentSchema.prototype, "author", void 0);
102
+ __decorate([
103
+ (0, fields_4.StringField)(),
104
+ __metadata("design:type", String)
105
+ ], CommentSchema.prototype, "text", void 0);
106
+ class TaskSchema {
107
+ }
108
+ __decorate([
109
+ (0, fields_1.PrimaryKeyField)(),
110
+ __metadata("design:type", Number)
111
+ ], TaskSchema.prototype, "id", void 0);
112
+ __decorate([
113
+ (0, fields_4.StringField)(),
114
+ __metadata("design:type", String)
115
+ ], TaskSchema.prototype, "title", void 0);
116
+ class TagSchema {
117
+ }
118
+ __decorate([
119
+ (0, fields_1.PrimaryKeyField)(),
120
+ __metadata("design:type", Number)
121
+ ], TagSchema.prototype, "id", void 0);
122
+ __decorate([
123
+ (0, fields_3.RelationIdField)({ relationName: 'creator' }),
124
+ __metadata("design:type", Number)
125
+ ], TagSchema.prototype, "creatorId", void 0);
126
+ __decorate([
127
+ (0, fields_2.RelationField)({
128
+ type: 'ManyToOne',
129
+ relationClass: () => UserSchema,
130
+ }),
131
+ __metadata("design:type", UserSchema)
132
+ ], TagSchema.prototype, "creator", void 0);
133
+ __decorate([
134
+ (0, fields_4.StringField)(),
135
+ __metadata("design:type", String)
136
+ ], TagSchema.prototype, "name", void 0);
137
+ class PostMetaSchema {
138
+ }
139
+ __decorate([
140
+ (0, fields_1.PrimaryKeyField)(),
141
+ __metadata("design:type", Number)
142
+ ], PostMetaSchema.prototype, "id", void 0);
143
+ __decorate([
144
+ (0, fields_3.RelationIdField)({ relationName: 'previewImage' }),
145
+ __metadata("design:type", Number)
146
+ ], PostMetaSchema.prototype, "previewImageId", void 0);
147
+ __decorate([
148
+ (0, fields_2.RelationField)({
149
+ type: 'OneToOne',
150
+ isOwningSide: true,
151
+ relationClass: () => FileSchema,
152
+ }),
153
+ __metadata("design:type", FileSchema)
154
+ ], PostMetaSchema.prototype, "previewImage", void 0);
155
+ class PostSchema {
156
+ }
157
+ __decorate([
158
+ (0, fields_1.PrimaryKeyField)(),
159
+ __metadata("design:type", Number)
160
+ ], PostSchema.prototype, "id", void 0);
161
+ __decorate([
162
+ (0, fields_3.RelationIdField)({ relationName: 'author' }),
163
+ __metadata("design:type", Number)
164
+ ], PostSchema.prototype, "authorId", void 0);
165
+ __decorate([
166
+ (0, fields_2.RelationField)({
167
+ type: 'ManyToOne',
168
+ relationClass: () => UserSchema,
169
+ }),
170
+ __metadata("design:type", UserSchema)
171
+ ], PostSchema.prototype, "author", void 0);
172
+ __decorate([
173
+ (0, fields_2.RelationField)({
174
+ type: 'OneToOne',
175
+ isOwningSide: true,
176
+ relationClass: () => PostMetaSchema,
177
+ }),
178
+ __metadata("design:type", PostMetaSchema)
179
+ ], PostSchema.prototype, "meta", void 0);
180
+ __decorate([
181
+ (0, fields_2.RelationField)({
182
+ type: 'OneToMany',
183
+ relationClass: () => CommentSchema,
184
+ inverseSide: 'post',
185
+ }),
186
+ __metadata("design:type", Array)
187
+ ], PostSchema.prototype, "comments", void 0);
188
+ __decorate([
189
+ (0, fields_3.RelationIdField)({
190
+ relationName: 'tasks',
191
+ isArray: true,
192
+ }),
193
+ __metadata("design:type", Array)
194
+ ], PostSchema.prototype, "tasksIds", void 0);
195
+ __decorate([
196
+ (0, fields_2.RelationField)({
197
+ type: 'ManyToMany',
198
+ isOwningSide: true,
199
+ relationClass: () => TaskSchema,
200
+ }),
201
+ __metadata("design:type", Array)
202
+ ], PostSchema.prototype, "tasks", void 0);
203
+ __decorate([
204
+ (0, fields_2.RelationField)({
205
+ type: 'ManyToMany',
206
+ isOwningSide: true,
207
+ relationClass: () => TagSchema,
208
+ }),
209
+ __metadata("design:type", Array)
210
+ ], PostSchema.prototype, "tags", void 0);
211
+ __decorate([
212
+ (0, fields_4.StringField)(),
213
+ __metadata("design:type", String)
214
+ ], PostSchema.prototype, "title", void 0);
215
+ (0, globals_1.describe)('getMetaRelationsFromObject', () => {
216
+ (0, globals_1.it)('collects ManyToOne relationId field without loading relation object', () => {
217
+ (0, globals_1.expect)((0, getMetaRelationsFromObject_1.getMetaRelationsFromObject)({
218
+ authorId: 10,
219
+ }, PostSchema)).toEqual([
220
+ 'authorId',
221
+ ]);
222
+ });
223
+ (0, globals_1.it)('collects nested OneToOne relations with deeper relationId links', () => {
224
+ (0, globals_1.expect)((0, getMetaRelationsFromObject_1.getMetaRelationsFromObject)({
225
+ meta: {
226
+ previewImageId: 15,
227
+ },
228
+ }, PostSchema)).toEqual([
229
+ 'meta',
230
+ 'meta.previewImageId',
231
+ ]);
232
+ });
233
+ (0, globals_1.it)('collects nested relations from OneToMany arrays', () => {
234
+ (0, globals_1.expect)((0, getMetaRelationsFromObject_1.getMetaRelationsFromObject)({
235
+ comments: [
236
+ {
237
+ authorId: 3,
238
+ },
239
+ {
240
+ author: {
241
+ profile: {
242
+ avatarId: 7,
243
+ },
244
+ },
245
+ },
246
+ ],
247
+ }, PostSchema)).toEqual([
248
+ 'comments',
249
+ 'comments.authorId',
250
+ 'comments.author',
251
+ 'comments.author.profile',
252
+ 'comments.author.profile.avatarId',
253
+ ]);
254
+ });
255
+ (0, globals_1.it)('collects nested relations from ManyToMany arrays', () => {
256
+ (0, globals_1.expect)((0, getMetaRelationsFromObject_1.getMetaRelationsFromObject)({
257
+ tags: [
258
+ {
259
+ creator: {
260
+ companyId: 22,
261
+ profile: {
262
+ avatarId: 11,
263
+ },
264
+ },
265
+ },
266
+ ],
267
+ }, PostSchema)).toEqual([
268
+ 'tags',
269
+ 'tags.creator',
270
+ 'tags.creator.companyId',
271
+ 'tags.creator.profile',
272
+ 'tags.creator.profile.avatarId',
273
+ ]);
274
+ });
275
+ (0, globals_1.it)('collects relationId arrays without loading the relation itself', () => {
276
+ (0, globals_1.expect)((0, getMetaRelationsFromObject_1.getMetaRelationsFromObject)({
277
+ tasksIds: [1, 2, 3],
278
+ }, PostSchema)).toEqual([
279
+ 'tasksIds',
280
+ ]);
281
+ });
282
+ (0, globals_1.it)('collects mixed relation types once and ignores non-relation objects', () => {
283
+ (0, globals_1.expect)((0, getMetaRelationsFromObject_1.getMetaRelationsFromObject)({
284
+ author: {
285
+ companyId: 5,
286
+ },
287
+ meta: {
288
+ previewImageId: 15,
289
+ },
290
+ comments: [
291
+ {
292
+ authorId: 3,
293
+ },
294
+ {
295
+ payload: {
296
+ ignore: true,
297
+ },
298
+ },
299
+ ],
300
+ tags: [
301
+ {
302
+ creator: {
303
+ companyId: 22,
304
+ },
305
+ },
306
+ {
307
+ creatorId: 999,
308
+ },
309
+ ],
310
+ extra: {
311
+ nested: true,
312
+ },
313
+ }, PostSchema)).toEqual([
314
+ 'author',
315
+ 'author.companyId',
316
+ 'meta',
317
+ 'meta.previewImageId',
318
+ 'comments',
319
+ 'comments.authorId',
320
+ 'tags',
321
+ 'tags.creator',
322
+ 'tags.creator.companyId',
323
+ 'tags.creatorId',
324
+ ]);
325
+ });
326
+ });
327
+ //# sourceMappingURL=getMetaRelationsFromObject.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getMetaRelationsFromObject.test.js","sourceRoot":"","sources":["../../../src/usecases/helpers/getMetaRelationsFromObject.test.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ const BaseField_1 = require("../../infrastructure/decorators/fields/BaseField");
8
8
  const RelationTypeEnum_1 = require("../../domain/enums/RelationTypeEnum");
9
9
  const exceptions_1 = require("../exceptions");
10
10
  const ReadService_1 = require("./ReadService");
11
+ const getMetaRelationsFromObject_1 = require("../helpers/getMetaRelationsFromObject");
11
12
  /**
12
13
  * Generic CRUD service
13
14
  */
@@ -48,8 +49,11 @@ class CrudService extends ReadService_1.ReadService {
48
49
  // Fetch previous model state
49
50
  let prevModel = null;
50
51
  if (id) {
52
+ const relationsNames = (0, BaseField_1.isMetaClass)(dto.constructor)
53
+ ? (0, BaseField_1.getMetaRelations)(dto.constructor)
54
+ : (0, getMetaRelationsFromObject_1.getMetaRelationsFromObject)(dto, this.modelClass);
51
55
  prevModel = await this.createQuery()
52
- .with((0, BaseField_1.getMetaRelations)(dto.constructor))
56
+ .with(relationsNames)
53
57
  .where({ [this.primaryKey]: id })
54
58
  .one();
55
59
  if (!prevModel) {
@@ -1 +1 @@
1
- {"version":3,"file":"CrudService.js","sourceRoot":"","sources":["../../../src/usecases/services/CrudService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CrudService.js","sourceRoot":"","sources":["../../../src/usecases/services/CrudService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function wrapInDoubleQuotes(str: string): string;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.wrapInDoubleQuotes = void 0;
4
+ function wrapInDoubleQuotes(str) {
5
+ let result = str;
6
+ if (!result.startsWith('"')) {
7
+ result = `"${result}`;
8
+ }
9
+ if (!result.endsWith('"')) {
10
+ result = `${result}"`;
11
+ }
12
+ return result;
13
+ }
14
+ exports.wrapInDoubleQuotes = wrapInDoubleQuotes;
15
+ //# sourceMappingURL=wrapInDoubleQuotes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wrapInDoubleQuotes.js","sourceRoot":"","sources":["../../../src/usecases/utils/wrapInDoubleQuotes.ts"],"names":[],"mappings":";;;AAAA,SAAgB,kBAAkB,CAAC,GAAW;IAC1C,IAAI,MAAM,GAAG,GAAG,CAAC;IAEjB,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;QACzB,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;KACzB;IAED,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QACvB,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC;KACzB;IAED,OAAO,MAAM,CAAC;AAClB,CAAC;AAZD,gDAYC"}
@@ -1,2 +0,0 @@
1
- import { DataSource } from '@steroidsjs/typeorm';
2
- export declare const getNewPermissions: (dataSource: DataSource, tableName?: string, columnName?: string) => Promise<any[]>;
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getNewPermissions = void 0;
4
- const PermissionsFactory_1 = require("../helpers/PermissionsFactory");
5
- const getNewPermissions = async (dataSource, tableName = 'auth_permission', columnName = 'name') => {
6
- const allPermissions = PermissionsFactory_1.PermissionsFactory.getAllPermissionsKeys();
7
- if (allPermissions.length === 0) {
8
- return allPermissions;
9
- }
10
- const existingPermissions = new Set();
11
- const existingPermissionsRows = await dataSource.query(`SELECT ${columnName} FROM ${tableName}`);
12
- for (const row of existingPermissionsRows) {
13
- existingPermissions.add(row[columnName]);
14
- }
15
- return allPermissions.filter(permission => !existingPermissions.has(permission));
16
- };
17
- exports.getNewPermissions = getNewPermissions;
18
- //# sourceMappingURL=getNewPermissions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getNewPermissions.js","sourceRoot":"","sources":["../../../src/infrastructure/utils/getNewPermissions.ts"],"names":[],"mappings":";;;AACA,sEAAiE;AAE1D,MAAM,iBAAiB,GAAG,KAAK,EAAE,UAAsB,EAAE,SAAS,GAAG,iBAAiB,EAAE,UAAU,GAAG,MAAM,EAAE,EAAE;IAClH,MAAM,cAAc,GAAG,uCAAkB,CAAC,qBAAqB,EAAE,CAAC;IAElE,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE;QAC7B,OAAO,cAAc,CAAC;KACzB;IAED,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9C,MAAM,uBAAuB,GAAwC,MAAM,UAAU,CAAC,KAAK,CACvF,UAAU,UAAU,SAAS,SAAS,EAAE,CAC3C,CAAC;IACF,KAAK,MAAM,GAAG,IAAI,uBAAuB,EAAE;QACvC,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;KAC5C;IAED,OAAO,cAAc,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;AACrF,CAAC,CAAC;AAhBW,QAAA,iBAAiB,qBAgB5B"}