@simplysm/sd-cli 10.0.36 → 10.0.39

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 (87) hide show
  1. package/dist/SdLinter.js.map +1 -1
  2. package/dist/SdTsIncrementalBuilder.d.ts +17 -4
  3. package/dist/SdTsIncrementalBuilder.js +29 -33
  4. package/dist/SdTsIncrementalBuilder.js.map +1 -1
  5. package/dist/build-cluster.js +98 -30
  6. package/dist/build-cluster.js.map +1 -1
  7. package/dist/builders/SdCliClientBuilder.d.ts +6 -2
  8. package/dist/builders/SdCliClientBuilder.js +107 -97
  9. package/dist/builders/SdCliClientBuilder.js.map +1 -1
  10. package/dist/builders/SdCliJsLibLinter.js.map +1 -1
  11. package/dist/builders/SdCliServerBuilder.d.ts +2 -1
  12. package/dist/builders/SdCliServerBuilder.js +68 -13
  13. package/dist/builders/SdCliServerBuilder.js.map +1 -1
  14. package/dist/builders/SdCliTsLibBuilder.d.ts +5 -2
  15. package/dist/builders/SdCliTsLibBuilder.js +64 -10
  16. package/dist/builders/SdCliTsLibBuilder.js.map +1 -1
  17. package/dist/commons.d.ts +28 -2
  18. package/dist/commons.js.map +1 -1
  19. package/dist/entry/SdCliElectron.d.ts +7 -0
  20. package/dist/entry/SdCliElectron.js +42 -0
  21. package/dist/entry/SdCliElectron.js.map +1 -0
  22. package/dist/entry/SdCliLocalUpdate.d.ts +3 -3
  23. package/dist/entry/SdCliLocalUpdate.js +20 -26
  24. package/dist/entry/SdCliLocalUpdate.js.map +1 -1
  25. package/dist/entry/SdCliProject.d.ts +3 -3
  26. package/dist/entry/SdCliProject.js +87 -36
  27. package/dist/entry/SdCliProject.js.map +1 -1
  28. package/dist/index.d.ts +1 -0
  29. package/dist/index.js +2 -0
  30. package/dist/index.js.map +1 -0
  31. package/dist/sd-cli.d.ts +1 -1
  32. package/dist/sd-cli.js +62 -16
  33. package/dist/sd-cli.js.map +1 -1
  34. package/dist/server-worker.js.map +1 -1
  35. package/dist/utils/SdCliBuildResultUtil.js +1 -1
  36. package/dist/utils/SdCliBuildResultUtil.js.map +1 -1
  37. package/dist/utils/SdCliViteElectronMainPlugin.d.ts +6 -0
  38. package/dist/utils/SdCliViteElectronMainPlugin.js +81 -0
  39. package/dist/utils/SdCliViteElectronMainPlugin.js.map +1 -0
  40. package/dist/utils/SdCliViteExternalPlugin.d.ts +7 -0
  41. package/dist/utils/SdCliViteExternalPlugin.js +98 -0
  42. package/dist/utils/SdCliViteExternalPlugin.js.map +1 -0
  43. package/dist/utils/SdCliViteLoggerPlugin.d.ts +6 -0
  44. package/dist/utils/SdCliViteLoggerPlugin.js +24 -0
  45. package/dist/utils/SdCliViteLoggerPlugin.js.map +1 -0
  46. package/dist/utils/SdCliViteNodeGlobalPlugin.d.ts +2 -0
  47. package/dist/utils/SdCliViteNodeGlobalPlugin.js +29 -0
  48. package/dist/utils/SdCliViteNodeGlobalPlugin.js.map +1 -0
  49. package/dist/utils/SdCliViteReactSwcPlugin.d.ts +2 -0
  50. package/dist/utils/SdCliViteReactSwcPlugin.js +141 -0
  51. package/dist/utils/SdCliViteReactSwcPlugin.js.map +1 -0
  52. package/dist/utils/SdCliViteWatchWithResolutionsPlugin.d.ts +2 -0
  53. package/dist/utils/SdCliViteWatchWithResolutionsPlugin.js +26 -0
  54. package/dist/utils/SdCliViteWatchWithResolutionsPlugin.js.map +1 -0
  55. package/dist/utils/getElectronReactExternals.d.ts +1 -0
  56. package/dist/utils/getElectronReactExternals.js +17 -0
  57. package/dist/utils/getElectronReactExternals.js.map +1 -0
  58. package/dist/utils/sdCliTsDefineTransformer.d.ts +4 -0
  59. package/dist/utils/sdCliTsDefineTransformer.js +26 -0
  60. package/dist/utils/sdCliTsDefineTransformer.js.map +1 -0
  61. package/package.json +25 -10
  62. package/src/SdLinter.ts +2 -2
  63. package/src/SdTsIncrementalBuilder.ts +116 -94
  64. package/src/build-cluster.ts +173 -111
  65. package/src/builders/SdCliClientBuilder.ts +226 -204
  66. package/src/builders/SdCliServerBuilder.ts +311 -240
  67. package/src/builders/SdCliTsLibBuilder.ts +160 -89
  68. package/src/commons.ts +66 -34
  69. package/src/entry/SdCliElectron.ts +55 -0
  70. package/src/entry/SdCliLocalUpdate.ts +104 -101
  71. package/src/entry/SdCliProject.ts +452 -401
  72. package/src/index.ts +1 -0
  73. package/src/sd-cli.ts +185 -141
  74. package/src/utils/SdCliBuildResultUtil.ts +1 -2
  75. package/src/utils/SdCliViteElectronMainPlugin.ts +86 -0
  76. package/src/utils/SdCliViteExternalPlugin.ts +112 -0
  77. package/src/utils/SdCliViteLoggerPlugin.ts +29 -0
  78. package/src/utils/SdCliViteNodeGlobalPlugin.ts +31 -0
  79. package/src/utils/SdCliViteReactSwcPlugin.ts +154 -0
  80. package/src/utils/SdCliViteWatchWithResolutionsPlugin.ts +29 -0
  81. package/src/utils/getElectronReactExternals.ts +19 -0
  82. package/src/utils/sdCliTsDefineTransformer.ts +31 -0
  83. package/.eslintrc.cjs +0 -18
  84. package/dist/utils/SdCliConfigUtil.d.ts +0 -7
  85. package/dist/utils/SdCliConfigUtil.js +0 -69
  86. package/dist/utils/SdCliConfigUtil.js.map +0 -1
  87. package/src/utils/SdCliConfigUtil.ts +0 -94
@@ -1,13 +1,19 @@
1
1
  import { FsUtil, Logger, SdFsWatcher } from "@simplysm/sd-core-node";
2
2
  import path from "path";
3
3
  import { EventEmitter } from "events";
4
- import { FunctionQueue } from "@simplysm/sd-core-common";
4
+ import { FunctionQueue, Uuid } from "@simplysm/sd-core-common";
5
5
  import { SdTsIncrementalBuilder } from "../SdTsIncrementalBuilder";
6
6
  import { SdLinter } from "../SdLinter";
7
+ import { pathToFileURL } from "url";
8
+ import less from "less";
9
+ import ts from "typescript";
10
+ import transformKeys from "ts-transformer-keys/transformer";
7
11
  export class SdCliTsLibBuilder extends EventEmitter {
8
- constructor(_pkgPath) {
12
+ constructor(_pkgPath, _pkgConf, _withLint) {
9
13
  super();
10
14
  this._pkgPath = _pkgPath;
15
+ this._pkgConf = _pkgConf;
16
+ this._withLint = _withLint;
11
17
  this._logger = Logger.get(["simplysm", "sd-cli", "SdCliTsLibBuilder"]);
12
18
  }
13
19
  on(event, listener) {
@@ -16,33 +22,54 @@ export class SdCliTsLibBuilder extends EventEmitter {
16
22
  }
17
23
  async buildAsync() {
18
24
  this._debug("빌드 준비...");
19
- const sdTsProgram = await SdTsIncrementalBuilder.createAsync(this._pkgPath, true);
25
+ const sdTsProgram = await SdTsIncrementalBuilder.createAsync(this._pkgPath, (opt) => ({
26
+ emitJs: true,
27
+ transforms: opt.jsx === ts.JsxEmit.ReactJSX ? [{ fn: transformKeys, args: undefined }] : undefined
28
+ }));
20
29
  this._debug("dist 초기화...");
21
30
  await FsUtil.removeAsync(path.resolve(this._pkgPath, "dist"));
22
31
  this._debug("BUILD...");
23
32
  const buildResult = await sdTsProgram.buildAsync();
24
33
  this._debug("LINT...");
25
- const lintResults = await SdLinter.lintAsync(buildResult.affectedFilePaths, sdTsProgram.builderProgram.getProgram());
34
+ const lintResults = !this._withLint ? [] : await SdLinter.lintAsync(buildResult.affectedFilePaths, sdTsProgram.builderProgram.getProgram());
35
+ let styleResult;
36
+ if (this._pkgConf.style !== undefined) {
37
+ this._debug("STYLE...");
38
+ styleResult = await this._genStyleAsync();
39
+ }
40
+ this._debug("COPY...");
41
+ await FsUtil.copyAsync(path.resolve(this._pkgPath, "src/assets"), path.resolve(this._pkgPath, "dist/assets"));
26
42
  this._debug(`빌드 완료`);
27
43
  return {
28
44
  affectedFilePaths: buildResult.affectedFilePaths,
29
- buildResults: [...buildResult.results, ...lintResults]
45
+ buildResults: [...buildResult.results, ...lintResults, ...styleResult ? [styleResult] : []]
30
46
  };
31
47
  }
32
48
  async watchAsync() {
33
49
  this._debug("빌드 준비...");
34
- const sdTsProgram = await SdTsIncrementalBuilder.createAsync(this._pkgPath, true);
50
+ const sdTsProgram = await SdTsIncrementalBuilder.createAsync(this._pkgPath, (opt) => ({
51
+ emitJs: true,
52
+ compilerOptions: opt.jsx === ts.JsxEmit.ReactJSX ? { jsx: ts.JsxEmit.ReactJSXDev } : undefined,
53
+ transforms: opt.jsx === ts.JsxEmit.ReactJSX ? [{ fn: transformKeys, args: undefined },] : undefined
54
+ }));
35
55
  this._debug("dist 초기화...");
36
56
  await FsUtil.removeAsync(path.resolve(this._pkgPath, "dist"));
37
57
  this.emit("change");
38
58
  this._debug("BUILD...");
39
59
  const buildResult = await sdTsProgram.buildAsync();
40
60
  this._debug("LINT...");
41
- const lintResults = await SdLinter.lintAsync(buildResult.affectedFilePaths, sdTsProgram.builderProgram.getProgram());
61
+ const lintResults = !this._withLint ? [] : await SdLinter.lintAsync(buildResult.affectedFilePaths, sdTsProgram.builderProgram.getProgram());
62
+ let styleResult;
63
+ if (this._pkgConf.style !== undefined) {
64
+ this._debug("STYLE...");
65
+ styleResult = await this._genStyleAsync();
66
+ }
67
+ this._debug("COPY...");
68
+ await FsUtil.copyAsync(path.resolve(this._pkgPath, "src/assets"), path.resolve(this._pkgPath, "dist/assets"));
42
69
  this._debug(`빌드 완료`);
43
70
  this.emit("complete", {
44
71
  affectedFilePaths: buildResult.affectedFilePaths,
45
- buildResults: [...buildResult.results, ...lintResults]
72
+ buildResults: [...buildResult.results, ...lintResults, ...styleResult ? [styleResult] : []]
46
73
  });
47
74
  this._debug("WATCH...");
48
75
  const fnQ = new FunctionQueue();
@@ -59,11 +86,18 @@ export class SdCliTsLibBuilder extends EventEmitter {
59
86
  this._debug(`BUILD...`);
60
87
  const watchBuildResult = await sdTsProgram.buildAsync();
61
88
  this._debug(`LINT...`);
62
- const watchLintResults = await SdLinter.lintAsync(watchBuildResult.affectedFilePaths, sdTsProgram.builderProgram.getProgram());
89
+ const watchLintResults = !this._withLint ? [] : await SdLinter.lintAsync(watchBuildResult.affectedFilePaths, sdTsProgram.builderProgram.getProgram());
90
+ let watchStyleResult;
91
+ if (this._pkgConf.style !== undefined && watchBuildResult.affectedFilePaths.some((item) => item.endsWith(this._pkgConf.style))) {
92
+ this._debug("STYLE...");
93
+ watchStyleResult = await this._genStyleAsync();
94
+ }
95
+ this._debug("COPY...");
96
+ await FsUtil.copyAsync(path.resolve(this._pkgPath, "src/assets"), path.resolve(this._pkgPath, "dist/assets"));
63
97
  this._debug(`빌드 완료`);
64
98
  this.emit("complete", {
65
99
  affectedFilePaths: watchBuildResult.affectedFilePaths,
66
- buildResults: [...watchBuildResult.results, ...watchLintResults]
100
+ buildResults: [...watchBuildResult.results, ...watchLintResults, ...watchStyleResult ? [watchStyleResult] : []]
67
101
  });
68
102
  });
69
103
  });
@@ -71,5 +105,25 @@ export class SdCliTsLibBuilder extends EventEmitter {
71
105
  _debug(msg) {
72
106
  this._logger.debug(`[${path.basename(this._pkgPath)}] ${msg}`);
73
107
  }
108
+ async _genStyleAsync() {
109
+ const srcFilePath = path.resolve(this._pkgPath, "dist", this._pkgConf.style + ".js");
110
+ try {
111
+ const styleImport = await import(pathToFileURL(srcFilePath).href + "?token=" + Uuid.new().toString());
112
+ const styleText = styleImport.default.join("");
113
+ const styleRendered = await less.render(styleText);
114
+ await FsUtil.writeFileAsync(path.resolve(this._pkgPath, "style.css"), styleRendered.css);
115
+ }
116
+ catch (err) {
117
+ return {
118
+ code: undefined,
119
+ message: err.message,
120
+ severity: "error",
121
+ char: undefined,
122
+ line: undefined,
123
+ filePath: srcFilePath
124
+ };
125
+ }
126
+ return;
127
+ }
74
128
  }
75
129
  //# sourceMappingURL=SdCliTsLibBuilder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SdCliTsLibBuilder.js","sourceRoot":"","sources":["../../../../src/builders/SdCliTsLibBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SdCliTsLibBuilder.js","sourceRoot":"","sources":["../../src/builders/SdCliTsLibBuilder.ts"],"names":[],"mappings":"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"}
package/dist/commons.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  export interface INpmConfig {
2
2
  name: string;
3
+ description?: string;
3
4
  version: string;
4
5
  workspaces?: string[];
5
6
  dependencies?: Record<string, string>;
@@ -15,6 +16,8 @@ export interface ISdCliBuildClusterReqMessage {
15
16
  cmd: "watch" | "build";
16
17
  pkgPath: string;
17
18
  pkgConf: TSdCliPackageConfig;
19
+ builderKey?: "web" | "electron";
20
+ withLint: boolean;
18
21
  }
19
22
  export interface ISdCliBuildClusterResMessage {
20
23
  req: ISdCliBuildClusterReqMessage;
@@ -38,18 +41,41 @@ export interface ISdCliConfig {
38
41
  packages: Record<string, TSdCliPackageConfig | undefined>;
39
42
  localUpdates?: Record<string, string>;
40
43
  }
44
+ export type TSdCliConfigFn = (isDev: boolean, opts?: string[]) => ISdCliConfig;
41
45
  export type TSdCliPackageConfig = ISdCliLibPackageConfig | ISdCliServerPackageConfig | ISdCliClientPackageConfig;
42
46
  export interface ISdCliLibPackageConfig {
43
47
  type: "library";
48
+ style?: string;
44
49
  publish?: "npm";
45
50
  }
46
51
  export interface ISdCliServerPackageConfig {
47
52
  type: "server";
48
53
  externals?: string[];
49
- publish?: any;
54
+ publish?: ISdCliLocalDirectoryPublishConfig;
55
+ configs?: Record<string, any>;
50
56
  }
51
57
  export interface ISdCliClientPackageConfig {
52
58
  type: "client";
53
59
  server?: string;
54
- publish?: any;
60
+ publish?: ISdCliLocalDirectoryPublishConfig;
61
+ env?: Record<string, string>;
62
+ configs?: Record<string, any>;
63
+ builder?: {
64
+ web?: ISdCliClientBuilderWebConfig;
65
+ electron?: ISdCliClientBuilderElectronConfig;
66
+ };
67
+ }
68
+ export interface ISdCliLocalDirectoryPublishConfig {
69
+ type: "local-directory";
70
+ path: string;
71
+ }
72
+ export interface ISdCliClientBuilderElectronConfig {
73
+ appId: string;
74
+ installerIcon?: string;
75
+ postInstallScript?: string;
76
+ devServerPort?: number;
77
+ reinstallDependencies?: string[];
78
+ }
79
+ export interface ISdCliClientBuilderWebConfig {
80
+ devServerPort?: number;
55
81
  }
@@ -1 +1 @@
1
- {"version":3,"file":"commons.js","sourceRoot":"","sources":["../../../src/commons.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"commons.js","sourceRoot":"","sources":["../src/commons.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ export declare class SdCliElectron {
2
+ static runAsync(opt: {
3
+ confFileRelPath: string;
4
+ optNames: string[];
5
+ pkgName: string;
6
+ }): Promise<void>;
7
+ }
@@ -0,0 +1,42 @@
1
+ import { FsUtil, Logger, SdProcess } from "@simplysm/sd-core-node";
2
+ import { pathToFileURL } from "url";
3
+ import path from "path";
4
+ export class SdCliElectron {
5
+ static async runAsync(opt) {
6
+ const logger = Logger.get(["simplysm", "sd-cli", "SdCliElectron", "runAsync"]);
7
+ const pkgPath = path.resolve(process.cwd(), `packages/${opt.pkgName}`);
8
+ const electronPath = path.resolve(pkgPath, ".cache/dev/electron/src");
9
+ logger.log("설정 가져오기...");
10
+ const projConf = (await import(pathToFileURL(path.resolve(process.cwd(), opt.confFileRelPath)).href)).default(true, opt.optNames);
11
+ const pkgConf = projConf.packages[opt.pkgName];
12
+ if (pkgConf?.type !== "client" || pkgConf.builder?.electron === undefined) {
13
+ throw new Error();
14
+ }
15
+ logger.log("package.json 파일 쓰기...");
16
+ const npmConfig = (await FsUtil.readJsonAsync(path.resolve(pkgPath, `package.json`)));
17
+ const externalPkgNames = pkgConf.builder.electron.reinstallDependencies ?? [];
18
+ await FsUtil.writeJsonAsync(path.resolve(electronPath, `package.json`), {
19
+ name: npmConfig.name,
20
+ version: npmConfig.version,
21
+ description: npmConfig.description,
22
+ main: "electron-main.js",
23
+ ...pkgConf.builder.electron.postInstallScript !== undefined ? {
24
+ scripts: {
25
+ "postinstall": pkgConf.builder.electron.postInstallScript
26
+ },
27
+ } : {},
28
+ dependencies: externalPkgNames.toObject((item) => item, (item) => npmConfig.dependencies[item])
29
+ });
30
+ logger.log("npm install...");
31
+ await SdProcess.spawnAsync(`npm install`, { cwd: electronPath }, true);
32
+ for (const externalPkgName of externalPkgNames) {
33
+ if (FsUtil.exists(path.resolve(electronPath, "node_modules", externalPkgName, "binding.gyp"))) {
34
+ logger.log(`electron rebuild (${externalPkgName})...`);
35
+ await SdProcess.spawnAsync(`electron-rebuild -m ./node_modules/${externalPkgName}`, { cwd: electronPath }, true);
36
+ }
37
+ }
38
+ logger.log("electron...");
39
+ await SdProcess.spawnAsync(`electron .`, { cwd: electronPath }, true);
40
+ }
41
+ }
42
+ //# sourceMappingURL=SdCliElectron.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SdCliElectron.js","sourceRoot":"","sources":["../../src/entry/SdCliElectron.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  export declare class SdCliLocalUpdate {
2
2
  static runAsync(opt: {
3
- rootPath: string;
4
3
  confFileRelPath: string;
4
+ optNames: string[];
5
5
  }): Promise<void>;
6
6
  static watchAsync(opt: {
7
- rootPath: string;
8
7
  confFileRelPath: string;
8
+ optNames: string[];
9
9
  }): Promise<void>;
10
- private static _getWatchPathsAsync;
11
10
  private static _getUpdatePathInfosAsync;
11
+ private static _getWatchPathsAsync;
12
12
  }
@@ -1,17 +1,16 @@
1
- import path from "path";
2
1
  import { FsUtil, Logger, PathUtil, SdFsWatcher } from "@simplysm/sd-core-node";
3
- import { SdCliConfigUtil } from "../utils/SdCliConfigUtil";
2
+ import path from "path";
3
+ import { pathToFileURL } from "url";
4
4
  export class SdCliLocalUpdate {
5
5
  static async runAsync(opt) {
6
6
  const logger = Logger.get(["simplysm", "sd-cli", "SdCliLocalUpdate", "runAsync"]);
7
7
  logger.debug("프로젝트 설정 가져오기...");
8
- const conf = await SdCliConfigUtil.loadConfigAsync(path.resolve(opt.rootPath, opt.confFileRelPath), false);
9
- if (!conf.localUpdates)
8
+ const projConf = (await import(pathToFileURL(path.resolve(process.cwd(), opt.confFileRelPath)).href)).default(true, opt.optNames);
9
+ if (!projConf.localUpdates)
10
10
  return;
11
11
  logger.debug("로컬 업데이트 구성...");
12
- const updatePathInfos = await this._getUpdatePathInfosAsync(opt.rootPath, conf.localUpdates);
13
- logger.debug("로컬 업데이트 구성 완료", updatePathInfos);
14
- logger.log("로컬 라이브러리 업데이트 시작...");
12
+ const updatePathInfos = await this._getUpdatePathInfosAsync(projConf.localUpdates);
13
+ logger.log("로컬 라이브러리 업데이트...");
15
14
  for (const updatePathInfo of updatePathInfos) {
16
15
  if (!FsUtil.exists(updatePathInfo.source)) {
17
16
  logger.warn(`소스경로를 찾을 수 없어 무시됩니다(${updatePathInfo.source})`);
@@ -27,12 +26,11 @@ export class SdCliLocalUpdate {
27
26
  static async watchAsync(opt) {
28
27
  const logger = Logger.get(["simplysm", "sd-cli", "SdCliLocalUpdate", "watchAsync"]);
29
28
  logger.debug("프로젝트 설정 가져오기...");
30
- const conf = await SdCliConfigUtil.loadConfigAsync(path.resolve(opt.rootPath, opt.confFileRelPath), false);
31
- if (!conf.localUpdates)
29
+ const projConf = (await import(pathToFileURL(path.resolve(process.cwd(), opt.confFileRelPath)).href)).default(true, opt.optNames);
30
+ if (!projConf.localUpdates)
32
31
  return;
33
32
  logger.debug("로컬 업데이트 구성...");
34
- const updatePathInfos = await this._getUpdatePathInfosAsync(opt.rootPath, conf.localUpdates);
35
- logger.debug("로컬 업데이트 구성 완료", updatePathInfos);
33
+ const updatePathInfos = await this._getUpdatePathInfosAsync(projConf.localUpdates);
36
34
  const watchPaths = (await updatePathInfos.mapManyAsync(async (item) => await this._getWatchPathsAsync(item.source))).distinct();
37
35
  const watcher = SdFsWatcher.watch(watchPaths);
38
36
  watcher.onChange({ delay: 1000 }, async (changedInfos) => {
@@ -47,10 +45,6 @@ export class SdCliLocalUpdate {
47
45
  if (!PathUtil.isChildPath(changedFilePath, updatePathInfo.source))
48
46
  continue;
49
47
  const sourceRelPath = path.relative(updatePathInfo.source, changedFilePath);
50
- if (sourceRelPath.includes("node_modules"))
51
- continue;
52
- if (sourceRelPath.includes("package.json"))
53
- continue;
54
48
  const targetFilePath = path.resolve(updatePathInfo.target, sourceRelPath);
55
49
  logger.debug(`변경파일감지(복사): ${changedFilePath} => ${targetFilePath}`);
56
50
  await FsUtil.copyAsync(changedFilePath, targetFilePath);
@@ -61,21 +55,13 @@ export class SdCliLocalUpdate {
61
55
  logger.info("로컬 라이브러리 복사 완료");
62
56
  });
63
57
  }
64
- static async _getWatchPathsAsync(sourcePath) {
65
- return await FsUtil.globAsync(path.resolve(sourcePath, "**"), {
66
- ignore: [
67
- "**/node_modules/**",
68
- "**/package.json"
69
- ]
70
- });
71
- }
72
- static async _getUpdatePathInfosAsync(rootPath, record) {
58
+ static async _getUpdatePathInfosAsync(record) {
73
59
  const result = [];
74
60
  for (const pkgGlobPath of Object.keys(record)) {
75
61
  // "node_modules'에서 로컬업데이트 설정에 맞는 패키지를 "glob"하여 대상 패키지경로 목록 가져오기
76
62
  const targetPaths = [
77
- ...await FsUtil.globAsync(path.resolve(rootPath, "node_modules", pkgGlobPath)),
78
- ...await FsUtil.globAsync(path.resolve(rootPath, "**", "node_modules", pkgGlobPath))
63
+ ...await FsUtil.globAsync(path.resolve(process.cwd(), "node_modules", pkgGlobPath)),
64
+ ...await FsUtil.globAsync(path.resolve(process.cwd(), "packages", "*", "node_modules", pkgGlobPath))
79
65
  ];
80
66
  result.push(...targetPaths
81
67
  .map((targetPath) => {
@@ -96,5 +82,13 @@ export class SdCliLocalUpdate {
96
82
  }
97
83
  return result;
98
84
  }
85
+ static async _getWatchPathsAsync(sourcePath) {
86
+ return await FsUtil.globAsync(path.resolve(sourcePath, "**"), {
87
+ ignore: [
88
+ "**/node_modules/**",
89
+ "**/package.json"
90
+ ]
91
+ });
92
+ }
99
93
  }
100
94
  //# sourceMappingURL=SdCliLocalUpdate.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SdCliLocalUpdate.js","sourceRoot":"","sources":["../../../../src/entry/SdCliLocalUpdate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SdCliLocalUpdate.js","sourceRoot":"","sources":["../../src/entry/SdCliLocalUpdate.ts"],"names":[],"mappings":"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"}
@@ -1,22 +1,22 @@
1
1
  export declare class SdCliProject {
2
2
  static watchAsync(opt: {
3
- rootPath: string;
4
3
  confFileRelPath: string;
5
4
  optNames: string[];
6
5
  pkgNames: string[];
6
+ withLint: boolean;
7
7
  }): Promise<void>;
8
8
  static buildAsync(opt: {
9
- rootPath: string;
10
9
  confFileRelPath: string;
11
10
  optNames: string[];
12
11
  pkgNames: string[];
12
+ withLint: boolean;
13
13
  }): Promise<void>;
14
14
  static publishAsync(opt: {
15
- rootPath: string;
16
15
  noBuild: boolean;
17
16
  confFileRelPath: string;
18
17
  optNames: string[];
19
18
  pkgNames: string[];
19
+ withLint: boolean;
20
20
  }): Promise<void>;
21
21
  private static _publishPkgAsync;
22
22
  private static _waitSecMessageAsync;