1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | var tslib_1 = require("tslib");
|
4 | var dtsGenerator_1 = tslib_1.__importDefault(require("./dtsGenerator"));
|
5 | var jsonSchema_1 = require("./jsonSchema");
|
6 | var referenceResolver_1 = tslib_1.__importDefault(require("./referenceResolver"));
|
7 | var schemaConvertor_1 = tslib_1.__importDefault(require("./schemaConvertor"));
|
8 | var writeProcessor_1 = tslib_1.__importDefault(require("./writeProcessor"));
|
9 | var schemaId_1 = require("./schemaId");
|
10 | exports.SchemaId = schemaId_1.default;
|
11 | var typeNameConvertor_1 = require("./typeNameConvertor");
|
12 | exports.DefaultTypeNameConvertor = typeNameConvertor_1.DefaultTypeNameConvertor;
|
13 | function dtsGenerator(options) {
|
14 | return tslib_1.__awaiter(this, void 0, void 0, function () {
|
15 | var processor, resolver, convertor, generator;
|
16 | return tslib_1.__generator(this, function (_a) {
|
17 | switch (_a.label) {
|
18 | case 0:
|
19 | processor = new writeProcessor_1.default(options);
|
20 | resolver = new referenceResolver_1.default();
|
21 | convertor = new schemaConvertor_1.default(processor, options.typeNameConvertor);
|
22 | if (options.contents != null) {
|
23 | options.contents
|
24 | .map(function (content) { return jsonSchema_1.parseSchema(content); })
|
25 | .forEach(function (schema) { return resolver.registerSchema(schema); });
|
26 | }
|
27 | if (!(options.inputUrls != null)) return [3, 2];
|
28 | return [4, Promise.all(options.inputUrls.map(function (url) { return resolver.registerRemoteSchema(url); }))];
|
29 | case 1:
|
30 | _a.sent();
|
31 | _a.label = 2;
|
32 | case 2:
|
33 | generator = new dtsGenerator_1.default(resolver, convertor);
|
34 | return [4, generator.generate()];
|
35 | case 3: return [2, _a.sent()];
|
36 | }
|
37 | });
|
38 | });
|
39 | }
|
40 | exports.default = dtsGenerator;
|