@nestia/sdk 2.5.0-dev.20240128 → 2.5.0-dev.20240129-2
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/lib/NestiaSdkApplication.js +1 -1
- package/lib/NestiaSdkApplication.js.map +1 -1
- package/lib/generates/CloneGenerator.d.ts +6 -0
- package/lib/generates/CloneGenerator.js +60 -0
- package/lib/generates/CloneGenerator.js.map +1 -0
- package/lib/generates/E2eGenerator.d.ts +2 -1
- package/lib/generates/E2eGenerator.js +2 -2
- package/lib/generates/E2eGenerator.js.map +1 -1
- package/lib/generates/SdkGenerator.js +3 -3
- package/lib/generates/SdkGenerator.js.map +1 -1
- package/lib/generates/internal/E2eFileProgrammer.d.ts +2 -1
- package/lib/generates/internal/E2eFileProgrammer.js +45 -51
- package/lib/generates/internal/E2eFileProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkAliasCollection.d.ts +12 -0
- package/lib/generates/internal/SdkAliasCollection.js +89 -0
- package/lib/generates/internal/SdkAliasCollection.js.map +1 -0
- package/lib/generates/internal/SdkFileProgrammer.d.ts +2 -1
- package/lib/generates/internal/SdkFileProgrammer.js +12 -19
- package/lib/generates/internal/SdkFileProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkFunctionProgrammer.js +6 -6
- package/lib/generates/internal/SdkFunctionProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkInterfaceProgrammer.d.ts +12 -0
- package/lib/generates/internal/SdkInterfaceProgrammer.js +112 -0
- package/lib/generates/internal/SdkInterfaceProgrammer.js.map +1 -0
- package/lib/generates/internal/SdkNamespaceProgrammer.d.ts +1 -1
- package/lib/generates/internal/SdkNamespaceProgrammer.js +24 -23
- package/lib/generates/internal/SdkNamespaceProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkRouteProgrammer.d.ts +1 -1
- package/lib/generates/internal/SdkRouteProgrammer.js +4 -4
- package/lib/generates/internal/SdkRouteProgrammer.js.map +1 -1
- package/lib/generates/internal/SdkSimulationProgrammer.d.ts +1 -1
- package/lib/generates/internal/SdkSimulationProgrammer.js +11 -12
- package/lib/generates/internal/SdkSimulationProgrammer.js.map +1 -1
- package/lib/generates/internal/{SdkDtoGenerator.d.ts → SdkTypeProgrammer.d.ts} +2 -4
- package/lib/generates/internal/SdkTypeProgrammer.js +160 -0
- package/lib/generates/internal/SdkTypeProgrammer.js.map +1 -0
- package/lib/utils/{NodeUtil.d.ts → FormatUtil.d.ts} +2 -1
- package/lib/utils/FormatUtil.js +38 -0
- package/lib/utils/FormatUtil.js.map +1 -0
- package/lib/utils/ImportDictionary.js +2 -2
- package/lib/utils/ImportDictionary.js.map +1 -1
- package/package.json +3 -3
- package/src/NestiaSdkApplication.ts +1 -1
- package/src/generates/CloneGenerator.ts +75 -0
- package/src/generates/E2eGenerator.ts +3 -1
- package/src/generates/SdkGenerator.ts +3 -3
- package/src/generates/internal/E2eFileProgrammer.ts +145 -77
- package/src/generates/internal/SdkAliasCollection.ts +145 -0
- package/src/generates/internal/SdkFileProgrammer.ts +16 -16
- package/src/generates/internal/SdkFunctionProgrammer.ts +9 -9
- package/src/generates/internal/SdkInterfaceProgrammer.ts +211 -0
- package/src/generates/internal/SdkNamespaceProgrammer.ts +36 -24
- package/src/generates/internal/SdkRouteProgrammer.ts +7 -3
- package/src/generates/internal/SdkSimulationProgrammer.ts +14 -16
- package/src/generates/internal/SdkTypeProgrammer.ts +252 -0
- package/src/utils/{NodeUtil.ts → FormatUtil.ts} +13 -1
- package/src/utils/ImportDictionary.ts +2 -2
- package/lib/generates/internal/SdkDtoGenerator.js +0 -294
- package/lib/generates/internal/SdkDtoGenerator.js.map +0 -1
- package/lib/generates/internal/SdkTypeDefiner.d.ts +0 -11
- package/lib/generates/internal/SdkTypeDefiner.js +0 -82
- package/lib/generates/internal/SdkTypeDefiner.js.map +0 -1
- package/lib/utils/NodeUtil.js +0 -16
- package/lib/utils/NodeUtil.js.map +0 -1
- package/src/generates/internal/SdkDtoGenerator.ts +0 -424
- package/src/generates/internal/SdkTypeDefiner.ts +0 -119
|
@@ -46,7 +46,7 @@ class NestiaSdkApplication {
|
|
|
46
46
|
print_title("Nestia E2E Generator");
|
|
47
47
|
yield this.generate("e2e", (config) => config, (checker) => (config) => (routes) => __awaiter(this, void 0, void 0, function* () {
|
|
48
48
|
yield SdkGenerator_1.SdkGenerator.generate(checker)(config)(routes);
|
|
49
|
-
yield E2eGenerator_1.E2eGenerator.generate(config)(routes);
|
|
49
|
+
yield E2eGenerator_1.E2eGenerator.generate(checker)(config)(routes);
|
|
50
50
|
}));
|
|
51
51
|
});
|
|
52
52
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NestiaSdkApplication.js","sourceRoot":"","sources":["../src/NestiaSdkApplication.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AACxB,4DAA4B;AAG5B,kEAA+D;AAC/D,8DAA2D;AAC3D,sEAAmE;AACnE,gEAA6D;AAC7D,2DAAwD;AACxD,2DAAwD;AACxD,mEAAgE;AAKhE,6CAA0C;AAE1C,MAAa,oBAAoB;IAC/B,YACmB,MAAqB,EACrB,eAAmC;QADnC,WAAM,GAAN,MAAM,CAAe;QACrB,oBAAe,GAAf,eAAe,CAAoB;IACnD,CAAC;IAES,GAAG;;YACd,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM;gBACrB,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAC;iBACC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG;gBACvB,MAAM,IAAI,KAAK,CACb,mFAAmF,CACpF,CAAC;YAEJ,MAAM,QAAQ,GACZ,CAAC,KAAa,EAAE,EAAE,CAClB,CAAO,QAAgB,EAAiB,EAAE;gBACxC,MAAM,MAAM,GAAW,cAAI,CAAC,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC;gBACtD,MAAM,KAAK,GAAa,MAAM,YAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACxD,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,KAAK;oBAC/B,MAAM,IAAI,KAAK,CACb,yDAAyD,KAAK,mBAAmB,CAClF,CAAC;YACN,CAAC,CAAA,CAAC;YACJ,MAAM,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC1C,MAAM,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAEvC,WAAW,CAAC,sBAAsB,CAAC,CAAC;YACpC,MAAM,IAAI,CAAC,QAAQ,CACjB,KAAK,EACL,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAClB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAO,MAAM,EAAE,EAAE;gBACxC,MAAM,2BAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC;gBACrD,MAAM,2BAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"NestiaSdkApplication.js","sourceRoot":"","sources":["../src/NestiaSdkApplication.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
2
|
+
import { INestiaConfig } from "../INestiaConfig";
|
|
3
|
+
import { IRoute } from "../structures/IRoute";
|
|
4
|
+
export declare namespace CloneGenerator {
|
|
5
|
+
const generate: (checker: ts.TypeChecker) => (config: INestiaConfig) => (routes: IRoute[]) => Promise<void>;
|
|
6
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.CloneGenerator = void 0;
|
|
16
|
+
const fs_1 = __importDefault(require("fs"));
|
|
17
|
+
const typescript_1 = __importDefault(require("typescript"));
|
|
18
|
+
const FormatUtil_1 = require("../utils/FormatUtil");
|
|
19
|
+
const ImportDictionary_1 = require("../utils/ImportDictionary");
|
|
20
|
+
const SdkInterfaceProgrammer_1 = require("./internal/SdkInterfaceProgrammer");
|
|
21
|
+
var CloneGenerator;
|
|
22
|
+
(function (CloneGenerator) {
|
|
23
|
+
CloneGenerator.generate = (checker) => (config) => (routes) => __awaiter(this, void 0, void 0, function* () {
|
|
24
|
+
const dict = SdkInterfaceProgrammer_1.SdkInterfaceProgrammer.generate(checker)(config)(routes);
|
|
25
|
+
try {
|
|
26
|
+
yield fs_1.default.promises.mkdir(`${config.output}/structures`);
|
|
27
|
+
}
|
|
28
|
+
catch (_a) { }
|
|
29
|
+
for (const [key, value] of dict)
|
|
30
|
+
yield writeDtoFile(config)(key, value);
|
|
31
|
+
});
|
|
32
|
+
const writeDtoFile = (config) => (key, value) => __awaiter(this, void 0, void 0, function* () {
|
|
33
|
+
const location = `${config.output}/structures/${key}.ts`;
|
|
34
|
+
const importer = new ImportDictionary_1.ImportDictionary(location);
|
|
35
|
+
const statements = iterate(importer)(value);
|
|
36
|
+
if (statements.length === 0)
|
|
37
|
+
return;
|
|
38
|
+
const script = typescript_1.default
|
|
39
|
+
.createPrinter()
|
|
40
|
+
.printFile(typescript_1.default.factory.createSourceFile([
|
|
41
|
+
...importer.toStatements(`${config.output}/structures`),
|
|
42
|
+
...(importer.empty() ? [] : [FormatUtil_1.FormatUtil.enter()]),
|
|
43
|
+
...statements,
|
|
44
|
+
], typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.EndOfFileToken), typescript_1.default.NodeFlags.None));
|
|
45
|
+
yield fs_1.default.promises.writeFile(location, yield FormatUtil_1.FormatUtil.beautify(script), "utf8");
|
|
46
|
+
});
|
|
47
|
+
const iterate = (importer) => (modulo) => {
|
|
48
|
+
const output = [];
|
|
49
|
+
if (modulo.programmer !== null)
|
|
50
|
+
output.push(modulo.programmer(importer));
|
|
51
|
+
if (modulo.children.size) {
|
|
52
|
+
const internal = [];
|
|
53
|
+
for (const child of modulo.children.values())
|
|
54
|
+
internal.push(...iterate(importer)(child));
|
|
55
|
+
output.push(typescript_1.default.factory.createModuleDeclaration([typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.ExportKeyword)], typescript_1.default.factory.createIdentifier(modulo.name), typescript_1.default.factory.createModuleBlock(internal), typescript_1.default.NodeFlags.Namespace));
|
|
56
|
+
}
|
|
57
|
+
return output;
|
|
58
|
+
};
|
|
59
|
+
})(CloneGenerator || (exports.CloneGenerator = CloneGenerator = {}));
|
|
60
|
+
//# sourceMappingURL=CloneGenerator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CloneGenerator.js","sourceRoot":"","sources":["../../src/generates/CloneGenerator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
1
2
|
import { INestiaConfig } from "../INestiaConfig";
|
|
2
3
|
import { IRoute } from "../structures/IRoute";
|
|
3
4
|
export declare namespace E2eGenerator {
|
|
4
|
-
const generate: (config: INestiaConfig) => (routeList: IRoute[]) => Promise<void>;
|
|
5
|
+
const generate: (checker: ts.TypeChecker) => (config: INestiaConfig) => (routeList: IRoute[]) => Promise<void>;
|
|
5
6
|
}
|
|
@@ -19,7 +19,7 @@ const ConfigAnalyzer_1 = require("../analyses/ConfigAnalyzer");
|
|
|
19
19
|
const E2eFileProgrammer_1 = require("./internal/E2eFileProgrammer");
|
|
20
20
|
var E2eGenerator;
|
|
21
21
|
(function (E2eGenerator) {
|
|
22
|
-
E2eGenerator.generate = (config) => (routeList) => __awaiter(this, void 0, void 0, function* () {
|
|
22
|
+
E2eGenerator.generate = (checker) => (config) => (routeList) => __awaiter(this, void 0, void 0, function* () {
|
|
23
23
|
console.log("Generating E2E Test Functions");
|
|
24
24
|
// PREPARE DIRECTORIES
|
|
25
25
|
const output = path_1.default.resolve(config.e2e);
|
|
@@ -31,7 +31,7 @@ var E2eGenerator;
|
|
|
31
31
|
yield index(config)(path_1.default.join(config.e2e, "index.ts"));
|
|
32
32
|
// GENERATE EACH TEST FILES
|
|
33
33
|
for (const route of routeList)
|
|
34
|
-
yield E2eFileProgrammer_1.E2eFileProgrammer.generate(config)({
|
|
34
|
+
yield E2eFileProgrammer_1.E2eFileProgrammer.generate(checker)(config)({
|
|
35
35
|
api: path_1.default.resolve(config.output),
|
|
36
36
|
current: path_1.default.join(output, "features", "api", "automated"),
|
|
37
37
|
})(route);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"E2eGenerator.js","sourceRoot":"","sources":["../../src/generates/E2eGenerator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4CAAoB;AACpB,gDAAwB;
|
|
1
|
+
{"version":3,"file":"E2eGenerator.js","sourceRoot":"","sources":["../../src/generates/E2eGenerator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AAIxB,+DAA4D;AAE5D,oEAAiE;AAEjE,IAAiB,YAAY,CAkD5B;AAlDD,WAAiB,YAAY;IACd,qBAAQ,GACnB,CAAC,OAAuB,EAAE,EAAE,CAC5B,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAO,SAAmB,EAAiB,EAAE;QAC3C,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAE7C,sBAAsB;QACtB,MAAM,MAAM,GAAW,cAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAI,CAAC,CAAC;QACjD,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC;QACpB,MAAM,KAAK,CAAC,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;QAC3C,MAAM,KAAK,CAAC,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;QAClD,MAAM,KAAK,CAAC,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC;QAE/D,2BAA2B;QAC3B,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAI,EAAE,UAAU,CAAC,CAAC,CAAC;QAExD,2BAA2B;QAC3B,KAAK,MAAM,KAAK,IAAI,SAAS;YAC3B,MAAM,qCAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;gBAChD,GAAG,EAAE,cAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAO,CAAC;gBACjC,OAAO,EAAE,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,WAAW,CAAC;aAC3D,CAAC,CAAC,KAAK,CAAC,CAAC;IACd,CAAC,CAAA,CAAC;IAEJ,MAAM,KAAK,GACT,CAAC,MAAqB,EAAE,EAAE,CAC1B,CAAO,MAAc,EAAiB,EAAE;QACtC,IAAI,YAAE,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,OAAO;QAElC,MAAM,QAAQ,GAAW,cAAI,CAAC,IAAI,CAChC,SAAS,EACT,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,UAAU,CACX,CAAC;QACF,MAAM,OAAO,GAAW,MAAM,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAErE,MAAM,YAAE,CAAC,QAAQ,CAAC,SAAS,CACzB,MAAM,EACN,OAAO,CAAC,OAAO,CACb,UAAU,EACV,IAAI,CAAC,SAAS,CAAC,MAAM,+BAAc,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CACnD,EACD,MAAM,CACP,CAAC;IACJ,CAAC,CAAA,CAAC;AACN,CAAC,EAlDgB,YAAY,4BAAZ,YAAY,QAkD5B;AAED,MAAM,KAAK,GAAG,CAAO,QAAgB,EAAiB,EAAE;IACtD,IAAI,CAAC;QACH,MAAM,YAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAAC,WAAM,CAAC,CAAA,CAAC;AACZ,CAAC,CAAA,CAAC"}
|
|
@@ -15,8 +15,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
15
15
|
exports.SdkGenerator = void 0;
|
|
16
16
|
const fs_1 = __importDefault(require("fs"));
|
|
17
17
|
const path_1 = __importDefault(require("path"));
|
|
18
|
+
const CloneGenerator_1 = require("./CloneGenerator");
|
|
18
19
|
const SdkDistributionComposer_1 = require("./internal/SdkDistributionComposer");
|
|
19
|
-
const SdkDtoGenerator_1 = require("./internal/SdkDtoGenerator");
|
|
20
20
|
const SdkFileProgrammer_1 = require("./internal/SdkFileProgrammer");
|
|
21
21
|
var SdkGenerator;
|
|
22
22
|
(function (SdkGenerator) {
|
|
@@ -57,9 +57,9 @@ var SdkGenerator;
|
|
|
57
57
|
}
|
|
58
58
|
// STRUCTURES
|
|
59
59
|
if (config.clone)
|
|
60
|
-
yield
|
|
60
|
+
yield CloneGenerator_1.CloneGenerator.generate(checker)(config)(routes);
|
|
61
61
|
// FUNCTIONAL
|
|
62
|
-
yield SdkFileProgrammer_1.SdkFileProgrammer.generate(config)(routes);
|
|
62
|
+
yield SdkFileProgrammer_1.SdkFileProgrammer.generate(checker)(config)(routes);
|
|
63
63
|
// DISTRIBUTION
|
|
64
64
|
if (config.distribute !== undefined)
|
|
65
65
|
yield SdkDistributionComposer_1.SdkDistributionComposer.compose(config);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SdkGenerator.js","sourceRoot":"","sources":["../../src/generates/SdkGenerator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4CAAoB;AACpB,gDAA4B;AAM5B,gFAA6E;AAC7E,
|
|
1
|
+
{"version":3,"file":"SdkGenerator.js","sourceRoot":"","sources":["../../src/generates/SdkGenerator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
1
2
|
import { INestiaConfig } from "../../INestiaConfig";
|
|
2
3
|
import { IRoute } from "../../structures/IRoute";
|
|
3
4
|
export declare namespace E2eFileProgrammer {
|
|
4
|
-
const generate: (config: INestiaConfig) => (props: {
|
|
5
|
+
const generate: (checker: ts.TypeChecker) => (config: INestiaConfig) => (props: {
|
|
5
6
|
api: string;
|
|
6
7
|
current: string;
|
|
7
8
|
}) => (route: IRoute) => Promise<void>;
|
|
@@ -14,14 +14,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.E2eFileProgrammer = void 0;
|
|
16
16
|
const fs_1 = __importDefault(require("fs"));
|
|
17
|
+
const typescript_1 = __importDefault(require("typescript"));
|
|
18
|
+
const IdentifierFactory_1 = require("typia/lib/factories/IdentifierFactory");
|
|
19
|
+
const FormatUtil_1 = require("../../utils/FormatUtil");
|
|
17
20
|
const ImportDictionary_1 = require("../../utils/ImportDictionary");
|
|
18
|
-
const
|
|
21
|
+
const SdkAliasCollection_1 = require("./SdkAliasCollection");
|
|
19
22
|
const SdkImportWizard_1 = require("./SdkImportWizard");
|
|
20
|
-
const
|
|
23
|
+
const SdkTypeProgrammer_1 = require("./SdkTypeProgrammer");
|
|
21
24
|
var E2eFileProgrammer;
|
|
22
25
|
(function (E2eFileProgrammer) {
|
|
23
|
-
E2eFileProgrammer.generate = (config) => (props) => (route) => __awaiter(this, void 0, void 0, function* () {
|
|
24
|
-
const importer = new ImportDictionary_1.ImportDictionary(`${props.current}/${
|
|
26
|
+
E2eFileProgrammer.generate = (checker) => (config) => (props) => (route) => __awaiter(this, void 0, void 0, function* () {
|
|
27
|
+
const importer = new ImportDictionary_1.ImportDictionary(`${props.current}/${getFunctionName(route)}.ts`);
|
|
25
28
|
if (config.clone !== true)
|
|
26
29
|
for (const tuple of route.imports)
|
|
27
30
|
for (const instance of tuple[1])
|
|
@@ -36,57 +39,48 @@ var E2eFileProgrammer;
|
|
|
36
39
|
instance: null,
|
|
37
40
|
name: "api",
|
|
38
41
|
});
|
|
39
|
-
const
|
|
40
|
-
|
|
41
|
-
|
|
42
|
+
const functor = generate_function(checker)(config)(importer)(route);
|
|
43
|
+
yield fs_1.default.promises.writeFile(importer.file, yield FormatUtil_1.FormatUtil.beautify(typescript_1.default
|
|
44
|
+
.createPrinter()
|
|
45
|
+
.printFile(typescript_1.default.factory.createSourceFile([
|
|
46
|
+
...importer.toStatements(props.current),
|
|
47
|
+
FormatUtil_1.FormatUtil.enter(),
|
|
48
|
+
functor,
|
|
49
|
+
], typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.EndOfFileToken), typescript_1.default.NodeFlags.None))), "utf8");
|
|
42
50
|
});
|
|
43
|
-
const
|
|
44
|
-
|
|
51
|
+
const generate_function = (checker) => (config) => (importer) => (route) => typescript_1.default.factory.createVariableStatement([typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.ExportKeyword)], typescript_1.default.factory.createVariableDeclarationList([
|
|
52
|
+
typescript_1.default.factory.createVariableDeclaration(typescript_1.default.factory.createIdentifier(getFunctionName(route)), undefined, undefined, generate_arrow(checker)(config)(importer)(route)),
|
|
53
|
+
], typescript_1.default.NodeFlags.Const));
|
|
54
|
+
const generate_arrow = (checker) => (config) => (importer) => (route) => {
|
|
45
55
|
const headers = route.parameters.find((p) => p.category === "headers" && p.field === undefined);
|
|
46
|
-
const
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
"
|
|
51
|
-
"
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
]
|
|
58
|
-
.map((line) => `${" ".repeat(tab * 4)}${line}`)
|
|
59
|
-
.join("\n")
|
|
60
|
-
: `${" ".repeat(tab * 4)}connection,`,
|
|
56
|
+
const connection = headers
|
|
57
|
+
? typescript_1.default.factory.createObjectLiteralExpression([
|
|
58
|
+
typescript_1.default.factory.createSpreadAssignment(typescript_1.default.factory.createIdentifier("connection")),
|
|
59
|
+
typescript_1.default.factory.createPropertyAssignment("headers", typescript_1.default.factory.createObjectLiteralExpression([
|
|
60
|
+
typescript_1.default.factory.createSpreadAssignment(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier("connection"))("headers")),
|
|
61
|
+
typescript_1.default.factory.createSpreadAssignment(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier(SdkImportWizard_1.SdkImportWizard.typia(importer)))("random"), [getTypeName(config)(importer)(headers)], undefined)),
|
|
62
|
+
], true)),
|
|
63
|
+
], true)
|
|
64
|
+
: typescript_1.default.factory.createIdentifier("connection");
|
|
65
|
+
const caller = typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier(["api", "functional", ...route.accessors].join(".")), undefined, [
|
|
66
|
+
connection,
|
|
61
67
|
...route.parameters
|
|
62
|
-
.filter((
|
|
63
|
-
.map(
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
return [
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
` ${SdkImportWizard_1.SdkImportWizard.typia(importer)}.assert(output);`,
|
|
75
|
-
]),
|
|
76
|
-
`};`,
|
|
77
|
-
].join("\n");
|
|
68
|
+
.filter((p) => p.category !== "headers")
|
|
69
|
+
.map((p) => typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier(SdkImportWizard_1.SdkImportWizard.typia(importer)))("random"), [getTypeName(config)(importer)(p)], undefined)),
|
|
70
|
+
]);
|
|
71
|
+
const assert = typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.access(typescript_1.default.factory.createIdentifier(SdkImportWizard_1.SdkImportWizard.typia(importer)))("assert"), undefined, [typescript_1.default.factory.createIdentifier("output")]);
|
|
72
|
+
return typescript_1.default.factory.createArrowFunction([typescript_1.default.factory.createModifier(typescript_1.default.SyntaxKind.AsyncKeyword)], undefined, [
|
|
73
|
+
IdentifierFactory_1.IdentifierFactory.parameter("connection", typescript_1.default.factory.createTypeReferenceNode("api.IConnection")),
|
|
74
|
+
], undefined, undefined, typescript_1.default.factory.createBlock([
|
|
75
|
+
typescript_1.default.factory.createVariableStatement([], typescript_1.default.factory.createVariableDeclarationList([
|
|
76
|
+
typescript_1.default.factory.createVariableDeclaration("output", undefined, SdkAliasCollection_1.SdkAliasCollection.output(checker)(config)(importer)(route), typescript_1.default.factory.createAwaitExpression(caller)),
|
|
77
|
+
], typescript_1.default.NodeFlags.Const)),
|
|
78
|
+
typescript_1.default.factory.createExpressionStatement(assert),
|
|
79
|
+
]));
|
|
78
80
|
};
|
|
79
|
-
const parameter = (config) => (importer) => (tab) => (param) => {
|
|
80
|
-
const middle = `${SdkImportWizard_1.SdkImportWizard.typia(importer)}.random<${wrap(config)(importer)(getTypeName(config)(importer)(param), param.category === "body")}>()`;
|
|
81
|
-
return `${" ".repeat(4 * tab)}${middle},`;
|
|
82
|
-
};
|
|
83
|
-
const name = (route) => ["test", "api", ...route.accessors].join("_");
|
|
84
|
-
const accessor = (route) => ["api", "functional", ...route.accessors].join(".");
|
|
85
|
-
const wrap = (config) => (importer) => (name, body) => config.primitive === false
|
|
86
|
-
? name
|
|
87
|
-
: `${(body ? SdkImportWizard_1.SdkImportWizard.Primitive : SdkImportWizard_1.SdkImportWizard.Resolved)(importer)}<${name}>`;
|
|
88
81
|
})(E2eFileProgrammer || (exports.E2eFileProgrammer = E2eFileProgrammer = {}));
|
|
82
|
+
const getFunctionName = (route) => ["test", "api", ...route.accessors].join("_");
|
|
89
83
|
const getTypeName = (config) => (importer) => (p) => p.metadata
|
|
90
|
-
?
|
|
91
|
-
: p.typeName;
|
|
84
|
+
? SdkTypeProgrammer_1.SdkTypeProgrammer.decode(config)(importer)(p.metadata)
|
|
85
|
+
: typescript_1.default.factory.createTypeReferenceNode(p.typeName);
|
|
92
86
|
//# sourceMappingURL=E2eFileProgrammer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"E2eFileProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/E2eFileProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4CAAoB;
|
|
1
|
+
{"version":3,"file":"E2eFileProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/E2eFileProgrammer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
2
|
+
import { INestiaConfig } from "../../INestiaConfig";
|
|
3
|
+
import { IRoute } from "../../structures/IRoute";
|
|
4
|
+
import { ImportDictionary } from "../../utils/ImportDictionary";
|
|
5
|
+
export declare namespace SdkAliasCollection {
|
|
6
|
+
const name: (config: INestiaConfig) => (importer: ImportDictionary) => (p: IRoute.IParameter | IRoute.IOutput) => ts.TypeNode;
|
|
7
|
+
const headers: (config: INestiaConfig) => (importer: ImportDictionary) => (param: IRoute.IParameter) => ts.TypeNode;
|
|
8
|
+
const query: (config: INestiaConfig) => (importer: ImportDictionary) => (param: IRoute.IParameter) => ts.TypeNode;
|
|
9
|
+
const input: (config: INestiaConfig) => (importer: ImportDictionary) => (param: IRoute.IParameter) => ts.TypeNode;
|
|
10
|
+
const output: (checker: ts.TypeChecker) => (config: INestiaConfig) => (importer: ImportDictionary) => (route: IRoute) => ts.TypeNode;
|
|
11
|
+
const responseBody: (checker: ts.TypeChecker) => (config: INestiaConfig) => (importer: ImportDictionary) => (route: IRoute) => ts.TypeNode;
|
|
12
|
+
}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.SdkAliasCollection = void 0;
|
|
7
|
+
const typescript_1 = __importDefault(require("typescript"));
|
|
8
|
+
const SdkTypeProgrammer_1 = require("./SdkTypeProgrammer");
|
|
9
|
+
var SdkAliasCollection;
|
|
10
|
+
(function (SdkAliasCollection) {
|
|
11
|
+
SdkAliasCollection.name = (config) => (importer) => (p) => p.metadata
|
|
12
|
+
? SdkTypeProgrammer_1.SdkTypeProgrammer.decode(config)(importer)(p.metadata)
|
|
13
|
+
: typescript_1.default.factory.createTypeReferenceNode(p.typeName);
|
|
14
|
+
SdkAliasCollection.headers = (config) => (importer) => (param) => {
|
|
15
|
+
const type = SdkAliasCollection.name(config)(importer)(param);
|
|
16
|
+
if (config.primitive === false)
|
|
17
|
+
return type;
|
|
18
|
+
return typescript_1.default.factory.createTypeReferenceNode(importer.external({
|
|
19
|
+
type: true,
|
|
20
|
+
library: "@nestia/fetcher",
|
|
21
|
+
instance: "Resolved",
|
|
22
|
+
}), [type]);
|
|
23
|
+
};
|
|
24
|
+
SdkAliasCollection.query = (config) => (importer) => (param) => {
|
|
25
|
+
const type = SdkAliasCollection.name(config)(importer)(param);
|
|
26
|
+
if (config.primitive === false)
|
|
27
|
+
return type;
|
|
28
|
+
return typescript_1.default.factory.createTypeReferenceNode(importer.external({
|
|
29
|
+
type: true,
|
|
30
|
+
library: "@nestia/fetcher",
|
|
31
|
+
instance: "Resolved",
|
|
32
|
+
}), [type]);
|
|
33
|
+
};
|
|
34
|
+
SdkAliasCollection.input = (config) => (importer) => (param) => {
|
|
35
|
+
const type = SdkAliasCollection.name(config)(importer)(param);
|
|
36
|
+
if (config.primitive === false)
|
|
37
|
+
return type;
|
|
38
|
+
return typescript_1.default.factory.createTypeReferenceNode(importer.external({
|
|
39
|
+
type: true,
|
|
40
|
+
library: "@nestia/fetcher",
|
|
41
|
+
instance: "Primitive",
|
|
42
|
+
}), [type]);
|
|
43
|
+
};
|
|
44
|
+
SdkAliasCollection.output = (checker) => (config) => (importer) => (route) => {
|
|
45
|
+
var _a;
|
|
46
|
+
if (config.propagate !== true) {
|
|
47
|
+
const node = SdkAliasCollection.name(config)(importer)(route.output);
|
|
48
|
+
const type = checker.getTypeAtLocation(node);
|
|
49
|
+
const filter = (flag) => (type.getFlags() & flag) !== 0;
|
|
50
|
+
if (filter(typescript_1.default.TypeFlags.Undefined) ||
|
|
51
|
+
filter(typescript_1.default.TypeFlags.Never) ||
|
|
52
|
+
filter(typescript_1.default.TypeFlags.Void) ||
|
|
53
|
+
filter(typescript_1.default.TypeFlags.VoidLike) ||
|
|
54
|
+
config.primitive === false)
|
|
55
|
+
return node;
|
|
56
|
+
return typescript_1.default.factory.createTypeReferenceNode(importer.external({
|
|
57
|
+
type: true,
|
|
58
|
+
library: "@nestia/fetcher",
|
|
59
|
+
instance: route.output.contentType === "application/x-www-form-urlencoded"
|
|
60
|
+
? "Resolved"
|
|
61
|
+
: "Primitive",
|
|
62
|
+
}), [node]);
|
|
63
|
+
}
|
|
64
|
+
const branches = [
|
|
65
|
+
{
|
|
66
|
+
status: String((_a = route.status) !== null && _a !== void 0 ? _a : (route.method === "POST" ? 201 : 200)),
|
|
67
|
+
type: SdkAliasCollection.name(config)(importer)(route.output),
|
|
68
|
+
},
|
|
69
|
+
...Object.entries(route.exceptions).map(([status, value]) => ({
|
|
70
|
+
status,
|
|
71
|
+
type: SdkAliasCollection.name(config)(importer)(value),
|
|
72
|
+
})),
|
|
73
|
+
];
|
|
74
|
+
return typescript_1.default.factory.createTypeReferenceNode(importer.external({
|
|
75
|
+
type: true,
|
|
76
|
+
library: "@nestia/fetcher",
|
|
77
|
+
instance: "IPropagation",
|
|
78
|
+
}), [
|
|
79
|
+
typescript_1.default.factory.createTypeLiteralNode(branches.map((b) => typescript_1.default.factory.createPropertySignature(undefined, typescript_1.default.factory.createNumericLiteral(b.status), undefined, b.type))),
|
|
80
|
+
...(route.status
|
|
81
|
+
? [
|
|
82
|
+
typescript_1.default.factory.createLiteralTypeNode(typescript_1.default.factory.createNumericLiteral(route.status)),
|
|
83
|
+
]
|
|
84
|
+
: []),
|
|
85
|
+
]);
|
|
86
|
+
};
|
|
87
|
+
SdkAliasCollection.responseBody = (checker) => (config) => (importer) => (route) => SdkAliasCollection.output(checker)(Object.assign(Object.assign({}, config), { propagate: false }))(importer)(route);
|
|
88
|
+
})(SdkAliasCollection || (exports.SdkAliasCollection = SdkAliasCollection = {}));
|
|
89
|
+
//# sourceMappingURL=SdkAliasCollection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SdkAliasCollection.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkAliasCollection.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
1
2
|
import { INestiaConfig } from "../../INestiaConfig";
|
|
2
3
|
import { IRoute } from "../../structures/IRoute";
|
|
3
4
|
export declare namespace SdkFileProgrammer {
|
|
4
|
-
const generate: (config: INestiaConfig) => (routeList: IRoute[]) => Promise<void>;
|
|
5
|
+
const generate: (checker: ts.TypeChecker) => (config: INestiaConfig) => (routeList: IRoute[]) => Promise<void>;
|
|
5
6
|
}
|
|
@@ -14,11 +14,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.SdkFileProgrammer = void 0;
|
|
16
16
|
const fs_1 = __importDefault(require("fs"));
|
|
17
|
-
const prettier_1 = require("prettier");
|
|
18
17
|
const typescript_1 = __importDefault(require("typescript"));
|
|
18
|
+
const FormatUtil_1 = require("../../utils/FormatUtil");
|
|
19
19
|
const ImportDictionary_1 = require("../../utils/ImportDictionary");
|
|
20
20
|
const MapUtil_1 = require("../../utils/MapUtil");
|
|
21
|
-
const NodeUtil_1 = require("../../utils/NodeUtil");
|
|
22
21
|
const SdkRouteDirectory_1 = require("./SdkRouteDirectory");
|
|
23
22
|
const SdkRouteProgrammer_1 = require("./SdkRouteProgrammer");
|
|
24
23
|
var SdkFileProgrammer;
|
|
@@ -26,13 +25,13 @@ var SdkFileProgrammer;
|
|
|
26
25
|
/* ---------------------------------------------------------
|
|
27
26
|
CONSTRUCTOR
|
|
28
27
|
--------------------------------------------------------- */
|
|
29
|
-
SdkFileProgrammer.generate = (config) => (routeList) => __awaiter(this, void 0, void 0, function* () {
|
|
28
|
+
SdkFileProgrammer.generate = (checker) => (config) => (routeList) => __awaiter(this, void 0, void 0, function* () {
|
|
30
29
|
// CONSTRUCT FOLDER TREE
|
|
31
30
|
const root = new SdkRouteDirectory_1.SdkRouteDirectory(null, "functional");
|
|
32
31
|
for (const route of routeList)
|
|
33
32
|
emplace(root)(route);
|
|
34
33
|
// ITERATE FILES
|
|
35
|
-
yield iterate(config)(root)(config.output + "/functional");
|
|
34
|
+
yield iterate(checker)(config)(root)(config.output + "/functional");
|
|
36
35
|
});
|
|
37
36
|
const emplace = (directory) => (route) => {
|
|
38
37
|
// OPEN DIRECTORIES
|
|
@@ -45,7 +44,7 @@ var SdkFileProgrammer;
|
|
|
45
44
|
/* ---------------------------------------------------------
|
|
46
45
|
FILE ITERATOR
|
|
47
46
|
--------------------------------------------------------- */
|
|
48
|
-
const iterate = (config) => (directory) => (outDir) => __awaiter(this, void 0, void 0, function* () {
|
|
47
|
+
const iterate = (checker) => (config) => (directory) => (outDir) => __awaiter(this, void 0, void 0, function* () {
|
|
49
48
|
// CREATE A NEW DIRECTORY
|
|
50
49
|
try {
|
|
51
50
|
yield fs_1.default.promises.mkdir(outDir);
|
|
@@ -54,11 +53,11 @@ var SdkFileProgrammer;
|
|
|
54
53
|
// ITERATE CHILDREN
|
|
55
54
|
const statements = [];
|
|
56
55
|
for (const [key, value] of directory.children) {
|
|
57
|
-
yield iterate(config)(value)(`${outDir}/${key}`);
|
|
56
|
+
yield iterate(checker)(config)(value)(`${outDir}/${key}`);
|
|
58
57
|
statements.push(typescript_1.default.factory.createExportDeclaration(undefined, false, typescript_1.default.factory.createNamespaceExport(typescript_1.default.factory.createIdentifier(key)), typescript_1.default.factory.createStringLiteral(`./${key}`), undefined));
|
|
59
58
|
}
|
|
60
59
|
if (statements.length && directory.routes.length)
|
|
61
|
-
statements.push(
|
|
60
|
+
statements.push(FormatUtil_1.FormatUtil.enter());
|
|
62
61
|
// ITERATE ROUTES
|
|
63
62
|
const importer = new ImportDictionary_1.ImportDictionary(`${outDir}/index.ts`);
|
|
64
63
|
if (config.simulate === true &&
|
|
@@ -77,13 +76,15 @@ var SdkFileProgrammer;
|
|
|
77
76
|
instance,
|
|
78
77
|
type: true,
|
|
79
78
|
});
|
|
80
|
-
statements.push(...SdkRouteProgrammer_1.SdkRouteProgrammer.generate(config)(importer)(route));
|
|
79
|
+
statements.push(...SdkRouteProgrammer_1.SdkRouteProgrammer.generate(checker)(config)(importer)(route));
|
|
81
80
|
if (i !== directory.routes.length - 1)
|
|
82
|
-
statements.push(
|
|
81
|
+
statements.push(FormatUtil_1.FormatUtil.enter());
|
|
83
82
|
});
|
|
84
83
|
// FINALIZE THE CONTENT
|
|
85
84
|
if (directory.routes.length !== 0)
|
|
86
|
-
statements.push(...importer.toStatements(outDir), ...(!importer.empty() && statements.length
|
|
85
|
+
statements.push(...importer.toStatements(outDir), ...(!importer.empty() && statements.length
|
|
86
|
+
? [FormatUtil_1.FormatUtil.enter()]
|
|
87
|
+
: []), ...statements.splice(0, statements.length));
|
|
87
88
|
const script = "/**\n" +
|
|
88
89
|
" * @packageDocumentation\n" +
|
|
89
90
|
` * @module ${directory.module}\n` +
|
|
@@ -93,15 +94,7 @@ var SdkFileProgrammer;
|
|
|
93
94
|
typescript_1.default
|
|
94
95
|
.createPrinter()
|
|
95
96
|
.printFile(typescript_1.default.factory.createSourceFile(statements, typescript_1.default.factory.createToken(typescript_1.default.SyntaxKind.EndOfFileToken), typescript_1.default.NodeFlags.None));
|
|
96
|
-
|
|
97
|
-
try {
|
|
98
|
-
return yield (0, prettier_1.format)(script, { parser: "typescript" });
|
|
99
|
-
}
|
|
100
|
-
catch (_b) {
|
|
101
|
-
return script;
|
|
102
|
-
}
|
|
103
|
-
});
|
|
104
|
-
yield fs_1.default.promises.writeFile(importer.file, yield beautify(), "utf8");
|
|
97
|
+
yield fs_1.default.promises.writeFile(importer.file, yield FormatUtil_1.FormatUtil.beautify(script), "utf8");
|
|
105
98
|
});
|
|
106
99
|
})(SdkFileProgrammer || (exports.SdkFileProgrammer = SdkFileProgrammer = {}));
|
|
107
100
|
//# sourceMappingURL=SdkFileProgrammer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SdkFileProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkFileProgrammer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4CAAoB;AACpB,
|
|
1
|
+
{"version":3,"file":"SdkFileProgrammer.js","sourceRoot":"","sources":["../../../src/generates/internal/SdkFileProgrammer.ts"],"names":[],"mappings":"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"}
|