clitrigger 0.2.20 → 0.2.22
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/client/assets/{FloatingComposerController-5A3GJtK4-CmhhFjZ3.js → FloatingComposerController-5A3GJtK4-BTn5w3sL.js} +1 -1
- package/dist/client/assets/{index-vTvGYIx2.js → index-Cx9MASRL.js} +284 -279
- package/dist/client/assets/{index-Dq3KywHj.css → index-DBty5-8m.css} +1 -1
- package/dist/client/index.html +2 -2
- package/dist/server/services/tunnel-manager.d.ts.map +1 -1
- package/dist/server/services/tunnel-manager.js +29 -6
- package/dist/server/services/tunnel-manager.js.map +1 -1
- package/package.json +1 -1
package/dist/client/index.html
CHANGED
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
</script>
|
|
17
17
|
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
|
18
18
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
|
19
|
-
<script type="module" crossorigin src="/assets/index-
|
|
20
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
19
|
+
<script type="module" crossorigin src="/assets/index-Cx9MASRL.js"></script>
|
|
20
|
+
<link rel="stylesheet" crossorigin href="/assets/index-DBty5-8m.css">
|
|
21
21
|
</head>
|
|
22
22
|
<body>
|
|
23
23
|
<div id="root"></div>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tunnel-manager.d.ts","sourceRoot":"","sources":["../../../src/server/services/tunnel-manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"tunnel-manager.d.ts","sourceRoot":"","sources":["../../../src/server/services/tunnel-manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAatC,qBAAa,aAAc,SAAQ,YAAY;IAC7C,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,GAAG,CAAuB;IAClC,OAAO,CAAC,MAAM,CAA2D;IACzE,OAAO,CAAC,eAAe,CAA0B;IAEjD;;;;OAIG;IACG,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA2FhD;;;;;;OAMG;IACG,gBAAgB,CACpB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,CAAC;IAmGlB;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAuCjC;;OAEG;IACH,eAAe,IAAI;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE;IAIzD;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IA4B9B;;;OAGG;IACG,sBAAsB,IAAI,OAAO,CAAC,OAAO,CAAC;CA0CjD;AAED,eAAO,MAAM,aAAa,eAAsB,CAAC"}
|
|
@@ -2,7 +2,14 @@ import { spawn, execFile } from 'child_process';
|
|
|
2
2
|
import { EventEmitter } from 'events';
|
|
3
3
|
import { existsSync } from 'fs';
|
|
4
4
|
import { join } from 'path';
|
|
5
|
-
import { bin as
|
|
5
|
+
import { bin as cloudflaredBinRaw } from 'cloudflared';
|
|
6
|
+
// In a packaged Electron app the server runs from inside app.asar, so
|
|
7
|
+
// `require('cloudflared').bin` resolves to a path *inside* the archive
|
|
8
|
+
// (.../app.asar/node_modules/cloudflared/bin/cloudflared.exe). The binary is
|
|
9
|
+
// asarUnpack'd, so the real file lives under app.asar.unpacked — without this
|
|
10
|
+
// rewrite every spawn/execFile hits a nonexistent archive path and exits 1.
|
|
11
|
+
// No-op in dev (the path contains no "app.asar").
|
|
12
|
+
const cloudflaredBin = cloudflaredBinRaw.replace(/app\.asar([\\/])/, 'app.asar.unpacked$1');
|
|
6
13
|
export class TunnelManager extends EventEmitter {
|
|
7
14
|
process = null;
|
|
8
15
|
url = null;
|
|
@@ -26,22 +33,32 @@ export class TunnelManager extends EventEmitter {
|
|
|
26
33
|
return new Promise((resolve, reject) => {
|
|
27
34
|
const proc = spawn(this.cloudflaredPath, ['tunnel', '--url', `http://localhost:${port}`], {
|
|
28
35
|
stdio: ['ignore', 'pipe', 'pipe'],
|
|
29
|
-
shell
|
|
36
|
+
// Only a bare "cloudflared" (PATH fallback) needs a shell to resolve.
|
|
37
|
+
// For an absolute .exe path, shell:true breaks on spaces / asar paths.
|
|
38
|
+
shell: this.cloudflaredPath === 'cloudflared',
|
|
30
39
|
});
|
|
31
40
|
this.process = proc;
|
|
32
41
|
const urlPattern = /https:\/\/[a-zA-Z0-9-]+\.trycloudflare\.com/;
|
|
33
42
|
let resolved = false;
|
|
43
|
+
// Keep the tail of cloudflared's output so we can surface the real reason
|
|
44
|
+
// when it dies before producing a URL (quick-tunnel rejection, etc.).
|
|
45
|
+
let outputTail = '';
|
|
46
|
+
const tail = () => {
|
|
47
|
+
const t = outputTail.trim().split('\n').slice(-6).join('\n');
|
|
48
|
+
return t ? `:\n${t}` : '';
|
|
49
|
+
};
|
|
34
50
|
// A timeout so we don't hang forever waiting for a URL
|
|
35
51
|
const timeout = setTimeout(() => {
|
|
36
52
|
if (!resolved) {
|
|
37
53
|
resolved = true;
|
|
38
54
|
this.status = 'error';
|
|
39
55
|
this.emit('error', new Error('Timed out waiting for tunnel URL'));
|
|
40
|
-
reject(new Error(
|
|
56
|
+
reject(new Error(`Timed out waiting for tunnel URL (30s)${tail()}`));
|
|
41
57
|
}
|
|
42
58
|
}, 30_000);
|
|
43
59
|
const handleOutput = (data) => {
|
|
44
60
|
const text = data.toString();
|
|
61
|
+
outputTail = (outputTail + text).slice(-4000);
|
|
45
62
|
const match = text.match(urlPattern);
|
|
46
63
|
if (match && !resolved) {
|
|
47
64
|
resolved = true;
|
|
@@ -77,7 +94,7 @@ export class TunnelManager extends EventEmitter {
|
|
|
77
94
|
else if (!resolved) {
|
|
78
95
|
resolved = true;
|
|
79
96
|
this.status = 'error';
|
|
80
|
-
reject(new Error(`cloudflared exited with code ${code} before producing a URL`));
|
|
97
|
+
reject(new Error(`cloudflared exited with code ${code} before producing a URL${tail()}`));
|
|
81
98
|
}
|
|
82
99
|
});
|
|
83
100
|
});
|
|
@@ -102,10 +119,15 @@ export class TunnelManager extends EventEmitter {
|
|
|
102
119
|
return new Promise((resolve, reject) => {
|
|
103
120
|
const proc = spawn(this.cloudflaredPath, ['tunnel', '--url', `http://localhost:${port}`, 'run', tunnelName], {
|
|
104
121
|
stdio: ['ignore', 'pipe', 'pipe'],
|
|
105
|
-
shell:
|
|
122
|
+
shell: this.cloudflaredPath === 'cloudflared',
|
|
106
123
|
});
|
|
107
124
|
this.process = proc;
|
|
108
125
|
let resolved = false;
|
|
126
|
+
let outputTail = '';
|
|
127
|
+
const tail = () => {
|
|
128
|
+
const t = outputTail.trim().split('\n').slice(-6).join('\n');
|
|
129
|
+
return t ? `:\n${t}` : '';
|
|
130
|
+
};
|
|
109
131
|
// For named tunnels, look for a connection registration message
|
|
110
132
|
const connPattern = /connection.*registered|Registered tunnel connection/i;
|
|
111
133
|
const urlPattern = /https:\/\/[a-zA-Z0-9.-]+/;
|
|
@@ -124,6 +146,7 @@ export class TunnelManager extends EventEmitter {
|
|
|
124
146
|
}, 15_000);
|
|
125
147
|
const handleOutput = (data) => {
|
|
126
148
|
const text = data.toString();
|
|
149
|
+
outputTail = (outputTail + text).slice(-4000);
|
|
127
150
|
if (connPattern.test(text) && !resolved) {
|
|
128
151
|
resolved = true;
|
|
129
152
|
clearTimeout(timeout);
|
|
@@ -164,7 +187,7 @@ export class TunnelManager extends EventEmitter {
|
|
|
164
187
|
else if (!resolved) {
|
|
165
188
|
resolved = true;
|
|
166
189
|
this.status = 'error';
|
|
167
|
-
reject(new Error(`cloudflared exited with code ${code}`));
|
|
190
|
+
reject(new Error(`cloudflared exited with code ${code}${tail()}`));
|
|
168
191
|
}
|
|
169
192
|
});
|
|
170
193
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tunnel-manager.js","sourceRoot":"","sources":["../../../src/server/services/tunnel-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAgB,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"tunnel-manager.js","sourceRoot":"","sources":["../../../src/server/services/tunnel-manager.ts"],"names":[],"mappings":"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"}
|