@simplysm/sd-cli 12.8.22 → 12.9.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/entry/sd-cli-ai-command.js +2 -1
- package/dist/entry/sd-cli-ai-command.js.map +1 -1
- package/dist/entry/sd-cli-cordova.d.ts +1 -1
- package/dist/entry/sd-cli-cordova.js +1 -1
- package/dist/entry/sd-cli-cordova.js.map +1 -1
- package/dist/entry/sd-cli-electron.d.ts +6 -6
- package/dist/entry/sd-cli-electron.js +15 -9
- package/dist/entry/sd-cli-electron.js.map +1 -1
- package/dist/entry/sd-cli-local-update.d.ts +5 -5
- package/dist/entry/sd-cli-local-update.js +8 -12
- package/dist/entry/sd-cli-local-update.js.map +1 -1
- package/dist/entry/sd-cli-project.d.ts +11 -11
- package/dist/entry/sd-cli-project.js +11 -14
- package/dist/entry/sd-cli-project.js.map +1 -1
- package/dist/entry/utils/loadProjConfAsync.d.ts +5 -0
- package/dist/entry/utils/loadProjConfAsync.js +8 -0
- package/dist/entry/utils/loadProjConfAsync.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/pkg-builders/client/sd-ng.bundler-context.d.ts +6 -5
- package/dist/pkg-builders/client/sd-ng.bundler-context.js +6 -6
- package/dist/pkg-builders/client/sd-ng.bundler-context.js.map +1 -1
- package/dist/pkg-builders/client/sd-ng.bundler.d.ts +14 -13
- package/dist/pkg-builders/client/sd-ng.bundler.js +4 -1
- package/dist/pkg-builders/client/sd-ng.bundler.js.map +1 -1
- package/dist/pkg-builders/client/sd-ng.plugin-creator.js +4 -88
- package/dist/pkg-builders/client/sd-ng.plugin-creator.js.map +1 -1
- package/dist/pkg-builders/lib/sd-js-lib.build-runner.js.map +1 -1
- package/dist/pkg-builders/lib/sd-ts-lib.build-runner.d.ts +1 -1
- package/dist/pkg-builders/lib/sd-ts-lib.build-runner.js.map +1 -1
- package/dist/pkg-builders/lib/sd-ts-lib.builder.js.map +1 -1
- package/dist/pkg-builders/sd-multi.build-runner.d.ts +4 -0
- package/dist/pkg-builders/sd-multi.build-runner.js +33 -25
- package/dist/pkg-builders/sd-multi.build-runner.js.map +1 -1
- package/dist/pkg-builders/server/sd-server.build-runner.js.map +1 -1
- package/dist/pkg-builders/server/sd-server.bundler.d.ts +6 -2
- package/dist/pkg-builders/server/sd-server.bundler.js +18 -19
- package/dist/pkg-builders/server/sd-server.bundler.js.map +1 -1
- package/dist/sd-cli/vitest.config.d.ts +2 -0
- package/dist/sd-cli/vitest.config.js +15 -0
- package/dist/sd-cli/vitest.config.js.map +1 -0
- package/dist/sd-cli.js +7 -36
- package/dist/sd-cli.js.map +1 -1
- package/dist/ts-compiler/sd-dependency-analyzer.d.ts +8 -0
- package/dist/ts-compiler/sd-dependency-analyzer.js +244 -0
- package/dist/ts-compiler/sd-dependency-analyzer.js.map +1 -0
- package/dist/ts-compiler/sd-dependency-cache.d.ts +27 -0
- package/dist/ts-compiler/sd-dependency-cache.js +232 -0
- package/dist/ts-compiler/sd-dependency-cache.js.map +1 -0
- package/dist/ts-compiler/sd-ts-compiler.d.ts +8 -10
- package/dist/ts-compiler/sd-ts-compiler.js +106 -229
- package/dist/ts-compiler/sd-ts-compiler.js.map +1 -1
- package/dist/types/worker.types.d.ts +19 -0
- package/dist/utils/sd-cli-performance-time.d.ts +2 -1
- package/dist/utils/sd-cli-performance-time.js +9 -9
- package/dist/utils/sd-cli-performance-time.js.map +1 -1
- package/dist/workers/style-bundler.worker.d.ts +1 -0
- package/dist/workers/style-bundler.worker.js +56 -0
- package/dist/workers/style-bundler.worker.js.map +1 -0
- package/package.json +10 -10
- package/src/entry/sd-cli-ai-command.ts +2 -1
- package/src/entry/sd-cli-cordova.ts +5 -5
- package/src/entry/sd-cli-electron.ts +54 -23
- package/src/entry/sd-cli-local-update.ts +14 -29
- package/src/entry/sd-cli-project.ts +24 -41
- package/src/entry/utils/loadProjConfAsync.ts +12 -0
- package/src/pkg-builders/client/sd-client.build-runner.ts +7 -7
- package/src/pkg-builders/client/sd-ng.bundler-context.ts +15 -12
- package/src/pkg-builders/client/sd-ng.bundler.ts +21 -17
- package/src/pkg-builders/client/sd-ng.plugin-creator.ts +4 -93
- package/src/pkg-builders/lib/sd-js-lib.build-runner.ts +6 -6
- package/src/pkg-builders/lib/sd-ts-lib.build-runner.ts +7 -7
- package/src/pkg-builders/lib/sd-ts-lib.builder.ts +1 -1
- package/src/pkg-builders/sd-multi.build-runner.ts +54 -39
- package/src/pkg-builders/server/sd-server.build-runner.ts +6 -6
- package/src/pkg-builders/server/sd-server.bundler.ts +26 -28
- package/src/sd-cli.ts +7 -36
- package/src/ts-compiler/sd-dependency-analyzer.ts +312 -0
- package/src/ts-compiler/sd-dependency-cache.ts +328 -0
- package/src/ts-compiler/sd-ts-compiler.ts +165 -303
- package/src/types/worker.types.ts +17 -0
- package/src/utils/sd-cli-performance-time.ts +9 -9
- package/src/workers/style-bundler.worker.ts +70 -0
- package/tests/deps/sd-dependency-analyzer.spec.ts +272 -0
- package/tests/deps/sd-dependency-cache.spec.ts +144 -0
- package/tsconfig.json +1 -1
- package/tsconfig.test.json +8 -0
- package/vitest.config.ts +15 -0
- package/dist/index.d.ts +0 -34
- package/dist/index.js +0 -35
- package/dist/index.js.map +0 -1
- package/dist/ts-compiler/sd-ts-dependency-analyzer.d.ts +0 -6
- package/dist/ts-compiler/sd-ts-dependency-analyzer.js +0 -141
- package/dist/ts-compiler/sd-ts-dependency-analyzer.js.map +0 -1
- package/src/index.ts +0 -34
- package/src/ts-compiler/sd-ts-dependency-analyzer.ts +0 -185
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
export class SdDependencyCache {
|
|
2
|
+
constructor() {
|
|
3
|
+
this._exportCache = new Map();
|
|
4
|
+
this._importCache = new Map();
|
|
5
|
+
this._reexportCache = new Map();
|
|
6
|
+
this._revDepCache = new Map();
|
|
7
|
+
this._collectedCache = new Set();
|
|
8
|
+
}
|
|
9
|
+
getFiles() {
|
|
10
|
+
return new Set([
|
|
11
|
+
...this._collectedCache.keys(),
|
|
12
|
+
...this._revDepCache.keys(),
|
|
13
|
+
]);
|
|
14
|
+
}
|
|
15
|
+
addCollected(fileNPath) {
|
|
16
|
+
this._collectedCache.add(fileNPath);
|
|
17
|
+
}
|
|
18
|
+
hasCollected(fileNPath) {
|
|
19
|
+
return this._collectedCache.has(fileNPath);
|
|
20
|
+
}
|
|
21
|
+
// export const ...
|
|
22
|
+
// export function/class/interface A ...
|
|
23
|
+
addExport(fileNPath, exportSymbol) {
|
|
24
|
+
const exportSymbolSet = this._exportCache.getOrCreate(fileNPath, new Set());
|
|
25
|
+
exportSymbolSet.add(exportSymbol);
|
|
26
|
+
}
|
|
27
|
+
// import * from "..."
|
|
28
|
+
// import ... from "..."
|
|
29
|
+
// import(...)
|
|
30
|
+
// require(...)
|
|
31
|
+
addImport(fileNPath, targetNPath, targetSymbol) {
|
|
32
|
+
const importTargetMap = this._importCache.getOrCreate(fileNPath, new Map());
|
|
33
|
+
if (targetSymbol === 0) {
|
|
34
|
+
importTargetMap.set(targetNPath, 0);
|
|
35
|
+
this._addRevDep(targetNPath, fileNPath, 0);
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
const importTargetSymbolSet = importTargetMap.getOrCreate(targetNPath, new Set());
|
|
39
|
+
if (importTargetSymbolSet === 0) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
importTargetSymbolSet.add(targetSymbol);
|
|
43
|
+
this._addRevDep(targetNPath, fileNPath, targetSymbol);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
// export * from '...'
|
|
47
|
+
// export { A as B } from '...'
|
|
48
|
+
//
|
|
49
|
+
// exoprt/import에 자동등록하진 않음.
|
|
50
|
+
// 차후 계산시 모든 캐시가 사용되므로,
|
|
51
|
+
// 이 클래스를 사용하는 곳에서는 따로따로 입력하면됨
|
|
52
|
+
addReexport(fileNPath, targetNPath, targetSymbolInfo) {
|
|
53
|
+
const reexportTargetMap = this._reexportCache.getOrCreate(fileNPath, new Map());
|
|
54
|
+
if (targetSymbolInfo === 0) {
|
|
55
|
+
reexportTargetMap.set(targetNPath, 0);
|
|
56
|
+
this._addRevDep(targetNPath, fileNPath, 0);
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
const reexportTargetSymbolInfos = reexportTargetMap.getOrCreate(targetNPath, []);
|
|
60
|
+
if (reexportTargetSymbolInfos === 0) {
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
if (!reexportTargetSymbolInfos.some(item => item.importSymbol === targetSymbolInfo.importSymbol &&
|
|
64
|
+
item.exportSymbol === targetSymbolInfo.exportSymbol)) {
|
|
65
|
+
reexportTargetSymbolInfos.push(targetSymbolInfo);
|
|
66
|
+
this._addRevDep(targetNPath, fileNPath, targetSymbolInfo.importSymbol);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
_addRevDep(targetNPath, fileNPath, exportSymbol) {
|
|
71
|
+
const revDepInfoMap = this._revDepCache.getOrCreate(targetNPath, new Map());
|
|
72
|
+
if (exportSymbol === 0) {
|
|
73
|
+
revDepInfoMap.set(fileNPath, exportSymbol);
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
const exportSymbolSet = revDepInfoMap.getOrCreate(fileNPath, new Set());
|
|
77
|
+
if (exportSymbolSet === 0) {
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
exportSymbolSet.add(exportSymbol);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
getAffectedFileSet(modifiedNPathSet) {
|
|
84
|
+
const visited = new Set();
|
|
85
|
+
const result = new Set(modifiedNPathSet);
|
|
86
|
+
const queue = [];
|
|
87
|
+
const enqueue = (fileNPath, exportSymbol) => {
|
|
88
|
+
const key = `${fileNPath}#${exportSymbol}`;
|
|
89
|
+
if (!visited.has(key)) {
|
|
90
|
+
visited.add(key);
|
|
91
|
+
queue.push({ fileNPath, exportSymbol });
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
for (const modifiedNPath of modifiedNPathSet) {
|
|
95
|
+
const exportSymbols = this._getExportSymbols(modifiedNPath);
|
|
96
|
+
if (exportSymbols.size === 0) {
|
|
97
|
+
enqueue(modifiedNPath, undefined);
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
for (const symbol of exportSymbols) {
|
|
101
|
+
enqueue(modifiedNPath, symbol);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
while (queue.length > 0) {
|
|
106
|
+
const curr = queue.shift();
|
|
107
|
+
/*const key = curr.fileNPath + "#" + curr.exportSymbol;
|
|
108
|
+
if (visited.has(key)) continue;
|
|
109
|
+
visited.add(key);*/
|
|
110
|
+
const revDepInfoMap = this._revDepCache.get(curr.fileNPath);
|
|
111
|
+
if (!revDepInfoMap)
|
|
112
|
+
continue;
|
|
113
|
+
for (const [revDepFileNPath, revDepInfo] of revDepInfoMap) {
|
|
114
|
+
if (curr.exportSymbol != null) {
|
|
115
|
+
// curr의 export를 토대로 revDep이 사용하고 있는지 체크
|
|
116
|
+
// curr.exportSymbol 와 revDev의 importSymbol은 같다
|
|
117
|
+
const hasImportSymbol = revDepInfo === 0 || revDepInfo.has(curr.exportSymbol);
|
|
118
|
+
if (hasImportSymbol) {
|
|
119
|
+
result.add(revDepFileNPath);
|
|
120
|
+
// 하위 Deps를 queue에 넣기전 export명칭 변환 (이름을 변경한 reexport일 경우 필요)
|
|
121
|
+
const exportSymbol = this._convertImportSymbolToExportSymbol(revDepFileNPath, curr.fileNPath, curr.exportSymbol);
|
|
122
|
+
enqueue(revDepFileNPath, exportSymbol);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
else { // Resource
|
|
126
|
+
result.add(revDepFileNPath);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
return result;
|
|
131
|
+
}
|
|
132
|
+
invalidates(fileNPathSet) {
|
|
133
|
+
const affectedFiles = this.getAffectedFileSet(fileNPathSet);
|
|
134
|
+
for (const fileNPath of affectedFiles) {
|
|
135
|
+
this._exportCache.delete(fileNPath);
|
|
136
|
+
this._importCache.delete(fileNPath);
|
|
137
|
+
this._reexportCache.delete(fileNPath);
|
|
138
|
+
this._collectedCache.delete(fileNPath);
|
|
139
|
+
this._revDepCache.delete(fileNPath); // ← 자기 자신이 key인 경우도 정리
|
|
140
|
+
}
|
|
141
|
+
// _revDepCache는 역방향으로 순회
|
|
142
|
+
for (const [targetNPath, infoMap] of this._revDepCache) {
|
|
143
|
+
for (const fileNPath of affectedFiles) {
|
|
144
|
+
infoMap.delete(fileNPath);
|
|
145
|
+
}
|
|
146
|
+
if (infoMap.size === 0) {
|
|
147
|
+
this._revDepCache.delete(targetNPath);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
_convertImportSymbolToExportSymbol(fileNPath, targetNPath, importSymbol) {
|
|
152
|
+
const symbolInfos = this._reexportCache.get(fileNPath)?.get(targetNPath);
|
|
153
|
+
if (symbolInfos != null && symbolInfos !== 0 && symbolInfos.length > 0) {
|
|
154
|
+
const symbolInfo = symbolInfos.single(item => item.importSymbol === importSymbol);
|
|
155
|
+
if (symbolInfo) {
|
|
156
|
+
return symbolInfo.exportSymbol;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
return importSymbol;
|
|
160
|
+
}
|
|
161
|
+
_getExportSymbols(fileNPath) {
|
|
162
|
+
const result = new Set();
|
|
163
|
+
const set = this._exportCache.get(fileNPath);
|
|
164
|
+
if (set) {
|
|
165
|
+
result.adds(...set);
|
|
166
|
+
}
|
|
167
|
+
const map = this._reexportCache.get(fileNPath);
|
|
168
|
+
if (map) {
|
|
169
|
+
for (const [key, val] of map) {
|
|
170
|
+
if (val === 0) {
|
|
171
|
+
result.adds(...this._getExportSymbols(key));
|
|
172
|
+
}
|
|
173
|
+
else {
|
|
174
|
+
result.adds(...val.map(item => item.exportSymbol));
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
return result;
|
|
179
|
+
}
|
|
180
|
+
// ---
|
|
181
|
+
getAffectedFileTree(modifiedNPathSet) {
|
|
182
|
+
const visited = new Set(); // 순환 방지용: file#symbol
|
|
183
|
+
const nodeMap = new Map(); // 중복 노드 캐시
|
|
184
|
+
const buildTree = (fileNPath, exportSymbol) => {
|
|
185
|
+
const key = `${fileNPath}#${exportSymbol ?? "*"}`;
|
|
186
|
+
// 동일 노드가 이미 만들어졌다면 재사용
|
|
187
|
+
if (nodeMap.has(key))
|
|
188
|
+
return nodeMap.get(key);
|
|
189
|
+
// 방문 기록
|
|
190
|
+
visited.add(key);
|
|
191
|
+
// 노드 생성 및 캐싱
|
|
192
|
+
const node = {
|
|
193
|
+
fileNPath,
|
|
194
|
+
children: []
|
|
195
|
+
};
|
|
196
|
+
nodeMap.set(key, node);
|
|
197
|
+
const revDepInfoMap = this._revDepCache.get(fileNPath);
|
|
198
|
+
if (!revDepInfoMap)
|
|
199
|
+
return node;
|
|
200
|
+
for (const [revDepFileNPath, revDepInfo] of revDepInfoMap.entries()) {
|
|
201
|
+
const hasImportSymbol = exportSymbol == null || revDepInfo === 0 || revDepInfo.has(exportSymbol);
|
|
202
|
+
if (!hasImportSymbol)
|
|
203
|
+
continue;
|
|
204
|
+
const nextExportSymbol = exportSymbol != null
|
|
205
|
+
? this._convertImportSymbolToExportSymbol(revDepFileNPath, fileNPath, exportSymbol)
|
|
206
|
+
: undefined;
|
|
207
|
+
const childKey = `${revDepFileNPath}#${nextExportSymbol ?? "*"}`;
|
|
208
|
+
if (visited.has(childKey))
|
|
209
|
+
continue; // 순환 방지
|
|
210
|
+
const childNode = buildTree(revDepFileNPath, nextExportSymbol);
|
|
211
|
+
node.children.push(childNode);
|
|
212
|
+
}
|
|
213
|
+
return node;
|
|
214
|
+
};
|
|
215
|
+
const result = [];
|
|
216
|
+
for (const modifiedNPath of modifiedNPathSet) {
|
|
217
|
+
const exportSymbols = this._getExportSymbols(modifiedNPath);
|
|
218
|
+
if (exportSymbols.size === 0) {
|
|
219
|
+
const rootNode = buildTree(modifiedNPath, undefined);
|
|
220
|
+
result.push(rootNode);
|
|
221
|
+
}
|
|
222
|
+
else {
|
|
223
|
+
for (const symbol of exportSymbols) {
|
|
224
|
+
const rootNode = buildTree(modifiedNPath, symbol);
|
|
225
|
+
result.push(rootNode);
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
return result;
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
//# sourceMappingURL=sd-dependency-cache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sd-dependency-cache.js","sourceRoot":"","sources":["../../src/ts-compiler/sd-dependency-cache.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,27 +4,25 @@ export declare class SdTsCompiler {
|
|
|
4
4
|
private readonly _opt;
|
|
5
5
|
private _logger;
|
|
6
6
|
private _isForAngular;
|
|
7
|
-
private
|
|
8
|
-
private _revDepCacheMap;
|
|
9
|
-
private _sourceFileCacheMap;
|
|
10
|
-
private _emittedFilesCacheMap;
|
|
11
|
-
private _stylesheetBundler;
|
|
7
|
+
private _stylesheetBundlingWorker?;
|
|
12
8
|
private _ngProgram;
|
|
13
9
|
private _program;
|
|
14
|
-
private
|
|
15
|
-
private
|
|
16
|
-
private
|
|
10
|
+
private _depCache;
|
|
11
|
+
private _sourceFileCacheMap;
|
|
12
|
+
private _emittedFilesCacheMap;
|
|
17
13
|
private _stylesheetBundlingResultMap;
|
|
18
14
|
private _perf;
|
|
19
15
|
constructor(_opt: SdTsCompilerOptions);
|
|
20
16
|
private _parseTsConfig;
|
|
21
|
-
private _loadTsConfig;
|
|
22
17
|
private _createCompilerHost;
|
|
18
|
+
private _getOrCreateStyleBundleWorkerAsync;
|
|
23
19
|
private _bundleStylesheetAsync;
|
|
24
20
|
compileAsync(modifiedFileSet: Set<TNormPath>): Promise<ISdTsCompilerResult>;
|
|
25
21
|
private _prepareAsync;
|
|
26
22
|
private _lintAsync;
|
|
27
|
-
private
|
|
23
|
+
private _buildGlobalStyleAsync;
|
|
24
|
+
private _build;
|
|
28
25
|
private _convertOutputToReal;
|
|
29
26
|
private _debug;
|
|
27
|
+
private _log;
|
|
30
28
|
}
|