@simplysm/sd-cli 12.13.21 → 12.13.23
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/package.json +12 -12
- package/src/entry/{sd-cli-cordova.ts → SdCliCordova.ts} +2 -2
- package/src/entry/{sd-cli-electron.ts → SdCliElectron.ts} +3 -3
- package/src/entry/{sd-cli-local-update.ts → SdCliLocalUpdate.ts} +6 -4
- package/src/entry/{sd-cli-project.ts → SdCliProject.ts} +55 -71
- package/src/pkg-builders/SdProjectBuildRunner.ts +347 -0
- package/src/pkg-builders/client/{sd-client.build-runner.ts → SdClientBuildRunner.ts} +31 -38
- package/src/pkg-builders/client/{sd-ng.bundler.ts → SdNgBundler.ts} +22 -31
- package/src/pkg-builders/client/{sd-ng.bundler-context.ts → SdNgBundlerContext.ts} +7 -9
- package/src/pkg-builders/client/{sd-ng.plugin-creator.ts → createSdNgPlugin.ts} +11 -94
- package/src/pkg-builders/commons/{scope-path.ts → ScopePathSet.ts} +3 -3
- package/src/pkg-builders/commons/SdBuildRunnerBase.ts +47 -0
- package/src/pkg-builders/lib/{sd-cli-db-context.file-generator.ts → SdCliDbContextFileGenerator.ts} +1 -1
- package/src/pkg-builders/lib/{sd-js-lib.build-runner.ts → SdJsLibBuildRunner.ts} +13 -32
- package/src/pkg-builders/lib/SdTsLibBuildRunner.ts +47 -0
- package/src/pkg-builders/lib/{sd-ts-lib.builder.ts → SdTsLibBuilder.ts} +12 -14
- package/src/pkg-builders/server/{sd-server.build-runner.ts → SdServerBuildRunner.ts} +25 -48
- package/src/pkg-builders/server/{sd-server.bundler.ts → SdServerBundler.ts} +26 -23
- package/src/pkg-builders/server/{sd-server.plugin-creator.ts → createSdServerPlugin.ts} +9 -7
- package/src/sd-cli-entry.ts +6 -12
- package/src/sd-cli.ts +1 -15
- package/src/ts-compiler/{sd-dependency-analyzer.ts → SdDepAnalyzer.ts} +5 -9
- package/src/ts-compiler/{sd-dependency-cache.ts → SdDepCache.ts} +1 -137
- package/src/ts-compiler/{sd-style-bundler.ts → SdStyleBundler.ts} +5 -5
- package/src/ts-compiler/{sd-ts-compiler.ts → SdTsCompiler.ts} +17 -144
- package/src/types/{build.types.ts → build/ISdBuildMessage.ts} +0 -6
- package/src/types/build/ISdBuildResult.ts +9 -0
- package/src/types/build/ISdTsCompilerOptions.ts +15 -0
- package/src/types/build/ISdTsCompilerResult.ts +12 -0
- package/src/types/build/TStylesheetBundlingResult.ts +15 -0
- package/src/types/{common-configs.types.ts → common-config/INpmConfig.ts} +0 -6
- package/src/types/common-config/ITsConfig.ts +5 -0
- package/src/types/{config.types.ts → config/ISdProjectConfig.ts} +0 -1
- package/src/types/plugin/ISdCliNgPluginResultCache.ts +9 -0
- package/src/types/{build-plugin.types.ts → plugin/ISdCliServerPluginResultCache.ts} +0 -7
- package/src/types/worker/ISdBuildRunnerWorkerType.ts +24 -0
- package/src/types/worker/IServerWorkerType.ts +8 -0
- package/src/utils/{sd-cli-convert-message.utils.ts → SdCliConvertMessageUtils.ts} +6 -3
- package/src/{entry/utils → utils}/loadProjConfAsync.ts +10 -6
- package/src/workers/build-runner.worker.ts +30 -29
- package/src/workers/server.worker.ts +7 -7
- package/tests/deps/sd-dependency-analyzer.spec.ts +38 -69
- package/tests/deps/sd-dependency-cache.spec.ts +3 -6
- package/dist/entry/sd-cli-ai-command.d.ts +0 -3
- package/dist/entry/sd-cli-ai-command.js +0 -65
- package/dist/entry/sd-cli-ai-command.js.map +0 -1
- package/dist/entry/sd-cli-cordova.d.ts +0 -16
- package/dist/entry/sd-cli-cordova.js +0 -398
- package/dist/entry/sd-cli-cordova.js.map +0 -1
- package/dist/entry/sd-cli-electron.d.ts +0 -18
- package/dist/entry/sd-cli-electron.js +0 -129
- package/dist/entry/sd-cli-electron.js.map +0 -1
- package/dist/entry/sd-cli-local-update.d.ts +0 -11
- package/dist/entry/sd-cli-local-update.js +0 -84
- package/dist/entry/sd-cli-local-update.js.map +0 -1
- package/dist/entry/sd-cli-postinstall.d.ts +0 -3
- package/dist/entry/sd-cli-postinstall.js +0 -39
- package/dist/entry/sd-cli-postinstall.js.map +0 -1
- package/dist/entry/sd-cli-project.d.ts +0 -22
- package/dist/entry/sd-cli-project.js +0 -325
- package/dist/entry/sd-cli-project.js.map +0 -1
- package/dist/entry/utils/loadProjConfAsync.d.ts +0 -5
- package/dist/entry/utils/loadProjConfAsync.js +0 -8
- package/dist/entry/utils/loadProjConfAsync.js.map +0 -1
- package/dist/fix/convert-extends-sd-modal-base-to-interface.d.ts +0 -1
- package/dist/fix/convert-extends-sd-modal-base-to-interface.js +0 -289
- package/dist/fix/convert-extends-sd-modal-base-to-interface.js.map +0 -1
- package/dist/fix/convert-extends-sd-print-template-base-to-interface.d.ts +0 -1
- package/dist/fix/convert-extends-sd-print-template-base-to-interface.js +0 -179
- package/dist/fix/convert-extends-sd-print-template-base-to-interface.js.map +0 -1
- package/dist/fix/convert-flat-pages-to-flat-menus.d.ts +0 -1
- package/dist/fix/convert-flat-pages-to-flat-menus.js +0 -68
- package/dist/fix/convert-flat-pages-to-flat-menus.js.map +0 -1
- package/dist/fix/convert-get-menus-to-usable-menus.d.ts +0 -1
- package/dist/fix/convert-get-menus-to-usable-menus.js +0 -48
- package/dist/fix/convert-get-menus-to-usable-menus.js.map +0 -1
- package/dist/fix/convert-modal-show-params.d.ts +0 -1
- package/dist/fix/convert-modal-show-params.js +0 -29
- package/dist/fix/convert-modal-show-params.js.map +0 -1
- package/dist/fix/convert-print-params.d.ts +0 -1
- package/dist/fix/convert-print-params.js +0 -37
- package/dist/fix/convert-print-params.js.map +0 -1
- package/dist/fix/convert-private-to-hash.d.ts +0 -1
- package/dist/fix/convert-private-to-hash.js +0 -59
- package/dist/fix/convert-private-to-hash.js.map +0 -1
- package/dist/fix/convert-sd-angular-symbol-names.d.ts +0 -1
- package/dist/fix/convert-sd-angular-symbol-names.js +0 -23
- package/dist/fix/convert-sd-angular-symbol-names.js.map +0 -1
- package/dist/fix/convert-sd-icon-to-fa-icon.d.ts +0 -1
- package/dist/fix/convert-sd-icon-to-fa-icon.js +0 -80
- package/dist/fix/convert-sd-icon-to-fa-icon.js.map +0 -1
- package/dist/fix/convert-sd-sheet-bindings-safety.d.ts +0 -1
- package/dist/fix/convert-sd-sheet-bindings-safety.js +0 -57
- package/dist/fix/convert-sd-sheet-bindings-safety.js.map +0 -1
- package/dist/fix/convert-select-modal-button-to-select-button.d.ts +0 -1
- package/dist/fix/convert-select-modal-button-to-select-button.js +0 -64
- package/dist/fix/convert-select-modal-button-to-select-button.js.map +0 -1
- package/dist/fix/convert-setup-cumulate-selected-keys-to-object-param.d.ts +0 -1
- package/dist/fix/convert-setup-cumulate-selected-keys-to-object-param.js +0 -38
- package/dist/fix/convert-setup-cumulate-selected-keys-to-object-param.js.map +0 -1
- package/dist/fix/convert-to-use-perms-signal.d.ts +0 -1
- package/dist/fix/convert-to-use-perms-signal.js +0 -99
- package/dist/fix/convert-to-use-perms-signal.js.map +0 -1
- package/dist/fix/core/convert-symbol.d.ts +0 -1
- package/dist/fix/core/convert-symbol.js +0 -93
- package/dist/fix/core/convert-symbol.js.map +0 -1
- package/dist/fix/core/get-ts-morph-source-files.d.ts +0 -1
- package/dist/fix/core/get-ts-morph-source-files.js +0 -8
- package/dist/fix/core/get-ts-morph-source-files.js.map +0 -1
- package/dist/fix/core/remove-named-import.d.ts +0 -1
- package/dist/fix/core/remove-named-import.js +0 -14
- package/dist/fix/core/remove-named-import.js.map +0 -1
- package/dist/fix/core/remove-symbol.d.ts +0 -1
- package/dist/fix/core/remove-symbol.js +0 -76
- package/dist/fix/core/remove-symbol.js.map +0 -1
- package/dist/fix/remove-sd-angular-symbol-names.d.ts +0 -1
- package/dist/fix/remove-sd-angular-symbol-names.js +0 -9
- package/dist/fix/remove-sd-angular-symbol-names.js.map +0 -1
- package/dist/fix/remove-unused-imports.d.ts +0 -1
- package/dist/fix/remove-unused-imports.js +0 -42
- package/dist/fix/remove-unused-imports.js.map +0 -1
- package/dist/fix/remove-unused-injects.d.ts +0 -1
- package/dist/fix/remove-unused-injects.js +0 -38
- package/dist/fix/remove-unused-injects.js.map +0 -1
- package/dist/fix/remove-unused-protected-readonly.d.ts +0 -1
- package/dist/fix/remove-unused-protected-readonly.js +0 -52
- package/dist/fix/remove-unused-protected-readonly.js.map +0 -1
- package/dist/pkg-builders/client/sd-cli-ng-routes.file-generator.d.ts +0 -9
- package/dist/pkg-builders/client/sd-cli-ng-routes.file-generator.js +0 -89
- package/dist/pkg-builders/client/sd-cli-ng-routes.file-generator.js.map +0 -1
- package/dist/pkg-builders/client/sd-client.build-runner.d.ts +0 -7
- package/dist/pkg-builders/client/sd-client.build-runner.js +0 -119
- package/dist/pkg-builders/client/sd-client.build-runner.js.map +0 -1
- package/dist/pkg-builders/client/sd-ng.bundler-context.d.ts +0 -22
- package/dist/pkg-builders/client/sd-ng.bundler-context.js +0 -91
- package/dist/pkg-builders/client/sd-ng.bundler-context.js.map +0 -1
- package/dist/pkg-builders/client/sd-ng.bundler.d.ts +0 -27
- package/dist/pkg-builders/client/sd-ng.bundler.js +0 -489
- package/dist/pkg-builders/client/sd-ng.bundler.js.map +0 -1
- package/dist/pkg-builders/client/sd-ng.plugin-creator.d.ts +0 -13
- package/dist/pkg-builders/client/sd-ng.plugin-creator.js +0 -223
- package/dist/pkg-builders/client/sd-ng.plugin-creator.js.map +0 -1
- package/dist/pkg-builders/commons/build-runner.base.d.ts +0 -29
- package/dist/pkg-builders/commons/build-runner.base.js +0 -114
- package/dist/pkg-builders/commons/build-runner.base.js.map +0 -1
- package/dist/pkg-builders/commons/scope-path.d.ts +0 -7
- package/dist/pkg-builders/commons/scope-path.js +0 -14
- package/dist/pkg-builders/commons/scope-path.js.map +0 -1
- package/dist/pkg-builders/lib/sd-cli-db-context.file-generator.d.ts +0 -9
- package/dist/pkg-builders/lib/sd-cli-db-context.file-generator.js +0 -134
- package/dist/pkg-builders/lib/sd-cli-db-context.file-generator.js.map +0 -1
- package/dist/pkg-builders/lib/sd-cli-index.file-generator.d.ts +0 -10
- package/dist/pkg-builders/lib/sd-cli-index.file-generator.js +0 -61
- package/dist/pkg-builders/lib/sd-cli-index.file-generator.js.map +0 -1
- package/dist/pkg-builders/lib/sd-js-lib.build-runner.d.ts +0 -8
- package/dist/pkg-builders/lib/sd-js-lib.build-runner.js +0 -50
- package/dist/pkg-builders/lib/sd-js-lib.build-runner.js.map +0 -1
- package/dist/pkg-builders/lib/sd-ts-lib.build-runner.d.ts +0 -7
- package/dist/pkg-builders/lib/sd-ts-lib.build-runner.js +0 -41
- package/dist/pkg-builders/lib/sd-ts-lib.build-runner.js.map +0 -1
- package/dist/pkg-builders/lib/sd-ts-lib.builder.d.ts +0 -14
- package/dist/pkg-builders/lib/sd-ts-lib.builder.js +0 -65
- package/dist/pkg-builders/lib/sd-ts-lib.builder.js.map +0 -1
- package/dist/pkg-builders/sd-multi.build-runner.d.ts +0 -14
- package/dist/pkg-builders/sd-multi.build-runner.js +0 -228
- package/dist/pkg-builders/sd-multi.build-runner.js.map +0 -1
- package/dist/pkg-builders/server/sd-server.build-runner.d.ts +0 -7
- package/dist/pkg-builders/server/sd-server.build-runner.js +0 -264
- package/dist/pkg-builders/server/sd-server.build-runner.js.map +0 -1
- package/dist/pkg-builders/server/sd-server.bundler.d.ts +0 -22
- package/dist/pkg-builders/server/sd-server.bundler.js +0 -153
- package/dist/pkg-builders/server/sd-server.bundler.js.map +0 -1
- package/dist/pkg-builders/server/sd-server.plugin-creator.d.ts +0 -13
- package/dist/pkg-builders/server/sd-server.plugin-creator.js +0 -62
- package/dist/pkg-builders/server/sd-server.plugin-creator.js.map +0 -1
- package/dist/sd-cli-entry.d.ts +0 -2
- package/dist/sd-cli-entry.js +0 -263
- package/dist/sd-cli-entry.js.map +0 -1
- package/dist/sd-cli.d.ts +0 -2
- package/dist/sd-cli.js +0 -97
- package/dist/sd-cli.js.map +0 -1
- package/dist/ts-compiler/sd-dependency-analyzer.d.ts +0 -15
- package/dist/ts-compiler/sd-dependency-analyzer.js +0 -302
- package/dist/ts-compiler/sd-dependency-analyzer.js.map +0 -1
- package/dist/ts-compiler/sd-dependency-cache.d.ts +0 -43
- package/dist/ts-compiler/sd-dependency-cache.js +0 -310
- package/dist/ts-compiler/sd-dependency-cache.js.map +0 -1
- package/dist/ts-compiler/sd-style-bundler.d.ts +0 -16
- package/dist/ts-compiler/sd-style-bundler.js +0 -118
- package/dist/ts-compiler/sd-style-bundler.js.map +0 -1
- package/dist/ts-compiler/sd-ts-compiler.d.ts +0 -8
- package/dist/ts-compiler/sd-ts-compiler.js +0 -522
- package/dist/ts-compiler/sd-ts-compiler.js.map +0 -1
- package/dist/types/build-plugin.types.d.ts +0 -14
- package/dist/types/build-plugin.types.js +0 -2
- package/dist/types/build-plugin.types.js.map +0 -1
- package/dist/types/build-runner.types.d.ts +0 -10
- package/dist/types/build-runner.types.js +0 -2
- package/dist/types/build-runner.types.js.map +0 -1
- package/dist/types/build.types.d.ts +0 -15
- package/dist/types/build.types.js +0 -2
- package/dist/types/build.types.js.map +0 -1
- package/dist/types/common-configs.types.d.ts +0 -24
- package/dist/types/common-configs.types.js +0 -2
- package/dist/types/common-configs.types.js.map +0 -1
- package/dist/types/config.types.d.ts +0 -109
- package/dist/types/config.types.js +0 -2
- package/dist/types/config.types.js.map +0 -1
- package/dist/types/ts-compiler.types.d.ts +0 -37
- package/dist/types/ts-compiler.types.js +0 -2
- package/dist/types/ts-compiler.types.js.map +0 -1
- package/dist/types/worker.types.d.ts +0 -67
- package/dist/types/worker.types.js +0 -2
- package/dist/types/worker.types.js.map +0 -1
- package/dist/utils/sd-cli-convert-message.utils.d.ts +0 -21
- package/dist/utils/sd-cli-convert-message.utils.js +0 -137
- package/dist/utils/sd-cli-convert-message.utils.js.map +0 -1
- package/dist/utils/sd-cli-performance-time.d.ts +0 -9
- package/dist/utils/sd-cli-performance-time.js +0 -51
- package/dist/utils/sd-cli-performance-time.js.map +0 -1
- package/dist/workers/build-runner.worker.d.ts +0 -1
- package/dist/workers/build-runner.worker.js +0 -49
- package/dist/workers/build-runner.worker.js.map +0 -1
- package/dist/workers/server.worker.d.ts +0 -1
- package/dist/workers/server.worker.js +0 -50
- package/dist/workers/server.worker.js.map +0 -1
- package/src/pkg-builders/commons/build-runner.base.ts +0 -184
- package/src/pkg-builders/lib/sd-ts-lib.build-runner.ts +0 -57
- package/src/pkg-builders/sd-multi.build-runner.ts +0 -304
- package/src/types/build-runner.types.ts +0 -11
- package/src/types/ts-compiler.types.ts +0 -43
- package/src/types/worker.types.ts +0 -51
- /package/src/entry/{sd-cli-ai-command.ts → SdCliAiCommand.ts} +0 -0
- /package/src/entry/{sd-cli-postinstall.ts → SdCliPostinstall.ts} +0 -0
- /package/src/pkg-builders/client/{sd-cli-ng-routes.file-generator.ts → SdCliNgRoutesFileGenerator.ts} +0 -0
- /package/src/pkg-builders/lib/{sd-cli-index.file-generator.ts → SdCliIndexFileGenerator.ts} +0 -0
- /package/src/utils/{sd-cli-performance-time.ts → SdCliPerformanceTimer.ts} +0 -0
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
/* eslint-disable no-console */
|
|
2
|
-
import { SyntaxKind } from "ts-morph";
|
|
3
|
-
import getTsMortphSourceFiles from "./get-ts-morph-source-files";
|
|
4
|
-
function parseReplacements(input) {
|
|
5
|
-
return Object.entries(input).map(([oldKey, newValue]) => {
|
|
6
|
-
const [oldModule, oldName] = oldKey.split("#");
|
|
7
|
-
const [newModule, newName] = newValue.split("#");
|
|
8
|
-
return { oldModule, oldName, newModule, newName };
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
export default function convertSymbols(raw) {
|
|
12
|
-
const replacements = parseReplacements(raw);
|
|
13
|
-
const sourceFiles = getTsMortphSourceFiles();
|
|
14
|
-
for (const sourceFile of sourceFiles) {
|
|
15
|
-
let changed = false;
|
|
16
|
-
const usedReplacements = new Set(); // 실제 사용된 newModule#newName 추적
|
|
17
|
-
const existingImportMap = new Map();
|
|
18
|
-
// 1. 참조 치환 (Identifier)
|
|
19
|
-
sourceFile.forEachDescendant((node) => {
|
|
20
|
-
if (node.getKind() !== SyntaxKind.Identifier)
|
|
21
|
-
return;
|
|
22
|
-
if (node.getFirstAncestorByKind(SyntaxKind.ImportSpecifier))
|
|
23
|
-
return;
|
|
24
|
-
const identifier = node;
|
|
25
|
-
const name = identifier.getText();
|
|
26
|
-
const symbol = identifier.getSymbol();
|
|
27
|
-
if (!symbol)
|
|
28
|
-
return;
|
|
29
|
-
const declarations = symbol.getDeclarations();
|
|
30
|
-
if (declarations.length === 0)
|
|
31
|
-
return;
|
|
32
|
-
const importDecl = declarations[0].getFirstAncestorByKind(SyntaxKind.ImportDeclaration);
|
|
33
|
-
if (!importDecl)
|
|
34
|
-
return;
|
|
35
|
-
const importModule = importDecl.getModuleSpecifierValue();
|
|
36
|
-
const match = replacements.find(r => r.oldModule === importModule && r.oldName === name);
|
|
37
|
-
if (!match)
|
|
38
|
-
return;
|
|
39
|
-
identifier.replaceWithText(match.newName);
|
|
40
|
-
usedReplacements.add(`${match.newModule}#${match.newName}`);
|
|
41
|
-
changed = true;
|
|
42
|
-
console.log(`[ref] ${sourceFile.getBaseName()} :: ${importModule} :: ${name} → ${match.newName}`);
|
|
43
|
-
});
|
|
44
|
-
// 2. import 교체
|
|
45
|
-
for (const importDecl of sourceFile.getImportDeclarations()) {
|
|
46
|
-
const specifier = importDecl.getModuleSpecifierValue();
|
|
47
|
-
const namedImports = importDecl.getNamedImports();
|
|
48
|
-
for (const ni of namedImports) {
|
|
49
|
-
const oldName = ni.getName();
|
|
50
|
-
const match = replacements.find(r => r.oldModule === specifier && r.oldName === oldName);
|
|
51
|
-
if (match) {
|
|
52
|
-
ni.remove();
|
|
53
|
-
// 만약 모듈이 동일하다면 즉시 대체
|
|
54
|
-
if (match.oldModule === match.newModule) {
|
|
55
|
-
importDecl.addNamedImport(match.newName);
|
|
56
|
-
}
|
|
57
|
-
else {
|
|
58
|
-
// 새로 import할 목록에 기록
|
|
59
|
-
usedReplacements.add(`${match.newModule}#${match.newName}`);
|
|
60
|
-
}
|
|
61
|
-
changed = true;
|
|
62
|
-
console.log(`[import] ${sourceFile.getBaseName()} :: ${specifier} :: ${oldName} → ${match.newName}`);
|
|
63
|
-
}
|
|
64
|
-
else {
|
|
65
|
-
// 기존 import 유지 기록
|
|
66
|
-
if (!existingImportMap.has(specifier)) {
|
|
67
|
-
existingImportMap.set(specifier, new Set());
|
|
68
|
-
}
|
|
69
|
-
existingImportMap.get(specifier).add(oldName);
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
// 3. 필요 시 새 import 추가
|
|
74
|
-
for (const key of usedReplacements) {
|
|
75
|
-
const [newModule, newName] = key.split("#");
|
|
76
|
-
const already = existingImportMap.get(newModule)?.has(newName);
|
|
77
|
-
const existsInFile = sourceFile.getImportDeclarations().some(decl => decl.getModuleSpecifierValue() === newModule &&
|
|
78
|
-
decl.getNamedImports().some(ni => ni.getName() === newName));
|
|
79
|
-
if (already || existsInFile)
|
|
80
|
-
continue;
|
|
81
|
-
sourceFile.addImportDeclaration({
|
|
82
|
-
moduleSpecifier: newModule,
|
|
83
|
-
namedImports: [newName],
|
|
84
|
-
});
|
|
85
|
-
changed = true;
|
|
86
|
-
console.log(`[new-import] ${sourceFile.getBaseName()} :: ${newModule} :: ${newName}`);
|
|
87
|
-
}
|
|
88
|
-
if (changed) {
|
|
89
|
-
sourceFile.saveSync();
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
//# sourceMappingURL=convert-symbol.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"convert-symbol.js","sourceRoot":"","sources":["../../../src/fix/core/convert-symbol.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default function getTsMortphSourceFiles(): import("ts-morph").SourceFile[];
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { Project } from "ts-morph";
|
|
2
|
-
export default function getTsMortphSourceFiles() {
|
|
3
|
-
const project = new Project({
|
|
4
|
-
tsConfigFilePath: "tsconfig.base.json",
|
|
5
|
-
});
|
|
6
|
-
return project.getSourceFiles("packages/*/src/**/*.ts");
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=get-ts-morph-source-files.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-ts-morph-source-files.js","sourceRoot":"","sources":["../../../src/fix/core/get-ts-morph-source-files.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnC,MAAM,CAAC,OAAO,UAAU,sBAAsB;IAC5C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC;QAC1B,gBAAgB,EAAE,oBAAoB;KACvC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC,cAAc,CAAC,wBAAwB,CAAC,CAAC;AAC1D,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default function removeNamedImport(sourceFile: any, moduleSpecifier: any, symbolName: any): void;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export default function removeNamedImport(sourceFile, moduleSpecifier, symbolName) {
|
|
2
|
-
const importDecl = sourceFile.getImportDeclaration((d) => d.getModuleSpecifierValue() === moduleSpecifier);
|
|
3
|
-
if (importDecl == null)
|
|
4
|
-
return;
|
|
5
|
-
importDecl
|
|
6
|
-
.getNamedImports()
|
|
7
|
-
.filter((n) => n.getName() === symbolName)
|
|
8
|
-
.forEach((n) => n.remove());
|
|
9
|
-
// 만약 named import가 모두 사라지면 import문 자체 삭제
|
|
10
|
-
if (importDecl.getNamedImports().length === 0) {
|
|
11
|
-
importDecl.remove();
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=remove-named-import.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"remove-named-import.js","sourceRoot":"","sources":["../../../src/fix/core/remove-named-import.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,UAAU,EAAE,eAAe,EAAE,UAAU;IAC/E,MAAM,UAAU,GAAG,UAAU,CAAC,oBAAoB,CAChD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,uBAAuB,EAAE,KAAK,eAAe,CACvD,CAAC;IACF,IAAI,UAAU,IAAI,IAAI;QAAE,OAAO;IAC/B,UAAU;SACP,eAAe,EAAE;SACjB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,UAAU,CAAC;SACzC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IAC9B,yCAAyC;IACzC,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9C,UAAU,CAAC,MAAM,EAAE,CAAC;IACtB,CAAC;AACH,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default function removeSymbols(symbols: string[]): void;
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
/* eslint-disable no-console */
|
|
2
|
-
import { SyntaxKind } from "ts-morph";
|
|
3
|
-
import getTsMortphSourceFiles from "./get-ts-morph-source-files";
|
|
4
|
-
function parseTargets(symbols) {
|
|
5
|
-
return symbols.map((symbol) => {
|
|
6
|
-
const [importSource, symbolName] = symbol.split("#");
|
|
7
|
-
return { importSource, symbolName };
|
|
8
|
-
});
|
|
9
|
-
}
|
|
10
|
-
export default function removeSymbols(symbols) {
|
|
11
|
-
const targets = parseTargets(symbols);
|
|
12
|
-
const sourceFiles = getTsMortphSourceFiles();
|
|
13
|
-
for (const sourceFile of sourceFiles) {
|
|
14
|
-
let changed = false;
|
|
15
|
-
for (const { importSource, symbolName } of targets) {
|
|
16
|
-
// 1. Import 제거
|
|
17
|
-
for (const importDecl of sourceFile.getImportDeclarations()) {
|
|
18
|
-
if (importDecl.getModuleSpecifierValue() !== importSource)
|
|
19
|
-
continue;
|
|
20
|
-
for (const namedImport of importDecl.getNamedImports()) {
|
|
21
|
-
if (namedImport.getName() === symbolName) {
|
|
22
|
-
console.log(`[import] ${sourceFile.getBaseName()} :: ${importSource} :: removed '${symbolName}'`);
|
|
23
|
-
namedImport.remove();
|
|
24
|
-
changed = true;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
if (importDecl.getNamedImports().length === 0) {
|
|
28
|
-
console.log(`[import] ${sourceFile.getBaseName()} :: removed empty import from '${importSource}'`);
|
|
29
|
-
importDecl.remove();
|
|
30
|
-
changed = true;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
// 2. 타입 참조 제거
|
|
34
|
-
sourceFile.forEachDescendant((node) => {
|
|
35
|
-
if (node.getKind() !== SyntaxKind.TypeReference)
|
|
36
|
-
return;
|
|
37
|
-
const typeNode = node;
|
|
38
|
-
const typeName = typeNode.getTypeName().getText();
|
|
39
|
-
if (typeName !== symbolName)
|
|
40
|
-
return;
|
|
41
|
-
const decl = node.getFirstAncestor((a) => a.getKind() === SyntaxKind.VariableStatement ||
|
|
42
|
-
a.getKind() === SyntaxKind.Parameter ||
|
|
43
|
-
a.getKind() === SyntaxKind.PropertyDeclaration);
|
|
44
|
-
if (decl) {
|
|
45
|
-
console.log(`[type] ${sourceFile.getBaseName()} :: removed type usage of '${symbolName}'`);
|
|
46
|
-
const removable = decl.asKind(SyntaxKind.VariableStatement)
|
|
47
|
-
?? decl.asKind(SyntaxKind.Parameter)
|
|
48
|
-
?? decl.asKind(SyntaxKind.PropertyDeclaration);
|
|
49
|
-
if (removable) {
|
|
50
|
-
removable.remove();
|
|
51
|
-
changed = true;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
});
|
|
55
|
-
// 3. ArrayLiteral 내 사용 제거 (예: imports: [SdButtonControl])
|
|
56
|
-
sourceFile.forEachDescendant((node) => {
|
|
57
|
-
if (node.getKind() !== SyntaxKind.ArrayLiteralExpression)
|
|
58
|
-
return;
|
|
59
|
-
const arr = node;
|
|
60
|
-
const elements = arr.getElements();
|
|
61
|
-
for (const el of elements) {
|
|
62
|
-
if (el.getKind() === SyntaxKind.Identifier && el.getText() === symbolName) {
|
|
63
|
-
console.log(`[usage] ${sourceFile.getBaseName()} :: removed '${symbolName}' from array`);
|
|
64
|
-
arr.removeElement(el);
|
|
65
|
-
changed = true;
|
|
66
|
-
break;
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
if (changed) {
|
|
72
|
-
sourceFile.saveSync();
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
//# sourceMappingURL=remove-symbol.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"remove-symbol.js","sourceRoot":"","sources":["../../../src/fix/core/remove-symbol.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default function removeSdAngularSymbolNames(): void;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/* eslint-disable no-console */
|
|
2
|
-
import removeSymbols from "./core/remove-symbol";
|
|
3
|
-
export default function removeSdAngularSymbolNames() {
|
|
4
|
-
removeSymbols([
|
|
5
|
-
"@simplysm/sd-angular#TemplateTargetDirective",
|
|
6
|
-
]);
|
|
7
|
-
console.log("[완료] SdAngular 심볼 삭제 완료");
|
|
8
|
-
}
|
|
9
|
-
//# sourceMappingURL=remove-sd-angular-symbol-names.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"remove-sd-angular-symbol-names.js","sourceRoot":"","sources":["../../src/fix/remove-sd-angular-symbol-names.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAE/B,OAAO,aAAa,MAAM,sBAAsB,CAAC;AAEjD,MAAM,CAAC,OAAO,UAAU,0BAA0B;IAChD,aAAa,CAAC;QACZ,8CAA8C;KAC/C,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;AACzC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function removeUnusedImports(): void;
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
/* eslint-disable no-console */
|
|
2
|
-
import { SyntaxKind } from "ts-morph";
|
|
3
|
-
import getTsMorphSourceFiles from "./core/get-ts-morph-source-files";
|
|
4
|
-
export function removeUnusedImports() {
|
|
5
|
-
const sourceFiles = getTsMorphSourceFiles();
|
|
6
|
-
let totalChanged = 0;
|
|
7
|
-
for (const sourceFile of sourceFiles) {
|
|
8
|
-
let changed = false;
|
|
9
|
-
for (const importDecl of sourceFile.getImportDeclarations()) {
|
|
10
|
-
// ⚠️ 사이드이펙트 import는 유지
|
|
11
|
-
if (importDecl.getNamedImports().length === 0) {
|
|
12
|
-
continue;
|
|
13
|
-
}
|
|
14
|
-
// ⚙️ Named import 제거
|
|
15
|
-
for (const namedImport of importDecl.getNamedImports()) {
|
|
16
|
-
const name = namedImport.getName();
|
|
17
|
-
const used = sourceFile
|
|
18
|
-
.getDescendantsOfKind(SyntaxKind.Identifier)
|
|
19
|
-
.some((id) => id.getText() === name && id !== namedImport.getNameNode());
|
|
20
|
-
if (!used) {
|
|
21
|
-
namedImport.remove();
|
|
22
|
-
changed = true;
|
|
23
|
-
console.log(`[정리됨] ${sourceFile.getBaseName()} → 미사용 import: ${name}`);
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
// 모든 import가 제거된 경우 전체 import 선언 제거
|
|
27
|
-
if (importDecl.getNamedImports().length === 0) {
|
|
28
|
-
importDecl.remove();
|
|
29
|
-
changed = true;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
if (changed) {
|
|
33
|
-
sourceFile.saveSync();
|
|
34
|
-
totalChanged++;
|
|
35
|
-
console.log(`[updated] ${sourceFile.getBaseName()} :: import 정리 완료`);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
console.log(totalChanged > 0
|
|
39
|
-
? `\n[완료] 미사용 import 정리 완료 (총 ${totalChanged}개)`
|
|
40
|
-
: `[완료] 정리 대상 없음`);
|
|
41
|
-
}
|
|
42
|
-
//# sourceMappingURL=remove-unused-imports.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"remove-unused-imports.js","sourceRoot":"","sources":["../../src/fix/remove-unused-imports.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,qBAAqB,MAAM,kCAAkC,CAAC;AAErE,MAAM,UAAU,mBAAmB;IACjC,MAAM,WAAW,GAAG,qBAAqB,EAAE,CAAC;IAC5C,IAAI,YAAY,GAAG,CAAC,CAAC;IAErB,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,IAAI,OAAO,GAAG,KAAK,CAAC;QAEpB,KAAK,MAAM,UAAU,IAAI,UAAU,CAAC,qBAAqB,EAAE,EAAE,CAAC;YAC5D,uBAAuB;YACvB,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9C,SAAS;YACX,CAAC;YAED,qBAAqB;YACrB,KAAK,MAAM,WAAW,IAAI,UAAU,CAAC,eAAe,EAAE,EAAE,CAAC;gBACvD,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC;gBACnC,MAAM,IAAI,GAAG,UAAU;qBACpB,oBAAoB,CAAC,UAAU,CAAC,UAAU,CAAC;qBAC3C,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC;gBAC3E,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,WAAW,CAAC,MAAM,EAAE,CAAC;oBACrB,OAAO,GAAG,IAAI,CAAC;oBACf,OAAO,CAAC,GAAG,CAAC,SAAS,UAAU,CAAC,WAAW,EAAE,kBAAkB,IAAI,EAAE,CAAC,CAAC;gBACzE,CAAC;YACH,CAAC;YAED,oCAAoC;YACpC,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9C,UAAU,CAAC,MAAM,EAAE,CAAC;gBACpB,OAAO,GAAG,IAAI,CAAC;YACjB,CAAC;QACH,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACZ,UAAU,CAAC,QAAQ,EAAE,CAAC;YACtB,YAAY,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,aAAa,UAAU,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CACT,YAAY,GAAG,CAAC;QACd,CAAC,CAAC,8BAA8B,YAAY,IAAI;QAChD,CAAC,CAAC,eAAe,CACpB,CAAC;AACJ,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function removeUnusedInjects(): void;
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
/* eslint-disable no-console */
|
|
2
|
-
import { SyntaxKind } from "ts-morph";
|
|
3
|
-
import getTsMorphSourceFiles from "./core/get-ts-morph-source-files";
|
|
4
|
-
export function removeUnusedInjects() {
|
|
5
|
-
const sourceFiles = getTsMorphSourceFiles();
|
|
6
|
-
let totalChanged = 0;
|
|
7
|
-
for (const sourceFile of sourceFiles) {
|
|
8
|
-
let changed = false;
|
|
9
|
-
for (const cls of sourceFile.getClasses()) {
|
|
10
|
-
const injectVars = cls
|
|
11
|
-
.getInstanceProperties()
|
|
12
|
-
.filter((p) => p.isKind(SyntaxKind.PropertyDeclaration) &&
|
|
13
|
-
p.getInitializer()?.isKind(SyntaxKind.CallExpression) &&
|
|
14
|
-
p.getInitializer().getText().startsWith("inject("));
|
|
15
|
-
for (const propDecl of injectVars) {
|
|
16
|
-
const name = propDecl.getName();
|
|
17
|
-
// 클래스 전체에서 해당 변수명이 참조되고 있는지 확인
|
|
18
|
-
const references = cls
|
|
19
|
-
.getDescendants()
|
|
20
|
-
.filter((desc) => desc.getText() === name && desc !== propDecl.getNameNode());
|
|
21
|
-
if (references.length === 0) {
|
|
22
|
-
propDecl.remove();
|
|
23
|
-
changed = true;
|
|
24
|
-
console.log(`[정리됨] ${sourceFile.getBaseName()} → 미사용 inject: ${name}`);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
if (changed) {
|
|
29
|
-
sourceFile.saveSync();
|
|
30
|
-
totalChanged++;
|
|
31
|
-
console.log(`[updated] ${sourceFile.getBaseName()} :: inject 정리 완료`);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
console.log(totalChanged > 0
|
|
35
|
-
? `\n[완료] 미사용 inject 정리 완료 (총 ${totalChanged}개)`
|
|
36
|
-
: `[완료] 정리 대상 없음`);
|
|
37
|
-
}
|
|
38
|
-
//# sourceMappingURL=remove-unused-injects.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"remove-unused-injects.js","sourceRoot":"","sources":["../../src/fix/remove-unused-injects.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,qBAAqB,MAAM,kCAAkC,CAAC;AAErE,MAAM,UAAU,mBAAmB;IACjC,MAAM,WAAW,GAAG,qBAAqB,EAAE,CAAC;IAC5C,IAAI,YAAY,GAAG,CAAC,CAAC;IAErB,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,IAAI,OAAO,GAAG,KAAK,CAAC;QAEpB,KAAK,MAAM,GAAG,IAAI,UAAU,CAAC,UAAU,EAAE,EAAE,CAAC;YAC1C,MAAM,UAAU,GAAG,GAAG;iBACnB,qBAAqB,EAAE;iBACvB,MAAM,CACL,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,mBAAmB,CAAC;gBACxC,CAAC,CAAC,cAAc,EAAE,EAAE,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC;gBACrD,CAAC,CAAC,cAAc,EAAG,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CACtD,CAAC;YAEJ,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;gBAClC,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;gBAEhC,+BAA+B;gBAC/B,MAAM,UAAU,GAAG,GAAG;qBACnB,cAAc,EAAE;qBAChB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI,IAAI,IAAI,KAAK,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;gBAEhF,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC5B,QAAQ,CAAC,MAAM,EAAE,CAAC;oBAClB,OAAO,GAAG,IAAI,CAAC;oBACf,OAAO,CAAC,GAAG,CAAC,SAAS,UAAU,CAAC,WAAW,EAAE,kBAAkB,IAAI,EAAE,CAAC,CAAC;gBACzE,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACZ,UAAU,CAAC,QAAQ,EAAE,CAAC;YACtB,YAAY,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,aAAa,UAAU,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CACT,YAAY,GAAG,CAAC;QACd,CAAC,CAAC,8BAA8B,YAAY,IAAI;QAChD,CAAC,CAAC,eAAe,CACpB,CAAC;AACJ,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default function removeUnusedProtectedReadonly(): void;
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
/* eslint-disable no-console */
|
|
2
|
-
import { SyntaxKind } from "ts-morph";
|
|
3
|
-
import getTsMortphSourceFiles from "./core/get-ts-morph-source-files";
|
|
4
|
-
export default function removeUnusedProtectedReadonly() {
|
|
5
|
-
const sourceFiles = getTsMortphSourceFiles();
|
|
6
|
-
for (const sourceFile of sourceFiles) {
|
|
7
|
-
const classes = sourceFile.getClasses();
|
|
8
|
-
for (const cls of classes) {
|
|
9
|
-
// @Component 데코레이터가 있는 클래스만 대상
|
|
10
|
-
const componentDecorator = cls.getDecorator("Component");
|
|
11
|
-
if (!componentDecorator)
|
|
12
|
-
continue;
|
|
13
|
-
// 템플릿 문자열 추출
|
|
14
|
-
const templateArg = componentDecorator
|
|
15
|
-
.getArguments()
|
|
16
|
-
.find((arg) => arg.getKind() === SyntaxKind.ObjectLiteralExpression);
|
|
17
|
-
if (!templateArg || !templateArg.asKind(SyntaxKind.ObjectLiteralExpression))
|
|
18
|
-
continue;
|
|
19
|
-
const templateProp = templateArg
|
|
20
|
-
.asKindOrThrow(SyntaxKind.ObjectLiteralExpression)
|
|
21
|
-
.getProperty("template");
|
|
22
|
-
if (!templateProp || !templateProp.asKind(SyntaxKind.PropertyAssignment))
|
|
23
|
-
continue;
|
|
24
|
-
const initializer = templateProp
|
|
25
|
-
.asKindOrThrow(SyntaxKind.PropertyAssignment)
|
|
26
|
-
.getInitializerIfKind(SyntaxKind.NoSubstitutionTemplateLiteral) ??
|
|
27
|
-
templateProp
|
|
28
|
-
.asKindOrThrow(SyntaxKind.PropertyAssignment)
|
|
29
|
-
.getInitializerIfKind(SyntaxKind.TemplateExpression) ??
|
|
30
|
-
templateProp
|
|
31
|
-
.asKindOrThrow(SyntaxKind.PropertyAssignment)
|
|
32
|
-
.getInitializerIfKind(SyntaxKind.StringLiteral);
|
|
33
|
-
const templateText = initializer?.getText().slice(1, -1); // `...` 또는 '...' 제거
|
|
34
|
-
if (templateText == null)
|
|
35
|
-
continue;
|
|
36
|
-
// protected readonly 필드 중 템플릿에서 사용되지 않은 것 삭제
|
|
37
|
-
const protectedReadonlyFields = cls
|
|
38
|
-
.getProperties()
|
|
39
|
-
.filter((prop) => prop.getScope() === "protected" && prop.isReadonly() && !prop.isStatic());
|
|
40
|
-
for (const field of protectedReadonlyFields) {
|
|
41
|
-
const name = field.getName();
|
|
42
|
-
const usedInTemplate = templateText.includes(name) || new RegExp(`\\b${name}\\b`).test(templateText);
|
|
43
|
-
if (!usedInTemplate) {
|
|
44
|
-
console.log(`🧹 Removing unused field: ${name} in ${sourceFile.getBaseName()}`);
|
|
45
|
-
field.remove();
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
sourceFile.saveSync();
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
//# sourceMappingURL=remove-unused-protected-readonly.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"remove-unused-protected-readonly.js","sourceRoot":"","sources":["../../src/fix/remove-unused-protected-readonly.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,sBAAsB,MAAM,kCAAkC,CAAC;AAEtE,MAAM,CAAC,OAAO,UAAU,6BAA6B;IACnD,MAAM,WAAW,GAAG,sBAAsB,EAAE,CAAC;IAE7C,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC;QAExC,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YAC1B,+BAA+B;YAC/B,MAAM,kBAAkB,GAAG,GAAG,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;YACzD,IAAI,CAAC,kBAAkB;gBAAE,SAAS;YAElC,aAAa;YACb,MAAM,WAAW,GAAG,kBAAkB;iBACnC,YAAY,EAAE;iBACd,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,UAAU,CAAC,uBAAuB,CAAC,CAAC;YAEvE,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,uBAAuB,CAAC;gBAAE,SAAS;YAEtF,MAAM,YAAY,GAAG,WAAW;iBAC7B,aAAa,CAAC,UAAU,CAAC,uBAAuB,CAAC;iBACjD,WAAW,CAAC,UAAU,CAAC,CAAC;YAE3B,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC;gBAAE,SAAS;YAEnF,MAAM,WAAW,GACf,YAAY;iBACT,aAAa,CAAC,UAAU,CAAC,kBAAkB,CAAC;iBAC5C,oBAAoB,CAAC,UAAU,CAAC,6BAA6B,CAAC;gBACjE,YAAY;qBACT,aAAa,CAAC,UAAU,CAAC,kBAAkB,CAAC;qBAC5C,oBAAoB,CAAC,UAAU,CAAC,kBAAkB,CAAC;gBACtD,YAAY;qBACT,aAAa,CAAC,UAAU,CAAC,kBAAkB,CAAC;qBAC5C,oBAAoB,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;YAEpD,MAAM,YAAY,GAAG,WAAW,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,oBAAoB;YAC9E,IAAI,YAAY,IAAI,IAAI;gBAAE,SAAS;YAEnC,6CAA6C;YAC7C,MAAM,uBAAuB,GAAG,GAAG;iBAChC,aAAa,EAAE;iBACf,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,WAAW,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YAE9F,KAAK,MAAM,KAAK,IAAI,uBAAuB,EAAE,CAAC;gBAC5C,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;gBAE7B,MAAM,cAAc,GAClB,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAEhF,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,OAAO,CAAC,GAAG,CAAC,6BAA6B,IAAI,OAAO,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;oBAChF,KAAK,CAAC,MAAM,EAAE,CAAC;gBACjB,CAAC;YACH,CAAC;QACH,CAAC;QAED,UAAU,CAAC,QAAQ,EAAE,CAAC;IACxB,CAAC;AACH,CAAC"}
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import path from "path";
|
|
2
|
-
import { FsUtils, HashUtils, PathUtils, SdFsWatcher } from "@simplysm/sd-core-node";
|
|
3
|
-
import { StringUtils } from "@simplysm/sd-core-common";
|
|
4
|
-
export class SdCliNgRoutesFileGenerator {
|
|
5
|
-
watch(pkgPath, noLazyRoute) {
|
|
6
|
-
const routesFilePath = path.resolve(pkgPath, "src/routes.ts");
|
|
7
|
-
this.cachedHash = FsUtils.exists(routesFilePath)
|
|
8
|
-
? HashUtils.get(FsUtils.readFile(routesFilePath))
|
|
9
|
-
: undefined;
|
|
10
|
-
SdFsWatcher.watch([path.resolve(pkgPath, "src")], {
|
|
11
|
-
ignored: [routesFilePath],
|
|
12
|
-
}).onChange({ delay: 50 }, (changeInfos) => {
|
|
13
|
-
if (changeInfos.some((item) => ["add", "addDir", "unlink", "unlinkDir"].includes(item.event)))
|
|
14
|
-
this.run(pkgPath, noLazyRoute);
|
|
15
|
-
});
|
|
16
|
-
this.run(pkgPath, noLazyRoute);
|
|
17
|
-
}
|
|
18
|
-
run(pkgPath, noLazyRoute) {
|
|
19
|
-
const appDirPath = path.resolve(pkgPath, "src/app");
|
|
20
|
-
const routesFilePath = path.resolve(pkgPath, "src/routes.ts");
|
|
21
|
-
// 내부 파일들 import
|
|
22
|
-
const result = new Map();
|
|
23
|
-
const filePaths = FsUtils.glob(path.resolve(appDirPath, "**/*{P,.p}age.ts"));
|
|
24
|
-
for (const filePath of filePaths.orderBy()) {
|
|
25
|
-
const relModulePath = PathUtils.posix(path.relative(appDirPath, filePath)).slice(0, -3);
|
|
26
|
-
const codes = relModulePath
|
|
27
|
-
.replace(/\.page$/, "")
|
|
28
|
-
.replace(/Page$/, "")
|
|
29
|
-
.split("/");
|
|
30
|
-
// .map((item) => StringUtil.toKebabCase(item));
|
|
31
|
-
let cursorItem;
|
|
32
|
-
let cursor = result;
|
|
33
|
-
for (let i = 0; i < codes.length; i++) {
|
|
34
|
-
if (i === codes.length - 2)
|
|
35
|
-
continue; // 마지막 모음 폴더 무시.
|
|
36
|
-
const code = codes[i];
|
|
37
|
-
cursorItem = cursor.getOrCreate(StringUtils.toKebabCase(code), { children: new Map() });
|
|
38
|
-
cursor = cursorItem.children;
|
|
39
|
-
}
|
|
40
|
-
cursorItem.relModulePath = relModulePath;
|
|
41
|
-
}
|
|
42
|
-
const imports = [];
|
|
43
|
-
const fn = (currInfo, indent) => {
|
|
44
|
-
const indentStr = new Array(indent).fill(" ").join("");
|
|
45
|
-
let cont = "";
|
|
46
|
-
for (const [key, val] of currInfo) {
|
|
47
|
-
cont += indentStr + "{\n";
|
|
48
|
-
cont += indentStr + ` path: "${key}",\n`;
|
|
49
|
-
if (val.relModulePath != null) {
|
|
50
|
-
if (noLazyRoute) {
|
|
51
|
-
cont +=
|
|
52
|
-
indentStr +
|
|
53
|
-
` component: ${StringUtils.toPascalCase(path.basename(val.relModulePath))},\n`;
|
|
54
|
-
imports.push(`import { ${StringUtils.toPascalCase(path.basename(val.relModulePath))} } from "./app/${val.relModulePath}";`);
|
|
55
|
-
}
|
|
56
|
-
else {
|
|
57
|
-
cont +=
|
|
58
|
-
indentStr +
|
|
59
|
-
` loadComponent: () => import("./app/${val.relModulePath}").then((m) => m.${StringUtils.toPascalCase(path.basename(val.relModulePath))}),\n`;
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
if (val.children.size > 0) {
|
|
63
|
-
cont += indentStr + ` children: [\n`;
|
|
64
|
-
cont += fn(val.children, indent + 4) + "\n";
|
|
65
|
-
cont += indentStr + ` ]\n`;
|
|
66
|
-
}
|
|
67
|
-
cont += indentStr + "},\n";
|
|
68
|
-
}
|
|
69
|
-
return cont.trimEnd();
|
|
70
|
-
};
|
|
71
|
-
const routes = fn(result, 2);
|
|
72
|
-
const content = `
|
|
73
|
-
import { Routes } from "@angular/router";
|
|
74
|
-
${imports.join("\n")}
|
|
75
|
-
export const routes: Routes = [
|
|
76
|
-
${routes}
|
|
77
|
-
];`.trim();
|
|
78
|
-
const currHash = HashUtils.get(content);
|
|
79
|
-
if (currHash !== this.cachedHash) {
|
|
80
|
-
FsUtils.writeFile(routesFilePath, content);
|
|
81
|
-
this.cachedHash = currHash;
|
|
82
|
-
return { changed: true, filePath: routesFilePath, content };
|
|
83
|
-
}
|
|
84
|
-
else {
|
|
85
|
-
return { changed: false, filePath: routesFilePath, content };
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
//# sourceMappingURL=sd-cli-ng-routes.file-generator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sd-cli-ng-routes.file-generator.js","sourceRoot":"","sources":["../../../src/pkg-builders/client/sd-cli-ng-routes.file-generator.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,MAAM,OAAO,0BAA0B;IAGrC,KAAK,CAAC,OAAe,EAAE,WAAqB;QAC1C,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QAC9D,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC;YAC9C,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;YACjD,CAAC,CAAC,SAAS,CAAC;QAEd,WAAW,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE;YAChD,OAAO,EAAE,CAAC,cAAc,CAAC;SAC1B,CAAC,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAAC,WAAW,EAAE,EAAE;YACzC,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC3F,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACjC,CAAC;IAED,GAAG,CACD,OAAe,EACf,WAAqB;QAErB,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QACpD,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QAE9D,gBAAgB;QAChB,MAAM,MAAM,GAAU,IAAI,GAAG,EAAE,CAAC;QAChC,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC,CAAC;QAC7E,KAAK,MAAM,QAAQ,IAAI,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;YAC3C,MAAM,aAAa,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACxF,MAAM,KAAK,GAAG,aAAa;iBACxB,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;iBACtB,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;iBACpB,KAAK,CAAC,GAAG,CAAC,CAAC;YACd,gDAAgD;YAEhD,IAAI,UAAwD,CAAC;YAC7D,IAAI,MAAM,GAAG,MAAM,CAAC;YAEpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACtC,IAAI,CAAC,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC;oBAAE,SAAS,CAAC,gBAAgB;gBACtD,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACtB,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;gBACxF,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC;YAC/B,CAAC;YAED,UAAU,CAAC,aAAa,GAAG,aAAa,CAAC;QAC3C,CAAC;QAED,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,MAAM,EAAE,GAAG,CAAC,QAAe,EAAE,MAAc,EAAU,EAAE;YACrD,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAEvD,IAAI,IAAI,GAAG,EAAE,CAAC;YACd,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,QAAQ,EAAE,CAAC;gBAClC,IAAI,IAAI,SAAS,GAAG,KAAK,CAAC;gBAC1B,IAAI,IAAI,SAAS,GAAG,YAAY,GAAG,MAAM,CAAC;gBAC1C,IAAI,GAAG,CAAC,aAAa,IAAI,IAAI,EAAE,CAAC;oBAC9B,IAAI,WAAW,EAAE,CAAC;wBAChB,IAAI;4BACF,SAAS;gCACT,gBAAgB,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC;wBAClF,OAAO,CAAC,IAAI,CACV,YAAY,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,kBAAkB,GAAG,CAAC,aAAa,IAAI,CAC9G,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,IAAI;4BACF,SAAS;gCACT,wCAAwC,GAAG,CAAC,aAAa,oBAAoB,WAAW,CAAC,YAAY,CACnG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,CACjC,MAAM,CAAC;oBACZ,CAAC;gBACH,CAAC;gBACD,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;oBAC1B,IAAI,IAAI,SAAS,GAAG,iBAAiB,CAAC;oBACtC,IAAI,IAAI,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;oBAC5C,IAAI,IAAI,SAAS,GAAG,OAAO,CAAC;gBAC9B,CAAC;gBACD,IAAI,IAAI,SAAS,GAAG,MAAM,CAAC;YAC7B,CAAC;YACD,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;QACxB,CAAC,CAAC;QAEF,MAAM,MAAM,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAE7B,MAAM,OAAO,GAAG;;EAElB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;;EAElB,MAAM;GACL,CAAC,IAAI,EAAE,CAAC;QACP,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,QAAQ,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;YACjC,OAAO,CAAC,SAAS,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;YAC3C,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;YAC3B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC;QAC/D,CAAC;IACH,CAAC;CACF"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { SdLogger, TNormPath } from "@simplysm/sd-core-node";
|
|
2
|
-
import { BuildRunnerBase, IBuildRunnerRunResult } from "../commons/build-runner.base";
|
|
3
|
-
export declare class SdClientBuildRunner extends BuildRunnerBase<"client"> {
|
|
4
|
-
#private;
|
|
5
|
-
protected _logger: SdLogger;
|
|
6
|
-
protected _runAsync(dev: boolean, emitOnly: boolean, noEmit: boolean, modifiedFileSet?: Set<TNormPath>): Promise<IBuildRunnerRunResult>;
|
|
7
|
-
}
|