@rxap/schematics-ts-morph 16.0.1-dev.1 → 16.1.0-dev.1

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 (51) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/README.md +1 -1
  3. package/package.json +8 -8
  4. package/src/lib/angular/add-component-import.d.ts +9 -0
  5. package/src/lib/angular/add-component-import.js +9 -0
  6. package/src/lib/angular/add-component-import.js.map +1 -1
  7. package/src/lib/angular/add-component-input.d.ts +2 -1
  8. package/src/lib/angular/add-component-input.js +4 -3
  9. package/src/lib/angular/add-component-input.js.map +1 -1
  10. package/src/lib/angular/coerce-component-class.d.ts +2 -2
  11. package/src/lib/angular/coerce-component-class.js +2 -2
  12. package/src/lib/angular/coerce-component-class.js.map +1 -1
  13. package/src/lib/angular/coerce-component.js +4 -24
  14. package/src/lib/angular/coerce-component.js.map +1 -1
  15. package/src/lib/angular/coerce-form-definition-control.js +7 -3
  16. package/src/lib/angular/coerce-form-definition-control.js.map +1 -1
  17. package/src/lib/angular/coerce-form-definition.js +0 -8
  18. package/src/lib/angular/coerce-form-definition.js.map +1 -1
  19. package/src/lib/angular/coerce-tree-table-root-proxy-remote-method-class.js +1 -5
  20. package/src/lib/angular/coerce-tree-table-root-proxy-remote-method-class.js.map +1 -1
  21. package/src/lib/nest/add-operation-to-controller.d.ts +2 -1
  22. package/src/lib/nest/add-operation-to-controller.js +20 -19
  23. package/src/lib/nest/add-operation-to-controller.js.map +1 -1
  24. package/src/lib/nest/coerce-dto-class.d.ts +4 -1
  25. package/src/lib/nest/coerce-dto-class.js +34 -25
  26. package/src/lib/nest/coerce-dto-class.js.map +1 -1
  27. package/src/lib/nest/coerce-form-submit-operation.d.ts +1 -1
  28. package/src/lib/nest/coerce-form-submit-operation.js +1 -4
  29. package/src/lib/nest/coerce-form-submit-operation.js.map +1 -1
  30. package/src/lib/nest/coerce-get-by-id-operation.d.ts +2 -0
  31. package/src/lib/nest/coerce-get-by-id-operation.js +14 -15
  32. package/src/lib/nest/coerce-get-by-id-operation.js.map +1 -1
  33. package/src/lib/nest/coerce-get-children-operation.d.ts +2 -2
  34. package/src/lib/nest/coerce-get-children-operation.js +17 -20
  35. package/src/lib/nest/coerce-get-children-operation.js.map +1 -1
  36. package/src/lib/nest/coerce-get-page-operation.d.ts +1 -1
  37. package/src/lib/nest/coerce-get-root-operation.d.ts +4 -1
  38. package/src/lib/nest/coerce-get-root-operation.js +17 -19
  39. package/src/lib/nest/coerce-get-root-operation.js.map +1 -1
  40. package/src/lib/nest/coerce-options-operation.js +2 -2
  41. package/src/lib/nest/coerce-options-operation.js.map +1 -1
  42. package/src/lib/nest/create-dto-class.d.ts +10 -5
  43. package/src/lib/nest/create-dto-class.js +11 -40
  44. package/src/lib/nest/create-dto-class.js.map +1 -1
  45. package/src/lib/ts-morph/coerce-interface.d.ts +2 -0
  46. package/src/lib/ts-morph/coerce-interface.js +6 -4
  47. package/src/lib/ts-morph/coerce-interface.js.map +1 -1
  48. package/src/lib/ts-morph/write-type.d.ts +16 -4
  49. package/src/lib/ts-morph/write-type.js +56 -19
  50. package/src/lib/ts-morph/write-type.js.map +1 -1
  51. package/src/lib/types/form-definition-control.d.ts +2 -1
@@ -2,13 +2,14 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CoerceDtoClass = exports.CoercePropertyDeclaration = void 0;
4
4
  const schematics_utilities_1 = require("@rxap/schematics-utilities");
5
+ const utilities_1 = require("@rxap/utilities");
5
6
  const path_1 = require("path");
6
7
  const ts_morph_1 = require("ts-morph");
7
8
  const coerce_class_1 = require("../coerce-class");
8
9
  const coerce_source_file_1 = require("../coerce-source-file");
9
10
  const coerce_decorator_1 = require("../ts-morph/coerce-decorator");
10
11
  const coerce_imports_1 = require("../ts-morph/coerce-imports");
11
- const write_type_1 = require("../ts-morph/write-type");
12
+ const ts_morph_2 = require("@rxap/ts-morph");
12
13
  function CoercePropertyDeclaration(node, name, structure = {}) {
13
14
  let property = node.getProperty(name);
14
15
  if (!property) {
@@ -19,13 +20,8 @@ function CoercePropertyDeclaration(node, name, structure = {}) {
19
20
  }
20
21
  exports.CoercePropertyDeclaration = CoercePropertyDeclaration;
21
22
  function CoerceDtoClass(options) {
22
- const { project, } = options;
23
- let { propertyList, tsMorphTransform, classStructure, importStructureList, name, } = options;
24
- propertyList !== null && propertyList !== void 0 ? propertyList : (propertyList = []);
25
- // eslint-disable-next-line @typescript-eslint/no-empty-function
26
- tsMorphTransform !== null && tsMorphTransform !== void 0 ? tsMorphTransform : (tsMorphTransform = () => { });
27
- classStructure !== null && classStructure !== void 0 ? classStructure : (classStructure = {});
28
- importStructureList !== null && importStructureList !== void 0 ? importStructureList : (importStructureList = []);
23
+ const { project, propertyList = [], tsMorphTransform = utilities_1.noop, classStructure = {}, importStructureList = [], } = options;
24
+ let { name, } = options;
29
25
  name = (0, schematics_utilities_1.dasherize)(name);
30
26
  const className = (0, schematics_utilities_1.CoerceSuffix)((0, schematics_utilities_1.classify)(name), 'Dto');
31
27
  const fileName = (0, schematics_utilities_1.CoerceSuffix)(name, '.dto');
@@ -34,6 +30,9 @@ function CoerceDtoClass(options) {
34
30
  classDeclaration.setIsExported(true);
35
31
  classDeclaration.set(classStructure);
36
32
  for (const property of propertyList) {
33
+ if (property.type === '<self>') {
34
+ property.type = className;
35
+ }
37
36
  let propertyName = (0, schematics_utilities_1.camelize)(property.name);
38
37
  const prefixMatch = property.name.match(/^(_+)/);
39
38
  if (prefixMatch) {
@@ -41,8 +40,8 @@ function CoerceDtoClass(options) {
41
40
  propertyName = prefixMatch[0] + propertyName;
42
41
  }
43
42
  const propertyDeclaration = CoercePropertyDeclaration(classDeclaration, propertyName).set({
44
- type: (0, write_type_1.WriteType)(property),
45
- hasQuestionToken: property.isOptional,
43
+ type: (0, ts_morph_2.WriteType)(property, sourceFile),
44
+ hasQuestionToken: !!property.isOptional,
46
45
  hasExclamationToken: !property.isOptional,
47
46
  });
48
47
  (0, coerce_decorator_1.CoerceDecorator)(propertyDeclaration, 'Expose', {
@@ -66,12 +65,10 @@ function CoerceDtoClass(options) {
66
65
  arguments: [
67
66
  w => {
68
67
  w.write('() => ');
69
- if (typeof property.type === 'string') {
70
- w.write(property.type);
71
- }
72
- else {
73
- property.type(w);
74
- }
68
+ (0, ts_morph_2.WriteType)({
69
+ type: property.type,
70
+ isArray: false
71
+ }, sourceFile)(w);
75
72
  },
76
73
  ],
77
74
  });
@@ -81,14 +78,10 @@ function CoerceDtoClass(options) {
81
78
  });
82
79
  (0, coerce_decorator_1.CoerceDecorator)(propertyDeclaration, 'IsInstance', {
83
80
  arguments: [
84
- w => {
85
- if (typeof property.type === 'string') {
86
- w.write(property.type);
87
- }
88
- else {
89
- property.type(w);
90
- }
91
- },
81
+ (0, ts_morph_2.WriteType)({
82
+ type: property.type,
83
+ isArray: false
84
+ }, sourceFile),
92
85
  w => {
93
86
  if (property.isArray) {
94
87
  ts_morph_1.Writers.object({ each: 'true' })(w);
@@ -110,7 +103,14 @@ function CoerceDtoClass(options) {
110
103
  moduleSpecifier: 'class-validator',
111
104
  });
112
105
  }
113
- switch (property.type) {
106
+ let autoType = 'none';
107
+ if (typeof property.type === 'string') {
108
+ autoType = property.type;
109
+ }
110
+ else if (typeof property.type === 'object') {
111
+ autoType = property.type.name;
112
+ }
113
+ switch (autoType) {
114
114
  case 'date':
115
115
  (0, coerce_decorator_1.CoerceDecorator)(propertyDeclaration, 'IsDate', {
116
116
  arguments: [],
@@ -167,6 +167,15 @@ function CoerceDtoClass(options) {
167
167
  moduleSpecifier: 'class-validator',
168
168
  });
169
169
  break;
170
+ case 'unknown':
171
+ (0, coerce_decorator_1.CoerceDecorator)(propertyDeclaration, 'ApiProperty', {
172
+ arguments: [ts_morph_1.Writers.object({ type: w => w.quote('unknown') })],
173
+ });
174
+ importStructureList.push({
175
+ namedImports: ['ApiProperty'],
176
+ moduleSpecifier: '@nestjs/swagger',
177
+ });
178
+ break;
170
179
  }
171
180
  }
172
181
  (0, coerce_imports_1.CoerceImports)(sourceFile, importStructureList);
@@ -1 +1 @@
1
- {"version":3,"file":"coerce-dto-class.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-dto-class.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coerce-dto-class.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-dto-class.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { CoerceOperationOptions } from './coerce-operation';
2
2
  import { DtoClassProperty } from './create-dto-class';
3
3
  export interface CoerceFormSubmitOperationOptions extends Omit<CoerceOperationOptions, 'operationName'> {
4
- propertyList?: DtoClassProperty[] | null;
4
+ propertyList?: DtoClassProperty[];
5
5
  bodyDtoName?: string;
6
6
  }
7
7
  export declare function CoerceFormSubmitOperation(options: CoerceFormSubmitOperationOptions): import("@angular-devkit/schematics").Rule;
@@ -6,10 +6,7 @@ const coerce_imports_1 = require("../ts-morph/coerce-imports");
6
6
  const coerce_dto_class_1 = require("./coerce-dto-class");
7
7
  const coerce_operation_1 = require("./coerce-operation");
8
8
  function CoerceFormSubmitOperation(options) {
9
- let { tsMorphTransform, controllerName, propertyList, bodyDtoName, context, } = options;
10
- tsMorphTransform !== null && tsMorphTransform !== void 0 ? tsMorphTransform : (tsMorphTransform = () => ({}));
11
- propertyList !== null && propertyList !== void 0 ? propertyList : (propertyList = []);
12
- bodyDtoName !== null && bodyDtoName !== void 0 ? bodyDtoName : (bodyDtoName = (0, utilities_1.joinWithDash)([context, controllerName]));
9
+ const { tsMorphTransform = utilities_1.noop, controllerName, propertyList = [], context, bodyDtoName = (0, utilities_1.joinWithDash)([context, controllerName]), } = options;
13
10
  return (0, coerce_operation_1.CoerceOperation)(Object.assign(Object.assign({}, options), { operationName: 'submit', tsMorphTransform: (project, sourceFile, classDeclaration, controllerName) => {
14
11
  const { className: dtoClassName, filePath: dtoFilePath, } = (0, coerce_dto_class_1.CoerceDtoClass)({
15
12
  project,
@@ -1 +1 @@
1
- {"version":3,"file":"coerce-form-submit-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-form-submit-operation.ts"],"names":[],"mappings":";;;AAAA,+CAA+C;AAC/C,+DAA2D;AAC3D,yDAAoD;AACpD,yDAG4B;AAQ5B,SAAgB,yBAAyB,CAAC,OAAyC;IACjF,IAAI,EACF,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,WAAW,EACX,OAAO,GACR,GAAG,OAAO,CAAC;IACZ,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,IAAhB,gBAAgB,GAAK,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAC;IAEhC,YAAY,aAAZ,YAAY,cAAZ,YAAY,IAAZ,YAAY,GAAK,EAAE,EAAC;IACpB,WAAW,aAAX,WAAW,cAAX,WAAW,IAAX,WAAW,GAAK,IAAA,wBAAY,EAAC,CAAE,OAAO,EAAE,cAAc,CAAE,CAAC,EAAC;IAE1D,OAAO,IAAA,kCAAe,kCACjB,OAAO,KACV,aAAa,EAAE,QAAQ,EACvB,gBAAgB,EAAE,CAChB,OAAO,EACP,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,EAAE;YAEF,MAAM,EACJ,SAAS,EAAE,YAAY,EACvB,QAAQ,EAAE,WAAW,GACtB,GAAG,IAAA,iCAAc,EAAC;gBACjB,OAAO;gBACP,IAAI,EAAE,WAAY;gBAClB,YAAY;aACb,CAAC,CAAC;YAEH,IAAA,8BAAa,EAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,YAAY,CAAE;gBAC9B,eAAe,EAAE,WAAW;aAC7B,CAAC,CAAC;YAEH,uBACE,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,MAAM,IACX,gBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,CAAC,EAC3E;QAEJ,CAAC,IACD,CAAC;AAEL,CAAC;AA9CD,8DA8CC"}
1
+ {"version":3,"file":"coerce-form-submit-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-form-submit-operation.ts"],"names":[],"mappings":";;;AAAA,+CAGyB;AACzB,+DAA2D;AAC3D,yDAAoD;AACpD,yDAG4B;AAQ5B,SAAgB,yBAAyB,CAAC,OAAyC;IACjF,MAAM,EACJ,gBAAgB,GAAG,gBAAI,EACvB,cAAc,EACd,YAAY,GAAE,EAAE,EAChB,OAAO,EACP,WAAW,GAAE,IAAA,wBAAY,EAAC,CAAE,OAAO,EAAE,cAAc,CAAE,CAAC,GACvD,GAAG,OAAO,CAAC;IAEZ,OAAO,IAAA,kCAAe,kCACjB,OAAO,KACV,aAAa,EAAE,QAAQ,EACvB,gBAAgB,EAAE,CAChB,OAAO,EACP,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,EAAE;YAEF,MAAM,EACJ,SAAS,EAAE,YAAY,EACvB,QAAQ,EAAE,WAAW,GACtB,GAAG,IAAA,iCAAc,EAAC;gBACjB,OAAO;gBACP,IAAI,EAAE,WAAY;gBAClB,YAAY;aACb,CAAC,CAAC;YAEH,IAAA,8BAAa,EAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,YAAY,CAAE;gBAC9B,eAAe,EAAE,WAAW;aAC7B,CAAC,CAAC;YAEH,uBACE,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,MAAM,IACX,gBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,CAAC,EAC3E;QAEJ,CAAC,IACD,CAAC;AAEL,CAAC;AA1CD,8DA0CC"}
@@ -3,5 +3,7 @@ import { DtoClassProperty } from './create-dto-class';
3
3
  export interface CoerceGetByIdControllerOptions extends Omit<CoerceOperationOptions, 'operationName'> {
4
4
  propertyList?: DtoClassProperty[];
5
5
  isArray?: boolean;
6
+ idProperty?: DtoClassProperty;
7
+ operationName?: string;
6
8
  }
7
9
  export declare function CoerceGetByIdOperation(options: CoerceGetByIdControllerOptions): import("@angular-devkit/schematics").Rule;
@@ -2,13 +2,12 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CoerceGetByIdOperation = void 0;
4
4
  const schematics_utilities_1 = require("@rxap/schematics-utilities");
5
- const coerce_imports_1 = require("../ts-morph/coerce-imports");
5
+ const ts_morph_1 = require("@rxap/ts-morph");
6
6
  const coerce_dto_class_1 = require("./coerce-dto-class");
7
7
  const coerce_operation_1 = require("./coerce-operation");
8
8
  function CoerceGetByIdOperation(options) {
9
- let { controllerName, isArray, nestModule, paramList, propertyList, } = options;
10
- propertyList !== null && propertyList !== void 0 ? propertyList : (propertyList = []);
11
- paramList !== null && paramList !== void 0 ? paramList : (paramList = []);
9
+ const { controllerName, isArray, paramList = [], propertyList = [], idProperty = { name: 'uuid', type: 'string' }, operationName = 'getById', } = options;
10
+ let { nestModule } = options;
12
11
  /**
13
12
  * If the module is not specified. This controller has an own module. Else the
14
13
  * module is originated by another controller.
@@ -29,30 +28,30 @@ function CoerceGetByIdOperation(options) {
29
28
  * module = "report-details"
30
29
  */
31
30
  const isFirstBornSibling = !nestModule || nestModule === controllerName;
32
- if (isFirstBornSibling && !propertyList.some(param => param.name === 'uuid')) {
33
- propertyList.unshift({
34
- name: 'uuid',
35
- type: 'string',
36
- });
31
+ if (isFirstBornSibling && !propertyList.some(param => param.name === idProperty.name)) {
32
+ propertyList.unshift(idProperty);
37
33
  }
38
34
  if (isFirstBornSibling) {
39
35
  nestModule = controllerName;
40
36
  }
41
- if (!paramList.some(param => param.name === 'uuid')) {
37
+ if (!paramList.some(param => param.name === idProperty.name)) {
42
38
  paramList.push({
43
- name: 'uuid',
44
- type: 'string',
45
- alias: isFirstBornSibling ? undefined : (0, schematics_utilities_1.CoerceSuffix)(nestModule, '-uuid'),
39
+ name: idProperty.name,
40
+ type: idProperty.type,
41
+ alias: isFirstBornSibling ? undefined : (0, schematics_utilities_1.CoerceSuffix)(nestModule, '-' + idProperty.name),
46
42
  fromParent: !isFirstBornSibling,
47
43
  });
48
44
  }
49
- return (0, coerce_operation_1.CoerceOperation)(Object.assign(Object.assign({}, options), { nestModule, controllerName: controllerName, paramList, operationName: 'getById', tsMorphTransform: (project, sourceFile, classDeclaration, controllerName) => {
45
+ return (0, coerce_operation_1.CoerceOperation)(Object.assign(Object.assign({}, options), { nestModule,
46
+ controllerName,
47
+ paramList,
48
+ operationName, tsMorphTransform: (project, sourceFile, classDeclaration, controllerName) => {
50
49
  const { className: dtoClassName, filePath: dtoFilePath, } = (0, coerce_dto_class_1.CoerceDtoClass)({
51
50
  project,
52
51
  name: controllerName,
53
52
  propertyList,
54
53
  });
55
- (0, coerce_imports_1.CoerceImports)(sourceFile, {
54
+ (0, ts_morph_1.CoerceImports)(sourceFile, {
56
55
  namedImports: [dtoClassName],
57
56
  moduleSpecifier: dtoFilePath,
58
57
  });
@@ -1 +1 @@
1
- {"version":3,"file":"coerce-get-by-id-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-get-by-id-operation.ts"],"names":[],"mappings":";;;AAAA,qEAA0D;AAC1D,+DAA2D;AAC3D,yDAAoD;AACpD,yDAG4B;AAQ5B,SAAgB,sBAAsB,CAAC,OAAuC;IAC5E,IAAI,EACF,cAAc,EACd,OAAO,EACP,UAAU,EACV,SAAS,EACT,YAAY,GACb,GAAG,OAAO,CAAC;IAEZ,YAAY,aAAZ,YAAY,cAAZ,YAAY,IAAZ,YAAY,GAAK,EAAE,EAAC;IACpB,SAAS,aAAT,SAAS,cAAT,SAAS,IAAT,SAAS,GAAK,EAAE,EAAC;IAEjB;;;;;;;;;;;;;;;;;;OAkBG;IACH,MAAM,kBAAkB,GAAG,CAAC,UAAU,IAAI,UAAU,KAAK,cAAc,CAAC;IAExE,IAAI,kBAAkB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,EAAE;QAC5E,YAAY,CAAC,OAAO,CAAC;YACnB,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,QAAQ;SACf,CAAC,CAAC;KACJ;IAED,IAAI,kBAAkB,EAAE;QACtB,UAAU,GAAG,cAAc,CAAC;KAC7B;IAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,EAAE;QACnD,SAAS,CAAC,IAAI,CAAC;YACb,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAA,mCAAY,EAAC,UAAW,EAAE,OAAO,CAAC;YAC1E,UAAU,EAAE,CAAC,kBAAkB;SAChC,CAAC,CAAC;KACJ;IAED,OAAO,IAAA,kCAAe,kCACjB,OAAO,KACV,UAAU,EACV,cAAc,EAAE,cAAe,EAC/B,SAAS,EACT,aAAa,EAAE,SAAS,EACxB,gBAAgB,EAAE,CAChB,OAAO,EACP,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,EAAE;YAEF,MAAM,EACJ,SAAS,EAAE,YAAY,EACvB,QAAQ,EAAE,WAAW,GACtB,GAAG,IAAA,iCAAc,EAAC;gBACjB,OAAO;gBACP,IAAI,EAAE,cAAc;gBACpB,YAAY;aACb,CAAC,CAAC;YAEH,IAAA,8BAAa,EAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,YAAY,CAAE;gBAC9B,eAAe,EAAE,WAAW;aAC7B,CAAC,CAAC;YAEH,OAAO;gBACL,UAAU,EAAE,YAAY,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;aACjD,CAAC;QAEJ,CAAC,IACD,CAAC;AAEL,CAAC;AAvFD,wDAuFC"}
1
+ {"version":3,"file":"coerce-get-by-id-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-get-by-id-operation.ts"],"names":[],"mappings":";;;AAAA,qEAA0D;AAC1D,6CAA+C;AAC/C,yDAAoD;AACpD,yDAG4B;AAU5B,SAAgB,sBAAsB,CAAC,OAAuC;IAC5E,MAAM,EACJ,cAAc,EACd,OAAO,EACP,SAAS,GAAE,EAAE,EACb,YAAY,GAAG,EAAE,EACjB,UAAU,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,EAC7C,aAAa,GAAG,SAAS,GAC1B,GAAG,OAAO,CAAC;IACZ,IAAI,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IAE7B;;;;;;;;;;;;;;;;;;OAkBG;IACH,MAAM,kBAAkB,GAAG,CAAC,UAAU,IAAI,UAAU,KAAK,cAAc,CAAC;IAExE,IAAI,kBAAkB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,CAAC,EAAE;QACrF,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;KAClC;IAED,IAAI,kBAAkB,EAAE;QACtB,UAAU,GAAG,cAAc,CAAC;KAC7B;IAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,CAAC,EAAE;QAC5D,SAAS,CAAC,IAAI,CAAC;YACb,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAA,mCAAY,EAAC,UAAW,EAAE,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC;YACxF,UAAU,EAAE,CAAC,kBAAkB;SAChC,CAAC,CAAC;KACJ;IAED,OAAO,IAAA,kCAAe,kCACjB,OAAO,KACV,UAAU;QACV,cAAc;QACd,SAAS;QACT,aAAa,EACb,gBAAgB,EAAE,CAChB,OAAO,EACP,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,EAAE;YAEF,MAAM,EACJ,SAAS,EAAE,YAAY,EACvB,QAAQ,EAAE,WAAW,GACtB,GAAG,IAAA,iCAAc,EAAC;gBACjB,OAAO;gBACP,IAAI,EAAE,cAAc;gBACpB,YAAY;aACb,CAAC,CAAC;YAEH,IAAA,wBAAa,EAAC,UAAU,EAAE;gBACxB,YAAY,EAAE,CAAE,YAAY,CAAE;gBAC9B,eAAe,EAAE,WAAW;aAC7B,CAAC,CAAC;YAEH,OAAO;gBACL,UAAU,EAAE,YAAY,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;aACjD,CAAC;QAEJ,CAAC,IACD,CAAC;AAEL,CAAC;AAnFD,wDAmFC"}
@@ -1,3 +1,3 @@
1
- import { CoerceOperationOptions } from './coerce-operation';
2
- export type CoerceGetChildrenOperationOptions = Omit<CoerceOperationOptions, 'operationName'>;
1
+ import { CoerceGetRootOperationOptions } from './coerce-get-root-operation';
2
+ export type CoerceGetChildrenOperationOptions = CoerceGetRootOperationOptions;
3
3
  export declare function CoerceGetChildrenOperation(options: Readonly<CoerceGetChildrenOperationOptions>): import("@angular-devkit/schematics").Rule;
@@ -2,14 +2,27 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CoerceGetChildrenOperation = void 0;
4
4
  const schematics_utilities_1 = require("@rxap/schematics-utilities");
5
+ const utilities_1 = require("@rxap/utilities");
5
6
  const coerce_imports_1 = require("../ts-morph/coerce-imports");
6
7
  const coerce_dto_class_1 = require("./coerce-dto-class");
7
8
  const coerce_operation_1 = require("./coerce-operation");
8
9
  function CoerceGetChildrenOperation(options) {
9
- let { tsMorphTransform, controllerName, paramList, } = options;
10
- tsMorphTransform !== null && tsMorphTransform !== void 0 ? tsMorphTransform : (tsMorphTransform = () => ({}));
10
+ const { tsMorphTransform = utilities_1.noop, paramList = [], propertyList = [], } = options;
11
+ let { controllerName } = options;
12
+ (0, utilities_1.CoerceArrayItems)(propertyList, [
13
+ {
14
+ name: 'hasChildren',
15
+ type: 'boolean',
16
+ },
17
+ {
18
+ name: 'children',
19
+ type: '<self>',
20
+ isArray: true,
21
+ isOptional: true,
22
+ isType: true,
23
+ },
24
+ ], (a, b) => a.name === b.name);
11
25
  controllerName = (0, schematics_utilities_1.CoerceSuffix)(controllerName, '-tree-table');
12
- paramList !== null && paramList !== void 0 ? paramList : (paramList = []);
13
26
  paramList.push({
14
27
  name: 'parentUuid',
15
28
  type: 'string',
@@ -20,23 +33,7 @@ function CoerceGetChildrenOperation(options) {
20
33
  const { className, filePath, } = (0, coerce_dto_class_1.CoerceDtoClass)({
21
34
  project,
22
35
  name: (0, schematics_utilities_1.CoerceSuffix)(controllerName, '-item'),
23
- propertyList: [
24
- {
25
- name: 'uuid',
26
- type: 'string',
27
- },
28
- {
29
- name: 'hasChildren',
30
- type: 'boolean',
31
- },
32
- {
33
- name: 'children',
34
- type: (0, schematics_utilities_1.classify)((0, schematics_utilities_1.CoerceSuffix)(controllerName, '-item-dto')),
35
- isArray: true,
36
- isOptional: true,
37
- isType: true,
38
- },
39
- ],
36
+ propertyList,
40
37
  });
41
38
  (0, coerce_imports_1.CoerceImports)(sourceFile, [
42
39
  {
@@ -1 +1 @@
1
- {"version":3,"file":"coerce-get-children-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-get-children-operation.ts"],"names":[],"mappings":";;;AAAA,qEAGoC;AACpC,+DAA2D;AAC3D,yDAAoD;AACpD,yDAG4B;AAI5B,SAAgB,0BAA0B,CAAC,OAAoD;IAC7F,IAAI,EACF,gBAAgB,EAChB,cAAc,EACd,SAAS,GACV,GAAG,OAAO,CAAC;IACZ,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,IAAhB,gBAAgB,GAAK,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAC;IAChC,cAAc,GAAG,IAAA,mCAAY,EAAC,cAAc,EAAE,aAAa,CAAC,CAAC;IAC7D,SAAS,aAAT,SAAS,cAAT,SAAS,IAAT,SAAS,GAAK,EAAE,EAAC;IACjB,SAAS,CAAC,IAAI,CAAC;QACb,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,QAAQ;KACf,CAAC,CAAC;IACH,OAAO,IAAA,kCAAe,kCACjB,OAAO;QACV,kDAAkD;QAClD,cAAc,EACd,aAAa,EAAE,cAAc,EAC7B,SAAS,EACT,gBAAgB,EAAE,CAChB,OAAO,EACP,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,EAAE;YAEF,MAAM,EACJ,SAAS,EACT,QAAQ,GACT,GAAG,IAAA,iCAAc,EAAC;gBACjB,OAAO;gBACP,IAAI,EAAE,IAAA,mCAAY,EAAC,cAAc,EAAE,OAAO,CAAC;gBAC3C,YAAY,EAAE;oBACZ;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,QAAQ;qBACf;oBACD;wBACE,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,SAAS;qBAChB;oBACD;wBACE,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,IAAA,+BAAQ,EAAC,IAAA,mCAAY,EAAC,cAAc,EAAE,WAAW,CAAC,CAAC;wBACzD,OAAO,EAAE,IAAI;wBACb,UAAU,EAAE,IAAI;wBAChB,MAAM,EAAE,IAAI;qBACb;iBACF;aACF,CAAC,CAAC;YAEH,IAAA,8BAAa,EAAC,UAAU,EAAE;gBACxB;oBACE,YAAY,EAAE,CAAE,iBAAiB,CAAE;oBACnC,eAAe,EAAE,mBAAmB;iBACrC;gBACD;oBACE,YAAY,EAAE,CAAE,uBAAuB,CAAE;oBACzC,eAAe,EAAE,sBAAsB;iBACxC;gBACD;oBACE,YAAY,EAAE,CAAE,SAAS,CAAE;oBAC3B,eAAe,EAAE,QAAQ;iBAC1B;aACF,CAAC,CAAC;YAEH,uBACE,UAAU,EAAE,SAAS,GAAG,IAAI,IACzB,gBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,CAAC,EAC3E;QACJ,CAAC,IACD,CAAC;AACL,CAAC;AAxED,gEAwEC"}
1
+ {"version":3,"file":"coerce-get-children-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-get-children-operation.ts"],"names":[],"mappings":";;;AAAA,qEAGoC;AACpC,+CAGyB;AACzB,+DAA2D;AAC3D,yDAAoD;AAEpD,yDAG4B;AAI5B,SAAgB,0BAA0B,CAAC,OAAoD;IAC7F,MAAM,EACJ,gBAAgB,GAAG,gBAAI,EACvB,SAAS,GAAG,EAAE,EACd,YAAY,GAAG,EAAE,GAClB,GAAG,OAAO,CAAC;IACZ,IAAI,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;IACjC,IAAA,4BAAgB,EAAC,YAAY,EAAE;QAC7B;YACE,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,SAAS;SAChB;QACD;YACE,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,IAAI;YAChB,MAAM,EAAE,IAAI;SACb;KACF,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;IAChC,cAAc,GAAG,IAAA,mCAAY,EAAC,cAAc,EAAE,aAAa,CAAC,CAAC;IAC7D,SAAS,CAAC,IAAI,CAAC;QACb,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,QAAQ;KACf,CAAC,CAAC;IACH,OAAO,IAAA,kCAAe,kCACjB,OAAO;QACV,kDAAkD;QAClD,cAAc,EACd,aAAa,EAAE,cAAc,EAC7B,SAAS,EACT,gBAAgB,EAAE,CAChB,OAAO,EACP,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,EAAE;YAEF,MAAM,EACJ,SAAS,EACT,QAAQ,GACT,GAAG,IAAA,iCAAc,EAAC;gBACjB,OAAO;gBACP,IAAI,EAAE,IAAA,mCAAY,EAAC,cAAc,EAAE,OAAO,CAAC;gBAC3C,YAAY;aACb,CAAC,CAAC;YAEH,IAAA,8BAAa,EAAC,UAAU,EAAE;gBACxB;oBACE,YAAY,EAAE,CAAE,iBAAiB,CAAE;oBACnC,eAAe,EAAE,mBAAmB;iBACrC;gBACD;oBACE,YAAY,EAAE,CAAE,uBAAuB,CAAE;oBACzC,eAAe,EAAE,sBAAsB;iBACxC;gBACD;oBACE,YAAY,EAAE,CAAE,SAAS,CAAE;oBAC3B,eAAe,EAAE,QAAQ;iBAC1B;aACF,CAAC,CAAC;YAEH,uBACE,UAAU,EAAE,SAAS,GAAG,IAAI,IACzB,gBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,CAAC,EAC3E;QACJ,CAAC,IACD,CAAC;AACL,CAAC;AApED,gEAoEC"}
@@ -5,7 +5,7 @@ import { CoerceOperationOptions } from './coerce-operation';
5
5
  import { DtoClassProperty } from './create-dto-class';
6
6
  export interface GetPageOperationProperty {
7
7
  name: string;
8
- type?: TypeImport;
8
+ type: TypeImport;
9
9
  /**
10
10
  * the property name of the source object. if not defined the name will be used
11
11
  */
@@ -1,3 +1,6 @@
1
1
  import { CoerceOperationOptions } from './coerce-operation';
2
- export type CoerceGetRootOperationOptions = Omit<CoerceOperationOptions, 'operationName'>;
2
+ import { DtoClassProperty } from './create-dto-class';
3
+ export interface CoerceGetRootOperationOptions extends Omit<CoerceOperationOptions, 'operationName'> {
4
+ propertyList?: DtoClassProperty[];
5
+ }
3
6
  export declare function CoerceGetRootOperation(options: Readonly<CoerceGetRootOperationOptions>): import("@angular-devkit/schematics").Rule;
@@ -2,34 +2,32 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CoerceGetRootOperation = void 0;
4
4
  const schematics_utilities_1 = require("@rxap/schematics-utilities");
5
+ const utilities_1 = require("@rxap/utilities");
5
6
  const coerce_imports_1 = require("../ts-morph/coerce-imports");
6
7
  const coerce_dto_class_1 = require("./coerce-dto-class");
7
8
  const coerce_operation_1 = require("./coerce-operation");
8
9
  function CoerceGetRootOperation(options) {
9
- let { tsMorphTransform, controllerName, } = options;
10
- tsMorphTransform !== null && tsMorphTransform !== void 0 ? tsMorphTransform : (tsMorphTransform = () => ({}));
10
+ const { tsMorphTransform = utilities_1.noop, propertyList = [], } = options;
11
+ let { controllerName } = options;
12
+ (0, utilities_1.CoerceArrayItems)(propertyList, [
13
+ {
14
+ name: 'hasChildren',
15
+ type: 'boolean',
16
+ },
17
+ {
18
+ name: 'children',
19
+ type: '<self>',
20
+ isArray: true,
21
+ isOptional: true,
22
+ isType: true,
23
+ },
24
+ ], (a, b) => a.name === b.name);
11
25
  controllerName = (0, schematics_utilities_1.CoerceSuffix)(controllerName, '-tree-table');
12
26
  return (0, coerce_operation_1.CoerceOperation)(Object.assign(Object.assign({}, options), { controllerName, operationName: 'get-root', tsMorphTransform: (project, sourceFile, classDeclaration, controllerName) => {
13
27
  const { className, filePath, } = (0, coerce_dto_class_1.CoerceDtoClass)({
14
28
  project,
15
29
  name: (0, schematics_utilities_1.CoerceSuffix)(controllerName, '-item'),
16
- propertyList: [
17
- {
18
- name: 'uuid',
19
- type: 'string',
20
- },
21
- {
22
- name: 'hasChildren',
23
- type: 'boolean',
24
- },
25
- {
26
- name: 'children',
27
- type: (0, schematics_utilities_1.classify)((0, schematics_utilities_1.CoerceSuffix)(controllerName, '-item-dto')),
28
- isArray: true,
29
- isOptional: true,
30
- isType: true,
31
- },
32
- ],
30
+ propertyList,
33
31
  });
34
32
  (0, coerce_imports_1.CoerceImports)(sourceFile, [
35
33
  {
@@ -1 +1 @@
1
- {"version":3,"file":"coerce-get-root-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-get-root-operation.ts"],"names":[],"mappings":";;;AAAA,qEAGoC;AACpC,+DAA2D;AAC3D,yDAAoD;AACpD,yDAG4B;AAI5B,SAAgB,sBAAsB,CAAC,OAAgD;IACrF,IAAI,EACF,gBAAgB,EAChB,cAAc,GACf,GAAG,OAAO,CAAC;IACZ,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,IAAhB,gBAAgB,GAAK,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAC;IAChC,cAAc,GAAG,IAAA,mCAAY,EAAC,cAAc,EAAE,aAAa,CAAC,CAAC;IAC7D,OAAO,IAAA,kCAAe,kCACjB,OAAO,KACV,cAAc,EACd,aAAa,EAAE,UAAU,EACzB,gBAAgB,EAAE,CAChB,OAAO,EACP,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,EAAE;YAEF,MAAM,EACJ,SAAS,EACT,QAAQ,GACT,GAAG,IAAA,iCAAc,EAAC;gBACjB,OAAO;gBACP,IAAI,EAAE,IAAA,mCAAY,EAAC,cAAc,EAAE,OAAO,CAAC;gBAC3C,YAAY,EAAE;oBACZ;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,QAAQ;qBACf;oBACD;wBACE,IAAI,EAAE,aAAa;wBACnB,IAAI,EAAE,SAAS;qBAChB;oBACD;wBACE,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,IAAA,+BAAQ,EAAC,IAAA,mCAAY,EAAC,cAAc,EAAE,WAAW,CAAC,CAAC;wBACzD,OAAO,EAAE,IAAI;wBACb,UAAU,EAAE,IAAI;wBAChB,MAAM,EAAE,IAAI;qBACb;iBACF;aACF,CAAC,CAAC;YAEH,IAAA,8BAAa,EAAC,UAAU,EAAE;gBACxB;oBACE,YAAY,EAAE,CAAE,iBAAiB,CAAE;oBACnC,eAAe,EAAE,mBAAmB;iBACrC;gBACD;oBACE,YAAY,EAAE,CAAE,uBAAuB,CAAE;oBACzC,eAAe,EAAE,sBAAsB;iBACxC;gBACD;oBACE,YAAY,EAAE,CAAE,SAAS,CAAE;oBAC3B,eAAe,EAAE,QAAQ;iBAC1B;aACF,CAAC,CAAC;YAEH,uBACE,UAAU,EAAE,SAAS,GAAG,IAAI,IACzB,gBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,CAAC,EAC3E;QACJ,CAAC,IACD,CAAC;AACL,CAAC;AAhED,wDAgEC"}
1
+ {"version":3,"file":"coerce-get-root-operation.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/coerce-get-root-operation.ts"],"names":[],"mappings":";;;AAAA,qEAGoC;AACpC,+CAGyB;AACzB,+DAA2D;AAC3D,yDAAoD;AACpD,yDAG4B;AAO5B,SAAgB,sBAAsB,CAAC,OAAgD;IACrF,MAAM,EACJ,gBAAgB,GAAG,gBAAI,EACvB,YAAY,GAAG,EAAE,GAClB,GAAG,OAAO,CAAC;IACZ,IAAI,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;IACjC,IAAA,4BAAgB,EAAC,YAAY,EAAE;QAC7B;YACE,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,SAAS;SAChB;QACD;YACE,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,IAAI;YAChB,MAAM,EAAE,IAAI;SACb;KACF,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;IAChC,cAAc,GAAG,IAAA,mCAAY,EAAC,cAAc,EAAE,aAAa,CAAC,CAAC;IAC7D,OAAO,IAAA,kCAAe,kCACjB,OAAO,KACV,cAAc,EACd,aAAa,EAAE,UAAU,EACzB,gBAAgB,EAAE,CAChB,OAAO,EACP,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,EAAE;YAEF,MAAM,EACJ,SAAS,EACT,QAAQ,GACT,GAAG,IAAA,iCAAc,EAAC;gBACjB,OAAO;gBACP,IAAI,EAAE,IAAA,mCAAY,EAAC,cAAc,EAAE,OAAO,CAAC;gBAC3C,YAAY;aACb,CAAC,CAAC;YAEH,IAAA,8BAAa,EAAC,UAAU,EAAE;gBACxB;oBACE,YAAY,EAAE,CAAE,iBAAiB,CAAE;oBACnC,eAAe,EAAE,mBAAmB;iBACrC;gBACD;oBACE,YAAY,EAAE,CAAE,uBAAuB,CAAE;oBACzC,eAAe,EAAE,sBAAsB;iBACxC;gBACD;oBACE,YAAY,EAAE,CAAE,SAAS,CAAE;oBAC3B,eAAe,EAAE,QAAQ;iBAC1B;aACF,CAAC,CAAC;YAEH,uBACE,UAAU,EAAE,SAAS,GAAG,IAAI,IACzB,gBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,CAAC,EAC3E;QACJ,CAAC,IACD,CAAC;AACL,CAAC;AA7DD,wDA6DC"}
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CoerceOptionsOperationRule = void 0;
4
4
  const utilities_1 = require("@rxap/utilities");
5
5
  const coerce_imports_1 = require("../ts-morph/coerce-imports");
6
- const write_type_1 = require("../ts-morph/write-type");
6
+ const ts_morph_1 = require("@rxap/ts-morph");
7
7
  const coerce_dto_class_1 = require("./coerce-dto-class");
8
8
  const coerce_operation_1 = require("./coerce-operation");
9
9
  function CoerceOptionsOperationRule(options) {
@@ -20,7 +20,7 @@ function CoerceOptionsOperationRule(options) {
20
20
  },
21
21
  {
22
22
  name: 'value',
23
- type: (0, write_type_1.WriteType)(control),
23
+ type: (0, ts_morph_1.WriteType)(control, sourceFile),
24
24
  },
25
25
  ],
26
26
  });
@@ -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,uDAAmD;AAEnD,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,sBAAS,EAAC,OAAO,CAAC;qBACzB;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,+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,3 +1,4 @@
1
+ import { TypeImport } from '@rxap/ts-morph';
1
2
  import { ClassDeclaration, ClassDeclarationStructure, ImportDeclarationStructure, OptionalKind, SourceFile, WriterFunction } from 'ts-morph';
2
3
  export interface DtoClassProperty {
3
4
  name: string;
@@ -6,14 +7,18 @@ export interface DtoClassProperty {
6
7
  *
7
8
  * if type = '<self>' the type will be the name of the class
8
9
  */
9
- type: string | WriterFunction;
10
- isArray?: boolean;
11
- isType?: boolean;
12
- isOptional?: boolean;
10
+ type: string | WriterFunction | TypeImport | '<self>';
11
+ isArray?: boolean | null;
12
+ /**
13
+ * indicates that the @Type decorator should be used as the type of the property is another dto class
14
+ */
15
+ isType?: boolean | null;
16
+ isOptional?: boolean | null;
13
17
  /**
14
18
  * Use to import the type
19
+ * @deprecated use the type property with a TypeImport object
15
20
  */
16
- moduleSpecifier?: string;
21
+ moduleSpecifier?: string | null;
17
22
  }
18
23
  export declare function CreateDtoClass(sourceFile: SourceFile, className: string, propertyList: DtoClassProperty[], classStructure?: Omit<OptionalKind<ClassDeclarationStructure>, 'name'>, structures?: Array<OptionalKind<ImportDeclarationStructure>>): ClassDeclaration;
19
24
  export declare function CreatePageDtoClass(sourceFile: SourceFile, className: string, rowType: string | WriterFunction, classStructure?: Omit<OptionalKind<ClassDeclarationStructure>, 'name'>, structures?: Array<OptionalKind<ImportDeclarationStructure>>): ClassDeclaration;
@@ -5,6 +5,7 @@ const schematics_utilities_1 = require("@rxap/schematics-utilities");
5
5
  const ts_morph_1 = require("ts-morph");
6
6
  const coerce_class_1 = require("../coerce-class");
7
7
  const coerce_imports_1 = require("../ts-morph/coerce-imports");
8
+ const ts_morph_2 = require("@rxap/ts-morph");
8
9
  function CreateDtoClass(sourceFile, className, propertyList, classStructure, structures) {
9
10
  var _a;
10
11
  className = (0, schematics_utilities_1.CoerceSuffix)(className, 'Dto');
@@ -42,17 +43,10 @@ function CreateDtoClass(sourceFile, className, propertyList, classStructure, str
42
43
  arguments: [
43
44
  w => {
44
45
  w.write('() => ');
45
- if (typeof property.type === 'string') {
46
- if (property.type === 'date') {
47
- w.write('Date');
48
- }
49
- else {
50
- w.write(property.type);
51
- }
52
- }
53
- else {
54
- property.type(w);
55
- }
46
+ (0, ts_morph_2.WriteType)({
47
+ type: property.type,
48
+ isArray: false
49
+ }, sourceFile)(w);
56
50
  },
57
51
  ],
58
52
  });
@@ -63,19 +57,10 @@ function CreateDtoClass(sourceFile, className, propertyList, classStructure, str
63
57
  decorators.push({
64
58
  name: 'IsInstance',
65
59
  arguments: [
66
- w => {
67
- if (typeof property.type === 'string') {
68
- if (property.type === 'date') {
69
- w.write('Date');
70
- }
71
- else {
72
- w.write(property.type);
73
- }
74
- }
75
- else {
76
- property.type(w);
77
- }
78
- },
60
+ (0, ts_morph_2.WriteType)({
61
+ type: property.type,
62
+ isArray: false
63
+ }, sourceFile),
79
64
  w => {
80
65
  if (property.isArray) {
81
66
  ts_morph_1.Writers.object({ each: 'true' })(w);
@@ -142,22 +127,8 @@ function CreateDtoClass(sourceFile, className, propertyList, classStructure, str
142
127
  }
143
128
  classStructure.properties.push({
144
129
  name: property.name,
145
- type: !property.isArray ? property.type : w => {
146
- w.write('Array<');
147
- if (typeof property.type === 'string') {
148
- if (property.type === 'date') {
149
- w.write('Date');
150
- }
151
- else {
152
- w.write(property.type);
153
- }
154
- }
155
- else {
156
- property.type(w);
157
- }
158
- w.write('>');
159
- },
160
- hasQuestionToken: property.isOptional,
130
+ type: (0, ts_morph_2.WriteType)(property, sourceFile),
131
+ hasQuestionToken: !!property.isOptional,
161
132
  hasExclamationToken: !property.isOptional,
162
133
  decorators,
163
134
  });
@@ -1 +1 @@
1
- {"version":3,"file":"create-dto-class.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/create-dto-class.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-dto-class.js","sourceRoot":"","sources":["../../../../../../../packages/schematic/ts-morph/src/lib/nest/create-dto-class.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,11 @@
1
+ import { NormalizedDataProperty } from '@rxap/ts-morph';
1
2
  import { InterfaceDeclaration, InterfaceDeclarationStructure, OptionalKind, Project, SourceFile } from 'ts-morph';
2
3
  import { TsMorphAngularProjectTransformOptions, TsMorphNestProjectTransformOptions, TsMorphTransformFunctionRule } from '../ts-morph-transform';
3
4
  export declare function CoerceInterface(sourceFile: SourceFile, interfaceName: string, structure?: Omit<OptionalKind<InterfaceDeclarationStructure>, 'name'>): InterfaceDeclaration;
4
5
  export interface CoerceInterfaceRuleOptions extends TsMorphNestProjectTransformOptions, TsMorphAngularProjectTransformOptions {
5
6
  name: string;
6
7
  structure?: Omit<OptionalKind<InterfaceDeclarationStructure>, 'name'>;
8
+ propertyList?: NormalizedDataProperty[];
7
9
  tsMorphTransform?: (project: Project, sourceFile: SourceFile, interfaceDeclaration: InterfaceDeclaration) => void;
8
10
  }
9
11
  export declare function CoerceInterfaceRule(options: CoerceInterfaceRuleOptions, tsMorphTransForm: TsMorphTransformFunctionRule<TsMorphNestProjectTransformOptions | TsMorphAngularProjectTransformOptions>): import("@angular-devkit/schematics").Rule;