@tsoa-next/cli 7.2.1 → 7.3.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.
- package/README.MD +3 -3
- package/dist/metadataGeneration/metadataGenerator.js +2 -0
- package/dist/metadataGeneration/metadataGenerator.js.map +1 -1
- package/dist/metadataGeneration/parameterGenerator.d.ts +3 -0
- package/dist/metadataGeneration/parameterGenerator.js +49 -2
- package/dist/metadataGeneration/parameterGenerator.js.map +1 -1
- package/dist/metadataGeneration/typeResolver.d.ts +8 -0
- package/dist/metadataGeneration/typeResolver.js +139 -14
- package/dist/metadataGeneration/typeResolver.js.map +1 -1
- package/dist/routeGeneration/routeGenerator.js +3 -0
- package/dist/routeGeneration/routeGenerator.js.map +1 -1
- package/dist/routeGeneration/templates/express.hbs +17 -32
- package/dist/routeGeneration/templates/hapi.hbs +25 -22
- package/dist/routeGeneration/templates/koa.hbs +21 -21
- package/dist/swagger/specGenerator.d.ts +4 -0
- package/dist/swagger/specGenerator.js +20 -0
- package/dist/swagger/specGenerator.js.map +1 -1
- package/dist/swagger/specGenerator2.js +8 -5
- package/dist/swagger/specGenerator2.js.map +1 -1
- package/dist/swagger/specGenerator3.d.ts +1 -0
- package/dist/swagger/specGenerator3.js +29 -14
- package/dist/swagger/specGenerator3.js.map +1 -1
- package/dist/utils/decoratorUtils.js +1 -0
- package/dist/utils/decoratorUtils.js.map +1 -1
- package/dist/utils/validateDecoratorUtils.d.ts +9 -0
- package/dist/utils/validateDecoratorUtils.js +225 -0
- package/dist/utils/validateDecoratorUtils.js.map +1 -0
- package/package.json +7 -6
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/* tslint:disable */
|
|
2
2
|
/* eslint-disable */
|
|
3
|
-
// WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/
|
|
4
|
-
import type { TsoaRoute } from '@tsoa-next/runtime';
|
|
3
|
+
// WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/tsoa-next/tsoa-next
|
|
4
|
+
import type { AdditionalProps, Tsoa, TsoaRoute } from '@tsoa-next/runtime';
|
|
5
5
|
import { fetchMiddlewares, KoaTemplateService } from '@tsoa-next/runtime';
|
|
6
6
|
{{#each controllers}}
|
|
7
|
-
|
|
7
|
+
|
|
8
8
|
import { {{name}} } from '{{modulePath}}';
|
|
9
9
|
{{/each}}
|
|
10
10
|
{{#if authenticationModule}}
|
|
@@ -29,7 +29,7 @@ const koaAuthenticationRecasted = koaAuthentication as (req: KRequest, securityN
|
|
|
29
29
|
{{/if}}
|
|
30
30
|
|
|
31
31
|
|
|
32
|
-
|
|
32
|
+
|
|
33
33
|
|
|
34
34
|
const models: TsoaRoute.Models = {
|
|
35
35
|
{{#each models}}
|
|
@@ -52,28 +52,28 @@ const models: TsoaRoute.Models = {
|
|
|
52
52
|
"type": {{{json type}}},
|
|
53
53
|
{{/if}}
|
|
54
54
|
},
|
|
55
|
-
|
|
55
|
+
|
|
56
56
|
{{/each}}
|
|
57
57
|
};
|
|
58
|
-
const templateService = new KoaTemplateService(models, {{{ json minimalSwaggerConfig }}});
|
|
59
|
-
|
|
60
|
-
// WARNING: This file was auto-generated with tsoa. Please do not modify it. Re-run tsoa to re-generate this file: https://github.com/lukeautry/tsoa
|
|
61
|
-
|
|
62
|
-
|
|
63
58
|
{{#if useFileUploads}}
|
|
64
|
-
export function RegisterRoutes(router: KoaRouter,opts?:{multer?:ReturnType<typeof multer
|
|
59
|
+
export function RegisterRoutes(router: KoaRouter,opts?:{multer?:ReturnType<typeof multer>; validation?: Tsoa.ValidationContext}) {
|
|
65
60
|
{{else}}
|
|
66
|
-
export function RegisterRoutes(router: KoaRouter) {
|
|
61
|
+
export function RegisterRoutes(router: KoaRouter,opts?:{validation?: Tsoa.ValidationContext}) {
|
|
67
62
|
{{/if}}
|
|
68
63
|
|
|
69
64
|
// ###########################################################################################################
|
|
70
65
|
// NOTE: If you do not see routes for all of your controllers in this file, then you might not have informed tsoa of where to look
|
|
71
|
-
// Please look into the "controllerPathGlobs" config option described in the readme: https://github.com/
|
|
66
|
+
// Please look into the "controllerPathGlobs" config option described in the readme: https://github.com/tsoa-next/tsoa-next
|
|
72
67
|
// ###########################################################################################################
|
|
73
68
|
|
|
74
69
|
{{#if useFileUploads}}
|
|
75
70
|
const upload = opts?.multer || multer({{{json multerOpts}}});
|
|
76
71
|
{{/if}}
|
|
72
|
+
const additionalProps: AdditionalProps = {
|
|
73
|
+
...{{{ json minimalSwaggerConfig }}},
|
|
74
|
+
validation: opts?.validation,
|
|
75
|
+
};
|
|
76
|
+
const templateService = new KoaTemplateService(models, additionalProps);
|
|
77
77
|
|
|
78
78
|
{{#each controllers}}
|
|
79
79
|
{{#each actions}}
|
|
@@ -105,7 +105,7 @@ export function RegisterRoutes(router: KoaRouter) {
|
|
|
105
105
|
|
|
106
106
|
let validatedArgs: any[] = [];
|
|
107
107
|
try {
|
|
108
|
-
validatedArgs = templateService.getValidatedArgs({ args: args{{../name}}_{{name}}, context, next });
|
|
108
|
+
validatedArgs = templateService.getValidatedArgs({ args: args{{../name}}_{{name}}, controllerClass: {{../name}}, methodName: '{{name}}', context, next });
|
|
109
109
|
} catch (err) {
|
|
110
110
|
const error = err as any;
|
|
111
111
|
error.message ||= JSON.stringify({ fields: error.fields });
|
|
@@ -132,18 +132,18 @@ export function RegisterRoutes(router: KoaRouter) {
|
|
|
132
132
|
successStatus: {{successStatus}},
|
|
133
133
|
});
|
|
134
134
|
});
|
|
135
|
-
|
|
135
|
+
|
|
136
136
|
{{/each}}
|
|
137
137
|
{{/each}}
|
|
138
138
|
|
|
139
139
|
{{#if useSecurity}}
|
|
140
140
|
|
|
141
|
-
|
|
141
|
+
|
|
142
142
|
|
|
143
143
|
function authenticateMiddleware(security: TsoaRoute.Security[] = []) {
|
|
144
144
|
return async function runAuthenticationMiddleware(context: any, next: any) {
|
|
145
145
|
|
|
146
|
-
|
|
146
|
+
|
|
147
147
|
|
|
148
148
|
// keep track of failed auth attempts so we can hand back the most
|
|
149
149
|
// recent one. This behavior was previously existing so preserving it
|
|
@@ -178,7 +178,7 @@ export function RegisterRoutes(router: KoaRouter) {
|
|
|
178
178
|
}
|
|
179
179
|
}
|
|
180
180
|
|
|
181
|
-
|
|
181
|
+
|
|
182
182
|
|
|
183
183
|
let success;
|
|
184
184
|
try {
|
|
@@ -207,12 +207,12 @@ export function RegisterRoutes(router: KoaRouter) {
|
|
|
207
207
|
await next();
|
|
208
208
|
}
|
|
209
209
|
|
|
210
|
-
|
|
210
|
+
|
|
211
211
|
}
|
|
212
212
|
}
|
|
213
213
|
{{/if}}
|
|
214
214
|
|
|
215
|
-
|
|
215
|
+
|
|
216
216
|
}
|
|
217
217
|
|
|
218
|
-
|
|
218
|
+
|
|
@@ -19,6 +19,7 @@ export declare abstract class SpecGenerator {
|
|
|
19
19
|
} | {
|
|
20
20
|
[propertyName: string]: Swagger.Schema31;
|
|
21
21
|
};
|
|
22
|
+
protected getPropertySchemaType(type: Tsoa.Type): Tsoa.Type;
|
|
22
23
|
getSwaggerTypeForObjectLiteral(objectLiteral: Tsoa.NestedObjectLiteralType, title?: string): Swagger.BaseSchema;
|
|
23
24
|
protected getSwaggerTypeForReferenceType(_referenceType: Tsoa.ReferenceType): Swagger.BaseSchema;
|
|
24
25
|
protected getSwaggerTypeForVoid(_dataType: 'void' | 'undefined'): Swagger.BaseSchema;
|
|
@@ -29,6 +30,9 @@ export declare abstract class SpecGenerator {
|
|
|
29
30
|
protected abstract getSwaggerTypeForEnumType(enumType: Tsoa.EnumType, title?: string): Swagger.Schema2 | Swagger.Schema3;
|
|
30
31
|
protected hasUndefined(property: Tsoa.Property): boolean;
|
|
31
32
|
protected queriesPropertyToQueryParameter(property: Tsoa.Property): Tsoa.Parameter;
|
|
33
|
+
protected getExternalValidatorExtension(source: Pick<Tsoa.Parameter, 'externalValidator'>): {
|
|
34
|
+
'x-schema-validator'?: Tsoa.ExternalValidatorKind;
|
|
35
|
+
};
|
|
32
36
|
protected isRequiredWithoutDefault(prop: Tsoa.Property | Tsoa.Parameter): boolean | undefined;
|
|
33
37
|
protected getSchemaValidators(validators: Tsoa.Validators): Partial<Record<Tsoa.SchemaValidatorKey, unknown>>;
|
|
34
38
|
protected transformSchemaValidators(validators: Partial<Record<Tsoa.SchemaValidatorKey, unknown>>): Partial<Record<Tsoa.SchemaValidatorKey, unknown>>;
|
|
@@ -163,6 +163,22 @@ class SpecGenerator {
|
|
|
163
163
|
return (0, runtime_1.assertNever)(type);
|
|
164
164
|
}
|
|
165
165
|
}
|
|
166
|
+
getPropertySchemaType(type) {
|
|
167
|
+
const unwrapBrandedAlias = (current) => {
|
|
168
|
+
if (current.dataType === 'refAlias') {
|
|
169
|
+
const next = current.type;
|
|
170
|
+
if (next.dataType === 'intersection' && next.types.length === 1) {
|
|
171
|
+
return unwrapBrandedAlias(next.types[0]);
|
|
172
|
+
}
|
|
173
|
+
return current;
|
|
174
|
+
}
|
|
175
|
+
if (current.dataType === 'intersection' && current.types.length === 1) {
|
|
176
|
+
return unwrapBrandedAlias(current.types[0]);
|
|
177
|
+
}
|
|
178
|
+
return current;
|
|
179
|
+
};
|
|
180
|
+
return unwrapBrandedAlias(type);
|
|
181
|
+
}
|
|
166
182
|
getSwaggerTypeForObjectLiteral(objectLiteral, title) {
|
|
167
183
|
const properties = this.buildProperties(objectLiteral.properties);
|
|
168
184
|
const additionalProperties = objectLiteral.additionalProperties && this.getSwaggerType(objectLiteral.additionalProperties);
|
|
@@ -270,9 +286,13 @@ class SpecGenerator {
|
|
|
270
286
|
type: property.type,
|
|
271
287
|
default: property.default,
|
|
272
288
|
validators: property.validators,
|
|
289
|
+
parameterIndex: undefined,
|
|
273
290
|
deprecated: property.deprecated,
|
|
274
291
|
};
|
|
275
292
|
}
|
|
293
|
+
getExternalValidatorExtension(source) {
|
|
294
|
+
return source.externalValidator ? { 'x-schema-validator': source.externalValidator.kind } : {};
|
|
295
|
+
}
|
|
276
296
|
isRequiredWithoutDefault(prop) {
|
|
277
297
|
return prop.required && prop.default == null;
|
|
278
298
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"specGenerator.js","sourceRoot":"","sources":["../../src/swagger/specGenerator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"specGenerator.js","sourceRoot":"","sources":["../../src/swagger/specGenerator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,gDAA+D;AAC/D,uDAAwC;AACxC,4DAAwE;AAExE,MAAM,cAAc,GAAG,CAAC,KAAc,EAAE,cAAc,GAAG,KAAK,EAAyB,EAAE;IACvF,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;QAC5C,OAAO,IAAI,CAAA;IACb,CAAC;IAED,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,cAAc,CAAA;IACvB,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;QACzF,OAAO,IAAI,CAAA;IACb,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;IACxD,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;IACvE,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,MAAsB,aAAa;IAEZ;IACA;IAFrB,YACqB,QAAuB,EACvB,MAA0B;QAD1B,aAAQ,GAAR,QAAQ,CAAe;QACvB,WAAM,GAAN,MAAM,CAAoB;IAC5C,CAAC;IAEM,yBAAyB,CAAC,IAAe;QACjD,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;IAClC,CAAC;IAES,wBAAwB,CAAC,cAAsB;QACvD,UAAU,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;QAC3H,UAAU,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC,GAAG,IAAe,EAAE,EAAE;YAC1D,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,CAAC,GAAG,IAAI,CAAA;YAC9C,MAAM,iBAAiB,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAA;YACpE,MAAM,kBAAkB,GAAG,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,YAAY,MAAM,CAAA;YAC3F,MAAM,mBAAmB,GAAG,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAA;YAC1E,IAAI,CAAC,iBAAiB,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBAC9C,OAAO,iBAAiB,CAAA;YAC1B,CAAC;YAED,OAAO,iBAAiB,CAAC,OAAO,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAA;QACpE,CAAC,CAAC,CAAA;QACF,OAAO,UAAU,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;IAC/D,CAAC;IAES,cAAc,CAAC,cAAsB,EAAE,MAAmB;QAClE,OAAO,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC,mBAAmB,IAAI,2BAA2B,CAAC,CAAC;YACnG,MAAM;YACN,cAAc;SACf,CAAC,CAAA;IACJ,CAAC;IAEM,oBAAoB,CAAC,SAAiB;QAC3C,MAAM,mBAAmB,GAAG,SAA+B,CAAA;QAC3D,IACE,mBAAmB,KAAK,OAAO;YAC/B,mBAAmB,KAAK,OAAO;YAC/B,mBAAmB,KAAK,OAAO;YAC/B,mBAAmB,KAAK,QAAQ;YAChC,mBAAmB,KAAK,MAAM;YAC9B,mBAAmB,KAAK,QAAQ;YAChC,mBAAmB,KAAK,MAAM;YAC9B,mBAAmB,KAAK,WAAW;YACnC,mBAAmB,KAAK,UAAU,EAClC,CAAC;YACD,OAAO,mBAAmB,CAAA;QAC5B,CAAC;aAAM,CAAC;YACN,OAAO,IAAA,qBAAW,EAAC,mBAAmB,CAAC,CAAA;QACzC,CAAC;IACH,CAAC;IAEM,kBAAkB,CAAC,SAAiB;QACzC,MAAM,mBAAmB,GAAG,SAA6B,CAAA;QACzD,IACE,mBAAmB,KAAK,OAAO;YAC/B,mBAAmB,KAAK,SAAS;YACjC,mBAAmB,KAAK,SAAS;YACjC,mBAAmB,KAAK,MAAM;YAC9B,mBAAmB,KAAK,QAAQ;YAChC,mBAAmB,KAAK,QAAQ;YAChC,mBAAmB,KAAK,QAAQ;YAChC,mBAAmB,KAAK,WAAW,EACnC,CAAC;YACD,OAAO,mBAAmB,CAAA;QAC5B,CAAC;aAAM,CAAC;YACN,OAAO,IAAA,qBAAW,EAAC,mBAAmB,CAAC,CAAA;QACzC,CAAC;IACH,CAAC;IAES,cAAc,CAAC,IAAe,EAAE,KAAc;QACtD,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;YAC9D,OAAO,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAClD,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,KAAK,WAAW,IAAI,IAAI,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;YACxG,OAAO,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAA;QAClD,CAAC;aAAM,IACL,IAAI,CAAC,QAAQ,KAAK,KAAK;YACvB,IAAI,CAAC,QAAQ,KAAK,QAAQ;YAC1B,IAAI,CAAC,QAAQ,KAAK,SAAS;YAC3B,IAAI,CAAC,QAAQ,KAAK,QAAQ;YAC1B,IAAI,CAAC,QAAQ,KAAK,MAAM;YACxB,IAAI,CAAC,QAAQ,KAAK,MAAM;YACxB,IAAI,CAAC,QAAQ,KAAK,UAAU;YAC5B,IAAI,CAAC,QAAQ,KAAK,QAAQ;YAC1B,IAAI,CAAC,QAAQ,KAAK,OAAO;YACzB,IAAI,CAAC,QAAQ,KAAK,MAAM;YACxB,IAAI,CAAC,QAAQ,KAAK,SAAS;YAC3B,IAAI,CAAC,QAAQ,KAAK,MAAM;YACxB,IAAI,CAAC,QAAQ,KAAK,QAAQ;YAC1B,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAC1B,CAAC;YACD,OAAO,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC3D,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC,0BAA0B,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QACrD,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC,yBAAyB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QACpD,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YACrC,OAAO,IAAI,CAAC,0BAA0B,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QACrD,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,cAAc,EAAE,CAAC;YAC5C,OAAO,IAAI,CAAC,iCAAiC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QAC5D,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,qBAAqB,EAAE,CAAC;YACnD,OAAO,IAAI,CAAC,8BAA8B,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;QACzD,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;QACnE,CAAC;aAAM,CAAC;YACN,OAAO,IAAA,qBAAW,EAAC,IAAI,CAAC,CAAA;QAC1B,CAAC;IACH,CAAC;IAUS,qBAAqB,CAAC,IAAe;QAC7C,MAAM,kBAAkB,GAAG,CAAC,OAAkB,EAAa,EAAE;YAC3D,IAAI,OAAO,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;gBACpC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;gBACzB,IAAI,IAAI,CAAC,QAAQ,KAAK,cAAc,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAChE,OAAO,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC1C,CAAC;gBACD,OAAO,OAAO,CAAA;YAChB,CAAC;YAED,IAAI,OAAO,CAAC,QAAQ,KAAK,cAAc,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtE,OAAO,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;YAC7C,CAAC;YAED,OAAO,OAAO,CAAA;QAChB,CAAC,CAAA;QAED,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACjC,CAAC;IAEM,8BAA8B,CAAC,aAA2C,EAAE,KAAc;QAC/F,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;QAEjE,MAAM,oBAAoB,GAAG,aAAa,CAAC,oBAAoB,IAAI,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAA;QAE1H,MAAM,QAAQ,GAAG,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAEhJ,2CAA2C;QAC3C,uEAAuE;QACvE,OAAO;YACL,GAAG,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,CAAC;YACvB,UAAU;YACV,GAAG,CAAC,oBAAoB,IAAI,EAAE,oBAAoB,EAAE,CAAC;YACrD,GAAG,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,IAAI,EAAE,QAAQ,EAAE,CAAC;YAChD,IAAI,EAAE,QAAQ;SACf,CAAA;IACH,CAAC;IAES,8BAA8B,CAAC,cAAkC;QACzE,OAAO;QACL,qHAAqH;SACtH,CAAA;IACH,CAAC;IAES,qBAAqB,CAAC,SAA+B;QAC7D,oFAAoF;QACpF,MAAM,UAAU,GAAG;QACjB,sFAAsF;SACvF,CAAA;QACD,OAAO,UAAU,CAAA;IACnB,CAAC;IAES,0CAA0C,GAAG,GAAY,EAAE;QACnE,IAAI,IAAI,CAAC,MAAM,CAAC,8BAA8B,KAAK,wBAAwB,EAAE,CAAC;YAC5E,OAAO,KAAK,CAAA;QACd,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,8BAA8B,KAAK,iBAAiB,EAAE,CAAC;YAC5E,OAAO,KAAK,CAAA;QACd,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,8BAA8B,KAAK,QAAQ,EAAE,CAAC;YACnE,OAAO,IAAI,CAAA;QACb,CAAC;aAAM,CAAC;YACN,OAAO,IAAA,qBAAW,EAAC,IAAI,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAA;QAChE,CAAC;IACH,CAAC,CAAA;IAES,8BAA8B,CAAC,QAAmC;QAC1E,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC1B,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;gBACzC,OAAO,CAAC,IAAI,CAAC;;;;;;;;SAQZ,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,MAAM,GAAG,GAA0D;YACjE,GAAG,EAAE;gBACH,wHAAwH;gBACxH,oBAAoB,EAAE,IAAI;aAC3B;YACD,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE;YAC5C,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YAC5B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;YAC1C,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;YACxC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;YACxC,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE;YACjD,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE;YAC5C,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;YACtB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE;YAC1C,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE;YAC7C,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE;YAC1C,MAAM,EAAE;gBACN,oBAAoB,EAAE,IAAI,CAAC,0CAA0C,EAAE;gBACvE,IAAI,EAAE,QAAQ;aACf;YACD,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC3B,CAAA;QAED,OAAO,GAAG,CAAC,QAAQ,CAAC,CAAA;IACtB,CAAC;IAES,0BAA0B,CAAC,SAAyB,EAAE,KAAc;QAC5E,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,CAAC;YACxD,IAAI,EAAE,OAAO;SACd,CAAA;IACH,CAAC;IAES,wBAAwB,CAAC,MAA+C;QAChF,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;YACrD,MAAM,QAAQ,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAE,OAAO,IAAwC,CAAA;YAC5F,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;YACpB,OAAO,MAAM,CAAA;QACf,CAAC,EAAE,IAAI,GAAG,EAAmC,CAAC,CAAA;QAE9C,OAAO,eAAe,CAAA;IACxB,CAAC;IAIS,YAAY,CAAC,QAAuB;QAC5C,OAAO,QAAQ,CAAC,IAAI,CAAC,QAAQ,KAAK,WAAW,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,KAAK,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAA;IAC1J,CAAC;IAES,+BAA+B,CAAC,QAAuB;QAC/D,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAA;QAChC,OAAO;YACL,aAAa,EAAE,QAAQ,CAAC,IAAI;YAC5B,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;YACxD,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,EAAE,EAAE,OAAO;YACX,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,QAAQ,EAAE,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC;YACjD,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,cAAc,EAAE,SAAS;YACzB,UAAU,EAAE,QAAQ,CAAC,UAAU;SAChC,CAAA;IACH,CAAC;IAES,6BAA6B,CAAC,MAAiD;QACvF,OAAO,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IAChG,CAAC;IAES,wBAAwB,CAAC,IAAoC;QACrE,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAA;IAC9C,CAAC;IAES,mBAAmB,CAAC,UAA2B;QACvD,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;aAC7C,MAAM,CAAC,+CAA8B,CAAC;aACtC,MAAM,CACL,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YACX,GAAG,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAE,CAAC,KAAK,CAAA;YACjC,OAAO,GAAG,CAAA;QACZ,CAAC,EACD,EAAuD,CACxD,CAAA;QAEH,OAAO,IAAI,CAAC,yBAAyB,CAAC,gBAAgB,CAAC,CAAA;IACzD,CAAC;IAES,yBAAyB,CAAC,UAA6D;QAC/F,OAAO,UAAU,CAAA;IACnB,CAAC;IAES,gDAAgD,CAAC,UAA6D;QACtH,MAAM,WAAW,GAAG,EAAE,GAAG,UAAU,EAAE,CAAA;QAErC,IAAI,WAAW,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;YAC/C,IAAI,WAAW,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,uIAAuI,CAAC,CAAA;YAC1J,CAAC;YAED,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,gBAAgB,CAAA;YAClD,WAAW,CAAC,gBAAgB,GAAG,IAAI,CAAA;QACrC,CAAC;QAED,IAAI,WAAW,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;YAC/C,IAAI,WAAW,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,uIAAuI,CAAC,CAAA;YAC1J,CAAC;YAED,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,gBAAgB,CAAA;YAClD,WAAW,CAAC,gBAAgB,GAAG,IAAI,CAAA;QACrC,CAAC;QAED,OAAO,WAAW,CAAA;IACpB,CAAC;CACF;AAvTD,sCAuTC"}
|
|
@@ -31,7 +31,7 @@ class SpecGenerator2 extends specGenerator_1.SpecGenerator {
|
|
|
31
31
|
produces: [swaggerUtils_1.DEFAULT_RESPONSE_MEDIA_TYPE],
|
|
32
32
|
swagger: '2.0',
|
|
33
33
|
};
|
|
34
|
-
const securityDefinitions = this.config.securityDefinitions
|
|
34
|
+
const securityDefinitions = this.config.securityDefinitions ?? {};
|
|
35
35
|
const supportedSchemes = ['basic', 'apiKey', 'oauth2'];
|
|
36
36
|
for (const { type } of Object.values(securityDefinitions)) {
|
|
37
37
|
if (!supportedSchemes.includes(type)) {
|
|
@@ -86,7 +86,7 @@ class SpecGenerator2 extends specGenerator_1.SpecGenerator {
|
|
|
86
86
|
definitions[referenceType.refName] = {
|
|
87
87
|
description: referenceType.description,
|
|
88
88
|
properties: this.buildProperties(referenceType.properties),
|
|
89
|
-
required: required
|
|
89
|
+
required: required.length > 0 ? Array.from(new Set(required)) : undefined,
|
|
90
90
|
type: 'object',
|
|
91
91
|
};
|
|
92
92
|
if (referenceType.additionalProperties) {
|
|
@@ -110,7 +110,7 @@ class SpecGenerator2 extends specGenerator_1.SpecGenerator {
|
|
|
110
110
|
enum: referenceType.enums,
|
|
111
111
|
type: this.decideEnumType(referenceType.enums, referenceType.refName),
|
|
112
112
|
};
|
|
113
|
-
if (this.config.xEnumVarnames && referenceType.enumVarnames
|
|
113
|
+
if (this.config.xEnumVarnames && referenceType.enumVarnames?.length === referenceType.enums.length) {
|
|
114
114
|
definitions[referenceType.refName]['x-enum-varnames'] = referenceType.enumVarnames;
|
|
115
115
|
}
|
|
116
116
|
if (referenceType.example) {
|
|
@@ -313,12 +313,14 @@ class SpecGenerator2 extends specGenerator_1.SpecGenerator {
|
|
|
313
313
|
...(parameterType.items && this.isSwaggerBaseSchema(parameterType.items) ? { items: this.toSwagger2Schema(parameterType.items) } : {}),
|
|
314
314
|
type: 'array',
|
|
315
315
|
...schemaValidators,
|
|
316
|
+
...this.getExternalValidatorExtension(source),
|
|
316
317
|
}
|
|
317
318
|
: source.type.dataType === 'any'
|
|
318
|
-
? { type: 'object', ...schemaValidators }
|
|
319
|
+
? { type: 'object', ...schemaValidators, ...this.getExternalValidatorExtension(source) }
|
|
319
320
|
: {
|
|
320
321
|
...this.toSwagger2Schema(parameterType),
|
|
321
322
|
...schemaValidators,
|
|
323
|
+
...this.getExternalValidatorExtension(source),
|
|
322
324
|
};
|
|
323
325
|
return {
|
|
324
326
|
description: source.description,
|
|
@@ -342,6 +344,7 @@ class SpecGenerator2 extends specGenerator_1.SpecGenerator {
|
|
|
342
344
|
...(parameterType.format ? { format: this.throwIfNotDataFormat(parameterType.format) } : {}),
|
|
343
345
|
...(parameterType.items ? { items: parameterType.items } : {}),
|
|
344
346
|
...(parameterType.enum ? { enum: parameterType.enum } : {}),
|
|
347
|
+
...this.getExternalValidatorExtension(source),
|
|
345
348
|
...parameterValidators,
|
|
346
349
|
};
|
|
347
350
|
const resolvedType = source.type.dataType === 'any' ? 'string' : parameterType.type ? this.throwIfNotDataType(parameterType.type) : undefined;
|
|
@@ -407,7 +410,7 @@ class SpecGenerator2 extends specGenerator_1.SpecGenerator {
|
|
|
407
410
|
buildProperties(source) {
|
|
408
411
|
const properties = {};
|
|
409
412
|
source.forEach(property => {
|
|
410
|
-
let swaggerType = this.getSwaggerType(property.type);
|
|
413
|
+
let swaggerType = this.getSwaggerType(this.getPropertySchemaType(property.type));
|
|
411
414
|
const format = property.format;
|
|
412
415
|
swaggerType.description = property.description;
|
|
413
416
|
swaggerType.example = property.example;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"specGenerator2.js","sourceRoot":"","sources":["../../src/swagger/specGenerator2.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"specGenerator2.js","sourceRoot":"","sources":["../../src/swagger/specGenerator2.ts"],"names":[],"mappings":";;;AAAA,+CAAiD;AACjD,gDAA+D;AAE/D,mDAA+C;AAE/C,oDAAgD;AAChD,kDAA0E;AAC1E,kDAAmD;AACnD,wDAAyG;AAGzG,MAAa,cAAe,SAAQ,6BAAa;IAM1B;IACA;IANX,yBAAyB,CAAC,IAAe;QACjD,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAA;IACzD,CAAC;IAED,YACqB,QAAuB,EACvB,MAA0B;QAE7C,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;QAHJ,aAAQ,GAAR,QAAQ,CAAe;QACvB,WAAM,GAAN,MAAM,CAAoB;IAG/C,CAAC;IAEM,OAAO;QACZ,IAAI,IAAI,GAAkB;YACxB,QAAQ,EAAE,IAAA,yBAAa,EAAC,IAAI,CAAC,MAAM,CAAC,QAAkB,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC;YAC9E,QAAQ,EAAE,CAAC,yCAA0B,CAAC;YACtC,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAAE;YACpC,IAAI,EAAE;gBACJ,KAAK,EAAE,EAAE;aACV;YACD,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE;YACxB,QAAQ,EAAE,CAAC,0CAA2B,CAAC;YACvC,OAAO,EAAE,KAAK;SACf,CAAA;QAED,MAAM,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,mBAAmB,IAAI,EAAE,CAAA;QACjE,MAAM,gBAAgB,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;QACtD,KAAK,MAAM,EAAE,IAAI,EAAE,IAAI,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,EAAE,CAAC;YAC1D,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrC,MAAM,IAAI,KAAK,CAAC,iCAAiC,IAAI,sCAAsC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAC3H,CAAC;QACH,CAAC;QACD,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAA;QAE9C,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAA;QACpC,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA;QACzC,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAA;QAC9B,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAA;QACjD,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAC/B,IAAI,CAAC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAA;QACvD,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAA;QAC9B,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAA;QACnD,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA;QACzC,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,WAAW,CAAA;YAChE,MAAM,UAAU,GAAgG;gBAC9G,SAAS,EAAE,MAAM,CAAC,MAAM;gBACxB,SAAS,EAAE,0BAAc;gBACzB,SAAS,EAAE,CAAC,IAAuB,EAAE,KAAwB,EAAqB,EAAE,CAAC,IAAA,oBAAS,EAAC,IAAI,EAAE,KAAK,CAAC;aAC5G,CAAA;YAED,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAoC,EAAE,IAAI,CAAC,MAAM,CAAC,IAAoC,CAA6B,CAAA;QAChK,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACxB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAA;QACpC,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAEO,gBAAgB;QACtB,MAAM,WAAW,GAAmD,EAAE,CAAA;QACtE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;YACzD,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAA;YAC9D,IAAI,aAAa,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;gBAC3C,MAAM,QAAQ,GAAG,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;gBACjI,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG;oBACnC,WAAW,EAAE,aAAa,CAAC,WAAW;oBACtC,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,UAAU,CAAC;oBAC1D,QAAQ,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;oBACzE,IAAI,EAAE,QAAQ;iBACf,CAAA;gBAED,IAAI,aAAa,CAAC,oBAAoB,EAAE,CAAC;oBACvC,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,oBAAoB,GAAG,IAAI,CAAC,yBAAyB,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAA;gBAC9H,CAAC;qBAAM,CAAC;oBACN,+FAA+F;oBAC/F,qCAAqC;oBACrC,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,oBAAoB,GAAG,IAAI,CAAC,0CAA0C,EAAE,CAAA;gBAC7G,CAAC;gBAED,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;oBAC1B,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,GAAG,aAAa,CAAC,OAAO,CAAA;gBACpE,CAAC;gBAED,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;oBACxB,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,GAAG,aAAa,CAAC,KAAK,CAAA;gBAChE,CAAC;YACH,CAAC;iBAAM,IAAI,aAAa,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAChD,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG;oBACnC,WAAW,EAAE,aAAa,CAAC,WAAW;oBACtC,IAAI,EAAE,aAAa,CAAC,KAAK;oBACzB,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC;iBACtE,CAAA;gBACD,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,aAAa,CAAC,YAAY,EAAE,MAAM,KAAK,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;oBACnG,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,iBAAiB,CAAC,GAAG,aAAa,CAAC,YAAY,CAAA;gBACpF,CAAC;gBACD,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;oBAC1B,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,OAAO,GAAG,aAAa,CAAC,OAAO,CAAA;gBACpE,CAAC;gBACD,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;oBACxB,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,GAAG,aAAa,CAAC,KAAK,CAAA;gBAChE,CAAC;YACH,CAAC;iBAAM,IAAI,aAAa,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;gBACjD,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;gBAC3D,MAAM,MAAM,GAAG,aAAa,CAAC,MAA4B,CAAA;gBACzD,MAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,UAAU,CAA6B,CAAA;gBAEjG,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG;oBACnC,GAAI,WAA+B;oBACnC,OAAO,EAAE,aAAa,CAAC,OAAO,IAAI,WAAW,CAAC,OAAO;oBACrD,OAAO,EAAE,aAAa,CAAC,OAAO;oBAC9B,MAAM,EAAE,MAAM,IAAI,WAAW,CAAC,MAAM;oBACpC,WAAW,EAAE,aAAa,CAAC,WAAW;oBACtC,GAAG,CAAC,aAAa,CAAC,KAAK,IAAI,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,CAAC;oBAC1D,GAAG,UAAU;iBACd,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,IAAA,qBAAW,EAAC,aAAa,CAAC,CAAA;YAC5B,CAAC;YAED,IAAI,aAAa,CAAC,UAAU,EAAE,CAAC;gBAC7B,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,GAAG,IAAI,CAAA;YAC3D,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,OAAO,WAAW,CAAA;IACpB,CAAC;IAEO,UAAU;QAChB,MAAM,KAAK,GAAyC,EAAE,CAAA;QAEtD,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YAC7C,MAAM,wBAAwB,GAAG,IAAA,yBAAa,EAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YACpE,2DAA2D;YAC3D,UAAU,CAAC,OAAO;iBACf,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;iBAClC,OAAO,CAAC,MAAM,CAAC,EAAE;gBAChB,MAAM,oBAAoB,GAAG,IAAA,yBAAa,EAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;gBAC5D,IAAI,IAAI,GAAG,IAAA,yBAAa,EAAC,GAAG,wBAAwB,GAAG,oBAAoB,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,CAAC,CAAA;gBAC9F,IAAI,GAAG,IAAA,kCAAsB,EAAC,IAAI,CAAC,CAAA;gBACnC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;gBAC/B,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAA;YAC7E,CAAC,CAAC,CAAA;QACN,CAAC,CAAC,CAAA;QAEF,OAAO,KAAK,CAAA;IACd,CAAC;IAEO,WAAW,CAAC,cAAsB,EAAE,MAAmB,EAAE,UAAqE,EAAE,eAA0B;QAChK,MAAM,UAAU,GAAsB,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE,eAAe,CAAC,CAAA;QAClG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,UAAU,CAAA;QACtC,UAAU,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAA;QAC3C,UAAU,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAA;QACnC,UAAU,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;QAE7B,+FAA+F;QAC/F,UAAU,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,UAAU,CAAC,WAAW,CAAA;QAErE,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACtB,UAAU,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAA;QAC3C,CAAC;QAED,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,UAAU,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAA;QACvC,CAAC;QAED,MAAM,aAAa,GAAqB,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAA;QAEzF,UAAU,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU;aACtC,MAAM,CAAC,CAAC,CAAC,EAAE;YACV,OAAO,CAAC,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;QACxF,CAAC,CAAC;aACD,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAA;QAEnC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAA;QAC9E,CAAC;QAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC7E,CAAC;QAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,sBAAsB,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;QAC7E,IAAI,iBAAiB,EAAE,CAAC;YACtB,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;QAC/C,CAAC;QACD,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClE,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAA;QAC3E,CAAC;QAED,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;IACrE,CAAC;IAES,cAAc,CAAC,cAAsB,EAAE,MAAmB,EAAE,eAA0B;QAC9F,MAAM,gBAAgB,GAAyC,EAAE,CAAA;QAEjE,IAAI,QAAQ,GAA8B,EAAE,CAAA;QAC5C,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,GAAkB,EAAE,EAAE;YAC9C,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG;gBAC3B,WAAW,EAAE,GAAG,CAAC,WAAW;aAC7B,CAAA;YACD,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,IAAA,uBAAU,EAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1C,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;oBACjB,QAAQ,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAA;gBAChC,CAAC;gBACD,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAoB,CAAA;YACxF,CAAC;YACD,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;oBACxD,OAAO,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAA;gBAC/D,CAAC;gBACD,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,GAAG,EAAE,CAAC,0CAA2B,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAA;YAC1F,CAAC;YAED,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;gBAChB,MAAM,OAAO,GAAuC,EAAE,CAAA;gBACtD,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,WAAW,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,qBAAqB,EAAE,CAAC;oBAC3F,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,IAAmB,EAAE,EAAE;wBACrD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;4BACnB,GAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAoB;4BACrD,WAAW,EAAE,IAAI,CAAC,WAAW;yBAC9B,CAAA;oBACH,CAAC,CAAC,CAAA;gBACJ,CAAC;qBAAM,CAAC;oBACN,IAAA,qBAAW,EAAC,GAAG,CAAC,OAAO,CAAC,CAAA;gBAC1B,CAAC;gBACD,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,GAAG,OAAO,CAAA;YAC9C,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAA;QACrE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,QAAQ,GAAG,eAAe,IAAI,CAAC,0CAA2B,CAAC,CAAA;QAC7D,CAAC;QAED,MAAM,SAAS,GAAsB;YACnC,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,CAAC;YACxD,QAAQ,EAAE,QAAoB;YAC9B,SAAS,EAAE,gBAAgB;SAC5B,CAAA;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAA;QAC5D,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,CAAA;QACpE,IAAI,OAAO,IAAI,WAAW,EAAE,CAAC;YAC3B,SAAS,CAAC,QAAQ,GAAG,EAAE,CAAA;YACvB,IAAI,OAAO,EAAE,CAAC;gBACZ,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,yCAA0B,CAAC,CAAA;YACxE,CAAC;YACD,IAAI,WAAW,EAAE,CAAC;gBAChB,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAA;YAChD,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;IAEO,sBAAsB,CAAC,cAAsB,EAAE,MAAmB;QACxE,MAAM,UAAU,GAAG,EAAyC,CAAA;QAC5D,MAAM,QAAQ,GAAa,EAAE,CAAA;QAE7B,MAAM,CAAC,UAAU;aACd,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC;aACjC,OAAO,CAAC,CAAC,CAAC,EAAE;YACX,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAoB,CAAA;YACnE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAA;YACtC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW,CAAA;YAC9C,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;YAE/E,IAAI,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YACvB,CAAC;QACH,CAAC,CAAC,CAAA;QAEJ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,CAAC;YACpC,OAAM;QACR,CAAC;QAED,MAAM,SAAS,GAA0B;YACvC,EAAE,EAAE,MAAM;YACV,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE;gBACN,UAAU;gBACV,KAAK,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,CAAC,MAAM;gBAC3D,IAAI,EAAE,QAAQ;aACf;SACF,CAAA;QACD,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;YACpB,SAAS,CAAC,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACtC,CAAC;QACD,OAAO,SAAS,CAAA;IAClB,CAAC;IAEO,qBAAqB,CAAC,MAAsB;QAClD,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,qBAAqB,EAAE,CAAC;YAC3F,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAA;YAEzC,OAAO,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,+BAA+B,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QACxG,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,YAAY,MAAM,CAAC,IAAI,gCAAgC,CAAC,CAAA;IAC1E,CAAC;IAEO,cAAc,CAAC,MAAsB;QAC3C,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;QAEtB,IAAI,MAAM,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;gBACpC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;YAClB,CAAC;QACH,CAAC;QAED,IAAI,MAAM,CAAC,EAAE,KAAK,MAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACxD,6CAA6C;YAC7C,wDAAwD;YAExD,IAAI,GAAG;gBACL,QAAQ,EAAE,MAAM;gBAChB,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB,CAAA;QACH,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;QAE/C,IAAI,MAAM,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;YACzB,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,UAAU,CAA6B,CAAA;YAEhG,MAAM,MAAM,GACV,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,OAAO;gBAC9B,CAAC,CAAC;oBACE,GAAG,CAAC,aAAa,CAAC,KAAK,IAAI,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACtI,IAAI,EAAE,OAAO;oBACb,GAAG,gBAAgB;oBACnB,GAAG,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC;iBAC9C;gBACH,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,KAAK;oBAC9B,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,gBAAgB,EAAE,GAAG,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC,EAAE;oBACxF,CAAC,CAAC;wBACE,GAAG,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC;wBACvC,GAAG,gBAAgB;wBACnB,GAAG,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC;qBAC9C,CAAA;YAET,OAAO;gBACL,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,EAAE,EAAE,MAAM;gBACV,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,QAAQ,EAAE,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC;gBAC/C,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtD,MAAM;aACP,CAAA;QACH,CAAC;QAED,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,uDAAuD,MAAM,CAAC,EAAE,oDAAoD,CAAC,CAAA;QACvI,CAAC;QAED,MAAM,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,UAAU,CAErE,CAAA;QACD,MAAM,aAAa,GAAG;YACpB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,QAAQ,EAAE,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC;YAC/C,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtD,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5F,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3D,GAAG,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC;YAC7C,GAAG,mBAAmB;SACvB,CAAA;QACD,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAE7I,QAAQ,MAAM,CAAC,EAAE,EAAE,CAAC;YAClB,KAAK,OAAO;gBACV,OAAO;oBACL,GAAG,aAAa;oBAChB,EAAE,EAAE,OAAO;oBACX,IAAI,EAAE,YAAY,IAAI,QAAQ;oBAC9B,GAAG,CAAC,YAAY,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACnE,CAAA;YACH,KAAK,UAAU;gBACb,OAAO;oBACL,GAAG,aAAa;oBAChB,EAAE,EAAE,UAAU;oBACd,IAAI,EAAE,YAAY,IAAI,QAAQ;iBAC/B,CAAA;YACH,KAAK,QAAQ;gBACX,OAAO;oBACL,GAAG,aAAa;oBAChB,EAAE,EAAE,QAAQ;oBACZ,IAAI,EAAE,YAAY,IAAI,QAAQ;iBAC/B,CAAA;YACH,KAAK,MAAM;gBACT,OAAO;oBACL,GAAG,aAAa;oBAChB,EAAE,EAAE,MAAM;oBACV,IAAI,EAAE,YAAY,IAAI,QAAQ;iBAC/B,CAAA;YACH;gBACE,MAAM,IAAI,KAAK,CAAC,+CAA+C,MAAM,CAAC,EAAE,IAAI,CAAC,CAAA;QACjF,CAAC;IACH,CAAC;IAEO,gBAAgB,CAAC,MAA0B;QACjD,MAAM,EAAE,oBAAoB,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,yBAAyB,EAAE,GAAG,MAAM,CAAA;QAC9F,MAAM,SAAS,GAAoB;YACjC,GAAG,yBAAyB;YAC5B,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACzD,CAAA;QAED,IAAI,KAAK,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7C,SAAS,CAAC,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAA;QAChD,CAAC;QAED,IAAI,OAAO,oBAAoB,KAAK,SAAS,EAAE,CAAC;YAC9C,SAAS,CAAC,oBAAoB,GAAG,oBAAoB,CAAA;QACvD,CAAC;aAAM,IAAI,oBAAoB,IAAI,IAAI,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAClF,SAAS,CAAC,oBAAoB,GAAG,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,CAAA;QAC9E,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,mBAAmB,GAAgD,EAAE,CAAA;YAC3E,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,EAAE;gBACpE,IAAI,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,EAAE,CAAC;oBAC7C,mBAAmB,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAA;gBAC3E,CAAC;YACH,CAAC,CAAC,CAAA;YACF,SAAS,CAAC,UAAU,GAAG,mBAAmB,CAAA;QAC5C,CAAC;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;IAEO,mBAAmB,CAAC,KAAc;QACxC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAA;IACpD,CAAC;IAES,eAAe,CAAC,MAAuB;QAC/C,MAAM,UAAU,GAAgD,EAAE,CAAA;QAElE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YACxB,IAAI,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAoB,CAAA;YACnG,MAAM,MAAM,GAAG,QAAQ,CAAC,MAA4B,CAAA;YACpD,WAAW,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAA;YAC9C,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAA;YACtC,WAAW,CAAC,MAAM,GAAG,MAAM,IAAI,WAAW,CAAC,MAAM,CAAA;YACjD,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;gBACtB,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAA;gBAEtC,WAAW,GAAG,EAAE,GAAG,WAAW,EAAE,GAAI,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,UAAU,CAA8B,EAAE,CAAA;YAClH,CAAC;YACD,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACxB,WAAW,CAAC,cAAc,CAAC,GAAG,IAAI,CAAA;YACpC,CAAC;YAED,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACnB,WAAW,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAA;YACpC,CAAC;YAED,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACxB,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;oBACrC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAA;gBAC5C,CAAC,CAAC,CAAA;YACJ,CAAC;YAED,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,WAAW,CAAA;QACzC,CAAC,CAAC,CAAA;QAEF,OAAO,UAAU,CAAA;IACnB,CAAC;IAES,0BAA0B,CAAC,IAAoB;QACvD,MAAM,qBAAqB,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,WAAW,CAAC,CAAA;QAChF,+DAA+D;QAC/D,IAAI,qBAAqB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,KAAK,MAAM,CAAC,EAAE,CAAC;YACxE,MAAM,UAAU,GAAkB,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAAA;YACjE,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBAChC,qEAAqE;gBACrE,UAAU,CAAC,KAAK,GAAG,CAAC,GAAG,UAAU,CAAC,KAAK,EAAE,GAAI,CAAmB,CAAC,KAAK,CAAC,CAAA;YACzE,CAAC,CAAC,CAAA;YACF,OAAO,IAAI,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAA;QACnD,CAAC;aAAM,IAAI,qBAAqB,CAAC,MAAM,KAAK,CAAC,IAAI,qBAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,KAAK,MAAM,IAAI,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YAChK,8HAA8H;YAC9H,MAAM,aAAa,GAAG,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,KAAK,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;YACpH,MAAM,SAAS,GAAG,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAA;YACzE,MAAM,KAAK,GAAG,CAAC,CAAC,WAAW,CAAC,IAAI,CAAA;YAEhC,IAAI,KAAK,EAAE,CAAC;gBACV,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAA;YAC3B,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,YAAY,CAAC,GAAG,IAAI,CAAA;gBAChC,OAAO,WAAW,CAAA;YACpB,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;YAChD,OAAO,CAAC,IAAI,CAAC,oEAAoE,GAAG,6FAA6F,CAAC,CAAA;QACpL,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAA;IAC3B,CAAC;IACS,iCAAiC,CAAC,IAA2B;QACrE,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YACjD,IAAI,IAAI,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;gBAClC,IAAI,OAAO,GAAG,IAAI,CAAA;gBAClB,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAuB,CAAA;gBAE/E,MAAM,KAAK,GACT,OAAO;oBACP,OAAO,CAAC,UAAU;oBAClB,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;wBACtC,OAAO;4BACL,GAAG,GAAG;4BACN,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;yBAC5C,CAAA;oBACH,CAAC,EAAE,EAAE,CAAC,CAAA;gBACR,OAAO,EAAE,GAAG,GAAG,EAAE,GAAG,KAAK,EAAE,CAAA;YAC7B,CAAC;iBAAM,CAAC;gBACN,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;oBACzC,OAAO,CAAC,IAAI,CAAC,iKAAiK,CAAC,CAAA;gBACjL,CAAC;gBACD,OAAO,EAAE,GAAG,GAAG,EAAE,CAAA;YACnB,CAAC;QACH,CAAC,EAAE,EAAE,CAAC,CAAA;QACN,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAA;IACvC,CAAC;IAES,8BAA8B,CAAC,aAAiC;QACxE,OAAO,EAAE,IAAI,EAAE,iBAAiB,kBAAkB,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,EAAE,CAAA;IAC/E,CAAC;IAEO,cAAc,CAAC,MAA8B,EAAE,UAAkB;QACvE,MAAM,eAAe,GAAG,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAA;QAE7D,MAAM,mBAAmB,GAAG,GAAG,EAAE;YAC/B,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YAC7D,OAAO,yDAAyD,UAAU,QAAQ,eAAe,EAAE,CAAA;QACrG,CAAC,CAAA;QAED,IAAI,kBAAuC,CAAA;QAC3C,IAAI,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,eAAe,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAChE,kBAAkB,GAAG,QAAQ,CAAA;QAC/B,CAAC;aAAM,IAAI,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,eAAe,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACvE,kBAAkB,GAAG,QAAQ,CAAA;QAC/B,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,mBAAmB,EAAE,CAAC,CAAA;QACxC,CAAC;QACD,OAAO,kBAAkB,CAAA;IAC3B,CAAC;IAES,yBAAyB,CAAC,QAAuB;QACzD,MAAM,KAAK,GAAG,IAAI,CAAC,wBAAwB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC3D,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAE,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAgC,CAAC,CAAC,CAAC,QAAQ,CAAA;QAClG,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;QAC7D,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAA,uBAAQ,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,CAAA;IACvG,CAAC;IAES,yBAAyB,CAAC,UAA6D;QAC/F,OAAO,IAAI,CAAC,gDAAgD,CAAC,UAAU,CAAC,CAAA;IAC1E,CAAC;CACF;AAhkBD,wCAgkBC"}
|
|
@@ -53,6 +53,7 @@ export declare class SpecGenerator3 extends SpecGenerator {
|
|
|
53
53
|
protected buildMediaType(controllerName: string, method: Tsoa.Method, parameter: Tsoa.Parameter): Swagger.MediaType;
|
|
54
54
|
protected buildQueriesParameter(source: Tsoa.Parameter): Swagger.Parameter3[];
|
|
55
55
|
protected buildParameter(source: Tsoa.Parameter): Swagger.Parameter3;
|
|
56
|
+
private mergeSchemaExtensions;
|
|
56
57
|
protected buildExamples(source: Pick<Tsoa.Parameter, 'example' | 'exampleLabels'>): {
|
|
57
58
|
example?: unknown;
|
|
58
59
|
examples?: {
|
|
@@ -131,9 +131,9 @@ class SpecGenerator3 extends specGenerator_1.SpecGenerator {
|
|
|
131
131
|
const prefix = this.config.disableBasePathPrefixSlash ? undefined : '/';
|
|
132
132
|
const basePath = (0, pathUtils_1.normalisePath)(this.config.basePath, prefix, undefined, false);
|
|
133
133
|
const scheme = this.config.schemes ? this.config.schemes[0] : 'https';
|
|
134
|
-
const hosts = this.config.servers
|
|
134
|
+
const hosts = this.config.servers ?? (this.config.host ? [this.config.host] : undefined);
|
|
135
135
|
const convertHost = (host) => ({ url: `${scheme}://${host}${basePath}` });
|
|
136
|
-
return (hosts?.map(convertHost)
|
|
136
|
+
return (hosts?.map(convertHost) ?? [{ url: basePath }]);
|
|
137
137
|
}
|
|
138
138
|
buildSchema() {
|
|
139
139
|
const schema = {};
|
|
@@ -144,7 +144,7 @@ class SpecGenerator3 extends specGenerator_1.SpecGenerator {
|
|
|
144
144
|
schema[referenceType.refName] = {
|
|
145
145
|
description: referenceType.description,
|
|
146
146
|
properties: this.buildProperties(referenceType.properties),
|
|
147
|
-
required: required
|
|
147
|
+
required: required.length > 0 ? Array.from(new Set(required)) : undefined,
|
|
148
148
|
type: 'object',
|
|
149
149
|
};
|
|
150
150
|
if (referenceType.additionalProperties) {
|
|
@@ -170,7 +170,7 @@ class SpecGenerator3 extends specGenerator_1.SpecGenerator {
|
|
|
170
170
|
enum: referenceType.enums,
|
|
171
171
|
type: enumTypes.has('string') ? 'string' : 'number',
|
|
172
172
|
};
|
|
173
|
-
if (this.config.xEnumVarnames && referenceType.enumVarnames
|
|
173
|
+
if (this.config.xEnumVarnames && referenceType.enumVarnames?.length === referenceType.enums.length) {
|
|
174
174
|
schema[referenceType.refName]['x-enum-varnames'] = referenceType.enumVarnames;
|
|
175
175
|
}
|
|
176
176
|
}
|
|
@@ -321,7 +321,7 @@ class SpecGenerator3 extends specGenerator_1.SpecGenerator {
|
|
|
321
321
|
let exampleCounter = 1;
|
|
322
322
|
const examples = res.examples.reduce((acc, ex, currentIndex) => {
|
|
323
323
|
const exampleLabel = res.exampleLabels?.[currentIndex];
|
|
324
|
-
acc[exampleLabel
|
|
324
|
+
acc[exampleLabel ?? `Example ${exampleCounter++}`] = { value: ex };
|
|
325
325
|
return acc;
|
|
326
326
|
}, {});
|
|
327
327
|
const content = swaggerResponses[res.name].content;
|
|
@@ -383,7 +383,7 @@ class SpecGenerator3 extends specGenerator_1.SpecGenerator {
|
|
|
383
383
|
properties,
|
|
384
384
|
// An empty list required: [] is not valid.
|
|
385
385
|
// If all properties are optional, do not specify the required keyword.
|
|
386
|
-
...(required
|
|
386
|
+
...(required.length > 0 && { required }),
|
|
387
387
|
},
|
|
388
388
|
},
|
|
389
389
|
},
|
|
@@ -404,12 +404,13 @@ class SpecGenerator3 extends specGenerator_1.SpecGenerator {
|
|
|
404
404
|
}
|
|
405
405
|
buildMediaType(controllerName, method, parameter) {
|
|
406
406
|
const validators = this.getSchemaValidators(parameter.validators);
|
|
407
|
+
const schema = this.mergeSchemaExtensions(this.getSwaggerType(parameter.type, this.config.useTitleTagsForInlineObjects ? this.getOperationId(controllerName, method) + 'RequestBody' : undefined), {
|
|
408
|
+
...validators,
|
|
409
|
+
...(parameter.description && { description: parameter.description }),
|
|
410
|
+
...this.getExternalValidatorExtension(parameter),
|
|
411
|
+
});
|
|
407
412
|
const mediaType = {
|
|
408
|
-
schema
|
|
409
|
-
...this.getSwaggerType(parameter.type, this.config.useTitleTagsForInlineObjects ? this.getOperationId(controllerName, method) + 'RequestBody' : undefined),
|
|
410
|
-
...validators,
|
|
411
|
-
...(parameter.description && { description: parameter.description }),
|
|
412
|
-
},
|
|
413
|
+
schema,
|
|
413
414
|
};
|
|
414
415
|
const parameterExamples = parameter.example;
|
|
415
416
|
const parameterExampleLabels = parameter.exampleLabels;
|
|
@@ -423,7 +424,7 @@ class SpecGenerator3 extends specGenerator_1.SpecGenerator {
|
|
|
423
424
|
let exampleCounter = 1;
|
|
424
425
|
mediaType.examples = parameterExamples.reduce((acc, ex, currentIndex) => {
|
|
425
426
|
const exampleLabel = parameterExampleLabels?.[currentIndex];
|
|
426
|
-
acc[exampleLabel
|
|
427
|
+
acc[exampleLabel ?? `Example ${exampleCounter++}`] = { value: ex };
|
|
427
428
|
return acc;
|
|
428
429
|
}, {});
|
|
429
430
|
}
|
|
@@ -445,6 +446,7 @@ class SpecGenerator3 extends specGenerator_1.SpecGenerator {
|
|
|
445
446
|
schema: {
|
|
446
447
|
default: source.default,
|
|
447
448
|
format: undefined,
|
|
449
|
+
...this.getExternalValidatorExtension(source),
|
|
448
450
|
},
|
|
449
451
|
};
|
|
450
452
|
if (source.deprecated) {
|
|
@@ -455,7 +457,7 @@ class SpecGenerator3 extends specGenerator_1.SpecGenerator {
|
|
|
455
457
|
parameter.schema.format = this.throwIfNotDataFormat(parameterType.format);
|
|
456
458
|
}
|
|
457
459
|
if (parameterType.$ref) {
|
|
458
|
-
parameter.schema = parameterType;
|
|
460
|
+
parameter.schema = this.mergeSchemaExtensions(parameterType, this.getExternalValidatorExtension(source));
|
|
459
461
|
return Object.assign(parameter, this.buildExamples(source));
|
|
460
462
|
}
|
|
461
463
|
const validatorObjs = this.getSchemaValidators(source.validators);
|
|
@@ -474,6 +476,19 @@ class SpecGenerator3 extends specGenerator_1.SpecGenerator {
|
|
|
474
476
|
parameter.schema = Object.assign({}, parameter.schema, validatorObjs);
|
|
475
477
|
return Object.assign(parameter, this.buildExamples(source));
|
|
476
478
|
}
|
|
479
|
+
mergeSchemaExtensions(schema, extensions) {
|
|
480
|
+
const filteredExtensions = Object.fromEntries(Object.entries(extensions).filter(([, value]) => value !== undefined));
|
|
481
|
+
if (!schema.$ref || Object.keys(filteredExtensions).length === 0) {
|
|
482
|
+
return {
|
|
483
|
+
...schema,
|
|
484
|
+
...filteredExtensions,
|
|
485
|
+
};
|
|
486
|
+
}
|
|
487
|
+
return {
|
|
488
|
+
allOf: [schema],
|
|
489
|
+
...filteredExtensions,
|
|
490
|
+
};
|
|
491
|
+
}
|
|
477
492
|
buildExamples(source) {
|
|
478
493
|
const { example: parameterExamples, exampleLabels } = source;
|
|
479
494
|
if (parameterExamples === undefined) {
|
|
@@ -494,7 +509,7 @@ class SpecGenerator3 extends specGenerator_1.SpecGenerator {
|
|
|
494
509
|
buildProperties(source) {
|
|
495
510
|
const properties = {};
|
|
496
511
|
source.forEach(property => {
|
|
497
|
-
let swaggerType = this.getSwaggerType(property.type);
|
|
512
|
+
let swaggerType = this.getSwaggerType(this.getPropertySchemaType(property.type));
|
|
498
513
|
const format = property.format;
|
|
499
514
|
swaggerType.description = property.description;
|
|
500
515
|
swaggerType.example = property.example;
|