@rxap/schematics-ts-morph 16.1.0-dev.2 → 16.1.0-dev.21

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 (118) hide show
  1. package/CHANGELOG.md +136 -0
  2. package/README.md +1 -1
  3. package/package.json +14 -12
  4. package/src/index.d.ts +8 -2
  5. package/src/index.js +8 -2
  6. package/src/index.js.map +1 -1
  7. package/src/lib/angular/coerce-component.d.ts +4 -1
  8. package/src/lib/angular/coerce-component.js +15 -7
  9. package/src/lib/angular/coerce-component.js.map +1 -1
  10. package/src/lib/angular/coerce-dialog-table-action-component.js +2 -2
  11. package/src/lib/angular/coerce-dialog-table-action-component.js.map +1 -1
  12. package/src/lib/angular/coerce-form-definition-array.d.ts +14 -0
  13. package/src/lib/angular/coerce-form-definition-array.js +87 -0
  14. package/src/lib/angular/coerce-form-definition-array.js.map +1 -0
  15. package/src/lib/angular/coerce-form-definition-control.d.ts +9 -12
  16. package/src/lib/angular/coerce-form-definition-control.js +68 -125
  17. package/src/lib/angular/coerce-form-definition-control.js.map +1 -1
  18. package/src/lib/angular/coerce-form-definition-form-control.d.ts +11 -0
  19. package/src/lib/angular/coerce-form-definition-form-control.js +66 -0
  20. package/src/lib/angular/coerce-form-definition-form-control.js.map +1 -0
  21. package/src/lib/angular/coerce-form-definition-group.d.ts +14 -0
  22. package/src/lib/angular/coerce-form-definition-group.js +80 -0
  23. package/src/lib/angular/coerce-form-definition-group.js.map +1 -0
  24. package/src/lib/angular/coerce-form-definition-type.d.ts +2 -2
  25. package/src/lib/angular/coerce-form-definition-type.js +16 -2
  26. package/src/lib/angular/coerce-form-definition-type.js.map +1 -1
  27. package/src/lib/angular/coerce-form-definition.d.ts +4 -4
  28. package/src/lib/angular/coerce-form-definition.js +24 -13
  29. package/src/lib/angular/coerce-form-definition.js.map +1 -1
  30. package/src/lib/angular/coerce-options-data-source.d.ts +3 -1
  31. package/src/lib/angular/coerce-options-data-source.js +35 -6
  32. package/src/lib/angular/coerce-options-data-source.js.map +1 -1
  33. package/src/lib/angular/coerce-proxy-remote-method-class.d.ts +4 -2
  34. package/src/lib/angular/coerce-proxy-remote-method-class.js +54 -35
  35. package/src/lib/angular/coerce-proxy-remote-method-class.js.map +1 -1
  36. package/src/lib/angular/coerce-table-parameters-from-route.js +4 -4
  37. package/src/lib/angular/coerce-table-parameters-from-route.js.map +1 -1
  38. package/src/lib/angular/coerce-table-select-resolve-value-method.js +2 -2
  39. package/src/lib/angular/coerce-table-select-resolve-value-method.js.map +1 -1
  40. package/src/lib/angular/coerce-tree-table-children-proxy-remote-method-class.js +2 -2
  41. package/src/lib/angular/coerce-tree-table-children-proxy-remote-method-class.js.map +1 -1
  42. package/src/lib/angular/coerce-tree-table-root-proxy-remote-method-class.d.ts +1 -0
  43. package/src/lib/angular/coerce-tree-table-root-proxy-remote-method-class.js +10 -3
  44. package/src/lib/angular/coerce-tree-table-root-proxy-remote-method-class.js.map +1 -1
  45. package/src/lib/angular/form-definition-utilities.d.ts +1 -0
  46. package/src/lib/angular/form-definition-utilities.js +7 -3
  47. package/src/lib/angular/form-definition-utilities.js.map +1 -1
  48. package/src/lib/nest/add-operation-to-controller.d.ts +1 -1
  49. package/src/lib/nest/add-operation-to-controller.js +59 -55
  50. package/src/lib/nest/add-operation-to-controller.js.map +1 -1
  51. package/src/lib/nest/build-nest-controller-name.js +10 -0
  52. package/src/lib/nest/build-nest-controller-name.js.map +1 -1
  53. package/src/lib/nest/coerce-autocomplete-options-operation.d.ts +12 -0
  54. package/src/lib/nest/coerce-autocomplete-options-operation.js +65 -0
  55. package/src/lib/nest/coerce-autocomplete-options-operation.js.map +1 -0
  56. package/src/lib/nest/coerce-autocomplete-table-select-value-resolve-operation.d.ts +7 -0
  57. package/src/lib/nest/coerce-autocomplete-table-select-value-resolve-operation.js +16 -0
  58. package/src/lib/nest/coerce-autocomplete-table-select-value-resolve-operation.js.map +1 -0
  59. package/src/lib/nest/coerce-dto-class.d.ts +3 -15
  60. package/src/lib/nest/coerce-dto-class.js +186 -149
  61. package/src/lib/nest/coerce-dto-class.js.map +1 -1
  62. package/src/lib/nest/coerce-form-submit-operation.d.ts +2 -4
  63. package/src/lib/nest/coerce-form-submit-operation.js +14 -15
  64. package/src/lib/nest/coerce-form-submit-operation.js.map +1 -1
  65. package/src/lib/nest/coerce-get-by-id-operation.d.ts +9 -7
  66. package/src/lib/nest/coerce-get-by-id-operation.js +102 -55
  67. package/src/lib/nest/coerce-get-by-id-operation.js.map +1 -1
  68. package/src/lib/nest/coerce-get-children-operation.js +8 -43
  69. package/src/lib/nest/coerce-get-children-operation.js.map +1 -1
  70. package/src/lib/nest/coerce-get-data-grid-operation.d.ts +5 -4
  71. package/src/lib/nest/coerce-get-data-grid-operation.js +7 -22
  72. package/src/lib/nest/coerce-get-data-grid-operation.js.map +1 -1
  73. package/src/lib/nest/coerce-get-operation.d.ts +5 -0
  74. package/src/lib/nest/coerce-get-operation.js +11 -0
  75. package/src/lib/nest/coerce-get-operation.js.map +1 -0
  76. package/src/lib/nest/coerce-get-page-operation.d.ts +17 -28
  77. package/src/lib/nest/coerce-get-page-operation.js +148 -119
  78. package/src/lib/nest/coerce-get-page-operation.js.map +1 -1
  79. package/src/lib/nest/coerce-get-root-operation.d.ts +6 -4
  80. package/src/lib/nest/coerce-get-root-operation.js +19 -26
  81. package/src/lib/nest/coerce-get-root-operation.js.map +1 -1
  82. package/src/lib/nest/coerce-operation.d.ts +32 -9
  83. package/src/lib/nest/coerce-operation.js +197 -29
  84. package/src/lib/nest/coerce-operation.js.map +1 -1
  85. package/src/lib/nest/coerce-options-operation.d.ts +6 -3
  86. package/src/lib/nest/coerce-options-operation.js +68 -43
  87. package/src/lib/nest/coerce-options-operation.js.map +1 -1
  88. package/src/lib/nest/coerce-page-dto-class.d.ts +3 -8
  89. package/src/lib/nest/coerce-page-dto-class.js +21 -20
  90. package/src/lib/nest/coerce-page-dto-class.js.map +1 -1
  91. package/src/lib/nest/coerce-row-dto-class.d.ts +3 -1
  92. package/src/lib/nest/coerce-row-dto-class.js +12 -10
  93. package/src/lib/nest/coerce-row-dto-class.js.map +1 -1
  94. package/src/lib/nest/coerce-submit-data-grid-operation.js +3 -7
  95. package/src/lib/nest/coerce-submit-data-grid-operation.js.map +1 -1
  96. package/src/lib/nest/coerce-table-select-operation.d.ts +4 -2
  97. package/src/lib/nest/coerce-table-select-operation.js +7 -14
  98. package/src/lib/nest/coerce-table-select-operation.js.map +1 -1
  99. package/src/lib/nest/coerce-table-select-value-resolve-operation.d.ts +9 -6
  100. package/src/lib/nest/coerce-table-select-value-resolve-operation.js +34 -33
  101. package/src/lib/nest/coerce-table-select-value-resolve-operation.js.map +1 -1
  102. package/src/lib/nest/coerce-tree-operation.js +36 -44
  103. package/src/lib/nest/coerce-tree-operation.js.map +1 -1
  104. package/src/lib/nest/dto-class-property.d.ts +11 -0
  105. package/src/lib/nest/dto-class-property.js +30 -0
  106. package/src/lib/nest/dto-class-property.js.map +1 -0
  107. package/src/lib/nest/table-query-list.js +10 -2
  108. package/src/lib/nest/table-query-list.js.map +1 -1
  109. package/src/lib/ts-morph/coerce-imports.js +1 -1
  110. package/src/lib/ts-morph/coerce-imports.js.map +1 -1
  111. package/src/lib/types/abstract-control.d.ts +8 -0
  112. package/src/lib/types/{form-definition-control.js → abstract-control.js} +1 -1
  113. package/src/lib/types/abstract-control.js.map +1 -0
  114. package/src/lib/nest/create-dto-class.d.ts +0 -24
  115. package/src/lib/nest/create-dto-class.js +0 -169
  116. package/src/lib/nest/create-dto-class.js.map +0 -1
  117. package/src/lib/types/form-definition-control.d.ts +0 -10
  118. package/src/lib/types/form-definition-control.js.map +0 -1
@@ -1,33 +1,180 @@
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");
7
+ const utilities_1 = require("@rxap/utilities");
6
8
  const path_1 = require("path");
9
+ const ts_morph_2 = require("ts-morph");
7
10
  const ts_morph_transform_1 = require("../ts-morph-transform");
8
11
  const add_operation_to_controller_1 = require("./add-operation-to-controller");
9
12
  const build_nest_controller_name_1 = require("./build-nest-controller-name");
13
+ const coerce_dto_class_1 = require("./coerce-dto-class");
10
14
  const coerce_nest_controller_1 = require("./coerce-nest-controller");
11
- /**
12
- * @deprecated import from @rxap/ts-morph
13
- */
14
- function CoerceOperationParamList(paramList, classDeclaration) {
15
- var _a, _b;
16
- const currentControllerPath = (_b = (_a = classDeclaration.getDecoratorOrThrow('Controller').getArguments()[0]) === null || _a === void 0 ? void 0 : _a.getText()) !== null && _b !== void 0 ? _b : '';
17
- const fragments = currentControllerPath.split('/');
18
- const parameters = fragments.filter(fragment => fragment.startsWith(':'));
19
- for (const parameter of parameters) {
20
- if (!paramList.some(param => param.name === parameter.substr(1))) {
21
- paramList.push({ name: parameter.substr(1) });
22
- }
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
+ hasExclamationToken: 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
+ };
23
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, (0, utilities_1.CoercePrefix)(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
+ });
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
+ var _a;
84
+ if (upstream) {
85
+ const mapper = {};
86
+ for (const property of propertyList) {
87
+ mapper[property.name] = `data.${(_a = property.source) !== null && _a !== void 0 ? _a : property.name}`;
88
+ }
89
+ if (isArray) {
90
+ return w => {
91
+ w.write('data.map(item => (');
92
+ ts_morph_2.Writers.object(mapper)(w);
93
+ w.write('))');
94
+ };
95
+ }
96
+ else {
97
+ return ts_morph_2.Writers.object(mapper);
98
+ }
99
+ }
100
+ else {
101
+ return isArray ? '[]' : '{}';
102
+ }
103
+ };
24
104
  }
25
- exports.CoerceOperationParamList = CoerceOperationParamList;
105
+ exports.BuiltDtoDataMapperImplementation = BuiltDtoDataMapperImplementation;
106
+ function BuildDtoReturnImplementation(classDeclaration, moduleSourceFile, dto, options) {
107
+ return (operationOptions) => {
108
+ var _a;
109
+ const { isArray, isReturnVoid = !dto, builtDtoDataMapperImplementation = BuiltDtoDataMapperImplementation, } = options;
110
+ if (!isReturnVoid && dto) {
111
+ const sourceFile = classDeclaration.getSourceFile();
112
+ (0, ts_morph_1.CoerceImports)(sourceFile, {
113
+ namedImports: [isArray ? 'ToDtoInstanceList' : 'ToDtoInstance'],
114
+ moduleSpecifier: '@rxap/nest-dto',
115
+ });
116
+ const mapper = builtDtoDataMapperImplementation(classDeclaration, moduleSourceFile, dto, options)(operationOptions);
117
+ operationOptions.returnType = dto.className + (isArray ? '[]' : '');
118
+ (_a = operationOptions.statements) !== null && _a !== void 0 ? _a : (operationOptions.statements = []);
119
+ operationOptions.statements = (0, utilities_1.coerceArray)(operationOptions.statements);
120
+ if (isArray) {
121
+ operationOptions.statements.push('return ToDtoInstanceList(');
122
+ }
123
+ else {
124
+ operationOptions.statements.push('return ToDtoInstance(');
125
+ }
126
+ operationOptions.statements.push(dto.className + ',', w => {
127
+ if (typeof mapper === 'string') {
128
+ w.write(mapper);
129
+ }
130
+ else {
131
+ mapper(w);
132
+ }
133
+ w.write(',');
134
+ }, ');');
135
+ }
136
+ };
137
+ }
138
+ exports.BuildDtoReturnImplementation = BuildDtoReturnImplementation;
139
+ function BuildUpstreamGetDataImplementation(classDeclaration, moduleSourceFile, dto, options) {
140
+ return (operationOptions) => {
141
+ var _a;
142
+ const { buildUpstreamGetParametersImplementation = (() => () => ''), upstream, } = options;
143
+ if (upstream) {
144
+ if ((0, ts_morph_1.IsNormalizedOpenApiUpstreamOptions)(upstream)) {
145
+ const { memberName: commandMemberName } = CoerceUpstreamBasicOperationImplementation(classDeclaration, moduleSourceFile, upstream);
146
+ const commandParameter = buildUpstreamGetParametersImplementation(classDeclaration, moduleSourceFile, dto, options)(operationOptions);
147
+ (_a = operationOptions.statements) !== null && _a !== void 0 ? _a : (operationOptions.statements = []);
148
+ operationOptions.statements = (0, utilities_1.coerceArray)(operationOptions.statements);
149
+ operationOptions.statements.push(w => {
150
+ w.write(`const data = await this.${commandMemberName}.execute(`);
151
+ if (typeof commandParameter === 'function') {
152
+ commandParameter(w);
153
+ }
154
+ else {
155
+ w.write(commandParameter);
156
+ }
157
+ w.write(');');
158
+ });
159
+ }
160
+ }
161
+ };
162
+ }
163
+ exports.BuildUpstreamGetDataImplementation = BuildUpstreamGetDataImplementation;
164
+ function CoerceUpstreamDefaultOperationImplementation(classDeclaration, moduleSourceFile, dto, options) {
165
+ return (operationOptions) => {
166
+ const { upstream, buildDtoReturnImplementation = BuildDtoReturnImplementation, buildUpstreamGetDataImplementation = BuildUpstreamGetDataImplementation, } = options;
167
+ if (upstream) {
168
+ operationOptions.isAsync = true;
169
+ buildUpstreamGetDataImplementation(classDeclaration, moduleSourceFile, dto, options)(operationOptions);
170
+ }
171
+ buildDtoReturnImplementation(classDeclaration, moduleSourceFile, dto, options)(operationOptions);
172
+ };
173
+ }
174
+ exports.CoerceUpstreamDefaultOperationImplementation = CoerceUpstreamDefaultOperationImplementation;
26
175
  function CoerceOperation(options) {
27
- let { nestModule, controllerName, project, paramList, feature, shared, tsMorphTransform, operationName, skipCoerce, controllerPath, queryList, path, overwriteControllerPath, directory, } = options;
28
- tsMorphTransform !== null && tsMorphTransform !== void 0 ? tsMorphTransform : (tsMorphTransform = () => ({}));
29
- paramList !== null && paramList !== void 0 ? paramList : (paramList = []);
30
- queryList !== null && queryList !== void 0 ? queryList : (queryList = []);
176
+ const { controllerName, project, paramList = [], feature, shared, tsMorphTransform = utilities_1.noop, operationName, skipCoerce, controllerPath, queryList = [], coerceUpstreamOperationImplementation = CoerceUpstreamDefaultOperationImplementation, coerceOperationDtoClass = CoerceOperationDtoClass, } = options;
177
+ let { nestModule, directory, path } = options;
31
178
  /**
32
179
  * If the module is not specified. This controller has an own module. Else the
33
180
  * module is originated by another controller.
@@ -56,8 +203,19 @@ function CoerceOperation(options) {
56
203
  nestModule = nestController;
57
204
  }
58
205
  directory = (0, path_1.join)(directory !== null && directory !== void 0 ? directory : '', nestModule);
206
+ const operationPathParameters = paramList.filter(p => !p.fromParent).map(p => p.name);
207
+ if (operationPathParameters.length) {
208
+ if (!path) {
209
+ path = operationPathParameters.map(p => `:${p}`).join('/');
210
+ }
211
+ else {
212
+ const notFound = operationPathParameters.filter(p => !path.includes(p));
213
+ path += '/' + notFound.map(p => `:${p}`).join('/');
214
+ }
215
+ }
59
216
  return (0, schematics_1.chain)([
60
- () => console.log(`Coerce Operation '${operationName}' with path '${path}' in the controller '${nestController}' in the module '${nestModule}'`),
217
+ () => console.log(`Coerce Operation '${operationName}' with path '${path !== null && path !== void 0 ? path : '<empty>'}' in the controller '${nestController}' in the module '${nestModule}'`.blue),
218
+ () => console.log(`Operation path parameters: ${paramList.map(p => (p.fromParent ? '^' : '') + p.name).join(', ')}`.grey),
61
219
  (0, coerce_nest_controller_1.CoerceNestController)({
62
220
  project,
63
221
  feature,
@@ -67,19 +225,29 @@ function CoerceOperation(options) {
67
225
  name: nestController,
68
226
  nestModule,
69
227
  }),
70
- // IMPORTANT: the use of the filePath parameter for the narrow loading of the source file CAN NOT BE USED here
71
- // because sub functions may need to load other source files that are then not loaded into the
72
- // project instance!
73
228
  (0, ts_morph_transform_1.TsMorphNestProjectTransformRule)({
74
229
  project,
75
230
  feature,
76
231
  shared,
77
232
  directory,
78
- }, project => {
79
- const sourceFile = project.getSourceFileOrThrow(`${nestController}.controller.ts`);
80
- const classDeclaration = sourceFile.getClassOrThrow(`${(0, schematics_utilities_1.classify)(nestController)}Controller`);
81
- const operationOptions = tsMorphTransform(project, sourceFile, classDeclaration, nestController);
233
+ // must be set to false are some specializations of this function need to access more files then only the
234
+ // controller and module source file
235
+ filter: false,
236
+ }, (project, [controllerSourceFile, moduleSourceFile]) => {
237
+ var _a;
238
+ const classDeclaration = controllerSourceFile.getClassOrThrow(`${(0, schematics_utilities_1.classify)(nestController)}Controller`);
239
+ const dto = coerceOperationDtoClass(classDeclaration, nestController, moduleSourceFile, options);
240
+ if (dto) {
241
+ (0, ts_morph_1.CoerceImports)(controllerSourceFile, {
242
+ namedImports: [dto.className],
243
+ moduleSpecifier: dto.filePath,
244
+ });
245
+ }
246
+ let operationOptions = {};
247
+ coerceUpstreamOperationImplementation(classDeclaration, moduleSourceFile, dto, options)(operationOptions);
248
+ operationOptions = Object.assign(Object.assign({}, operationOptions), (_a = tsMorphTransform(project, controllerSourceFile, classDeclaration, nestController, moduleSourceFile, dto)) !== null && _a !== void 0 ? _a : {});
82
249
  if (controllerPath) {
250
+ console.log(`Overwrite controller path with '${controllerPath}' for operation '${operationName}' in controller '${nestController}' in module '${nestModule}'`.yellow);
83
251
  classDeclaration.getDecoratorOrThrow('Controller').set({
84
252
  arguments: [w => w.quote(controllerPath)],
85
253
  });
@@ -94,11 +262,11 @@ function CoerceOperation(options) {
94
262
  ],
95
263
  });
96
264
  }
97
- CoerceOperationParamList(paramList, classDeclaration);
98
- (0, add_operation_to_controller_1.AddOperationToController)(sourceFile, classDeclaration, operationName, Object.assign({ isAsync: true, paramList,
265
+ (0, ts_morph_1.CoerceOperationParamList)(paramList, classDeclaration);
266
+ (0, add_operation_to_controller_1.AddOperationToController)(controllerSourceFile, classDeclaration, operationName, Object.assign({ isAsync: true, paramList,
99
267
  queryList,
100
268
  path }, operationOptions));
101
- }),
269
+ }, [`${nestController}.controller.ts?`, `${(0, utilities_1.dasherize)(nestModule)}.module.ts?`]),
102
270
  ]);
103
271
  }
104
272
  exports.CoerceOperation = CoerceOperation;
@@ -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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"}
@@ -1,8 +1,11 @@
1
1
  import { Rule } from '@angular-devkit/schematics';
2
- import { FormDefinitionControl } from '../types/form-definition-control';
3
- import { CoerceOperationOptions } from './coerce-operation';
2
+ import { ClassDeclaration, SourceFile, WriterFunction } from 'ts-morph';
3
+ import { AbstractControl } from '../types/abstract-control';
4
+ import { CoerceDtoClassOutput } from './coerce-dto-class';
5
+ import { CoerceOperationOptions, TransformOperation } from './coerce-operation';
4
6
  export interface CoerceOptionsOperationRuleOptions extends CoerceOperationOptions {
5
- control: Required<FormDefinitionControl>;
7
+ control: AbstractControl;
6
8
  responseDtoName?: string;
7
9
  }
10
+ export declare function BuildOptionsDtoDataMapperImplementation(classDeclaration: ClassDeclaration, moduleSourceFile: SourceFile, dto: CoerceDtoClassOutput | null, options: Readonly<CoerceOperationOptions>): TransformOperation<string | WriterFunction>;
8
11
  export declare function CoerceOptionsOperationRule(options: Readonly<CoerceOptionsOperationRuleOptions>): Rule;
@@ -1,51 +1,76 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CoerceOptionsOperationRule = void 0;
4
- const utilities_1 = require("@rxap/utilities");
5
- const coerce_imports_1 = require("../ts-morph/coerce-imports");
3
+ exports.CoerceOptionsOperationRule = exports.BuildOptionsDtoDataMapperImplementation = void 0;
6
4
  const ts_morph_1 = require("@rxap/ts-morph");
7
- const coerce_dto_class_1 = require("./coerce-dto-class");
5
+ const utilities_1 = require("@rxap/utilities");
8
6
  const coerce_operation_1 = require("./coerce-operation");
7
+ function BuildOptionsDtoDataMapperImplementation(classDeclaration, moduleSourceFile, dto, options) {
8
+ const { isArray, upstream, } = options;
9
+ return () => {
10
+ var _a, _b, _c;
11
+ if (upstream) {
12
+ if ((0, ts_morph_1.IsNormalizedOpenApiUpstreamOptions)(upstream)) {
13
+ const { mapper } = upstream;
14
+ let toFunction = 'ToOptions';
15
+ let toValue = null;
16
+ let toDisplay = null;
17
+ if (mapper && (0, ts_morph_1.IsNormalizedOptionsRequestMapper)(mapper)) {
18
+ toFunction = (_a = mapper.toFunction) !== null && _a !== void 0 ? _a : toFunction;
19
+ toValue = (_b = mapper.toValue) !== null && _b !== void 0 ? _b : toValue;
20
+ toDisplay = (_c = mapper.toDisplay) !== null && _c !== void 0 ? _c : toDisplay;
21
+ }
22
+ const sourceFile = classDeclaration.getSourceFile();
23
+ switch (toFunction) {
24
+ case ts_morph_1.ToOptionsFunction.TO_OPTIONS:
25
+ (0, ts_morph_1.CoerceImports)(sourceFile, {
26
+ namedImports: [ts_morph_1.ToOptionsFunction.TO_OPTIONS],
27
+ moduleSpecifier: '@rxap/utilities',
28
+ });
29
+ break;
30
+ case ts_morph_1.ToOptionsFunction.TO_OPTIONS_FROM_OBJECT:
31
+ (0, ts_morph_1.CoerceImports)(sourceFile, {
32
+ namedImports: [ts_morph_1.ToOptionsFunction.TO_OPTIONS_FROM_OBJECT],
33
+ moduleSpecifier: '@rxap/utilities',
34
+ });
35
+ break;
36
+ }
37
+ return w => {
38
+ w.write(toFunction);
39
+ w.write('(data');
40
+ if (toValue) {
41
+ w.write(`, ${toValue}`);
42
+ }
43
+ if (toDisplay) {
44
+ if (!toValue) {
45
+ w.write(', undefined');
46
+ }
47
+ w.write(`, ${toDisplay}`);
48
+ }
49
+ w.write(')');
50
+ };
51
+ }
52
+ }
53
+ // TODO : implement the data mapper
54
+ return isArray ? '[]' : '{}';
55
+ };
56
+ }
57
+ exports.BuildOptionsDtoDataMapperImplementation = BuildOptionsDtoDataMapperImplementation;
9
58
  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
- };
59
+ const { control, builtDtoDataMapperImplementation = BuildOptionsDtoDataMapperImplementation, isArray = true, responseDtoName, propertyList = [
60
+ {
61
+ name: 'display',
62
+ type: 'string',
63
+ },
64
+ {
65
+ name: 'value',
66
+ type: control.type,
67
+ },
68
+ ], } = options;
69
+ return (0, coerce_operation_1.CoerceOperation)(Object.assign(Object.assign({}, options), { propertyList,
70
+ isArray,
71
+ builtDtoDataMapperImplementation, buildOperationDtoClassName: (controllerName, { dtoClassName, dtoClassNameSuffix }) => {
72
+ const className = responseDtoName !== null && responseDtoName !== void 0 ? responseDtoName : (0, utilities_1.joinWithDash)([dtoClassName !== null && dtoClassName !== void 0 ? dtoClassName : controllerName, control.name, 'control', 'options']);
73
+ return dtoClassName !== null && dtoClassName !== void 0 ? dtoClassName : (dtoClassNameSuffix ? (0, utilities_1.CoerceSuffix)(className, dtoClassNameSuffix) : className);
49
74
  } }));
50
75
  }
51
76
  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":"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"}
@@ -1,12 +1,7 @@
1
- import { ClassDeclarationStructure, ImportDeclarationStructure, OptionalKind, Project } from 'ts-morph';
2
- import { DtoClassProperty } from './create-dto-class';
3
- export interface CoercePageDtoClassOptions {
4
- project: Project;
5
- name: string;
6
- propertyList?: DtoClassProperty[];
7
- classStructure?: Omit<OptionalKind<ClassDeclarationStructure>, 'name'>;
8
- importStructureList?: Array<OptionalKind<ImportDeclarationStructure>>;
1
+ import { CoerceDtoClassOptions } from './coerce-dto-class';
2
+ export interface CoercePageDtoClassOptions extends CoerceDtoClassOptions {
9
3
  rowClassName: string;
10
4
  rowFilePath: string;
11
5
  }
6
+ export declare function BuildPageDtoClassName(name: string): string;
12
7
  export declare function CoercePageDtoClass(options: CoercePageDtoClassOptions): import("./coerce-dto-class").CoerceDtoClassOutput;
@@ -1,22 +1,17 @@
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
+ const ts_morph_1 = require("@rxap/ts-morph");
5
6
  const utilities_1 = require("@rxap/utilities");
6
7
  const path_1 = require("path");
7
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;
8
13
  function CoercePageDtoClass(options) {
9
- let { project, name, propertyList, classStructure, importStructureList, rowClassName, rowFilePath, } = options;
10
- importStructureList !== null && importStructureList !== void 0 ? importStructureList : (importStructureList = []);
11
- importStructureList.push({
12
- namedImports: [rowClassName],
13
- moduleSpecifier: `./${(0, path_1.basename)(rowFilePath)}`,
14
- }, {
15
- namedImports: ['FilterQueryDto'],
16
- moduleSpecifier: '@rxap/nest-dto',
17
- });
18
- classStructure !== null && classStructure !== void 0 ? classStructure : (classStructure = {});
19
- propertyList !== null && propertyList !== void 0 ? propertyList : (propertyList = []);
14
+ const { project, name, propertyList = [], rowClassName, rowFilePath, tsMorphTransform = utilities_1.noop, } = options;
20
15
  (0, utilities_1.CoerceArrayItems)(propertyList, [
21
16
  {
22
17
  name: 'rows',
@@ -53,14 +48,20 @@ function CoercePageDtoClass(options) {
53
48
  isType: true,
54
49
  isOptional: true,
55
50
  }
56
- ]);
57
- return (0, coerce_dto_class_1.CoerceDtoClass)({
58
- project,
59
- name: (0, schematics_utilities_1.CoerceSuffix)(name, '-page'),
60
- propertyList,
61
- classStructure,
62
- importStructureList,
63
- });
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) => {
53
+ (0, ts_morph_1.CoerceImports)(sourceFile, [
54
+ {
55
+ namedImports: [rowClassName],
56
+ moduleSpecifier: `./${(0, path_1.basename)(rowFilePath)}`,
57
+ },
58
+ {
59
+ namedImports: ['FilterQueryDto'],
60
+ moduleSpecifier: '@rxap/nest-dto',
61
+ }
62
+ ]);
63
+ tsMorphTransform(p, sourceFile, classDeclaration);
64
+ } }));
64
65
  }
65
66
  exports.CoercePageDtoClass = CoercePageDtoClass;
66
67
  //# sourceMappingURL=coerce-page-dto-class.js.map
@@ -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,+CAAmD;AACnD,+BAAgC;AAOhC,yDAAoD;AAapD,SAAgB,kBAAkB,CAAC,OAAkC;IACnE,IAAI,EACF,OAAO,EACP,IAAI,EACJ,YAAY,EACZ,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,WAAW,GACZ,GAAG,OAAO,CAAC;IACZ,mBAAmB,aAAnB,mBAAmB,cAAnB,mBAAmB,IAAnB,mBAAmB,GAAK,EAAE,EAAC;IAC3B,mBAAmB,CAAC,IAAI,CACtB;QACE,YAAY,EAAE,CAAE,YAAY,CAAE;QAC9B,eAAe,EAAE,KAAM,IAAA,eAAQ,EAAC,WAAW,CAAE,EAAE;KAChD,EACD;QACE,YAAY,EAAE,CAAE,gBAAgB,CAAE;QAClC,eAAe,EAAE,gBAAgB;KAClC,CACF,CAAC;IACF,cAAc,aAAd,cAAc,cAAd,cAAc,IAAd,cAAc,GAAK,EAAE,EAAC;IACtB,YAAY,aAAZ,YAAY,cAAZ,YAAY,IAAZ,YAAY,GAAK,EAAE,EAAC;IACpB,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,EAAC;QACpB,OAAO;QACP,IAAI,EAAE,IAAA,mCAAY,EAAC,IAAI,EAAE,OAAO,CAAC;QACjC,YAAY;QACZ,cAAc;QACd,mBAAmB;KACpB,CAAC,CAAC;AACL,CAAC;AAnED,gDAmEC"}
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"}
@@ -1,9 +1,11 @@
1
+ import { TypeImport, TypeName } from '@rxap/ts-morph';
1
2
  import { CoerceDtoClassOptions } from './coerce-dto-class';
2
3
  export interface CoerceRowDtoClassOptions extends CoerceDtoClassOptions {
3
4
  /**
4
5
  * the type of the property used as row id type. defaults to the type 'string'. If null the type will be
5
6
  * set to number
6
7
  */
7
- rowIdType?: string | null;
8
+ rowIdType?: TypeImport | TypeName;
8
9
  }
10
+ export declare function BuildRowDtoClassName(name: string): string;
9
11
  export declare function CoerceRowDtoClass(options: CoerceRowDtoClassOptions): import("./coerce-dto-class").CoerceDtoClassOutput;
@@ -1,21 +1,23 @@
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
- let { rowIdType, project, name, propertyList, classStructure, importStructureList, } = options;
8
- propertyList !== null && propertyList !== void 0 ? propertyList : (propertyList = []);
9
- propertyList.unshift({
10
- name: '__rowId',
11
- type: rowIdType === null ? 'number' : rowIdType !== null && rowIdType !== void 0 ? rowIdType : 'string',
12
- });
12
+ const { rowIdType = 'number', project, name, propertyList = [], } = options;
13
+ (0, utilities_1.CoerceArrayItems)(propertyList, [{
14
+ name: '__rowId',
15
+ type: rowIdType,
16
+ }], (a, b) => a.name === b.name);
13
17
  return (0, coerce_dto_class_1.CoerceDtoClass)({
14
18
  project,
15
- name: (0, schematics_utilities_1.CoerceSuffix)(name, '-row'),
19
+ name: BuildRowDtoClassName(name),
16
20
  propertyList,
17
- classStructure,
18
- importStructureList,
19
21
  });
20
22
  }
21
23
  exports.CoerceRowDtoClass = CoerceRowDtoClass;
@@ -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,IAAI,EACF,SAAS,EACT,OAAO,EACP,IAAI,EACJ,YAAY,EACZ,cAAc,EACd,mBAAmB,GACpB,GAAG,OAAO,CAAC;IACZ,YAAY,aAAZ,YAAY,cAAZ,YAAY,IAAZ,YAAY,GAAK,EAAE,EAAC;IACpB,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;QACZ,cAAc;QACd,mBAAmB;KACpB,CAAC,CAAC;AACL,CAAC;AAvBD,8CAuBC"}
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;AAK1D,+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,GAAG,QAAQ,EACpB,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;SAChB,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,15 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CoerceSubmitDataGridOperation = void 0;
4
- const schematics_utilities_1 = require("@rxap/schematics-utilities");
5
4
  const coerce_form_submit_operation_1 = require("./coerce-form-submit-operation");
6
5
  function CoerceSubmitDataGridOperation(options) {
7
- let { paramList, collection, controllerName, } = options;
8
- collection !== null && collection !== void 0 ? collection : (collection = false);
9
- paramList !== null && paramList !== void 0 ? paramList : (paramList = []);
10
- controllerName = (0, schematics_utilities_1.CoerceSuffix)(controllerName, '-data-grid');
11
- return (0, coerce_form_submit_operation_1.CoerceFormSubmitOperation)(Object.assign(Object.assign({}, options), { controllerName,
12
- paramList }));
6
+ const { collection = false, } = options;
7
+ console.log(`collection: ${collection}`);
8
+ return (0, coerce_form_submit_operation_1.CoerceFormSubmitOperation)(Object.assign({}, options));
13
9
  }
14
10
  exports.CoerceSubmitDataGridOperation = CoerceSubmitDataGridOperation;
15
11
  //# sourceMappingURL=coerce-submit-data-grid-operation.js.map