miaw-core 1.9.0 → 1.10.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.
Files changed (55) hide show
  1. package/.env.example +59 -0
  2. package/CHANGELOG.md +150 -0
  3. package/README.md +13 -1
  4. package/bin/miaw-cli.ts +50 -4
  5. package/dist/cli/commands/commands-index.d.ts +1 -0
  6. package/dist/cli/commands/commands-index.d.ts.map +1 -1
  7. package/dist/cli/commands/commands-index.js +1 -0
  8. package/dist/cli/commands/commands-index.js.map +1 -1
  9. package/dist/cli/commands/index.d.ts +6 -0
  10. package/dist/cli/commands/index.d.ts.map +1 -1
  11. package/dist/cli/commands/index.js +45 -2
  12. package/dist/cli/commands/index.js.map +1 -1
  13. package/dist/cli/commands/proxy.d.ts +59 -0
  14. package/dist/cli/commands/proxy.d.ts.map +1 -0
  15. package/dist/cli/commands/proxy.js +418 -0
  16. package/dist/cli/commands/proxy.js.map +1 -0
  17. package/dist/cli/repl.d.ts +4 -0
  18. package/dist/cli/repl.d.ts.map +1 -1
  19. package/dist/cli/repl.js +43 -3
  20. package/dist/cli/repl.js.map +1 -1
  21. package/dist/cli/utils/proxy-config.d.ts +46 -0
  22. package/dist/cli/utils/proxy-config.d.ts.map +1 -0
  23. package/dist/cli/utils/proxy-config.js +93 -0
  24. package/dist/cli/utils/proxy-config.js.map +1 -0
  25. package/dist/client/MiawClient.d.ts +8 -0
  26. package/dist/client/MiawClient.d.ts.map +1 -1
  27. package/dist/client/MiawClient.js +71 -10
  28. package/dist/client/MiawClient.js.map +1 -1
  29. package/dist/index.d.ts +6 -2
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +5 -1
  32. package/dist/index.js.map +1 -1
  33. package/dist/types/index.d.ts +22 -0
  34. package/dist/types/index.d.ts.map +1 -1
  35. package/dist/types/index.js.map +1 -1
  36. package/dist/utils/proxy-agent.d.ts +47 -11
  37. package/dist/utils/proxy-agent.d.ts.map +1 -1
  38. package/dist/utils/proxy-agent.js +65 -12
  39. package/dist/utils/proxy-agent.js.map +1 -1
  40. package/dist/utils/proxy-loader.d.ts +114 -0
  41. package/dist/utils/proxy-loader.d.ts.map +1 -0
  42. package/dist/utils/proxy-loader.js +379 -0
  43. package/dist/utils/proxy-loader.js.map +1 -0
  44. package/dist/utils/proxy-rotator.d.ts +126 -0
  45. package/dist/utils/proxy-rotator.d.ts.map +1 -0
  46. package/dist/utils/proxy-rotator.js +0 -0
  47. package/dist/utils/proxy-rotator.js.map +1 -0
  48. package/docs/BAILEYS_VS_MIAW_COMPARISON.md +8 -6
  49. package/docs/CLI.md +158 -1
  50. package/docs/DEFERRED_FEATURES.md +67 -0
  51. package/docs/DEPLOYMENT_PROXY.md +145 -0
  52. package/docs/PROXY.md +617 -0
  53. package/docs/USAGE.md +34 -63
  54. package/package.json +3 -2
  55. package/docs/PROXY_SUPPORT_PLAN.md +0 -1442
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Proxy Commands
3
+ *
4
+ * Inspect and test proxies. None of these commands require a WhatsApp
5
+ * connection - they probe the proxy directly, which is the point: you can
6
+ * validate a proxy before spending a pairing attempt on it.
7
+ */
8
+ export interface ProxyProbeResult {
9
+ /** Credential-masked. */
10
+ url: string;
11
+ protocol: string;
12
+ ok: boolean;
13
+ latencyMs: number | null;
14
+ status: number | null;
15
+ /**
16
+ * Whether media *downloads* would also go through this proxy.
17
+ *
18
+ * Computed, not probed. Uploads are proxied for every supported protocol
19
+ * (they use a Node http.Agent). Downloads go through native fetch, which
20
+ * needs an undici Dispatcher, and undici has no SOCKS transport - so SOCKS
21
+ * downloads fall back to a direct connection.
22
+ */
23
+ downloadProxied: boolean;
24
+ exitIp: string | null;
25
+ error: {
26
+ code: string | null;
27
+ message: string;
28
+ } | null;
29
+ }
30
+ /**
31
+ * Tests one proxy's reachability and latency.
32
+ *
33
+ * Never throws - failures come back as `ok: false` with a scrubbed error.
34
+ */
35
+ export declare function probeProxy(rawUrl: string, options?: {
36
+ timeoutMs?: number;
37
+ showIp?: boolean;
38
+ }): Promise<ProxyProbeResult>;
39
+ /**
40
+ * Shows the proxies parsed out of a proxy list file.
41
+ */
42
+ export declare function cmdProxyList(proxyFile: string | undefined, jsonOutput: boolean): Promise<boolean>;
43
+ /**
44
+ * Tests a single proxy.
45
+ */
46
+ export declare function cmdProxyTest(url: string | undefined, options: {
47
+ showIp?: boolean;
48
+ timeoutMs?: number;
49
+ }, jsonOutput: boolean): Promise<boolean>;
50
+ /**
51
+ * Tests every proxy in a list file.
52
+ *
53
+ * Returns false if any proxy fails, so it can gate a deploy.
54
+ */
55
+ export declare function cmdProxyTestAll(proxyFile: string | undefined, options: {
56
+ showIp?: boolean;
57
+ timeoutMs?: number;
58
+ }, jsonOutput: boolean): Promise<boolean>;
59
+ //# sourceMappingURL=proxy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/proxy.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAsBH,MAAM,WAAW,gBAAgB;IAC/B,yBAAyB;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,OAAO,CAAC;IACZ,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB;;;;;;;OAOG;IACH,eAAe,EAAE,OAAO,CAAC;IACzB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CACxD;AAgFD;;;;GAIG;AACH,wBAAsB,UAAU,CAC9B,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GACrD,OAAO,CAAC,gBAAgB,CAAC,CAmH3B;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,UAAU,EAAE,OAAO,GAClB,OAAO,CAAC,OAAO,CAAC,CA0HlB;AA2BD;;GAEG;AACH,wBAAsB,YAAY,CAChC,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,EACjD,UAAU,EAAE,OAAO,GAClB,OAAO,CAAC,OAAO,CAAC,CAoBlB;AAmBD;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,EACjD,UAAU,EAAE,OAAO,GAClB,OAAO,CAAC,OAAO,CAAC,CA+FlB"}
@@ -0,0 +1,418 @@
1
+ /**
2
+ * Proxy Commands
3
+ *
4
+ * Inspect and test proxies. None of these commands require a WhatsApp
5
+ * connection - they probe the proxy directly, which is the point: you can
6
+ * validate a proxy before spending a pairing attempt on it.
7
+ */
8
+ import * as https from "node:https";
9
+ import { performance } from "node:perf_hooks";
10
+ import { createProxyAgents, maskProxyUrl, validateProxyConfig, } from "../../utils/proxy-agent.js";
11
+ import { loadProxyList } from "../../utils/proxy-loader.js";
12
+ import { formatTable } from "../utils/formatter.js";
13
+ import { getErrorMessage } from "../../utils/type-guards.js";
14
+ /** What we probe. Any HTTP response proves the tunnel works. */
15
+ const TEST_TARGET = "https://web.whatsapp.com/";
16
+ /** Used only by --ip, and only when the user asks for it. */
17
+ const IP_ECHO_TARGET = "https://api.ipify.org";
18
+ const DEFAULT_TIMEOUT_MS = 10000;
19
+ /** Concurrency for test-all: enough to be fast, low enough not to trip provider rate limits. */
20
+ const TEST_ALL_CONCURRENCY = 5;
21
+ /**
22
+ * Strips a proxy URL's password out of arbitrary error text.
23
+ *
24
+ * The proxy-agent libraries sometimes embed the full URL in their errors.
25
+ */
26
+ function scrub(message, rawUrl) {
27
+ let password = "";
28
+ try {
29
+ password = new URL(rawUrl).password;
30
+ }
31
+ catch {
32
+ /* not parseable, nothing to scrub */
33
+ }
34
+ let scrubbed = message.split(rawUrl).join(maskProxyUrl(rawUrl));
35
+ if (password) {
36
+ scrubbed = scrubbed.split(password).join("****");
37
+ }
38
+ return scrubbed;
39
+ }
40
+ /**
41
+ * Issues one request through a proxy agent and resolves with the status code.
42
+ *
43
+ * Uses https.request rather than fetch + dispatcher on purpose. The undici
44
+ * dispatcher path only supports HTTP/HTTPS proxies, and it exercises the
45
+ * media transport rather than the one that matters. The wsAgent is an
46
+ * http.Agent subclass for all four protocols, so this single code path
47
+ * covers SOCKS too - and it is the exact agent Baileys will use for the
48
+ * WebSocket.
49
+ */
50
+ function requestThrough(target, agent, timeoutMs, method = "HEAD") {
51
+ let settle = () => { };
52
+ const attempt = new Promise((resolve, reject) => {
53
+ const req = https.request(target, { method, agent }, (res) => {
54
+ const chunks = [];
55
+ res.on("data", (chunk) => {
56
+ if (method === "GET")
57
+ chunks.push(chunk);
58
+ });
59
+ res.on("end", () => resolve({
60
+ status: res.statusCode ?? 0,
61
+ body: Buffer.concat(chunks).toString("utf-8").trim(),
62
+ }));
63
+ res.on("error", reject);
64
+ });
65
+ req.setTimeout(timeoutMs, () => {
66
+ req.destroy(new Error(`Socket timed out after ${timeoutMs}ms`));
67
+ });
68
+ req.on("error", reject);
69
+ settle = () => req.destroy();
70
+ req.end();
71
+ });
72
+ // `req.setTimeout` only covers socket inactivity, and `req.destroy()` cannot
73
+ // abort a TCP connect still in flight inside the proxy agent - a blackholed
74
+ // proxy host would otherwise hang for the OS connect timeout (~75s) no matter
75
+ // what --timeout said. Racing guarantees the caller is released on schedule;
76
+ // the caller then destroys the agent, which tears down the lingering socket.
77
+ const deadline = new Promise((_, reject) => {
78
+ const timer = setTimeout(() => {
79
+ settle();
80
+ reject(new Error(`Timed out after ${timeoutMs}ms`));
81
+ }, timeoutMs);
82
+ timer.unref?.();
83
+ });
84
+ return Promise.race([attempt, deadline]);
85
+ }
86
+ /**
87
+ * Tests one proxy's reachability and latency.
88
+ *
89
+ * Never throws - failures come back as `ok: false` with a scrubbed error.
90
+ */
91
+ export async function probeProxy(rawUrl, options = {}) {
92
+ const timeoutMs = options.timeoutMs ?? DEFAULT_TIMEOUT_MS;
93
+ const masked = maskProxyUrl(rawUrl);
94
+ // Validate before opening anything - never dial ftp://.
95
+ if (!validateProxyConfig(rawUrl)) {
96
+ let protocol = "unknown";
97
+ try {
98
+ protocol = new URL(rawUrl).protocol.replace(":", "");
99
+ }
100
+ catch {
101
+ /* keep "unknown" */
102
+ }
103
+ return {
104
+ url: masked,
105
+ protocol,
106
+ ok: false,
107
+ latencyMs: null,
108
+ status: null,
109
+ downloadProxied: false,
110
+ exitIp: null,
111
+ error: {
112
+ code: "EPROTONOSUPPORT",
113
+ message: "Unsupported proxy protocol. Supported: http, https, socks4, socks4a, socks5, socks5h",
114
+ },
115
+ };
116
+ }
117
+ const protocol = new URL(rawUrl).protocol.replace(":", "");
118
+ const downloadProxied = protocol === "http" || protocol === "https";
119
+ let agent;
120
+ try {
121
+ ({ wsAgent: agent } = await createProxyAgents(rawUrl));
122
+ }
123
+ catch (error) {
124
+ return {
125
+ url: masked,
126
+ protocol,
127
+ ok: false,
128
+ latencyMs: null,
129
+ status: null,
130
+ downloadProxied,
131
+ exitIp: null,
132
+ error: { code: null, message: scrub(getErrorMessage(error), rawUrl) },
133
+ };
134
+ }
135
+ const start = performance.now();
136
+ try {
137
+ const { status } = await requestThrough(TEST_TARGET, agent, timeoutMs);
138
+ const latencyMs = Math.round(performance.now() - start);
139
+ // 407 comes from the PROXY, not the target: the tunnel was refused, so no
140
+ // traffic ever reached WhatsApp. Reporting this as reachable would make
141
+ // `proxy test-all` green-light a list with bad credentials - exactly the
142
+ // pre-flight check it exists to provide.
143
+ if (status === 407) {
144
+ return {
145
+ url: masked,
146
+ protocol,
147
+ ok: false,
148
+ latencyMs,
149
+ status,
150
+ downloadProxied,
151
+ exitIp: null,
152
+ error: {
153
+ code: "EPROXYAUTH",
154
+ message: "407 Proxy Authentication Required - the proxy rejected these credentials",
155
+ },
156
+ };
157
+ }
158
+ let exitIp = null;
159
+ if (options.showIp) {
160
+ try {
161
+ const echo = await requestThrough(IP_ECHO_TARGET, agent, timeoutMs, "GET");
162
+ exitIp = echo.body || null;
163
+ }
164
+ catch {
165
+ exitIp = null;
166
+ }
167
+ }
168
+ // Any HTTP status means the CONNECT tunnel or SOCKS handshake completed,
169
+ // which is what we set out to measure. Whether WhatsApp likes the IP is
170
+ // a separate question this probe cannot answer.
171
+ return {
172
+ url: masked,
173
+ protocol,
174
+ ok: true,
175
+ latencyMs,
176
+ status,
177
+ downloadProxied,
178
+ exitIp,
179
+ error: null,
180
+ };
181
+ }
182
+ catch (error) {
183
+ const code = error && typeof error === "object" && "code" in error
184
+ ? String(error.code)
185
+ : null;
186
+ return {
187
+ url: masked,
188
+ protocol,
189
+ ok: false,
190
+ latencyMs: null,
191
+ status: null,
192
+ downloadProxied,
193
+ exitIp: null,
194
+ error: { code, message: scrub(getErrorMessage(error), rawUrl) },
195
+ };
196
+ }
197
+ finally {
198
+ // Mandatory: a lingering agent keeps sockets open and the CLI never exits.
199
+ agent?.destroy();
200
+ }
201
+ }
202
+ /**
203
+ * Shows the proxies parsed out of a proxy list file.
204
+ */
205
+ export async function cmdProxyList(proxyFile, jsonOutput) {
206
+ if (!proxyFile) {
207
+ console.log("❌ No proxy file configured.");
208
+ console.log(" Pass --proxy-file <path> or set MIAW_PROXY_FILE in your environment.");
209
+ return false;
210
+ }
211
+ const errors = [];
212
+ let entries;
213
+ try {
214
+ // Non-strict so one bad line doesn't hide the rest of the file.
215
+ entries = await loadProxyList(proxyFile, {
216
+ strict: false,
217
+ onInvalid: (info) => errors.push(info),
218
+ });
219
+ }
220
+ catch (error) {
221
+ console.log(`❌ ${getErrorMessage(error)}`);
222
+ return false;
223
+ }
224
+ const format = proxyFile.toLowerCase().endsWith(".json") ? "json" : "txt";
225
+ const byProtocol = {};
226
+ const rows = entries.map((entry, index) => {
227
+ const parsed = new URL(entry.url);
228
+ const protocol = parsed.protocol.replace(":", "");
229
+ byProtocol[protocol] = (byProtocol[protocol] ?? 0) + 1;
230
+ return {
231
+ index,
232
+ url: maskProxyUrl(entry),
233
+ protocol,
234
+ host: parsed.hostname,
235
+ port: Number(parsed.port) || null,
236
+ hasAuth: Boolean(parsed.username || entry.username),
237
+ weight: entry.weight ?? 1,
238
+ label: entry.label ?? null,
239
+ valid: true,
240
+ downloadProxied: protocol === "http" || protocol === "https",
241
+ };
242
+ });
243
+ if (jsonOutput) {
244
+ console.log(JSON.stringify({
245
+ file: proxyFile,
246
+ format,
247
+ count: rows.length,
248
+ valid: rows.length,
249
+ invalid: errors.length,
250
+ byProtocol,
251
+ proxies: rows,
252
+ errors: errors.map((e) => ({
253
+ line: e.line,
254
+ raw: e.masked,
255
+ error: e.reason,
256
+ })),
257
+ }, null, 2));
258
+ return true;
259
+ }
260
+ console.log(`\n📄 ${proxyFile} (${format})\n`);
261
+ if (rows.length > 0) {
262
+ console.log(formatTable(rows.map((r) => ({
263
+ ...r,
264
+ auth: r.hasAuth ? "Yes" : "No",
265
+ media: r.downloadProxied ? "Proxied" : "DL direct",
266
+ label: r.label ?? "-",
267
+ })), [
268
+ { key: "index", label: "#", width: 5 },
269
+ { key: "url", label: "Proxy", width: 44 },
270
+ { key: "protocol", label: "Protocol", width: 11 },
271
+ { key: "auth", label: "Auth", width: 7 },
272
+ { key: "weight", label: "Weight", width: 9 },
273
+ { key: "media", label: "Media", width: 10 },
274
+ { key: "label", label: "Label", width: 12 },
275
+ ]));
276
+ }
277
+ if (errors.length > 0) {
278
+ console.log(`\n⚠️ ${errors.length} invalid entr${errors.length === 1 ? "y" : "ies"} skipped:\n`);
279
+ console.log(formatTable(errors.map((e) => ({ line: e.line, raw: e.masked, error: e.reason })), [
280
+ { key: "line", label: "Line", width: 8 },
281
+ { key: "raw", label: "Entry", width: 40 },
282
+ { key: "error", label: "Reason", width: 40 },
283
+ ]));
284
+ }
285
+ const protocols = Object.entries(byProtocol)
286
+ .map(([name, count]) => `${count} ${name}`)
287
+ .join(", ");
288
+ console.log(`\n✅ ${rows.length} ${rows.length === 1 ? "proxy" : "proxies"} loaded${protocols ? ` (${protocols})` : ""}`);
289
+ const socksCount = rows.filter((r) => !r.downloadProxied).length;
290
+ if (socksCount > 0) {
291
+ console.log(`⚠️ ${socksCount} SOCKS prox${socksCount === 1 ? "y" : "ies"}: media DOWNLOADS use a direct connection (uploads are proxied; see docs/PROXY.md)`);
292
+ }
293
+ return true;
294
+ }
295
+ /**
296
+ * Renders one probe result in human form.
297
+ */
298
+ function printProbe(result) {
299
+ if (result.ok) {
300
+ console.log(`✅ ${result.url}`);
301
+ console.log(` Protocol: ${result.protocol}`);
302
+ console.log(` Latency: ${result.latencyMs}ms (HTTP ${result.status})`);
303
+ if (result.exitIp) {
304
+ console.log(` Exit IP: ${result.exitIp}`);
305
+ }
306
+ if (!result.downloadProxied) {
307
+ console.log(" ⚠️ Media DOWNLOADS will use a direct connection (undici has no SOCKS transport)");
308
+ }
309
+ }
310
+ else {
311
+ console.log(`❌ ${result.url}`);
312
+ console.log(` Protocol: ${result.protocol}`);
313
+ console.log(` Error: ${result.error?.code ? `${result.error.code} - ` : ""}${result.error?.message ?? "unknown"}`);
314
+ }
315
+ }
316
+ /**
317
+ * Tests a single proxy.
318
+ */
319
+ export async function cmdProxyTest(url, options, jsonOutput) {
320
+ if (!url) {
321
+ console.log("❌ Usage: miaw-cli proxy test <url> [--ip] [--timeout MS]");
322
+ console.log(" Or set a proxy with --proxy <url>.");
323
+ return false;
324
+ }
325
+ if (!jsonOutput) {
326
+ console.error(`🔍 Testing proxy via ${TEST_TARGET} ...`);
327
+ }
328
+ const result = await probeProxy(url, options);
329
+ if (jsonOutput) {
330
+ console.log(JSON.stringify({ ...result, target: TEST_TARGET }, null, 2));
331
+ return result.ok;
332
+ }
333
+ console.log("");
334
+ printProbe(result);
335
+ return result.ok;
336
+ }
337
+ /**
338
+ * Runs `probeProxy` over a list with bounded concurrency.
339
+ */
340
+ async function probeAll(urls, options) {
341
+ const results = [];
342
+ for (let i = 0; i < urls.length; i += TEST_ALL_CONCURRENCY) {
343
+ const chunk = urls.slice(i, i + TEST_ALL_CONCURRENCY);
344
+ results.push(...(await Promise.all(chunk.map((u) => probeProxy(u, options)))));
345
+ }
346
+ return results;
347
+ }
348
+ /**
349
+ * Tests every proxy in a list file.
350
+ *
351
+ * Returns false if any proxy fails, so it can gate a deploy.
352
+ */
353
+ export async function cmdProxyTestAll(proxyFile, options, jsonOutput) {
354
+ if (!proxyFile) {
355
+ console.log("❌ No proxy file configured.");
356
+ console.log(" Pass --proxy-file <path> or set MIAW_PROXY_FILE in your environment.");
357
+ return false;
358
+ }
359
+ let entries;
360
+ try {
361
+ entries = await loadProxyList(proxyFile, { strict: false });
362
+ }
363
+ catch (error) {
364
+ console.log(`❌ ${getErrorMessage(error)}`);
365
+ return false;
366
+ }
367
+ if (entries.length === 0) {
368
+ console.log(`❌ No valid proxies found in ${proxyFile}`);
369
+ return false;
370
+ }
371
+ if (!jsonOutput) {
372
+ console.error(`🔍 Testing ${entries.length} proxies via ${TEST_TARGET} (${TEST_ALL_CONCURRENCY} at a time) ...`);
373
+ }
374
+ const results = await probeAll(entries.map((e) => e.url), options);
375
+ // Fastest first, failures last.
376
+ results.sort((a, b) => {
377
+ if (a.ok !== b.ok)
378
+ return a.ok ? -1 : 1;
379
+ return (a.latencyMs ?? Infinity) - (b.latencyMs ?? Infinity);
380
+ });
381
+ const okResults = results.filter((r) => r.ok);
382
+ const latencies = okResults
383
+ .map((r) => r.latencyMs ?? 0)
384
+ .sort((a, b) => a - b);
385
+ const medianLatencyMs = latencies.length > 0 ? latencies[Math.floor(latencies.length / 2)] : null;
386
+ if (jsonOutput) {
387
+ console.log(JSON.stringify({
388
+ file: proxyFile,
389
+ target: TEST_TARGET,
390
+ tested: results.length,
391
+ ok: okResults.length,
392
+ failed: results.length - okResults.length,
393
+ medianLatencyMs,
394
+ results,
395
+ }, null, 2));
396
+ return okResults.length === results.length;
397
+ }
398
+ console.log("");
399
+ console.log(formatTable(results.map((r) => ({
400
+ status: r.ok ? "OK" : "FAIL",
401
+ url: r.url,
402
+ protocol: r.protocol,
403
+ latency: r.ok ? `${r.latencyMs}ms` : "-",
404
+ detail: r.ok
405
+ ? `HTTP ${r.status}${r.downloadProxied ? "" : " (dl direct)"}`
406
+ : (r.error?.code ?? r.error?.message ?? "unknown"),
407
+ })), [
408
+ { key: "status", label: "Status", width: 9 },
409
+ { key: "url", label: "Proxy", width: 40 },
410
+ { key: "protocol", label: "Protocol", width: 11 },
411
+ { key: "latency", label: "Latency", width: 10 },
412
+ { key: "detail", label: "Detail", width: 30 },
413
+ ]));
414
+ const failed = results.length - okResults.length;
415
+ console.log(`\n${failed === 0 ? "✅" : "⚠️ "} ${okResults.length}/${results.length} proxies reachable${medianLatencyMs !== null ? ` (median ${medianLatencyMs}ms)` : ""}`);
416
+ return failed === 0;
417
+ }
418
+ //# sourceMappingURL=proxy.js.map