@simplysm/sd-cli 13.0.76 → 13.0.77
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 +341 -16
- package/dist/builders/DtsBuilder.js +2 -2
- package/dist/builders/DtsBuilder.js.map +1 -1
- package/dist/builders/LibraryBuilder.d.ts +3 -3
- package/dist/builders/LibraryBuilder.d.ts.map +1 -1
- package/dist/builders/LibraryBuilder.js +2 -2
- package/dist/builders/LibraryBuilder.js.map +1 -1
- package/dist/builders/types.d.ts +7 -1
- package/dist/builders/types.d.ts.map +1 -1
- package/dist/capacitor/capacitor.d.ts +5 -0
- package/dist/capacitor/capacitor.d.ts.map +1 -1
- package/dist/capacitor/capacitor.js +59 -59
- package/dist/capacitor/capacitor.js.map +1 -1
- package/dist/commands/check.js +4 -4
- package/dist/commands/check.js.map +1 -1
- package/dist/commands/device.js +3 -3
- package/dist/commands/device.js.map +1 -1
- package/dist/commands/lint.js +4 -4
- package/dist/commands/lint.js.map +1 -1
- package/dist/commands/publish.js +20 -20
- package/dist/commands/publish.js.map +1 -1
- package/dist/commands/replace-deps.js +1 -1
- package/dist/commands/replace-deps.js.map +1 -1
- package/dist/commands/typecheck.js +9 -9
- package/dist/commands/typecheck.js.map +1 -1
- package/dist/electron/electron.js +16 -16
- package/dist/electron/electron.js.map +1 -1
- package/dist/orchestrators/BuildOrchestrator.js +6 -6
- package/dist/orchestrators/BuildOrchestrator.js.map +1 -1
- package/dist/orchestrators/DevOrchestrator.d.ts +7 -6
- package/dist/orchestrators/DevOrchestrator.d.ts.map +1 -1
- package/dist/orchestrators/DevOrchestrator.js +157 -203
- package/dist/orchestrators/DevOrchestrator.js.map +1 -1
- package/dist/orchestrators/WatchOrchestrator.d.ts.map +1 -1
- package/dist/orchestrators/WatchOrchestrator.js +3 -4
- package/dist/orchestrators/WatchOrchestrator.js.map +1 -1
- package/dist/sd-cli.js +1 -1
- package/dist/sd-cli.js.map +1 -1
- package/dist/sd-config.types.d.ts +9 -3
- package/dist/sd-config.types.d.ts.map +1 -1
- package/dist/utils/copy-public.d.ts.map +1 -1
- package/dist/utils/copy-public.js +23 -27
- package/dist/utils/copy-public.js.map +1 -1
- package/dist/utils/copy-src.d.ts.map +1 -1
- package/dist/utils/copy-src.js +7 -7
- package/dist/utils/copy-src.js.map +1 -1
- package/dist/utils/esbuild-config.d.ts.map +1 -1
- package/dist/utils/esbuild-config.js +36 -42
- package/dist/utils/esbuild-config.js.map +1 -1
- package/dist/utils/replace-deps.js +7 -7
- package/dist/utils/replace-deps.js.map +1 -1
- package/dist/utils/sd-config.js +2 -2
- package/dist/utils/sd-config.js.map +1 -1
- package/dist/utils/template.js +7 -7
- package/dist/utils/template.js.map +1 -1
- package/dist/utils/tsconfig.d.ts +1 -2
- package/dist/utils/tsconfig.d.ts.map +1 -1
- package/dist/utils/tsconfig.js +5 -8
- package/dist/utils/tsconfig.js.map +1 -1
- package/dist/utils/typecheck-serialization.js +2 -2
- package/dist/utils/typecheck-serialization.js.map +1 -1
- package/dist/utils/vite-config.d.ts +2 -0
- package/dist/utils/vite-config.d.ts.map +1 -1
- package/dist/utils/vite-config.js +36 -3
- package/dist/utils/vite-config.js.map +1 -1
- package/dist/utils/worker-events.d.ts +11 -1
- package/dist/utils/worker-events.d.ts.map +1 -1
- package/dist/utils/worker-events.js +3 -5
- package/dist/utils/worker-events.js.map +1 -1
- package/dist/utils/worker-utils.d.ts +2 -2
- package/dist/utils/worker-utils.d.ts.map +1 -1
- package/dist/utils/worker-utils.js +1 -1
- package/dist/utils/worker-utils.js.map +1 -1
- package/dist/workers/client.worker.d.ts +1 -1
- package/dist/workers/client.worker.js +3 -3
- package/dist/workers/client.worker.js.map +1 -1
- package/dist/workers/dts.worker.d.ts +1 -1
- package/dist/workers/dts.worker.d.ts.map +1 -1
- package/dist/workers/dts.worker.js +13 -28
- package/dist/workers/dts.worker.js.map +1 -1
- package/dist/workers/library.worker.d.ts +1 -1
- package/dist/workers/library.worker.js +4 -4
- 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 +1 -1
- package/dist/workers/server-runtime.worker.js +4 -4
- package/dist/workers/server-runtime.worker.js.map +1 -1
- package/dist/workers/server.worker.d.ts +1 -1
- package/dist/workers/server.worker.js +6 -6
- package/dist/workers/server.worker.js.map +1 -1
- package/package.json +4 -4
- package/src/builders/DtsBuilder.ts +2 -2
- package/src/builders/LibraryBuilder.ts +7 -10
- package/src/builders/types.ts +6 -1
- package/src/capacitor/capacitor.ts +61 -60
- package/src/commands/check.ts +4 -4
- package/src/commands/device.ts +3 -3
- package/src/commands/lint.ts +4 -4
- package/src/commands/publish.ts +20 -20
- package/src/commands/replace-deps.ts +1 -1
- package/src/commands/typecheck.ts +9 -9
- package/src/electron/electron.ts +16 -16
- package/src/orchestrators/BuildOrchestrator.ts +6 -6
- package/src/orchestrators/DevOrchestrator.ts +210 -256
- package/src/orchestrators/WatchOrchestrator.ts +8 -10
- package/src/sd-cli.ts +1 -1
- package/src/sd-config.types.ts +10 -3
- package/src/utils/copy-public.ts +22 -26
- package/src/utils/copy-src.ts +7 -7
- package/src/utils/esbuild-config.ts +51 -63
- package/src/utils/replace-deps.ts +7 -7
- package/src/utils/sd-config.ts +2 -2
- package/src/utils/template.ts +7 -7
- package/src/utils/tsconfig.ts +6 -10
- package/src/utils/typecheck-serialization.ts +2 -2
- package/src/utils/vite-config.ts +376 -341
- package/src/utils/worker-events.ts +13 -10
- package/src/utils/worker-utils.ts +45 -45
- package/src/workers/client.worker.ts +3 -3
- package/src/workers/dts.worker.ts +451 -467
- package/src/workers/library.worker.ts +4 -4
- package/src/workers/server-runtime.worker.ts +4 -4
- package/src/workers/server.worker.ts +572 -572
- package/templates/init/package.json.hbs +2 -2
- package/templates/init/packages/client-admin/package.json.hbs +5 -5
- package/templates/init/packages/client-admin/src/views/auth/LoginView.tsx +2 -2
- package/templates/init/packages/client-admin/src/views/home/base/employee/EmployeeSheet.tsx.hbs +1 -1
- package/templates/init/packages/client-admin/src/views/home/base/role-permission/RoleSheet.tsx.hbs +1 -1
- package/templates/init/packages/db-main/package.json.hbs +2 -2
- package/templates/init/packages/server/package.json.hbs +4 -4
- package/templates/init/tests/e2e/package.json.hbs +1 -1
- package/tests/get-compiler-options-for-package.spec.ts +13 -27
- package/tests/get-types-from-package-json.spec.ts +15 -11
- package/tests/load-ignore-patterns.spec.ts +15 -11
- package/tests/load-sd-config.spec.ts +16 -14
- package/tests/publish-config-narrowing.spec.ts +20 -0
- package/tests/run-lint.spec.ts +38 -34
- package/tests/run-typecheck.spec.ts +194 -135
- package/tests/sd-public-dev-plugin-mime.spec.ts +19 -0
- package/dist/builders/index.d.ts +0 -5
- package/dist/builders/index.d.ts.map +0 -1
- package/dist/builders/index.js +0 -5
- package/dist/builders/index.js.map +0 -6
- package/dist/infra/index.d.ts +0 -4
- package/dist/infra/index.d.ts.map +0 -1
- package/dist/infra/index.js +0 -4
- package/dist/infra/index.js.map +0 -6
- package/dist/orchestrators/index.d.ts +0 -4
- package/dist/orchestrators/index.d.ts.map +0 -1
- package/dist/orchestrators/index.js +0 -4
- package/dist/orchestrators/index.js.map +0 -6
- package/src/builders/index.ts +0 -4
- package/src/infra/index.ts +0 -3
- package/src/orchestrators/index.ts +0 -3
|
@@ -63,11 +63,16 @@ export interface WorkerEventHandlerOptions {
|
|
|
63
63
|
* @param rebuildManager Rebuild manager
|
|
64
64
|
* @returns completeTask function (saves result and signals build completion)
|
|
65
65
|
*/
|
|
66
|
-
export function registerWorkerEventHandlers
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
66
|
+
export function registerWorkerEventHandlers(
|
|
67
|
+
workerInfo: {
|
|
68
|
+
name: string;
|
|
69
|
+
config: { target: string };
|
|
70
|
+
worker: {
|
|
71
|
+
on(event: string, handler: (data: any) => void): void;
|
|
72
|
+
};
|
|
73
|
+
isInitialBuild: boolean;
|
|
74
|
+
buildResolver: (() => void) | undefined;
|
|
75
|
+
},
|
|
71
76
|
opts: WorkerEventHandlerOptions,
|
|
72
77
|
results: Map<string, BuildResult>,
|
|
73
78
|
rebuildManager: RebuildManager,
|
|
@@ -87,8 +92,7 @@ export function registerWorkerEventHandlers<
|
|
|
87
92
|
});
|
|
88
93
|
|
|
89
94
|
// Build completion
|
|
90
|
-
workerInfo.worker.on("build", (
|
|
91
|
-
const data = _data as BuildEventData;
|
|
95
|
+
workerInfo.worker.on("build", (data) => {
|
|
92
96
|
workerEventsLogger.debug(`[${workerInfo.name}] build: success=${String(data.success)}`);
|
|
93
97
|
|
|
94
98
|
// Print warnings
|
|
@@ -102,14 +106,13 @@ export function registerWorkerEventHandlers<
|
|
|
102
106
|
name: workerInfo.name,
|
|
103
107
|
target: workerInfo.config.target,
|
|
104
108
|
type: opts.resultType,
|
|
105
|
-
status: data.success ? "success" : "error",
|
|
109
|
+
status: data.success === true ? "success" : "error",
|
|
106
110
|
message: data.errors?.join("\n"),
|
|
107
111
|
});
|
|
108
112
|
});
|
|
109
113
|
|
|
110
114
|
// Error
|
|
111
|
-
workerInfo.worker.on("error", (
|
|
112
|
-
const data = _data as ErrorEventData;
|
|
115
|
+
workerInfo.worker.on("error", (data) => {
|
|
113
116
|
workerEventsLogger.debug(`[${workerInfo.name}] error: ${data.message}`);
|
|
114
117
|
completeTask({
|
|
115
118
|
name: workerInfo.name,
|
|
@@ -1,45 +1,45 @@
|
|
|
1
|
-
import type { ConsolaInstance } from "consola";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Register cleanup handlers for worker process shutdown signals
|
|
5
|
-
*
|
|
6
|
-
* Registers SIGINT and SIGTERM handlers to gracefully cleanup resources
|
|
7
|
-
* before process exit. Both handlers execute the cleanup function and
|
|
8
|
-
* exit with code 0.
|
|
9
|
-
*
|
|
10
|
-
* @param cleanup -
|
|
11
|
-
* @param logger - Consola logger instance for error logging
|
|
12
|
-
*/
|
|
13
|
-
export function registerCleanupHandlers(
|
|
14
|
-
cleanup: () => Promise<void>,
|
|
15
|
-
logger: ConsolaInstance,
|
|
16
|
-
): void {
|
|
17
|
-
const handleSignal = () => {
|
|
18
|
-
cleanup()
|
|
19
|
-
.catch((err) => {
|
|
20
|
-
logger.error("cleanup failed", err);
|
|
21
|
-
})
|
|
22
|
-
.finally(() => {
|
|
23
|
-
process.exit(0);
|
|
24
|
-
});
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
process.on("SIGTERM", handleSignal);
|
|
28
|
-
process.on("SIGINT", handleSignal);
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
/**
|
|
32
|
-
* Create guard to prevent duplicate calls to Worker function
|
|
33
|
-
*
|
|
34
|
-
* @param label - Function name to use in error message
|
|
35
|
-
* @returns Guard function that throws error if called twice
|
|
36
|
-
*/
|
|
37
|
-
export function createOnceGuard(label: string): () => void {
|
|
38
|
-
let called = false;
|
|
39
|
-
return () => {
|
|
40
|
-
if (called) {
|
|
41
|
-
throw new Error(`${label} can only be called once per Worker`);
|
|
42
|
-
}
|
|
43
|
-
called = true;
|
|
44
|
-
};
|
|
45
|
-
}
|
|
1
|
+
import type { ConsolaInstance } from "consola";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Register cleanup handlers for worker process shutdown signals
|
|
5
|
+
*
|
|
6
|
+
* Registers SIGINT and SIGTERM handlers to gracefully cleanup resources
|
|
7
|
+
* before process exit. Both handlers execute the cleanup function and
|
|
8
|
+
* exit with code 0.
|
|
9
|
+
*
|
|
10
|
+
* @param cleanup - Cleanup function to execute on shutdown (sync or async)
|
|
11
|
+
* @param logger - Consola logger instance for error logging
|
|
12
|
+
*/
|
|
13
|
+
export function registerCleanupHandlers(
|
|
14
|
+
cleanup: () => void | Promise<void>,
|
|
15
|
+
logger: ConsolaInstance,
|
|
16
|
+
): void {
|
|
17
|
+
const handleSignal = () => {
|
|
18
|
+
Promise.resolve(cleanup())
|
|
19
|
+
.catch((err) => {
|
|
20
|
+
logger.error("cleanup failed", err);
|
|
21
|
+
})
|
|
22
|
+
.finally(() => {
|
|
23
|
+
process.exit(0);
|
|
24
|
+
});
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
process.on("SIGTERM", handleSignal);
|
|
28
|
+
process.on("SIGINT", handleSignal);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Create guard to prevent duplicate calls to Worker function
|
|
33
|
+
*
|
|
34
|
+
* @param label - Function name to use in error message
|
|
35
|
+
* @returns Guard function that throws error if called twice
|
|
36
|
+
*/
|
|
37
|
+
export function createOnceGuard(label: string): () => void {
|
|
38
|
+
let called = false;
|
|
39
|
+
return () => {
|
|
40
|
+
if (called) {
|
|
41
|
+
throw new Error(`${label} can only be called once per Worker`);
|
|
42
|
+
}
|
|
43
|
+
called = true;
|
|
44
|
+
};
|
|
45
|
+
}
|
|
@@ -2,7 +2,7 @@ import path from "path";
|
|
|
2
2
|
import fs from "fs";
|
|
3
3
|
import { build as viteBuild, createServer, type ViteDevServer } from "vite";
|
|
4
4
|
import { createWorker } from "@simplysm/core-node";
|
|
5
|
-
import {
|
|
5
|
+
import { err as errNs } from "@simplysm/core-common";
|
|
6
6
|
import { consola } from "consola";
|
|
7
7
|
import type { SdClientPackageConfig } from "../sd-config.types";
|
|
8
8
|
import { parseRootTsconfig, getCompilerOptionsForPackage } from "../utils/tsconfig";
|
|
@@ -143,7 +143,7 @@ async function build(info: ClientBuildInfo): Promise<ClientBuildResult> {
|
|
|
143
143
|
} catch (err) {
|
|
144
144
|
return {
|
|
145
145
|
success: false,
|
|
146
|
-
errors: [
|
|
146
|
+
errors: [errNs.message(err)],
|
|
147
147
|
};
|
|
148
148
|
}
|
|
149
149
|
}
|
|
@@ -211,7 +211,7 @@ async function startWatch(info: ClientWatchInfo): Promise<void> {
|
|
|
211
211
|
sender.send("serverReady", { port: actualPort });
|
|
212
212
|
} catch (err) {
|
|
213
213
|
sender.send("error", {
|
|
214
|
-
message:
|
|
214
|
+
message: errNs.message(err),
|
|
215
215
|
});
|
|
216
216
|
}
|
|
217
217
|
}
|