@simplysm/sd-cli 12.5.23 → 12.5.24

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.
Files changed (64) hide show
  1. package/dist/entry/SdCliElectron.js +2 -2
  2. package/dist/entry/SdCliElectron.js.map +1 -1
  3. package/dist/entry/SdCliLocalUpdate.js +5 -7
  4. package/dist/entry/SdCliLocalUpdate.js.map +1 -1
  5. package/dist/entry/SdCliProject.js +4 -4
  6. package/dist/entry/SdCliProject.js.map +1 -1
  7. package/dist/index.d.ts +1 -1
  8. package/dist/index.js +1 -1
  9. package/dist/index.js.map +1 -1
  10. package/dist/pkg-builders/SdMultiBuildRunner.d.ts +3 -10
  11. package/dist/pkg-builders/SdMultiBuildRunner.js +132 -116
  12. package/dist/pkg-builders/SdMultiBuildRunner.js.map +1 -1
  13. package/dist/pkg-builders/client/SdClientBuildRunner.d.ts +6 -5
  14. package/dist/pkg-builders/client/SdClientBuildRunner.js +16 -8
  15. package/dist/pkg-builders/client/SdClientBuildRunner.js.map +1 -1
  16. package/dist/pkg-builders/client/SdNgBundler.js +1 -0
  17. package/dist/pkg-builders/client/SdNgBundler.js.map +1 -1
  18. package/dist/pkg-builders/client/createSdNgPlugin.js +3 -3
  19. package/dist/pkg-builders/client/createSdNgPlugin.js.map +1 -1
  20. package/dist/pkg-builders/lib/SdTsLibBuildRunner.d.ts +6 -1
  21. package/dist/pkg-builders/lib/SdTsLibBuildRunner.js +25 -26
  22. package/dist/pkg-builders/lib/SdTsLibBuildRunner.js.map +1 -1
  23. package/dist/pkg-builders/lib/SdTsLibBuilder.d.ts +2 -3
  24. package/dist/pkg-builders/lib/SdTsLibBuilder.js +7 -11
  25. package/dist/pkg-builders/lib/SdTsLibBuilder.js.map +1 -1
  26. package/dist/pkg-builders/server/SdServerBuildRunner.d.ts +5 -1
  27. package/dist/pkg-builders/server/SdServerBuildRunner.js +32 -29
  28. package/dist/pkg-builders/server/SdServerBuildRunner.js.map +1 -1
  29. package/dist/pkg-builders/server/createSdServerPlugin.js +3 -3
  30. package/dist/pkg-builders/server/createSdServerPlugin.js.map +1 -1
  31. package/dist/ts-builder/SdTsCompiler.js +172 -160
  32. package/dist/ts-builder/SdTsCompiler.js.map +1 -1
  33. package/dist/types/build-runner.type.d.ts +7 -0
  34. package/dist/types/build-runner.type.js +2 -0
  35. package/dist/types/build-runner.type.js.map +1 -0
  36. package/dist/types/workers.type.d.ts +14 -0
  37. package/dist/workers/build-runner-worker.js +45 -0
  38. package/dist/workers/build-runner-worker.js.map +1 -0
  39. package/package.json +5 -5
  40. package/src/entry/SdCliElectron.ts +2 -2
  41. package/src/entry/SdCliLocalUpdate.ts +7 -7
  42. package/src/entry/SdCliProject.ts +4 -4
  43. package/src/index.ts +1 -1
  44. package/src/pkg-builders/SdMultiBuildRunner.ts +122 -120
  45. package/src/pkg-builders/client/SdClientBuildRunner.ts +26 -22
  46. package/src/pkg-builders/client/SdNgBundler.ts +1 -0
  47. package/src/pkg-builders/client/createSdNgPlugin.ts +3 -3
  48. package/src/pkg-builders/lib/SdTsLibBuildRunner.ts +39 -26
  49. package/src/pkg-builders/lib/SdTsLibBuilder.ts +12 -13
  50. package/src/pkg-builders/server/SdServerBuildRunner.ts +44 -29
  51. package/src/pkg-builders/server/createSdServerPlugin.ts +3 -3
  52. package/src/ts-builder/SdTsCompiler.ts +220 -216
  53. package/src/types/build-runner.type.ts +8 -0
  54. package/src/types/workers.type.ts +13 -0
  55. package/src/workers/build-runner-worker.ts +52 -0
  56. package/tsconfig.json +1 -1
  57. package/dist/ts-builder/SdTsCompileWorker.d.ts +0 -9
  58. package/dist/ts-builder/SdTsCompileWorker.js +0 -16
  59. package/dist/ts-builder/SdTsCompileWorker.js.map +0 -1
  60. package/dist/workers/compile-worker.js +0 -27
  61. package/dist/workers/compile-worker.js.map +0 -1
  62. package/src/ts-builder/SdTsCompileWorker.ts +0 -21
  63. package/src/workers/compile-worker.ts +0 -31
  64. /package/dist/workers/{compile-worker.d.ts → build-runner-worker.d.ts} +0 -0
@@ -31,6 +31,7 @@ export class SdTsCompiler {
31
31
  #watchScopePaths;
32
32
  #isForBundle;
33
33
  #lintWorker = new SdWorker(import.meta.resolve("../workers/lint-worker"));
34
+ #perf;
34
35
  constructor(opt) {
35
36
  this.#pkgPath = opt.pkgPath;
36
37
  this.#globalStyleFilePath = opt.globalStyleFilePath;
@@ -109,33 +110,52 @@ export class SdTsCompiler {
109
110
  // containingFile: 포함된 파일 (.ts)
110
111
  // resourceFile: 외부 리소스 파일 (styleUrls로 입력하지 않고 styles에 직접 입력한 경우 null)
111
112
  // referencedFiles: import한 외부 scss 파일 혹은 woff파일등 외부 파일
112
- this.#debug(`스타일시트 번들링...(${containingFile}, ${resourceFile})`);
113
- const stylesheetResult = resourceFile != null
114
- ? await this.#stylesheetBundler.bundleFile(resourceFile)
115
- : await this.#stylesheetBundler.bundleInline(data, containingFile, "scss");
116
- if (stylesheetResult.referencedFiles) {
117
- for (const referencedFile of stylesheetResult.referencedFiles) {
118
- const depCacheSet = this.#resourceDependencyCacheMap.getOrCreate(PathUtil.norm(referencedFile), new Set());
119
- depCacheSet.add(resourceFile ?? containingFile);
113
+ // this.#debug(`bundle stylesheet...(${containingFile}, ${resourceFile})`);
114
+ return await this.#perf.run("bundle style", async () => {
115
+ const stylesheetResult = resourceFile != null
116
+ ? await this.#stylesheetBundler.bundleFile(resourceFile)
117
+ : await this.#stylesheetBundler.bundleInline(data, containingFile, "scss");
118
+ if (stylesheetResult.referencedFiles) {
119
+ for (const referencedFile of stylesheetResult.referencedFiles) {
120
+ const depCacheSet = this.#resourceDependencyCacheMap.getOrCreate(PathUtil.norm(referencedFile), new Set());
121
+ depCacheSet.add(resourceFile ?? containingFile);
122
+ }
123
+ this.#watchFileSet.adds(...Array.from(stylesheetResult.referencedFiles.values()).map((item) => PathUtil.norm(item)));
120
124
  }
121
- this.#watchFileSet.adds(...Array.from(stylesheetResult.referencedFiles.values()).map((item) => PathUtil.norm(item)));
122
- }
123
- this.#stylesheetBundlingResultMap.set(PathUtil.norm(resourceFile ?? containingFile), {
124
- outputFiles: stylesheetResult.outputFiles,
125
- metafile: stylesheetResult.metafile,
126
- errors: stylesheetResult.errors,
127
- warnings: stylesheetResult.warnings,
125
+ this.#stylesheetBundlingResultMap.set(PathUtil.norm(resourceFile ?? containingFile), {
126
+ outputFiles: stylesheetResult.outputFiles,
127
+ metafile: stylesheetResult.metafile,
128
+ errors: stylesheetResult.errors,
129
+ warnings: stylesheetResult.warnings,
130
+ });
131
+ return stylesheetResult.contents;
128
132
  });
129
- return stylesheetResult.contents;
130
133
  }
131
134
  async compileAsync(modifiedFileSet) {
132
- let perf = new SdCliPerformanceTimer("esbuild compile");
135
+ this.#perf = new SdCliPerformanceTimer("esbuild compile");
133
136
  this.#modifiedFileSet = new Set(modifiedFileSet);
134
137
  this.#affectedFileSet = new Set();
135
- if (modifiedFileSet.size !== 0) {
138
+ const prepareResult = await this.#prepareAsync();
139
+ const [buildResult, lintResults] = await Promise.all([this.#buildAsync(), this.#lintAsync()]);
140
+ this.#debug(`build completed`, this.#perf.toString());
141
+ return {
142
+ messages: [
143
+ ...prepareResult.messages,
144
+ ...SdCliConvertMessageUtil.convertToBuildMessagesFromTsDiag(buildResult.diagnostics),
145
+ ...SdCliConvertMessageUtil.convertToBuildMessagesFromEslint(lintResults),
146
+ ],
147
+ watchFileSet: this.#watchFileSet,
148
+ affectedFileSet: this.#affectedFileSet,
149
+ stylesheetBundlingResultMap: this.#stylesheetBundlingResultMap,
150
+ emittedFilesCacheMap: this.#emittedFilesCacheMap,
151
+ emitFileSet: buildResult.emitFileSet,
152
+ };
153
+ }
154
+ async #prepareAsync() {
155
+ if (this.#modifiedFileSet.size !== 0) {
136
156
  this.#debug(`get affected (old deps & old res deps)...`);
137
- perf.run("get affected", () => {
138
- for (const modifiedFile of modifiedFileSet) {
157
+ this.#perf.run("get affected", () => {
158
+ for (const modifiedFile of this.#modifiedFileSet) {
139
159
  this.#affectedFileSet.add(modifiedFile);
140
160
  this.#affectedFileSet.adds(...(this.#revDependencyCacheMap.get(modifiedFile) ?? []));
141
161
  this.#affectedFileSet.adds(...(this.#resourceDependencyCacheMap.get(modifiedFile) ?? []));
@@ -143,8 +163,8 @@ export class SdTsCompiler {
143
163
  }
144
164
  });
145
165
  this.#debug(`invalidate & clear cache...`);
146
- perf.run("invalidate & clear cache", () => {
147
- this.#stylesheetBundler?.invalidate(modifiedFileSet);
166
+ this.#perf.run("invalidate & clear cache", () => {
167
+ this.#stylesheetBundler?.invalidate(this.#modifiedFileSet);
148
168
  for (const affectedFile of this.#affectedFileSet) {
149
169
  this.#sourceFileCacheMap.delete(affectedFile);
150
170
  this.#stylesheetBundlingResultMap.delete(affectedFile);
@@ -155,7 +175,7 @@ export class SdTsCompiler {
155
175
  });
156
176
  }
157
177
  this.#debug(`create program...`);
158
- perf.run("create program", () => {
178
+ this.#perf.run("create program", () => {
159
179
  if (this.#isForAngular) {
160
180
  this.#ngProgram = new NgtscProgram(this.#parsedTsconfig.fileNames, this.#parsedTsconfig.options, this.#compilerHost, this.#ngProgram);
161
181
  this.#program = this.#ngProgram.getTsProgram();
@@ -165,7 +185,7 @@ export class SdTsCompiler {
165
185
  }
166
186
  });
167
187
  if (this.#ngProgram) {
168
- await perf.run("ng analyze", async () => {
188
+ await this.#perf.run("ng analyze", async () => {
169
189
  await this.#ngProgram.compiler.analyzeAsync();
170
190
  });
171
191
  }
@@ -181,7 +201,7 @@ export class SdTsCompiler {
181
201
  .filterExists());
182
202
  this.#debug(`get new deps...`);
183
203
  const messages = [];
184
- perf.run("get new deps", () => {
204
+ this.#perf.run("get new deps", () => {
185
205
  const depMap = new Map();
186
206
  for (const sf of sourceFileSet) {
187
207
  if (!PathUtil.isChildPath(sf.fileName, this.#pkgPath)) {
@@ -240,9 +260,9 @@ export class SdTsCompiler {
240
260
  }
241
261
  }
242
262
  });
243
- if (modifiedFileSet.size === 0) {
263
+ if (this.#modifiedFileSet.size === 0) {
244
264
  this.#debug(`get affected (init)...`);
245
- perf.run("get affected (init)", () => {
265
+ this.#perf.run("get affected (init)", () => {
246
266
  for (const sf of sourceFileSet) {
247
267
  if (!this.#watchScopePaths.some((scopePath) => PathUtil.isChildPath(sf.fileName, scopePath))) {
248
268
  continue;
@@ -277,153 +297,145 @@ export class SdTsCompiler {
277
297
  }
278
298
  }
279
299
  }
300
+ return {
301
+ messages,
302
+ };
303
+ }
304
+ async #lintAsync() {
305
+ return await this.#lintWorker.run("lint", [
306
+ {
307
+ cwd: this.#pkgPath,
308
+ fileSet: this.#affectedFileSet,
309
+ },
310
+ ]);
311
+ }
312
+ async #buildAsync() {
280
313
  const emitFileSet = new Set();
281
- const [lintResults] = await Promise.all([
282
- this.#lintWorker.run("lint", [
283
- {
284
- cwd: this.#pkgPath,
285
- fileSet: this.#affectedFileSet,
286
- },
287
- ]),
288
- (async () => {
289
- this.#debug(`get diagnostics...`);
290
- const diagnostics = [];
291
- perf.run("get program diagnostics", () => {
292
- diagnostics.push(...this.#program.getConfigFileParsingDiagnostics(), ...this.#program.getOptionsDiagnostics(), ...this.#program.getGlobalDiagnostics());
293
- if (this.#ngProgram) {
294
- diagnostics.push(...this.#ngProgram.compiler.getOptionDiagnostics());
314
+ const diagnostics = [];
315
+ this.#debug(`get diagnostics...`);
316
+ this.#perf.run("get program diagnostics", () => {
317
+ diagnostics.push(...this.#program.getConfigFileParsingDiagnostics(), ...this.#program.getOptionsDiagnostics(), ...this.#program.getGlobalDiagnostics());
318
+ if (this.#ngProgram) {
319
+ diagnostics.push(...this.#ngProgram.compiler.getOptionDiagnostics());
320
+ }
321
+ });
322
+ this.#debug(`get diagnostics of files...`);
323
+ for (const affectedFile of this.#affectedFileSet) {
324
+ if (!PathUtil.isChildPath(affectedFile, this.#pkgPath)) {
325
+ continue;
326
+ }
327
+ const affectedSourceFile = this.#program.getSourceFile(affectedFile);
328
+ if (!affectedSourceFile ||
329
+ (this.#ngProgram && this.#ngProgram.compiler.ignoreForDiagnostics.has(affectedSourceFile))) {
330
+ continue;
331
+ }
332
+ // this.#debug(`get diagnostics of file ${affectedFile}...`);
333
+ this.#perf.run("get file diagnostics", () => {
334
+ diagnostics.push(...this.#program.getSyntacticDiagnostics(affectedSourceFile), ...this.#program.getSemanticDiagnostics(affectedSourceFile));
335
+ });
336
+ if (this.#ngProgram) {
337
+ this.#perf.run("get file diagnostics: ng", () => {
338
+ if (affectedSourceFile.isDeclarationFile) {
339
+ return;
295
340
  }
341
+ diagnostics.push(...this.#ngProgram.compiler.getDiagnosticsForFile(affectedSourceFile, OptimizeFor.WholeProgram));
296
342
  });
297
- this.#debug(`get diagnostics of files...`);
298
- for (const affectedFile of this.#affectedFileSet) {
299
- if (!PathUtil.isChildPath(affectedFile, this.#pkgPath)) {
300
- continue;
301
- }
302
- const affectedSourceFile = this.#program.getSourceFile(affectedFile);
303
- if (!affectedSourceFile ||
304
- (this.#ngProgram && this.#ngProgram.compiler.ignoreForDiagnostics.has(affectedSourceFile))) {
343
+ }
344
+ }
345
+ this.#perf.run("emit", () => {
346
+ this.#debug(`prepare emit...`);
347
+ let transformers = {};
348
+ if (this.#ngProgram) {
349
+ transformers = {
350
+ ...transformers,
351
+ ...this.#ngProgram.compiler.prepareEmit().transformers,
352
+ };
353
+ (transformers.before ??= []).push(replaceBootstrap(() => this.#program.getTypeChecker()));
354
+ }
355
+ // (transformers.before ??= []).push(transformKeys(this.#program));
356
+ this.#debug(`emit for files...`);
357
+ // affected에 새로 추가된 파일은 포함되지 않는 현상이 있어 sourceFileSet으로 바꿈
358
+ // 비교해보니, 딱히 getSourceFiles라서 더 느려지는것 같지는 않음
359
+ // 그래도 affected로 다시 테스트
360
+ for (const affectedFile of this.#affectedFileSet) {
361
+ if (this.#emittedFilesCacheMap.has(affectedFile)) {
362
+ continue;
363
+ }
364
+ const sf = this.#program.getSourceFile(affectedFile);
365
+ if (!sf) {
366
+ continue;
367
+ }
368
+ if (sf.isDeclarationFile) {
369
+ continue;
370
+ }
371
+ if (this.#ngProgram?.compiler.ignoreForEmit.has(sf)) {
372
+ continue;
373
+ }
374
+ if (this.#ngProgram?.compiler.incrementalCompilation.safeToSkipEmit(sf)) {
375
+ continue;
376
+ }
377
+ // esbuild를 통해 bundle로 묶어야 하는놈들은 모든 output이 있어야 함.
378
+ if (!this.#isForBundle) {
379
+ if (!PathUtil.isChildPath(sf.fileName, this.#pkgPath)) {
305
380
  continue;
306
381
  }
307
- // this.#debug(`get diagnostics of file ${affectedFile}...`);
308
- perf.run("get file diagnostics", () => {
309
- diagnostics.push(...this.#program.getSyntacticDiagnostics(affectedSourceFile), ...this.#program.getSemanticDiagnostics(affectedSourceFile));
310
- });
311
- if (this.#ngProgram) {
312
- perf.run("get file diagnostics: ng", () => {
313
- if (affectedSourceFile.isDeclarationFile) {
314
- return;
315
- }
316
- diagnostics.push(...this.#ngProgram.compiler.getDiagnosticsForFile(affectedSourceFile, OptimizeFor.WholeProgram));
317
- });
318
- }
319
382
  }
320
- perf.run("emit", () => {
321
- this.#debug(`prepare emit...`);
322
- let transformers = {};
323
- if (this.#ngProgram) {
324
- transformers = {
325
- ...transformers,
326
- ...this.#ngProgram.compiler.prepareEmit().transformers,
327
- };
328
- (transformers.before ??= []).push(replaceBootstrap(() => this.#program.getTypeChecker()));
383
+ this.#program.emit(sf, (fileName, text, writeByteOrderMark, onError, sourceFiles, data) => {
384
+ if (!sourceFiles || sourceFiles.length === 0) {
385
+ this.#compilerHost.writeFile(fileName, text, writeByteOrderMark, onError, sourceFiles, data);
386
+ return;
329
387
  }
330
- // (transformers.before ??= []).push(transformKeys(this.#program));
331
- this.#debug(`emit for files...`);
332
- // affected에 새로 추가된 파일은 포함되지 않는 현상이 있어 sourceFileSet으로 바꿈
333
- // 비교해보니, 딱히 getSourceFiles라서 더 느려지는것 같지는 않음
334
- // 그래도 affected로 다시 테스트
335
- for (const affectedFile of this.#affectedFileSet) {
336
- if (this.#emittedFilesCacheMap.has(affectedFile)) {
337
- continue;
338
- }
339
- const sf = this.#program.getSourceFile(affectedFile);
340
- if (!sf) {
341
- continue;
342
- }
343
- if (sf.isDeclarationFile) {
344
- continue;
345
- }
346
- if (this.#ngProgram?.compiler.ignoreForEmit.has(sf)) {
347
- continue;
348
- }
349
- if (this.#ngProgram?.compiler.incrementalCompilation.safeToSkipEmit(sf)) {
350
- continue;
388
+ const sourceFile = ts.getOriginalNode(sourceFiles[0], ts.isSourceFile);
389
+ if (this.#ngProgram) {
390
+ if (this.#ngProgram.compiler.ignoreForEmit.has(sourceFile)) {
391
+ return;
351
392
  }
352
- // esbuild를 통해 bundle로 묶어야 하는놈들은 모든 output이 있어야 함.
353
- if (!this.#isForBundle) {
354
- if (!PathUtil.isChildPath(sf.fileName, this.#pkgPath)) {
355
- continue;
393
+ this.#ngProgram.compiler.incrementalCompilation.recordSuccessfulEmit(sourceFile);
394
+ }
395
+ const emitFileInfoCaches = this.#emittedFilesCacheMap.getOrCreate(PathUtil.norm(sourceFile.fileName), []);
396
+ if (PathUtil.isChildPath(sourceFile.fileName, this.#pkgPath)) {
397
+ let realFilePath = PathUtil.norm(fileName);
398
+ let realText = text;
399
+ if (PathUtil.isChildPath(realFilePath, path.resolve(this.#distPath, path.basename(this.#pkgPath), "src"))) {
400
+ realFilePath = PathUtil.norm(this.#distPath, path.relative(path.resolve(this.#distPath, path.basename(this.#pkgPath), "src"), realFilePath));
401
+ if (fileName.endsWith(".js.map")) {
402
+ const sourceMapContents = JSON.parse(realText);
403
+ // remove "../../"
404
+ sourceMapContents.sources[0] = sourceMapContents.sources[0].slice(6);
405
+ realText = JSON.stringify(sourceMapContents);
356
406
  }
357
407
  }
358
- // this.#debug(`emit for`, sf.fileName);
359
- this.#program.emit(sf, (fileName, text, writeByteOrderMark, onError, sourceFiles, data) => {
360
- if (!sourceFiles || sourceFiles.length === 0) {
361
- this.#compilerHost.writeFile(fileName, text, writeByteOrderMark, onError, sourceFiles, data);
362
- return;
363
- }
364
- const sourceFile = ts.getOriginalNode(sourceFiles[0], ts.isSourceFile);
365
- if (this.#ngProgram) {
366
- if (this.#ngProgram.compiler.ignoreForEmit.has(sourceFile)) {
367
- return;
368
- }
369
- this.#ngProgram.compiler.incrementalCompilation.recordSuccessfulEmit(sourceFile);
370
- }
371
- const emitFileInfoCaches = this.#emittedFilesCacheMap.getOrCreate(PathUtil.norm(sourceFile.fileName), []);
372
- if (PathUtil.isChildPath(sourceFile.fileName, this.#pkgPath)) {
373
- let realFilePath = PathUtil.norm(fileName);
374
- let realText = text;
375
- if (PathUtil.isChildPath(realFilePath, path.resolve(this.#distPath, path.basename(this.#pkgPath), "src"))) {
376
- realFilePath = PathUtil.norm(this.#distPath, path.relative(path.resolve(this.#distPath, path.basename(this.#pkgPath), "src"), realFilePath));
377
- if (fileName.endsWith(".js.map")) {
378
- const sourceMapContents = JSON.parse(realText);
379
- // remove "../../"
380
- sourceMapContents.sources[0] = sourceMapContents.sources[0].slice(6);
381
- realText = JSON.stringify(sourceMapContents);
382
- }
383
- }
384
- emitFileInfoCaches.push({
385
- outAbsPath: realFilePath,
386
- text: realText,
387
- });
388
- }
389
- else {
390
- emitFileInfoCaches.push({ text });
391
- }
392
- emitFileSet.add(PathUtil.norm(sourceFile.fileName));
393
- }, undefined, undefined, transformers);
408
+ emitFileInfoCaches.push({
409
+ outAbsPath: realFilePath,
410
+ text: realText,
411
+ });
394
412
  }
413
+ else {
414
+ emitFileInfoCaches.push({ text });
415
+ }
416
+ emitFileSet.add(PathUtil.norm(sourceFile.fileName));
417
+ }, undefined, undefined, transformers);
418
+ }
419
+ });
420
+ //-- global style
421
+ if (this.#globalStyleFilePath != null &&
422
+ FsUtil.exists(this.#globalStyleFilePath) &&
423
+ !this.#emittedFilesCacheMap.has(this.#globalStyleFilePath)) {
424
+ this.#debug(`bundle global style...`);
425
+ await this.#perf.run("bundle global style", async () => {
426
+ const data = FsUtil.readFile(this.#globalStyleFilePath);
427
+ const contents = await this.#bundleStylesheetAsync(data, this.#globalStyleFilePath, this.#globalStyleFilePath);
428
+ const emitFileInfos = this.#emittedFilesCacheMap.getOrCreate(this.#globalStyleFilePath, []);
429
+ emitFileInfos.push({
430
+ outAbsPath: PathUtil.norm(this.#pkgPath, path.relative(path.resolve(this.#pkgPath, "src"), this.#globalStyleFilePath).replace(/\.scss$/, ".css")),
431
+ text: contents,
395
432
  });
396
- //-- global style
397
- if (this.#globalStyleFilePath != null &&
398
- FsUtil.exists(this.#globalStyleFilePath) &&
399
- !this.#emittedFilesCacheMap.has(this.#globalStyleFilePath)) {
400
- this.#debug(`bundle global style...`);
401
- await perf.run("bundle global style", async () => {
402
- const data = FsUtil.readFile(this.#globalStyleFilePath);
403
- const contents = await this.#bundleStylesheetAsync(data, this.#globalStyleFilePath, this.#globalStyleFilePath);
404
- const emitFileInfos = this.#emittedFilesCacheMap.getOrCreate(this.#globalStyleFilePath, []);
405
- emitFileInfos.push({
406
- outAbsPath: PathUtil.norm(this.#pkgPath, path
407
- .relative(path.resolve(this.#pkgPath, "src"), this.#globalStyleFilePath)
408
- .replace(/\.scss$/, ".css")),
409
- text: contents,
410
- });
411
- emitFileSet.add(this.#globalStyleFilePath);
412
- });
413
- }
414
- this.#debug(`build completed`, perf.toString());
415
- //-- result
416
- messages.push(...SdCliConvertMessageUtil.convertToBuildMessagesFromTsDiag(diagnostics));
417
- })(),
418
- ]);
419
- messages.push(...SdCliConvertMessageUtil.convertToBuildMessagesFromEslint(lintResults));
433
+ emitFileSet.add(this.#globalStyleFilePath);
434
+ });
435
+ }
420
436
  return {
421
- messages,
422
- watchFileSet: this.#watchFileSet,
423
- affectedFileSet: this.#affectedFileSet,
424
- stylesheetBundlingResultMap: this.#stylesheetBundlingResultMap,
425
- emittedFilesCacheMap: this.#emittedFilesCacheMap,
426
437
  emitFileSet,
438
+ diagnostics,
427
439
  };
428
440
  }
429
441
  #debug(...msg) {
@@ -1 +1 @@
1
- {"version":3,"file":"SdTsCompiler.js","sourceRoot":"","sources":["../../src/ts-builder/SdTsCompiler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SdTsCompiler.js","sourceRoot":"","sources":["../../src/ts-builder/SdTsCompiler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { TNormPath } from "@simplysm/sd-core-node";
2
+ import { ISdProjectConfig } from "./sd-configs.type";
3
+ export interface ISdBuildRunnerWorkerRequest {
4
+ cmd: "watch" | "build";
5
+ pkgPath: TNormPath;
6
+ projConf: ISdProjectConfig;
7
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=build-runner.type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-runner.type.js","sourceRoot":"","sources":["../../src/types/build-runner.type.ts"],"names":[],"mappings":""}
@@ -1,6 +1,8 @@
1
1
  import { ESLint } from "eslint";
2
2
  import { ISdTsCompilerResult, SdTsCompilerOptions } from "./ts-compiler.type";
3
3
  import { TNormPath } from "@simplysm/sd-core-node";
4
+ import { ISdBuildRunnerWorkerRequest } from "./build-runner.type";
5
+ import { ISdBuildMessage, ISdBuildRunnerResult } from "./build.type";
4
6
  export interface TServerWorkerType {
5
7
  methods: {
6
8
  listen: {
@@ -47,3 +49,15 @@ export interface TSdTsCompileWorkerType {
47
49
  };
48
50
  events: {};
49
51
  }
52
+ export interface TSdBuildRunnerWorkerType {
53
+ methods: {
54
+ run: {
55
+ params: [ISdBuildRunnerWorkerRequest];
56
+ returnType: ISdBuildMessage[] | void;
57
+ };
58
+ };
59
+ events: {
60
+ change: void;
61
+ complete: ISdBuildRunnerResult;
62
+ };
63
+ }
@@ -0,0 +1,45 @@
1
+ import { createSdWorker, FsUtil, Logger, LoggerSeverity } from "@simplysm/sd-core-node";
2
+ import path from "path";
3
+ import { SdServerBuildRunner } from "../pkg-builders/server/SdServerBuildRunner";
4
+ import { SdClientBuildRunner } from "../pkg-builders/client/SdClientBuildRunner";
5
+ import { SdTsLibBuildRunner } from "../pkg-builders/lib/SdTsLibBuildRunner";
6
+ import { SdJsLibBuildRunner } from "../pkg-builders/lib/SdJsLibBuildRunner";
7
+ import { EventEmitter } from "events";
8
+ Error.stackTraceLimit = Infinity;
9
+ EventEmitter.defaultMaxListeners = 0;
10
+ if (process.env["SD_DEBUG"] != null) {
11
+ Logger.setConfig({
12
+ console: {
13
+ level: LoggerSeverity.debug,
14
+ },
15
+ });
16
+ }
17
+ else {
18
+ Logger.setConfig({
19
+ dot: true,
20
+ });
21
+ }
22
+ const worker = createSdWorker({
23
+ async run(req) {
24
+ const pkgConf = req.projConf.packages[path.basename(req.pkgPath)];
25
+ const buildRunnerType = pkgConf.type === "server"
26
+ ? SdServerBuildRunner
27
+ : pkgConf.type === "client"
28
+ ? SdClientBuildRunner
29
+ : FsUtil.exists(path.resolve(req.pkgPath, "tsconfig.json"))
30
+ ? SdTsLibBuildRunner
31
+ : SdJsLibBuildRunner;
32
+ const builder = new buildRunnerType(req.projConf, req.pkgPath)
33
+ .on("change", () => worker.send("change"))
34
+ .on("complete", (result) => worker.send("complete", result));
35
+ if (req.cmd === "build") {
36
+ const res = await builder.buildAsync();
37
+ return res.buildMessages;
38
+ }
39
+ else {
40
+ await builder.watchAsync();
41
+ return;
42
+ }
43
+ },
44
+ });
45
+ //# sourceMappingURL=build-runner-worker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-runner-worker.js","sourceRoot":"","sources":["../../src/workers/build-runner-worker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAExF,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAG5E,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,KAAK,CAAC,eAAe,GAAG,QAAQ,CAAC;AACjC,YAAY,CAAC,mBAAmB,GAAG,CAAC,CAAC;AAErC,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC;IACpC,MAAM,CAAC,SAAS,CAAC;QACf,OAAO,EAAE;YACP,KAAK,EAAE,cAAc,CAAC,KAAK;SAC5B;KACF,CAAC,CAAC;AACL,CAAC;KAAM,CAAC;IACN,MAAM,CAAC,SAAS,CAAC;QACf,GAAG,EAAE,IAAI;KACV,CAAC,CAAC;AACL,CAAC;AAED,MAAM,MAAM,GAAG,cAAc,CAA2B;IACtD,KAAK,CAAC,GAAG,CAAC,GAAgC;QACxC,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAE,CAAC;QAEnE,MAAM,eAAe,GACnB,OAAO,CAAC,IAAI,KAAK,QAAQ;YACvB,CAAC,CAAC,mBAAmB;YACrB,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ;gBACzB,CAAC,CAAC,mBAAmB;gBACrB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;oBACzD,CAAC,CAAC,kBAAkB;oBACpB,CAAC,CAAC,kBAAkB,CAAC;QAE7B,MAAM,OAAO,GAAG,IAAI,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC;aAC3D,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aACzC,EAAE,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;QAE/D,IAAI,GAAG,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC;YACvC,OAAO,GAAG,CAAC,aAAa,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC;YAC3B,OAAO;QACT,CAAC;IACH,CAAC;CACF,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@simplysm/sd-cli",
3
- "version": "12.5.23",
3
+ "version": "12.5.24",
4
4
  "description": "심플리즘 패키지 - CLI",
5
5
  "author": "김석래",
6
6
  "repository": {
@@ -21,10 +21,10 @@
21
21
  "@angular/compiler": "^18.2.7",
22
22
  "@angular/compiler-cli": "^18.2.7",
23
23
  "@electron/rebuild": "^3.7.0",
24
- "@simplysm/sd-core-common": "12.5.23",
25
- "@simplysm/sd-core-node": "12.5.23",
26
- "@simplysm/sd-service-server": "12.5.23",
27
- "@simplysm/sd-storage": "12.5.23",
24
+ "@simplysm/sd-core-common": "12.5.24",
25
+ "@simplysm/sd-core-node": "12.5.24",
26
+ "@simplysm/sd-service-server": "12.5.24",
27
+ "@simplysm/sd-storage": "12.5.24",
28
28
  "browserslist": "^4.24.0",
29
29
  "cordova": "^12.0.0",
30
30
  "css-has-pseudo": "^7.0.0",