@simplysm/sd-cli 12.12.7 → 12.12.8
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/pkg-builders/client/sd-cli-ng-routes.file-generator.d.ts +5 -2
- package/dist/pkg-builders/client/sd-cli-ng-routes.file-generator.js +15 -11
- package/dist/pkg-builders/client/sd-cli-ng-routes.file-generator.js.map +1 -1
- package/dist/pkg-builders/client/sd-client.build-runner.js +26 -31
- package/dist/pkg-builders/client/sd-client.build-runner.js.map +1 -1
- package/dist/pkg-builders/lib/sd-cli-db-context.file-generator.d.ts +5 -2
- package/dist/pkg-builders/lib/sd-cli-db-context.file-generator.js +15 -16
- package/dist/pkg-builders/lib/sd-cli-db-context.file-generator.js.map +1 -1
- package/dist/pkg-builders/lib/sd-cli-index.file-generator.d.ts +5 -2
- package/dist/pkg-builders/lib/sd-cli-index.file-generator.js +14 -9
- package/dist/pkg-builders/lib/sd-cli-index.file-generator.js.map +1 -1
- package/dist/pkg-builders/lib/sd-ts-lib.build-runner.js +34 -19
- package/dist/pkg-builders/lib/sd-ts-lib.build-runner.js.map +1 -1
- package/dist/ts-compiler/sd-dependency-cache.d.ts +1 -0
- package/dist/ts-compiler/sd-dependency-cache.js +7 -1
- package/dist/ts-compiler/sd-dependency-cache.js.map +1 -1
- package/dist/ts-compiler/sd-ts-compiler.js +23 -18
- package/dist/ts-compiler/sd-ts-compiler.js.map +1 -1
- package/package.json +9 -9
- package/src/pkg-builders/client/sd-cli-ng-routes.file-generator.ts +8 -7
- package/src/pkg-builders/client/sd-client.build-runner.ts +38 -48
- package/src/pkg-builders/lib/sd-cli-db-context.file-generator.ts +8 -12
- package/src/pkg-builders/lib/sd-cli-index.file-generator.ts +9 -10
- package/src/pkg-builders/lib/sd-ts-lib.build-runner.ts +19 -10
- package/src/ts-compiler/sd-dependency-cache.ts +12 -12
- package/src/ts-compiler/sd-ts-compiler.ts +53 -106
|
@@ -3,14 +3,14 @@ import path from "path";
|
|
|
3
3
|
import { FsUtils, PathUtils, SdLogger } from "@simplysm/sd-core-node";
|
|
4
4
|
import { StringUtils, Wait } from "@simplysm/sd-core-common";
|
|
5
5
|
import { NgtscProgram, OptimizeFor } from "@angular/compiler-cli";
|
|
6
|
-
import { replaceBootstrap
|
|
6
|
+
import { replaceBootstrap } from "@angular/build/src/tools/angular/transformers/jit-bootstrap-transformer";
|
|
7
7
|
import { SdCliPerformanceTimer } from "../utils/sd-cli-performance-time";
|
|
8
8
|
import { SdCliConvertMessageUtils } from "../utils/sd-cli-convert-message.utils";
|
|
9
|
-
import { createWorkerTransformer
|
|
9
|
+
import { createWorkerTransformer } from "@angular/build/src/tools/angular/transformers/web-worker-transformer";
|
|
10
10
|
import { SdDependencyCache } from "./sd-dependency-cache";
|
|
11
11
|
import { SdDependencyAnalyzer } from "./sd-dependency-analyzer";
|
|
12
12
|
import { FlatESLint } from "eslint/use-at-your-own-risk";
|
|
13
|
-
import { ComponentStylesheetBundler
|
|
13
|
+
import { ComponentStylesheetBundler } from "@angular/build/src/tools/esbuild/angular/component-stylesheets";
|
|
14
14
|
import { transformSupportedBrowsersToTargets } from "@angular/build/src/tools/esbuild/utils";
|
|
15
15
|
import browserslist from "browserslist";
|
|
16
16
|
export class SdTsCompiler {
|
|
@@ -70,18 +70,23 @@ export class SdTsCompiler {
|
|
|
70
70
|
};
|
|
71
71
|
}
|
|
72
72
|
#createCompilerHost(compilerOptions, modifiedFileSet) {
|
|
73
|
+
// 지식: SourceFile은 하나의 파일에만 국한된 정적 정보객체임, 변경된 파일의 SourceFile만 다시 생성하면됨
|
|
73
74
|
const compilerHost = ts.createCompilerHost(compilerOptions);
|
|
74
75
|
const baseGetSourceFile = compilerHost.getSourceFile;
|
|
75
76
|
compilerHost.getSourceFile = (fileName, languageVersionOrOptions, onError, shouldCreateNewSourceFile, ...args) => {
|
|
76
77
|
const fileNPath = PathUtils.norm(fileName);
|
|
77
|
-
if (!shouldCreateNewSourceFile && this.#sourceFileCacheMap.has(fileNPath)) {
|
|
78
|
+
/*if (!shouldCreateNewSourceFile && this.#sourceFileCacheMap.has(fileNPath)) {
|
|
79
|
+
return this.#sourceFileCacheMap.get(fileNPath);
|
|
80
|
+
}*/
|
|
81
|
+
if (this.#sourceFileCacheMap.has(fileNPath)) {
|
|
78
82
|
return this.#sourceFileCacheMap.get(fileNPath);
|
|
79
83
|
}
|
|
80
|
-
const sf = baseGetSourceFile.call(compilerHost, fileName, languageVersionOrOptions, onError,
|
|
84
|
+
const sf = baseGetSourceFile.call(compilerHost, fileName, languageVersionOrOptions, onError, false, ...args);
|
|
81
85
|
if (!sf) {
|
|
82
86
|
this.#sourceFileCacheMap.delete(fileNPath);
|
|
83
87
|
return undefined;
|
|
84
88
|
}
|
|
89
|
+
this.#sourceFileCacheMap.set(fileNPath, sf);
|
|
85
90
|
return sf;
|
|
86
91
|
};
|
|
87
92
|
if (this.#isForAngular) {
|
|
@@ -142,6 +147,7 @@ export class SdTsCompiler {
|
|
|
142
147
|
// 참조하는 파일과 참조된 파일 사이의 의존성 관계 추가
|
|
143
148
|
this.#depCache.addImport(fileNPath, PathUtils.norm(referencedFile), 0);
|
|
144
149
|
}
|
|
150
|
+
this.#stylesheetBundlingResultMap.set(fileNPath, result);
|
|
145
151
|
// this._stylesheetBundlingResultMap.set(fileNPath, {
|
|
146
152
|
// errors: undefined,
|
|
147
153
|
// warnings: [],
|
|
@@ -211,18 +217,19 @@ export class SdTsCompiler {
|
|
|
211
217
|
return result;
|
|
212
218
|
};
|
|
213
219
|
const affectedFileTree = this.#depCache.getAffectedFileTree(modifiedFileSet);
|
|
214
|
-
this.#debug(
|
|
215
|
-
영향받은 기존파일:
|
|
216
|
-
${affectedFileTree.map(item => getTreeText(item)).join("\n")}`.trim());
|
|
220
|
+
this.#debug(`영향받은 기존파일: ${affectedFileTree.map((item) => getTreeText(item)).join("\n")}`.trim());
|
|
217
221
|
// 스타일 번들러에서 영향받은 파일 관련 항목 무효화
|
|
218
|
-
this.#stylesheetBundler.invalidate(affectedFileSet);
|
|
222
|
+
this.#stylesheetBundler.invalidate(new Set([...modifiedFileSet, ...Array.from(affectedFileSet).filter((item) => item.endsWith(".scss"))]));
|
|
219
223
|
// await worker.run("invalidate", [affectedFileSet]);
|
|
220
|
-
//
|
|
221
|
-
|
|
224
|
+
// 소스파일은 변경된 파일들로 무효화
|
|
225
|
+
for (const modifiedFile of modifiedFileSet) {
|
|
226
|
+
this.#sourceFileCacheMap.delete(modifiedFile);
|
|
227
|
+
}
|
|
228
|
+
// 의존성 캐시에서 영향받은 파일 관련 항목 무효화 (Affected더라도 SF는 동일하므로, modifiedFileSet만 넣어도될듯?)
|
|
229
|
+
this.#depCache.invalidates(modifiedFileSet);
|
|
222
230
|
// 내부 캐시에서 영향받은 파일 관련 항목 무효화
|
|
223
231
|
for (const affectedFile of affectedFileSet) {
|
|
224
232
|
this.#emittedFilesCacheMap.delete(affectedFile);
|
|
225
|
-
this.#sourceFileCacheMap.delete(affectedFile);
|
|
226
233
|
this.#stylesheetBundlingResultMap.delete(affectedFile);
|
|
227
234
|
}
|
|
228
235
|
});
|
|
@@ -257,9 +264,7 @@ ${affectedFileTree.map(item => getTreeText(item)).join("\n")}`.trim());
|
|
|
257
264
|
SdDependencyAnalyzer.analyzeAngularResources(this.#ngProgram, this._opt.watchScopePathSet, this.#depCache);
|
|
258
265
|
}
|
|
259
266
|
});
|
|
260
|
-
const affectedFileSet = modifiedFileSet.size === 0
|
|
261
|
-
? this.#depCache.getFiles()
|
|
262
|
-
: this.#depCache.getAffectedFileSet(modifiedFileSet);
|
|
267
|
+
const affectedFileSet = modifiedFileSet.size === 0 ? this.#depCache.getFiles() : this.#depCache.getAffectedFileSet(modifiedFileSet);
|
|
263
268
|
const watchFileSet = this.#depCache.getFiles();
|
|
264
269
|
return {
|
|
265
270
|
tsconfig,
|
|
@@ -271,8 +276,7 @@ ${affectedFileTree.map(item => getTreeText(item)).join("\n")}`.trim());
|
|
|
271
276
|
async #lintAsync(prepareResult) {
|
|
272
277
|
const lintFilePaths = Array.from(prepareResult.affectedFileSet)
|
|
273
278
|
.filter((item) => PathUtils.isChildPath(item, this._opt.pkgPath))
|
|
274
|
-
.filter((item) => (
|
|
275
|
-
item.endsWith(".js")))
|
|
279
|
+
.filter((item) => (!item.endsWith(".d.ts") && item.endsWith(".ts")) || item.endsWith(".js"))
|
|
276
280
|
.filter((item) => FsUtils.exists(item));
|
|
277
281
|
if (lintFilePaths.length === 0) {
|
|
278
282
|
return [];
|
|
@@ -302,7 +306,8 @@ ${affectedFileTree.map(item => getTreeText(item)).join("\n")}`.trim());
|
|
|
302
306
|
const stylesheetBundlingResult = await this.#bundleStylesheetAsync(data, this._opt.globalStyleFilePath, this._opt.globalStyleFilePath);
|
|
303
307
|
const emitFileInfos = this.#emittedFilesCacheMap.getOrCreate(this._opt.globalStyleFilePath, []);
|
|
304
308
|
emitFileInfos.push({
|
|
305
|
-
outAbsPath: PathUtils.norm(this._opt.pkgPath, path
|
|
309
|
+
outAbsPath: PathUtils.norm(this._opt.pkgPath, path
|
|
310
|
+
.relative(path.resolve(this._opt.pkgPath, "src"), this._opt.globalStyleFilePath)
|
|
306
311
|
.replace(/\.scss$/, ".css")),
|
|
307
312
|
text: stylesheetBundlingResult.contents ?? "",
|
|
308
313
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sd-ts-compiler.js","sourceRoot":"","sources":["../../src/ts-compiler/sd-ts-compiler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sd-ts-compiler.js","sourceRoot":"","sources":["../../src/ts-compiler/sd-ts-compiler.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@simplysm/sd-cli",
|
|
3
|
-
"version": "12.12.
|
|
3
|
+
"version": "12.12.8",
|
|
4
4
|
"description": "심플리즘 패키지 - CLI",
|
|
5
5
|
"author": "김석래",
|
|
6
6
|
"repository": {
|
|
@@ -12,21 +12,21 @@
|
|
|
12
12
|
"bin": "./dist/sd-cli.js",
|
|
13
13
|
"type": "module",
|
|
14
14
|
"dependencies": {
|
|
15
|
-
"@angular/build": "^20.0
|
|
16
|
-
"@angular/compiler": "^20.0
|
|
17
|
-
"@angular/compiler-cli": "^20.0
|
|
15
|
+
"@angular/build": "^20.1.0",
|
|
16
|
+
"@angular/compiler": "^20.1.0",
|
|
17
|
+
"@angular/compiler-cli": "^20.1.0",
|
|
18
18
|
"@anthropic-ai/sdk": "^0.56.0",
|
|
19
19
|
"@electron/rebuild": "^4.0.1",
|
|
20
|
-
"@simplysm/sd-core-common": "12.12.
|
|
21
|
-
"@simplysm/sd-core-node": "12.12.
|
|
22
|
-
"@simplysm/sd-service-server": "12.12.
|
|
23
|
-
"@simplysm/sd-storage": "12.12.
|
|
20
|
+
"@simplysm/sd-core-common": "12.12.8",
|
|
21
|
+
"@simplysm/sd-core-node": "12.12.8",
|
|
22
|
+
"@simplysm/sd-service-server": "12.12.8",
|
|
23
|
+
"@simplysm/sd-storage": "12.12.8",
|
|
24
24
|
"browserslist": "^4.25.1",
|
|
25
25
|
"cordova": "^12.0.0",
|
|
26
26
|
"css-has-pseudo": "^7.0.2",
|
|
27
27
|
"electron": "^37.2.0",
|
|
28
28
|
"electron-builder": "26.0.12",
|
|
29
|
-
"esbuild": "
|
|
29
|
+
"esbuild": "0.25.5",
|
|
30
30
|
"eslint": "^9.30.1",
|
|
31
31
|
"glob": "^11.0.3",
|
|
32
32
|
"node-stdlib-browser": "^1.3.1",
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import path from "path";
|
|
2
|
-
import { FsUtils, HashUtils, PathUtils
|
|
2
|
+
import { FsUtils, HashUtils, PathUtils } from "@simplysm/sd-core-node";
|
|
3
3
|
import { StringUtils } from "@simplysm/sd-core-common";
|
|
4
4
|
|
|
5
5
|
export class SdCliNgRoutesFileGenerator {
|
|
6
6
|
cachedHash?: string;
|
|
7
7
|
|
|
8
|
-
watch(pkgPath: string, noLazyRoute?: boolean) {
|
|
8
|
+
/*watch(pkgPath: string, noLazyRoute?: boolean) {
|
|
9
9
|
const routesFilePath = path.resolve(pkgPath, "src/routes.ts");
|
|
10
10
|
this.cachedHash = FsUtils.exists(routesFilePath) ? HashUtils.get(FsUtils.readFile(routesFilePath)) : undefined;
|
|
11
11
|
|
|
@@ -14,9 +14,9 @@ export class SdCliNgRoutesFileGenerator {
|
|
|
14
14
|
});
|
|
15
15
|
|
|
16
16
|
this.run(pkgPath, noLazyRoute);
|
|
17
|
-
}
|
|
17
|
+
}*/
|
|
18
18
|
|
|
19
|
-
run(pkgPath: string, noLazyRoute?: boolean) {
|
|
19
|
+
run(pkgPath: string, noLazyRoute?: boolean): { changed: boolean; filePath: string; content: string } {
|
|
20
20
|
const appDirPath = path.resolve(pkgPath, "src/app");
|
|
21
21
|
const routesFilePath = path.resolve(pkgPath, "src/routes.ts");
|
|
22
22
|
|
|
@@ -54,9 +54,7 @@ export class SdCliNgRoutesFileGenerator {
|
|
|
54
54
|
cont += indentStr + ` path: "${key}",\n`;
|
|
55
55
|
if (val.relModulePath != null) {
|
|
56
56
|
if (noLazyRoute) {
|
|
57
|
-
cont +=
|
|
58
|
-
indentStr +
|
|
59
|
-
` component: ${StringUtils.toPascalCase(path.basename(val.relModulePath))},\n`;
|
|
57
|
+
cont += indentStr + ` component: ${StringUtils.toPascalCase(path.basename(val.relModulePath))},\n`;
|
|
60
58
|
imports.push(
|
|
61
59
|
`import { ${StringUtils.toPascalCase(path.basename(val.relModulePath))} } from "./app/${val.relModulePath}";`,
|
|
62
60
|
);
|
|
@@ -90,6 +88,9 @@ ${routes}
|
|
|
90
88
|
if (currHash !== this.cachedHash) {
|
|
91
89
|
FsUtils.writeFile(routesFilePath, content);
|
|
92
90
|
this.cachedHash = currHash;
|
|
91
|
+
return { changed: true, filePath: routesFilePath, content };
|
|
92
|
+
} else {
|
|
93
|
+
return { changed: false, filePath: routesFilePath, content };
|
|
93
94
|
}
|
|
94
95
|
}
|
|
95
96
|
}
|
|
@@ -14,52 +14,33 @@ export class SdClientBuildRunner extends BuildRunnerBase<"client"> {
|
|
|
14
14
|
#ngBundlers?: SdNgBundler[];
|
|
15
15
|
#cordova?: SdCliCordova;
|
|
16
16
|
|
|
17
|
-
protected override async _runAsync(
|
|
18
|
-
|
|
19
|
-
modifiedFileSet?: Set<TNormPath>,
|
|
20
|
-
): Promise<IBuildRunnerRunResult> {
|
|
21
|
-
// 최초
|
|
17
|
+
protected override async _runAsync(dev: boolean, modifiedFileSet?: Set<TNormPath>): Promise<IBuildRunnerRunResult> {
|
|
18
|
+
// 최초 한번
|
|
22
19
|
if (!modifiedFileSet) {
|
|
20
|
+
// config
|
|
23
21
|
this._debug("GEN .config...");
|
|
24
22
|
const confDistPath = path.resolve(this._pkgPath, "dist/.config.json");
|
|
25
23
|
FsUtils.writeFile(confDistPath, JSON.stringify(this._pkgConf.configs ?? {}, undefined, 2));
|
|
26
24
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
this.
|
|
32
|
-
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
this.#routeGenerator.watch(this._pkgPath, this._pkgConf.noLazyRoute);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
// watch
|
|
40
|
-
else {
|
|
41
|
-
for (const ngBundler of this.#ngBundlers!) {
|
|
42
|
-
ngBundler.markForChanges(Array.from(modifiedFileSet));
|
|
25
|
+
// cordova
|
|
26
|
+
if (this._pkgConf.builder?.cordova) {
|
|
27
|
+
this._debug("CORDOVA 준비...");
|
|
28
|
+
this.#cordova = new SdCliCordova({
|
|
29
|
+
pkgPath: this._pkgPath,
|
|
30
|
+
config: this._pkgConf.builder.cordova,
|
|
31
|
+
});
|
|
32
|
+
await this.#cordova.initializeAsync();
|
|
43
33
|
}
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
const ngBundlerBuilderTypes = Object.keys(this._pkgConf.builder ?? { web: {} }) as (
|
|
47
|
-
| "web"
|
|
48
|
-
| "electron"
|
|
49
|
-
| "cordova"
|
|
50
|
-
)[];
|
|
51
|
-
if (this._pkgConf.builder?.cordova && !this.#cordova) {
|
|
52
|
-
this._debug("CORDOVA 준비...");
|
|
53
|
-
this.#cordova = new SdCliCordova({
|
|
54
|
-
pkgPath: this._pkgPath,
|
|
55
|
-
config: this._pkgConf.builder.cordova,
|
|
56
|
-
});
|
|
57
|
-
await this.#cordova.initializeAsync();
|
|
58
|
-
}
|
|
59
34
|
|
|
60
|
-
|
|
35
|
+
// ng
|
|
61
36
|
this._debug(`BUILD 준비...`);
|
|
62
37
|
|
|
38
|
+
const ngBundlerBuilderTypes = Object.keys(this._pkgConf.builder ?? { web: {} }) as (
|
|
39
|
+
| "web"
|
|
40
|
+
| "electron"
|
|
41
|
+
| "cordova"
|
|
42
|
+
)[];
|
|
43
|
+
|
|
63
44
|
this.#ngBundlers = ngBundlerBuilderTypes.map(
|
|
64
45
|
(ngBundlerBuilderType) =>
|
|
65
46
|
new SdNgBundler({
|
|
@@ -79,24 +60,33 @@ export class SdClientBuildRunner extends BuildRunnerBase<"client"> {
|
|
|
79
60
|
...this._pkgConf.builder?.[ngBundlerBuilderType]?.env,
|
|
80
61
|
},
|
|
81
62
|
external:
|
|
82
|
-
ngBundlerBuilderType === "electron"
|
|
83
|
-
|
|
84
|
-
: [],
|
|
85
|
-
cordovaConfig:
|
|
86
|
-
ngBundlerBuilderType === "cordova" ? this._pkgConf.builder!.cordova : undefined,
|
|
63
|
+
ngBundlerBuilderType === "electron" ? (this._pkgConf.builder?.electron?.reinstallDependencies ?? []) : [],
|
|
64
|
+
cordovaConfig: ngBundlerBuilderType === "cordova" ? this._pkgConf.builder!.cordova : undefined,
|
|
87
65
|
watchScopePathSet: this._watchScopePathSet,
|
|
88
66
|
}),
|
|
89
67
|
);
|
|
90
68
|
}
|
|
91
69
|
|
|
70
|
+
const npmConf = FsUtils.readJson(path.resolve(this._pkgPath, "package.json")) as INpmConfig;
|
|
71
|
+
|
|
72
|
+
if ("@angular/router" in (npmConf.dependencies ?? {})) {
|
|
73
|
+
this._debug(`GEN routes.ts...`);
|
|
74
|
+
const genRoutesResult = this.#routeGenerator.run(this._pkgPath, this._pkgConf.noLazyRoute);
|
|
75
|
+
if (modifiedFileSet && genRoutesResult.changed) {
|
|
76
|
+
modifiedFileSet.add(PathUtils.norm(genRoutesResult.filePath));
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
if (modifiedFileSet) {
|
|
81
|
+
for (const ngBundler of this.#ngBundlers!) {
|
|
82
|
+
ngBundler.markForChanges(Array.from(modifiedFileSet));
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
|
|
92
86
|
this._debug(`BUILD...`);
|
|
93
|
-
const buildResults = await Promise.all(
|
|
94
|
-
this.#ngBundlers.map((builder) => builder.bundleAsync()),
|
|
95
|
-
);
|
|
87
|
+
const buildResults = await Promise.all(this.#ngBundlers!.map((builder) => builder.bundleAsync()));
|
|
96
88
|
const watchFileSet = new Set(buildResults.mapMany((item) => Array.from(item.watchFileSet)));
|
|
97
|
-
const affectedFileSet = new Set(
|
|
98
|
-
buildResults.mapMany((item) => Array.from(item.affectedFileSet)),
|
|
99
|
-
);
|
|
89
|
+
const affectedFileSet = new Set(buildResults.mapMany((item) => Array.from(item.affectedFileSet)));
|
|
100
90
|
const emitFileSet = new Set(buildResults.mapMany((item) => Array.from(item.emitFileSet)));
|
|
101
91
|
const results = buildResults.mapMany((item) => item.results).distinct();
|
|
102
92
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FsUtils, HashUtils, PathUtils
|
|
1
|
+
import { FsUtils, HashUtils, PathUtils } from "@simplysm/sd-core-node";
|
|
2
2
|
import path from "path";
|
|
3
3
|
import { StringUtils } from "@simplysm/sd-core-common";
|
|
4
4
|
import { INpmConfig } from "../../types/common-configs.types";
|
|
@@ -6,7 +6,7 @@ import { INpmConfig } from "../../types/common-configs.types";
|
|
|
6
6
|
export class SdCliDbContextFileGenerator {
|
|
7
7
|
cachedHash?: string;
|
|
8
8
|
|
|
9
|
-
watch(pkgPath: string, kebabName: string) {
|
|
9
|
+
/*watch(pkgPath: string, kebabName: string) {
|
|
10
10
|
const targetFilePath = path.resolve(pkgPath, `src/${kebabName}.ts`);
|
|
11
11
|
this.cachedHash = FsUtils.exists(targetFilePath) ? HashUtils.get(FsUtils.readFile(targetFilePath)) : undefined;
|
|
12
12
|
|
|
@@ -15,9 +15,9 @@ export class SdCliDbContextFileGenerator {
|
|
|
15
15
|
});
|
|
16
16
|
|
|
17
17
|
this.run(pkgPath, kebabName);
|
|
18
|
-
}
|
|
18
|
+
}*/
|
|
19
19
|
|
|
20
|
-
run(pkgPath: string, kebabName: string) {
|
|
20
|
+
run(pkgPath: string, kebabName: string): { changed: boolean; filePath: string; content: string } {
|
|
21
21
|
const npmConfig = FsUtils.readJson(path.resolve(pkgPath, "package.json")) as INpmConfig;
|
|
22
22
|
const useExt = npmConfig.dependencies?.["@simplysm/sd-orm-common-ext"] != null;
|
|
23
23
|
|
|
@@ -68,14 +68,7 @@ export class SdCliDbContextFileGenerator {
|
|
|
68
68
|
importTexts.push(`import { ${className} } from "./${requirePath}";`);
|
|
69
69
|
if (
|
|
70
70
|
useExt &&
|
|
71
|
-
[
|
|
72
|
-
"systemDataLog",
|
|
73
|
-
"systemLog",
|
|
74
|
-
"authentication",
|
|
75
|
-
"user",
|
|
76
|
-
"userConfig",
|
|
77
|
-
"userPermission",
|
|
78
|
-
].includes(varName)
|
|
71
|
+
["systemDataLog", "systemLog", "authentication", "user", "userConfig", "userPermission"].includes(varName)
|
|
79
72
|
) {
|
|
80
73
|
modelTexts.push(`override ${varName} = new Queryable(this, ${className})`);
|
|
81
74
|
} else {
|
|
@@ -151,6 +144,9 @@ ${spTexts.length > 0 ? "\n // StoredProcedures\n" + spTexts.map((item) => " "
|
|
|
151
144
|
if (currHash !== this.cachedHash) {
|
|
152
145
|
FsUtils.writeFile(targetFilePath, content);
|
|
153
146
|
this.cachedHash = currHash;
|
|
147
|
+
return { changed: true, filePath: targetFilePath, content };
|
|
148
|
+
} else {
|
|
149
|
+
return { changed: false, filePath: targetFilePath, content };
|
|
154
150
|
}
|
|
155
151
|
}
|
|
156
152
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { FsUtils, HashUtils, PathUtils
|
|
1
|
+
import { FsUtils, HashUtils, PathUtils } from "@simplysm/sd-core-node";
|
|
2
2
|
import path from "path";
|
|
3
3
|
|
|
4
4
|
export class SdCliIndexFileGenerator {
|
|
5
5
|
cachedHash?: string;
|
|
6
6
|
|
|
7
|
-
watch(pkgPath: string, polyfills?: string[]) {
|
|
7
|
+
/*watch(pkgPath: string, polyfills?: string[]) {
|
|
8
8
|
const indexFilePath = path.resolve(pkgPath, "src/index.ts");
|
|
9
9
|
this.cachedHash = FsUtils.exists(indexFilePath) ? FsUtils.readFile(indexFilePath) : undefined;
|
|
10
10
|
|
|
@@ -13,9 +13,9 @@ export class SdCliIndexFileGenerator {
|
|
|
13
13
|
});
|
|
14
14
|
|
|
15
15
|
this.run(pkgPath, polyfills);
|
|
16
|
-
}
|
|
16
|
+
}*/
|
|
17
17
|
|
|
18
|
-
run(pkgPath: string, polyfills?: string[]): string {
|
|
18
|
+
run(pkgPath: string, polyfills?: string[]): { changed: boolean; filePath: string; content: string } {
|
|
19
19
|
const indexFilePath = path.resolve(pkgPath, "src/index.ts");
|
|
20
20
|
|
|
21
21
|
const importTexts: string[] = [];
|
|
@@ -47,22 +47,21 @@ export class SdCliIndexFileGenerator {
|
|
|
47
47
|
if (currHash !== this.cachedHash) {
|
|
48
48
|
FsUtils.writeFile(indexFilePath, content);
|
|
49
49
|
this.cachedHash = currHash;
|
|
50
|
+
return { changed: true, filePath: indexFilePath, content };
|
|
51
|
+
} else {
|
|
52
|
+
return { changed: false, filePath: indexFilePath, content };
|
|
50
53
|
}
|
|
51
|
-
return content;
|
|
52
54
|
}
|
|
53
55
|
|
|
54
56
|
#getFilePaths(pkgPath: string): string[] {
|
|
55
57
|
const indexFilePath = path.resolve(pkgPath, "src/index.ts");
|
|
56
58
|
|
|
57
59
|
const tsconfig = FsUtils.readJson(path.resolve(pkgPath, "tsconfig.json"));
|
|
58
|
-
const entryFilePaths: string[] =
|
|
59
|
-
tsconfig.files?.map((item) => path.resolve(pkgPath, item)) ?? [];
|
|
60
|
+
const entryFilePaths: string[] = tsconfig.files?.map((item) => path.resolve(pkgPath, item)) ?? [];
|
|
60
61
|
|
|
61
62
|
return FsUtils.glob(path.resolve(pkgPath, "src/**/*{.ts,.tsx}"), {
|
|
62
63
|
nodir: true,
|
|
63
64
|
ignore: tsconfig.excludes,
|
|
64
|
-
}).filter(
|
|
65
|
-
(item) => !entryFilePaths.includes(item) && item !== indexFilePath && !item.endsWith(".d.ts"),
|
|
66
|
-
);
|
|
65
|
+
}).filter((item) => !entryFilePaths.includes(item) && item !== indexFilePath && !item.endsWith(".d.ts"));
|
|
67
66
|
}
|
|
68
67
|
}
|
|
@@ -11,11 +11,8 @@ export class SdTsLibBuildRunner extends BuildRunnerBase<"library"> {
|
|
|
11
11
|
#dbContextGenerator = new SdCliDbContextFileGenerator();
|
|
12
12
|
#builder?: SdTsLibBuilder;
|
|
13
13
|
|
|
14
|
-
protected override async _runAsync(
|
|
15
|
-
|
|
16
|
-
modifiedFileSet?: Set<TNormPath>,
|
|
17
|
-
): Promise<IBuildRunnerRunResult> {
|
|
18
|
-
if (!modifiedFileSet) {
|
|
14
|
+
protected override async _runAsync(dev: boolean, modifiedFileSet?: Set<TNormPath>): Promise<IBuildRunnerRunResult> {
|
|
15
|
+
/*if (!modifiedFileSet) {
|
|
19
16
|
if (!dev) {
|
|
20
17
|
if (!this._pkgConf.noGenIndex) {
|
|
21
18
|
this._debug("GEN index.ts...");
|
|
@@ -37,14 +34,26 @@ export class SdTsLibBuildRunner extends BuildRunnerBase<"library"> {
|
|
|
37
34
|
this.#dbContextGenerator.watch(this._pkgPath, this._pkgConf.dbContext);
|
|
38
35
|
}
|
|
39
36
|
}
|
|
37
|
+
}*/
|
|
38
|
+
|
|
39
|
+
if (!this._pkgConf.noGenIndex) {
|
|
40
|
+
this._debug("GEN index.ts...");
|
|
41
|
+
const genIndexResult = this.#indexFileGenerator.run(this._pkgPath, this._pkgConf.polyfills);
|
|
42
|
+
if (modifiedFileSet && genIndexResult.changed) {
|
|
43
|
+
modifiedFileSet.add(PathUtils.norm(genIndexResult.filePath));
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
if (this._pkgConf.dbContext != null) {
|
|
48
|
+
this._debug(`GEN ${this._pkgConf.dbContext}.ts...`);
|
|
49
|
+
const genDbContextResult = this.#dbContextGenerator.run(this._pkgPath, this._pkgConf.dbContext);
|
|
50
|
+
if (modifiedFileSet && genDbContextResult.changed) {
|
|
51
|
+
modifiedFileSet.add(PathUtils.norm(genDbContextResult.filePath));
|
|
52
|
+
}
|
|
40
53
|
}
|
|
41
54
|
|
|
42
55
|
this._debug(`BUILD...`);
|
|
43
|
-
this.#builder ??= new SdTsLibBuilder(
|
|
44
|
-
PathUtils.norm(this._pkgPath),
|
|
45
|
-
dev,
|
|
46
|
-
this._watchScopePathSet,
|
|
47
|
-
);
|
|
56
|
+
this.#builder ??= new SdTsLibBuilder(PathUtils.norm(this._pkgPath), dev, this._watchScopePathSet);
|
|
48
57
|
const buildResult = await this.#builder.buildAsync(modifiedFileSet ?? new Set());
|
|
49
58
|
|
|
50
59
|
this._debug(`빌드 완료`);
|
|
@@ -43,6 +43,8 @@ export class SdDependencyCache {
|
|
|
43
43
|
*/
|
|
44
44
|
private _collectedCache = new Set<TNormPath>();
|
|
45
45
|
|
|
46
|
+
private _exportSymbolCache = new Map<TNormPath, Set<string>>();
|
|
47
|
+
|
|
46
48
|
/**
|
|
47
49
|
* .d.ts 또는 .js가 입력되었을 때 쌍으로 존재하는 파일 경로를 반환
|
|
48
50
|
* 예: "/a.d.ts" → ["/a.d.ts", "/a.js"]
|
|
@@ -240,6 +242,7 @@ export class SdDependencyCache {
|
|
|
240
242
|
this._reexportCache.delete(fileNPath);
|
|
241
243
|
this._collectedCache.delete(fileNPath);
|
|
242
244
|
this._revDepCache.delete(fileNPath); // 자신이 key인 경우
|
|
245
|
+
this._exportSymbolCache.delete(fileNPath);
|
|
243
246
|
}
|
|
244
247
|
|
|
245
248
|
for (const [targetNPath, infoMap] of this._revDepCache) {
|
|
@@ -255,11 +258,7 @@ export class SdDependencyCache {
|
|
|
255
258
|
/**
|
|
256
259
|
* reexport된 경우 importSymbol → exportSymbol로 변환
|
|
257
260
|
*/
|
|
258
|
-
#convertImportSymbolToExportSymbol(
|
|
259
|
-
fileNPath: TNormPath,
|
|
260
|
-
targetNPath: TNormPath,
|
|
261
|
-
importSymbol: string,
|
|
262
|
-
) {
|
|
261
|
+
#convertImportSymbolToExportSymbol(fileNPath: TNormPath, targetNPath: TNormPath, importSymbol: string) {
|
|
263
262
|
const symbolInfos = this._reexportCache.get(fileNPath)?.get(targetNPath);
|
|
264
263
|
if (symbolInfos != null && symbolInfos !== 0 && symbolInfos.length > 0) {
|
|
265
264
|
const symbolInfo = symbolInfos.single((item) => item.importSymbol === importSymbol);
|
|
@@ -272,6 +271,10 @@ export class SdDependencyCache {
|
|
|
272
271
|
* 해당 파일에서 export된 모든 심볼 (직접 + 재export 포함)
|
|
273
272
|
*/
|
|
274
273
|
#getExportSymbols(fileNPath: TNormPath): Set<string> {
|
|
274
|
+
if (this._exportSymbolCache.has(fileNPath)) {
|
|
275
|
+
return this._exportSymbolCache.get(fileNPath)!;
|
|
276
|
+
}
|
|
277
|
+
|
|
275
278
|
const result = new Set<string>();
|
|
276
279
|
|
|
277
280
|
for (const path of this.#getRelatedNPaths(fileNPath)) {
|
|
@@ -284,12 +287,13 @@ export class SdDependencyCache {
|
|
|
284
287
|
if (val === 0) {
|
|
285
288
|
result.adds(...this.#getExportSymbols(key));
|
|
286
289
|
} else {
|
|
287
|
-
result.adds(...val.map(item => item.exportSymbol));
|
|
290
|
+
result.adds(...val.map((item) => item.exportSymbol));
|
|
288
291
|
}
|
|
289
292
|
}
|
|
290
293
|
}
|
|
291
294
|
}
|
|
292
295
|
|
|
296
|
+
this._exportSymbolCache.set(fileNPath, result);
|
|
293
297
|
return result;
|
|
294
298
|
}
|
|
295
299
|
|
|
@@ -301,10 +305,7 @@ export class SdDependencyCache {
|
|
|
301
305
|
const visited = new Set<string>();
|
|
302
306
|
const nodeMap = new Map<string, ISdAffectedFileTreeNode>();
|
|
303
307
|
|
|
304
|
-
const buildTree = (
|
|
305
|
-
fileNPath: TNormPath,
|
|
306
|
-
exportSymbol: string | undefined,
|
|
307
|
-
): ISdAffectedFileTreeNode => {
|
|
308
|
+
const buildTree = (fileNPath: TNormPath, exportSymbol: string | undefined): ISdAffectedFileTreeNode => {
|
|
308
309
|
const key = `${fileNPath}#${exportSymbol ?? "*"}`;
|
|
309
310
|
if (nodeMap.has(key)) return nodeMap.get(key)!;
|
|
310
311
|
|
|
@@ -320,8 +321,7 @@ export class SdDependencyCache {
|
|
|
320
321
|
if (!revDepInfoMap) return node;
|
|
321
322
|
|
|
322
323
|
for (const [revDepFileNPath, revDepInfo] of revDepInfoMap.entries()) {
|
|
323
|
-
const hasImportSymbol =
|
|
324
|
-
exportSymbol == null || revDepInfo === 0 || revDepInfo.has(exportSymbol);
|
|
324
|
+
const hasImportSymbol = exportSymbol == null || revDepInfo === 0 || revDepInfo.has(exportSymbol);
|
|
325
325
|
if (!hasImportSymbol) continue;
|
|
326
326
|
|
|
327
327
|
const nextExportSymbol =
|