@tsoa-next/cli 7.3.1 → 7.3.3-dev.35.b5a952be
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/cli.js +63 -7
- package/dist/cli.js.map +1 -1
- package/dist/metadataGeneration/typeResolver.d.ts +6 -0
- package/dist/metadataGeneration/typeResolver.js +161 -9
- package/dist/metadataGeneration/typeResolver.js.map +1 -1
- package/dist/routeGeneration/templates/express.hbs +10 -27
- package/dist/routeGeneration/templates/hapi.hbs +4 -26
- package/dist/routeGeneration/templates/koa.hbs +4 -25
- package/dist/swagger/specGenerator2.js +4 -3
- package/dist/swagger/specGenerator2.js.map +1 -1
- package/dist/swagger/specGenerator3.js +4 -3
- package/dist/swagger/specGenerator3.js.map +1 -1
- package/package.json +2 -2
package/dist/cli.js
CHANGED
|
@@ -79,6 +79,56 @@ const determineNoImplicitAdditionalSetting = (noImplicitAdditionalProperties) =>
|
|
|
79
79
|
return 'ignore';
|
|
80
80
|
}
|
|
81
81
|
};
|
|
82
|
+
const isAuthorWhitespace = (char) => char === ' ' || char === '\t' || char === '\n' || char === '\r';
|
|
83
|
+
const skipAuthorWhitespace = (value, index) => {
|
|
84
|
+
let currentIndex = index;
|
|
85
|
+
while (currentIndex < value.length && isAuthorWhitespace(value[currentIndex])) {
|
|
86
|
+
currentIndex += 1;
|
|
87
|
+
}
|
|
88
|
+
return currentIndex;
|
|
89
|
+
};
|
|
90
|
+
const trimToUndefined = (value) => {
|
|
91
|
+
const trimmed = value.trim();
|
|
92
|
+
return trimmed.length > 0 ? trimmed : undefined;
|
|
93
|
+
};
|
|
94
|
+
const parseAuthorContact = (author) => {
|
|
95
|
+
const contact = {};
|
|
96
|
+
let index = skipAuthorWhitespace(author, 0);
|
|
97
|
+
let nameBoundary = author.length;
|
|
98
|
+
const emailStart = author.indexOf('<', index);
|
|
99
|
+
if (emailStart !== -1 && emailStart < nameBoundary) {
|
|
100
|
+
nameBoundary = emailStart;
|
|
101
|
+
}
|
|
102
|
+
const urlStart = author.indexOf('(', index);
|
|
103
|
+
if (urlStart !== -1 && urlStart < nameBoundary) {
|
|
104
|
+
nameBoundary = urlStart;
|
|
105
|
+
}
|
|
106
|
+
const name = trimToUndefined(author.slice(index, nameBoundary));
|
|
107
|
+
if (name) {
|
|
108
|
+
contact.name = name;
|
|
109
|
+
}
|
|
110
|
+
index = skipAuthorWhitespace(author, nameBoundary);
|
|
111
|
+
if (author[index] === '<') {
|
|
112
|
+
const emailEnd = author.indexOf('>', index + 1);
|
|
113
|
+
if (emailEnd !== -1) {
|
|
114
|
+
const email = trimToUndefined(author.slice(index + 1, emailEnd));
|
|
115
|
+
if (email) {
|
|
116
|
+
contact.email = email;
|
|
117
|
+
}
|
|
118
|
+
index = skipAuthorWhitespace(author, emailEnd + 1);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
if (author[index] === '(') {
|
|
122
|
+
const urlEnd = author.indexOf(')', index + 1);
|
|
123
|
+
if (urlEnd !== -1) {
|
|
124
|
+
const url = trimToUndefined(author.slice(index + 1, urlEnd));
|
|
125
|
+
if (url) {
|
|
126
|
+
contact.url = url;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
return contact;
|
|
131
|
+
};
|
|
82
132
|
const authorInformation = getPackageJsonValue('author', 'unknown');
|
|
83
133
|
const isYamlExtension = (extension) => extension === '.yaml' || extension === '.yml';
|
|
84
134
|
const isJsExtension = (extension) => extension === '.js' || extension === '.cjs';
|
|
@@ -228,17 +278,23 @@ const validateSpecConfig = async (config) => {
|
|
|
228
278
|
if (!config.spec.contact) {
|
|
229
279
|
config.spec.contact = {};
|
|
230
280
|
}
|
|
281
|
+
const specContact = config.spec.contact;
|
|
282
|
+
const setContactValue = (key, value) => {
|
|
283
|
+
if (!specContact[key] && value !== undefined) {
|
|
284
|
+
specContact[key] = value;
|
|
285
|
+
}
|
|
286
|
+
};
|
|
231
287
|
const author = await authorInformation;
|
|
232
288
|
if (typeof author === 'string') {
|
|
233
|
-
const contact =
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
289
|
+
const contact = parseAuthorContact(author);
|
|
290
|
+
setContactValue('name', contact.name);
|
|
291
|
+
setContactValue('email', contact.email);
|
|
292
|
+
setContactValue('url', contact.url);
|
|
237
293
|
}
|
|
238
294
|
else if (typeof author === 'object') {
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
295
|
+
setContactValue('name', author?.name);
|
|
296
|
+
setContactValue('email', author?.email);
|
|
297
|
+
setContactValue('url', author?.url);
|
|
242
298
|
}
|
|
243
299
|
if (!config.defaultNumberType) {
|
|
244
300
|
config.defaultNumberType = 'double';
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgLA,0DAcC;AAgLD,wBAwCC;AAwDD,sDA+BC;AA5eD,gDAAuB;AACvB,kDAAyB;AACzB,2CAAuC;AAEvC,+CAAgC;AAChC,8EAA0E;AAC1E,8DAAyD;AACzD,0DAAqD;AACrD,mCAAiD;AAEjD,yCAAiE;AAGjE,MAAM,UAAU,GAAW,OAAO,CAAC,GAAG,EAAE,CAAA;AACxC,MAAM,UAAU,GAAG,cAAqD,CAAA;AAExE,IAAI,WAAgD,CAAA;AACpD,MAAM,mBAAmB,GAAG,KAAK,EAAE,GAAW,EAAE,YAAY,GAAG,EAAE,EAAmB,EAAE;IACpF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,IAAI,CAAC;YACH,MAAM,cAAc,GAAG,MAAM,IAAA,eAAU,EAAC,GAAG,UAAU,eAAe,CAAC,CAAA;YACrE,MAAM,iBAAiB,GAAY,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAA;YAC9E,WAAW,GAAG,OAAO,iBAAiB,KAAK,QAAQ,IAAI,iBAAiB,KAAK,IAAI,CAAC,CAAC,CAAE,iBAA6C,CAAC,CAAC,CAAC,EAAE,CAAA;QACzI,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,YAAY,CAAA;QACrB,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAA;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAA;AACzD,CAAC,CAAA;AAED,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAC7D,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,mBAAmB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;AACpE,MAAM,kBAAkB,GAAG,GAAG,EAAE,CAAC,mBAAmB,CAAC,aAAa,EAAE,6DAA6D,CAAC,CAAA;AAClI,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,mBAAmB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;AAClE,MAAM,oCAAoC,GAAG,CAAC,8BAAwE,EAAgE,EAAE;IACtL,IAAI,8BAA8B,KAAK,wBAAwB,IAAI,8BAA8B,KAAK,iBAAiB,IAAI,8BAA8B,KAAK,QAAQ,EAAE,CAAC;QACvK,OAAO,8BAA8B,CAAA;IACvC,CAAC;SAAM,CAAC;QACN,OAAO,QAAQ,CAAA;IACjB,CAAC;AACH,CAAC,CAAA;AACD,MAAM,iBAAiB,GAOnB,mBAAmB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;AAE5C,MAAM,eAAe,GAAG,CAAC,SAAiB,EAAW,EAAE,CAAC,SAAS,KAAK,OAAO,IAAI,SAAS,KAAK,MAAM,CAAA;AAErG,MAAM,aAAa,GAAG,CAAC,SAAiB,EAAW,EAAE,CAAC,SAAS,KAAK,KAAK,IAAI,SAAS,KAAK,MAAM,CAAA;AAOjG,MAAM,SAAS,GAAG,KAAK,EAAE,UAAU,GAAG,WAAW,EAA8B,EAAE;IAC/E,IAAI,MAAc,CAAA;IAClB,MAAM,GAAG,GAAG,IAAA,mBAAO,EAAC,UAAU,CAAC,CAAA;IAC/B,MAAM,cAAc,GAAG,IAAA,sBAAU,EAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,IAAI,UAAU,EAAE,CAAA;IAC1F,IAAI,CAAC;QACH,IAAI,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,SAAS,GAAG,MAAM,IAAA,eAAU,EAAC,cAAc,CAAC,CAAA;YAClD,MAAM,GAAG,gBAAgB,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QACzE,CAAC;aAAM,IAAI,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,cAAc,GAAY,yBAAa,cAAc,uCAAC,CAAA;YAC5D,IAAI,OAAO,cAAc,KAAK,QAAQ,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;gBAClE,MAAM,IAAI,KAAK,CAAC,gCAAgC,UAAU,GAAG,CAAC,CAAA;YAChE,CAAC;YACD,MAAM,GAAG,iBAAiB,CAAC,cAAyC,CAAC,CAAA;QACvE,CAAC;aAAM,CAAC;YACN,MAAM,SAAS,GAAG,MAAM,IAAA,eAAU,EAAC,cAAc,CAAC,CAAA;YAClD,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QACnE,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,CAAC,GAAG,YAAY,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAClB,MAAM,KAAK,CAAC,wCAAwC,UAAU,MAAM,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACpF,CAAC;aAAM,IAAI,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;YAC5D,MAAM,KAAK,CAAC,4BAA4B,UAAU,GAAG,CAAC,CAAA;QACxD,CAAC;aAAM,IAAI,GAAG,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YACtC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAClB,MAAM,SAAS,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAA;YACpD,MAAM,KAAK,CAAC,WAAW,SAAS,yBAAyB,UAAU,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;QACzF,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAClB,MAAM,KAAK,CAAC,wCAAwC,UAAU,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;QACpF,CAAC;IACH,CAAC;IAED,OAAO;QACL,MAAM;QACN,aAAa,EAAE,IAAA,mBAAO,EAAC,cAAc,CAAC;KACvC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,KAAK,EAAE,MAAwB,EAA8B,EAAE;IACnF,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QAClD,OAAO;YACL,MAAM;YACN,aAAa,EAAE,UAAU;SAC1B,CAAA;IACH,CAAC;IAED,OAAO,SAAS,CAAC,MAAM,CAAC,CAAA;AAC1B,CAAC,CAAA;AAED,MAAM,2BAA2B,GAAG,CAAC,OAAe,EAAE,MAAgC,EAAE,EAAE;IACxF,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,4BAA4B,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;IAC5H,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,KAAK,OAAO,EAAE,CAAC,CAAA;AAC3C,CAAC,CAAA;AAED,MAAM,0BAA0B,GAAG,CAAC,eAAwC,EAAE,aAAqB,EAAE,OAAe,EAAE,mBAAmB,GAAG,IAAI,EAAmB,EAAE;IACnK,MAAM,MAAM,GAAG,EAAE,CAAC,8BAA8B,CAAC,eAAe,EAAE,aAAa,CAAC,CAAA;IAEhF,IAAI,mBAAmB,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpD,2BAA2B,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;IACrD,CAAC;IAED,OAAO,MAAM,CAAC,OAAO,CAAA;AACvB,CAAC,CAAA;AAED,MAAM,2BAA2B,GAAG,CAAC,MAAc,EAAE,aAAqB,EAAmB,EAAE;IAC7F,MAAM,kBAAkB,GAAG,MAAM,CAAC,QAAQ,CAAA;IAC1C,MAAM,UAAU,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;IACpE,MAAM,QAAQ,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAChE,MAAM,oBAAoB,GACxB,kBAAkB,KAAK,SAAS;QAC9B,CAAC,CAAC,IAAA,sBAAU,EAAC,kBAAkB,CAAC;YAC9B,CAAC,CAAC,kBAAkB;YACpB,CAAC,CAAC,IAAA,mBAAO,EAAC,aAAa,EAAE,kBAAkB,CAAC;QAC9C,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,aAAa,EAAE,UAAU,EAAE,eAAe,CAAC,CAAA;IAEnE,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAA;IACX,CAAC;IAED,MAAM,UAAU,GAAG,EAAE,CAAC,cAAc,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAA;IACpE,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;QACrB,2BAA2B,CAAC,+BAA+B,oBAAoB,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAA;IACzG,CAAC;IAED,MAAM,MAAM,GAAG,EAAE,CAAC,0BAA0B,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,EAAE,IAAA,mBAAO,EAAC,oBAAoB,CAAC,EAAE,SAAS,EAAE,oBAAoB,CAAC,CAAA;IACvI,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,CAAA;IAC1E,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,2BAA2B,CAAC,kCAAkC,oBAAoB,GAAG,EAAE,cAAc,CAAC,CAAA;IACxG,CAAC;IAED,OAAO,MAAM,CAAC,OAAO,CAAA;AACvB,CAAC,CAAA;AAED,MAAM,QAAQ,GAAG,CAAC,KAAmD,EAAmB,EAAE;IACxF,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,WAAW,IAAI,KAAK,IAAI,QAAQ,IAAI,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,UAAU,IAAI,KAAK,CAAC,CAAA;AAC7I,CAAC,CAAA;AAED,MAAM,gBAAgB,GAAG,CAAC,KAAc,EAAU,EAAE;IAClD,IAAI,QAAQ,CAAC,KAA4C,CAAC,EAAE,CAAC;QAC3D,OAAO,KAAe,CAAA;IACxB,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;AACnD,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC,aAAsC,EAAU,EAAE;IAC3E,MAAM,aAAa,GAAG,SAAS,IAAI,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAA;IACxF,OAAO,gBAAgB,CAAC,aAAa,CAAC,CAAA;AACxC,CAAC,CAAA;AAID,SAAgB,uBAAuB,CAAC,uBAA0D,EAAE,aAAa,GAAG,UAAU;IAC5H,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,CAAC;QACvC,OAAO,uBAAuB,CAAC,CAAC,CAAC,0BAA0B,CAAC,uBAAuB,EAAE,aAAa,EAAE,6CAA6C,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAChK,CAAC;IAED,MAAM,uBAAuB,GAAG,2BAA2B,CAAC,uBAAuB,EAAE,aAAa,CAAC,CAAA;IACnG,MAAM,uBAAuB,GAAG,uBAAuB,CAAC,eAAe;QACrE,CAAC,CAAC,0BAA0B,CAAC,uBAAuB,CAAC,eAAe,EAAE,aAAa,EAAE,6CAA6C,CAAC;QACnI,CAAC,CAAC,EAAE,CAAA;IAEN,OAAO;QACL,GAAG,uBAAuB;QAC1B,GAAG,uBAAuB;KAC3B,CAAA;AACH,CAAC;AAQM,MAAM,kBAAkB,GAAG,KAAK,EAAE,MAAc,EAA+B,EAAE;IACtF,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,6GAA6G,CAAC,CAAA;IAChI,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAA;IAC1F,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,mBAAmB,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7F,MAAM,IAAI,KAAK,CAAC,uHAAuH,CAAC,CAAA;IAC1I,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC,MAAM,IAAA,aAAQ,EAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CAAC,wBAAwB,MAAM,CAAC,SAAS,mCAAmC,CAAC,CAAA;IAC9F,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,cAAc,EAAE,CAAC,CAAA;IAErE,MAAM,CAAC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,CAAA;IACtD,MAAM,iBAAiB,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAA;IACrC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,6BAA6B,MAAM,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAA;IAC1E,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;QAC9G,MAAM,IAAI,KAAK,CAAC,+BAA+B,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;IAC3E,CAAC;IAED,MAAM,8BAA8B,GAAG,oCAAoC,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAA;IAClH,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,WAAW,EAAE,CAAC,CAAA;IAC5D,MAAM,CAAC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,MAAM,kBAAkB,EAAE,CAAC,CAAA;IACjF,MAAM,CAAC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,cAAc,EAAE,CAAC,CAAA;IACrE,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,GAAG,CAAA;IAClD,mEAAmE;IACnE,qDAAqD;IACrD,MAAM,CAAC,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,IAAI,2BAA2B,CAAA;IAEhG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QACzB,MAAM,CAAC,IAAI,CAAC,OAAO,GAAG,EAAE,CAAA;IAC1B,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAA;IAEtC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,mDAAmD,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAEhF,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,CAAA;QACnE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,CAAA;QACrE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,CAAA;IACnE,CAAC;SAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,MAAM,EAAE,IAAI,CAAA;QACnE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,MAAM,EAAE,KAAK,CAAA;QACtE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,MAAM,EAAE,GAAG,CAAA;IAClE,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QAC9B,MAAM,CAAC,iBAAiB,GAAG,QAAQ,CAAA;IACrC,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;QACvD,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YAC7B,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAExK,IAAI,CAAC,EAAE,EAAE,CAAC;gBACR,MAAM,IAAI,KAAK,CAAC,oHAAoH,CAAC,CAAA;YACvI,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO;QACL,GAAG,MAAM,CAAC,IAAI;QACd,8BAA8B;QAC9B,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;KAChD,CAAA;AACH,CAAC,CAAA;AA5EY,QAAA,kBAAkB,sBA4E9B;AAcD,MAAM,oBAAoB,GAAG,KAAK,EAAE,MAAc,EAAiC,EAAE;IACnF,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,mBAAmB,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7F,MAAM,IAAI,KAAK,CAAC,uHAAuH,CAAC,CAAA;IAC1I,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC,MAAM,IAAA,aAAQ,EAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CAAC,wBAAwB,MAAM,CAAC,SAAS,mCAAmC,CAAC,CAAA;IAC9F,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,+EAA+E,CAAC,CAAA;IAClG,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,CAAC,oBAAoB,IAAI,CAAC,CAAC,CAAC,MAAM,IAAA,aAAQ,EAAC,MAAM,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,MAAM,IAAA,aAAQ,EAAC,MAAM,CAAC,MAAM,CAAC,oBAAoB,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAClK,MAAM,IAAI,KAAK,CAAC,0CAA0C,MAAM,CAAC,MAAM,CAAC,oBAAoB,GAAG,CAAC,CAAA;IAClG,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,MAAM,IAAA,aAAQ,EAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,IAAA,aAAQ,EAAC,MAAM,CAAC,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACjI,MAAM,IAAI,KAAK,CAAC,+BAA+B,MAAM,CAAC,MAAM,CAAC,SAAS,GAAG,CAAC,CAAA;IAC5E,CAAC;IAED,MAAM,8BAA8B,GAAG,oCAAoC,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAA;IAElH,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,IAAI,IAAI,CAAA;IAEvD,MAAM,CAAC,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,IAAI,GAAG,CAAA;IAEtD,OAAO;QACL,GAAG,MAAM,CAAC,MAAM;QAChB,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,8BAA8B;QAC9B,YAAY;QACZ,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;QAC/C,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY;KACvC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG;IACxB,KAAK,EAAE,GAAG;IACV,QAAQ,EAAE,wEAAwE;IAClF,QAAQ,EAAE,KAAK;IACf,MAAM,EAAE,IAAI;CACJ,CAAA;AAEV,MAAM,QAAQ,GAAG;IACf,QAAQ,EAAE,UAAU;IACpB,QAAQ,EAAE,KAAK;IACf,MAAM,EAAE,IAAI;CACJ,CAAA;AAEV,MAAM,YAAY,GAAG;IACnB,QAAQ,EAAE,eAAe;IACzB,QAAQ,EAAE,KAAK;IACf,MAAM,EAAE,IAAI;CACJ,CAAA;AAEV,MAAM,SAAS,GAAG;IAChB,QAAQ,EAAE,0BAA0B;IACpC,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,IAAI;CACL,CAAA;AAEV,MAAM,QAAQ,GAAG;IACf,QAAQ,EAAE,0BAA0B;IACpC,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,IAAI;CACL,CAAA;AAaV,SAAgB,MAAM;IACpB,OAAO,IAAA,eAAK,EAAC,IAAA,iBAAO,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SAChC,KAAK,CAAC,+BAA+B,CAAC;SACtC,OAAO,CACN,MAAM,EACN,uBAAuB,EACvB;QACE,QAAQ,EAAE,YAAY;QACtB,aAAa,EAAE,iBAAiB;QAChC,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,SAAS;KAChB,EACD,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAC5B;SACA,OAAO,CACN,QAAQ,EACR,iBAAiB,EACjB;QACE,QAAQ,EAAE,YAAY;QACtB,aAAa,EAAE,iBAAiB;KACjC,EACD,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,CAC7B;SACA,OAAO,CACN,iBAAiB,EACjB,kCAAkC,EAClC;QACE,QAAQ,EAAE,YAAY;QACtB,aAAa,EAAE,iBAAiB;QAChC,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,SAAS;KAChB,EACD,IAAI,CAAC,EAAE,CAAC,KAAK,qBAAqB,CAAC,IAAI,CAAC,CACzC;SACA,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,+BAA+B,CAAC;SACpD,IAAI,CAAC,MAAM,CAAC;SACZ,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC;SAClB,KAAK,EAAE,CAAA;AACZ,CAAC;AAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC5B,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,IAAI,CAAC;YACH,MAAM,MAAM,EAAE,CAAA;QAChB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAA;YACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;IACH,CAAC,CAAC,EAAE,CAAA;AACN,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,IAAiB;IAC5C,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;QACzE,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;QACtC,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QAC9B,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QAC9B,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAA;QAC1B,CAAC;QAED,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;QACtE,MAAM,aAAa,GAAG,MAAM,IAAA,0BAAkB,EAAC,MAAM,CAAC,CAAA;QAEtD,MAAM,IAAA,4BAAY,EAAC,aAAa,EAAE,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;IACnE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,GAAG,CAAC,CAAA;QAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,IAAgB;IAC5C,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;QACzE,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;QACxC,CAAC;QAED,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;QACtE,MAAM,YAAY,GAAG,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAA;QAEvD,MAAM,IAAA,gCAAc,EAAC,YAAY,EAAE,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;IACpE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAA;QAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,qBAAqB,CAAC,IAAiB,EAAE,QAAwB;IACrF,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;QACzE,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;QACtC,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QAC9B,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QAC9B,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAA;QAC1B,CAAC;QAED,MAAM,eAAe,GAAG,uBAAuB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;QACtE,MAAM,YAAY,GAAG,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAA;QACvD,MAAM,aAAa,GAAG,MAAM,IAAA,0BAAkB,EAAC,MAAM,CAAC,CAAA;QAEtD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,QAAQ,GAAG,IAAI,qCAAiB,CAAC,MAAM,CAAC,SAAS,EAAE,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAA;QAClM,CAAC;QAED,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAA,gCAAc,EAAC,YAAY,EAAE,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,IAAA,4BAAY,EAAC,aAAa,EAAE,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;QAClK,OAAO,QAAQ,CAAA;IACjB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAA;QAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACf,MAAM,GAAG,CAAA;IACX,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -44,6 +44,12 @@ export declare class TypeResolver {
|
|
|
44
44
|
private createCircularDependencyResolver;
|
|
45
45
|
private nodeIsUsable;
|
|
46
46
|
private getModelTypeDeclarations;
|
|
47
|
+
private getReferenceTypeFromTypeChecker;
|
|
48
|
+
private getResolvedTypeForReferenceNode;
|
|
49
|
+
private getReferenceTypesFromResolvedType;
|
|
50
|
+
private getUsableDeclarationsFromSymbol;
|
|
51
|
+
private isEquivalentReferenceTypeNode;
|
|
52
|
+
private wrapResolvedTypeAsReference;
|
|
47
53
|
private getSymbolAtLocation;
|
|
48
54
|
private getModelAdditionalProperties;
|
|
49
55
|
private typeArgumentsToContext;
|
|
@@ -56,6 +56,84 @@ const getSyntheticOrigin = (symbol) => {
|
|
|
56
56
|
const symbolWithLinks = symbol;
|
|
57
57
|
return symbolWithLinks.links?.syntheticOrigin;
|
|
58
58
|
};
|
|
59
|
+
const isAsciiLetter = (char) => {
|
|
60
|
+
if (!char) {
|
|
61
|
+
return false;
|
|
62
|
+
}
|
|
63
|
+
const code = char.charCodeAt(0);
|
|
64
|
+
return (code >= 65 && code <= 90) || (code >= 97 && code <= 122);
|
|
65
|
+
};
|
|
66
|
+
const isRefTypeTokenCharacter = (char) => {
|
|
67
|
+
if (!char) {
|
|
68
|
+
return false;
|
|
69
|
+
}
|
|
70
|
+
const code = char.charCodeAt(0);
|
|
71
|
+
return isAsciiLetter(char) || (code >= 48 && code <= 57) || char === '_';
|
|
72
|
+
};
|
|
73
|
+
const replaceTypeLiteralPropertySeparators = (value) => {
|
|
74
|
+
let formatted = '';
|
|
75
|
+
let index = 0;
|
|
76
|
+
while (index < value.length) {
|
|
77
|
+
if (!isRefTypeTokenCharacter(value[index])) {
|
|
78
|
+
formatted += value[index];
|
|
79
|
+
index += 1;
|
|
80
|
+
continue;
|
|
81
|
+
}
|
|
82
|
+
const tokenStart = index;
|
|
83
|
+
while (index < value.length && isRefTypeTokenCharacter(value[index])) {
|
|
84
|
+
index += 1;
|
|
85
|
+
}
|
|
86
|
+
if (value[index] === '?') {
|
|
87
|
+
index += 1;
|
|
88
|
+
}
|
|
89
|
+
const token = value.slice(tokenStart, index);
|
|
90
|
+
if (value[index] === ':') {
|
|
91
|
+
const typeStart = index + 1;
|
|
92
|
+
let typeEnd = typeStart;
|
|
93
|
+
while (typeEnd < value.length && isAsciiLetter(value[typeEnd])) {
|
|
94
|
+
typeEnd += 1;
|
|
95
|
+
}
|
|
96
|
+
if (typeEnd > typeStart) {
|
|
97
|
+
formatted += token;
|
|
98
|
+
formatted += '-';
|
|
99
|
+
formatted += value.slice(typeStart, typeEnd);
|
|
100
|
+
index = typeEnd;
|
|
101
|
+
continue;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
formatted += token;
|
|
105
|
+
}
|
|
106
|
+
return formatted;
|
|
107
|
+
};
|
|
108
|
+
const replaceIndexedAccessSegments = (value) => {
|
|
109
|
+
let formatted = '';
|
|
110
|
+
let index = 0;
|
|
111
|
+
while (index < value.length) {
|
|
112
|
+
if (value[index] !== '[') {
|
|
113
|
+
formatted += value[index];
|
|
114
|
+
index += 1;
|
|
115
|
+
continue;
|
|
116
|
+
}
|
|
117
|
+
const previousCharacter = formatted[formatted.length - 1];
|
|
118
|
+
if (!(isAsciiLetter(previousCharacter) || previousCharacter === '}' || previousCharacter === ']' || previousCharacter === ')')) {
|
|
119
|
+
formatted += value[index];
|
|
120
|
+
index += 1;
|
|
121
|
+
continue;
|
|
122
|
+
}
|
|
123
|
+
let segmentEnd = index + 1;
|
|
124
|
+
while (segmentEnd < value.length && isAsciiLetter(value[segmentEnd])) {
|
|
125
|
+
segmentEnd += 1;
|
|
126
|
+
}
|
|
127
|
+
if (segmentEnd > index + 1 && value[segmentEnd] === ']') {
|
|
128
|
+
formatted += `-at-${value.slice(index + 1, segmentEnd)}`;
|
|
129
|
+
index = segmentEnd + 1;
|
|
130
|
+
continue;
|
|
131
|
+
}
|
|
132
|
+
formatted += value[index];
|
|
133
|
+
index += 1;
|
|
134
|
+
}
|
|
135
|
+
return formatted;
|
|
136
|
+
};
|
|
59
137
|
class TypeResolver {
|
|
60
138
|
typeNode;
|
|
61
139
|
current;
|
|
@@ -935,8 +1013,11 @@ class TypeResolver {
|
|
|
935
1013
|
const referenceTypes = [];
|
|
936
1014
|
// If no declarations found, this might be a built-in type or a type that can't be resolved
|
|
937
1015
|
if (declarations.length === 0) {
|
|
938
|
-
|
|
939
|
-
|
|
1016
|
+
const fallbackReferenceType = this.getReferenceTypeFromTypeChecker(node, name, refTypeName);
|
|
1017
|
+
if (fallbackReferenceType) {
|
|
1018
|
+
this.addToLocalReferenceTypeCache(name, fallbackReferenceType);
|
|
1019
|
+
return fallbackReferenceType;
|
|
1020
|
+
}
|
|
940
1021
|
throw new exceptions_1.GenerateMetadataError(`Could not find declarations for type '${name}'. This might be a complex generic type that needs special handling.`);
|
|
941
1022
|
}
|
|
942
1023
|
for (const declaration of declarations) {
|
|
@@ -956,7 +1037,7 @@ class TypeResolver {
|
|
|
956
1037
|
return referenceType;
|
|
957
1038
|
}
|
|
958
1039
|
catch (err) {
|
|
959
|
-
|
|
1040
|
+
delete inProgressTypes[name];
|
|
960
1041
|
throw err;
|
|
961
1042
|
}
|
|
962
1043
|
};
|
|
@@ -1023,7 +1104,7 @@ class TypeResolver {
|
|
|
1023
1104
|
//Generates a name from the original type expression.
|
|
1024
1105
|
//This function is not invertable, so it's possible, that 2 type expressions have the same refTypeName.
|
|
1025
1106
|
getRefTypeName(name) {
|
|
1026
|
-
|
|
1107
|
+
let preformattedName = name //Preformatted name handles most cases
|
|
1027
1108
|
.replace(/<|>/g, '_')
|
|
1028
1109
|
.replace(/\s+/g, '')
|
|
1029
1110
|
.replace(/,/g, '.')
|
|
@@ -1032,10 +1113,10 @@ class TypeResolver {
|
|
|
1032
1113
|
.replace(/&/g, '-and-')
|
|
1033
1114
|
.replace(/\|/g, '-or-')
|
|
1034
1115
|
.replace(/\[\]/g, '-Array')
|
|
1035
|
-
.replace(/{|}/g, '_') // SuccessResponse_{indexesCreated-number}_ -> SuccessResponse__indexesCreated-number__
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1116
|
+
.replace(/{|}/g, '_'); // SuccessResponse_{indexesCreated-number}_ -> SuccessResponse__indexesCreated-number__
|
|
1117
|
+
preformattedName = replaceTypeLiteralPropertySeparators(preformattedName); // SuccessResponse_indexesCreated:number_ -> SuccessResponse_indexesCreated-number_
|
|
1118
|
+
preformattedName = preformattedName.replace(/;/g, '--');
|
|
1119
|
+
preformattedName = replaceIndexedAccessSegments(preformattedName); // Partial_SerializedDatasourceWithVersion[format]_ -> Partial_SerializedDatasourceWithVersion~format~_,
|
|
1039
1120
|
//Safety fixes to replace all characters which are not accepted by swagger ui
|
|
1040
1121
|
let formattedName = preformattedName.replace(/[^A-Za-z0-9\-._]/g, match => {
|
|
1041
1122
|
return `_${match.charCodeAt(0)}_`;
|
|
@@ -1099,6 +1180,67 @@ class TypeResolver {
|
|
|
1099
1180
|
}
|
|
1100
1181
|
return modelTypes;
|
|
1101
1182
|
}
|
|
1183
|
+
getReferenceTypeFromTypeChecker(node, name, refTypeName) {
|
|
1184
|
+
const resolvedType = this.getResolvedTypeForReferenceNode(node);
|
|
1185
|
+
const declarationReferenceTypes = this.getReferenceTypesFromResolvedType(resolvedType, refTypeName);
|
|
1186
|
+
if (declarationReferenceTypes.length > 0) {
|
|
1187
|
+
return referenceTransformer_1.ReferenceTransformer.merge(declarationReferenceTypes);
|
|
1188
|
+
}
|
|
1189
|
+
const resolvedNode = this.current.typeChecker.typeToTypeNode(resolvedType, undefined, ts.NodeBuilderFlags.InTypeAlias | ts.NodeBuilderFlags.NoTruncation);
|
|
1190
|
+
if (!resolvedNode || this.isEquivalentReferenceTypeNode(node, resolvedNode, name)) {
|
|
1191
|
+
return undefined;
|
|
1192
|
+
}
|
|
1193
|
+
const resolved = new TypeResolver(resolvedNode, this.current, this.parentNode, this.context, resolvedType).resolve();
|
|
1194
|
+
return this.wrapResolvedTypeAsReference(resolved, refTypeName);
|
|
1195
|
+
}
|
|
1196
|
+
getResolvedTypeForReferenceNode(node) {
|
|
1197
|
+
if (ts.isTypeReferenceNode(node)) {
|
|
1198
|
+
return this.current.typeChecker.getTypeFromTypeNode(node);
|
|
1199
|
+
}
|
|
1200
|
+
return this.current.typeChecker.getTypeAtLocation(node);
|
|
1201
|
+
}
|
|
1202
|
+
getReferenceTypesFromResolvedType(resolvedType, refTypeName) {
|
|
1203
|
+
const symbols = [resolvedType.aliasSymbol, resolvedType.symbol].filter((symbol) => !!symbol);
|
|
1204
|
+
const declarations = symbols.flatMap(symbol => this.getUsableDeclarationsFromSymbol(symbol));
|
|
1205
|
+
const uniqueDeclarations = declarations.filter((declaration, index, allDeclarations) => {
|
|
1206
|
+
return allDeclarations.findIndex(candidate => candidate === declaration) === index;
|
|
1207
|
+
});
|
|
1208
|
+
return uniqueDeclarations.map(declaration => {
|
|
1209
|
+
if (ts.isTypeAliasDeclaration(declaration)) {
|
|
1210
|
+
return new referenceTransformer_1.ReferenceTransformer().transform(declaration, refTypeName, this, resolvedType);
|
|
1211
|
+
}
|
|
1212
|
+
if (enumTransformer_1.EnumTransformer.transformable(declaration)) {
|
|
1213
|
+
return new enumTransformer_1.EnumTransformer().transform(this, declaration, refTypeName);
|
|
1214
|
+
}
|
|
1215
|
+
return this.getModelReference(declaration, refTypeName);
|
|
1216
|
+
});
|
|
1217
|
+
}
|
|
1218
|
+
getUsableDeclarationsFromSymbol(symbol) {
|
|
1219
|
+
const targetSymbol = this.hasFlag(symbol, ts.SymbolFlags.Alias) ? this.current.typeChecker.getAliasedSymbol(symbol) : symbol;
|
|
1220
|
+
const declarations = targetSymbol?.getDeclarations?.() || [];
|
|
1221
|
+
return declarations.filter((node) => this.nodeIsUsable(node));
|
|
1222
|
+
}
|
|
1223
|
+
isEquivalentReferenceTypeNode(originalNode, resolvedNode, originalName) {
|
|
1224
|
+
if (!ts.isTypeReferenceNode(originalNode) || !ts.isTypeReferenceNode(resolvedNode)) {
|
|
1225
|
+
return false;
|
|
1226
|
+
}
|
|
1227
|
+
return this.calcTypeName(resolvedNode) === originalName && resolvedNode.typeArguments?.length === originalNode.typeArguments?.length;
|
|
1228
|
+
}
|
|
1229
|
+
wrapResolvedTypeAsReference(type, refTypeName) {
|
|
1230
|
+
if (type.dataType === 'refAlias' || type.dataType === 'refEnum' || type.dataType === 'refObject') {
|
|
1231
|
+
return {
|
|
1232
|
+
...type,
|
|
1233
|
+
refName: refTypeName,
|
|
1234
|
+
};
|
|
1235
|
+
}
|
|
1236
|
+
return {
|
|
1237
|
+
dataType: 'refAlias',
|
|
1238
|
+
deprecated: false,
|
|
1239
|
+
refName: refTypeName,
|
|
1240
|
+
type,
|
|
1241
|
+
validators: {},
|
|
1242
|
+
};
|
|
1243
|
+
}
|
|
1102
1244
|
getSymbolAtLocation(type) {
|
|
1103
1245
|
const fallbackSymbol = type.symbol;
|
|
1104
1246
|
const symbol = this.current.typeChecker.getSymbolAtLocation(type) || fallbackSymbol;
|
|
@@ -1180,7 +1322,17 @@ class TypeResolver {
|
|
|
1180
1322
|
// create subContext
|
|
1181
1323
|
const resetCtx = this.context;
|
|
1182
1324
|
this.context = this.typeArgumentsToContext(t, baseEntityName);
|
|
1183
|
-
|
|
1325
|
+
let referenceType;
|
|
1326
|
+
try {
|
|
1327
|
+
referenceType = this.getReferenceType(t, false);
|
|
1328
|
+
}
|
|
1329
|
+
catch (error) {
|
|
1330
|
+
if (error instanceof exceptions_1.GenerateMetadataError) {
|
|
1331
|
+
this.context = resetCtx;
|
|
1332
|
+
continue;
|
|
1333
|
+
}
|
|
1334
|
+
throw error;
|
|
1335
|
+
}
|
|
1184
1336
|
if (referenceType) {
|
|
1185
1337
|
if (referenceType.dataType === 'refEnum') {
|
|
1186
1338
|
// since it doesn't have properties to iterate over, then we don't do anything with it
|