@carlonicora/nestjs-neo4jsonapi 1.43.0 → 1.43.2
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.
- package/dist/scripts/generate-module/templates/controller.spec.template.d.ts.map +1 -1
- package/dist/scripts/generate-module/templates/controller.spec.template.js +24 -13
- package/dist/scripts/generate-module/templates/controller.spec.template.js.map +1 -1
- package/dist/scripts/generate-module/templates/controller.template.d.ts.map +1 -1
- package/dist/scripts/generate-module/templates/controller.template.js +13 -2
- package/dist/scripts/generate-module/templates/controller.template.js.map +1 -1
- package/dist/scripts/generate-module/templates/dto.post.template.d.ts.map +1 -1
- package/dist/scripts/generate-module/templates/dto.post.template.js +10 -3
- package/dist/scripts/generate-module/templates/dto.post.template.js.map +1 -1
- package/dist/scripts/generate-module/templates/dto.put.template.d.ts.map +1 -1
- package/dist/scripts/generate-module/templates/dto.put.template.js +10 -3
- package/dist/scripts/generate-module/templates/dto.put.template.js.map +1 -1
- package/dist/scripts/generate-module/templates/dto.relationship.template.d.ts.map +1 -1
- package/dist/scripts/generate-module/templates/dto.relationship.template.js +24 -15
- package/dist/scripts/generate-module/templates/dto.relationship.template.js.map +1 -1
- package/dist/scripts/generate-module/templates/entity.template.d.ts.map +1 -1
- package/dist/scripts/generate-module/templates/entity.template.js +8 -0
- package/dist/scripts/generate-module/templates/entity.template.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controller.spec.template.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/controller.spec.template.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAYhE;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"controller.spec.template.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/controller.spec.template.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAYhE;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CAoVrE"}
|
|
@@ -31,7 +31,6 @@ function generateControllerSpecFile(data) {
|
|
|
31
31
|
${names.camelCase}Service.findByRelated.mockResolvedValue(MOCK_JSONAPI_LIST_RESPONSE);
|
|
32
32
|
|
|
33
33
|
await controller.${route.methodName}(
|
|
34
|
-
mockRequest,
|
|
35
34
|
mockReply,
|
|
36
35
|
TEST_IDS.${route.relationshipKey}Id,
|
|
37
36
|
{},
|
|
@@ -62,7 +61,6 @@ function generateControllerSpecFile(data) {
|
|
|
62
61
|
${names.camelCase}Service.addToRelationshipFromDTO.mockResolvedValue(MOCK_JSONAPI_RESPONSE);
|
|
63
62
|
|
|
64
63
|
await controller.add${pascalDtoKey}(
|
|
65
|
-
mockRequest,
|
|
66
64
|
mockReply,
|
|
67
65
|
TEST_IDS.${names.camelCase}Id,
|
|
68
66
|
{
|
|
@@ -85,7 +83,6 @@ function generateControllerSpecFile(data) {
|
|
|
85
83
|
${names.camelCase}Service.removeFromRelationshipFromDTO.mockResolvedValue(MOCK_JSONAPI_RESPONSE);
|
|
86
84
|
|
|
87
85
|
await controller.remove${pascalDtoKey}(
|
|
88
|
-
mockRequest,
|
|
89
86
|
mockReply,
|
|
90
87
|
TEST_IDS.${names.camelCase}Id,
|
|
91
88
|
{
|
|
@@ -108,7 +105,6 @@ function generateControllerSpecFile(data) {
|
|
|
108
105
|
${names.camelCase}Service.addToRelationshipFromDTO.mockResolvedValue(MOCK_JSONAPI_RESPONSE);
|
|
109
106
|
|
|
110
107
|
await controller.add${pascalKey}(
|
|
111
|
-
mockRequest,
|
|
112
108
|
mockReply,
|
|
113
109
|
TEST_IDS.${names.camelCase}Id,
|
|
114
110
|
TEST_IDS.${rel.key}Id,
|
|
@@ -125,7 +121,6 @@ function generateControllerSpecFile(data) {
|
|
|
125
121
|
${names.camelCase}Service.removeFromRelationshipFromDTO.mockResolvedValue(MOCK_JSONAPI_RESPONSE);
|
|
126
122
|
|
|
127
123
|
await controller.remove${pascalKey}(
|
|
128
|
-
mockRequest,
|
|
129
124
|
mockReply,
|
|
130
125
|
TEST_IDS.${names.camelCase}Id,
|
|
131
126
|
TEST_IDS.${rel.key}Id,
|
|
@@ -234,7 +229,7 @@ describe("${names.pascalCase}Controller", () => {
|
|
|
234
229
|
it("should return a list of ${names.camelCase} entities", async () => {
|
|
235
230
|
${names.camelCase}Service.find.mockResolvedValue(MOCK_JSONAPI_LIST_RESPONSE);
|
|
236
231
|
|
|
237
|
-
await controller.findAll(
|
|
232
|
+
await controller.findAll(mockReply, {}, undefined, undefined, undefined);
|
|
238
233
|
|
|
239
234
|
expect(${names.camelCase}Service.find).toHaveBeenCalledWith(
|
|
240
235
|
expect.objectContaining({ query: {} }),
|
|
@@ -245,7 +240,7 @@ describe("${names.pascalCase}Controller", () => {
|
|
|
245
240
|
it("should pass search term to service", async () => {
|
|
246
241
|
${names.camelCase}Service.find.mockResolvedValue(MOCK_JSONAPI_LIST_RESPONSE);
|
|
247
242
|
|
|
248
|
-
await controller.findAll(
|
|
243
|
+
await controller.findAll(mockReply, {}, "search-term", undefined, undefined);
|
|
249
244
|
|
|
250
245
|
expect(${names.camelCase}Service.find).toHaveBeenCalledWith(
|
|
251
246
|
expect.objectContaining({ term: "search-term" }),
|
|
@@ -255,7 +250,7 @@ describe("${names.pascalCase}Controller", () => {
|
|
|
255
250
|
it("should pass orderBy to service", async () => {
|
|
256
251
|
${names.camelCase}Service.find.mockResolvedValue(MOCK_JSONAPI_LIST_RESPONSE);
|
|
257
252
|
|
|
258
|
-
await controller.findAll(
|
|
253
|
+
await controller.findAll(mockReply, {}, undefined, undefined, "createdAt");
|
|
259
254
|
|
|
260
255
|
expect(${names.camelCase}Service.find).toHaveBeenCalledWith(
|
|
261
256
|
expect.objectContaining({ orderBy: "createdAt" }),
|
|
@@ -266,8 +261,12 @@ describe("${names.pascalCase}Controller", () => {
|
|
|
266
261
|
describe("findById", () => {
|
|
267
262
|
it("should return a single ${names.camelCase} entity", async () => {
|
|
268
263
|
${names.camelCase}Service.findById.mockResolvedValue(MOCK_JSONAPI_RESPONSE);
|
|
264
|
+
const requestWithParams = {
|
|
265
|
+
...mockRequest,
|
|
266
|
+
params: { ${names.camelCase}Id: TEST_IDS.${names.camelCase}Id },
|
|
267
|
+
} as AuthenticatedRequest;
|
|
269
268
|
|
|
270
|
-
await controller.findById(
|
|
269
|
+
await controller.findById(requestWithParams, mockReply, TEST_IDS.${names.camelCase}Id);
|
|
271
270
|
|
|
272
271
|
expect(${names.camelCase}Service.findById).toHaveBeenCalledWith({ id: TEST_IDS.${names.camelCase}Id });
|
|
273
272
|
expect(mockReply.send).toHaveBeenCalledWith(MOCK_JSONAPI_RESPONSE);
|
|
@@ -279,7 +278,7 @@ describe("${names.pascalCase}Controller", () => {
|
|
|
279
278
|
it("should create a new ${names.camelCase} entity", async () => {
|
|
280
279
|
${names.camelCase}Service.createFromDTO.mockResolvedValue(MOCK_JSONAPI_RESPONSE);
|
|
281
280
|
|
|
282
|
-
await controller.create(
|
|
281
|
+
await controller.create(mockReply, MOCK_POST_DTO as any);
|
|
283
282
|
|
|
284
283
|
expect(${names.camelCase}Service.createFromDTO).toHaveBeenCalled();
|
|
285
284
|
expect(mockReply.send).toHaveBeenCalledWith(MOCK_JSONAPI_RESPONSE);
|
|
@@ -290,8 +289,12 @@ describe("${names.pascalCase}Controller", () => {
|
|
|
290
289
|
describe("update", () => {
|
|
291
290
|
it("should update an existing ${names.camelCase} entity", async () => {
|
|
292
291
|
${names.camelCase}Service.putFromDTO.mockResolvedValue(MOCK_JSONAPI_RESPONSE);
|
|
292
|
+
const requestWithParams = {
|
|
293
|
+
...mockRequest,
|
|
294
|
+
params: { ${names.camelCase}Id: TEST_IDS.${names.camelCase}Id },
|
|
295
|
+
} as AuthenticatedRequest;
|
|
293
296
|
|
|
294
|
-
await controller.update(
|
|
297
|
+
await controller.update(requestWithParams, mockReply, MOCK_PUT_DTO as any);
|
|
295
298
|
|
|
296
299
|
expect(${names.camelCase}Service.putFromDTO).toHaveBeenCalled();
|
|
297
300
|
expect(mockReply.send).toHaveBeenCalledWith(MOCK_JSONAPI_RESPONSE);
|
|
@@ -308,9 +311,13 @@ describe("${names.pascalCase}Controller", () => {
|
|
|
308
311
|
id: "different-id",
|
|
309
312
|
},
|
|
310
313
|
};
|
|
314
|
+
const requestWithParams = {
|
|
315
|
+
...mockRequest,
|
|
316
|
+
params: { ${names.camelCase}Id: TEST_IDS.${names.camelCase}Id },
|
|
317
|
+
} as AuthenticatedRequest;
|
|
311
318
|
|
|
312
319
|
await expect(
|
|
313
|
-
controller.update(
|
|
320
|
+
controller.update(requestWithParams, mockReply, invalidDTO as any),
|
|
314
321
|
).rejects.toThrow(PreconditionFailedException);
|
|
315
322
|
|
|
316
323
|
expect(${names.camelCase}Service.putFromDTO).not.toHaveBeenCalled();
|
|
@@ -320,8 +327,12 @@ describe("${names.pascalCase}Controller", () => {
|
|
|
320
327
|
describe("delete", () => {
|
|
321
328
|
it("should delete an existing ${names.camelCase} entity", async () => {
|
|
322
329
|
${names.camelCase}Service.delete.mockResolvedValue(undefined);
|
|
330
|
+
const requestWithParams = {
|
|
331
|
+
...mockRequest,
|
|
332
|
+
params: { ${names.camelCase}Id: TEST_IDS.${names.camelCase}Id },
|
|
333
|
+
} as AuthenticatedRequest;
|
|
323
334
|
|
|
324
|
-
await controller.delete(
|
|
335
|
+
await controller.delete(requestWithParams, mockReply, TEST_IDS.${names.camelCase}Id);
|
|
325
336
|
|
|
326
337
|
expect(${names.camelCase}Service.delete).toHaveBeenCalledWith({ id: TEST_IDS.${names.camelCase}Id });
|
|
327
338
|
expect(mockReply.send).toHaveBeenCalled();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controller.spec.template.js","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/controller.spec.template.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AAoBH,
|
|
1
|
+
{"version":3,"file":"controller.spec.template.js","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/controller.spec.template.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controller.template.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/controller.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAKhE;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"controller.template.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/controller.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAKhE;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CAmUjE"}
|
|
@@ -20,6 +20,10 @@ function generateControllerFile(data) {
|
|
|
20
20
|
const oldMetaImportPaths = new Map();
|
|
21
21
|
for (const route of oldStructureRoutes) {
|
|
22
22
|
const rel = data.relationships.find((r) => r.model === route.relatedMeta);
|
|
23
|
+
// Skip self-referential relationships - own meta is imported separately below
|
|
24
|
+
if (rel.relatedEntity.name === names.pascalCase) {
|
|
25
|
+
continue;
|
|
26
|
+
}
|
|
23
27
|
const path = (0, import_resolver_1.isFoundationImport)(rel.relatedEntity.directory)
|
|
24
28
|
? import_resolver_1.FOUNDATION_PACKAGE
|
|
25
29
|
: (0, import_resolver_1.resolveMetaImportPath)({
|
|
@@ -146,6 +150,8 @@ ${manyRelationships
|
|
|
146
150
|
const endpointAccessor = rel.isNewStructure
|
|
147
151
|
? `${rel.descriptorName}.model.endpoint`
|
|
148
152
|
: `${rel.model}.endpoint`;
|
|
153
|
+
// Check if relationship has edge property fields
|
|
154
|
+
const hasFields = rel.fields && rel.fields.length > 0;
|
|
149
155
|
return `
|
|
150
156
|
// Batch add ${dtoKey}
|
|
151
157
|
@Post(\`\${${names.camelCase}Meta.endpoint}/:${names.camelCase}Id/\${${endpointAccessor}}\`)
|
|
@@ -183,12 +189,12 @@ ${manyRelationships
|
|
|
183
189
|
@Res() reply: FastifyReply,
|
|
184
190
|
@Param("${names.camelCase}Id") ${names.camelCase}Id: string,
|
|
185
191
|
@Param("${rel.key}Id") ${rel.key}Id: string,
|
|
186
|
-
@Body() body: ${names.pascalCase}${pascalDtoKey}AddSingleDTO,
|
|
192
|
+
@Body() ${hasFields ? `body` : `_body`}: ${names.pascalCase}${pascalDtoKey}AddSingleDTO,
|
|
187
193
|
) {
|
|
188
194
|
const response = await this.${names.camelCase}Service.addToRelationshipFromDTO({
|
|
189
195
|
id: ${names.camelCase}Id,
|
|
190
196
|
relationship: ${names.pascalCase}Descriptor.relationshipKeys.${rel.key},
|
|
191
|
-
data: { id: ${rel.key}Id, type: ${endpointAccessor}
|
|
197
|
+
data: { id: ${rel.key}Id, type: ${endpointAccessor}${hasFields ? `, meta: body.data?.meta` : ``} },
|
|
192
198
|
});
|
|
193
199
|
reply.send(response);
|
|
194
200
|
}
|
|
@@ -221,6 +227,7 @@ ${manyRelationships
|
|
|
221
227
|
Post,
|
|
222
228
|
Put,
|
|
223
229
|
Query,
|
|
230
|
+
Req,
|
|
224
231
|
Res,
|
|
225
232
|
UseGuards,
|
|
226
233
|
} from "@nestjs/common";
|
|
@@ -228,6 +235,7 @@ import { FastifyReply } from "fastify";
|
|
|
228
235
|
import {
|
|
229
236
|
Audit,
|
|
230
237
|
AuditService,
|
|
238
|
+
AuthenticatedRequest,
|
|
231
239
|
CacheInvalidate,
|
|
232
240
|
CacheService,
|
|
233
241
|
createCrudHandlers,
|
|
@@ -268,6 +276,7 @@ export class ${names.pascalCase}Controller {
|
|
|
268
276
|
@Get(\`\${${names.camelCase}Meta.endpoint}/:${names.camelCase}Id\`)
|
|
269
277
|
@Audit(${names.camelCase}Meta, "${names.camelCase}Id")
|
|
270
278
|
async findById(
|
|
279
|
+
@Req() request: AuthenticatedRequest,
|
|
271
280
|
@Res() reply: FastifyReply,
|
|
272
281
|
@Param("${names.camelCase}Id") ${names.camelCase}Id: string,
|
|
273
282
|
) {
|
|
@@ -287,6 +296,7 @@ export class ${names.pascalCase}Controller {
|
|
|
287
296
|
@ValidateId("${names.camelCase}Id")
|
|
288
297
|
@CacheInvalidate(${names.camelCase}Meta, "${names.camelCase}Id")
|
|
289
298
|
async update(
|
|
299
|
+
@Req() request: AuthenticatedRequest,
|
|
290
300
|
@Res() reply: FastifyReply,
|
|
291
301
|
@Body() body: ${names.pascalCase}PutDTO,
|
|
292
302
|
) {
|
|
@@ -297,6 +307,7 @@ export class ${names.pascalCase}Controller {
|
|
|
297
307
|
@HttpCode(HttpStatus.NO_CONTENT)
|
|
298
308
|
@CacheInvalidate(${names.camelCase}Meta, "${names.camelCase}Id")
|
|
299
309
|
async delete(
|
|
310
|
+
@Req() request: AuthenticatedRequest,
|
|
300
311
|
@Res() reply: FastifyReply,
|
|
301
312
|
@Param("${names.camelCase}Id") ${names.camelCase}Id: string,
|
|
302
313
|
) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controller.template.js","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/controller.template.ts"],"names":[],"mappings":";;AAYA,
|
|
1
|
+
{"version":3,"file":"controller.template.js","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/controller.template.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dto.post.template.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/dto.post.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA0B,MAAM,kCAAkC,CAAC;AA4BxF;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"dto.post.template.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/dto.post.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA0B,MAAM,kCAAkC,CAAC;AA4BxF;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CA4O9D"}
|
|
@@ -41,13 +41,20 @@ function generatePostDTOFile(data) {
|
|
|
41
41
|
// Skip contextKey relationships (like Author)
|
|
42
42
|
if (rel.contextKey)
|
|
43
43
|
continue;
|
|
44
|
+
const hasFields = rel.fields && rel.fields.length > 0;
|
|
45
|
+
// For MANY relationships with fields, ItemDTO is used (no external DTO import needed)
|
|
46
|
+
if (rel.cardinality === "many" && hasFields) {
|
|
47
|
+
continue;
|
|
48
|
+
}
|
|
44
49
|
const importPath = getDtoImportPath(rel, targetDir, names.kebabCase);
|
|
45
50
|
if (!dtoImportPaths.has(importPath)) {
|
|
46
51
|
dtoImportPaths.set(importPath, new Set());
|
|
47
52
|
}
|
|
48
|
-
//
|
|
49
|
-
|
|
50
|
-
|
|
53
|
+
// Import DataDTO for ONE relationships, DataListDTO for MANY relationships (without fields)
|
|
54
|
+
if (rel.cardinality === "one") {
|
|
55
|
+
dtoImportPaths.get(importPath).add(`${rel.relatedEntity.name}DataDTO`);
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
51
58
|
dtoImportPaths.get(importPath).add(`${rel.relatedEntity.name}DataListDTO`);
|
|
52
59
|
}
|
|
53
60
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dto.post.template.js","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/dto.post.template.ts"],"names":[],"mappings":";;AAkCA,
|
|
1
|
+
{"version":3,"file":"dto.post.template.js","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/dto.post.template.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dto.put.template.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/dto.put.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA0B,MAAM,kCAAkC,CAAC;AA4BxF;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"dto.put.template.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/dto.put.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA0B,MAAM,kCAAkC,CAAC;AA4BxF;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CA4O7D"}
|
|
@@ -42,13 +42,20 @@ function generatePutDTOFile(data) {
|
|
|
42
42
|
// Skip contextKey relationships (like Author) - same as POST
|
|
43
43
|
if (rel.contextKey)
|
|
44
44
|
continue;
|
|
45
|
+
const hasFields = rel.fields && rel.fields.length > 0;
|
|
46
|
+
// For MANY relationships with fields, ItemDTO is used (no external DTO import needed)
|
|
47
|
+
if (rel.cardinality === "many" && hasFields) {
|
|
48
|
+
continue;
|
|
49
|
+
}
|
|
45
50
|
const importPath = getDtoImportPath(rel, targetDir, names.kebabCase);
|
|
46
51
|
if (!dtoImportPaths.has(importPath)) {
|
|
47
52
|
dtoImportPaths.set(importPath, new Set());
|
|
48
53
|
}
|
|
49
|
-
//
|
|
50
|
-
|
|
51
|
-
|
|
54
|
+
// Import DataDTO for ONE relationships, DataListDTO for MANY relationships (without fields)
|
|
55
|
+
if (rel.cardinality === "one") {
|
|
56
|
+
dtoImportPaths.get(importPath).add(`${rel.relatedEntity.name}DataDTO`);
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
52
59
|
dtoImportPaths.get(importPath).add(`${rel.relatedEntity.name}DataListDTO`);
|
|
53
60
|
}
|
|
54
61
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dto.put.template.js","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/dto.put.template.ts"],"names":[],"mappings":";;AAmCA,
|
|
1
|
+
{"version":3,"file":"dto.put.template.js","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/dto.put.template.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dto.relationship.template.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/dto.relationship.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAIxF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"dto.relationship.template.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/dto.relationship.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAIxF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,GAAG,IAAI,CAoM7E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,sBAAsB,EAAE,GAAG,sBAAsB,EAAE,CAEtG"}
|
|
@@ -26,7 +26,9 @@ function generateRelationshipDTOFile(data) {
|
|
|
26
26
|
if (manyRelationships.length === 0) {
|
|
27
27
|
return null;
|
|
28
28
|
}
|
|
29
|
-
//
|
|
29
|
+
// Check if any relationship has fields (determines if IsOptional is needed)
|
|
30
|
+
const hasAnyFields = manyRelationships.some((rel) => rel.fields && rel.fields.length > 0);
|
|
31
|
+
// Collect all field types for additional imports
|
|
30
32
|
const relPropertyTypes = [];
|
|
31
33
|
for (const rel of manyRelationships) {
|
|
32
34
|
if (rel.fields && rel.fields.length > 0) {
|
|
@@ -35,21 +37,28 @@ function generateRelationshipDTOFile(data) {
|
|
|
35
37
|
}
|
|
36
38
|
}
|
|
37
39
|
}
|
|
38
|
-
// Build validator imports
|
|
39
|
-
const validatorImports =
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
if (
|
|
48
|
-
validatorImports.push("ValidateNested");
|
|
49
|
-
if (!validatorImports.includes("IsOptional"))
|
|
40
|
+
// Build validator imports - only what's actually used in this template
|
|
41
|
+
const validatorImports = [
|
|
42
|
+
"IsArray",
|
|
43
|
+
"IsDefined",
|
|
44
|
+
"IsString",
|
|
45
|
+
"IsUUID",
|
|
46
|
+
"ValidateNested",
|
|
47
|
+
];
|
|
48
|
+
// IsOptional is only used when relationships have fields
|
|
49
|
+
if (hasAnyFields) {
|
|
50
50
|
validatorImports.push("IsOptional");
|
|
51
|
-
|
|
52
|
-
|
|
51
|
+
}
|
|
52
|
+
// Add field-specific validators from relationship property fields
|
|
53
|
+
for (const type of relPropertyTypes) {
|
|
54
|
+
const decorators = (0, type_utils_1.getValidationDecorators)(type, true);
|
|
55
|
+
for (const decorator of decorators) {
|
|
56
|
+
const match = decorator.match(/@(\w+)/);
|
|
57
|
+
if (match && !validatorImports.includes(match[1])) {
|
|
58
|
+
validatorImports.push(match[1]);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
53
62
|
// Generate DTO classes for each MANY relationship
|
|
54
63
|
const dtoClasses = [];
|
|
55
64
|
for (const rel of manyRelationships) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dto.relationship.template.js","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/dto.relationship.template.ts"],"names":[],"mappings":";;AAkBA,
|
|
1
|
+
{"version":3,"file":"dto.relationship.template.js","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/dto.relationship.template.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity.template.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/entity.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA0B,MAAM,kCAAkC,CAAC;AA2BxF;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"entity.template.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/entity.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA0B,MAAM,kCAAkC,CAAC;AA2BxF;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CA0J7D"}
|
|
@@ -45,6 +45,10 @@ function generateEntityFile(data) {
|
|
|
45
45
|
const entityImportsByPath = new Map();
|
|
46
46
|
const processedEntities = new Set();
|
|
47
47
|
for (const rel of relationships) {
|
|
48
|
+
// Skip self-referential relationships - the type is defined in this same file
|
|
49
|
+
if (rel.relatedEntity.name === names.pascalCase) {
|
|
50
|
+
continue;
|
|
51
|
+
}
|
|
48
52
|
if (!processedEntities.has(rel.relatedEntity.name)) {
|
|
49
53
|
processedEntities.add(rel.relatedEntity.name);
|
|
50
54
|
const importPath = getEntityImportPath(rel);
|
|
@@ -58,6 +62,10 @@ function generateEntityFile(data) {
|
|
|
58
62
|
const metaImportsByPath = new Map();
|
|
59
63
|
const processedMetas = new Set();
|
|
60
64
|
for (const rel of relationships) {
|
|
65
|
+
// Skip self-referential relationships - own meta is imported separately at the end
|
|
66
|
+
if (rel.relatedEntity.name === names.pascalCase) {
|
|
67
|
+
continue;
|
|
68
|
+
}
|
|
61
69
|
// Model is like "userMeta", "ownerMeta", "campaignMeta", etc.
|
|
62
70
|
if (!processedMetas.has(rel.model)) {
|
|
63
71
|
processedMetas.add(rel.model);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity.template.js","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/entity.template.ts"],"names":[],"mappings":";;AAoCA,
|
|
1
|
+
{"version":3,"file":"entity.template.js","sourceRoot":"","sources":["../../../../scripts/generate-module/templates/entity.template.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED