@simplysm/sd-cli 12.9.18 → 12.9.20
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/dist/entry/sd-cli-cordova.d.ts +2 -2
- package/dist/entry/sd-cli-cordova.js +12 -12
- package/dist/entry/sd-cli-cordova.js.map +1 -1
- package/dist/entry/sd-cli-electron.d.ts +6 -1
- package/dist/entry/sd-cli-electron.js +85 -142
- package/dist/entry/sd-cli-electron.js.map +1 -1
- package/dist/entry/sd-cli-project.js +1 -1
- package/dist/entry/sd-cli-project.js.map +1 -1
- package/dist/fix/convert-ecma-private-to-ts-private.d.ts +1 -0
- package/dist/fix/{convert-private.js → convert-ecma-private-to-ts-private.js} +7 -8
- package/dist/fix/convert-ecma-private-to-ts-private.js.map +1 -0
- package/dist/fix/convert-ordering-interface.d.ts +1 -0
- package/dist/fix/convert-ordering-interface.js +46 -0
- package/dist/fix/convert-ordering-interface.js.map +1 -0
- package/dist/fix/convert-sd-sheet-bindings-inInline-template.d.ts +1 -0
- package/dist/fix/convert-sd-sheet-bindings-inInline-template.js +49 -0
- package/dist/fix/convert-sd-sheet-bindings-inInline-template.js.map +1 -0
- package/dist/fix/core/get-ts-morph-source-files.d.ts +1 -0
- package/dist/fix/core/get-ts-morph-source-files.js +8 -0
- package/dist/fix/core/get-ts-morph-source-files.js.map +1 -0
- package/dist/fix/prefix-underscore-for-access-modifiers.d.ts +1 -0
- package/dist/fix/{convert-private-underscore.js → prefix-underscore-for-access-modifiers.js} +13 -10
- package/dist/fix/prefix-underscore-for-access-modifiers.js.map +1 -0
- package/dist/pkg-builders/client/sd-client.build-runner.js +1 -1
- package/dist/pkg-builders/client/sd-client.build-runner.js.map +1 -1
- package/dist/sd-cli-entry.js +12 -5
- package/dist/sd-cli-entry.js.map +1 -1
- package/dist/ts-compiler/create-model-rewrite.transformer.d.ts +2 -0
- package/dist/ts-compiler/create-model-rewrite.transformer.js +52 -0
- package/dist/ts-compiler/create-model-rewrite.transformer.js.map +1 -0
- package/dist/ts-compiler/sd-ts-compiler.js +2 -0
- package/dist/ts-compiler/sd-ts-compiler.js.map +1 -1
- package/package.json +8 -8
- package/src/entry/sd-cli-cordova.ts +17 -13
- package/src/entry/sd-cli-electron.ts +115 -179
- package/src/entry/sd-cli-project.ts +4 -1
- package/src/fix/{convert-private.ts → convert-ecma-private-to-ts-private.ts} +5 -8
- package/src/fix/convert-ordering-interface.ts +56 -0
- package/src/fix/convert-sd-sheet-bindings-inInline-template.ts +62 -0
- package/src/fix/core/get-ts-morph-source-files.ts +9 -0
- package/src/fix/{convert-private-underscore.ts → prefix-underscore-for-access-modifiers.ts} +12 -13
- package/src/pkg-builders/client/sd-client.build-runner.ts +1 -1
- package/src/sd-cli-entry.ts +14 -5
- package/src/ts-compiler/create-model-rewrite.transformer.ts +119 -0
- package/src/ts-compiler/sd-ts-compiler.ts +2 -0
- package/dist/fix/convert-private-underscore.d.ts +0 -1
- package/dist/fix/convert-private-underscore.js.map +0 -1
- package/dist/fix/convert-private.d.ts +0 -1
- package/dist/fix/convert-private.js.map +0 -1
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
2
|
+
|
|
3
|
+
export function createModelRewriteTransformer(): ts.TransformerFactory<ts.SourceFile> {
|
|
4
|
+
return (context) => {
|
|
5
|
+
const factory = context.factory;
|
|
6
|
+
|
|
7
|
+
return (sourceFile) => {
|
|
8
|
+
const newStatements: ts.Statement[] = [];
|
|
9
|
+
|
|
10
|
+
for (const stmt of sourceFile.statements) {
|
|
11
|
+
// model(...) 할당을 찾아서 변형
|
|
12
|
+
if (
|
|
13
|
+
ts.isVariableStatement(stmt) &&
|
|
14
|
+
stmt.declarationList.declarations.length === 1
|
|
15
|
+
) {
|
|
16
|
+
const decl = stmt.declarationList.declarations[0];
|
|
17
|
+
|
|
18
|
+
if (
|
|
19
|
+
decl.initializer &&
|
|
20
|
+
ts.isCallExpression(decl.initializer) &&
|
|
21
|
+
ts.isIdentifier(decl.initializer.expression) &&
|
|
22
|
+
decl.initializer.expression.text === "model"
|
|
23
|
+
) {
|
|
24
|
+
const varName = (decl.name as ts.Identifier).text;
|
|
25
|
+
const valueNode = decl.initializer.arguments[0];
|
|
26
|
+
|
|
27
|
+
// __value = input(...)
|
|
28
|
+
const inputDecl = factory.createVariableStatement(
|
|
29
|
+
[factory.createModifier(ts.SyntaxKind.ConstKeyword)],
|
|
30
|
+
factory.createVariableDeclarationList(
|
|
31
|
+
[
|
|
32
|
+
factory.createVariableDeclaration(
|
|
33
|
+
`__${varName}`,
|
|
34
|
+
undefined,
|
|
35
|
+
undefined,
|
|
36
|
+
factory.createCallExpression(
|
|
37
|
+
factory.createIdentifier("input"),
|
|
38
|
+
undefined,
|
|
39
|
+
[
|
|
40
|
+
valueNode, factory.createObjectLiteralExpression([
|
|
41
|
+
factory.createPropertyAssignment(
|
|
42
|
+
factory.createIdentifier("alias"),
|
|
43
|
+
factory.createStringLiteral(varName),
|
|
44
|
+
),
|
|
45
|
+
]),
|
|
46
|
+
],
|
|
47
|
+
),
|
|
48
|
+
),
|
|
49
|
+
],
|
|
50
|
+
ts.NodeFlags.Const,
|
|
51
|
+
),
|
|
52
|
+
);
|
|
53
|
+
|
|
54
|
+
// __valueChange = output(...)
|
|
55
|
+
const outputDecl = factory.createVariableStatement(
|
|
56
|
+
[factory.createModifier(ts.SyntaxKind.ConstKeyword)],
|
|
57
|
+
factory.createVariableDeclarationList(
|
|
58
|
+
[
|
|
59
|
+
factory.createVariableDeclaration(
|
|
60
|
+
`__${varName}Change`,
|
|
61
|
+
undefined,
|
|
62
|
+
undefined,
|
|
63
|
+
factory.createCallExpression(
|
|
64
|
+
factory.createIdentifier("output"),
|
|
65
|
+
undefined,
|
|
66
|
+
[
|
|
67
|
+
factory.createObjectLiteralExpression([
|
|
68
|
+
factory.createPropertyAssignment(
|
|
69
|
+
factory.createIdentifier("alias"),
|
|
70
|
+
factory.createStringLiteral(`${varName}Change`),
|
|
71
|
+
),
|
|
72
|
+
]),
|
|
73
|
+
],
|
|
74
|
+
),
|
|
75
|
+
),
|
|
76
|
+
],
|
|
77
|
+
ts.NodeFlags.Const,
|
|
78
|
+
),
|
|
79
|
+
);
|
|
80
|
+
|
|
81
|
+
// value = $model(__value, __valueChange)
|
|
82
|
+
const modelDecl = factory.createVariableStatement(
|
|
83
|
+
[factory.createModifier(ts.SyntaxKind.ConstKeyword)],
|
|
84
|
+
factory.createVariableDeclarationList(
|
|
85
|
+
[
|
|
86
|
+
factory.createVariableDeclaration(
|
|
87
|
+
factory.createIdentifier(varName),
|
|
88
|
+
undefined,
|
|
89
|
+
undefined,
|
|
90
|
+
factory.createCallExpression(
|
|
91
|
+
factory.createIdentifier("$model"),
|
|
92
|
+
undefined,
|
|
93
|
+
[
|
|
94
|
+
factory.createIdentifier(`__${varName}`),
|
|
95
|
+
factory.createIdentifier(`__${varName}Change`),
|
|
96
|
+
],
|
|
97
|
+
),
|
|
98
|
+
),
|
|
99
|
+
],
|
|
100
|
+
ts.NodeFlags.Const,
|
|
101
|
+
),
|
|
102
|
+
);
|
|
103
|
+
|
|
104
|
+
newStatements.push(inputDecl, outputDecl, modelDecl);
|
|
105
|
+
continue; // skip original `value = model(...)`
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
// 그대로 유지
|
|
110
|
+
newStatements.push(stmt);
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
return factory.updateSourceFile(
|
|
114
|
+
sourceFile,
|
|
115
|
+
ts.setTextRange(factory.createNodeArray(newStatements), sourceFile.statements),
|
|
116
|
+
);
|
|
117
|
+
};
|
|
118
|
+
};
|
|
119
|
+
}
|
|
@@ -25,6 +25,7 @@ import {
|
|
|
25
25
|
} from "@angular/build/src/tools/esbuild/angular/component-stylesheets";
|
|
26
26
|
import { transformSupportedBrowsersToTargets } from "@angular/build/src/tools/esbuild/utils";
|
|
27
27
|
import browserslist from "browserslist";
|
|
28
|
+
import { createModelRewriteTransformer } from "./create-model-rewrite.transformer";
|
|
28
29
|
|
|
29
30
|
export class SdTsCompiler {
|
|
30
31
|
private _logger = SdLogger.get(["simplysm", "sd-cli", "SdTsCompiler"]);
|
|
@@ -534,6 +535,7 @@ ${affectedFileTree.map(item => getTreeText(item)).join("\n")}`.trim());
|
|
|
534
535
|
return relPath.replace(/\.ts$/, "").replaceAll("\\", "/") + ".js";
|
|
535
536
|
}),
|
|
536
537
|
);
|
|
538
|
+
(transformers.before ??= []).push(createModelRewriteTransformer());
|
|
537
539
|
}
|
|
538
540
|
|
|
539
541
|
this._debug(`파일 출력 중...`);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default function convertPrivateUnderscore(): void;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"convert-private-underscore.js","sourceRoot":"","sources":["../../src/fix/convert-private-underscore.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,OAAO,EAGP,UAAU,GACX,MAAM,UAAU,CAAC;AAElB,MAAM,CAAC,OAAO,UAAU,wBAAwB;IAC9C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC;QAC1B,gBAAgB,EAAE,oBAAoB;KACvC,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC,wBAAwB,CAAC,CAAC;IAErE,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,KAAK,MAAM,QAAQ,IAAI,UAAU,CAAC,UAAU,EAAE,EAAE,CAAC;YAC/C,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,EAAE,CAAC;YAEtC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,SAAS;gBACT,IACE,MAAM,CAAC,OAAO,EAAE,KAAK,UAAU,CAAC,mBAAmB;oBACnD,MAAM,CAAC,OAAO,EAAE,KAAK,UAAU,CAAC,iBAAiB,EACjD,CAAC;oBACD,SAAS;gBACX,CAAC;gBAED,MAAM,WAAW,GAAG,MAAiD,CAAC;gBACtE,MAAM,QAAQ,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;gBAC3C,IAAI,QAAQ,CAAC,OAAO,EAAE,KAAK,UAAU,CAAC,UAAU;oBAAE,SAAS;gBAE3D,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACxC,MAAM,SAAS,GAAG,WAAW,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBAEvE,SAAS;gBACT,IAAI,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC;oBAAE,SAAS;gBAC3C,IAAI,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC;oBAAE,SAAS;gBAChD,IAAI,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC;oBAAE,SAAS;gBAEhF,IAAI,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;oBACrE,MAAM,OAAO,GAAG,IAAI,YAAY,EAAE,CAAC;oBAEnC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAE5B,iBAAiB;oBACjB,UAAU;yBACP,oBAAoB,CAAC,UAAU,CAAC,wBAAwB,CAAC;yBACzD,OAAO,CAAC,CAAC,IAA8B,EAAE,EAAE;wBAC1C,IACE,IAAI,CAAC,OAAO,EAAE,KAAK,YAAY;4BAC/B,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,KAAK,UAAU,CAAC,WAAW,EACzD,CAAC;4BACD,IAAI,CAAC,WAAW,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;wBAC9C,CAAC;oBACH,CAAC,CAAC,CAAC;oBAEL,OAAO,CAAC,GAAG,CAAC,aAAa,UAAU,CAAC,WAAW,EAAE,OAAO,YAAY,MAAM,OAAO,EAAE,CAAC,CAAC;gBACvF,CAAC;YACH,CAAC;QACH,CAAC;QAED,UAAU,CAAC,QAAQ,EAAE,CAAC;IACxB,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;AAClD,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default function convertPrivate(): void;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"convert-private.js","sourceRoot":"","sources":["../../src/fix/convert-private.ts"],"names":[],"mappings":"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"}
|