one 1.4.10 → 1.4.11
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/cjs/cli/daemon.cjs +172 -0
- package/dist/cjs/cli/daemon.js +138 -0
- package/dist/cjs/cli/daemon.js.map +6 -0
- package/dist/cjs/cli/daemon.native.js +213 -0
- package/dist/cjs/cli/daemon.native.js.map +1 -0
- package/dist/cjs/cli/dev.cjs +51 -6
- package/dist/cjs/cli/dev.js +42 -6
- package/dist/cjs/cli/dev.js.map +2 -2
- package/dist/cjs/cli/dev.native.js +52 -7
- package/dist/cjs/cli/dev.native.js.map +1 -1
- package/dist/cjs/cli.cjs +50 -3
- package/dist/cjs/cli.js +44 -2
- package/dist/cjs/cli.js.map +1 -1
- package/dist/cjs/cli.native.js +51 -3
- package/dist/cjs/cli.native.js.map +1 -1
- package/dist/cjs/daemon/index.cjs +24 -0
- package/dist/cjs/daemon/index.js +21 -0
- package/dist/cjs/daemon/index.js.map +6 -0
- package/dist/cjs/daemon/index.native.js +27 -0
- package/dist/cjs/daemon/index.native.js.map +1 -0
- package/dist/cjs/daemon/ipc.cjs +286 -0
- package/dist/cjs/daemon/ipc.js +245 -0
- package/dist/cjs/daemon/ipc.js.map +6 -0
- package/dist/cjs/daemon/ipc.native.js +339 -0
- package/dist/cjs/daemon/ipc.native.js.map +1 -0
- package/dist/cjs/daemon/picker.cjs +223 -0
- package/dist/cjs/daemon/picker.js +195 -0
- package/dist/cjs/daemon/picker.js.map +6 -0
- package/dist/cjs/daemon/picker.native.js +308 -0
- package/dist/cjs/daemon/picker.native.js.map +1 -0
- package/dist/cjs/daemon/proxy.cjs +75 -0
- package/dist/cjs/daemon/proxy.js +70 -0
- package/dist/cjs/daemon/proxy.js.map +6 -0
- package/dist/cjs/daemon/proxy.native.js +81 -0
- package/dist/cjs/daemon/proxy.native.js.map +1 -0
- package/dist/cjs/daemon/registry.cjs +133 -0
- package/dist/cjs/daemon/registry.js +125 -0
- package/dist/cjs/daemon/registry.js.map +6 -0
- package/dist/cjs/daemon/registry.native.js +199 -0
- package/dist/cjs/daemon/registry.native.js.map +1 -0
- package/dist/cjs/daemon/server.cjs +392 -0
- package/dist/cjs/daemon/server.js +363 -0
- package/dist/cjs/daemon/server.js.map +6 -0
- package/dist/cjs/daemon/server.native.js +532 -0
- package/dist/cjs/daemon/server.native.js.map +1 -0
- package/dist/cjs/daemon/tui.cjs +382 -0
- package/dist/cjs/daemon/tui.js +324 -0
- package/dist/cjs/daemon/tui.js.map +6 -0
- package/dist/cjs/daemon/tui.native.js +488 -0
- package/dist/cjs/daemon/tui.native.js.map +1 -0
- package/dist/cjs/daemon/types.cjs +16 -0
- package/dist/cjs/daemon/types.js +14 -0
- package/dist/cjs/daemon/types.js.map +6 -0
- package/dist/cjs/daemon/types.native.js +19 -0
- package/dist/cjs/daemon/types.native.js.map +1 -0
- package/dist/cjs/daemon/utils.cjs +74 -0
- package/dist/cjs/daemon/utils.js +68 -0
- package/dist/cjs/daemon/utils.js.map +6 -0
- package/dist/cjs/daemon/utils.native.js +83 -0
- package/dist/cjs/daemon/utils.native.js.map +1 -0
- package/dist/cjs/router/interceptRoutes.cjs +3 -2
- package/dist/cjs/router/interceptRoutes.js +3 -2
- package/dist/cjs/router/interceptRoutes.js.map +1 -1
- package/dist/cjs/router/interceptRoutes.native.js +2 -2
- package/dist/cjs/router/interceptRoutes.native.js.map +1 -1
- package/dist/cjs/server/PreloadScripts.cjs +46 -0
- package/dist/cjs/server/PreloadScripts.js +37 -0
- package/dist/cjs/server/PreloadScripts.js.map +6 -0
- package/dist/cjs/server/PreloadScripts.native.js +53 -0
- package/dist/cjs/server/PreloadScripts.native.js.map +6 -0
- package/dist/cjs/server/RNWStylesheet.cjs +35 -0
- package/dist/cjs/server/RNWStylesheet.js +31 -0
- package/dist/cjs/server/RNWStylesheet.js.map +6 -0
- package/dist/cjs/server/RNWStylesheet.native.js +38 -0
- package/dist/cjs/server/RNWStylesheet.native.js.map +1 -0
- package/dist/cjs/server/getServerManifest.cjs +4 -4
- package/dist/cjs/server/getServerManifest.js +4 -3
- package/dist/cjs/server/getServerManifest.js.map +1 -1
- package/dist/cjs/server/getServerManifest.native.js +2 -2
- package/dist/cjs/server/getServerManifest.native.js.map +1 -1
- package/dist/cjs/server/oneServe.cjs +3 -2
- package/dist/cjs/server/oneServe.js +1 -1
- package/dist/cjs/server/oneServe.js.map +1 -1
- package/dist/cjs/server/oneServe.native.js +3 -2
- package/dist/cjs/server/oneServe.native.js.map +1 -1
- package/dist/cjs/utils/getPathnameFromFilePath.cjs +1 -1
- package/dist/cjs/utils/getPathnameFromFilePath.js +1 -1
- package/dist/cjs/utils/getPathnameFromFilePath.js.map +1 -1
- package/dist/cjs/utils/getPathnameFromFilePath.native.js +1 -1
- package/dist/cjs/utils/getPathnameFromFilePath.native.js.map +1 -1
- package/dist/esm/cli/daemon.js +115 -0
- package/dist/esm/cli/daemon.js.map +6 -0
- package/dist/esm/cli/daemon.mjs +137 -0
- package/dist/esm/cli/daemon.mjs.map +1 -0
- package/dist/esm/cli/daemon.native.js +175 -0
- package/dist/esm/cli/daemon.native.js.map +1 -0
- package/dist/esm/cli/dev.js +43 -5
- package/dist/esm/cli/dev.js.map +1 -1
- package/dist/esm/cli/dev.mjs +50 -5
- package/dist/esm/cli/dev.mjs.map +1 -1
- package/dist/esm/cli/dev.native.js +50 -5
- package/dist/esm/cli/dev.native.js.map +1 -1
- package/dist/esm/cli.js +44 -2
- package/dist/esm/cli.js.map +1 -1
- package/dist/esm/cli.mjs +49 -2
- package/dist/esm/cli.mjs.map +1 -1
- package/dist/esm/cli.native.js +50 -2
- package/dist/esm/cli.native.js.map +1 -1
- package/dist/esm/daemon/index.js +8 -0
- package/dist/esm/daemon/index.js.map +6 -0
- package/dist/esm/daemon/index.mjs +8 -0
- package/dist/esm/daemon/index.mjs.map +1 -0
- package/dist/esm/daemon/index.native.js +8 -0
- package/dist/esm/daemon/index.native.js.map +1 -0
- package/dist/esm/daemon/ipc.js +235 -0
- package/dist/esm/daemon/ipc.js.map +6 -0
- package/dist/esm/daemon/ipc.mjs +236 -0
- package/dist/esm/daemon/ipc.mjs.map +1 -0
- package/dist/esm/daemon/ipc.native.js +286 -0
- package/dist/esm/daemon/ipc.native.js.map +1 -0
- package/dist/esm/daemon/picker.js +173 -0
- package/dist/esm/daemon/picker.js.map +6 -0
- package/dist/esm/daemon/picker.mjs +186 -0
- package/dist/esm/daemon/picker.mjs.map +1 -0
- package/dist/esm/daemon/picker.native.js +268 -0
- package/dist/esm/daemon/picker.native.js.map +1 -0
- package/dist/esm/daemon/proxy.js +47 -0
- package/dist/esm/daemon/proxy.js.map +6 -0
- package/dist/esm/daemon/proxy.mjs +40 -0
- package/dist/esm/daemon/proxy.mjs.map +1 -0
- package/dist/esm/daemon/proxy.native.js +43 -0
- package/dist/esm/daemon/proxy.native.js.map +1 -0
- package/dist/esm/daemon/registry.js +101 -0
- package/dist/esm/daemon/registry.js.map +6 -0
- package/dist/esm/daemon/registry.mjs +86 -0
- package/dist/esm/daemon/registry.mjs.map +1 -0
- package/dist/esm/daemon/registry.native.js +149 -0
- package/dist/esm/daemon/registry.native.js.map +1 -0
- package/dist/esm/daemon/server.js +358 -0
- package/dist/esm/daemon/server.js.map +6 -0
- package/dist/esm/daemon/server.mjs +352 -0
- package/dist/esm/daemon/server.mjs.map +1 -0
- package/dist/esm/daemon/server.native.js +489 -0
- package/dist/esm/daemon/server.native.js.map +1 -0
- package/dist/esm/daemon/tui.js +309 -0
- package/dist/esm/daemon/tui.js.map +6 -0
- package/dist/esm/daemon/tui.mjs +345 -0
- package/dist/esm/daemon/tui.mjs.map +1 -0
- package/dist/esm/daemon/tui.native.js +448 -0
- package/dist/esm/daemon/tui.native.js.map +1 -0
- package/dist/esm/daemon/types.js +1 -0
- package/dist/esm/daemon/types.js.map +6 -0
- package/dist/esm/daemon/types.mjs +2 -0
- package/dist/esm/daemon/types.mjs.map +1 -0
- package/dist/esm/daemon/types.native.js +2 -0
- package/dist/esm/daemon/types.native.js.map +1 -0
- package/dist/esm/daemon/utils.js +45 -0
- package/dist/esm/daemon/utils.js.map +6 -0
- package/dist/esm/daemon/utils.mjs +39 -0
- package/dist/esm/daemon/utils.mjs.map +1 -0
- package/dist/esm/daemon/utils.native.js +45 -0
- package/dist/esm/daemon/utils.native.js.map +1 -0
- package/dist/esm/router/interceptRoutes.js +4 -3
- package/dist/esm/router/interceptRoutes.js.map +1 -1
- package/dist/esm/router/interceptRoutes.mjs +4 -3
- package/dist/esm/router/interceptRoutes.mjs.map +1 -1
- package/dist/esm/router/interceptRoutes.native.js +3 -3
- package/dist/esm/router/interceptRoutes.native.js.map +1 -1
- package/dist/esm/server/PreloadScripts.js +22 -0
- package/dist/esm/server/PreloadScripts.js.map +6 -0
- package/dist/esm/server/PreloadScripts.mjs +23 -0
- package/dist/esm/server/PreloadScripts.mjs.map +1 -0
- package/dist/esm/server/PreloadScripts.native.js +37 -0
- package/dist/esm/server/PreloadScripts.native.js.map +6 -0
- package/dist/esm/server/RNWStylesheet.js +15 -0
- package/dist/esm/server/RNWStylesheet.js.map +6 -0
- package/dist/esm/server/RNWStylesheet.mjs +12 -0
- package/dist/esm/server/RNWStylesheet.mjs.map +1 -0
- package/dist/esm/server/RNWStylesheet.native.js +12 -0
- package/dist/esm/server/RNWStylesheet.native.js.map +1 -0
- package/dist/esm/server/getServerManifest.js +4 -3
- package/dist/esm/server/getServerManifest.js.map +1 -1
- package/dist/esm/server/getServerManifest.mjs +4 -4
- package/dist/esm/server/getServerManifest.mjs.map +1 -1
- package/dist/esm/server/getServerManifest.native.js +2 -2
- package/dist/esm/server/getServerManifest.native.js.map +1 -1
- package/dist/esm/server/oneServe.js +1 -1
- package/dist/esm/server/oneServe.js.map +1 -1
- package/dist/esm/server/oneServe.mjs +3 -2
- package/dist/esm/server/oneServe.mjs.map +1 -1
- package/dist/esm/server/oneServe.native.js +3 -2
- package/dist/esm/server/oneServe.native.js.map +1 -1
- package/dist/esm/utils/getPathnameFromFilePath.js +1 -1
- package/dist/esm/utils/getPathnameFromFilePath.js.map +1 -1
- package/dist/esm/utils/getPathnameFromFilePath.mjs +1 -1
- package/dist/esm/utils/getPathnameFromFilePath.mjs.map +1 -1
- package/dist/esm/utils/getPathnameFromFilePath.native.js +1 -1
- package/dist/esm/utils/getPathnameFromFilePath.native.js.map +1 -1
- package/package.json +9 -9
- package/src/cli/daemon.ts +233 -0
- package/src/cli/dev.ts +78 -5
- package/src/cli.ts +45 -1
- package/src/daemon/index.ts +9 -0
- package/src/daemon/ipc.ts +358 -0
- package/src/daemon/picker.ts +337 -0
- package/src/daemon/proxy.ts +90 -0
- package/src/daemon/registry.ts +159 -0
- package/src/daemon/server.ts +704 -0
- package/src/daemon/tui.ts +790 -0
- package/src/daemon/types.ts +43 -0
- package/src/daemon/utils.ts +100 -0
- package/src/router/interceptRoutes.ts +9 -1
- package/src/server/getServerManifest.ts +15 -3
- package/src/server/oneServe.ts +14 -5
- package/src/utils/getPathnameFromFilePath.ts +4 -1
- package/types/Route.d.ts.map +1 -0
- package/types/cleanUrl.d.ts.map +1 -0
- package/types/cli/daemon.d.ts +11 -0
- package/types/cli/daemon.d.ts.map +1 -1
- package/types/cli/dev.d.ts.map +1 -1
- package/types/cli/run.d.ts.map +1 -0
- package/types/createRoute.d.ts.map +1 -0
- package/types/createRouteConfig.d.ts.map +1 -0
- package/types/daemon/index.d.ts +8 -0
- package/types/daemon/ipc.d.ts +47 -0
- package/types/daemon/ipc.d.ts.map +1 -1
- package/types/daemon/picker.d.ts +21 -0
- package/types/daemon/picker.d.ts.map +1 -1
- package/types/daemon/proxy.d.ts +6 -0
- package/types/daemon/proxy.d.ts.map +1 -1
- package/types/daemon/registry.d.ts +20 -0
- package/types/daemon/registry.d.ts.map +1 -1
- package/types/daemon/server.d.ts +22 -0
- package/types/daemon/server.d.ts.map +1 -1
- package/types/daemon/tui.d.ts +8 -0
- package/types/daemon/tui.d.ts.map +1 -1
- package/types/daemon/types.d.ts +65 -0
- package/types/daemon/types.d.ts.map +1 -1
- package/types/daemon/utils.d.ts +16 -0
- package/types/daemon/utils.d.ts.map +1 -1
- package/types/fork/NavigationContainer.native.d.ts.map +1 -0
- package/types/getLinkingConfig.d.ts.map +1 -0
- package/types/getRoutes.d.ts.map +1 -0
- package/types/imperative-api.d.ts.map +1 -0
- package/types/matchers.d.ts.map +1 -0
- package/types/platform.d.ts.map +1 -0
- package/types/router/interceptRoutes.d.ts.map +1 -1
- package/types/server/getServerManifest.d.ts.map +1 -1
- package/types/server/oneServe.d.ts.map +1 -1
- package/types/sortRoutes.d.ts.map +1 -0
- package/types/useNavigation.d.ts.map +1 -0
- package/types/useScreens.d.ts.map +1 -0
- package/types/useSearch.d.ts.map +1 -0
- package/types/useViteRoutes.d.ts.map +1 -0
- package/types/utils/getPathnameFromFilePath.d.ts.map +1 -1
- package/types/views/ScrollRestoration.d.ts.map +1 -0
- package/types/vite/build.d.ts.map +1 -0
- package/types/vite/headers.d.ts.map +1 -0
- package/types/vite/headers.native.d.ts.map +1 -0
- package/types/vite/plugins/seoPreviewPlugin.d.ts.map +1 -0
- package/types/vite/resolveAPIRequest.d.ts.map +1 -0
- package/types/vite/server.d.ts.map +1 -0
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf,
|
|
6
|
+
__hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: !0
|
|
11
|
+
});
|
|
12
|
+
},
|
|
13
|
+
__copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
|
|
15
|
+
get: () => from[key],
|
|
16
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
17
|
+
});
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
26
|
+
value: mod,
|
|
27
|
+
enumerable: !0
|
|
28
|
+
}) : target, mod)),
|
|
29
|
+
__toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
30
|
+
value: !0
|
|
31
|
+
}), mod);
|
|
32
|
+
var daemon_exports = {};
|
|
33
|
+
__export(daemon_exports, {
|
|
34
|
+
daemon: () => daemon,
|
|
35
|
+
openPlatform: () => openPlatform
|
|
36
|
+
});
|
|
37
|
+
module.exports = __toCommonJS(daemon_exports);
|
|
38
|
+
var import_picocolors = __toESM(require("picocolors"), 1),
|
|
39
|
+
import_label_process = require("./label-process.cjs");
|
|
40
|
+
async function daemon(args) {
|
|
41
|
+
const subcommand = args.subcommand || "run";
|
|
42
|
+
switch (subcommand) {
|
|
43
|
+
case "run":
|
|
44
|
+
case "start":
|
|
45
|
+
return daemonStart(args);
|
|
46
|
+
case "stop":
|
|
47
|
+
return daemonStop();
|
|
48
|
+
case "status":
|
|
49
|
+
return daemonStatus();
|
|
50
|
+
case "route":
|
|
51
|
+
return daemonRoute(args);
|
|
52
|
+
default:
|
|
53
|
+
console.log(`Unknown daemon subcommand: ${subcommand}`), console.log("Available: start, stop, status, route"), process.exit(1);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
async function daemonStart(args) {
|
|
57
|
+
(0, import_label_process.labelProcess)("daemon");
|
|
58
|
+
const {
|
|
59
|
+
isDaemonRunning
|
|
60
|
+
} = await import("../daemon/ipc");
|
|
61
|
+
(await isDaemonRunning()) && (console.log(import_picocolors.default.yellow("Daemon is already running")), console.log("Use 'one daemon status' to see registered servers"), process.exit(1));
|
|
62
|
+
const {
|
|
63
|
+
startDaemon
|
|
64
|
+
} = await import("../daemon/server"),
|
|
65
|
+
useTUI = args.tui ?? process.stdin.isTTY,
|
|
66
|
+
{
|
|
67
|
+
state
|
|
68
|
+
} = await startDaemon({
|
|
69
|
+
port: args.port ? parseInt(args.port, 10) : void 0,
|
|
70
|
+
host: args.host,
|
|
71
|
+
quiet: useTUI
|
|
72
|
+
// suppress normal logs when TUI is active
|
|
73
|
+
});
|
|
74
|
+
if (useTUI) {
|
|
75
|
+
const {
|
|
76
|
+
startTUI
|
|
77
|
+
} = await import("../daemon/tui");
|
|
78
|
+
startTUI(state);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
async function daemonStop() {
|
|
82
|
+
const {
|
|
83
|
+
isDaemonRunning,
|
|
84
|
+
getSocketPath,
|
|
85
|
+
cleanupSocket
|
|
86
|
+
} = await import("../daemon/ipc");
|
|
87
|
+
(await isDaemonRunning()) || (console.log(import_picocolors.default.yellow("Daemon is not running")), process.exit(1)), console.log(import_picocolors.default.yellow("Note: daemon runs in foreground. Press Ctrl+C in the daemon terminal to stop.")), console.log(import_picocolors.default.dim(`Socket path: ${getSocketPath()}`));
|
|
88
|
+
}
|
|
89
|
+
async function daemonStatus() {
|
|
90
|
+
const {
|
|
91
|
+
isDaemonRunning,
|
|
92
|
+
getDaemonStatus,
|
|
93
|
+
getLastActiveDaemonServer
|
|
94
|
+
} = await import("../daemon/ipc");
|
|
95
|
+
(await isDaemonRunning()) || (console.log(import_picocolors.default.yellow("Daemon is not running")), console.log(import_picocolors.default.dim("Start with 'one daemon'")), process.exit(1));
|
|
96
|
+
try {
|
|
97
|
+
const status = await getDaemonStatus(),
|
|
98
|
+
lastActive = await getLastActiveDaemonServer();
|
|
99
|
+
if (console.log(import_picocolors.default.cyan(`
|
|
100
|
+
\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550`)), console.log(import_picocolors.default.cyan(" one daemon status")), console.log(import_picocolors.default.cyan(`\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550
|
|
101
|
+
`)), status.servers.length === 0) console.log(import_picocolors.default.dim(" No servers registered"));else {
|
|
102
|
+
console.log(" Registered servers:");
|
|
103
|
+
for (const server of status.servers) {
|
|
104
|
+
const shortRoot = server.root.replace(process.env.HOME || "", "~"),
|
|
105
|
+
activeMarker = lastActive?.id === server.id ? import_picocolors.default.yellow(" \u2605") : "";
|
|
106
|
+
console.log(` ${import_picocolors.default.green(server.id)} ${server.bundleId} \u2192 :${server.port} (${shortRoot})${activeMarker}`);
|
|
107
|
+
}
|
|
108
|
+
lastActive && console.log(import_picocolors.default.dim(`
|
|
109
|
+
\u2605 = last active (used by oi/oa)`));
|
|
110
|
+
}
|
|
111
|
+
if (status.routes.length > 0) {
|
|
112
|
+
console.log(`
|
|
113
|
+
Active routes:`);
|
|
114
|
+
for (const route of status.routes) console.log(` ${route.key} \u2192 ${route.serverId}`);
|
|
115
|
+
}
|
|
116
|
+
console.log("");
|
|
117
|
+
} catch (err) {
|
|
118
|
+
console.log(import_picocolors.default.red("Failed to get daemon status")), console.error(err), process.exit(1);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
async function openPlatform(platform) {
|
|
122
|
+
const {
|
|
123
|
+
isDaemonRunning,
|
|
124
|
+
getDaemonStatus,
|
|
125
|
+
setDaemonRoute,
|
|
126
|
+
touchDaemonServer
|
|
127
|
+
} = await import("../daemon/ipc"),
|
|
128
|
+
{
|
|
129
|
+
getBundleIdFromConfig
|
|
130
|
+
} = await import("../daemon/utils"),
|
|
131
|
+
cwd = process.cwd(),
|
|
132
|
+
bundleId = getBundleIdFromConfig(cwd);
|
|
133
|
+
if (bundleId || (console.log(import_picocolors.default.yellow("No app.json found in current directory")), console.log(import_picocolors.default.dim("Run this command from a One project directory")), process.exit(1)), await isDaemonRunning()) try {
|
|
134
|
+
const server = (await getDaemonStatus()).servers.find(s => s.root === cwd);
|
|
135
|
+
server ? (await setDaemonRoute(bundleId, server.id), await touchDaemonServer(server.id), console.log(import_picocolors.default.cyan(`[daemon] Route set: ${bundleId} \u2192 this project`))) : (console.log(import_picocolors.default.yellow("[daemon] No server registered for this project")), console.log(import_picocolors.default.dim("Run 'one dev' first, or the simulator will connect directly")));
|
|
136
|
+
} catch (err) {
|
|
137
|
+
console.log(import_picocolors.default.dim(`[daemon] Could not set route: ${err}`));
|
|
138
|
+
}
|
|
139
|
+
if (platform === "ios") {
|
|
140
|
+
const {
|
|
141
|
+
run
|
|
142
|
+
} = await import("./runIos");
|
|
143
|
+
await run({});
|
|
144
|
+
} else {
|
|
145
|
+
const {
|
|
146
|
+
run
|
|
147
|
+
} = await import("./runAndroid");
|
|
148
|
+
await run({});
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
async function daemonRoute(args) {
|
|
152
|
+
const {
|
|
153
|
+
isDaemonRunning,
|
|
154
|
+
getDaemonStatus,
|
|
155
|
+
setDaemonRoute,
|
|
156
|
+
clearDaemonRoute
|
|
157
|
+
} = await import("../daemon/ipc");
|
|
158
|
+
(await isDaemonRunning()) || (console.log(import_picocolors.default.yellow("Daemon is not running")), process.exit(1)), args.app || (console.log(import_picocolors.default.red("Missing --app parameter")), console.log("Usage: one daemon route --app=com.example.app --slot=0"), console.log(" or: one daemon route --app=com.example.app --project=~/myapp"), process.exit(1));
|
|
159
|
+
const status = await getDaemonStatus();
|
|
160
|
+
let targetServer;
|
|
161
|
+
if (args.slot !== void 0) {
|
|
162
|
+
const slotIndex = parseInt(args.slot, 10),
|
|
163
|
+
matchingServers = status.servers.filter(s => s.bundleId === args.app);
|
|
164
|
+
(slotIndex < 0 || slotIndex >= matchingServers.length) && (console.log(import_picocolors.default.red(`Invalid slot: ${args.slot}`)), console.log(`Available slots for ${args.app}: 0-${matchingServers.length - 1}`), process.exit(1)), targetServer = matchingServers[slotIndex];
|
|
165
|
+
} else if (args.project) {
|
|
166
|
+
const normalizedProject = args.project.replace(/^~/, process.env.HOME || "");
|
|
167
|
+
targetServer = status.servers.find(s => s.bundleId === args.app && s.root === normalizedProject), targetServer || (console.log(import_picocolors.default.red(`No server found for ${args.app} at ${args.project}`)), process.exit(1));
|
|
168
|
+
} else console.log(import_picocolors.default.red("Missing --slot or --project parameter")), process.exit(1);
|
|
169
|
+
await setDaemonRoute(args.app, targetServer.id);
|
|
170
|
+
const shortRoot = targetServer.root.replace(process.env.HOME || "", "~");
|
|
171
|
+
console.log(import_picocolors.default.green(`Route set: ${args.app} \u2192 ${targetServer.id} (${shortRoot})`));
|
|
172
|
+
}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf, __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: !0 });
|
|
9
|
+
}, __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from == "object" || typeof from == "function")
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
13
|
+
return to;
|
|
14
|
+
};
|
|
15
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
16
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
17
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
18
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
19
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
20
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: !0 }) : target,
|
|
21
|
+
mod
|
|
22
|
+
)), __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
|
23
|
+
var daemon_exports = {};
|
|
24
|
+
__export(daemon_exports, {
|
|
25
|
+
daemon: () => daemon,
|
|
26
|
+
openPlatform: () => openPlatform
|
|
27
|
+
});
|
|
28
|
+
module.exports = __toCommonJS(daemon_exports);
|
|
29
|
+
var import_picocolors = __toESM(require("picocolors"), 1), import_label_process = require("./label-process");
|
|
30
|
+
async function daemon(args) {
|
|
31
|
+
const subcommand = args.subcommand || "run";
|
|
32
|
+
switch (subcommand) {
|
|
33
|
+
case "run":
|
|
34
|
+
case "start":
|
|
35
|
+
return daemonStart(args);
|
|
36
|
+
case "stop":
|
|
37
|
+
return daemonStop();
|
|
38
|
+
case "status":
|
|
39
|
+
return daemonStatus();
|
|
40
|
+
case "route":
|
|
41
|
+
return daemonRoute(args);
|
|
42
|
+
default:
|
|
43
|
+
console.log(`Unknown daemon subcommand: ${subcommand}`), console.log("Available: start, stop, status, route"), process.exit(1);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
async function daemonStart(args) {
|
|
47
|
+
(0, import_label_process.labelProcess)("daemon");
|
|
48
|
+
const { isDaemonRunning } = await import("../daemon/ipc");
|
|
49
|
+
await isDaemonRunning() && (console.log(import_picocolors.default.yellow("Daemon is already running")), console.log("Use 'one daemon status' to see registered servers"), process.exit(1));
|
|
50
|
+
const { startDaemon } = await import("../daemon/server"), useTUI = args.tui ?? process.stdin.isTTY, { state } = await startDaemon({
|
|
51
|
+
port: args.port ? parseInt(args.port, 10) : void 0,
|
|
52
|
+
host: args.host,
|
|
53
|
+
quiet: useTUI
|
|
54
|
+
// suppress normal logs when TUI is active
|
|
55
|
+
});
|
|
56
|
+
if (useTUI) {
|
|
57
|
+
const { startTUI } = await import("../daemon/tui");
|
|
58
|
+
startTUI(state);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
async function daemonStop() {
|
|
62
|
+
const { isDaemonRunning, getSocketPath, cleanupSocket } = await import("../daemon/ipc");
|
|
63
|
+
await isDaemonRunning() || (console.log(import_picocolors.default.yellow("Daemon is not running")), process.exit(1)), console.log(
|
|
64
|
+
import_picocolors.default.yellow(
|
|
65
|
+
"Note: daemon runs in foreground. Press Ctrl+C in the daemon terminal to stop."
|
|
66
|
+
)
|
|
67
|
+
), console.log(import_picocolors.default.dim(`Socket path: ${getSocketPath()}`));
|
|
68
|
+
}
|
|
69
|
+
async function daemonStatus() {
|
|
70
|
+
const { isDaemonRunning, getDaemonStatus, getLastActiveDaemonServer } = await import("../daemon/ipc");
|
|
71
|
+
await isDaemonRunning() || (console.log(import_picocolors.default.yellow("Daemon is not running")), console.log(import_picocolors.default.dim("Start with 'one daemon'")), process.exit(1));
|
|
72
|
+
try {
|
|
73
|
+
const status = await getDaemonStatus(), lastActive = await getLastActiveDaemonServer();
|
|
74
|
+
if (console.log(import_picocolors.default.cyan(`
|
|
75
|
+
\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550`)), console.log(import_picocolors.default.cyan(" one daemon status")), console.log(import_picocolors.default.cyan(`\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550
|
|
76
|
+
`)), status.servers.length === 0)
|
|
77
|
+
console.log(import_picocolors.default.dim(" No servers registered"));
|
|
78
|
+
else {
|
|
79
|
+
console.log(" Registered servers:");
|
|
80
|
+
for (const server of status.servers) {
|
|
81
|
+
const shortRoot = server.root.replace(process.env.HOME || "", "~"), activeMarker = lastActive?.id === server.id ? import_picocolors.default.yellow(" \u2605") : "";
|
|
82
|
+
console.log(
|
|
83
|
+
` ${import_picocolors.default.green(server.id)} ${server.bundleId} \u2192 :${server.port} (${shortRoot})${activeMarker}`
|
|
84
|
+
);
|
|
85
|
+
}
|
|
86
|
+
lastActive && console.log(import_picocolors.default.dim(`
|
|
87
|
+
\u2605 = last active (used by oi/oa)`));
|
|
88
|
+
}
|
|
89
|
+
if (status.routes.length > 0) {
|
|
90
|
+
console.log(`
|
|
91
|
+
Active routes:`);
|
|
92
|
+
for (const route of status.routes)
|
|
93
|
+
console.log(` ${route.key} \u2192 ${route.serverId}`);
|
|
94
|
+
}
|
|
95
|
+
console.log("");
|
|
96
|
+
} catch (err) {
|
|
97
|
+
console.log(import_picocolors.default.red("Failed to get daemon status")), console.error(err), process.exit(1);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
async function openPlatform(platform) {
|
|
101
|
+
const { isDaemonRunning, getDaemonStatus, setDaemonRoute, touchDaemonServer } = await import("../daemon/ipc"), { getBundleIdFromConfig } = await import("../daemon/utils"), cwd = process.cwd(), bundleId = getBundleIdFromConfig(cwd);
|
|
102
|
+
if (bundleId || (console.log(import_picocolors.default.yellow("No app.json found in current directory")), console.log(import_picocolors.default.dim("Run this command from a One project directory")), process.exit(1)), await isDaemonRunning())
|
|
103
|
+
try {
|
|
104
|
+
const server = (await getDaemonStatus()).servers.find((s) => s.root === cwd);
|
|
105
|
+
server ? (await setDaemonRoute(bundleId, server.id), await touchDaemonServer(server.id), console.log(import_picocolors.default.cyan(`[daemon] Route set: ${bundleId} \u2192 this project`))) : (console.log(import_picocolors.default.yellow("[daemon] No server registered for this project")), console.log(
|
|
106
|
+
import_picocolors.default.dim("Run 'one dev' first, or the simulator will connect directly")
|
|
107
|
+
));
|
|
108
|
+
} catch (err) {
|
|
109
|
+
console.log(import_picocolors.default.dim(`[daemon] Could not set route: ${err}`));
|
|
110
|
+
}
|
|
111
|
+
if (platform === "ios") {
|
|
112
|
+
const { run } = await import("./runIos");
|
|
113
|
+
await run({});
|
|
114
|
+
} else {
|
|
115
|
+
const { run } = await import("./runAndroid");
|
|
116
|
+
await run({});
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
async function daemonRoute(args) {
|
|
120
|
+
const { isDaemonRunning, getDaemonStatus, setDaemonRoute, clearDaemonRoute } = await import("../daemon/ipc");
|
|
121
|
+
await isDaemonRunning() || (console.log(import_picocolors.default.yellow("Daemon is not running")), process.exit(1)), args.app || (console.log(import_picocolors.default.red("Missing --app parameter")), console.log("Usage: one daemon route --app=com.example.app --slot=0"), console.log(" or: one daemon route --app=com.example.app --project=~/myapp"), process.exit(1));
|
|
122
|
+
const status = await getDaemonStatus();
|
|
123
|
+
let targetServer;
|
|
124
|
+
if (args.slot !== void 0) {
|
|
125
|
+
const slotIndex = parseInt(args.slot, 10), matchingServers = status.servers.filter((s) => s.bundleId === args.app);
|
|
126
|
+
(slotIndex < 0 || slotIndex >= matchingServers.length) && (console.log(import_picocolors.default.red(`Invalid slot: ${args.slot}`)), console.log(`Available slots for ${args.app}: 0-${matchingServers.length - 1}`), process.exit(1)), targetServer = matchingServers[slotIndex];
|
|
127
|
+
} else if (args.project) {
|
|
128
|
+
const normalizedProject = args.project.replace(/^~/, process.env.HOME || "");
|
|
129
|
+
targetServer = status.servers.find(
|
|
130
|
+
(s) => s.bundleId === args.app && s.root === normalizedProject
|
|
131
|
+
), targetServer || (console.log(import_picocolors.default.red(`No server found for ${args.app} at ${args.project}`)), process.exit(1));
|
|
132
|
+
} else
|
|
133
|
+
console.log(import_picocolors.default.red("Missing --slot or --project parameter")), process.exit(1);
|
|
134
|
+
await setDaemonRoute(args.app, targetServer.id);
|
|
135
|
+
const shortRoot = targetServer.root.replace(process.env.HOME || "", "~");
|
|
136
|
+
console.log(import_picocolors.default.green(`Route set: ${args.app} \u2192 ${targetServer.id} (${shortRoot})`));
|
|
137
|
+
}
|
|
138
|
+
//# sourceMappingURL=daemon.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/cli/daemon.ts"],
|
|
4
|
+
"mappings": "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",
|
|
5
|
+
"names": ["colors"]
|
|
6
|
+
}
|
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var __create = Object.create;
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
+
var __getProtoOf = Object.getPrototypeOf,
|
|
8
|
+
__hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
+
var __export = (target, all) => {
|
|
10
|
+
for (var name in all) __defProp(target, name, {
|
|
11
|
+
get: all[name],
|
|
12
|
+
enumerable: !0
|
|
13
|
+
});
|
|
14
|
+
},
|
|
15
|
+
__copyProps = (to, from, except, desc) => {
|
|
16
|
+
if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
|
|
17
|
+
get: () => from[key],
|
|
18
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
19
|
+
});
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
22
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
23
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
24
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
25
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
26
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
27
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
28
|
+
value: mod,
|
|
29
|
+
enumerable: !0
|
|
30
|
+
}) : target, mod)),
|
|
31
|
+
__toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
32
|
+
value: !0
|
|
33
|
+
}), mod);
|
|
34
|
+
var daemon_exports = {};
|
|
35
|
+
__export(daemon_exports, {
|
|
36
|
+
daemon: () => daemon,
|
|
37
|
+
openPlatform: () => openPlatform
|
|
38
|
+
});
|
|
39
|
+
module.exports = __toCommonJS(daemon_exports);
|
|
40
|
+
var import_picocolors = __toESM(require("picocolors"), 1),
|
|
41
|
+
import_label_process = require("./label-process.native.js");
|
|
42
|
+
async function daemon(args) {
|
|
43
|
+
var subcommand = args.subcommand || "run";
|
|
44
|
+
switch (subcommand) {
|
|
45
|
+
case "run":
|
|
46
|
+
case "start":
|
|
47
|
+
return daemonStart(args);
|
|
48
|
+
case "stop":
|
|
49
|
+
return daemonStop();
|
|
50
|
+
case "status":
|
|
51
|
+
return daemonStatus();
|
|
52
|
+
case "route":
|
|
53
|
+
return daemonRoute(args);
|
|
54
|
+
default:
|
|
55
|
+
console.log(`Unknown daemon subcommand: ${subcommand}`), console.log("Available: start, stop, status, route"), process.exit(1);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
async function daemonStart(args) {
|
|
59
|
+
var _args_tui;
|
|
60
|
+
(0, import_label_process.labelProcess)("daemon");
|
|
61
|
+
var {
|
|
62
|
+
isDaemonRunning
|
|
63
|
+
} = await import("../daemon/ipc");
|
|
64
|
+
(await isDaemonRunning()) && (console.log(import_picocolors.default.yellow("Daemon is already running")), console.log("Use 'one daemon status' to see registered servers"), process.exit(1));
|
|
65
|
+
var {
|
|
66
|
+
startDaemon
|
|
67
|
+
} = await import("../daemon/server"),
|
|
68
|
+
useTUI = (_args_tui = args.tui) !== null && _args_tui !== void 0 ? _args_tui : process.stdin.isTTY,
|
|
69
|
+
{
|
|
70
|
+
state
|
|
71
|
+
} = await startDaemon({
|
|
72
|
+
port: args.port ? parseInt(args.port, 10) : void 0,
|
|
73
|
+
host: args.host,
|
|
74
|
+
quiet: useTUI
|
|
75
|
+
});
|
|
76
|
+
if (useTUI) {
|
|
77
|
+
var {
|
|
78
|
+
startTUI
|
|
79
|
+
} = await import("../daemon/tui");
|
|
80
|
+
startTUI(state);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
async function daemonStop() {
|
|
84
|
+
var {
|
|
85
|
+
isDaemonRunning,
|
|
86
|
+
getSocketPath,
|
|
87
|
+
cleanupSocket
|
|
88
|
+
} = await import("../daemon/ipc");
|
|
89
|
+
(await isDaemonRunning()) || (console.log(import_picocolors.default.yellow("Daemon is not running")), process.exit(1)), console.log(import_picocolors.default.yellow("Note: daemon runs in foreground. Press Ctrl+C in the daemon terminal to stop.")), console.log(import_picocolors.default.dim(`Socket path: ${getSocketPath()}`));
|
|
90
|
+
}
|
|
91
|
+
async function daemonStatus() {
|
|
92
|
+
var {
|
|
93
|
+
isDaemonRunning,
|
|
94
|
+
getDaemonStatus,
|
|
95
|
+
getLastActiveDaemonServer
|
|
96
|
+
} = await import("../daemon/ipc");
|
|
97
|
+
(await isDaemonRunning()) || (console.log(import_picocolors.default.yellow("Daemon is not running")), console.log(import_picocolors.default.dim("Start with 'one daemon'")), process.exit(1));
|
|
98
|
+
try {
|
|
99
|
+
var status = await getDaemonStatus(),
|
|
100
|
+
lastActive = await getLastActiveDaemonServer();
|
|
101
|
+
if (console.log(import_picocolors.default.cyan(`
|
|
102
|
+
\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550`)), console.log(import_picocolors.default.cyan(" one daemon status")), console.log(import_picocolors.default.cyan(`\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550
|
|
103
|
+
`)), status.servers.length === 0) console.log(import_picocolors.default.dim(" No servers registered"));else {
|
|
104
|
+
console.log(" Registered servers:");
|
|
105
|
+
var _iteratorNormalCompletion = !0,
|
|
106
|
+
_didIteratorError = !1,
|
|
107
|
+
_iteratorError = void 0;
|
|
108
|
+
try {
|
|
109
|
+
for (var _iterator = status.servers[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
|
|
110
|
+
var server = _step.value,
|
|
111
|
+
shortRoot = server.root.replace(process.env.HOME || "", "~"),
|
|
112
|
+
isActive = lastActive?.id === server.id,
|
|
113
|
+
activeMarker = isActive ? import_picocolors.default.yellow(" \u2605") : "";
|
|
114
|
+
console.log(` ${import_picocolors.default.green(server.id)} ${server.bundleId} \u2192 :${server.port} (${shortRoot})${activeMarker}`);
|
|
115
|
+
}
|
|
116
|
+
} catch (err) {
|
|
117
|
+
_didIteratorError = !0, _iteratorError = err;
|
|
118
|
+
} finally {
|
|
119
|
+
try {
|
|
120
|
+
!_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
|
|
121
|
+
} finally {
|
|
122
|
+
if (_didIteratorError) throw _iteratorError;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
lastActive && console.log(import_picocolors.default.dim(`
|
|
126
|
+
\u2605 = last active (used by oi/oa)`));
|
|
127
|
+
}
|
|
128
|
+
if (status.routes.length > 0) {
|
|
129
|
+
console.log(`
|
|
130
|
+
Active routes:`);
|
|
131
|
+
var _iteratorNormalCompletion1 = !0,
|
|
132
|
+
_didIteratorError1 = !1,
|
|
133
|
+
_iteratorError1 = void 0;
|
|
134
|
+
try {
|
|
135
|
+
for (var _iterator1 = status.routes[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = !0) {
|
|
136
|
+
var route = _step1.value;
|
|
137
|
+
console.log(` ${route.key} \u2192 ${route.serverId}`);
|
|
138
|
+
}
|
|
139
|
+
} catch (err) {
|
|
140
|
+
_didIteratorError1 = !0, _iteratorError1 = err;
|
|
141
|
+
} finally {
|
|
142
|
+
try {
|
|
143
|
+
!_iteratorNormalCompletion1 && _iterator1.return != null && _iterator1.return();
|
|
144
|
+
} finally {
|
|
145
|
+
if (_didIteratorError1) throw _iteratorError1;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
console.log("");
|
|
150
|
+
} catch (err) {
|
|
151
|
+
console.log(import_picocolors.default.red("Failed to get daemon status")), console.error(err), process.exit(1);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
async function openPlatform(platform) {
|
|
155
|
+
var {
|
|
156
|
+
isDaemonRunning,
|
|
157
|
+
getDaemonStatus,
|
|
158
|
+
setDaemonRoute,
|
|
159
|
+
touchDaemonServer
|
|
160
|
+
} = await import("../daemon/ipc"),
|
|
161
|
+
{
|
|
162
|
+
getBundleIdFromConfig
|
|
163
|
+
} = await import("../daemon/utils"),
|
|
164
|
+
cwd = process.cwd(),
|
|
165
|
+
bundleId = getBundleIdFromConfig(cwd);
|
|
166
|
+
if (bundleId || (console.log(import_picocolors.default.yellow("No app.json found in current directory")), console.log(import_picocolors.default.dim("Run this command from a One project directory")), process.exit(1)), await isDaemonRunning()) try {
|
|
167
|
+
var status = await getDaemonStatus(),
|
|
168
|
+
server = status.servers.find(function (s) {
|
|
169
|
+
return s.root === cwd;
|
|
170
|
+
});
|
|
171
|
+
server ? (await setDaemonRoute(bundleId, server.id), await touchDaemonServer(server.id), console.log(import_picocolors.default.cyan(`[daemon] Route set: ${bundleId} \u2192 this project`))) : (console.log(import_picocolors.default.yellow("[daemon] No server registered for this project")), console.log(import_picocolors.default.dim("Run 'one dev' first, or the simulator will connect directly")));
|
|
172
|
+
} catch (err) {
|
|
173
|
+
console.log(import_picocolors.default.dim(`[daemon] Could not set route: ${err}`));
|
|
174
|
+
}
|
|
175
|
+
if (platform === "ios") {
|
|
176
|
+
var {
|
|
177
|
+
run
|
|
178
|
+
} = await import("./runIos");
|
|
179
|
+
await run({});
|
|
180
|
+
} else {
|
|
181
|
+
var {
|
|
182
|
+
run: run1
|
|
183
|
+
} = await import("./runAndroid");
|
|
184
|
+
await run1({});
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
async function daemonRoute(args) {
|
|
188
|
+
var {
|
|
189
|
+
isDaemonRunning,
|
|
190
|
+
getDaemonStatus,
|
|
191
|
+
setDaemonRoute,
|
|
192
|
+
clearDaemonRoute
|
|
193
|
+
} = await import("../daemon/ipc");
|
|
194
|
+
(await isDaemonRunning()) || (console.log(import_picocolors.default.yellow("Daemon is not running")), process.exit(1)), args.app || (console.log(import_picocolors.default.red("Missing --app parameter")), console.log("Usage: one daemon route --app=com.example.app --slot=0"), console.log(" or: one daemon route --app=com.example.app --project=~/myapp"), process.exit(1));
|
|
195
|
+
var status = await getDaemonStatus(),
|
|
196
|
+
targetServer;
|
|
197
|
+
if (args.slot !== void 0) {
|
|
198
|
+
var slotIndex = parseInt(args.slot, 10),
|
|
199
|
+
matchingServers = status.servers.filter(function (s) {
|
|
200
|
+
return s.bundleId === args.app;
|
|
201
|
+
});
|
|
202
|
+
(slotIndex < 0 || slotIndex >= matchingServers.length) && (console.log(import_picocolors.default.red(`Invalid slot: ${args.slot}`)), console.log(`Available slots for ${args.app}: 0-${matchingServers.length - 1}`), process.exit(1)), targetServer = matchingServers[slotIndex];
|
|
203
|
+
} else if (args.project) {
|
|
204
|
+
var normalizedProject = args.project.replace(/^~/, process.env.HOME || "");
|
|
205
|
+
targetServer = status.servers.find(function (s) {
|
|
206
|
+
return s.bundleId === args.app && s.root === normalizedProject;
|
|
207
|
+
}), targetServer || (console.log(import_picocolors.default.red(`No server found for ${args.app} at ${args.project}`)), process.exit(1));
|
|
208
|
+
} else console.log(import_picocolors.default.red("Missing --slot or --project parameter")), process.exit(1);
|
|
209
|
+
await setDaemonRoute(args.app, targetServer.id);
|
|
210
|
+
var shortRoot = targetServer.root.replace(process.env.HOME || "", "~");
|
|
211
|
+
console.log(import_picocolors.default.green(`Route set: ${args.app} \u2192 ${targetServer.id} (${shortRoot})`));
|
|
212
|
+
}
|
|
213
|
+
//# sourceMappingURL=daemon.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","daemon_exports","__export","daemon","openPlatform","module","exports","import_picocolors","__toESM","require","import_label_process","args","subcommand","daemonStart","daemonStop","daemonStatus","daemonRoute","console","log","process","exit","_args_tui","labelProcess","isDaemonRunning","default","yellow","startDaemon","useTUI","tui","stdin","isTTY","state","port","parseInt","host","quiet","startTUI","getSocketPath","cleanupSocket","dim","getDaemonStatus","getLastActiveDaemonServer","status","lastActive","cyan","servers","length","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","server","shortRoot","root","replace","env","HOME","isActive","id","activeMarker","green","bundleId","err","return","routes","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","route","key","serverId","red","error","platform","setDaemonRoute","touchDaemonServer","getBundleIdFromConfig","cwd","find","s","run","run1"],"sources":["../../../src/cli/daemon.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/cjs/cli/dev.cjs
CHANGED
|
@@ -34,12 +34,37 @@ __export(dev_exports, {
|
|
|
34
34
|
dev: () => dev
|
|
35
35
|
});
|
|
36
36
|
module.exports = __toCommonJS(dev_exports);
|
|
37
|
-
var
|
|
37
|
+
var path = __toESM(require("node:path"), 1),
|
|
38
|
+
import_picocolors = __toESM(require("picocolors"), 1),
|
|
39
|
+
import_setServerGlobals = require("../server/setServerGlobals.cjs"),
|
|
38
40
|
import_virtualEntryConstants = require("../vite/plugins/virtualEntryConstants.cjs"),
|
|
39
41
|
import_checkNodeVersion = require("./checkNodeVersion.cjs"),
|
|
40
42
|
import_label_process = require("./label-process.cjs");
|
|
43
|
+
const DEFAULT_PORT = 8081,
|
|
44
|
+
DAEMON_PORT = 8081;
|
|
41
45
|
async function dev(args) {
|
|
42
46
|
(0, import_label_process.labelProcess)("dev"), (0, import_checkNodeVersion.checkNodeVersion)(), (0, import_setServerGlobals.setServerGlobals)();
|
|
47
|
+
const root = process.cwd();
|
|
48
|
+
let daemonServerId,
|
|
49
|
+
useDaemon = !1,
|
|
50
|
+
effectivePort = args.port ? +args.port : DEFAULT_PORT;
|
|
51
|
+
const {
|
|
52
|
+
isDaemonRunning,
|
|
53
|
+
registerWithDaemon,
|
|
54
|
+
unregisterFromDaemon,
|
|
55
|
+
writeServerFile,
|
|
56
|
+
removeServerFile
|
|
57
|
+
} = await import("../daemon/ipc"),
|
|
58
|
+
{
|
|
59
|
+
getBundleIdFromConfig,
|
|
60
|
+
getAvailablePort
|
|
61
|
+
} = await import("../daemon/utils"),
|
|
62
|
+
daemonRunning = await isDaemonRunning(),
|
|
63
|
+
bundleId = getBundleIdFromConfig(root) || path.basename(root);
|
|
64
|
+
if (daemonRunning) {
|
|
65
|
+
const requestedPort = args.port ? +args.port : null;
|
|
66
|
+
!requestedPort || requestedPort === DAEMON_PORT ? (effectivePort = await getAvailablePort(8082, DAEMON_PORT), console.log(import_picocolors.default.cyan(`[daemon] Detected running daemon on :${DAEMON_PORT}`)), console.log(import_picocolors.default.cyan(`[daemon] Using port :${effectivePort} for this server`)), useDaemon = !0) : effectivePort = requestedPort;
|
|
67
|
+
}
|
|
43
68
|
const {
|
|
44
69
|
dev: dev2
|
|
45
70
|
} = await import("vxrn/dev"),
|
|
@@ -49,12 +74,12 @@ async function dev(args) {
|
|
|
49
74
|
} = await dev2({
|
|
50
75
|
mode: args.mode,
|
|
51
76
|
clean: args.clean,
|
|
52
|
-
root
|
|
77
|
+
root,
|
|
53
78
|
debugBundle: args.debugBundle,
|
|
54
79
|
debug: args.debug,
|
|
55
80
|
server: {
|
|
56
81
|
host: args.host,
|
|
57
|
-
port:
|
|
82
|
+
port: effectivePort
|
|
58
83
|
},
|
|
59
84
|
entries: {
|
|
60
85
|
native: import_virtualEntryConstants.virtualEntryIdNative
|
|
@@ -63,17 +88,37 @@ async function dev(args) {
|
|
|
63
88
|
{
|
|
64
89
|
closePromise
|
|
65
90
|
} = await start();
|
|
91
|
+
if (useDaemon && bundleId) try {
|
|
92
|
+
daemonServerId = await registerWithDaemon({
|
|
93
|
+
port: effectivePort,
|
|
94
|
+
bundleId,
|
|
95
|
+
root
|
|
96
|
+
}), console.log(import_picocolors.default.green(`[daemon] Registered as ${bundleId} (${daemonServerId}) \u2192 accessible via :${DAEMON_PORT}`)), writeServerFile({
|
|
97
|
+
port: effectivePort,
|
|
98
|
+
bundleId,
|
|
99
|
+
root,
|
|
100
|
+
pid: process.pid
|
|
101
|
+
});
|
|
102
|
+
} catch (err) {
|
|
103
|
+
console.log(import_picocolors.default.yellow(`[daemon] Failed to register: ${err}`));
|
|
104
|
+
}
|
|
105
|
+
const cleanup = async () => {
|
|
106
|
+
if (daemonServerId) try {
|
|
107
|
+
await unregisterFromDaemon(daemonServerId), removeServerFile(root);
|
|
108
|
+
} catch {}
|
|
109
|
+
await stop();
|
|
110
|
+
};
|
|
66
111
|
process.on("beforeExit", () => {
|
|
67
|
-
|
|
112
|
+
cleanup();
|
|
68
113
|
}), process.on("SIGINT", async () => {
|
|
69
114
|
try {
|
|
70
|
-
await
|
|
115
|
+
await cleanup();
|
|
71
116
|
} finally {
|
|
72
117
|
process.exit(2);
|
|
73
118
|
}
|
|
74
119
|
}), process.on("SIGTERM", async () => {
|
|
75
120
|
try {
|
|
76
|
-
await
|
|
121
|
+
await cleanup();
|
|
77
122
|
} finally {
|
|
78
123
|
process.exit(0);
|
|
79
124
|
}
|