@maximus_code/grpc-generator 0.0.1-dev.11 → 0.0.1-dev.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/src/lib/cleanImports.js +18 -53
- package/dist/cjs/src/lib/cleanImports.js.map +1 -1
- package/dist/cjs/src/reader/readClass.js +4 -3
- package/dist/cjs/src/reader/readClass.js.map +1 -1
- package/dist/esm/src/lib/cleanImports.js +18 -52
- package/dist/esm/src/lib/cleanImports.js.map +1 -1
- package/dist/esm/src/reader/readClass.js +3 -1
- package/dist/esm/src/reader/readClass.js.map +1 -1
- package/dist/types/src/lib/cleanImports.d.ts +0 -1
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.cleanImports = void 0;
|
|
4
4
|
const lodash_1 = require("lodash");
|
|
5
5
|
const utils_1 = require("../utils");
|
|
6
6
|
const types_1 = require("../types");
|
|
@@ -15,7 +15,7 @@ const cleanImports = async (model, generateType) => {
|
|
|
15
15
|
names.add(property.type.split('.')[0]);
|
|
16
16
|
}
|
|
17
17
|
const imports = new Map();
|
|
18
|
-
for (const name of [...names]) {
|
|
18
|
+
for (const name of [...names.values()]) {
|
|
19
19
|
const el = model.imports.find((i) => i.names.includes(name));
|
|
20
20
|
if (!el) {
|
|
21
21
|
console.log(`Missing import for name: ${name} from model: ${model.name}`);
|
|
@@ -47,13 +47,25 @@ const _cleanDto = async (imports, properties) => {
|
|
|
47
47
|
};
|
|
48
48
|
};
|
|
49
49
|
const _cleanAllowedImports = async (imports, properties, allowedImports, type) => {
|
|
50
|
+
const filteredImports = new Map();
|
|
51
|
+
const propertiesTypes = (0, utils_1.uniqueArray)(properties.map((p) => p.type));
|
|
52
|
+
for (const [key, value] of [...imports]) {
|
|
53
|
+
if (allowedImports.includes(key)) {
|
|
54
|
+
filteredImports.set(key, value);
|
|
55
|
+
continue;
|
|
56
|
+
}
|
|
57
|
+
const filtered = value.names.filter((n) => propertiesTypes.includes(n));
|
|
58
|
+
if (filtered.length === 0)
|
|
59
|
+
continue;
|
|
60
|
+
filteredImports.set(key, {
|
|
61
|
+
...value,
|
|
62
|
+
names: value.names.filter((n) => propertiesTypes.includes(n)),
|
|
63
|
+
});
|
|
64
|
+
}
|
|
50
65
|
const result = {
|
|
51
|
-
imports: [],
|
|
66
|
+
imports: [...filteredImports.values()],
|
|
52
67
|
properties: [],
|
|
53
68
|
};
|
|
54
|
-
result.imports = [...imports]
|
|
55
|
-
.filter(([key, _]) => allowedImports.includes(key))
|
|
56
|
-
.map((i) => i[1]);
|
|
57
69
|
const names = result.imports.map((i) => i.names).flat();
|
|
58
70
|
result.properties = properties.map((p) => ({
|
|
59
71
|
...p,
|
|
@@ -67,51 +79,4 @@ const _cleanAllowedImports = async (imports, properties, allowedImports, type) =
|
|
|
67
79
|
}
|
|
68
80
|
return result;
|
|
69
81
|
};
|
|
70
|
-
const cleanImportsOld = async (model, generateType) => {
|
|
71
|
-
var _a;
|
|
72
|
-
const imports = new Map();
|
|
73
|
-
const properties = (0, lodash_1.cloneDeep)(model.properties);
|
|
74
|
-
for (const [_, property] of Object.entries(properties)) {
|
|
75
|
-
const importEl = model.imports.find((i) => i.names.includes(property.type));
|
|
76
|
-
if (!importEl)
|
|
77
|
-
continue;
|
|
78
|
-
if (!imports.has(importEl.from)) {
|
|
79
|
-
imports.set(importEl.from, { ...importEl, names: [] });
|
|
80
|
-
}
|
|
81
|
-
imports.set(importEl.from, {
|
|
82
|
-
...importEl,
|
|
83
|
-
names: (0, utils_1.uniqueArray)([
|
|
84
|
-
...imports.get(importEl.from).names,
|
|
85
|
-
property.type,
|
|
86
|
-
]),
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
for (const [index, property] of Object.entries(properties)) {
|
|
90
|
-
if (generateType === types_1.GenerateTypeEnum.DTO) {
|
|
91
|
-
properties[index].decorators = [];
|
|
92
|
-
}
|
|
93
|
-
if (generateType === types_1.GenerateTypeEnum.SWAGGER) {
|
|
94
|
-
properties[index].decorators = property.decorators.filter((d) => model.imports.some((i) => i.names.includes(d.name) &&
|
|
95
|
-
i.from === '@nestjs/swagger'));
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
if (generateType === types_1.GenerateTypeEnum.DTO) {
|
|
99
|
-
return {
|
|
100
|
-
properties,
|
|
101
|
-
imports: Array.from(imports.values()),
|
|
102
|
-
};
|
|
103
|
-
}
|
|
104
|
-
let namespaces = [];
|
|
105
|
-
if (generateType === types_1.GenerateTypeEnum.SWAGGER) {
|
|
106
|
-
const temp = [
|
|
107
|
-
...((_a = Array.from(imports.values())) !== null && _a !== void 0 ? _a : []),
|
|
108
|
-
...model.imports.filter((i) => i.from === '@nestjs/swagger' || i.from === '.'),
|
|
109
|
-
];
|
|
110
|
-
return {
|
|
111
|
-
properties,
|
|
112
|
-
imports: Array.from(new Map(temp.map((i) => [i.from, i])).values()),
|
|
113
|
-
};
|
|
114
|
-
}
|
|
115
|
-
};
|
|
116
|
-
exports.cleanImportsOld = cleanImportsOld;
|
|
117
82
|
//# sourceMappingURL=cleanImports.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cleanImports.js","sourceRoot":"","sources":["../../../../src/lib/cleanImports.ts"],"names":[],"mappings":";;;AAAA,mCAAmC;AACnC,oCAAuC;AACvC,oCAMkB;AAEX,MAAM,YAAY,GAAG,KAAK,EAC7B,KAAmB,EACnB,YAA8B,EAEuB,EAAE;;IAEvD,MAAM,UAAU,GAAsB,IAAA,kBAAS,EAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAGlE,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;QAChC,IACI,CAAC,wBAAgB,CAAC,OAAO,EAAE,wBAAgB,CAAC,OAAO,CAAC,CAAC,QAAQ,CACzD,YAAY,CACf,EACH,CAAC;YACC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAmB,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACxE,CAAC;QAED,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,OAAO,GAA+B,IAAI,GAAG,EAAE,CAAC;IAEtD,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"cleanImports.js","sourceRoot":"","sources":["../../../../src/lib/cleanImports.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,17 +9,18 @@ const readClass = (project) => {
|
|
|
9
9
|
const properties = cls
|
|
10
10
|
.getProperties()
|
|
11
11
|
.map((p) => {
|
|
12
|
-
var _a, _b, _c, _d, _e;
|
|
12
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
13
13
|
const fullName = (_b = (_a = p
|
|
14
14
|
.getType()) === null || _a === void 0 ? void 0 : _a.getSymbol()) === null || _b === void 0 ? void 0 : _b.getFullyQualifiedName().split('".');
|
|
15
|
-
let type = (_d = (_c = p.getType().
|
|
15
|
+
let type = (_f = (_d = (_c = p.getType().getAliasSymbol()) === null || _c === void 0 ? void 0 : _c.getFullyQualifiedName()) !== null && _d !== void 0 ? _d : (_e = p.getType().getSymbol()) === null || _e === void 0 ? void 0 : _e.getName()) !== null && _f !== void 0 ? _f : p.getType().getText();
|
|
16
16
|
if (fullName && fullName.length > 1) {
|
|
17
17
|
type = fullName.slice(1).join('.');
|
|
18
18
|
}
|
|
19
19
|
if (type === '__type' ||
|
|
20
|
-
((
|
|
20
|
+
((_g = (fullName !== null && fullName !== void 0 ? fullName : [])[0]) !== null && _g !== void 0 ? _g : []) === '__type') {
|
|
21
21
|
type = p.getType().getText();
|
|
22
22
|
}
|
|
23
|
+
type = type.replace(/".+"\./, '');
|
|
23
24
|
return {
|
|
24
25
|
name: p.getName(),
|
|
25
26
|
type,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"readClass.js","sourceRoot":"","sources":["../../../../src/reader/readClass.ts"],"names":[],"mappings":";;;AAEA,gCAAgE;AAEzD,MAAM,SAAS,GAAG,CAAC,OAAgB,EAAkB,EAAE;IAC1D,MAAM,OAAO,GAAmB,EAAE,CAAC;IAEnC,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;QAC5C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC;YACpC,MAAM,UAAU,GAAsB,GAAG;iBACpC,aAAa,EAAE;iBACf,GAAG,CAAC,CAAC,CAAsB,EAAmB,EAAE;;gBAC7C,MAAM,QAAQ,GAAa,MAAA,MAAA,CAAC;qBACvB,OAAO,EAAE,0CACR,SAAS,EAAE,0CACX,qBAAqB,GACtB,KAAK,CAAC,IAAI,CAAC,CAAC;gBAEjB,IAAI,IAAI,GACJ,MAAA,MAAA,CAAC,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,0CAAE,OAAO,EAAE,mCAClC,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC;gBAE1B,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClC,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACvC,CAAC;gBACD,IACI,IAAI,KAAK,QAAQ;oBACjB,CAAC,MAAA,CAAC,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,EAAE,CAAC,CAAC,CAAC,CAAC,mCAAI,EAAE,CAAC,KAAK,QAAQ,EAC1C,CAAC;oBACC,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC;gBACjC,CAAC;
|
|
1
|
+
{"version":3,"file":"readClass.js","sourceRoot":"","sources":["../../../../src/reader/readClass.ts"],"names":[],"mappings":";;;AAEA,gCAAgE;AAEzD,MAAM,SAAS,GAAG,CAAC,OAAgB,EAAkB,EAAE;IAC1D,MAAM,OAAO,GAAmB,EAAE,CAAC;IAEnC,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;QAC5C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC;YACpC,MAAM,UAAU,GAAsB,GAAG;iBACpC,aAAa,EAAE;iBACf,GAAG,CAAC,CAAC,CAAsB,EAAmB,EAAE;;gBAC7C,MAAM,QAAQ,GAAa,MAAA,MAAA,CAAC;qBACvB,OAAO,EAAE,0CACR,SAAS,EAAE,0CACX,qBAAqB,GACtB,KAAK,CAAC,IAAI,CAAC,CAAC;gBAEjB,IAAI,IAAI,GACJ,MAAA,MAAA,MAAA,CAAC,CAAC,OAAO,EAAE,CAAC,cAAc,EAAE,0CAAE,qBAAqB,EAAE,mCACrD,MAAA,CAAC,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,0CAAE,OAAO,EAAE,mCAClC,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC;gBAE1B,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClC,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACvC,CAAC;gBACD,IACI,IAAI,KAAK,QAAQ;oBACjB,CAAC,MAAA,CAAC,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,EAAE,CAAC,CAAC,CAAC,CAAC,mCAAI,EAAE,CAAC,KAAK,QAAQ,EAC1C,CAAC;oBACC,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC;gBACjC,CAAC;gBACD,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;gBAElC,OAAO;oBACH,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;oBACjB,IAAI;oBACJ,QAAQ,EAAE,CAAC,CAAC,gBAAgB,EAAE;oBAC9B,UAAU,EAAE,IAAA,oBAAc,EAAC,CAAC,CAAC;iBAChC,CAAC;YACN,CAAC,CAAC,CAAC;YAEP,OAAO,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,GAAG,CAAC,OAAO,EAAG;gBACpB,UAAU,EAAE,IAAA,oBAAc,EAAC,GAAG,CAAC;gBAC/B,UAAU;gBACV,OAAO,EAAE,IAAA,4BAAsB,EAAC,GAAG,CAAC;aACvC,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED,OAAO,OAAO,CAAC;AACnB,CAAC,CAAC;AAhDW,QAAA,SAAS,aAgDpB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.cleanImports = void 0;
|
|
4
4
|
const lodash_1 = require("lodash");
|
|
5
5
|
const utils_1 = require("../utils");
|
|
6
6
|
const types_1 = require("../types");
|
|
@@ -14,7 +14,7 @@ const cleanImports = async (model, generateType) => {
|
|
|
14
14
|
names.add(property.type.split('.')[0]);
|
|
15
15
|
}
|
|
16
16
|
const imports = new Map();
|
|
17
|
-
for (const name of [...names]) {
|
|
17
|
+
for (const name of [...names.values()]) {
|
|
18
18
|
const el = model.imports.find((i) => i.names.includes(name));
|
|
19
19
|
if (!el) {
|
|
20
20
|
console.log(`Missing import for name: ${name} from model: ${model.name}`);
|
|
@@ -46,13 +46,25 @@ const _cleanDto = async (imports, properties) => {
|
|
|
46
46
|
};
|
|
47
47
|
};
|
|
48
48
|
const _cleanAllowedImports = async (imports, properties, allowedImports, type) => {
|
|
49
|
+
const filteredImports = new Map();
|
|
50
|
+
const propertiesTypes = (0, utils_1.uniqueArray)(properties.map((p) => p.type));
|
|
51
|
+
for (const [key, value] of [...imports]) {
|
|
52
|
+
if (allowedImports.includes(key)) {
|
|
53
|
+
filteredImports.set(key, value);
|
|
54
|
+
continue;
|
|
55
|
+
}
|
|
56
|
+
const filtered = value.names.filter((n) => propertiesTypes.includes(n));
|
|
57
|
+
if (filtered.length === 0)
|
|
58
|
+
continue;
|
|
59
|
+
filteredImports.set(key, {
|
|
60
|
+
...value,
|
|
61
|
+
names: value.names.filter((n) => propertiesTypes.includes(n)),
|
|
62
|
+
});
|
|
63
|
+
}
|
|
49
64
|
const result = {
|
|
50
|
-
imports: [],
|
|
65
|
+
imports: [...filteredImports.values()],
|
|
51
66
|
properties: [],
|
|
52
67
|
};
|
|
53
|
-
result.imports = [...imports]
|
|
54
|
-
.filter(([key, _]) => allowedImports.includes(key))
|
|
55
|
-
.map((i) => i[1]);
|
|
56
68
|
const names = result.imports.map((i) => i.names).flat();
|
|
57
69
|
result.properties = properties.map((p) => ({
|
|
58
70
|
...p,
|
|
@@ -66,50 +78,4 @@ const _cleanAllowedImports = async (imports, properties, allowedImports, type) =
|
|
|
66
78
|
}
|
|
67
79
|
return result;
|
|
68
80
|
};
|
|
69
|
-
const cleanImportsOld = async (model, generateType) => {
|
|
70
|
-
const imports = new Map();
|
|
71
|
-
const properties = (0, lodash_1.cloneDeep)(model.properties);
|
|
72
|
-
for (const [_, property] of Object.entries(properties)) {
|
|
73
|
-
const importEl = model.imports.find((i) => i.names.includes(property.type));
|
|
74
|
-
if (!importEl)
|
|
75
|
-
continue;
|
|
76
|
-
if (!imports.has(importEl.from)) {
|
|
77
|
-
imports.set(importEl.from, { ...importEl, names: [] });
|
|
78
|
-
}
|
|
79
|
-
imports.set(importEl.from, {
|
|
80
|
-
...importEl,
|
|
81
|
-
names: (0, utils_1.uniqueArray)([
|
|
82
|
-
...imports.get(importEl.from).names,
|
|
83
|
-
property.type,
|
|
84
|
-
]),
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
for (const [index, property] of Object.entries(properties)) {
|
|
88
|
-
if (generateType === types_1.GenerateTypeEnum.DTO) {
|
|
89
|
-
properties[index].decorators = [];
|
|
90
|
-
}
|
|
91
|
-
if (generateType === types_1.GenerateTypeEnum.SWAGGER) {
|
|
92
|
-
properties[index].decorators = property.decorators.filter((d) => model.imports.some((i) => i.names.includes(d.name) &&
|
|
93
|
-
i.from === '@nestjs/swagger'));
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
if (generateType === types_1.GenerateTypeEnum.DTO) {
|
|
97
|
-
return {
|
|
98
|
-
properties,
|
|
99
|
-
imports: Array.from(imports.values()),
|
|
100
|
-
};
|
|
101
|
-
}
|
|
102
|
-
let namespaces = [];
|
|
103
|
-
if (generateType === types_1.GenerateTypeEnum.SWAGGER) {
|
|
104
|
-
const temp = [
|
|
105
|
-
...(Array.from(imports.values()) ?? []),
|
|
106
|
-
...model.imports.filter((i) => i.from === '@nestjs/swagger' || i.from === '.'),
|
|
107
|
-
];
|
|
108
|
-
return {
|
|
109
|
-
properties,
|
|
110
|
-
imports: Array.from(new Map(temp.map((i) => [i.from, i])).values()),
|
|
111
|
-
};
|
|
112
|
-
}
|
|
113
|
-
};
|
|
114
|
-
exports.cleanImportsOld = cleanImportsOld;
|
|
115
81
|
//# sourceMappingURL=cleanImports.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cleanImports.js","sourceRoot":"","sources":["../../../../src/lib/cleanImports.ts"],"names":[],"mappings":";;;AAAA,mCAAmC;AACnC,oCAAuC;AACvC,oCAMkB;AAEX,MAAM,YAAY,GAAG,KAAK,EAC7B,KAAmB,EACnB,YAA8B,EAEuB,EAAE;IAEvD,MAAM,UAAU,GAAsB,IAAA,kBAAS,EAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAGlE,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;QAChC,IACI,CAAC,wBAAgB,CAAC,OAAO,EAAE,wBAAgB,CAAC,OAAO,CAAC,CAAC,QAAQ,CACzD,YAAY,CACf,EACH,CAAC;YACC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAmB,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACxE,CAAC;QAED,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,OAAO,GAA+B,IAAI,GAAG,EAAE,CAAC;IAEtD,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"cleanImports.js","sourceRoot":"","sources":["../../../../src/lib/cleanImports.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,7 +14,8 @@ const readClass = (project) => {
|
|
|
14
14
|
?.getSymbol()
|
|
15
15
|
?.getFullyQualifiedName()
|
|
16
16
|
.split('".');
|
|
17
|
-
let type = p.getType().
|
|
17
|
+
let type = p.getType().getAliasSymbol()?.getFullyQualifiedName() ??
|
|
18
|
+
p.getType().getSymbol()?.getName() ??
|
|
18
19
|
p.getType().getText();
|
|
19
20
|
if (fullName && fullName.length > 1) {
|
|
20
21
|
type = fullName.slice(1).join('.');
|
|
@@ -23,6 +24,7 @@ const readClass = (project) => {
|
|
|
23
24
|
((fullName ?? [])[0] ?? []) === '__type') {
|
|
24
25
|
type = p.getType().getText();
|
|
25
26
|
}
|
|
27
|
+
type = type.replace(/".+"\./, '');
|
|
26
28
|
return {
|
|
27
29
|
name: p.getName(),
|
|
28
30
|
type,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"readClass.js","sourceRoot":"","sources":["../../../../src/reader/readClass.ts"],"names":[],"mappings":";;;AAEA,gCAAgE;AAEzD,MAAM,SAAS,GAAG,CAAC,OAAgB,EAAkB,EAAE;IAC1D,MAAM,OAAO,GAAmB,EAAE,CAAC;IAEnC,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;QAC5C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC;YACpC,MAAM,UAAU,GAAsB,GAAG;iBACpC,aAAa,EAAE;iBACf,GAAG,CAAC,CAAC,CAAsB,EAAmB,EAAE;gBAC7C,MAAM,QAAQ,GAAa,CAAC;qBACvB,OAAO,EAAE;oBACV,EAAE,SAAS,EAAE;oBACb,EAAE,qBAAqB,EAAE;qBACxB,KAAK,CAAC,IAAI,CAAC,CAAC;gBAEjB,IAAI,IAAI,GACJ,CAAC,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE;oBAClC,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC;gBAE1B,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClC,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACvC,CAAC;gBACD,IACI,IAAI,KAAK,QAAQ;oBACjB,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,QAAQ,EAC1C,CAAC;oBACC,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC;gBACjC,CAAC;
|
|
1
|
+
{"version":3,"file":"readClass.js","sourceRoot":"","sources":["../../../../src/reader/readClass.ts"],"names":[],"mappings":";;;AAEA,gCAAgE;AAEzD,MAAM,SAAS,GAAG,CAAC,OAAgB,EAAkB,EAAE;IAC1D,MAAM,OAAO,GAAmB,EAAE,CAAC;IAEnC,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;QAC5C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC;YACpC,MAAM,UAAU,GAAsB,GAAG;iBACpC,aAAa,EAAE;iBACf,GAAG,CAAC,CAAC,CAAsB,EAAmB,EAAE;gBAC7C,MAAM,QAAQ,GAAa,CAAC;qBACvB,OAAO,EAAE;oBACV,EAAE,SAAS,EAAE;oBACb,EAAE,qBAAqB,EAAE;qBACxB,KAAK,CAAC,IAAI,CAAC,CAAC;gBAEjB,IAAI,IAAI,GACJ,CAAC,CAAC,OAAO,EAAE,CAAC,cAAc,EAAE,EAAE,qBAAqB,EAAE;oBACrD,CAAC,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE;oBAClC,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC;gBAE1B,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClC,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACvC,CAAC;gBACD,IACI,IAAI,KAAK,QAAQ;oBACjB,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,QAAQ,EAC1C,CAAC;oBACC,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC;gBACjC,CAAC;gBACD,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;gBAElC,OAAO;oBACH,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE;oBACjB,IAAI;oBACJ,QAAQ,EAAE,CAAC,CAAC,gBAAgB,EAAE;oBAC9B,UAAU,EAAE,IAAA,oBAAc,EAAC,CAAC,CAAC;iBAChC,CAAC;YACN,CAAC,CAAC,CAAC;YAEP,OAAO,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,GAAG,CAAC,OAAO,EAAG;gBACpB,UAAU,EAAE,IAAA,oBAAc,EAAC,GAAG,CAAC;gBAC/B,UAAU;gBACV,OAAO,EAAE,IAAA,4BAAsB,EAAC,GAAG,CAAC;aACvC,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED,OAAO,OAAO,CAAC;AACnB,CAAC,CAAC;AAhDW,QAAA,SAAS,aAgDpB"}
|
|
@@ -1,3 +1,2 @@
|
|
|
1
1
|
import { GenerateTypeEnum, IClassSchema } from '../types';
|
|
2
2
|
export declare const cleanImports: (model: IClassSchema, generateType: GenerateTypeEnum) => Promise<Pick<IClassSchema, "imports" | "properties">>;
|
|
3
|
-
export declare const cleanImportsOld: (model: IClassSchema, generateType: GenerateTypeEnum) => Promise<Pick<IClassSchema, "imports" | "properties">>;
|