@simplysm/sd-cli 13.0.69 → 13.0.71
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/README.md +10 -957
- package/dist/builders/BaseBuilder.d.ts +23 -23
- package/dist/builders/BaseBuilder.d.ts.map +1 -1
- package/dist/builders/BaseBuilder.js +15 -15
- package/dist/builders/DtsBuilder.d.ts +4 -4
- package/dist/builders/DtsBuilder.js +1 -1
- package/dist/builders/LibraryBuilder.d.ts +3 -3
- package/dist/builders/types.d.ts +10 -10
- package/dist/capacitor/capacitor.d.ts +36 -36
- package/dist/capacitor/capacitor.js +63 -63
- package/dist/capacitor/capacitor.js.map +1 -1
- package/dist/commands/add-client.d.ts +8 -8
- package/dist/commands/add-client.js +15 -15
- package/dist/commands/add-client.js.map +1 -1
- package/dist/commands/add-server.d.ts +9 -9
- package/dist/commands/add-server.js +13 -13
- package/dist/commands/add-server.js.map +1 -1
- package/dist/commands/build.d.ts +9 -9
- package/dist/commands/check.js +3 -3
- package/dist/commands/check.js.map +1 -1
- package/dist/commands/dev.d.ts +9 -9
- package/dist/commands/device.d.ts +9 -9
- package/dist/commands/device.d.ts.map +1 -1
- package/dist/commands/device.js +17 -17
- package/dist/commands/device.js.map +1 -1
- package/dist/commands/init.d.ts +6 -6
- package/dist/commands/init.js +12 -12
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/lint.d.ts +23 -23
- package/dist/commands/lint.d.ts.map +1 -1
- package/dist/commands/lint.js +25 -25
- package/dist/commands/lint.js.map +1 -1
- package/dist/commands/publish.d.ts +13 -13
- package/dist/commands/publish.d.ts.map +1 -1
- package/dist/commands/publish.js +61 -61
- package/dist/commands/publish.js.map +1 -1
- package/dist/commands/replace-deps.d.ts +3 -3
- package/dist/commands/replace-deps.d.ts.map +1 -1
- package/dist/commands/replace-deps.js +1 -1
- package/dist/commands/replace-deps.js.map +1 -1
- package/dist/commands/typecheck.d.ts +20 -20
- package/dist/commands/typecheck.d.ts.map +1 -1
- package/dist/commands/typecheck.js +20 -20
- package/dist/commands/typecheck.js.map +1 -1
- package/dist/commands/watch.d.ts +7 -7
- package/dist/electron/electron.d.ts +27 -27
- package/dist/electron/electron.js +32 -32
- package/dist/electron/electron.js.map +1 -1
- package/dist/infra/ResultCollector.d.ts +9 -9
- package/dist/infra/ResultCollector.js +5 -5
- package/dist/infra/SignalHandler.d.ts +7 -7
- package/dist/infra/SignalHandler.js +4 -4
- package/dist/infra/WorkerManager.d.ts +14 -14
- package/dist/infra/WorkerManager.js +11 -11
- package/dist/orchestrators/BuildOrchestrator.d.ts +19 -19
- package/dist/orchestrators/BuildOrchestrator.d.ts.map +1 -1
- package/dist/orchestrators/BuildOrchestrator.js +26 -26
- package/dist/orchestrators/BuildOrchestrator.js.map +1 -1
- package/dist/orchestrators/DevOrchestrator.d.ts +25 -25
- package/dist/orchestrators/DevOrchestrator.d.ts.map +1 -1
- package/dist/orchestrators/DevOrchestrator.js +30 -30
- package/dist/orchestrators/DevOrchestrator.js.map +1 -1
- package/dist/orchestrators/WatchOrchestrator.d.ts +13 -13
- package/dist/orchestrators/WatchOrchestrator.js +17 -17
- package/dist/orchestrators/WatchOrchestrator.js.map +1 -1
- package/dist/sd-cli-entry.d.ts +2 -2
- package/dist/sd-cli-entry.js +38 -38
- package/dist/sd-cli-entry.js.map +1 -1
- package/dist/sd-cli.d.ts +2 -2
- package/dist/sd-cli.js +1 -1
- package/dist/sd-cli.js.map +1 -1
- package/dist/sd-config.types.d.ts +84 -84
- package/dist/sd-config.types.d.ts.map +1 -1
- package/dist/utils/build-env.d.ts +1 -1
- package/dist/utils/config-editor.d.ts +5 -5
- package/dist/utils/config-editor.js +2 -2
- package/dist/utils/config-editor.js.map +1 -1
- package/dist/utils/copy-public.d.ts +9 -9
- package/dist/utils/copy-src.d.ts +9 -9
- package/dist/utils/esbuild-config.d.ts +30 -30
- package/dist/utils/esbuild-config.d.ts.map +1 -1
- package/dist/utils/output-utils.d.ts +6 -6
- package/dist/utils/package-utils.d.ts +6 -6
- package/dist/utils/package-utils.js +1 -1
- package/dist/utils/package-utils.js.map +1 -1
- package/dist/utils/rebuild-manager.js +3 -3
- package/dist/utils/rebuild-manager.js.map +1 -1
- package/dist/utils/replace-deps.d.ts +25 -25
- package/dist/utils/replace-deps.js +3 -3
- package/dist/utils/replace-deps.js.map +1 -1
- package/dist/utils/sd-config.d.ts +3 -3
- package/dist/utils/sd-config.js +3 -3
- package/dist/utils/sd-config.js.map +1 -1
- package/dist/utils/tailwind-config-deps.d.ts +3 -3
- package/dist/utils/template.d.ts +8 -8
- package/dist/utils/tsconfig.d.ts +16 -16
- package/dist/utils/tsconfig.js +2 -2
- package/dist/utils/tsconfig.js.map +1 -1
- package/dist/utils/typecheck-serialization.d.ts +8 -8
- package/dist/utils/vite-config.d.ts +8 -8
- package/dist/utils/vite-config.d.ts.map +1 -1
- package/dist/utils/vite-config.js +3 -3
- package/dist/utils/worker-events.d.ts +12 -12
- package/dist/utils/worker-events.d.ts.map +1 -1
- package/dist/utils/worker-utils.d.ts +3 -3
- package/dist/utils/worker-utils.js +2 -2
- package/dist/utils/worker-utils.js.map +1 -1
- package/dist/workers/client.worker.d.ts +14 -14
- package/dist/workers/client.worker.d.ts.map +1 -1
- package/dist/workers/client.worker.js +1 -1
- package/dist/workers/client.worker.js.map +1 -1
- package/dist/workers/dts.worker.d.ts +13 -13
- package/dist/workers/dts.worker.d.ts.map +1 -1
- package/dist/workers/dts.worker.js +3 -3
- package/dist/workers/dts.worker.js.map +1 -1
- package/dist/workers/library.worker.d.ts +12 -12
- package/dist/workers/library.worker.js +1 -1
- package/dist/workers/library.worker.js.map +1 -1
- package/dist/workers/lint.worker.d.ts +1 -1
- package/dist/workers/server-runtime.worker.d.ts +6 -6
- package/dist/workers/server-runtime.worker.js +6 -6
- package/dist/workers/server-runtime.worker.js.map +1 -1
- package/dist/workers/server.worker.d.ts +20 -20
- package/dist/workers/server.worker.d.ts.map +1 -1
- package/dist/workers/server.worker.js +6 -6
- package/dist/workers/server.worker.js.map +1 -1
- package/package.json +8 -7
- package/src/builders/BaseBuilder.ts +33 -33
- package/src/builders/DtsBuilder.ts +5 -5
- package/src/builders/LibraryBuilder.ts +9 -9
- package/src/builders/types.ts +10 -10
- package/src/capacitor/capacitor.ts +119 -119
- package/src/commands/add-client.ts +31 -31
- package/src/commands/add-server.ts +34 -34
- package/src/commands/build.ts +9 -9
- package/src/commands/check.ts +5 -5
- package/src/commands/dev.ts +9 -9
- package/src/commands/device.ts +30 -30
- package/src/commands/init.ts +25 -25
- package/src/commands/lint.ts +64 -64
- package/src/commands/publish.ts +139 -139
- package/src/commands/replace-deps.ts +4 -4
- package/src/commands/typecheck.ts +74 -74
- package/src/commands/watch.ts +7 -7
- package/src/electron/electron.ts +51 -51
- package/src/infra/ResultCollector.ts +9 -9
- package/src/infra/SignalHandler.ts +7 -7
- package/src/infra/WorkerManager.ts +14 -14
- package/src/orchestrators/BuildOrchestrator.ts +76 -76
- package/src/orchestrators/DevOrchestrator.ts +88 -88
- package/src/orchestrators/WatchOrchestrator.ts +39 -39
- package/src/sd-cli-entry.ts +43 -43
- package/src/sd-cli.ts +15 -15
- package/src/sd-config.types.ts +85 -85
- package/src/utils/build-env.ts +1 -1
- package/src/utils/config-editor.ts +19 -19
- package/src/utils/copy-public.ts +17 -17
- package/src/utils/copy-src.ts +11 -11
- package/src/utils/esbuild-config.ts +33 -33
- package/src/utils/output-utils.ts +11 -11
- package/src/utils/package-utils.ts +12 -12
- package/src/utils/rebuild-manager.ts +3 -3
- package/src/utils/replace-deps.ts +361 -361
- package/src/utils/sd-config.ts +44 -44
- package/src/utils/tailwind-config-deps.ts +98 -98
- package/src/utils/template.ts +56 -56
- package/src/utils/tsconfig.ts +127 -127
- package/src/utils/typecheck-serialization.ts +86 -86
- package/src/utils/vite-config.ts +341 -341
- package/src/utils/worker-events.ts +16 -16
- package/src/utils/worker-utils.ts +45 -45
- package/src/workers/client.worker.ts +34 -34
- package/src/workers/dts.worker.ts +467 -467
- package/src/workers/library.worker.ts +314 -314
- package/src/workers/lint.worker.ts +16 -16
- package/src/workers/server-runtime.worker.ts +157 -157
- package/src/workers/server.worker.ts +572 -572
- package/templates/add-client/__CLIENT__/package.json.hbs +1 -1
- package/templates/add-server/__SERVER__/package.json.hbs +2 -2
- package/templates/init/package.json.hbs +3 -3
- package/tests/config-editor.spec.ts +160 -0
- package/tests/copy-src.spec.ts +50 -0
- package/tests/get-compiler-options-for-package.spec.ts +139 -0
- package/tests/get-package-source-files.spec.ts +181 -0
- package/tests/get-types-from-package-json.spec.ts +107 -0
- package/tests/infra/ResultCollector.spec.ts +39 -0
- package/tests/infra/SignalHandler.spec.ts +38 -0
- package/tests/infra/WorkerManager.spec.ts +97 -0
- package/tests/load-ignore-patterns.spec.ts +188 -0
- package/tests/load-sd-config.spec.ts +137 -0
- package/tests/package-utils.spec.ts +188 -0
- package/tests/parse-root-tsconfig.spec.ts +89 -0
- package/tests/replace-deps.spec.ts +308 -0
- package/tests/run-lint.spec.ts +415 -0
- package/tests/run-typecheck.spec.ts +653 -0
- package/tests/run-watch.spec.ts +75 -0
- package/tests/sd-cli.spec.ts +330 -0
- package/tests/tailwind-config-deps.spec.ts +30 -0
- package/tests/template.spec.ts +70 -0
- package/tests/utils/rebuild-manager.spec.ts +43 -0
- package/tests/write-changed-output-files.spec.ts +97 -0
|
@@ -3,10 +3,10 @@ import type { BuildResult, ResultCollector } from "../infra/ResultCollector";
|
|
|
3
3
|
import type { RebuildManager } from "../utils/rebuild-manager";
|
|
4
4
|
import type { IBuilder, PackageInfo } from "./types";
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
6
|
+
* Abstract base class for Builder
|
|
7
7
|
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
8
|
+
* Provides common logic for all Builders and
|
|
9
|
+
* defines abstract methods that subclasses must implement.
|
|
10
10
|
*/
|
|
11
11
|
export declare abstract class BaseBuilder implements IBuilder {
|
|
12
12
|
protected readonly workerManager: WorkerManager;
|
|
@@ -15,9 +15,9 @@ export declare abstract class BaseBuilder implements IBuilder {
|
|
|
15
15
|
protected readonly packages: PackageInfo[];
|
|
16
16
|
protected readonly cwd: string;
|
|
17
17
|
protected isWatchMode: boolean;
|
|
18
|
-
/**
|
|
18
|
+
/** Initial build Promise (per package) */
|
|
19
19
|
protected readonly initialBuildPromises: Map<string, Promise<void>>;
|
|
20
|
-
/**
|
|
20
|
+
/** Initial build resolver (per package) */
|
|
21
21
|
protected readonly buildResolvers: Map<string, () => void>;
|
|
22
22
|
constructor(options: {
|
|
23
23
|
cwd: string;
|
|
@@ -26,62 +26,62 @@ export declare abstract class BaseBuilder implements IBuilder {
|
|
|
26
26
|
rebuildManager?: RebuildManager;
|
|
27
27
|
});
|
|
28
28
|
/**
|
|
29
|
-
* Builder
|
|
29
|
+
* Initialize Builder
|
|
30
30
|
*/
|
|
31
31
|
initialize(): Promise<void>;
|
|
32
32
|
/**
|
|
33
|
-
*
|
|
33
|
+
* One-time build (production)
|
|
34
34
|
*/
|
|
35
35
|
build(): Promise<void>;
|
|
36
36
|
/**
|
|
37
|
-
*
|
|
37
|
+
* Start watch mode
|
|
38
38
|
*/
|
|
39
39
|
startWatch(): Promise<void>;
|
|
40
40
|
/**
|
|
41
|
-
* Builder
|
|
41
|
+
* Shutdown Builder
|
|
42
42
|
*/
|
|
43
43
|
shutdown(): Promise<void>;
|
|
44
44
|
/**
|
|
45
|
-
*
|
|
45
|
+
* Get initial build Promise map
|
|
46
46
|
*/
|
|
47
47
|
getInitialBuildPromises(): Map<string, Promise<void>>;
|
|
48
48
|
/**
|
|
49
|
-
*
|
|
49
|
+
* Generate package key (for result storage)
|
|
50
50
|
*/
|
|
51
51
|
protected getPackageKey(pkg: PackageInfo): string;
|
|
52
52
|
/**
|
|
53
|
-
*
|
|
53
|
+
* Handle build completion
|
|
54
54
|
*/
|
|
55
55
|
protected completeBuild(pkg: PackageInfo): void;
|
|
56
56
|
/**
|
|
57
|
-
*
|
|
57
|
+
* Register common Worker event handlers (buildStart, build, error)
|
|
58
58
|
*
|
|
59
|
-
* LibraryBuilder
|
|
60
|
-
*
|
|
59
|
+
* Provides common logic so LibraryBuilder and DtsBuilder can register
|
|
60
|
+
* event handlers with the same pattern without duplication.
|
|
61
61
|
*
|
|
62
|
-
* @param workerKey Worker
|
|
63
|
-
* @param resultType BuildResult
|
|
64
|
-
* @param listrTitle
|
|
62
|
+
* @param workerKey Worker identifier (e.g., "core-common:build")
|
|
63
|
+
* @param resultType BuildResult type field value
|
|
64
|
+
* @param listrTitle Title to display during rebuild
|
|
65
65
|
*/
|
|
66
66
|
protected registerEventHandlersForWorker(pkg: PackageInfo, workerKey: string, resultType: BuildResult["type"], listrTitle: string): void;
|
|
67
67
|
/**
|
|
68
|
-
* Builder
|
|
68
|
+
* Builder type (for result key generation)
|
|
69
69
|
*/
|
|
70
70
|
protected abstract getBuilderType(): string;
|
|
71
71
|
/**
|
|
72
|
-
*
|
|
72
|
+
* Create Workers
|
|
73
73
|
*/
|
|
74
74
|
protected abstract createWorkers(): void;
|
|
75
75
|
/**
|
|
76
|
-
*
|
|
76
|
+
* Register event handlers
|
|
77
77
|
*/
|
|
78
78
|
protected abstract registerEventHandlers(): void;
|
|
79
79
|
/**
|
|
80
|
-
*
|
|
80
|
+
* Single package build (production)
|
|
81
81
|
*/
|
|
82
82
|
protected abstract buildPackage(pkg: PackageInfo): Promise<void>;
|
|
83
83
|
/**
|
|
84
|
-
*
|
|
84
|
+
* Start watching single package
|
|
85
85
|
*/
|
|
86
86
|
protected abstract startWatchPackage(pkg: PackageInfo): void;
|
|
87
87
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseBuilder.d.ts","sourceRoot":"","sources":["..\\..\\src\\builders\\BaseBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAG/D,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAIrD;;;;;GAKG;AACH,8BAAsB,WAAY,YAAW,QAAQ;IACnD,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAChD,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IACpD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,GAAG,SAAS,CAAC;IAC9D,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAC;IAC3C,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAC/B,SAAS,CAAC,WAAW,UAAS;IAE9B,
|
|
1
|
+
{"version":3,"file":"BaseBuilder.d.ts","sourceRoot":"","sources":["..\\..\\src\\builders\\BaseBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAG/D,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAIrD;;;;;GAKG;AACH,8BAAsB,WAAY,YAAW,QAAQ;IACnD,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAChD,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IACpD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,GAAG,SAAS,CAAC;IAC9D,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAC;IAC3C,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAC/B,SAAS,CAAC,WAAW,UAAS;IAE9B,0CAA0C;IAC1C,SAAS,CAAC,QAAQ,CAAC,oBAAoB,6BAAoC;IAC3E,2CAA2C;IAC3C,SAAS,CAAC,QAAQ,CAAC,cAAc,oBAAyB,IAAI,EAAI;gBAEtD,OAAO,EAAE;QACnB,GAAG,EAAE,MAAM,CAAC;QACZ,QAAQ,EAAE,WAAW,EAAE,CAAC;QACxB,eAAe,EAAE,eAAe,CAAC;QACjC,cAAc,CAAC,EAAE,cAAc,CAAC;KACjC;IAQD;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAqB3B;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAYjC;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAI/B;;OAEG;IACH,uBAAuB,IAAI,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAIrD;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM;IAIjD;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI;IAS/C;;;;;;;;;OASG;IACH,SAAS,CAAC,8BAA8B,CACtC,GAAG,EAAE,WAAW,EAChB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,EAC/B,UAAU,EAAE,MAAM,GACjB,IAAI;IAyDP;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,cAAc,IAAI,MAAM;IAE3C;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,aAAa,IAAI,IAAI;IAExC;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,qBAAqB,IAAI,IAAI;IAEhD;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAEhE;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI;CAC7D"}
|
|
@@ -9,9 +9,9 @@ class BaseBuilder {
|
|
|
9
9
|
packages;
|
|
10
10
|
cwd;
|
|
11
11
|
isWatchMode = false;
|
|
12
|
-
/**
|
|
12
|
+
/** Initial build Promise (per package) */
|
|
13
13
|
initialBuildPromises = /* @__PURE__ */ new Map();
|
|
14
|
-
/**
|
|
14
|
+
/** Initial build resolver (per package) */
|
|
15
15
|
buildResolvers = /* @__PURE__ */ new Map();
|
|
16
16
|
constructor(options) {
|
|
17
17
|
this.cwd = options.cwd;
|
|
@@ -21,7 +21,7 @@ class BaseBuilder {
|
|
|
21
21
|
this.workerManager = new WorkerManager();
|
|
22
22
|
}
|
|
23
23
|
/**
|
|
24
|
-
* Builder
|
|
24
|
+
* Initialize Builder
|
|
25
25
|
*/
|
|
26
26
|
initialize() {
|
|
27
27
|
for (const pkg of this.packages) {
|
|
@@ -38,13 +38,13 @@ class BaseBuilder {
|
|
|
38
38
|
return Promise.resolve();
|
|
39
39
|
}
|
|
40
40
|
/**
|
|
41
|
-
*
|
|
41
|
+
* One-time build (production)
|
|
42
42
|
*/
|
|
43
43
|
async build() {
|
|
44
44
|
await Promise.all(this.packages.map((pkg) => this.buildPackage(pkg)));
|
|
45
45
|
}
|
|
46
46
|
/**
|
|
47
|
-
*
|
|
47
|
+
* Start watch mode
|
|
48
48
|
*/
|
|
49
49
|
async startWatch() {
|
|
50
50
|
this.isWatchMode = true;
|
|
@@ -54,25 +54,25 @@ class BaseBuilder {
|
|
|
54
54
|
await Promise.all(this.initialBuildPromises.values());
|
|
55
55
|
}
|
|
56
56
|
/**
|
|
57
|
-
* Builder
|
|
57
|
+
* Shutdown Builder
|
|
58
58
|
*/
|
|
59
59
|
async shutdown() {
|
|
60
60
|
await this.workerManager.terminateAll();
|
|
61
61
|
}
|
|
62
62
|
/**
|
|
63
|
-
*
|
|
63
|
+
* Get initial build Promise map
|
|
64
64
|
*/
|
|
65
65
|
getInitialBuildPromises() {
|
|
66
66
|
return this.initialBuildPromises;
|
|
67
67
|
}
|
|
68
68
|
/**
|
|
69
|
-
*
|
|
69
|
+
* Generate package key (for result storage)
|
|
70
70
|
*/
|
|
71
71
|
getPackageKey(pkg) {
|
|
72
72
|
return `${pkg.name}:${this.getBuilderType()}`;
|
|
73
73
|
}
|
|
74
74
|
/**
|
|
75
|
-
*
|
|
75
|
+
* Handle build completion
|
|
76
76
|
*/
|
|
77
77
|
completeBuild(pkg) {
|
|
78
78
|
const key = this.getPackageKey(pkg);
|
|
@@ -83,14 +83,14 @@ class BaseBuilder {
|
|
|
83
83
|
}
|
|
84
84
|
}
|
|
85
85
|
/**
|
|
86
|
-
*
|
|
86
|
+
* Register common Worker event handlers (buildStart, build, error)
|
|
87
87
|
*
|
|
88
|
-
* LibraryBuilder
|
|
89
|
-
*
|
|
88
|
+
* Provides common logic so LibraryBuilder and DtsBuilder can register
|
|
89
|
+
* event handlers with the same pattern without duplication.
|
|
90
90
|
*
|
|
91
|
-
* @param workerKey Worker
|
|
92
|
-
* @param resultType BuildResult
|
|
93
|
-
* @param listrTitle
|
|
91
|
+
* @param workerKey Worker identifier (e.g., "core-common:build")
|
|
92
|
+
* @param resultType BuildResult type field value
|
|
93
|
+
* @param listrTitle Title to display during rebuild
|
|
94
94
|
*/
|
|
95
95
|
registerEventHandlersForWorker(pkg, workerKey, resultType, listrTitle) {
|
|
96
96
|
const worker = this.workerManager.get(workerKey);
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { BaseBuilder } from "./BaseBuilder";
|
|
2
2
|
import type { PackageInfo } from "./types";
|
|
3
3
|
/**
|
|
4
|
-
* .d.ts
|
|
4
|
+
* Builder responsible for generating .d.ts files
|
|
5
5
|
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
6
|
+
* Handles TypeScript declaration file generation for library packages.
|
|
7
|
+
* Supports both watch mode and production builds.
|
|
8
8
|
*/
|
|
9
9
|
export declare class DtsBuilder extends BaseBuilder {
|
|
10
10
|
private readonly _workerPath;
|
|
11
11
|
constructor(options: ConstructorParameters<typeof BaseBuilder>[0]);
|
|
12
12
|
protected getBuilderType(): string;
|
|
13
13
|
/**
|
|
14
|
-
*
|
|
14
|
+
* Determine TypecheckEnv from package target
|
|
15
15
|
*/
|
|
16
16
|
private _getEnv;
|
|
17
17
|
protected createWorkers(): void;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { BaseBuilder } from "./BaseBuilder";
|
|
2
2
|
import type { PackageInfo } from "./types";
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
4
|
+
* Builder responsible for Library package builds
|
|
5
5
|
*
|
|
6
|
-
* node/browser/neutral
|
|
7
|
-
*
|
|
6
|
+
* Handles esbuild compilation for node/browser/neutral target packages.
|
|
7
|
+
* Supports both watch mode and production builds.
|
|
8
8
|
*/
|
|
9
9
|
export declare class LibraryBuilder extends BaseBuilder {
|
|
10
10
|
private readonly _workerPath;
|
package/dist/builders/types.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import type { SdPackageConfig } from "../sd-config.types";
|
|
|
2
2
|
import type { ResultCollector } from "../infra/ResultCollector";
|
|
3
3
|
import type { RebuildManager } from "../utils/rebuild-manager";
|
|
4
4
|
/**
|
|
5
|
-
*
|
|
5
|
+
* Package information
|
|
6
6
|
*/
|
|
7
7
|
export interface PackageInfo {
|
|
8
8
|
name: string;
|
|
@@ -10,7 +10,7 @@ export interface PackageInfo {
|
|
|
10
10
|
config: SdPackageConfig;
|
|
11
11
|
}
|
|
12
12
|
/**
|
|
13
|
-
* Builder
|
|
13
|
+
* Common Builder options
|
|
14
14
|
*/
|
|
15
15
|
export interface BuilderOptions {
|
|
16
16
|
cwd: string;
|
|
@@ -19,30 +19,30 @@ export interface BuilderOptions {
|
|
|
19
19
|
rebuildManager?: RebuildManager;
|
|
20
20
|
}
|
|
21
21
|
/**
|
|
22
|
-
* Builder
|
|
22
|
+
* Builder interface
|
|
23
23
|
*
|
|
24
|
-
*
|
|
24
|
+
* Common interface that all Builders must implement
|
|
25
25
|
*/
|
|
26
26
|
export interface IBuilder {
|
|
27
27
|
/**
|
|
28
|
-
* Builder
|
|
28
|
+
* Initialize Builder (create Workers, register event handlers)
|
|
29
29
|
*/
|
|
30
30
|
initialize(): Promise<void>;
|
|
31
31
|
/**
|
|
32
|
-
*
|
|
32
|
+
* One-time build (for production builds)
|
|
33
33
|
*/
|
|
34
34
|
build(): Promise<void>;
|
|
35
35
|
/**
|
|
36
|
-
*
|
|
37
|
-
* Promise
|
|
36
|
+
* Start watch mode
|
|
37
|
+
* Promise resolves when initial build is complete
|
|
38
38
|
*/
|
|
39
39
|
startWatch(): Promise<void>;
|
|
40
40
|
/**
|
|
41
|
-
* Builder
|
|
41
|
+
* Shutdown Builder (clean up Workers)
|
|
42
42
|
*/
|
|
43
43
|
shutdown(): Promise<void>;
|
|
44
44
|
/**
|
|
45
|
-
*
|
|
45
|
+
* Get initial build Promise map (for Listr tasks)
|
|
46
46
|
*/
|
|
47
47
|
getInitialBuildPromises(): Map<string, Promise<void>>;
|
|
48
48
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import type { SdCapacitorConfig } from "../sd-config.types";
|
|
2
2
|
/**
|
|
3
|
-
* Capacitor
|
|
3
|
+
* Capacitor project management class
|
|
4
4
|
*
|
|
5
|
-
* - Capacitor
|
|
6
|
-
* - Android APK/AAB
|
|
7
|
-
* -
|
|
5
|
+
* - Initialize Capacitor project
|
|
6
|
+
* - Build Android APK/AAB
|
|
7
|
+
* - Run app on device
|
|
8
8
|
*/
|
|
9
9
|
export declare class Capacitor {
|
|
10
10
|
private readonly _pkgPath;
|
|
@@ -17,114 +17,114 @@ export declare class Capacitor {
|
|
|
17
17
|
private readonly _npmConfig;
|
|
18
18
|
private constructor();
|
|
19
19
|
/**
|
|
20
|
-
* Capacitor
|
|
20
|
+
* Create Capacitor instance (with configuration validation)
|
|
21
21
|
*/
|
|
22
22
|
static create(pkgPath: string, config: SdCapacitorConfig): Promise<Capacitor>;
|
|
23
23
|
/**
|
|
24
|
-
* F5:
|
|
24
|
+
* F5: Validate configuration
|
|
25
25
|
*/
|
|
26
26
|
private static _validateConfig;
|
|
27
27
|
/**
|
|
28
|
-
*
|
|
28
|
+
* Execute command (with logging)
|
|
29
29
|
*/
|
|
30
30
|
private _exec;
|
|
31
31
|
/**
|
|
32
|
-
* F10:
|
|
32
|
+
* F10: Acquire lock to prevent concurrent execution
|
|
33
33
|
*/
|
|
34
34
|
private _acquireLock;
|
|
35
35
|
/**
|
|
36
|
-
* F10:
|
|
36
|
+
* F10: Release lock
|
|
37
37
|
*/
|
|
38
38
|
private _releaseLock;
|
|
39
39
|
/**
|
|
40
|
-
* F4:
|
|
40
|
+
* F4: Validate external tools
|
|
41
41
|
*/
|
|
42
42
|
private _validateTools;
|
|
43
43
|
/**
|
|
44
|
-
* Capacitor
|
|
44
|
+
* Initialize Capacitor project
|
|
45
45
|
*
|
|
46
|
-
* 1. package.json
|
|
47
|
-
* 2. capacitor.config.ts
|
|
48
|
-
* 3.
|
|
49
|
-
* 4.
|
|
50
|
-
* 5. Android
|
|
51
|
-
* 6. cap sync
|
|
46
|
+
* 1. Create package.json and install dependencies
|
|
47
|
+
* 2. Create capacitor.config.ts
|
|
48
|
+
* 3. Add platform (android)
|
|
49
|
+
* 4. Set up icon
|
|
50
|
+
* 5. Configure Android native settings
|
|
51
|
+
* 6. Run cap sync or cap copy
|
|
52
52
|
*/
|
|
53
53
|
initialize(): Promise<void>;
|
|
54
54
|
/**
|
|
55
|
-
* Android APK/AAB
|
|
55
|
+
* Build Android APK/AAB
|
|
56
56
|
*/
|
|
57
57
|
build(outPath: string): Promise<void>;
|
|
58
58
|
/**
|
|
59
|
-
*
|
|
59
|
+
* Run app on device (connect WebView to development server)
|
|
60
60
|
*/
|
|
61
61
|
runOnDevice(url?: string): Promise<void>;
|
|
62
62
|
/**
|
|
63
|
-
* F11: URL
|
|
63
|
+
* F11: Validate URL
|
|
64
64
|
*/
|
|
65
65
|
private _validateUrl;
|
|
66
66
|
/**
|
|
67
|
-
* Capacitor
|
|
67
|
+
* Basic Capacitor project initialization (package.json, npm install, cap init)
|
|
68
68
|
*/
|
|
69
69
|
private _initCap;
|
|
70
70
|
/**
|
|
71
|
-
* package.json
|
|
71
|
+
* Configure package.json
|
|
72
72
|
*/
|
|
73
73
|
private _setupNpmConf;
|
|
74
74
|
/**
|
|
75
|
-
* capacitor.config.ts
|
|
75
|
+
* Create capacitor.config.ts
|
|
76
76
|
*/
|
|
77
77
|
private _writeCapConf;
|
|
78
78
|
/**
|
|
79
|
-
*
|
|
79
|
+
* Add platform (F12: ensure idempotency)
|
|
80
80
|
*/
|
|
81
81
|
private _addPlatforms;
|
|
82
82
|
/**
|
|
83
|
-
*
|
|
83
|
+
* Set up icon (F6: error recovery)
|
|
84
84
|
*/
|
|
85
85
|
private _setupIcon;
|
|
86
86
|
/**
|
|
87
|
-
* Android
|
|
87
|
+
* Configure Android native settings
|
|
88
88
|
*/
|
|
89
89
|
private _configureAndroid;
|
|
90
90
|
/**
|
|
91
|
-
* JAVA_HOME
|
|
91
|
+
* Set up JAVA_HOME path (gradle.properties)
|
|
92
92
|
*/
|
|
93
93
|
private _configureAndroidJavaHomePath;
|
|
94
94
|
/**
|
|
95
|
-
* Java 21
|
|
95
|
+
* Auto-detect Java 21 path
|
|
96
96
|
*/
|
|
97
97
|
private _findJava21;
|
|
98
98
|
/**
|
|
99
|
-
* Android SDK
|
|
99
|
+
* Set up Android SDK path (local.properties)
|
|
100
100
|
*/
|
|
101
101
|
private _configureAndroidSdkPath;
|
|
102
102
|
/**
|
|
103
|
-
* Android SDK
|
|
103
|
+
* Search for Android SDK path
|
|
104
104
|
*/
|
|
105
105
|
private _findAndroidSdk;
|
|
106
106
|
/**
|
|
107
|
-
* AndroidManifest.xml
|
|
107
|
+
* Modify AndroidManifest.xml (F3: add error handling)
|
|
108
108
|
*/
|
|
109
109
|
private _configureAndroidManifest;
|
|
110
110
|
/**
|
|
111
|
-
* build.gradle
|
|
111
|
+
* Modify build.gradle (F3: add error handling)
|
|
112
112
|
*/
|
|
113
113
|
private _configureAndroidBuildGradle;
|
|
114
114
|
/**
|
|
115
|
-
* Android
|
|
115
|
+
* Build Android
|
|
116
116
|
*/
|
|
117
117
|
private _buildAndroid;
|
|
118
118
|
/**
|
|
119
|
-
* Android
|
|
119
|
+
* Copy Android build output
|
|
120
120
|
*/
|
|
121
121
|
private _copyAndroidBuildOutput;
|
|
122
122
|
/**
|
|
123
|
-
* capacitor.config.ts
|
|
123
|
+
* Update server.url in capacitor.config.ts
|
|
124
124
|
*/
|
|
125
125
|
private _updateServerUrl;
|
|
126
126
|
/**
|
|
127
|
-
*
|
|
127
|
+
* Convert string to PascalCase
|
|
128
128
|
*/
|
|
129
129
|
private _toPascalCase;
|
|
130
130
|
}
|