@ccpocket/bridge 1.3.0 → 1.4.0
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 +1 -1
- package/dist/startup-info.js +37 -29
- package/dist/startup-info.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -30,7 +30,7 @@ ccpocket-bridge
|
|
|
30
30
|
| `BRIDGE_PORT` | `8765` | WebSocket port |
|
|
31
31
|
| `BRIDGE_HOST` | `0.0.0.0` | Bind address |
|
|
32
32
|
| `BRIDGE_API_KEY` | (none) | API key authentication (enabled when set) |
|
|
33
|
-
| `
|
|
33
|
+
| `BRIDGE_DEMO_MODE` | (none) | Demo mode: hide Tailscale IPs and API key from QR code / logs |
|
|
34
34
|
|
|
35
35
|
```bash
|
|
36
36
|
# Example: custom port with API key
|
package/dist/startup-info.js
CHANGED
|
@@ -32,52 +32,60 @@ export async function printStartupInfo(port, _host, apiKey) {
|
|
|
32
32
|
const addresses = getReachableAddresses();
|
|
33
33
|
if (addresses.length === 0)
|
|
34
34
|
return;
|
|
35
|
+
const demoMode = !!process.env.BRIDGE_DEMO_MODE;
|
|
36
|
+
// Demo mode: exclude Tailscale addresses for video recording
|
|
37
|
+
const displayAddresses = demoMode
|
|
38
|
+
? addresses.filter((a) => a.label !== "Tailscale")
|
|
39
|
+
: addresses;
|
|
40
|
+
if (displayAddresses.length === 0)
|
|
41
|
+
return;
|
|
35
42
|
const lines = [];
|
|
36
43
|
lines.push("");
|
|
37
|
-
|
|
44
|
+
if (demoMode) {
|
|
45
|
+
lines.push("[bridge] ─── Connection Info [DEMO MODE] ────────────────");
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
lines.push("[bridge] ─── Connection Info ───────────────────────────");
|
|
49
|
+
}
|
|
38
50
|
// Group by label
|
|
39
51
|
const grouped = new Map();
|
|
40
|
-
for (const addr of
|
|
52
|
+
for (const addr of displayAddresses) {
|
|
41
53
|
const list = grouped.get(addr.label) ?? [];
|
|
42
54
|
list.push(addr.ip);
|
|
43
55
|
grouped.set(addr.label, list);
|
|
44
56
|
}
|
|
45
|
-
const hideIp = !!process.env.BRIDGE_HIDE_IP;
|
|
46
57
|
for (const [label, ips] of grouped) {
|
|
47
58
|
for (const ip of ips) {
|
|
48
59
|
const padded = `${label}:`.padEnd(12);
|
|
49
|
-
|
|
50
|
-
lines.push(`[bridge] ${padded} ws://${display}:${port}`);
|
|
60
|
+
lines.push(`[bridge] ${padded} ws://${ip}:${port}`);
|
|
51
61
|
}
|
|
52
62
|
}
|
|
53
63
|
// Use first LAN address, fallback to first address
|
|
54
|
-
const primaryAddr =
|
|
55
|
-
|
|
64
|
+
const primaryAddr = displayAddresses.find((a) => a.label === "LAN")?.ip ??
|
|
65
|
+
displayAddresses[0].ip;
|
|
66
|
+
// Demo mode: omit API key from deep link
|
|
67
|
+
const deepLink = buildConnectionUrl(primaryAddr, port, demoMode ? undefined : apiKey);
|
|
56
68
|
lines.push("");
|
|
57
|
-
lines.push(`[bridge] Deep Link: ${
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
lines.push("[bridge] Scan QR code with ccpocket app:");
|
|
61
|
-
}
|
|
69
|
+
lines.push(`[bridge] Deep Link: ${deepLink}`);
|
|
70
|
+
lines.push("");
|
|
71
|
+
lines.push("[bridge] Scan QR code with ccpocket app:");
|
|
62
72
|
// Print all non-QR lines
|
|
63
73
|
console.log(lines.join("\n"));
|
|
64
|
-
// Generate and print QR code
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
console.log("[bridge] (QR code generation failed)");
|
|
80
|
-
}
|
|
74
|
+
// Generate and print QR code
|
|
75
|
+
try {
|
|
76
|
+
const qrText = await QRCode.toString(deepLink, {
|
|
77
|
+
type: "terminal",
|
|
78
|
+
small: true,
|
|
79
|
+
});
|
|
80
|
+
// Indent QR code lines
|
|
81
|
+
const indented = qrText
|
|
82
|
+
.split("\n")
|
|
83
|
+
.map((line) => ` ${line}`)
|
|
84
|
+
.join("\n");
|
|
85
|
+
console.log(indented);
|
|
86
|
+
}
|
|
87
|
+
catch {
|
|
88
|
+
console.log("[bridge] (QR code generation failed)");
|
|
81
89
|
}
|
|
82
90
|
console.log("[bridge] ───────────────────────────────────────────────");
|
|
83
91
|
}
|
package/dist/startup-info.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"startup-info.js","sourceRoot":"","sources":["../src/startup-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,MAAM,MAAM,QAAQ,CAAC;AAO5B,MAAM,UAAU,qBAAqB;IACnC,MAAM,UAAU,GAAG,EAAE,CAAC,iBAAiB,EAAE,CAAC;IAC1C,MAAM,SAAS,GAAqB,EAAE,CAAC;IAEvC,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACxD,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,IAAI,KAAK,CAAC,QAAQ;gBAAE,SAAS;YAExD,IAAI,KAAK,GAAG,KAAK,CAAC;YAClB,IACE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;gBAChC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;gBACvB,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,EACxC,CAAC;gBACD,KAAK,GAAG,WAAW,CAAC;YACtB,CAAC;YAED,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,EAAU,EACV,IAAY,EACZ,MAAe;IAEf,MAAM,KAAK,GAAG,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC;IACnC,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;IACnD,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,sBAAsB,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC;AACnD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAAY,EACZ,KAAa,EACb,MAAe;IAEf,MAAM,SAAS,GAAG,qBAAqB,EAAE,CAAC;IAC1C,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAEnC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"startup-info.js","sourceRoot":"","sources":["../src/startup-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,MAAM,MAAM,QAAQ,CAAC;AAO5B,MAAM,UAAU,qBAAqB;IACnC,MAAM,UAAU,GAAG,EAAE,CAAC,iBAAiB,EAAE,CAAC;IAC1C,MAAM,SAAS,GAAqB,EAAE,CAAC;IAEvC,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACxD,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,IAAI,KAAK,CAAC,QAAQ;gBAAE,SAAS;YAExD,IAAI,KAAK,GAAG,KAAK,CAAC;YAClB,IACE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;gBAChC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;gBACvB,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,EACxC,CAAC;gBACD,KAAK,GAAG,WAAW,CAAC;YACtB,CAAC;YAED,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,EAAU,EACV,IAAY,EACZ,MAAe;IAEf,MAAM,KAAK,GAAG,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC;IACnC,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;IACnD,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,sBAAsB,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC;AACnD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAAY,EACZ,KAAa,EACb,MAAe;IAEf,MAAM,SAAS,GAAG,qBAAqB,EAAE,CAAC;IAC1C,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAEnC,MAAM,QAAQ,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;IAEhD,6DAA6D;IAC7D,MAAM,gBAAgB,GAAG,QAAQ;QAC/B,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,WAAW,CAAC;QAClD,CAAC,CAAC,SAAS,CAAC;IAEd,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAE1C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,IAAI,QAAQ,EAAE,CAAC;QACb,KAAK,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;IAC1E,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;IACzE,CAAC;IAED,iBAAiB;IACjB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC5C,KAAK,MAAM,IAAI,IAAI,gBAAgB,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAC3C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC;QACnC,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACrB,MAAM,MAAM,GAAG,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACtC,KAAK,CAAC,IAAI,CAAC,cAAc,MAAM,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED,mDAAmD;IACnD,MAAM,WAAW,GACf,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,EAAE,EAAE;QACnD,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzB,yCAAyC;IACzC,MAAM,QAAQ,GAAG,kBAAkB,CACjC,WAAW,EACX,IAAI,EACJ,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAC9B,CAAC;IAEF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,yBAAyB,QAAQ,EAAE,CAAC,CAAC;IAChD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;IAEzD,yBAAyB;IACzB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAE9B,6BAA6B;IAC7B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC7C,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,IAAI;SACZ,CAAC,CAAC;QACH,uBAAuB;QACvB,MAAM,QAAQ,GAAG,MAAM;aACpB,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,IAAI,EAAE,CAAC;aACnC,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACxB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;IACxD,CAAC;IAED,OAAO,CAAC,GAAG,CACT,0DAA0D,CAC3D,CAAC;AACJ,CAAC"}
|