@abp/ng.schematics 7.4.2 → 8.0.0-rc.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.
@@ -8,6 +8,8 @@ exports.SYSTEM_TYPES = new Map([
8
8
  ['Collections.Generic.Dictionary', 'Record'],
9
9
  ['DateTime', 'string'],
10
10
  ['DateTimeOffset', 'string'],
11
+ ['DateOnly', 'string'],
12
+ ['TimeOnly', 'string'],
11
13
  ['Decimal', 'number'],
12
14
  ['Double', 'number'],
13
15
  ['Guid', 'string'],
@@ -1 +1 @@
1
- {"version":3,"file":"system-types.js","sourceRoot":"","sources":["../../../../packages/schematics/src/constants/system-types.ts"],"names":[],"mappings":";;;AAAa,QAAA,YAAY,GAAG,IAAI,GAAG,CAAC;IAClC,CAAC,MAAM,EAAE,SAAS,CAAC;IACnB,CAAC,MAAM,EAAE,QAAQ,CAAC;IAClB,CAAC,MAAM,EAAE,QAAQ,CAAC;IAClB,CAAC,gCAAgC,EAAE,QAAQ,CAAC;IAC5C,CAAC,UAAU,EAAE,QAAQ,CAAC;IACtB,CAAC,gBAAgB,EAAE,QAAQ,CAAC;IAC5B,CAAC,SAAS,EAAE,QAAQ,CAAC;IACrB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,MAAM,EAAE,QAAQ,CAAC;IAClB,CAAC,OAAO,EAAE,QAAQ,CAAC;IACnB,CAAC,OAAO,EAAE,QAAQ,CAAC;IACnB,CAAC,OAAO,EAAE,QAAQ,CAAC;IACnB,CAAC,oBAAoB,EAAE,QAAQ,CAAC;IAChC,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,OAAO,EAAE,QAAQ,CAAC;IACnB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,UAAU,EAAE,QAAQ,CAAC;IACtB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,MAAM,EAAE,MAAM,CAAC;CACjB,CAAC,CAAC"}
1
+ {"version":3,"file":"system-types.js","sourceRoot":"","sources":["../../../../packages/schematics/src/constants/system-types.ts"],"names":[],"mappings":";;;AAAa,QAAA,YAAY,GAAG,IAAI,GAAG,CAAC;IAClC,CAAC,MAAM,EAAE,SAAS,CAAC;IACnB,CAAC,MAAM,EAAE,QAAQ,CAAC;IAClB,CAAC,MAAM,EAAE,QAAQ,CAAC;IAClB,CAAC,gCAAgC,EAAE,QAAQ,CAAC;IAC5C,CAAC,UAAU,EAAE,QAAQ,CAAC;IACtB,CAAC,gBAAgB,EAAE,QAAQ,CAAC;IAC5B,CAAC,UAAU,EAAE,QAAQ,CAAC;IACtB,CAAC,UAAU,EAAE,QAAQ,CAAC;IACtB,CAAC,SAAS,EAAE,QAAQ,CAAC;IACrB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,MAAM,EAAE,QAAQ,CAAC;IAClB,CAAC,OAAO,EAAE,QAAQ,CAAC;IACnB,CAAC,OAAO,EAAE,QAAQ,CAAC;IACnB,CAAC,OAAO,EAAE,QAAQ,CAAC;IACnB,CAAC,oBAAoB,EAAE,QAAQ,CAAC;IAChC,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,OAAO,EAAE,QAAQ,CAAC;IACnB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,UAAU,EAAE,QAAQ,CAAC;IACtB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,MAAM,EAAE,MAAM,CAAC;CACjB,CAAC,CAAC"}
package/index.d.ts CHANGED
@@ -1 +1,3 @@
1
- export {};
1
+ export * from './enums';
2
+ export * from './models';
3
+ export * from './constants';
package/index.js CHANGED
@@ -1,3 +1,20 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
2
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./enums"), exports);
18
+ __exportStar(require("./models"), exports);
19
+ __exportStar(require("./constants"), exports);
3
20
  //# sourceMappingURL=index.js.map
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../packages/schematics/src/index.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../packages/schematics/src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,2CAAyB;AACzB,8CAA4B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@abp/ng.schematics",
3
- "version": "7.4.2",
3
+ "version": "8.0.0-rc.1",
4
4
  "author": "",
5
5
  "schematics": "./collection.json",
6
6
  "dependencies": {
package/utils/model.d.ts CHANGED
@@ -9,3 +9,4 @@ export interface ModelGeneratorParams {
9
9
  export declare function createImportRefsToModelReducer(params: ModelGeneratorParams): (models: Model[], importRefs: string[]) => Model[];
10
10
  export declare function createImportRefToInterfaceReducerCreator(params: ModelGeneratorParams): (interfaces: Interface[], ref: string) => Interface[];
11
11
  export declare function createRefToImportReducerCreator(params: ModelGeneratorParams): (namespace: string) => (imports: import("../models").Import[], types: TypeWithEnum[]) => import("../models").Import[];
12
+ export declare function parseBaseTypeWithGenericTypes(type: string): string[];
package/utils/model.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createRefToImportReducerCreator = exports.createImportRefToInterfaceReducerCreator = exports.createImportRefsToModelReducer = void 0;
3
+ exports.parseBaseTypeWithGenericTypes = exports.createRefToImportReducerCreator = exports.createImportRefToInterfaceReducerCreator = exports.createImportRefsToModelReducer = void 0;
4
4
  const constants_1 = require("../constants");
5
5
  const models_1 = require("../models");
6
6
  const generics_1 = require("./generics");
@@ -46,11 +46,15 @@ function createImportRefsToModelReducer(params) {
46
46
  const toBeImported = [];
47
47
  model.interfaces.forEach(_interface => {
48
48
  const { baseType } = types[_interface.ref];
49
- if (baseType && (0, namespace_1.parseNamespace)(solution, baseType) !== model.namespace)
50
- toBeImported.push({
51
- type: baseType.split('<')[0],
52
- isEnum: false,
49
+ if (baseType && (0, namespace_1.parseNamespace)(solution, baseType) !== model.namespace) {
50
+ const baseTypeWithGenericParams = parseBaseTypeWithGenericTypes(baseType);
51
+ baseTypeWithGenericParams.forEach(t => {
52
+ toBeImported.push({
53
+ type: t,
54
+ isEnum: false,
55
+ });
53
56
  });
57
+ }
54
58
  [..._interface.properties, ..._interface.generics].forEach(prop => {
55
59
  prop.refs.forEach(ref => {
56
60
  const propType = types[ref];
@@ -135,6 +139,20 @@ function createRefToImportReducerCreator(params) {
135
139
  }
136
140
  exports.createRefToImportReducerCreator = createRefToImportReducerCreator;
137
141
  function isOptionalProperty(prop) {
138
- return (prop.typeSimple.endsWith('?') || (prop.typeSimple === 'string' && prop.isRequired === false));
142
+ return (prop.typeSimple.endsWith('?') || (prop.typeSimple === 'string' && !prop.isRequired));
139
143
  }
144
+ function parseBaseTypeWithGenericTypes(type) {
145
+ const parsedTypeNode = (0, tree_1.parseGenerics)(type);
146
+ const nodeToText = (node, acc = []) => {
147
+ acc.push(node.data);
148
+ if (node.children && node.children.length > 0) {
149
+ node.children.forEach(child => {
150
+ nodeToText(child, acc);
151
+ });
152
+ }
153
+ return acc;
154
+ };
155
+ return nodeToText(parsedTypeNode);
156
+ }
157
+ exports.parseBaseTypeWithGenericTypes = parseBaseTypeWithGenericTypes;
140
158
  //# sourceMappingURL=model.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../packages/schematics/src/utils/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../packages/schematics/src/utils/model.ts"],"names":[],"mappings":";;;AAAA,4CAA0C;AAC1C,sCAAwF;AACxF,yCAKoB;AACpB,2CAA6C;AAC7C,iCAA6C;AAC7C,iCAA+B;AAC/B,iCAAiD;AACjD,iCAMgB;AAChB,8DAA8D;AAC9D,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAU5C,SAAgB,8BAA8B,CAAC,MAA4B;IACzE,MAAM,4BAA4B,GAAG,wCAAwC,CAAC,MAAM,CAAC,CAAC;IACtF,MAAM,wBAAwB,GAAG,+BAA+B,CAAC,MAAM,CAAC,CAAC;IACzE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IAEnC,OAAO,CAAC,MAAe,EAAE,UAAoB,EAAE,EAAE;QAC/C,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC;QAEvE,cAAc,CAAC,UAAU,CAAC,CAAC;QAE3B,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YAC9B,IAAI,sBAAU,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,OAAO;YAE5C,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAE,CAAC,MAAM,EAAE;gBACjC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;gBAChE,OAAO;aACR;YAED,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,UAAU,CAAC,SAAS,CAAC,CAAC;YAC1E,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE;gBACd,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU,CAAC;oBAAE,OAAO;gBAEvF,MAAM,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aAC3C;iBAAM;gBACL,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC;gBAEjC,MAAM,CAAC,IAAI,CACT,IAAI,cAAK,CAAC;oBACR,UAAU,EAAE,CAAC,UAAU,CAAC;oBACxB,SAAS;oBACT,IAAI,EAAE,IAAA,0BAAmB,EAAC,SAAS,EAAE,SAAS,CAAC;iBAChD,CAAC,CACH,CAAC;aACH;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACrB,MAAM,YAAY,GAAmB,EAAE,CAAC;YAExC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;gBACpC,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;gBAE3C,IAAI,QAAQ,IAAI,IAAA,0BAAc,EAAC,QAAQ,EAAE,QAAQ,CAAC,KAAK,KAAK,CAAC,SAAS,EAAC;oBACrE,MAAM,yBAAyB,GAAG,6BAA6B,CAAC,QAAQ,CAAC,CAAC;oBAC1E,yBAAyB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;wBACpC,YAAY,CAAC,IAAI,CAAC;4BAChB,IAAI,EAAE,CAAC;4BACP,MAAM,EAAE,KAAK;yBACd,CAAC,CAAC;oBACL,CAAC,CAAC,CAAA;iBAEX;gBACO,CAAC,GAAG,UAAU,CAAC,UAAU,EAAE,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;oBAChE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;wBACtB,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;wBAC5B,IAAI,CAAC,QAAQ;4BAAE,OAAO;wBACtB,IAAI,QAAQ,CAAC,MAAM;4BAAE,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;6BAC/D,IAAI,IAAA,0BAAc,EAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,KAAK,CAAC,SAAS;4BACxD,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;oBACpD,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,YAAY,CAAC,MAAM;gBAAE,OAAO;YAEjC,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACpE,iBAAiB,CAAC,KAAK,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AAxED,wEAwEC;AAED,SAAS,cAAc,CAAC,UAAuB;IAC7C,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpE,CAAC;AAED,SAAgB,wCAAwC,CAAC,MAA4B;IACnF,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IACnC,MAAM,SAAS,GAAG,IAAA,uBAAgB,EAAC,0BAAmB,CAAC,CAAC;IACxD,MAAM,YAAY,GAAG,IAAA,2BAAoB,GAAE,CAAC;IAC5C,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAA,0BAAmB,EAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;IAChF,MAAM,iBAAiB,GAAG,IAAI,4BAAiB,CAAC,aAAa,CAAC,CAAC;IAE/D,OAAO,sBAAsB,CAAC;IAE9B,SAAS,sBAAsB,CAAC,UAAuB,EAAE,GAAW;QAClE,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,OAAO;YAAE,OAAO,UAAU,CAAC;QAEhC,MAAM,SAAS,GAAG,IAAA,0BAAc,EAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QAEhD,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC;QACnD,gBAAgB,GAAG,gBAAgB,IAAI,EAAE,CAAC;QAC1C,IAAI,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QACpC,UAAU,GAAG,IAAA,0CAA+B,EAAC,UAAU,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;QAE9F,IAAI,IAAI,EAAE;YACR,IAAI,IAAA,kBAAW,EAAC,GAAG,EAAE,IAAI,CAAC,EAAE;gBAC1B,iBAAiB,CAAC,OAAO,CAAC,IAAA,0BAAe,EAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;gBAC5E,OAAO,sBAAsB,CAAC,UAAU,EAAE,IAAA,sCAA2B,EAAC,IAAI,CAAC,CAAC,CAAC;aAC9E;iBAAM;gBACL,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;aAC5B;SACF;QAED,MAAM,EAAE,QAAQ,EAAE,GAAG,iBAAiB,CAAC;QACvC,MAAM,UAAU,GAAG,IAAI,kBAAS,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;QACjF,iBAAiB,CAAC,KAAK,EAAE,CAAC;QAE1B,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE;YACjC,IAAI,IAAI,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAA,YAAK,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7C,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;YAC9C,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC3C,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CACtC,CAAC,GAAa,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,IAAA,oBAAa,EAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,EAC/D,EAAE,CACH,CAAC;YACF,MAAM,QAAQ,GAAG,IAAI,iBAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YACpD,QAAQ,CAAC,WAAW,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;YAE/C,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAE5B,OAAO,CAAC,GAAG,UAAU,CAAC,UAAU,EAAE,GAAG,UAAU,CAAC,QAAQ,CAAC;aACtD,MAAM,CAAW,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;YAC/B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;gBACvB,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM;oBAAE,OAAO;gBAChC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC;oBAAE,OAAO;gBACjD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC,CAAC,CAAC;YAEH,OAAO,IAAI,CAAC;QACd,CAAC,EAAE,EAAE,CAAC;aACL,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAA,oBAAa,EAAC,OAAO,CAAC,QAAS,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACjE,MAAM,CAAC,sBAAsB,EAAE,UAAU,CAAC,CAAC;IAChD,CAAC;AACH,CAAC;AA9DD,4FA8DC;AAED,SAAgB,+BAA+B,CAAC,MAA4B;IAC1E,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAC5B,OAAO,CAAC,SAAiB,EAAE,EAAE,CAAC,IAAA,kCAA2B,EAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AACjF,CAAC;AAHD,0EAGC;AAED,SAAS,kBAAkB,CAAC,IAAiB;IAC3C,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;AAC/F,CAAC;AAED,SAAiB,6BAA6B,CAAC,IAAY;IACzD,MAAM,cAAc,GAAG,IAAA,oBAAa,EAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,CAAC,IAAc,EAAC,MAAe,EAAE,EAAY,EAAE;QAEhE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,IAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAC;YAC3C,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gBAC5B,UAAU,CAAC,KAAK,EAAC,GAAG,CAAC,CAAC;YACxB,CAAC,CAAC,CAAA;SACH;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAA;IACD,OAAO,UAAU,CAAC,cAAc,CAAC,CAAC;AACpC,CAAC;AAbD,sEAaC"}
package/utils/tree.d.ts CHANGED
@@ -9,5 +9,6 @@ export declare class TypeNode {
9
9
  toString(): string;
10
10
  valueOf(): string;
11
11
  }
12
- export declare function parseGenerics(type: string, mapperFn?: TypeNodeMapperFn): TypeNode;
12
+ export declare function parseGenericsOld(type: string, mapperFn?: TypeNodeMapperFn): TypeNode;
13
+ export declare function parseGenerics(type: string, mapperFn?: TypeNodeMapperFn, parent?: TypeNode | null): TypeNode;
13
14
  export declare type TypeNodeMapperFn = (node: TypeNode) => string;
package/utils/tree.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.parseGenerics = exports.TypeNode = void 0;
3
+ exports.parseGenerics = exports.parseGenericsOld = exports.TypeNode = void 0;
4
4
  class TypeNode {
5
5
  constructor(data, parent, mapperFn = (node) => node.data) {
6
6
  this.data = data;
@@ -30,7 +30,7 @@ class TypeNode {
30
30
  }
31
31
  }
32
32
  exports.TypeNode = TypeNode;
33
- function parseGenerics(type, mapperFn) {
33
+ function parseGenericsOld(type, mapperFn) {
34
34
  const [rootType, ...types] = type.split('<');
35
35
  const root = new TypeNode(rootType, null, mapperFn);
36
36
  types.reduce((parent, t) => {
@@ -53,5 +53,32 @@ function parseGenerics(type, mapperFn) {
53
53
  }, root);
54
54
  return root;
55
55
  }
56
+ exports.parseGenericsOld = parseGenericsOld;
57
+ function parseGenerics(type, mapperFn, parent) {
58
+ const regex = /(?<MainType>[\w.]+)<(?<GenericType>.*)>/;
59
+ const match = type.match(regex);
60
+ if (!match) {
61
+ return new TypeNode(type, null, mapperFn);
62
+ }
63
+ const mainType = match.groups?.MainType || '';
64
+ const genericType = match.groups?.GenericType || '';
65
+ const root = new TypeNode(mainType, parent ?? null, mapperFn);
66
+ if (genericType.includes(',')) {
67
+ const genericTypes = genericType.split(',');
68
+ genericTypes.forEach((genericType, index) => {
69
+ const child = parseGenerics(genericType, mapperFn, root);
70
+ child.index = index;
71
+ root.children.push(child);
72
+ child.parent = root;
73
+ });
74
+ }
75
+ else {
76
+ const child = parseGenerics(genericType, mapperFn, root);
77
+ child.index = root.children.length;
78
+ root.children.push(child);
79
+ child.parent = root;
80
+ }
81
+ return root;
82
+ }
56
83
  exports.parseGenerics = parseGenerics;
57
84
  //# sourceMappingURL=tree.js.map
package/utils/tree.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tree.js","sourceRoot":"","sources":["../../../../packages/schematics/src/utils/tree.ts"],"names":[],"mappings":";;;AAAA,MAAa,QAAQ;IAKnB,YACS,IAAY,EACZ,MAAuB,EACvB,WAAW,CAAC,IAAc,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI;QAFxC,SAAI,GAAJ,IAAI,CAAQ;QACZ,WAAM,GAAN,MAAM,CAAiB;QACvB,aAAQ,GAAR,QAAQ,CAAgC;QAPjD,aAAQ,GAAe,EAAE,CAAC;QAE1B,UAAK,GAAG,CAAC,CAAC;IAMP,CAAC;IAEJ,UAAU;QACR,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1F,OAAO,CAAC,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,CAAC,MAAM,CAClC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAa,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC,CACjF,CAAC;IACJ,CAAC;IAED,QAAQ;QACN,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEjC,IAAI,CAAC,IAAI;YAAE,OAAO,EAAE,CAAC;QAErB,MAAM,cAAc,GAAG,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEtE,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,cAAc,CAAC;QAExC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;QAEtC,OAAO,CACL,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YACjC,cAAc;YACd,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CACpD,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;CACF;AAvCD,4BAuCC;AAED,SAAgB,aAAa,CAAC,IAAY,EAAE,QAA2B;IACrE,MAAM,CAAC,QAAQ,EAAE,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7C,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;IAEpD,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACzB,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAEzC,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QACtD,QAAQ,CAAC,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;QACxC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,MAAM,GAAG,QAAQ,CAAC;QAElB,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACrC,OAAO,MAAM,EAAE;YAAE,MAAM,GAAG,MAAM,CAAC,MAAO,CAAC;QAEzC,IAAI,KAAK,EAAE;YACT,MAAM,GAAG,MAAM,CAAC,MAAO,CAAC;YACxB,MAAM,SAAS,GAAG,IAAI,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;YACxD,SAAS,CAAC,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YACzC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAChC,MAAM,GAAG,SAAS,CAAC;SACpB;QAED,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,IAAI,CAAC,CAAC;IAET,OAAO,IAAI,CAAC;AACd,CAAC;AA3BD,sCA2BC"}
1
+ {"version":3,"file":"tree.js","sourceRoot":"","sources":["../../../../packages/schematics/src/utils/tree.ts"],"names":[],"mappings":"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"}