ts-openapi-codegen 1.0.0-beta.4 → 1.0.0-beta.6
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 +35 -1
- package/dist/cli/chekOpenApiConfig/chekOpenApiConfig.d.ts +5 -0
- package/dist/cli/chekOpenApiConfig/chekOpenApiConfig.d.ts.map +1 -0
- package/dist/cli/chekOpenApiConfig/chekOpenApiConfig.js +40 -0
- package/dist/cli/index.js +47 -5
- package/dist/cli/utils.d.ts +5 -0
- package/dist/cli/utils.d.ts.map +1 -1
- package/dist/cli/utils.js +22 -0
- package/dist/common/Options.d.ts +1 -0
- package/dist/common/Options.d.ts.map +1 -1
- package/dist/common/UpdateNotifier.d.ts +24 -0
- package/dist/common/UpdateNotifier.d.ts.map +1 -0
- package/dist/common/UpdateNotifier.js +120 -0
- package/dist/common/__tests__/mergeObjectSchemas.test.js +1 -1
- package/dist/core/Context.d.ts +10 -1
- package/dist/core/Context.d.ts.map +1 -1
- package/dist/core/Context.js +8 -1
- package/dist/core/{utils/writeClient.d.ts → WriteClient.d.ts} +13 -6
- package/dist/core/WriteClient.d.ts.map +1 -0
- package/dist/core/{utils/writeClient.js → WriteClient.js} +69 -78
- package/dist/core/__tests__/WriteClient.test.d.ts +2 -0
- package/dist/core/__tests__/WriteClient.test.d.ts.map +1 -0
- package/dist/core/{utils/__tests__/writeClient.test.js → __tests__/WriteClient.test.js} +8 -8
- package/dist/core/api/v2/parser/__tests__/getType.test.js +3 -3
- package/dist/core/api/v2/parser/getOperationParameters.d.ts.map +1 -1
- package/dist/core/api/v2/parser/getOperationParameters.js +9 -7
- package/dist/core/api/v3/parser/__tests__/getType.test.js +3 -3
- package/dist/core/api/v3/parser/getOperation.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getOperation.js +4 -2
- package/dist/core/api/v3/parser/getOperationParameters.d.ts.map +1 -1
- package/dist/core/api/v3/parser/getOperationParameters.js +9 -7
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +5 -4
- package/dist/core/types/Consts.d.ts +10 -0
- package/dist/core/types/Consts.d.ts.map +1 -1
- package/dist/core/types/Consts.js +11 -1
- package/dist/core/types/Models.d.ts +3 -0
- package/dist/core/types/Models.d.ts.map +1 -1
- package/dist/core/utils/__mocks__/createOperationParameter.d.ts +3 -0
- package/dist/core/utils/__mocks__/createOperationParameter.d.ts.map +1 -0
- package/dist/core/utils/__mocks__/createOperationParameter.js +28 -0
- package/dist/core/utils/__tests__/sortByRequiredExtended.test.d.ts +2 -0
- package/dist/core/utils/__tests__/sortByRequiredExtended.test.d.ts.map +1 -0
- package/dist/core/utils/__tests__/sortByRequiredExtended.test.js +145 -0
- package/dist/core/utils/__tests__/sortByRequiredSimple.test.d.ts +2 -0
- package/dist/core/utils/__tests__/sortByRequiredSimple.test.d.ts.map +1 -0
- package/dist/core/utils/__tests__/sortByRequiredSimple.test.js +80 -0
- package/dist/core/utils/__tests__/writeClientCore.test.js +2 -2
- package/dist/core/utils/__tests__/writeClientIndex.test.js +2 -2
- package/dist/core/utils/__tests__/writeClientModels.test.js +2 -2
- package/dist/core/utils/__tests__/writeClientSchemas.test.js +2 -2
- package/dist/core/utils/__tests__/writeClientServices.test.js +2 -2
- package/dist/core/utils/getOpenApiSpec.d.ts.map +1 -1
- package/dist/core/utils/getOpenApiSpec.js +0 -7
- package/dist/core/utils/getPropertyGroupExtended.d.ts +4 -0
- package/dist/core/utils/getPropertyGroupExtended.d.ts.map +1 -0
- package/dist/core/utils/getPropertyGroupExtended.js +10 -0
- package/dist/core/utils/getPropertyGroupSimple.d.ts +3 -0
- package/dist/core/utils/getPropertyGroupSimple.d.ts.map +1 -0
- package/dist/core/utils/getPropertyGroupSimple.js +9 -0
- package/dist/core/utils/precompileTemplates.js +1 -1
- package/dist/core/utils/prepareAlias.d.ts +7 -0
- package/dist/core/utils/prepareAlias.d.ts.map +1 -0
- package/dist/core/utils/prepareAlias.js +24 -0
- package/dist/core/utils/registerHandlebarTemplates.d.ts.map +1 -1
- package/dist/core/utils/registerHandlebarTemplates.js +2 -0
- package/dist/core/utils/sortByRequiredExtended.d.ts +3 -0
- package/dist/core/utils/sortByRequiredExtended.d.ts.map +1 -0
- package/dist/core/utils/sortByRequiredExtended.js +15 -0
- package/dist/core/utils/sortByRequiredSimple.d.ts +3 -0
- package/dist/core/utils/sortByRequiredSimple.d.ts.map +1 -0
- package/dist/core/utils/sortByRequiredSimple.js +10 -0
- package/dist/core/utils/sortModelByName.d.ts +3 -0
- package/dist/core/utils/sortModelByName.d.ts.map +1 -0
- package/dist/core/utils/sortModelByName.js +12 -0
- package/dist/templatesCompiled/partials/isReadOnly.d.ts +1 -1
- package/dist/templatesCompiled/partials/isReadOnly.d.ts.map +1 -1
- package/dist/templatesCompiled/partials/isReadOnly.js +1 -2
- package/dist/templatesCompiled/partials/isRequiredDefinition.d.ts +9 -0
- package/dist/templatesCompiled/partials/isRequiredDefinition.d.ts.map +1 -0
- package/dist/templatesCompiled/partials/isRequiredDefinition.js +27 -0
- package/dist/templatesCompiled/partials/parametersDefinition.js +1 -1
- package/package.json +9 -1
- package/dist/core/utils/__tests__/sortByRequired.test.d.ts +0 -2
- package/dist/core/utils/__tests__/sortByRequired.test.d.ts.map +0 -1
- package/dist/core/utils/__tests__/sortByRequired.test.js +0 -108
- package/dist/core/utils/__tests__/writeClient.test.d.ts +0 -2
- package/dist/core/utils/__tests__/writeClient.test.d.ts.map +0 -1
- package/dist/core/utils/sortByRequired.d.ts +0 -3
- package/dist/core/utils/sortByRequired.d.ts.map +0 -1
- package/dist/core/utils/sortByRequired.js +0 -18
- package/dist/core/utils/writeClient.d.ts.map +0 -1
|
@@ -1,42 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.WriteClient = void 0;
|
|
4
|
-
const Enums_1 = require("
|
|
5
|
-
const Logger_1 = require("
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
return 1;
|
|
17
|
-
}
|
|
18
|
-
if (a.name < b.name) {
|
|
19
|
-
return -1;
|
|
20
|
-
}
|
|
21
|
-
return 0;
|
|
22
|
-
}
|
|
23
|
-
function prepareAlias(models) {
|
|
24
|
-
let modelPrevious = undefined;
|
|
25
|
-
let index = 1;
|
|
26
|
-
for (const model of models) {
|
|
27
|
-
if (modelPrevious && model.name === modelPrevious.name) {
|
|
28
|
-
model.alias = `${model.name}$${index}`;
|
|
29
|
-
if (!modelPrevious.alias) {
|
|
30
|
-
modelPrevious.alias = `${modelPrevious.name}$${index - 1}`;
|
|
31
|
-
}
|
|
32
|
-
index++;
|
|
33
|
-
}
|
|
34
|
-
else if (modelPrevious && model.name !== modelPrevious.name) {
|
|
35
|
-
index = 1;
|
|
36
|
-
}
|
|
37
|
-
modelPrevious = model;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
4
|
+
const Enums_1 = require("../common/Enums");
|
|
5
|
+
const Logger_1 = require("../common/Logger");
|
|
6
|
+
const fileSystem_1 = require("./utils/fileSystem");
|
|
7
|
+
const pathHelpers_1 = require("./utils/pathHelpers");
|
|
8
|
+
const prepareAlias_1 = require("./utils/prepareAlias");
|
|
9
|
+
const sortModelByName_1 = require("./utils/sortModelByName");
|
|
10
|
+
const unique_1 = require("./utils/unique");
|
|
11
|
+
const writeClientCore_1 = require("./utils/writeClientCore");
|
|
12
|
+
const writeClientIndex_1 = require("./utils/writeClientIndex");
|
|
13
|
+
const writeClientModels_1 = require("./utils/writeClientModels");
|
|
14
|
+
const writeClientSchemas_1 = require("./utils/writeClientSchemas");
|
|
15
|
+
const writeClientServices_1 = require("./utils/writeClientServices");
|
|
40
16
|
/**
|
|
41
17
|
* The client which is writing all items and keep the parameters to write index file
|
|
42
18
|
*/
|
|
@@ -138,31 +114,26 @@ class WriteClient {
|
|
|
138
114
|
}
|
|
139
115
|
}
|
|
140
116
|
async combineAndWrite() {
|
|
117
|
+
const result = this.buildClientIndexMap();
|
|
118
|
+
await this.finalizeAndWright(result);
|
|
119
|
+
}
|
|
120
|
+
get logger() {
|
|
121
|
+
return this._logger;
|
|
122
|
+
}
|
|
123
|
+
buildClientIndexMap() {
|
|
141
124
|
const result = new Map();
|
|
142
125
|
for (const [key, value] of this.options.entries()) {
|
|
143
126
|
for (const item of value) {
|
|
144
|
-
const { exportCore, outputPaths, exportModels, exportSchemas, exportServices, client, templates } = item;
|
|
145
|
-
const outputCore =
|
|
146
|
-
const outputModels =
|
|
147
|
-
const outputSchemas =
|
|
148
|
-
const outputServices =
|
|
149
|
-
|
|
150
|
-
if (!clientIndex) {
|
|
151
|
-
clientIndex = {
|
|
152
|
-
templates: templates,
|
|
153
|
-
outputPath: key,
|
|
154
|
-
core: [],
|
|
155
|
-
models: [],
|
|
156
|
-
schemas: [],
|
|
157
|
-
services: [],
|
|
158
|
-
};
|
|
159
|
-
result.set(`${key}`, clientIndex);
|
|
160
|
-
}
|
|
127
|
+
const { exportCore, outputPaths, exportModels, exportSchemas, exportServices, client, templates, useUnionTypes } = item;
|
|
128
|
+
const outputCore = this.getOutputPath(outputPaths?.outputCore, key, 'core');
|
|
129
|
+
const outputModels = this.getOutputPath(outputPaths?.outputModels, key, 'models');
|
|
130
|
+
const outputSchemas = this.getOutputPath(outputPaths?.outputSchemas, key, 'schemas');
|
|
131
|
+
const outputServices = this.getOutputPath(outputPaths?.outputServices, key, 'services');
|
|
132
|
+
const clientIndex = this.ensureClientIndex(result, key, templates);
|
|
161
133
|
if (exportCore) {
|
|
162
|
-
const
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
clientIndex.core.push(relativePath);
|
|
134
|
+
const rel = (0, pathHelpers_1.relative)(key, outputCore);
|
|
135
|
+
if (!clientIndex.core.includes(rel)) {
|
|
136
|
+
clientIndex.core.push(rel);
|
|
166
137
|
}
|
|
167
138
|
}
|
|
168
139
|
if (exportModels || exportSchemas) {
|
|
@@ -175,24 +146,15 @@ class WriteClient {
|
|
|
175
146
|
path: model.path,
|
|
176
147
|
package: relativePathModel,
|
|
177
148
|
enum: model.enum && model.enum.length > 0,
|
|
178
|
-
useUnionTypes
|
|
149
|
+
useUnionTypes,
|
|
179
150
|
enums: model.enums && model.enums.length > 0,
|
|
180
151
|
};
|
|
181
|
-
if (exportModels) {
|
|
182
|
-
|
|
183
|
-
item.path === modelFinal.path &&
|
|
184
|
-
item.package === modelFinal.package &&
|
|
185
|
-
item.enum === modelFinal.enum &&
|
|
186
|
-
item.enums === modelFinal.enums &&
|
|
187
|
-
item.useUnionTypes === modelFinal.useUnionTypes);
|
|
188
|
-
if (!value) {
|
|
189
|
-
clientIndex.models.push(modelFinal);
|
|
190
|
-
}
|
|
152
|
+
if (exportModels && clientIndex.models.some(m => this.isSameModel(m, modelFinal))) {
|
|
153
|
+
clientIndex.models.push(modelFinal);
|
|
191
154
|
}
|
|
192
155
|
if (exportSchemas) {
|
|
193
156
|
const schema = { ...modelFinal, package: relativePathSchema };
|
|
194
|
-
|
|
195
|
-
if (!indexValue) {
|
|
157
|
+
if (!clientIndex.schemas.some(s => this.isSameShema(s, schema))) {
|
|
196
158
|
clientIndex.schemas.push(schema);
|
|
197
159
|
}
|
|
198
160
|
}
|
|
@@ -201,8 +163,7 @@ class WriteClient {
|
|
|
201
163
|
if (exportServices) {
|
|
202
164
|
const relativeService = `${(0, pathHelpers_1.relative)(key, outputServices)}`;
|
|
203
165
|
for (const service of client.services) {
|
|
204
|
-
|
|
205
|
-
if (!valueIndex) {
|
|
166
|
+
if (!clientIndex.services.some(s => this.isSomeService(s, service.name, relativeService))) {
|
|
206
167
|
clientIndex.services.push({
|
|
207
168
|
name: service.name,
|
|
208
169
|
package: relativeService,
|
|
@@ -212,16 +173,46 @@ class WriteClient {
|
|
|
212
173
|
}
|
|
213
174
|
}
|
|
214
175
|
}
|
|
176
|
+
return result;
|
|
177
|
+
}
|
|
178
|
+
async finalizeAndWright(result) {
|
|
215
179
|
for (const value of result.values()) {
|
|
216
|
-
value.models = value.models.filter(unique_1.unique).sort(sortModelByName);
|
|
217
|
-
prepareAlias(value.models);
|
|
218
|
-
value.schemas = value.schemas.filter(unique_1.unique).sort(sortModelByName);
|
|
219
|
-
prepareAlias(value.schemas);
|
|
180
|
+
value.models = value.models.filter(unique_1.unique).sort(sortModelByName_1.sortModelByName);
|
|
181
|
+
(0, prepareAlias_1.prepareAlias)(value.models);
|
|
182
|
+
value.schemas = value.schemas.filter(unique_1.unique).sort(sortModelByName_1.sortModelByName);
|
|
183
|
+
(0, prepareAlias_1.prepareAlias)(value.schemas);
|
|
220
184
|
await (0, writeClientIndex_1.writeClientIndex)(value);
|
|
221
185
|
}
|
|
222
186
|
}
|
|
223
|
-
|
|
224
|
-
return
|
|
187
|
+
getOutputPath(output, key, fallback) {
|
|
188
|
+
return output ? output : (0, pathHelpers_1.resolve)(key, fallback);
|
|
189
|
+
}
|
|
190
|
+
ensureClientIndex(map, key, templates) {
|
|
191
|
+
if (!map.has(key)) {
|
|
192
|
+
map.set(key, {
|
|
193
|
+
templates,
|
|
194
|
+
outputPath: key,
|
|
195
|
+
core: [],
|
|
196
|
+
models: [],
|
|
197
|
+
schemas: [],
|
|
198
|
+
services: [],
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
return map.get(key);
|
|
202
|
+
}
|
|
203
|
+
isSameModel(a, b) {
|
|
204
|
+
return (a.name === b.name &&
|
|
205
|
+
a.path === b.path &&
|
|
206
|
+
a.package === b.package &&
|
|
207
|
+
a.enum === b.enum &&
|
|
208
|
+
a.enums === b.enums &&
|
|
209
|
+
a.useUnionTypes === b.useUnionTypes);
|
|
210
|
+
}
|
|
211
|
+
isSameShema(a, b) {
|
|
212
|
+
return a.name === b.name && a.path === b.path && a.package === b.package;
|
|
213
|
+
}
|
|
214
|
+
isSomeService(a, name, pkg) {
|
|
215
|
+
return a.name === name && a.package === pkg;
|
|
225
216
|
}
|
|
226
217
|
}
|
|
227
218
|
exports.WriteClient = WriteClient;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WriteClient.test.d.ts","sourceRoot":"","sources":["../../../src/core/__tests__/WriteClient.test.ts"],"names":[],"mappings":""}
|
|
@@ -5,17 +5,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const strict_1 = __importDefault(require("node:assert/strict"));
|
|
7
7
|
const node_test_1 = require("node:test");
|
|
8
|
-
const Enums_1 = require("
|
|
9
|
-
const fileSystem_1 = require("../fileSystem");
|
|
10
|
-
const getOutputPaths_1 = require("../getOutputPaths");
|
|
11
|
-
const
|
|
8
|
+
const Enums_1 = require("../types/Enums");
|
|
9
|
+
const fileSystem_1 = require("../utils/fileSystem");
|
|
10
|
+
const getOutputPaths_1 = require("../utils/getOutputPaths");
|
|
11
|
+
const WriteClient_1 = require("../WriteClient");
|
|
12
12
|
(0, node_test_1.test)('@unit: writeClient should write to filesystem', async () => {
|
|
13
13
|
const mkdirCalls = [];
|
|
14
14
|
const writeFileCalls = [];
|
|
15
|
-
//
|
|
15
|
+
// We keep the original implementations
|
|
16
16
|
const originalMkdir = fileSystem_1.fileSystem.mkdir;
|
|
17
17
|
const originalWriteFile = fileSystem_1.fileSystem.writeFile;
|
|
18
|
-
//
|
|
18
|
+
// Mock the functions
|
|
19
19
|
fileSystem_1.fileSystem.mkdir = node_test_1.mock.fn(async (path) => {
|
|
20
20
|
mkdirCalls.push(path);
|
|
21
21
|
return path;
|
|
@@ -47,7 +47,7 @@ const writeClient_1 = require("../writeClient");
|
|
|
47
47
|
},
|
|
48
48
|
};
|
|
49
49
|
const outputPaths = (0, getOutputPaths_1.getOutputPaths)({ output: './dist' });
|
|
50
|
-
await new
|
|
50
|
+
await new WriteClient_1.WriteClient().writeClient({
|
|
51
51
|
client,
|
|
52
52
|
templates,
|
|
53
53
|
outputPaths,
|
|
@@ -62,7 +62,7 @@ const writeClient_1 = require("../writeClient");
|
|
|
62
62
|
});
|
|
63
63
|
strict_1.default.ok(mkdirCalls.length > 0, 'mkdir should be called at least once');
|
|
64
64
|
strict_1.default.ok(writeFileCalls.length > 0, 'writeFile should be called at least once');
|
|
65
|
-
//
|
|
65
|
+
// Restoring the original implementations
|
|
66
66
|
fileSystem_1.fileSystem.mkdir = originalMkdir;
|
|
67
67
|
fileSystem_1.fileSystem.writeFile = originalWriteFile;
|
|
68
68
|
});
|
|
@@ -14,7 +14,7 @@ const Parser_1 = require("../../Parser");
|
|
|
14
14
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
15
15
|
// @ts-ignore
|
|
16
16
|
const parser = new json_schema_ref_parser_1.default();
|
|
17
|
-
const context = new Context_1.Context('test/spec/v3.yml', (0, getOutputPaths_1.getOutputPaths)({ output: './generated' }));
|
|
17
|
+
const context = new Context_1.Context({ input: 'test/spec/v3.yml', output: (0, getOutputPaths_1.getOutputPaths)({ output: './generated' }) });
|
|
18
18
|
context.addRefs(await parser.resolve('test/spec/v3.yml'));
|
|
19
19
|
const type = new Parser_1.Parser(context).getType('int', '');
|
|
20
20
|
node_assert_1.default.strictEqual(type.type, 'number');
|
|
@@ -26,7 +26,7 @@ const Parser_1 = require("../../Parser");
|
|
|
26
26
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
27
27
|
// @ts-ignore
|
|
28
28
|
const parser = new json_schema_ref_parser_1.default();
|
|
29
|
-
const context = new Context_1.Context('test/spec/v3.yml', (0, getOutputPaths_1.getOutputPaths)({ output: './generated' }));
|
|
29
|
+
const context = new Context_1.Context({ input: 'test/spec/v3.yml', output: (0, getOutputPaths_1.getOutputPaths)({ output: './generated' }) });
|
|
30
30
|
context.addRefs(await parser.resolve('test/spec/v3.yml'));
|
|
31
31
|
const type = new Parser_1.Parser(context).getType('schemas/ModelWithString.yml', '');
|
|
32
32
|
node_assert_1.default.strictEqual(type.type, 'IModelWithString');
|
|
@@ -53,7 +53,7 @@ const Parser_1 = require("../../Parser");
|
|
|
53
53
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
54
54
|
// @ts-ignore
|
|
55
55
|
const parser = new json_schema_ref_parser_1.default();
|
|
56
|
-
const context = new Context_1.Context(object, (0, getOutputPaths_1.getOutputPaths)({ output: './generated' }));
|
|
56
|
+
const context = new Context_1.Context({ input: object, output: (0, getOutputPaths_1.getOutputPaths)({ output: './generated' }) });
|
|
57
57
|
context.addRefs(await parser.resolve(object));
|
|
58
58
|
const type = new Parser_1.Parser(context).getType('#/components/schemas/someSpecialSchema', '');
|
|
59
59
|
node_assert_1.default.strictEqual(type.type, 'ISomeSpecialSchema');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getOperationParameters.d.ts","sourceRoot":"","sources":["../../../../../src/core/api/v2/parser/getOperationParameters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;
|
|
1
|
+
{"version":3,"file":"getOperationParameters.d.ts","sourceRoot":"","sources":["../../../../../src/core/api/v2/parser/getOperationParameters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAG3F,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAExE,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,GAAG,mBAAmB,CA+D1H"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getOperationParameters = getOperationParameters;
|
|
4
|
-
const
|
|
4
|
+
const sortByRequiredExtended_1 = require("../../../utils/sortByRequiredExtended");
|
|
5
|
+
const sortByRequiredSimple_1 = require("../../../utils/sortByRequiredSimple");
|
|
5
6
|
function getOperationParameters(openApi, parameters) {
|
|
6
7
|
const operationParameters = {
|
|
7
8
|
imports: [],
|
|
@@ -49,11 +50,12 @@ function getOperationParameters(openApi, parameters) {
|
|
|
49
50
|
}
|
|
50
51
|
}
|
|
51
52
|
});
|
|
52
|
-
|
|
53
|
-
operationParameters.
|
|
54
|
-
operationParameters.
|
|
55
|
-
operationParameters.
|
|
56
|
-
operationParameters.
|
|
57
|
-
operationParameters.
|
|
53
|
+
const sortByRequired = this.context.sortByRequired ? sortByRequiredExtended_1.sortByRequiredExtended : sortByRequiredSimple_1.sortByRequiredSimple;
|
|
54
|
+
operationParameters.parameters = operationParameters.parameters.sort(sortByRequired);
|
|
55
|
+
operationParameters.parametersPath = operationParameters.parametersPath.sort(sortByRequired);
|
|
56
|
+
operationParameters.parametersQuery = operationParameters.parametersQuery.sort(sortByRequired);
|
|
57
|
+
operationParameters.parametersForm = operationParameters.parametersForm.sort(sortByRequired);
|
|
58
|
+
operationParameters.parametersCookie = operationParameters.parametersCookie.sort(sortByRequired);
|
|
59
|
+
operationParameters.parametersHeader = operationParameters.parametersHeader.sort(sortByRequired);
|
|
58
60
|
return operationParameters;
|
|
59
61
|
}
|
|
@@ -14,7 +14,7 @@ const Parser_1 = require("../../Parser");
|
|
|
14
14
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
15
15
|
// @ts-ignore
|
|
16
16
|
const parser = new json_schema_ref_parser_1.default();
|
|
17
|
-
const context = new Context_1.Context('test/spec/v3.yml', (0, getOutputPaths_1.getOutputPaths)({ output: './generated' }));
|
|
17
|
+
const context = new Context_1.Context({ input: 'test/spec/v3.yml', output: (0, getOutputPaths_1.getOutputPaths)({ output: './generated' }) });
|
|
18
18
|
context.addRefs(await parser.resolve('test/spec/v3.yml'));
|
|
19
19
|
const type = new Parser_1.Parser(context).getType('int', '');
|
|
20
20
|
node_assert_1.default.strictEqual(type.type, 'number');
|
|
@@ -26,7 +26,7 @@ const Parser_1 = require("../../Parser");
|
|
|
26
26
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
27
27
|
// @ts-ignore
|
|
28
28
|
const parser = new json_schema_ref_parser_1.default();
|
|
29
|
-
const context = new Context_1.Context('test/spec/v3.yml', (0, getOutputPaths_1.getOutputPaths)({ output: './generated' }));
|
|
29
|
+
const context = new Context_1.Context({ input: 'test/spec/v3.yml', output: (0, getOutputPaths_1.getOutputPaths)({ output: './generated' }) });
|
|
30
30
|
context.addRefs(await parser.resolve('test/spec/v3.yml'));
|
|
31
31
|
const type = new Parser_1.Parser(context).getType('schemas/ModelWithString.yml', '');
|
|
32
32
|
node_assert_1.default.strictEqual(type.type, 'IModelWithString');
|
|
@@ -53,7 +53,7 @@ const Parser_1 = require("../../Parser");
|
|
|
53
53
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
54
54
|
// @ts-ignore
|
|
55
55
|
const parser = new json_schema_ref_parser_1.default();
|
|
56
|
-
const context = new Context_1.Context(object, (0, getOutputPaths_1.getOutputPaths)({ output: './generated' }));
|
|
56
|
+
const context = new Context_1.Context({ input: object, output: (0, getOutputPaths_1.getOutputPaths)({ output: './generated' }) });
|
|
57
57
|
context.addRefs(await parser.resolve(object));
|
|
58
58
|
const type = new Parser_1.Parser(context).getType('#/components/schemas/someSpecialSchema', '');
|
|
59
59
|
node_assert_1.default.strictEqual(type.type, 'ISomeSpecialSchema');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getOperation.d.ts","sourceRoot":"","sources":["../../../../../src/core/api/v3/parser/getOperation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uCAAuC,CAAC;AACvE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;
|
|
1
|
+
{"version":3,"file":"getOperation.d.ts","sourceRoot":"","sources":["../../../../../src/core/api/v3/parser/getOperation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uCAAuC,CAAC;AACvE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAS3F,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAGxE,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,gBAAgB,EAAE,UAAU,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAgEpL"}
|
|
@@ -7,7 +7,8 @@ const getOperationName_1 = require("../../../utils/getOperationName");
|
|
|
7
7
|
const getOperationPath_1 = require("../../../utils/getOperationPath");
|
|
8
8
|
const getOperationResponseHeader_1 = require("../../../utils/getOperationResponseHeader");
|
|
9
9
|
const getOperationResults_1 = require("../../../utils/getOperationResults");
|
|
10
|
-
const
|
|
10
|
+
const sortByRequiredExtended_1 = require("../../../utils/sortByRequiredExtended");
|
|
11
|
+
const sortByRequiredSimple_1 = require("../../../utils/sortByRequiredSimple");
|
|
11
12
|
function getOperation(openApi, url, method, op, pathParams, serviceClassName) {
|
|
12
13
|
const operationNameFallback = `${method}${serviceClassName}`;
|
|
13
14
|
const operationName = (0, getOperationName_1.getOperationName)(op.operationId || operationNameFallback);
|
|
@@ -46,11 +47,12 @@ function getOperation(openApi, url, method, op, pathParams, serviceClassName) {
|
|
|
46
47
|
operation.parametersBody = parameters.parametersBody;
|
|
47
48
|
}
|
|
48
49
|
if (op.requestBody) {
|
|
50
|
+
const sortByRequired = this.context.sortByRequired ? sortByRequiredExtended_1.sortByRequiredExtended : sortByRequiredSimple_1.sortByRequiredSimple;
|
|
49
51
|
const requestBodyDef = (op.requestBody.$ref ? this.context.get(op.requestBody.$ref) : op.requestBody);
|
|
50
52
|
const requestBody = this.getOperationRequestBody(openApi, requestBodyDef, '');
|
|
51
53
|
operation.imports.push(...requestBody.imports);
|
|
52
54
|
operation.parameters.push(requestBody);
|
|
53
|
-
operation.parameters = operation.parameters.sort(
|
|
55
|
+
operation.parameters = operation.parameters.sort(sortByRequired);
|
|
54
56
|
operation.parametersBody = requestBody;
|
|
55
57
|
}
|
|
56
58
|
// Parse the operation responses.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getOperationParameters.d.ts","sourceRoot":"","sources":["../../../../../src/core/api/v3/parser/getOperationParameters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;
|
|
1
|
+
{"version":3,"file":"getOperationParameters.d.ts","sourceRoot":"","sources":["../../../../../src/core/api/v3/parser/getOperationParameters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAG3F,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAExE,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,GAAG,mBAAmB,CAgE1H"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getOperationParameters = getOperationParameters;
|
|
4
|
-
const
|
|
4
|
+
const sortByRequiredExtended_1 = require("../../../utils/sortByRequiredExtended");
|
|
5
|
+
const sortByRequiredSimple_1 = require("../../../utils/sortByRequiredSimple");
|
|
5
6
|
function getOperationParameters(openApi, parameters) {
|
|
6
7
|
const operationParameters = {
|
|
7
8
|
imports: [],
|
|
@@ -49,11 +50,12 @@ function getOperationParameters(openApi, parameters) {
|
|
|
49
50
|
}
|
|
50
51
|
}
|
|
51
52
|
});
|
|
52
|
-
|
|
53
|
-
operationParameters.
|
|
54
|
-
operationParameters.
|
|
55
|
-
operationParameters.
|
|
56
|
-
operationParameters.
|
|
57
|
-
operationParameters.
|
|
53
|
+
const sortByRequired = this.context.sortByRequired ? sortByRequiredExtended_1.sortByRequiredExtended : sortByRequiredSimple_1.sortByRequiredSimple;
|
|
54
|
+
operationParameters.parameters = operationParameters.parameters.sort(sortByRequired);
|
|
55
|
+
operationParameters.parametersPath = operationParameters.parametersPath.sort(sortByRequired);
|
|
56
|
+
operationParameters.parametersQuery = operationParameters.parametersQuery.sort(sortByRequired);
|
|
57
|
+
operationParameters.parametersForm = operationParameters.parametersForm.sort(sortByRequired);
|
|
58
|
+
operationParameters.parametersCookie = operationParameters.parametersCookie.sort(sortByRequired);
|
|
59
|
+
operationParameters.parametersHeader = operationParameters.parametersHeader.sort(sortByRequired);
|
|
58
60
|
return operationParameters;
|
|
59
61
|
}
|
package/dist/core/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAmB5D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAmB5D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAyH3C,wBAAsB,QAAQ,CAAC,OAAO,EAAE,QAAQ,GAAG,QAAQ,EAAE,GAAG,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAmD5F"}
|
package/dist/core/index.js
CHANGED
|
@@ -20,7 +20,7 @@ const isString_1 = require("./utils/isString");
|
|
|
20
20
|
const postProcessClient_1 = require("./utils/postProcessClient");
|
|
21
21
|
const prepareOptions_1 = require("./utils/prepareOptions");
|
|
22
22
|
const registerHandlebarTemplates_1 = require("./utils/registerHandlebarTemplates");
|
|
23
|
-
const
|
|
23
|
+
const WriteClient_1 = require("./WriteClient");
|
|
24
24
|
var Enums_2 = require("./types/Enums");
|
|
25
25
|
Object.defineProperty(exports, "HttpClient", { enumerable: true, get: function () { return Enums_2.HttpClient; } });
|
|
26
26
|
/**
|
|
@@ -47,8 +47,9 @@ Object.defineProperty(exports, "HttpClient", { enumerable: true, get: function (
|
|
|
47
47
|
* @param enumPrefix: Prefix for enum model(E)
|
|
48
48
|
* @param typePrefix: Prefix for type model(T)
|
|
49
49
|
* @param useCancelableRequest Use cancelable request type.
|
|
50
|
+
* @param sortByRequired Property sorting strategy: simplified or extended
|
|
50
51
|
*/
|
|
51
|
-
async function generateFrom({ input, output, outputCore, outputServices, outputModels, outputSchemas, httpClient = Enums_1.HttpClient.FETCH, useOptions = false, useUnionTypes = false, exportCore = true, exportServices = true, exportModels = true, exportSchemas = false, clean = true, request, write = true, interfacePrefix = 'I', enumPrefix = 'E', typePrefix = 'T', useCancelableRequest = false, }, writeClient) {
|
|
52
|
+
async function generateFrom({ input, output, outputCore, outputServices, outputModels, outputSchemas, httpClient = Enums_1.HttpClient.FETCH, useOptions = false, useUnionTypes = false, exportCore = true, exportServices = true, exportModels = true, exportSchemas = false, clean = true, request, write = true, interfacePrefix = 'I', enumPrefix = 'E', typePrefix = 'T', useCancelableRequest = false, sortByRequired = false, }, writeClient) {
|
|
52
53
|
const outputPaths = (0, getOutputPaths_1.getOutputPaths)({
|
|
53
54
|
output,
|
|
54
55
|
outputCore,
|
|
@@ -56,7 +57,7 @@ async function generateFrom({ input, output, outputCore, outputServices, outputM
|
|
|
56
57
|
outputModels,
|
|
57
58
|
outputSchemas,
|
|
58
59
|
});
|
|
59
|
-
const context = new Context_1.Context(input, outputPaths, { interface: interfacePrefix, enum: enumPrefix, type: typePrefix });
|
|
60
|
+
const context = new Context_1.Context({ input, output: outputPaths, prefix: { interface: interfacePrefix, enum: enumPrefix, type: typePrefix }, sortByRequired });
|
|
60
61
|
const openApi = (0, isString_1.isString)(input) ? await (0, getOpenApiSpec_1.getOpenApiSpec)(context, input) : input;
|
|
61
62
|
const openApiVersion = (0, getOpenApiVersion_1.getOpenApiVersion)(openApi);
|
|
62
63
|
const templates = (0, registerHandlebarTemplates_1.registerHandlebarTemplates)({
|
|
@@ -127,7 +128,7 @@ async function generate(options) {
|
|
|
127
128
|
preparedOptions = Array.of(options);
|
|
128
129
|
}
|
|
129
130
|
const optionsFinal = preparedOptions.map(op => (0, prepareOptions_1.prepareOptions)(op));
|
|
130
|
-
const writeClient = new
|
|
131
|
+
const writeClient = new WriteClient_1.WriteClient();
|
|
131
132
|
writeClient.logger.forceInfo(`Generation has begun. Total number of specification files: ${optionsFinal.length}`);
|
|
132
133
|
try {
|
|
133
134
|
const start = process.hrtime();
|
|
@@ -1,2 +1,12 @@
|
|
|
1
1
|
export declare const SEARCH_REGEXP: RegExp;
|
|
2
|
+
export declare const GROUP_PRIORITY_EXTENDED: {
|
|
3
|
+
readonly required: 0;
|
|
4
|
+
readonly 'required-with-default': 1;
|
|
5
|
+
readonly optional: 2;
|
|
6
|
+
readonly 'optional-with-default': 3;
|
|
7
|
+
};
|
|
8
|
+
export declare const GROUP_PRIORITY_SIMPLE: {
|
|
9
|
+
readonly 'requires-value': 0;
|
|
10
|
+
readonly other: 1;
|
|
11
|
+
};
|
|
2
12
|
//# sourceMappingURL=Consts.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Consts.d.ts","sourceRoot":"","sources":["../../../src/core/types/Consts.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,QAAQ,CAAC"}
|
|
1
|
+
{"version":3,"file":"Consts.d.ts","sourceRoot":"","sources":["../../../src/core/types/Consts.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,QAAQ,CAAC;AAEnC,eAAO,MAAM,uBAAuB;;;;;CAK1B,CAAC;AAEX,eAAO,MAAM,qBAAqB;;;CAGxB,CAAC"}
|
|
@@ -1,4 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SEARCH_REGEXP = void 0;
|
|
3
|
+
exports.GROUP_PRIORITY_SIMPLE = exports.GROUP_PRIORITY_EXTENDED = exports.SEARCH_REGEXP = void 0;
|
|
4
4
|
exports.SEARCH_REGEXP = /\\/g;
|
|
5
|
+
exports.GROUP_PRIORITY_EXTENDED = {
|
|
6
|
+
required: 0,
|
|
7
|
+
'required-with-default': 1,
|
|
8
|
+
optional: 2,
|
|
9
|
+
'optional-with-default': 3,
|
|
10
|
+
};
|
|
11
|
+
exports.GROUP_PRIORITY_SIMPLE = {
|
|
12
|
+
'requires-value': 0,
|
|
13
|
+
'other': 1
|
|
14
|
+
};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { GROUP_PRIORITY_EXTENDED, GROUP_PRIORITY_SIMPLE } from './Consts';
|
|
1
2
|
import { TypeRef } from './Enums';
|
|
2
3
|
/**
|
|
3
4
|
* @param output The relative location of the output directory(or index)
|
|
@@ -31,4 +32,6 @@ export interface Prefix {
|
|
|
31
32
|
enum: string;
|
|
32
33
|
type: string;
|
|
33
34
|
}
|
|
35
|
+
export type TPropertyGroupExtended = keyof typeof GROUP_PRIORITY_EXTENDED;
|
|
36
|
+
export type TPropertyGroupSimple = keyof typeof GROUP_PRIORITY_SIMPLE;
|
|
34
37
|
//# sourceMappingURL=Models.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Models.d.ts","sourceRoot":"","sources":["../../../src/core/types/Models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC;;;;;;GAMG;AACH,MAAM,WAAW,OAAO;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,KAAK;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,MAAM;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CAChB"}
|
|
1
|
+
{"version":3,"file":"Models.d.ts","sourceRoot":"","sources":["../../../src/core/types/Models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAElC;;;;;;GAMG;AACH,MAAM,WAAW,OAAO;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,KAAK;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,MAAM;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,sBAAsB,GAAG,MAAM,OAAO,uBAAuB,CAAC;AAE1E,MAAM,MAAM,oBAAoB,GAAG,MAAM,OAAO,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { OperationParameter } from '../../types/shared/OperationParameter.model';
|
|
2
|
+
export declare function createOperationParameter(name: string, options?: Partial<Pick<OperationParameter, 'isRequired' | 'default' | 'description'>>): OperationParameter;
|
|
3
|
+
//# sourceMappingURL=createOperationParameter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createOperationParameter.d.ts","sourceRoot":"","sources":["../../../../src/core/utils/__mocks__/createOperationParameter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AAEjF,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,OAAO,CAAC,IAAI,CAAC,kBAAkB,EAAE,YAAY,GAAG,SAAS,GAAG,aAAa,CAAC,CAAM,GAAG,kBAAkB,CAwBpK"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createOperationParameter = createOperationParameter;
|
|
4
|
+
function createOperationParameter(name, options = {}) {
|
|
5
|
+
return {
|
|
6
|
+
name,
|
|
7
|
+
isRequired: options.isRequired ?? false,
|
|
8
|
+
default: options.default,
|
|
9
|
+
description: options.description ?? null,
|
|
10
|
+
in: 'query',
|
|
11
|
+
prop: '',
|
|
12
|
+
export: 'reference',
|
|
13
|
+
alias: '',
|
|
14
|
+
path: '',
|
|
15
|
+
type: 'string',
|
|
16
|
+
base: '',
|
|
17
|
+
template: null,
|
|
18
|
+
link: null,
|
|
19
|
+
isDefinition: false,
|
|
20
|
+
isReadOnly: false,
|
|
21
|
+
isNullable: false,
|
|
22
|
+
imports: [],
|
|
23
|
+
enum: [],
|
|
24
|
+
enums: [],
|
|
25
|
+
properties: [],
|
|
26
|
+
mediaType: null,
|
|
27
|
+
};
|
|
28
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sortByRequiredExtended.test.d.ts","sourceRoot":"","sources":["../../../../src/core/utils/__tests__/sortByRequiredExtended.test.ts"],"names":[],"mappings":""}
|