@rxap/schematics-ts-morph 16.1.0-dev.5 → 16.1.0-dev.6

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 (70) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/package.json +2 -2
  3. package/src/index.d.ts +2 -1
  4. package/src/index.js +2 -1
  5. package/src/index.js.map +1 -1
  6. package/src/lib/angular/coerce-dialog-table-action-component.js +2 -2
  7. package/src/lib/angular/coerce-dialog-table-action-component.js.map +1 -1
  8. package/src/lib/angular/coerce-form-definition-control.js +2 -3
  9. package/src/lib/angular/coerce-form-definition-control.js.map +1 -1
  10. package/src/lib/angular/coerce-form-definition.js +4 -4
  11. package/src/lib/angular/coerce-form-definition.js.map +1 -1
  12. package/src/lib/angular/coerce-proxy-remote-method-class.d.ts +1 -1
  13. package/src/lib/angular/coerce-proxy-remote-method-class.js +1 -1
  14. package/src/lib/angular/coerce-proxy-remote-method-class.js.map +1 -1
  15. package/src/lib/angular/coerce-table-parameters-from-route.js +4 -4
  16. package/src/lib/angular/coerce-table-parameters-from-route.js.map +1 -1
  17. package/src/lib/nest/add-operation-to-controller.d.ts +1 -1
  18. package/src/lib/nest/add-operation-to-controller.js +59 -55
  19. package/src/lib/nest/add-operation-to-controller.js.map +1 -1
  20. package/src/lib/nest/build-nest-controller-name.js +10 -0
  21. package/src/lib/nest/build-nest-controller-name.js.map +1 -1
  22. package/src/lib/nest/coerce-dto-class.d.ts +2 -7
  23. package/src/lib/nest/coerce-dto-class.js +44 -59
  24. package/src/lib/nest/coerce-dto-class.js.map +1 -1
  25. package/src/lib/nest/coerce-form-submit-operation.d.ts +2 -4
  26. package/src/lib/nest/coerce-form-submit-operation.js +10 -15
  27. package/src/lib/nest/coerce-form-submit-operation.js.map +1 -1
  28. package/src/lib/nest/coerce-get-by-id-operation.d.ts +9 -7
  29. package/src/lib/nest/coerce-get-by-id-operation.js +84 -56
  30. package/src/lib/nest/coerce-get-by-id-operation.js.map +1 -1
  31. package/src/lib/nest/coerce-get-children-operation.js +8 -40
  32. package/src/lib/nest/coerce-get-children-operation.js.map +1 -1
  33. package/src/lib/nest/coerce-get-data-grid-operation.d.ts +5 -4
  34. package/src/lib/nest/coerce-get-data-grid-operation.js +7 -17
  35. package/src/lib/nest/coerce-get-data-grid-operation.js.map +1 -1
  36. package/src/lib/nest/coerce-get-operation.d.ts +5 -0
  37. package/src/lib/nest/coerce-get-operation.js +11 -0
  38. package/src/lib/nest/coerce-get-operation.js.map +1 -0
  39. package/src/lib/nest/coerce-get-page-operation.d.ts +16 -17
  40. package/src/lib/nest/coerce-get-page-operation.js +106 -112
  41. package/src/lib/nest/coerce-get-page-operation.js.map +1 -1
  42. package/src/lib/nest/coerce-get-root-operation.d.ts +2 -5
  43. package/src/lib/nest/coerce-get-root-operation.js +7 -22
  44. package/src/lib/nest/coerce-get-root-operation.js.map +1 -1
  45. package/src/lib/nest/coerce-operation.d.ts +36 -9
  46. package/src/lib/nest/coerce-operation.js +182 -24
  47. package/src/lib/nest/coerce-operation.js.map +1 -1
  48. package/src/lib/nest/coerce-options-operation.js +13 -42
  49. package/src/lib/nest/coerce-options-operation.js.map +1 -1
  50. package/src/lib/nest/coerce-page-dto-class.d.ts +1 -0
  51. package/src/lib/nest/coerce-page-dto-class.js +7 -3
  52. package/src/lib/nest/coerce-page-dto-class.js.map +1 -1
  53. package/src/lib/nest/coerce-row-dto-class.d.ts +1 -0
  54. package/src/lib/nest/coerce-row-dto-class.js +11 -6
  55. package/src/lib/nest/coerce-row-dto-class.js.map +1 -1
  56. package/src/lib/nest/coerce-table-select-operation.js +6 -6
  57. package/src/lib/nest/coerce-table-select-operation.js.map +1 -1
  58. package/src/lib/nest/coerce-table-select-value-resolve-operation.d.ts +5 -1
  59. package/src/lib/nest/coerce-table-select-value-resolve-operation.js +23 -32
  60. package/src/lib/nest/coerce-table-select-value-resolve-operation.js.map +1 -1
  61. package/src/lib/nest/coerce-tree-operation.js +35 -44
  62. package/src/lib/nest/coerce-tree-operation.js.map +1 -1
  63. package/src/lib/nest/dto-class-property.d.ts +19 -0
  64. package/src/lib/nest/dto-class-property.js +26 -0
  65. package/src/lib/nest/dto-class-property.js.map +1 -0
  66. package/src/lib/nest/table-query-list.js +10 -2
  67. package/src/lib/nest/table-query-list.js.map +1 -1
  68. package/src/lib/nest/create-dto-class.d.ts +0 -24
  69. package/src/lib/nest/create-dto-class.js +0 -169
  70. package/src/lib/nest/create-dto-class.js.map +0 -1
@@ -1,34 +1,173 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CoerceOperation = exports.CoerceOperationParamList = void 0;
3
+ exports.CoerceOperation = exports.CoerceUpstreamDefaultOperationImplementation = exports.BuildUpstreamGetDataImplementation = exports.BuildDtoReturnImplementation = exports.BuiltDtoDataMapperImplementation = exports.CoerceOperationDtoClass = exports.BuildOperationDtoClassName = exports.CoerceUpstreamBasicOperationImplementation = void 0;
4
4
  const schematics_1 = require("@angular-devkit/schematics");
5
5
  const schematics_utilities_1 = require("@rxap/schematics-utilities");
6
+ const ts_morph_1 = require("@rxap/ts-morph");
6
7
  const utilities_1 = require("@rxap/utilities");
7
8
  const path_1 = require("path");
9
+ const ts_morph_2 = require("ts-morph");
8
10
  const ts_morph_transform_1 = require("../ts-morph-transform");
9
11
  const add_operation_to_controller_1 = require("./add-operation-to-controller");
10
12
  const build_nest_controller_name_1 = require("./build-nest-controller-name");
13
+ const coerce_dto_class_1 = require("./coerce-dto-class");
11
14
  const coerce_nest_controller_1 = require("./coerce-nest-controller");
12
- /**
13
- * @deprecated import from @rxap/ts-morph
14
- */
15
- function CoerceOperationParamList(paramList, classDeclaration) {
16
- var _a, _b;
17
- const currentControllerPath = (_b = (_a = classDeclaration.getDecoratorOrThrow('Controller').getArguments()[0]) === null || _a === void 0 ? void 0 : _a.getText()) !== null && _b !== void 0 ? _b : '';
18
- const fragments = currentControllerPath.split('/');
19
- const parameters = fragments.filter(fragment => fragment.startsWith(':'));
20
- for (const parameter of parameters) {
21
- if (!paramList.some(param => param.name === parameter.substr(1))) {
22
- paramList.push({ name: parameter.substr(1) });
23
- }
15
+ function CoerceUpstreamBasicOperationImplementation(classDeclaration, moduleSourceFile, upstream) {
16
+ if ((0, ts_morph_1.IsNormalizedOpenApiUpstreamOptions)(upstream)) {
17
+ const sourceFile = classDeclaration.getSourceFile();
18
+ const commandClassName = (0, ts_morph_1.OperationIdToCommandClassName)(upstream.operationId);
19
+ (0, ts_morph_1.CoerceImports)(sourceFile, {
20
+ namedImports: [commandClassName],
21
+ moduleSpecifier: (0, ts_morph_1.OperationIdToCommandClassImportPath)(upstream.operationId, upstream.scope, upstream.isService),
22
+ });
23
+ (0, ts_morph_1.CoerceNestModuleImport)(moduleSourceFile, {
24
+ moduleName: 'HttpModule',
25
+ moduleSpecifier: '@nestjs/axios',
26
+ });
27
+ (0, ts_morph_1.CoerceNestModuleProvider)(moduleSourceFile, {
28
+ providerObject: 'Logger',
29
+ moduleSpecifier: '@nestjs/common',
30
+ });
31
+ (0, ts_morph_1.CoerceNestModuleProvider)(moduleSourceFile, {
32
+ providerObject: commandClassName,
33
+ moduleSpecifier: (0, ts_morph_1.OperationIdToCommandClassImportPath)(upstream.operationId, upstream.scope, upstream.isService),
34
+ });
35
+ const commandMemberName = (0, utilities_1.camelize)(commandClassName);
36
+ (0, ts_morph_1.CoerceImports)(sourceFile, {
37
+ namedImports: ['Inject'],
38
+ moduleSpecifier: '@nestjs/common',
39
+ });
40
+ (0, ts_morph_1.CoercePropertyDeclaration)(classDeclaration, commandMemberName, {
41
+ type: commandClassName,
42
+ hasQuestionToken: true,
43
+ scope: ts_morph_2.Scope.Private,
44
+ isReadonly: true,
45
+ decorators: [
46
+ {
47
+ name: 'Inject',
48
+ arguments: [commandClassName],
49
+ },
50
+ ],
51
+ });
52
+ return {
53
+ className: commandClassName,
54
+ memberName: commandMemberName,
55
+ };
56
+ }
57
+ throw new Error(`Upstream kind '${upstream.kind}' not supported`);
58
+ }
59
+ exports.CoerceUpstreamBasicOperationImplementation = CoerceUpstreamBasicOperationImplementation;
60
+ function BuildOperationDtoClassName(controllerName, options) {
61
+ const { dtoClassNameSuffix, dtoClassName, } = options;
62
+ return dtoClassName !== null && dtoClassName !== void 0 ? dtoClassName : (dtoClassNameSuffix ? (0, utilities_1.CoerceSuffix)(controllerName, dtoClassNameSuffix) : controllerName);
63
+ }
64
+ exports.BuildOperationDtoClassName = BuildOperationDtoClassName;
65
+ function CoerceOperationDtoClass(classDeclaration, controllerName, moduleSourceFile, options) {
66
+ const sourceFile = classDeclaration.getSourceFile();
67
+ const project = sourceFile.getProject();
68
+ const { dtoClassNameSuffix, dtoClassName, propertyList = [], isReturnVoid, buildOperationDtoClassName = BuildOperationDtoClassName } = options;
69
+ let dto = null;
70
+ if (propertyList.length > 0 || isReturnVoid === false || dtoClassNameSuffix || dtoClassName) {
71
+ dto = (0, coerce_dto_class_1.CoerceDtoClass)({
72
+ project,
73
+ name: buildOperationDtoClassName(controllerName, options),
74
+ propertyList,
75
+ });
24
76
  }
77
+ return dto;
78
+ }
79
+ exports.CoerceOperationDtoClass = CoerceOperationDtoClass;
80
+ function BuiltDtoDataMapperImplementation(classDeclaration, moduleSourceFile, dto, options) {
81
+ const { propertyList = [], upstream, isArray, } = options;
82
+ return () => {
83
+ if (upstream) {
84
+ const mapper = {};
85
+ for (const property of propertyList) {
86
+ mapper[property.name] = `data.${property.name}`;
87
+ }
88
+ if (isArray) {
89
+ return w => {
90
+ w.write('data.map(item => (');
91
+ ts_morph_2.Writers.object(mapper)(w);
92
+ w.write('))');
93
+ };
94
+ }
95
+ else {
96
+ return ts_morph_2.Writers.object(mapper);
97
+ }
98
+ }
99
+ else {
100
+ return isArray ? '[]' : '{}';
101
+ }
102
+ };
103
+ }
104
+ exports.BuiltDtoDataMapperImplementation = BuiltDtoDataMapperImplementation;
105
+ function BuildDtoReturnImplementation(classDeclaration, moduleSourceFile, dto, options) {
106
+ return (operationOptions) => {
107
+ var _a;
108
+ const { isArray, isReturnVoid = !dto, builtDtoDataMapperImplementation = BuiltDtoDataMapperImplementation, } = options;
109
+ if (!isReturnVoid && dto) {
110
+ const sourceFile = classDeclaration.getSourceFile();
111
+ (0, ts_morph_1.CoerceImports)(sourceFile, {
112
+ namedImports: ['ToDtoInstance'],
113
+ moduleSpecifier: '@rxap/nest-dto',
114
+ });
115
+ const mapper = builtDtoDataMapperImplementation(classDeclaration, moduleSourceFile, dto, options)(operationOptions);
116
+ operationOptions.returnType = dto.className + (isArray ? '[]' : '');
117
+ (_a = operationOptions.statements) !== null && _a !== void 0 ? _a : (operationOptions.statements = []);
118
+ operationOptions.statements = (0, utilities_1.coerceArray)(operationOptions.statements);
119
+ operationOptions.statements.push('return ToDtoInstance(', dto.className + ',', w => {
120
+ if (typeof mapper === 'string') {
121
+ w.write(mapper);
122
+ }
123
+ else {
124
+ mapper(w);
125
+ }
126
+ w.write(',');
127
+ }, ');');
128
+ }
129
+ };
130
+ }
131
+ exports.BuildDtoReturnImplementation = BuildDtoReturnImplementation;
132
+ function BuildUpstreamGetDataImplementation(classDeclaration, moduleSourceFile, dto, options) {
133
+ return (operationOptions) => {
134
+ var _a;
135
+ const { buildUpstreamGetParametersImplementation = (() => () => ''), upstream, } = options;
136
+ if (upstream) {
137
+ if ((0, ts_morph_1.IsNormalizedOpenApiUpstreamOptions)(upstream)) {
138
+ const { memberName: commandMemberName } = CoerceUpstreamBasicOperationImplementation(classDeclaration, moduleSourceFile, upstream);
139
+ const commandParameter = buildUpstreamGetParametersImplementation(classDeclaration, moduleSourceFile, dto, options)(operationOptions);
140
+ (_a = operationOptions.statements) !== null && _a !== void 0 ? _a : (operationOptions.statements = []);
141
+ operationOptions.statements = (0, utilities_1.coerceArray)(operationOptions.statements);
142
+ operationOptions.statements.push(w => {
143
+ w.write(`const data = await this.${commandMemberName}.execute(`);
144
+ if (typeof commandParameter === 'function') {
145
+ commandParameter(w);
146
+ }
147
+ else {
148
+ w.write(commandParameter);
149
+ }
150
+ w.write(');');
151
+ });
152
+ }
153
+ }
154
+ };
155
+ }
156
+ exports.BuildUpstreamGetDataImplementation = BuildUpstreamGetDataImplementation;
157
+ function CoerceUpstreamDefaultOperationImplementation(classDeclaration, moduleSourceFile, dto, options) {
158
+ return (operationOptions) => {
159
+ const { upstream, buildDtoReturnImplementation = BuildDtoReturnImplementation, buildUpstreamGetDataImplementation = BuildUpstreamGetDataImplementation, } = options;
160
+ if (upstream) {
161
+ operationOptions.isAsync = true;
162
+ buildUpstreamGetDataImplementation(classDeclaration, moduleSourceFile, dto, options)(operationOptions);
163
+ }
164
+ buildDtoReturnImplementation(classDeclaration, moduleSourceFile, dto, options)(operationOptions);
165
+ };
25
166
  }
26
- exports.CoerceOperationParamList = CoerceOperationParamList;
167
+ exports.CoerceUpstreamDefaultOperationImplementation = CoerceUpstreamDefaultOperationImplementation;
27
168
  function CoerceOperation(options) {
28
- let { nestModule, controllerName, project, paramList, feature, shared, tsMorphTransform, operationName, skipCoerce, controllerPath, queryList, path, overwriteControllerPath, directory, } = options;
29
- tsMorphTransform !== null && tsMorphTransform !== void 0 ? tsMorphTransform : (tsMorphTransform = () => ({}));
30
- paramList !== null && paramList !== void 0 ? paramList : (paramList = []);
31
- queryList !== null && queryList !== void 0 ? queryList : (queryList = []);
169
+ const { controllerName, project, paramList = [], feature, shared, tsMorphTransform = utilities_1.noop, operationName, skipCoerce, controllerPath, queryList = [], coerceUpstreamOperationImplementation = CoerceUpstreamDefaultOperationImplementation, coerceOperationDtoClass = CoerceOperationDtoClass, } = options;
170
+ let { nestModule, directory, path } = options;
32
171
  /**
33
172
  * If the module is not specified. This controller has an own module. Else the
34
173
  * module is originated by another controller.
@@ -57,8 +196,19 @@ function CoerceOperation(options) {
57
196
  nestModule = nestController;
58
197
  }
59
198
  directory = (0, path_1.join)(directory !== null && directory !== void 0 ? directory : '', nestModule);
199
+ const operationPathParameters = paramList.filter(p => !p.fromParent).map(p => p.name);
200
+ if (operationPathParameters.length) {
201
+ if (!path) {
202
+ path = operationPathParameters.map(p => `:${p}`).join('/');
203
+ }
204
+ else {
205
+ const notFound = operationPathParameters.filter(p => !path.includes(p));
206
+ path += '/' + notFound.map(p => `:${p}`).join('/');
207
+ }
208
+ }
60
209
  return (0, schematics_1.chain)([
61
- () => console.log(`Coerce Operation '${operationName}' with path '${path !== null && path !== void 0 ? path : '<empty>'}' in the controller '${nestController}' in the module '${nestModule}'`),
210
+ () => console.log(`Coerce Operation '${operationName}' with path '${path !== null && path !== void 0 ? path : '<empty>'}' in the controller '${nestController}' in the module '${nestModule}'`.blue),
211
+ () => console.log(`Operation path parameters: ${paramList.map(p => (p.fromParent ? '^' : '') + p.name).join(', ')}`.grey),
62
212
  (0, coerce_nest_controller_1.CoerceNestController)({
63
213
  project,
64
214
  feature,
@@ -68,9 +218,6 @@ function CoerceOperation(options) {
68
218
  name: nestController,
69
219
  nestModule,
70
220
  }),
71
- // IMPORTANT: the use of the filePath parameter for the narrow loading of the source file CAN NOT BE USED here
72
- // because sub functions may need to load other source files that are then not loaded into the
73
- // project instance!
74
221
  (0, ts_morph_transform_1.TsMorphNestProjectTransformRule)({
75
222
  project,
76
223
  feature,
@@ -80,9 +227,20 @@ function CoerceOperation(options) {
80
227
  // controller and module source file
81
228
  filter: false,
82
229
  }, (project, [controllerSourceFile, moduleSourceFile]) => {
230
+ var _a;
83
231
  const classDeclaration = controllerSourceFile.getClassOrThrow(`${(0, schematics_utilities_1.classify)(nestController)}Controller`);
84
- const operationOptions = tsMorphTransform(project, controllerSourceFile, classDeclaration, nestController, moduleSourceFile);
232
+ const dto = coerceOperationDtoClass(classDeclaration, nestController, moduleSourceFile, options);
233
+ if (dto) {
234
+ (0, ts_morph_1.CoerceImports)(controllerSourceFile, {
235
+ namedImports: [dto.className],
236
+ moduleSpecifier: dto.filePath,
237
+ });
238
+ }
239
+ let operationOptions = {};
240
+ coerceUpstreamOperationImplementation(classDeclaration, moduleSourceFile, dto, options)(operationOptions);
241
+ operationOptions = Object.assign(Object.assign({}, operationOptions), (_a = tsMorphTransform(project, controllerSourceFile, classDeclaration, nestController, moduleSourceFile, dto)) !== null && _a !== void 0 ? _a : {});
85
242
  if (controllerPath) {
243
+ console.log(`Overwrite controller path with '${controllerPath}' for operation '${operationName}' in controller '${nestController}' in module '${nestModule}'`.yellow);
86
244
  classDeclaration.getDecoratorOrThrow('Controller').set({
87
245
  arguments: [w => w.quote(controllerPath)],
88
246
  });
@@ -97,7 +255,7 @@ function CoerceOperation(options) {
97
255
  ],
98
256
  });
99
257
  }
100
- CoerceOperationParamList(paramList, classDeclaration);
258
+ (0, ts_morph_1.CoerceOperationParamList)(paramList, classDeclaration);
101
259
  (0, add_operation_to_controller_1.AddOperationToController)(controllerSourceFile, classDeclaration, operationName, Object.assign({ isAsync: true, paramList,
102
260
  queryList,
103
261
  path }, operationOptions));
@@ -1 +1 @@
1
- {"version":3,"file":"coerce-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-operation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coerce-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-operation.ts"],"names":[],"mappings":"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"}
@@ -2,50 +2,21 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CoerceOptionsOperationRule = void 0;
4
4
  const utilities_1 = require("@rxap/utilities");
5
- const coerce_imports_1 = require("../ts-morph/coerce-imports");
6
- const ts_morph_1 = require("@rxap/ts-morph");
7
- const coerce_dto_class_1 = require("./coerce-dto-class");
8
5
  const coerce_operation_1 = require("./coerce-operation");
9
6
  function CoerceOptionsOperationRule(options) {
10
- let { responseDtoName, control, context, } = options;
11
- responseDtoName !== null && responseDtoName !== void 0 ? responseDtoName : (responseDtoName = (0, utilities_1.joinWithDash)([context, control.name, 'options']));
12
- return (0, coerce_operation_1.CoerceOperation)(Object.assign(Object.assign({}, options), { tsMorphTransform: (project, sourceFile, classDeclaration, controllerName) => {
13
- const { className, filePath, } = (0, coerce_dto_class_1.CoerceDtoClass)({
14
- project,
15
- name: responseDtoName,
16
- propertyList: [
17
- {
18
- name: 'display',
19
- type: 'string',
20
- },
21
- {
22
- name: 'value',
23
- type: (0, ts_morph_1.WriteType)(control, sourceFile),
24
- },
25
- ],
26
- });
27
- (0, coerce_imports_1.CoerceImports)(sourceFile, {
28
- namedImports: [className],
29
- moduleSpecifier: filePath,
30
- });
31
- (0, coerce_imports_1.CoerceImports)(sourceFile, {
32
- namedImports: ['plainToInstance'],
33
- moduleSpecifier: 'class-transformer',
34
- });
35
- (0, coerce_imports_1.CoerceImports)(sourceFile, {
36
- namedImports: ['classTransformOptions'],
37
- moduleSpecifier: '@rxap/nest-utilities',
38
- });
39
- return {
40
- returnType: `Array<${className}>`,
41
- statements: [
42
- 'return plainToInstance(',
43
- className + ',',
44
- '[],',
45
- 'classTransformOptions',
46
- ');',
47
- ],
48
- };
7
+ const { control, isArray = true, responseDtoName, propertyList = [
8
+ {
9
+ name: 'display',
10
+ type: 'string',
11
+ },
12
+ {
13
+ name: 'value',
14
+ type: control,
15
+ },
16
+ ], } = options;
17
+ return (0, coerce_operation_1.CoerceOperation)(Object.assign(Object.assign({}, options), { propertyList,
18
+ isArray, buildOperationDtoClassName: (controllerName, { dtoClassName, dtoClassNameSuffix }) => {
19
+ return dtoClassName !== null && dtoClassName !== void 0 ? dtoClassName : (dtoClassNameSuffix ? (0, utilities_1.CoerceSuffix)(responseDtoName !== null && responseDtoName !== void 0 ? responseDtoName : (0, utilities_1.joinWithDash)([dtoClassName, 'control', control.name, 'options']), dtoClassNameSuffix) : responseDtoName !== null && responseDtoName !== void 0 ? responseDtoName : (0, utilities_1.joinWithDash)([dtoClassName, 'control', control.name, 'options']));
49
20
  } }));
50
21
  }
51
22
  exports.CoerceOptionsOperationRule = CoerceOptionsOperationRule;
@@ -1 +1 @@
1
- {"version":3,"file":"coerce-options-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-options-operation.ts"],"names":[],"mappings":";;;AACA,+CAA+C;AAC/C,+DAA2D;AAC3D,6CAA2C;AAE3C,yDAAoD;AACpD,yDAG4B;AAO5B,SAAgB,0BAA0B,CAAC,OAAoD;IAC7F,IAAI,EACF,eAAe,EACf,OAAO,EACP,OAAO,GACR,GAAG,OAAO,CAAC;IACZ,eAAe,aAAf,eAAe,cAAf,eAAe,IAAf,eAAe,GAAK,IAAA,wBAAY,EAAC,CAAE,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,CAAE,CAAC,EAAC;IACvE,OAAO,IAAA,kCAAe,kCACjB,OAAO,KACV,gBAAgB,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,EAAE;YAE1E,MAAM,EACJ,SAAS,EACT,QAAQ,GACT,GAAG,IAAA,iCAAc,EAAC;gBACjB,OAAO;gBACP,IAAI,EAAE,eAAgB;gBACtB,YAAY,EAAE;oBACZ;wBACE,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,QAAQ;qBACf;oBACD;wBACE,IAAI,EAAE,OAAO;wBACb,IAAI,EAAE,IAAA,oBAAS,EAAC,OAAO,EAAE,UAAU,CAAC;qBACrC;iBACF;aACF,CAAC,CAAC;YAEH,IAAA,8BAAa,EAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,SAAS,CAAE;gBAC3B,eAAe,EAAE,QAAQ;aAC1B,CAAC,CAAC;YACH,IAAA,8BAAa,EAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,iBAAiB,CAAE;gBACnC,eAAe,EAAE,mBAAmB;aACrC,CAAC,CAAC;YACH,IAAA,8BAAa,EAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,uBAAuB,CAAE;gBACzC,eAAe,EAAE,sBAAsB;aACxC,CAAC,CAAC;YAEH,OAAO;gBACL,UAAU,EAAE,SAAU,SAAU,GAAG;gBACnC,UAAU,EAAE;oBACV,yBAAyB;oBACzB,SAAS,GAAG,GAAG;oBACf,KAAK;oBACL,uBAAuB;oBACvB,IAAI;iBACL;aACF,CAAC;QACJ,CAAC,IACD,CAAC;AACL,CAAC;AAtDD,gEAsDC"}
1
+ {"version":3,"file":"coerce-options-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-options-operation.ts"],"names":[],"mappings":";;;AACA,+CAGyB;AAEzB,yDAG4B;AAO5B,SAAgB,0BAA0B,CAAC,OAAoD;IAC7F,MAAM,EACJ,OAAO,EACP,OAAO,GAAG,IAAI,EACd,eAAe,EACf,YAAY,GAAG;QACb;YACE,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,QAAQ;SACf;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,OAAO;SACd;KACF,GACF,GAAG,OAAO,CAAC;IACZ,OAAO,IAAA,kCAAe,kCACjB,OAAO,KACV,YAAY;QACZ,OAAO,EACP,0BAA0B,EAAE,CAAC,cAAc,EAAE,EAAE,YAAY,EAAE,kBAAkB,EAAE,EAAE,EAAE;YACnF,OAAO,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,CACrB,kBAAkB,CAAC,CAAC,CAAC,IAAA,wBAAY,EAAC,eAAe,aAAf,eAAe,cAAf,eAAe,GAAI,IAAA,wBAAY,EAAC,CAAE,YAAY,EAAE,SAAS,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,CAAE,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,eAAe,aAAf,eAAe,cAAf,eAAe,GAAI,IAAA,wBAAY,EAAC,CAAE,YAAY,EAAE,SAAS,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,CAAE,CAAC,CACrO,CAAC;QACJ,CAAC,IACD,CAAC;AACL,CAAC;AA1BD,gEA0BC"}
@@ -3,4 +3,5 @@ export interface CoercePageDtoClassOptions extends CoerceDtoClassOptions {
3
3
  rowClassName: string;
4
4
  rowFilePath: string;
5
5
  }
6
+ export declare function BuildPageDtoClassName(name: string): string;
6
7
  export declare function CoercePageDtoClass(options: CoercePageDtoClassOptions): import("./coerce-dto-class").CoerceDtoClassOutput;
@@ -1,11 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CoercePageDtoClass = void 0;
3
+ exports.CoercePageDtoClass = exports.BuildPageDtoClassName = void 0;
4
4
  const schematics_utilities_1 = require("@rxap/schematics-utilities");
5
5
  const ts_morph_1 = require("@rxap/ts-morph");
6
6
  const utilities_1 = require("@rxap/utilities");
7
7
  const path_1 = require("path");
8
8
  const coerce_dto_class_1 = require("./coerce-dto-class");
9
+ function BuildPageDtoClassName(name) {
10
+ return (0, schematics_utilities_1.CoerceSuffix)(name, '-page');
11
+ }
12
+ exports.BuildPageDtoClassName = BuildPageDtoClassName;
9
13
  function CoercePageDtoClass(options) {
10
14
  const { project, name, propertyList = [], rowClassName, rowFilePath, tsMorphTransform = utilities_1.noop, } = options;
11
15
  (0, utilities_1.CoerceArrayItems)(propertyList, [
@@ -44,8 +48,8 @@ function CoercePageDtoClass(options) {
44
48
  isType: true,
45
49
  isOptional: true,
46
50
  }
47
- ]);
48
- return (0, coerce_dto_class_1.CoerceDtoClass)(Object.assign(Object.assign({}, options), { project, name: (0, schematics_utilities_1.CoerceSuffix)(name, '-page'), propertyList, tsMorphTransform: (p, sourceFile, classDeclaration) => {
51
+ ], (a, b) => a.name === b.name);
52
+ return (0, coerce_dto_class_1.CoerceDtoClass)(Object.assign(Object.assign({}, options), { project, name: BuildPageDtoClassName(name), propertyList, tsMorphTransform: (p, sourceFile, classDeclaration) => {
49
53
  (0, ts_morph_1.CoerceImports)(sourceFile, [
50
54
  {
51
55
  namedImports: [rowClassName],
@@ -1 +1 @@
1
- {"version":3,"file":"coerce-page-dto-class.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-page-dto-class.ts"],"names":[],"mappings":";;;AAAA,qEAA0D;AAC1D,6CAA+C;AAC/C,+CAGyB;AACzB,+BAAgC;AAOhC,yDAG4B;AAQ5B,SAAgB,kBAAkB,CAAC,OAAkC;IACnE,MAAM,EACJ,OAAO,EACP,IAAI,EACJ,YAAY,GAAE,EAAE,EAChB,YAAY,EACZ,WAAW,EACX,gBAAgB,GAAG,gBAAI,GACxB,GAAG,OAAO,CAAC;IACZ,IAAA,4BAAgB,EAAC,YAAY,EAAE;QAC7B;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,IAAI;SACb;QACD;YACE,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,QAAQ;SACf;QACD;YACE,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,QAAQ;SACf;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,QAAQ;SACf;QACD;YACE,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,IAAI;SACjB;QACD;YACE,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,IAAI;SACjB;QACD;YACE,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE,IAAI;SACjB;KACF,CAAC,CAAC;IACH,OAAO,IAAA,iCAAc,kCAChB,OAAO,KACV,OAAO,EACP,IAAI,EAAE,IAAA,mCAAY,EAAC,IAAI,EAAE,OAAO,CAAC,EACjC,YAAY,EACZ,gBAAgB,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,gBAAgB,EAAE,EAAE;YACpD,IAAA,wBAAa,EAAC,UAAU,EAAE;gBACxB;oBACE,YAAY,EAAE,CAAE,YAAY,CAAE;oBAC9B,eAAe,EAAE,KAAM,IAAA,eAAQ,EAAC,WAAW,CAAE,EAAE;iBAChD;gBACD;oBACE,YAAY,EAAE,CAAE,gBAAgB,CAAE;oBAClC,eAAe,EAAE,gBAAgB;iBAClC;aACF,CAAC,CAAC;YACH,gBAAgB,CAAC,CAAC,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;QACpD,CAAC,IACD,CAAC;AACL,CAAC;AAjED,gDAiEC"}
1
+ {"version":3,"file":"coerce-page-dto-class.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-page-dto-class.ts"],"names":[],"mappings":";;;AAAA,qEAA0D;AAC1D,6CAA+C;AAC/C,+CAGyB;AACzB,+BAAgC;AAChC,yDAG4B;AAO5B,SAAgB,qBAAqB,CAAC,IAAY;IAChD,OAAO,IAAA,mCAAY,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACrC,CAAC;AAFD,sDAEC;AAED,SAAgB,kBAAkB,CAAC,OAAkC;IACnE,MAAM,EACJ,OAAO,EACP,IAAI,EACJ,YAAY,GAAE,EAAE,EAChB,YAAY,EACZ,WAAW,EACX,gBAAgB,GAAG,gBAAI,GACxB,GAAG,OAAO,CAAC;IACZ,IAAA,4BAAgB,EAAC,YAAY,EAAE;QAC7B;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,IAAI;SACb;QACD;YACE,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,QAAQ;SACf;QACD;YACE,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,QAAQ;SACf;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,QAAQ;SACf;QACD;YACE,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,IAAI;SACjB;QACD;YACE,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,IAAI;SACjB;QACD;YACE,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE,IAAI;SACjB;KACF,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;IAChC,OAAO,IAAA,iCAAc,kCAChB,OAAO,KACV,OAAO,EACP,IAAI,EAAE,qBAAqB,CAAC,IAAI,CAAC,EACjC,YAAY,EACZ,gBAAgB,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,gBAAgB,EAAE,EAAE;YACpD,IAAA,wBAAa,EAAC,UAAU,EAAE;gBACxB;oBACE,YAAY,EAAE,CAAE,YAAY,CAAE;oBAC9B,eAAe,EAAE,KAAM,IAAA,eAAQ,EAAC,WAAW,CAAE,EAAE;iBAChD;gBACD;oBACE,YAAY,EAAE,CAAE,gBAAgB,CAAE;oBAClC,eAAe,EAAE,gBAAgB;iBAClC;aACF,CAAC,CAAC;YACH,gBAAgB,CAAC,CAAC,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;QACpD,CAAC,IACD,CAAC;AACL,CAAC;AAjED,gDAiEC"}
@@ -6,4 +6,5 @@ export interface CoerceRowDtoClassOptions extends CoerceDtoClassOptions {
6
6
  */
7
7
  rowIdType?: string | null;
8
8
  }
9
+ export declare function BuildRowDtoClassName(name: string): string;
9
10
  export declare function CoerceRowDtoClass(options: CoerceRowDtoClassOptions): import("./coerce-dto-class").CoerceDtoClassOutput;
@@ -1,17 +1,22 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CoerceRowDtoClass = void 0;
3
+ exports.CoerceRowDtoClass = exports.BuildRowDtoClassName = void 0;
4
4
  const schematics_utilities_1 = require("@rxap/schematics-utilities");
5
+ const utilities_1 = require("@rxap/utilities");
5
6
  const coerce_dto_class_1 = require("./coerce-dto-class");
7
+ function BuildRowDtoClassName(name) {
8
+ return (0, schematics_utilities_1.CoerceSuffix)(name, '-row');
9
+ }
10
+ exports.BuildRowDtoClassName = BuildRowDtoClassName;
6
11
  function CoerceRowDtoClass(options) {
7
12
  const { rowIdType, project, name, propertyList = [], } = options;
8
- propertyList.unshift({
9
- name: '__rowId',
10
- type: rowIdType === null ? 'number' : rowIdType !== null && rowIdType !== void 0 ? rowIdType : 'string',
11
- });
13
+ (0, utilities_1.CoerceArrayItems)(propertyList, [{
14
+ name: '__rowId',
15
+ type: rowIdType === null ? 'number' : rowIdType !== null && rowIdType !== void 0 ? rowIdType : 'string',
16
+ }], (a, b) => a.name === b.name);
12
17
  return (0, coerce_dto_class_1.CoerceDtoClass)({
13
18
  project,
14
- name: (0, schematics_utilities_1.CoerceSuffix)(name, '-row'),
19
+ name: BuildRowDtoClassName(name),
15
20
  propertyList,
16
21
  });
17
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"coerce-row-dto-class.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-row-dto-class.ts"],"names":[],"mappings":";;;AAAA,qEAA0D;AAC1D,yDAG4B;AAU5B,SAAgB,iBAAiB,CAAC,OAAiC;IACjE,MAAM,EACJ,SAAS,EACT,OAAO,EACP,IAAI,EACJ,YAAY,GAAG,EAAE,GAClB,GAAG,OAAO,CAAC;IACZ,YAAY,CAAC,OAAO,CAClB;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,QAAQ;KAC5D,CACF,CAAC;IACF,OAAO,IAAA,iCAAc,EAAC;QACpB,OAAO;QACP,IAAI,EAAE,IAAA,mCAAY,EAAC,IAAI,EAAE,MAAM,CAAC;QAChC,YAAY;KACb,CAAC,CAAC;AACL,CAAC;AAlBD,8CAkBC"}
1
+ {"version":3,"file":"coerce-row-dto-class.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-row-dto-class.ts"],"names":[],"mappings":";;;AAAA,qEAA0D;AAC1D,+CAAmD;AACnD,yDAG4B;AAU5B,SAAgB,oBAAoB,CAAC,IAAY;IAC/C,OAAO,IAAA,mCAAY,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACpC,CAAC;AAFD,oDAEC;AAED,SAAgB,iBAAiB,CAAC,OAAiC;IACjE,MAAM,EACJ,SAAS,EACT,OAAO,EACP,IAAI,EACJ,YAAY,GAAG,EAAE,GAClB,GAAG,OAAO,CAAC;IACZ,IAAA,4BAAgB,EAAC,YAAY,EAAE,CAAC;YAC9B,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,QAAQ;SAC5D,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;IACjC,OAAO,IAAA,iCAAc,EAAC;QACpB,OAAO;QACP,IAAI,EAAE,oBAAoB,CAAC,IAAI,CAAC;QAChC,YAAY;KACb,CAAC,CAAC;AACL,CAAC;AAhBD,8CAgBC"}
@@ -1,20 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CoerceTableSelectOperationRule = void 0;
4
+ const ts_morph_1 = require("@rxap/ts-morph");
4
5
  const coerce_get_page_operation_1 = require("./coerce-get-page-operation");
5
6
  function CoerceTableSelectOperationRule(options) {
6
- let { propertyList, rowIdProperty, rowDisplayProperty, rowValueProperty, } = options;
7
- rowIdProperty !== null && rowIdProperty !== void 0 ? rowIdProperty : (rowIdProperty = 'uuid');
8
- rowDisplayProperty !== null && rowDisplayProperty !== void 0 ? rowDisplayProperty : (rowDisplayProperty = 'name');
9
- rowValueProperty !== null && rowValueProperty !== void 0 ? rowValueProperty : (rowValueProperty = rowIdProperty);
7
+ const { propertyList = [], rowIdProperty = 'uuid', rowDisplayProperty = 'name', rowValueProperty = rowIdProperty !== null && rowIdProperty !== void 0 ? rowIdProperty : 'uuid', } = options;
10
8
  propertyList.unshift({
11
9
  name: '__display',
12
- type: { name: 'string' },
10
+ type: (0, ts_morph_1.NormalizeTypeImport)('string'),
11
+ isArray: false,
13
12
  source: rowDisplayProperty,
14
13
  });
15
14
  propertyList.unshift({
16
15
  name: '__value',
17
- type: { name: 'string' },
16
+ type: (0, ts_morph_1.NormalizeTypeImport)('string'),
17
+ isArray: false,
18
18
  source: rowValueProperty,
19
19
  });
20
20
  return (0, coerce_get_page_operation_1.CoerceGetPageOperation)(Object.assign(Object.assign({}, options), { propertyList: propertyList, rowIdProperty }));
@@ -1 +1 @@
1
- {"version":3,"file":"coerce-table-select-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-table-select-operation.ts"],"names":[],"mappings":";;;AAAA,2EAGqC;AAOrC,SAAgB,8BAA8B,CAAC,OAA0C;IACvF,IAAI,EACF,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,gBAAgB,GACjB,GAAG,OAAO,CAAC;IAEZ,aAAa,aAAb,aAAa,cAAb,aAAa,IAAb,aAAa,GAAK,MAAM,EAAC;IACzB,kBAAkB,aAAlB,kBAAkB,cAAlB,kBAAkB,IAAlB,kBAAkB,GAAK,MAAM,EAAC;IAC9B,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,IAAhB,gBAAgB,GAAK,aAAa,EAAC;IAEnC,YAAY,CAAC,OAAO,CAAC;QACnB,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACxB,MAAM,EAAE,kBAAkB;KAC3B,CAAC,CAAC;IACH,YAAY,CAAC,OAAO,CAAC;QACnB,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACxB,MAAM,EAAE,gBAAgB;KACzB,CAAC,CAAC;IAEH,OAAO,IAAA,kDAAsB,kCACxB,OAAO,KACV,YAAY,EAAE,YAAY,EAC1B,aAAa,IACb,CAAC;AAEL,CAAC;AA7BD,wEA6BC"}
1
+ {"version":3,"file":"coerce-table-select-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-table-select-operation.ts"],"names":[],"mappings":";;;AAAA,6CAAqD;AACrD,2EAGqC;AAOrC,SAAgB,8BAA8B,CAAC,OAA0C;IACvF,MAAM,EACJ,YAAY,GAAG,EAAE,EACjB,aAAa,GAAE,MAAM,EACrB,kBAAkB,GAAG,MAAM,EAC3B,gBAAgB,GAAG,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,MAAM,GAC3C,GAAG,OAAO,CAAC;IAEZ,YAAY,CAAC,OAAO,CAAC;QACnB,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,IAAA,8BAAmB,EAAC,QAAQ,CAAC;QACnC,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,kBAAkB;KAC3B,CAAC,CAAC;IACH,YAAY,CAAC,OAAO,CAAC;QACnB,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,IAAA,8BAAmB,EAAC,QAAQ,CAAC;QACnC,OAAO,EAAE,KAAK;QACd,MAAM,EAAE,gBAAgB;KACzB,CAAC,CAAC;IAEH,OAAO,IAAA,kDAAsB,kCACxB,OAAO,KACV,YAAY,EAAE,YAAY,EAC1B,aAAa,IACb,CAAC;AAEL,CAAC;AA3BD,wEA2BC"}
@@ -1,8 +1,12 @@
1
- import { CoerceOperationOptions } from './coerce-operation';
1
+ import { ClassDeclaration, SourceFile, WriterFunction } from 'ts-morph';
2
+ import { CoerceDtoClassOutput } from './coerce-dto-class';
3
+ import { CoerceOperationOptions, TransformOperation } from './coerce-operation';
2
4
  export interface CoerceTableSelectValueResolveOperationOptions extends Omit<CoerceOperationOptions, 'tsMorphTransform'> {
3
5
  /**
4
6
  * The base name of the page and row DTO class name. Defaults to the controller name
5
7
  */
6
8
  responseDtoName?: string;
7
9
  }
10
+ export declare function BuiltTableSelectValueResolveDtoDataMapperImplementation(classDeclaration: ClassDeclaration, moduleSourceFile: SourceFile, dto: CoerceDtoClassOutput | null, options: Readonly<CoerceOperationOptions>): TransformOperation<string | WriterFunction>;
11
+ export declare function CoerceTableSelectValueResolveOperationDtoClass(classDeclaration: ClassDeclaration, controllerName: string, moduleSourceFile: SourceFile, options: Readonly<CoerceTableSelectValueResolveOperationOptions>): CoerceDtoClassOutput | null;
8
12
  export declare function CoerceTableSelectValueResolveOperationRule(options: CoerceTableSelectValueResolveOperationOptions): import("@angular-devkit/schematics").Rule;
@@ -1,40 +1,31 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CoerceTableSelectValueResolveOperationRule = void 0;
4
- const coerce_imports_1 = require("../ts-morph/coerce-imports");
3
+ exports.CoerceTableSelectValueResolveOperationRule = exports.CoerceTableSelectValueResolveOperationDtoClass = exports.BuiltTableSelectValueResolveDtoDataMapperImplementation = void 0;
5
4
  const coerce_operation_1 = require("./coerce-operation");
6
- const coerce_page_dto_class_1 = require("./coerce-page-dto-class");
7
5
  const coerce_row_dto_class_1 = require("./coerce-row-dto-class");
6
+ function BuiltTableSelectValueResolveDtoDataMapperImplementation(classDeclaration, moduleSourceFile, dto, options) {
7
+ return () => {
8
+ if (dto) {
9
+ return `this.to${dto.className}({} as any),`;
10
+ }
11
+ return '{}';
12
+ };
13
+ }
14
+ exports.BuiltTableSelectValueResolveDtoDataMapperImplementation = BuiltTableSelectValueResolveDtoDataMapperImplementation;
15
+ function CoerceTableSelectValueResolveOperationDtoClass(classDeclaration, controllerName, moduleSourceFile, options) {
16
+ const { responseDtoName = controllerName, } = options;
17
+ const sourceFile = classDeclaration.getSourceFile();
18
+ const project = sourceFile.getProject();
19
+ return (0, coerce_row_dto_class_1.CoerceRowDtoClass)({
20
+ project,
21
+ name: responseDtoName,
22
+ });
23
+ }
24
+ exports.CoerceTableSelectValueResolveOperationDtoClass = CoerceTableSelectValueResolveOperationDtoClass;
8
25
  function CoerceTableSelectValueResolveOperationRule(options) {
9
- let { responseDtoName, controllerName, } = options;
10
- responseDtoName !== null && responseDtoName !== void 0 ? responseDtoName : (responseDtoName = controllerName);
11
- return (0, coerce_operation_1.CoerceOperation)(Object.assign(Object.assign({}, options), { tsMorphTransform: (project, sourceFile, classDeclaration, controllerName) => {
12
- const { className: rowClassName, filePath: rowFilePath, } = (0, coerce_row_dto_class_1.CoerceRowDtoClass)({
13
- project,
14
- name: responseDtoName,
15
- });
16
- const { className: pageClassName, filePath: pageFilePath, } = (0, coerce_page_dto_class_1.CoercePageDtoClass)({
17
- project,
18
- name: responseDtoName,
19
- rowClassName,
20
- rowFilePath,
21
- });
22
- (0, coerce_imports_1.CoerceImports)(sourceFile, {
23
- moduleSpecifier: rowFilePath,
24
- namedImports: [rowClassName],
25
- });
26
- return {
27
- returnType: rowClassName,
28
- statements: [
29
- 'const item = {} as any',
30
- 'return plainToInstance(',
31
- rowClassName + ',',
32
- `this.to${rowClassName}(item),`,
33
- 'classTransformOptions',
34
- ')',
35
- ],
36
- };
37
- } }));
26
+ const { coerceOperationDtoClass = CoerceTableSelectValueResolveOperationDtoClass, buildDtoReturnImplementation = BuiltTableSelectValueResolveDtoDataMapperImplementation, } = options;
27
+ return (0, coerce_operation_1.CoerceOperation)(Object.assign(Object.assign({}, options), { coerceOperationDtoClass,
28
+ buildDtoReturnImplementation }));
38
29
  }
39
30
  exports.CoerceTableSelectValueResolveOperationRule = CoerceTableSelectValueResolveOperationRule;
40
31
  //# sourceMappingURL=coerce-table-select-value-resolve-operation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"coerce-table-select-value-resolve-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-table-select-value-resolve-operation.ts"],"names":[],"mappings":";;;AAAA,+DAA2D;AAC3D,yDAG4B;AAC5B,mEAA6D;AAC7D,iEAA2D;AAU3D,SAAgB,0CAA0C,CAAC,OAAsD;IAC/G,IAAI,EACF,eAAe,EACf,cAAc,GACf,GAAG,OAAO,CAAC;IACZ,eAAe,aAAf,eAAe,cAAf,eAAe,IAAf,eAAe,GAAK,cAAc,EAAC;IAEnC,OAAO,IAAA,kCAAe,kCACjB,OAAO,KACV,gBAAgB,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,EAAE;YAE1E,MAAM,EACJ,SAAS,EAAE,YAAY,EACvB,QAAQ,EAAE,WAAW,GACtB,GAAG,IAAA,wCAAiB,EAAC;gBACpB,OAAO;gBACP,IAAI,EAAE,eAAgB;aACvB,CAAC,CAAC;YAEH,MAAM,EACJ,SAAS,EAAE,aAAa,EACxB,QAAQ,EAAE,YAAY,GACvB,GAAG,IAAA,0CAAkB,EAAC;gBACrB,OAAO;gBACP,IAAI,EAAE,eAAgB;gBACtB,YAAY;gBACZ,WAAW;aACZ,CAAC,CAAC;YAEH,IAAA,8BAAa,EAAC,UAAU,EAAE;gBACxB,eAAe,EAAE,WAAW;gBAC5B,YAAY,EAAE,CAAE,YAAY,CAAE;aAC/B,CAAC,CAAC;YAEH,OAAO;gBACL,UAAU,EAAE,YAAY;gBACxB,UAAU,EAAE;oBACV,wBAAwB;oBACxB,yBAAyB;oBACzB,YAAY,GAAG,GAAG;oBAClB,UAAW,YAAa,SAAS;oBACjC,uBAAuB;oBACvB,GAAG;iBACJ;aACF,CAAC;QAEJ,CAAC,IACD,CAAC;AACL,CAAC;AAhDD,gGAgDC"}
1
+ {"version":3,"file":"coerce-table-select-value-resolve-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-table-select-value-resolve-operation.ts"],"names":[],"mappings":";;;AAMA,yDAI4B;AAC5B,iEAA2D;AAU3D,SAAgB,uDAAuD,CACrE,gBAAkC,EAClC,gBAA4B,EAC5B,GAAgC,EAChC,OAAyC;IAEzC,OAAO,GAAG,EAAE;QACV,IAAI,GAAG,EAAE;YACP,OAAO,UAAW,GAAG,CAAC,SAAU,cAAc,CAAC;SAChD;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;AACJ,CAAC;AAZD,0HAYC;AAED,SAAgB,8CAA8C,CAC5D,gBAAkC,EAClC,cAAsB,EACtB,gBAA4B,EAC5B,OAAgE;IAEhE,MAAM,EACJ,eAAe,GAAG,cAAc,GACjC,GAAG,OAAO,CAAC;IACZ,MAAM,UAAU,GAAG,gBAAgB,CAAC,aAAa,EAAE,CAAC;IACpD,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC;IACxC,OAAO,IAAA,wCAAiB,EAAC;QACvB,OAAO;QACP,IAAI,EAAE,eAAe;KACtB,CAAC,CAAC;AACL,CAAC;AAfD,wGAeC;AAED,SAAgB,0CAA0C,CAAC,OAAsD;IAC/G,MAAM,EACJ,uBAAuB,GAAG,8CAA8C,EACxE,4BAA4B,GAAG,uDAAuD,GACvF,GAAG,OAAO,CAAC;IAEZ,OAAO,IAAA,kCAAe,kCACjB,OAAO,KACV,uBAAuB;QACvB,4BAA4B,IAC5B,CAAC;AACL,CAAC;AAXD,gGAWC"}