@autobe/compiler 0.29.2 → 0.30.0
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/AutoBeCompiler.d.ts +2 -2
- package/lib/AutoBeCompiler.js +3 -3
- package/lib/AutoBeCompiler.js.map +1 -1
- package/lib/AutoBeTypeScriptCompiler.d.ts +1 -0
- package/lib/AutoBeTypeScriptCompiler.js +27 -0
- package/lib/AutoBeTypeScriptCompiler.js.map +1 -1
- package/lib/database/AutoBeDatabaseCompiler.d.ts +6 -0
- package/lib/{prisma/AutoBePrismaCompiler.js → database/AutoBeDatabaseCompiler.js} +19 -13
- package/lib/database/AutoBeDatabaseCompiler.js.map +1 -0
- package/lib/database/validateDatabaseApplication.d.ts +2 -0
- package/lib/{prisma/validatePrismaApplication.js → database/validateDatabaseApplication.js} +178 -4
- package/lib/database/validateDatabaseApplication.js.map +1 -0
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/interface/AutoBeInterfaceCompiler.d.ts +1 -1
- package/lib/raw/AutoBeCompilerCommonTemplate.js +2 -2
- package/lib/raw/AutoBeCompilerCommonTemplate.js.map +1 -1
- package/lib/raw/AutoBeCompilerInterfaceTemplate.js +4 -2
- package/lib/raw/AutoBeCompilerInterfaceTemplate.js.map +1 -1
- package/lib/raw/AutoBeCompilerRealizeTemplate.js +16 -3
- package/lib/raw/AutoBeCompilerRealizeTemplate.js.map +1 -1
- package/lib/raw/AutoBeCompilerRealizeTemplateOfPostgres.js +3 -2
- package/lib/raw/AutoBeCompilerRealizeTemplateOfPostgres.js.map +1 -1
- package/lib/raw/AutoBeCompilerRealizeTemplateOfSQLite.js +2 -1
- package/lib/raw/AutoBeCompilerRealizeTemplateOfSQLite.js.map +1 -1
- package/lib/raw/AutoBeCompilerTestTemplate.js +1 -1
- package/lib/raw/AutoBeCompilerTestTemplate.js.map +1 -1
- package/lib/raw/nestjs.json +1777 -656
- package/lib/raw/test.json +748 -520
- package/lib/realize/writeRealizeControllers.js +16 -10
- package/lib/realize/writeRealizeControllers.js.map +1 -1
- package/lib/test/AutoBeTestCompiler.d.ts +1 -0
- package/lib/test/AutoBeTestCompiler.js +6 -0
- package/lib/test/AutoBeTestCompiler.js.map +1 -1
- package/lib/test/programmers/AutoBeTestLiteralProgrammer.js +2 -2
- package/lib/test/programmers/AutoBeTestLiteralProgrammer.js.map +1 -1
- package/lib/test/programmers/IAutoBeTestProgrammerContext.d.ts +1 -1
- package/lib/test/programmers/writeTestExpression.js +3 -1
- package/lib/test/programmers/writeTestExpression.js.map +1 -1
- package/lib/test/programmers/writeTestFunction.js +4 -4
- package/lib/test/programmers/writeTestFunction.js.map +1 -1
- package/lib/test/programmers/writeTestStatement.js +3 -1
- package/lib/test/programmers/writeTestStatement.js.map +1 -1
- package/lib/utils/FilePrinter.js +1 -1
- package/lib/utils/FilePrinter.js.map +1 -1
- package/package.json +13 -12
- package/src/AutoBeCompiler.ts +5 -5
- package/src/AutoBeTypeScriptCompiler.ts +36 -0
- package/src/database/AutoBeDatabaseCompiler.ts +48 -0
- package/src/{prisma/validatePrismaApplication.ts → database/validateDatabaseApplication.ts} +228 -28
- package/src/index.ts +1 -1
- package/src/interface/AutoBeInterfaceCompiler.ts +1 -1
- package/src/raw/AutoBeCompilerCommonTemplate.ts +2 -2
- package/src/raw/AutoBeCompilerInterfaceTemplate.ts +4 -2
- package/src/raw/AutoBeCompilerRealizeTemplate.ts +16 -3
- package/src/raw/AutoBeCompilerRealizeTemplateOfPostgres.ts +3 -2
- package/src/raw/AutoBeCompilerRealizeTemplateOfSQLite.ts +2 -1
- package/src/raw/AutoBeCompilerTestTemplate.ts +1 -1
- package/src/raw/nestjs.json +1777 -656
- package/src/raw/test.json +748 -520
- package/src/realize/writeRealizeControllers.ts +26 -16
- package/src/test/AutoBeTestCompiler.ts +9 -0
- package/src/test/programmers/AutoBeTestLiteralProgrammer.ts +2 -2
- package/src/test/programmers/IAutoBeTestProgrammerContext.ts +1 -1
- package/src/test/programmers/writeTestExpression.ts +6 -1
- package/src/test/programmers/writeTestFunction.ts +3 -2
- package/src/test/programmers/writeTestStatement.ts +5 -1
- package/src/utils/FilePrinter.ts +1 -1
- package/lib/prisma/AutoBePrismaCompiler.d.ts +0 -6
- package/lib/prisma/AutoBePrismaCompiler.js.map +0 -1
- package/lib/prisma/validatePrismaApplication.d.ts +0 -2
- package/lib/prisma/validatePrismaApplication.js.map +0 -1
- package/src/prisma/AutoBePrismaCompiler.ts +0 -36
|
@@ -15,7 +15,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
15
15
|
exports.writeRealizeControllers = void 0;
|
|
16
16
|
const utils_1 = require("@autobe/utils");
|
|
17
17
|
const migrate_1 = require("@nestia/migrate");
|
|
18
|
-
const NestiaMigrateNestMethodProgrammer_1 = require("@nestia/migrate/lib/programmers/NestiaMigrateNestMethodProgrammer");
|
|
19
18
|
const path_1 = __importDefault(require("path"));
|
|
20
19
|
const typescript_1 = __importDefault(require("typescript"));
|
|
21
20
|
const ArrayUtil_1 = require("../utils/ArrayUtil");
|
|
@@ -27,17 +26,20 @@ const writeRealizeControllers = (props) => __awaiter(void 0, void 0, void 0, fun
|
|
|
27
26
|
e2e: false,
|
|
28
27
|
programmer: {
|
|
29
28
|
controllerMethod: (ctx) => {
|
|
30
|
-
const method =
|
|
29
|
+
const method = migrate_1.NestiaMigrateNestMethodProgrammer.write(ctx);
|
|
31
30
|
const operate = props.document.operations.find((o) => o.method === ctx.route.method && o.path === ctx.route.path);
|
|
32
|
-
const func = props.functions
|
|
31
|
+
const func = props.functions
|
|
32
|
+
.filter((f) => f.type === "operation")
|
|
33
|
+
.find((f) => f.endpoint.method === ctx.route.method &&
|
|
33
34
|
f.endpoint.path === ctx.route.path);
|
|
34
35
|
if (func === undefined || operate === undefined)
|
|
35
36
|
return method; // unreachable
|
|
36
|
-
const authorization = operate.authorizationActor
|
|
37
|
+
const authorization = operate.authorizationActor !== null &&
|
|
38
|
+
operate.authorizationType !== "join" &&
|
|
39
|
+
operate.authorizationType !== "login" &&
|
|
40
|
+
operate.authorizationType !== "refresh"
|
|
37
41
|
? props.authorizations.find((d) => d.actor.name === operate.authorizationActor)
|
|
38
42
|
: undefined;
|
|
39
|
-
if (operate.authorizationActor && authorization === undefined)
|
|
40
|
-
return method; // unreachable
|
|
41
43
|
ctx.importer.external({
|
|
42
44
|
type: "instance",
|
|
43
45
|
library: path_1.default
|
|
@@ -47,7 +49,12 @@ const writeRealizeControllers = (props) => __awaiter(void 0, void 0, void 0, fun
|
|
|
47
49
|
name: func.name,
|
|
48
50
|
});
|
|
49
51
|
const inputArguments = [
|
|
50
|
-
...(
|
|
52
|
+
...(authorization ? [authorization.actor.name] : []),
|
|
53
|
+
...(authorization === undefined &&
|
|
54
|
+
(operate.authorizationType === "login" ||
|
|
55
|
+
operate.authorizationType === "join")
|
|
56
|
+
? ["ip"]
|
|
57
|
+
: []),
|
|
51
58
|
...ctx.route.parameters.map((p) => p.name),
|
|
52
59
|
...(ctx.route.query ? [ctx.route.query.name] : []),
|
|
53
60
|
...(ctx.route.body ? [ctx.route.body.name] : []),
|
|
@@ -63,13 +70,12 @@ const writeRealizeControllers = (props) => __awaiter(void 0, void 0, void 0, fun
|
|
|
63
70
|
typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("console.log"), undefined, [typescript_1.default.factory.createIdentifier("error")])),
|
|
64
71
|
typescript_1.default.factory.createThrowStatement(typescript_1.default.factory.createIdentifier("error")),
|
|
65
72
|
], true)), undefined);
|
|
66
|
-
return typescript_1.default.factory.updateMethodDeclaration(method, method.modifiers, method.asteriskToken, method.name, method.questionToken, method.typeParameters, authorization
|
|
73
|
+
return typescript_1.default.factory.updateMethodDeclaration(method, method.modifiers, method.asteriskToken, method.name, method.questionToken, method.typeParameters, authorization !== undefined
|
|
67
74
|
? [
|
|
68
75
|
createAuthorizationParameter(ctx, authorization),
|
|
69
76
|
...method.parameters,
|
|
70
77
|
]
|
|
71
|
-
:
|
|
72
|
-
operate.authorizationType === "join"
|
|
78
|
+
: inputArguments.includes("ip")
|
|
73
79
|
? [createIpParameter(ctx), ...method.parameters]
|
|
74
80
|
: method.parameters, method.type, typescript_1.default.factory.createBlock([tryCatch]));
|
|
75
81
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeRealizeControllers.js","sourceRoot":"","sources":["../../src/realize/writeRealizeControllers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAMA,yCAAyD;AACzD,
|
|
1
|
+
{"version":3,"file":"writeRealizeControllers.js","sourceRoot":"","sources":["../../src/realize/writeRealizeControllers.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,4 +5,5 @@ export declare class AutoBeTestCompiler implements IAutoBeTestCompiler {
|
|
|
5
5
|
validate(props: IAutoBeTestValidateProps): Promise<IValidation.IError[] | null>;
|
|
6
6
|
write(props: IAutoBeTestWriteProps): Promise<string>;
|
|
7
7
|
getExternal(): Promise<Record<string, string>>;
|
|
8
|
+
getDefaultTypes(): Promise<Record<string, string>>;
|
|
8
9
|
}
|
|
@@ -18,6 +18,7 @@ const embed_eslint_1 = require("embed-eslint");
|
|
|
18
18
|
const tstl_1 = require("tstl");
|
|
19
19
|
const typescript_1 = __importDefault(require("typescript"));
|
|
20
20
|
const transform_1 = __importDefault(require("typia/lib/transform"));
|
|
21
|
+
const AutoBeCompilerInterfaceTemplate_1 = require("../raw/AutoBeCompilerInterfaceTemplate");
|
|
21
22
|
const test_json_1 = __importDefault(require("../raw/test.json"));
|
|
22
23
|
const FilePrinter_1 = require("../utils/FilePrinter");
|
|
23
24
|
const shrinkCompileResult_1 = require("../utils/shrinkCompileResult");
|
|
@@ -86,6 +87,11 @@ class AutoBeTestCompiler {
|
|
|
86
87
|
return test_json_1.default;
|
|
87
88
|
});
|
|
88
89
|
}
|
|
90
|
+
getDefaultTypes() {
|
|
91
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
92
|
+
return Object.fromEntries(Object.entries(AutoBeCompilerInterfaceTemplate_1.AutoBeCompilerInterfaceTemplate).filter(([key]) => key.startsWith("src/api/")));
|
|
93
|
+
});
|
|
94
|
+
}
|
|
89
95
|
}
|
|
90
96
|
exports.AutoBeTestCompiler = AutoBeTestCompiler;
|
|
91
97
|
//# sourceMappingURL=AutoBeTestCompiler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutoBeTestCompiler.js","sourceRoot":"","sources":["../../src/test/AutoBeTestCompiler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAQA,yCAGuB;AACvB,+CAA2C;AAC3C,+BAAqC;AACrC,4DAA4B;AAE5B,oEAAiD;AAEjD,iEAA4C;AAC5C,sDAAmD;AACnD,sEAAmE;AACnE,uEAAoE;AAEpE,MAAa,kBAAkB;IAChB,OAAO,CAClB,KAAoC;;;YAEpC,MAAM,KAAK,GAAW,MAAA,KAAK,CAAC,OAAO,mCAAI,2BAA2B,CAAC;YACnE,MAAM,QAAQ,GAAgB,IAAI,0BAAW,CAAC;gBAC5C,QAAQ,EAAE,mBAAsC;gBAChD,eAAe,EAAE;oBACf,MAAM,EAAE,oBAAE,CAAC,YAAY,CAAC,MAAM;oBAC9B,MAAM,EAAE,oBAAE,CAAC,UAAU,CAAC,QAAQ;oBAC9B,kBAAkB,EAAE,IAAI;oBACxB,OAAO,EAAE,IAAI;oBACb,KAAK,EAAE;wBACL,CAAC,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC;wBACtB,CAAC,GAAG,KAAK,QAAQ,CAAC,EAAE,CAAC,aAAa,CAAC;qBACpC;oBACD,MAAM,EAAE,IAAI;oBACZ,YAAY,EAAE,IAAI;oBAClB,eAAe,EAAE,IAAI;oBACrB,sBAAsB,EAAE,IAAI;oBAC5B,qBAAqB,EAAE,IAAI;oBAC3B,iBAAiB,EAAE,IAAI;iBACxB;gBACD,YAAY,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;oBACvC,MAAM,EAAE;wBACN,IAAA,mBAAc,EACZ,OAAO,EACP,EAAE,EACF;4BACE,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;yBAClD,CACF;qBACF;iBACF,CAAC;gBACF,KAAK,EAAE;oBACL,sBAAsB,EAAE,OAAO;iBAChC;aACF,CAAC,CAAC;YACH,OAAO,IAAA,yCAAmB,EAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QAC5D,CAAC;KAAA;IAEY,QAAQ,CACnB,KAA+B;;YAE/B,MAAM,MAAM,GAAyB,EAAE,CAAC;YACxC,MAAM,SAAS,GAGX,IAAI,cAAO,CACb,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAC3B,CAAC,EAAE,EAAE,EAAE,CACL,IAAI,WAAI,CACN;gBACE,MAAM,EAAE,EAAE,CAAC,MAAM;gBACjB,IAAI,EAAE,EAAE,CAAC,IAAI;aACd,EACD,EAAE,CACH,CACJ,EACD,uCAA+B,CAAC,QAAQ,EACxC,uCAA+B,CAAC,MAAM,CACvC,CAAC;YACF,IAAA,4BAAoB,EAAC;gBACnB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,SAAS,EAAE,SAAS;gBACpB,MAAM;aACP,CAAC,CAAC;YACH,OAAO,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;QAC7C,CAAC;KAAA;IAEY,KAAK,CAAC,KAA4B;;YAC7C,MAAM,OAAO,GAAW,IAAA,qCAAiB,EAAC,KAAK,CAAC,CAAC;YACjD,OAAO,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,yBAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC5E,CAAC;KAAA;IAEY,WAAW;;YACtB,OAAO,mBAAsC,CAAC;QAChD,CAAC;KAAA;CACF;
|
|
1
|
+
{"version":3,"file":"AutoBeTestCompiler.js","sourceRoot":"","sources":["../../src/test/AutoBeTestCompiler.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,8 +4,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.AutoBeTestLiteralProgrammer = void 0;
|
|
7
|
+
const utils_1 = require("@typia/utils");
|
|
7
8
|
const typescript_1 = __importDefault(require("typescript"));
|
|
8
|
-
const Escaper_1 = require("typia/lib/utils/Escaper");
|
|
9
9
|
const writeTestExpression_1 = require("./writeTestExpression");
|
|
10
10
|
var AutoBeTestLiteralProgrammer;
|
|
11
11
|
(function (AutoBeTestLiteralProgrammer) {
|
|
@@ -15,7 +15,7 @@ var AutoBeTestLiteralProgrammer;
|
|
|
15
15
|
: typescript_1.default.factory.createNumericLiteral(expr.value);
|
|
16
16
|
AutoBeTestLiteralProgrammer.stringLiteral = (_ctx, expr) => typescript_1.default.factory.createStringLiteral(expr.value);
|
|
17
17
|
AutoBeTestLiteralProgrammer.arrayLiteralExpression = (ctx, expr) => typescript_1.default.factory.createArrayLiteralExpression(expr.elements.map((elem) => (0, writeTestExpression_1.writeTestExpression)(ctx, elem)), true);
|
|
18
|
-
AutoBeTestLiteralProgrammer.objectLiteralExpression = (ctx, expr) => typescript_1.default.factory.createObjectLiteralExpression(expr.properties.map((e) => typescript_1.default.factory.createPropertyAssignment(
|
|
18
|
+
AutoBeTestLiteralProgrammer.objectLiteralExpression = (ctx, expr) => typescript_1.default.factory.createObjectLiteralExpression(expr.properties.map((e) => typescript_1.default.factory.createPropertyAssignment(utils_1.NamingConvention.variable(e.name)
|
|
19
19
|
? typescript_1.default.factory.createIdentifier(e.name)
|
|
20
20
|
: typescript_1.default.factory.createStringLiteral(e.name), (0, writeTestExpression_1.writeTestExpression)(ctx, e.value))), true);
|
|
21
21
|
AutoBeTestLiteralProgrammer.nullLiteral = (_ctx, _expr) => typescript_1.default.factory.createNull();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutoBeTestLiteralProgrammer.js","sourceRoot":"","sources":["../../../src/test/programmers/AutoBeTestLiteralProgrammer.ts"],"names":[],"mappings":";;;;;;AACA,
|
|
1
|
+
{"version":3,"file":"AutoBeTestLiteralProgrammer.js","sourceRoot":"","sources":["../../../src/test/programmers/AutoBeTestLiteralProgrammer.ts"],"names":[],"mappings":";;;;;;AACA,wCAAgD;AAChD,4DAA4B;AAG5B,+DAA4D;AAE5D,IAAiB,2BAA2B,CAyD3C;AAzDD,WAAiB,2BAA2B;IAC7B,0CAAc,GAAG,CAC5B,IAAkC,EAClC,IAAgC,EACb,EAAE,CACrB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IAErD,0CAAc,GAAG,CAC5B,IAAkC,EAClC,IAAgC,EACc,EAAE,CAChD,IAAI,CAAC,KAAK,GAAG,CAAC;QACZ,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,2BAA2B,CACpC,oBAAE,CAAC,UAAU,CAAC,UAAU,EACxB,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAC7C;QACH,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAErC,yCAAa,GAAG,CAC3B,IAAkC,EAClC,IAA+B,EACb,EAAE,CAAC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAErD,kDAAsB,GAAG,CACpC,GAAiC,EACjC,IAAwC,EACb,EAAE,CAC7B,oBAAE,CAAC,OAAO,CAAC,4BAA4B,CACrC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,yCAAmB,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC,EAC3D,IAAI,CACL,CAAC;IAES,mDAAuB,GAAG,CACrC,GAAiC,EACjC,IAAyC,EACb,EAAE,CAC9B,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACtC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACxB,oBAAE,CAAC,OAAO,CAAC,wBAAwB,CACjC,wBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;QAC/B,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC;QACrC,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,EAC1C,IAAA,yCAAmB,EAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAClC,CACF,EACD,IAAI,CACL,CAAC;IAES,uCAAW,GAAG,CACzB,IAAkC,EAClC,KAA8B,EACd,EAAE,CAAC,oBAAE,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;IAEhC,4CAAgB,GAAG,CAC9B,IAAkC,EAClC,KAAmC,EACpB,EAAE,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;AAC/D,CAAC,EAzDgB,2BAA2B,2CAA3B,2BAA2B,QAyD3C"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AutoBeOpenApi } from "@autobe/interface";
|
|
2
|
-
import { NestiaMigrateImportProgrammer } from "@nestia/migrate
|
|
2
|
+
import { NestiaMigrateImportProgrammer } from "@nestia/migrate";
|
|
3
3
|
import { HashMap } from "tstl";
|
|
4
4
|
import { IAutoBeTestApiFunction } from "./IAutoBeTestApiFunction";
|
|
5
5
|
export interface IAutoBeTestProgrammerContext {
|
|
@@ -7,7 +7,9 @@ const AutoBeTestLiteralProgrammer_1 = require("./AutoBeTestLiteralProgrammer");
|
|
|
7
7
|
const AutoBeTestOperatorProgrammer_1 = require("./AutoBeTestOperatorProgrammer");
|
|
8
8
|
const AutoBeTestPredicateProgrammer_1 = require("./AutoBeTestPredicateProgrammer");
|
|
9
9
|
const AutoBeTestRandomProgrammer_1 = require("./AutoBeTestRandomProgrammer");
|
|
10
|
-
const writeTestExpression = (ctx, expr) => factory[expr.type](ctx,
|
|
10
|
+
const writeTestExpression = (ctx, expr) => factory[expr.type](ctx,
|
|
11
|
+
// biome-ignore lint: intended
|
|
12
|
+
expr);
|
|
11
13
|
exports.writeTestExpression = writeTestExpression;
|
|
12
14
|
const factory = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, AutoBeTestLiteralProgrammer_1.AutoBeTestLiteralProgrammer), AutoBeTestOperatorProgrammer_1.AutoBeTestOperatorProgrammer), AutoBeTestAccessorProgrammer_1.AutoBeTestAccessorProgrammer), AutoBeTestFunctionalProgrammer_1.AutoBeTestFunctionalProgrammer), AutoBeTestRandomProgrammer_1.AutoBeTestRandomProgrammer), AutoBeTestPredicateProgrammer_1.AutoBeTestPredicateProgrammer);
|
|
13
15
|
//# sourceMappingURL=writeTestExpression.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeTestExpression.js","sourceRoot":"","sources":["../../../src/test/programmers/writeTestExpression.ts"],"names":[],"mappings":";;;AAGA,iFAA8E;AAC9E,qFAAkF;AAClF,+EAA4E;AAC5E,iFAA8E;AAC9E,mFAAgF;AAChF,6EAA0E;AAGnE,MAAM,mBAAmB,GAAG,CACjC,GAAiC,EACjC,IAA4B,EACb,EAAE,
|
|
1
|
+
{"version":3,"file":"writeTestExpression.js","sourceRoot":"","sources":["../../../src/test/programmers/writeTestExpression.ts"],"names":[],"mappings":";;;AAGA,iFAA8E;AAC9E,qFAAkF;AAClF,+EAA4E;AAC5E,iFAA8E;AAC9E,mFAAgF;AAChF,6EAA0E;AAGnE,MAAM,mBAAmB,GAAG,CACjC,GAAiC,EACjC,IAA4B,EACb,EAAE,CACjB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAChB,GAAG;AACH,8BAA8B;AAC9B,IAAW,CACZ,CAAC;AARS,QAAA,mBAAmB,uBAQ5B;AAEJ,MAAM,OAAO,2FACR,yDAA2B,GAC3B,2DAA4B,GAC5B,2DAA4B,GAC5B,+DAA8B,GAC9B,uDAA0B,GAC1B,6DAA6B,CACjC,CAAC"}
|
|
@@ -5,15 +5,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.writeTestFunction = writeTestFunction;
|
|
7
7
|
const utils_1 = require("@autobe/utils");
|
|
8
|
-
const
|
|
9
|
-
const
|
|
8
|
+
const migrate_1 = require("@nestia/migrate");
|
|
9
|
+
const utils_2 = require("@typia/utils");
|
|
10
10
|
const tstl_1 = require("tstl");
|
|
11
11
|
const typescript_1 = __importDefault(require("typescript"));
|
|
12
12
|
const FilePrinter_1 = require("../../utils/FilePrinter");
|
|
13
13
|
const AutoBeTestStatementProgrammer_1 = require("./AutoBeTestStatementProgrammer");
|
|
14
14
|
function writeTestFunction(props) {
|
|
15
15
|
const ctx = {
|
|
16
|
-
importer: new
|
|
16
|
+
importer: new migrate_1.NestiaMigrateImportProgrammer(),
|
|
17
17
|
document: props.document,
|
|
18
18
|
endpoints: associate(props.document),
|
|
19
19
|
};
|
|
@@ -46,7 +46,7 @@ function associate(document) {
|
|
|
46
46
|
}, o)), utils_1.AutoBeOpenApiEndpointComparator.hashCode, utils_1.AutoBeOpenApiEndpointComparator.equals);
|
|
47
47
|
const functions = new tstl_1.HashMap(utils_1.AutoBeOpenApiEndpointComparator.hashCode, utils_1.AutoBeOpenApiEndpointComparator.equals);
|
|
48
48
|
// from migrate application
|
|
49
|
-
const migrate =
|
|
49
|
+
const migrate = utils_2.HttpMigration.application((0, utils_1.transformOpenApiDocument)(document));
|
|
50
50
|
for (const route of migrate.routes) {
|
|
51
51
|
const endpoint = {
|
|
52
52
|
path: route.path,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeTestFunction.js","sourceRoot":"","sources":["../../../src/test/programmers/writeTestFunction.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"writeTestFunction.js","sourceRoot":"","sources":["../../../src/test/programmers/writeTestFunction.ts"],"names":[],"mappings":";;;;;AAgBA,8CA4CC;AA3DD,yCAGuB;AACvB,6CAAgE;AAEhE,wCAA6C;AAC7C,+BAAqC;AACrC,4DAAqD;AAErD,yDAAsD;AACtD,mFAAgF;AAIhF,SAAgB,iBAAiB,CAAC,KAA4B;IAC5D,MAAM,GAAG,GAAiC;QACxC,QAAQ,EAAE,IAAI,uCAA6B,EAAE;QAC7C,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC;KACrC,CAAC;IACF,MAAM,KAAK,GAAwB,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CACrE;QACE,oBAAE,CAAC,OAAO,CAAC,cAAc,CAAC,oBAAE,CAAC,UAAU,CAAC,aAAa,CAAC;QACtD,oBAAE,CAAC,OAAO,CAAC,cAAc,CAAC,oBAAE,CAAC,UAAU,CAAC,YAAY,CAAC;KACtD,EACD,SAAS,EACT,KAAK,CAAC,QAAQ,CAAC,YAAY,EAC3B,SAAS,EACT;QACE,oBAAE,CAAC,OAAO,CAAC,0BAA0B,CACnC,SAAS,EACT,SAAS,EACT,YAAY,EACZ,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAChC,GAAG,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACvB,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,KAAK;YACX,OAAO,EAAE,2BAA2B;SACrC,CAAC,cAAc,CACjB,CACF;KACF,EACD,SAAS,EACT,6DAA6B,CAAC,KAAK,CAAC,GAAG,EAAE;QACvC,IAAI,EAAE,OAAO;QACb,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,UAAU;KACtC,CAAC,CACH,CAAC;IACF,OAAO,yBAAW,CAAC,KAAK,CAAC;QACvB,UAAU,EAAE;YACV,GAAG,GAAG,CAAC,QAAQ,CAAC,YAAY,CAC1B,CAAC,GAAG,EAAE,EAAE,CAAC,4CAA4C,GAAG,EAAE,CAC3D;YACD,yBAAW,CAAC,OAAO,EAAE;YACrB,yBAAW,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;SACrD;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,SAAS,CAChB,QAAiC;IAEjC,qCAAqC;IACrC,MAAM,UAAU,GACd,IAAI,cAAO,CACT,QAAQ,CAAC,UAAU,CAAC,GAAG,CACrB,CAAC,CAAC,EAAE,EAAE,CACJ,IAAI,WAAI,CACN;QACE,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,IAAI,EAAE,CAAC,CAAC,IAAI;KACb,EACD,CAAC,CACF,CACJ,EACD,uCAA+B,CAAC,QAAQ,EACxC,uCAA+B,CAAC,MAAM,CACvC,CAAC;IACJ,MAAM,SAAS,GACb,IAAI,cAAO,CACT,uCAA+B,CAAC,QAAQ,EACxC,uCAA+B,CAAC,MAAM,CACvC,CAAC;IAEJ,2BAA2B;IAC3B,MAAM,OAAO,GAA4B,qBAAa,CAAC,WAAW,CAChE,IAAA,gCAAwB,EAAC,QAAQ,CAAC,CACnC,CAAC;IACF,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnC,MAAM,QAAQ,GAA4B;YACxC,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,MAAM,EAAE,KAAK,CAAC,MAAe;SAC9B,CAAC;QACF,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE;YAC1B,QAAQ,EAAE,iBAAiB,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC;YACtD,SAAS,EAAE,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;SACpC,CAAC,CAAC;IACL,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -3,7 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.writeTestStatement = void 0;
|
|
4
4
|
const AutoBeTestStatementProgrammer_1 = require("./AutoBeTestStatementProgrammer");
|
|
5
5
|
const writeTestStatement = (ctx, stmt) => {
|
|
6
|
-
const next = AutoBeTestStatementProgrammer_1.AutoBeTestStatementProgrammer[stmt.type](ctx,
|
|
6
|
+
const next = AutoBeTestStatementProgrammer_1.AutoBeTestStatementProgrammer[stmt.type](ctx,
|
|
7
|
+
// biome-ignore lint: intended
|
|
8
|
+
stmt);
|
|
7
9
|
return Array.isArray(next) ? next : [next];
|
|
8
10
|
};
|
|
9
11
|
exports.writeTestStatement = writeTestStatement;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeTestStatement.js","sourceRoot":"","sources":["../../../src/test/programmers/writeTestStatement.ts"],"names":[],"mappings":";;;AAGA,mFAAgF;AAGzE,MAAM,kBAAkB,GAAG,CAChC,GAAiC,EACjC,IAA2B,EACX,EAAE;IAClB,MAAM,IAAI,GAAkC,6DAA6B,CACvE,IAAI,CAAC,IAAI,CACV,
|
|
1
|
+
{"version":3,"file":"writeTestStatement.js","sourceRoot":"","sources":["../../../src/test/programmers/writeTestStatement.ts"],"names":[],"mappings":";;;AAGA,mFAAgF;AAGzE,MAAM,kBAAkB,GAAG,CAChC,GAAiC,EACjC,IAA2B,EACX,EAAE;IAClB,MAAM,IAAI,GAAkC,6DAA6B,CACvE,IAAI,CAAC,IAAI,CACV,CACC,GAAG;IACH,8BAA8B;IAC9B,IAAW,CACZ,CAAC;IACF,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AAC7C,CAAC,CAAC;AAZW,QAAA,kBAAkB,sBAY7B"}
|
package/lib/utils/FilePrinter.js
CHANGED
|
@@ -47,7 +47,7 @@ var FilePrinter;
|
|
|
47
47
|
try {
|
|
48
48
|
return yield (0, prettier_1.format)(script, {
|
|
49
49
|
parser: "typescript",
|
|
50
|
-
plugins: [
|
|
50
|
+
plugins: [yield (0, import2_1.default)("prettier-plugin-jsdoc"), prettier_plugin_sort_imports_1.default],
|
|
51
51
|
importOrder: ["<THIRD_PARTY_MODULES>", "^[./]"],
|
|
52
52
|
importOrderSeparation: true,
|
|
53
53
|
importOrderSortSpecifiers: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FilePrinter.js","sourceRoot":"","sources":["../../src/utils/FilePrinter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yGAA+D;AAC/D,sDAA8B;AAC9B,uCAAkC;AAClC,4DAA4B;AAE5B,IAAiB,WAAW,CA6D3B;AA7DD,WAAiB,WAAW;IACb,uBAAW,GAAG,CACzB,IAAU,EACV,OAAe,EACT,EAAE;QACR,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACtC,oBAAE,CAAC,0BAA0B,CAC3B,IAAI,EACJ,oBAAE,CAAC,UAAU,CAAC,sBAAsB,EACpC;YACE,GAAG;YACH,GAAG,OAAO;iBACP,KAAK,CAAC,MAAM,CAAC;iBACb,IAAI,CAAC,IAAI,CAAC;iBACV,KAAK,CAAC,IAAI,CAAC;iBACX,GAAG,CACF,CAAC,GAAG,EAAE,EAAE,CACN,MAAM,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CACtE;YACH,EAAE;SACH,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,IAAI,CACL,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEW,mBAAO,GAAG,GAAG,EAAE,CAC1B,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;IAE7D,iBAAK,GAAG,CAAC,KAGrB,EAAU,EAAE;;QACX,MAAM,MAAM,GAAW,oBAAE;aACtB,aAAa,CAAC;YACb,OAAO,EAAE,oBAAE,CAAC,WAAW,CAAC,QAAQ;SACjC,CAAC;aACD,SAAS,CACR,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CACzB,KAAK,CAAC,UAAU,EAChB,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EACpD,oBAAE,CAAC,SAAS,CAAC,IAAI,CAClB,CACF,CAAC;QACJ,OAAO,CAAC,MAAA,KAAK,CAAC,GAAG,mCAAI,EAAE,CAAC,GAAG,MAAM,CAAC;IACpC,CAAC,CAAC;IAEW,oBAAQ,GAAG,CAAO,MAAc,EAAmB,EAAE;QAChE,IAAI,CAAC;YACH,OAAO,MAAM,IAAA,iBAAM,EAAC,MAAM,EAAE;gBAC1B,MAAM,EAAE,YAAY;gBACpB,OAAO,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"FilePrinter.js","sourceRoot":"","sources":["../../src/utils/FilePrinter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yGAA+D;AAC/D,sDAA8B;AAC9B,uCAAkC;AAClC,4DAA4B;AAE5B,IAAiB,WAAW,CA6D3B;AA7DD,WAAiB,WAAW;IACb,uBAAW,GAAG,CACzB,IAAU,EACV,OAAe,EACT,EAAE;QACR,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACtC,oBAAE,CAAC,0BAA0B,CAC3B,IAAI,EACJ,oBAAE,CAAC,UAAU,CAAC,sBAAsB,EACpC;YACE,GAAG;YACH,GAAG,OAAO;iBACP,KAAK,CAAC,MAAM,CAAC;iBACb,IAAI,CAAC,IAAI,CAAC;iBACV,KAAK,CAAC,IAAI,CAAC;iBACX,GAAG,CACF,CAAC,GAAG,EAAE,EAAE,CACN,MAAM,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CACtE;YACH,EAAE;SACH,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,IAAI,CACL,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEW,mBAAO,GAAG,GAAG,EAAE,CAC1B,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;IAE7D,iBAAK,GAAG,CAAC,KAGrB,EAAU,EAAE;;QACX,MAAM,MAAM,GAAW,oBAAE;aACtB,aAAa,CAAC;YACb,OAAO,EAAE,oBAAE,CAAC,WAAW,CAAC,QAAQ;SACjC,CAAC;aACD,SAAS,CACR,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CACzB,KAAK,CAAC,UAAU,EAChB,oBAAE,CAAC,OAAO,CAAC,WAAW,CAAC,oBAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EACpD,oBAAE,CAAC,SAAS,CAAC,IAAI,CAClB,CACF,CAAC;QACJ,OAAO,CAAC,MAAA,KAAK,CAAC,GAAG,mCAAI,EAAE,CAAC,GAAG,MAAM,CAAC;IACpC,CAAC,CAAC;IAEW,oBAAQ,GAAG,CAAO,MAAc,EAAmB,EAAE;QAChE,IAAI,CAAC;YACH,OAAO,MAAM,IAAA,iBAAM,EAAC,MAAM,EAAE;gBAC1B,MAAM,EAAE,YAAY;gBACpB,OAAO,EAAE,CAAC,MAAM,IAAA,iBAAO,EAAC,uBAAuB,CAAC,EAAE,sCAAU,CAAC;gBAC7D,WAAW,EAAE,CAAC,uBAAuB,EAAE,OAAO,CAAC;gBAC/C,qBAAqB,EAAE,IAAI;gBAC3B,yBAAyB,EAAE,IAAI;gBAC/B,wBAAwB,EAAE,CAAC,mBAAmB,EAAE,YAAY,EAAE,KAAK,CAAC;aACrE,CAAC,CAAC;QACL,CAAC;QAAC,WAAM,CAAC;YACP,OAAO,MAAM,CAAC;QAChB,CAAC;IACH,CAAC,CAAA,CAAC;AACJ,CAAC,EA7DgB,WAAW,2BAAX,WAAW,QA6D3B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@autobe/compiler",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.30.0",
|
|
4
4
|
"description": "AI backend server code generator",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"author": "Wrtn Technologies",
|
|
@@ -13,33 +13,34 @@
|
|
|
13
13
|
"url": "https://github.com/wrtnlabs/autobe/issues"
|
|
14
14
|
},
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"@nestia/core": "^
|
|
17
|
-
"@nestia/migrate": "^
|
|
18
|
-
"@samchon/openapi": "^5.0.1",
|
|
16
|
+
"@nestia/core": "^11.0.1",
|
|
17
|
+
"@nestia/migrate": "^11.0.1",
|
|
19
18
|
"@trivago/prettier-plugin-sort-imports": "^5.2.2",
|
|
19
|
+
"@typia/interface": "^12.0.1",
|
|
20
|
+
"@typia/utils": "^12.0.1",
|
|
20
21
|
"@typescript-eslint/eslint-plugin": "8.40.0",
|
|
21
22
|
"@typescript-eslint/parser": "8.40.0",
|
|
22
23
|
"embed-eslint": "^2.0.1",
|
|
23
|
-
"embed-prisma": "^
|
|
24
|
+
"embed-prisma": "^3.0.0",
|
|
24
25
|
"embed-typescript": "^2.0.1",
|
|
25
26
|
"eslint": "9.34.0",
|
|
26
27
|
"import2": "^1.0.3",
|
|
27
28
|
"prettier": "^3.5.3",
|
|
28
29
|
"prettier-plugin-jsdoc": "^1.3.2",
|
|
29
|
-
"prisma-markdown": "^
|
|
30
|
-
"tgrid": "^1.2.
|
|
30
|
+
"prisma-markdown": "^4.0.0",
|
|
31
|
+
"tgrid": "^1.2.1",
|
|
31
32
|
"tstl": "^3.0.0",
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
"@autobe/filesystem": "^0.
|
|
35
|
-
"@autobe/
|
|
33
|
+
"typescript-transform-paths": "^3.5.5",
|
|
34
|
+
"typia": "^12.0.1",
|
|
35
|
+
"@autobe/filesystem": "^0.30.0",
|
|
36
|
+
"@autobe/interface": "^0.30.0",
|
|
37
|
+
"@autobe/utils": "^0.30.0"
|
|
36
38
|
},
|
|
37
39
|
"devDependencies": {
|
|
38
40
|
"@types/node": "^22.15.3",
|
|
39
41
|
"rimraf": "^6.0.1",
|
|
40
42
|
"sync-request": "^6.1.0",
|
|
41
43
|
"ts-node": "^10.9.2",
|
|
42
|
-
"ts-patch": "^3.3.0",
|
|
43
44
|
"typescript": "~5.9.3"
|
|
44
45
|
},
|
|
45
46
|
"keywords": [
|
package/src/AutoBeCompiler.ts
CHANGED
|
@@ -2,17 +2,17 @@ import {
|
|
|
2
2
|
AutoBePhase,
|
|
3
3
|
IAutoBeCompiler,
|
|
4
4
|
IAutoBeCompilerListener,
|
|
5
|
+
IAutoBeDatabaseCompiler,
|
|
5
6
|
IAutoBeGetFilesOptions,
|
|
6
7
|
IAutoBeInterfaceCompiler,
|
|
7
|
-
IAutoBePrismaCompiler,
|
|
8
8
|
IAutoBeRealizeCompiler,
|
|
9
9
|
IAutoBeTestCompiler,
|
|
10
10
|
IAutoBeTypeScriptCompiler,
|
|
11
11
|
} from "@autobe/interface";
|
|
12
12
|
|
|
13
13
|
import { AutoBeTypeScriptCompiler } from "./AutoBeTypeScriptCompiler";
|
|
14
|
+
import { AutoBeDatabaseCompiler } from "./database/AutoBeDatabaseCompiler";
|
|
14
15
|
import { AutoBeInterfaceCompiler } from "./interface/AutoBeInterfaceCompiler";
|
|
15
|
-
import { AutoBePrismaCompiler } from "./prisma/AutoBePrismaCompiler";
|
|
16
16
|
import { AutoBeCompilerCommonTemplate } from "./raw/AutoBeCompilerCommonTemplate";
|
|
17
17
|
import { AutoBeCompilerInterfaceTemplate } from "./raw/AutoBeCompilerInterfaceTemplate";
|
|
18
18
|
import { AutoBeCompilerRealizeTemplate } from "./raw/AutoBeCompilerRealizeTemplate";
|
|
@@ -45,14 +45,14 @@ import { AutoBeTestCompiler } from "./test/AutoBeTestCompiler";
|
|
|
45
45
|
* @author Samchon
|
|
46
46
|
*/
|
|
47
47
|
export class AutoBeCompiler implements IAutoBeCompiler {
|
|
48
|
-
public
|
|
48
|
+
public database: IAutoBeDatabaseCompiler;
|
|
49
49
|
public interface: IAutoBeInterfaceCompiler;
|
|
50
50
|
public typescript: IAutoBeTypeScriptCompiler;
|
|
51
51
|
public test: IAutoBeTestCompiler;
|
|
52
52
|
public realize: IAutoBeRealizeCompiler;
|
|
53
53
|
|
|
54
54
|
public constructor(private readonly listener: IAutoBeCompilerListener) {
|
|
55
|
-
this.
|
|
55
|
+
this.database = new AutoBeDatabaseCompiler();
|
|
56
56
|
this.interface = new AutoBeInterfaceCompiler();
|
|
57
57
|
this.typescript = new AutoBeTypeScriptCompiler();
|
|
58
58
|
this.test = new AutoBeTestCompiler();
|
|
@@ -83,7 +83,7 @@ export class AutoBeCompiler implements IAutoBeCompiler {
|
|
|
83
83
|
|
|
84
84
|
const PHASES: AutoBePhase[] = [
|
|
85
85
|
"analyze",
|
|
86
|
-
"
|
|
86
|
+
"database",
|
|
87
87
|
"interface",
|
|
88
88
|
"test",
|
|
89
89
|
"realize",
|
|
@@ -5,6 +5,8 @@ import {
|
|
|
5
5
|
} from "@autobe/interface";
|
|
6
6
|
import nestiaCoreTransform from "@nestia/core/lib/transform";
|
|
7
7
|
import { EmbedEsLint } from "embed-eslint";
|
|
8
|
+
import { Pair } from "tstl";
|
|
9
|
+
// import { Pair } from "tstl";
|
|
8
10
|
import ts from "typescript";
|
|
9
11
|
import typiaTransform from "typia/lib/transform";
|
|
10
12
|
|
|
@@ -52,6 +54,7 @@ export class AutoBeTypeScriptCompiler implements IAutoBeTypeScriptCompiler {
|
|
|
52
54
|
paths: {
|
|
53
55
|
[alias]: ["./src/api"],
|
|
54
56
|
[`${alias}/lib/*`]: ["./src/api/*"],
|
|
57
|
+
["@prisma/sdk"]: ["./src/prisma/client.ts"],
|
|
55
58
|
},
|
|
56
59
|
strict: true,
|
|
57
60
|
skipLibCheck: true,
|
|
@@ -97,4 +100,37 @@ export class AutoBeTypeScriptCompiler implements IAutoBeTypeScriptCompiler {
|
|
|
97
100
|
public beautify(script: string): Promise<string> {
|
|
98
101
|
return FilePrinter.beautify(script);
|
|
99
102
|
}
|
|
103
|
+
|
|
104
|
+
public async removeImportStatements(script: string): Promise<string> {
|
|
105
|
+
try {
|
|
106
|
+
const sourceFile: ts.SourceFile = ts.createSourceFile(
|
|
107
|
+
"module.ts",
|
|
108
|
+
script,
|
|
109
|
+
ts.ScriptTarget.ESNext,
|
|
110
|
+
true,
|
|
111
|
+
);
|
|
112
|
+
const statements: ts.Statement[] = sourceFile.statements.filter(
|
|
113
|
+
(stmt) => stmt.kind !== ts.SyntaxKind.ImportDeclaration,
|
|
114
|
+
);
|
|
115
|
+
const printer: ts.Printer = ts.createPrinter();
|
|
116
|
+
return statements
|
|
117
|
+
.map((stmt) =>
|
|
118
|
+
printer.printNode(ts.EmitHint.Unspecified, stmt, sourceFile),
|
|
119
|
+
)
|
|
120
|
+
.join("\n");
|
|
121
|
+
} catch {
|
|
122
|
+
script = await this.beautify(script);
|
|
123
|
+
const lines: string[] = script.replaceAll("\r\n", "\n").split("\n");
|
|
124
|
+
const indexes: Pair<number, number>[] = lines
|
|
125
|
+
.map((s, i) =>
|
|
126
|
+
s.startsWith("import ")
|
|
127
|
+
? new Pair(i, lines.slice(i).findIndex((s) => s.endsWith(";")) + i)
|
|
128
|
+
: null,
|
|
129
|
+
)
|
|
130
|
+
.filter((p) => p !== null);
|
|
131
|
+
for (const index of indexes.reverse())
|
|
132
|
+
lines.splice(index.first, index.second - index.first + 1);
|
|
133
|
+
return lines.join("\n");
|
|
134
|
+
}
|
|
135
|
+
}
|
|
100
136
|
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import {
|
|
2
|
+
AutoBeDatabase,
|
|
3
|
+
IAutoBeDatabaseCompiler,
|
|
4
|
+
IAutoBeDatabaseValidation,
|
|
5
|
+
IAutoBePrismaCompileResult,
|
|
6
|
+
IAutoBePrismaCompilerProps,
|
|
7
|
+
} from "@autobe/interface";
|
|
8
|
+
import { writePrismaApplication } from "@autobe/utils";
|
|
9
|
+
import { EmbedPrisma } from "embed-prisma";
|
|
10
|
+
|
|
11
|
+
import { validateDatabaseApplication } from "./validateDatabaseApplication";
|
|
12
|
+
|
|
13
|
+
export class AutoBeDatabaseCompiler implements IAutoBeDatabaseCompiler {
|
|
14
|
+
public async compilePrismaSchemas(
|
|
15
|
+
props: IAutoBePrismaCompilerProps,
|
|
16
|
+
): Promise<IAutoBePrismaCompileResult> {
|
|
17
|
+
const compiler: EmbedPrisma = new EmbedPrisma();
|
|
18
|
+
const result: IAutoBePrismaCompileResult = await compiler.compile(
|
|
19
|
+
props.files,
|
|
20
|
+
);
|
|
21
|
+
if (result.type !== "success") return result;
|
|
22
|
+
return {
|
|
23
|
+
...result,
|
|
24
|
+
client: Object.fromEntries(
|
|
25
|
+
Object.entries(result.client).map(([key, value]) => [
|
|
26
|
+
`src/prisma/${key}`,
|
|
27
|
+
value,
|
|
28
|
+
]),
|
|
29
|
+
),
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
public async writePrismaSchemas(
|
|
34
|
+
application: AutoBeDatabase.IApplication,
|
|
35
|
+
dbms: "postgres" | "sqlite" = "postgres",
|
|
36
|
+
): Promise<Record<string, string>> {
|
|
37
|
+
return writePrismaApplication({
|
|
38
|
+
application,
|
|
39
|
+
dbms,
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
public async validate(
|
|
44
|
+
application: AutoBeDatabase.IApplication,
|
|
45
|
+
): Promise<IAutoBeDatabaseValidation> {
|
|
46
|
+
return validateDatabaseApplication(application);
|
|
47
|
+
}
|
|
48
|
+
}
|