execbro 1.10.24 → 1.11.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/build/__tests__/helpers/fake-cdp-server.d.ts +9 -0
- package/build/__tests__/helpers/fake-cdp-server.d.ts.map +1 -1
- package/build/__tests__/helpers/fake-cdp-server.js +20 -2
- package/build/__tests__/helpers/fake-cdp-server.js.map +1 -1
- package/build/__tests__/integration/connection-health.test.js +8 -1
- package/build/__tests__/integration/connection-health.test.js.map +1 -1
- package/build/__tests__/integration/native-logs.test.d.ts +2 -0
- package/build/__tests__/integration/native-logs.test.d.ts.map +1 -0
- package/build/__tests__/integration/native-logs.test.js +39 -0
- package/build/__tests__/integration/native-logs.test.js.map +1 -0
- package/build/__tests__/integration/socket-close-midflight.test.d.ts +2 -0
- package/build/__tests__/integration/socket-close-midflight.test.d.ts.map +1 -0
- package/build/__tests__/integration/socket-close-midflight.test.js +106 -0
- package/build/__tests__/integration/socket-close-midflight.test.js.map +1 -0
- package/build/__tests__/integration/stale-target-probe.test.d.ts +2 -0
- package/build/__tests__/integration/stale-target-probe.test.d.ts.map +1 -0
- package/build/__tests__/integration/stale-target-probe.test.js +85 -0
- package/build/__tests__/integration/stale-target-probe.test.js.map +1 -0
- package/build/__tests__/unit/clearLogsNative.test.d.ts +2 -0
- package/build/__tests__/unit/clearLogsNative.test.d.ts.map +1 -0
- package/build/__tests__/unit/clearLogsNative.test.js +43 -0
- package/build/__tests__/unit/clearLogsNative.test.js.map +1 -0
- package/build/__tests__/unit/componentFormatNaming.test.d.ts +2 -0
- package/build/__tests__/unit/componentFormatNaming.test.d.ts.map +1 -0
- package/build/__tests__/unit/componentFormatNaming.test.js +32 -0
- package/build/__tests__/unit/componentFormatNaming.test.js.map +1 -0
- package/build/__tests__/unit/deviceResolution.test.d.ts +2 -0
- package/build/__tests__/unit/deviceResolution.test.d.ts.map +1 -0
- package/build/__tests__/unit/deviceResolution.test.js +108 -0
- package/build/__tests__/unit/deviceResolution.test.js.map +1 -0
- package/build/__tests__/unit/executor.test.js +48 -12
- package/build/__tests__/unit/executor.test.js.map +1 -1
- package/build/__tests__/unit/getLogsEmptyContract.test.d.ts +2 -0
- package/build/__tests__/unit/getLogsEmptyContract.test.d.ts.map +1 -0
- package/build/__tests__/unit/getLogsEmptyContract.test.js +112 -0
- package/build/__tests__/unit/getLogsEmptyContract.test.js.map +1 -0
- package/build/__tests__/unit/getLogsNativeSource.test.d.ts +2 -0
- package/build/__tests__/unit/getLogsNativeSource.test.d.ts.map +1 -0
- package/build/__tests__/unit/getLogsNativeSource.test.js +138 -0
- package/build/__tests__/unit/getLogsNativeSource.test.js.map +1 -0
- package/build/__tests__/unit/jsLogEvents.test.d.ts +2 -0
- package/build/__tests__/unit/jsLogEvents.test.d.ts.map +1 -0
- package/build/__tests__/unit/jsLogEvents.test.js +58 -0
- package/build/__tests__/unit/jsLogEvents.test.js.map +1 -0
- package/build/__tests__/unit/logDiagnosis.test.d.ts +2 -0
- package/build/__tests__/unit/logDiagnosis.test.d.ts.map +1 -0
- package/build/__tests__/unit/logDiagnosis.test.js +81 -0
- package/build/__tests__/unit/logDiagnosis.test.js.map +1 -0
- package/build/__tests__/unit/logEventFormat.test.d.ts +2 -0
- package/build/__tests__/unit/logEventFormat.test.d.ts.map +1 -0
- package/build/__tests__/unit/logEventFormat.test.js +210 -0
- package/build/__tests__/unit/logEventFormat.test.js.map +1 -0
- package/build/__tests__/unit/logEvents.test.d.ts +2 -0
- package/build/__tests__/unit/logEvents.test.d.ts.map +1 -0
- package/build/__tests__/unit/logEvents.test.js +118 -0
- package/build/__tests__/unit/logEvents.test.js.map +1 -0
- package/build/__tests__/unit/logGrouping.test.d.ts +2 -0
- package/build/__tests__/unit/logGrouping.test.d.ts.map +1 -0
- package/build/__tests__/unit/logGrouping.test.js +104 -0
- package/build/__tests__/unit/logGrouping.test.js.map +1 -0
- package/build/__tests__/unit/logOwnership.test.d.ts +2 -0
- package/build/__tests__/unit/logOwnership.test.d.ts.map +1 -0
- package/build/__tests__/unit/logOwnership.test.js +118 -0
- package/build/__tests__/unit/logOwnership.test.js.map +1 -0
- package/build/__tests__/unit/logRelevance.test.d.ts +2 -0
- package/build/__tests__/unit/logRelevance.test.d.ts.map +1 -0
- package/build/__tests__/unit/logRelevance.test.js +30 -0
- package/build/__tests__/unit/logRelevance.test.js.map +1 -0
- package/build/__tests__/unit/logSourceAndroid.test.d.ts +2 -0
- package/build/__tests__/unit/logSourceAndroid.test.d.ts.map +1 -0
- package/build/__tests__/unit/logSourceAndroid.test.js +61 -0
- package/build/__tests__/unit/logSourceAndroid.test.js.map +1 -0
- package/build/__tests__/unit/logSourceIos.test.d.ts +2 -0
- package/build/__tests__/unit/logSourceIos.test.d.ts.map +1 -0
- package/build/__tests__/unit/logSourceIos.test.js +64 -0
- package/build/__tests__/unit/logSourceIos.test.js.map +1 -0
- package/build/__tests__/unit/logs.test.js +23 -0
- package/build/__tests__/unit/logs.test.js.map +1 -1
- package/build/__tests__/unit/nativeLogs.test.d.ts +2 -0
- package/build/__tests__/unit/nativeLogs.test.d.ts.map +1 -0
- package/build/__tests__/unit/nativeLogs.test.js +230 -0
- package/build/__tests__/unit/nativeLogs.test.js.map +1 -0
- package/build/__tests__/unit/pendingExecutions.test.d.ts +2 -0
- package/build/__tests__/unit/pendingExecutions.test.d.ts.map +1 -0
- package/build/__tests__/unit/pendingExecutions.test.js +70 -0
- package/build/__tests__/unit/pendingExecutions.test.js.map +1 -0
- package/build/__tests__/unit/reloadAppAutoConnect.test.d.ts +2 -0
- package/build/__tests__/unit/reloadAppAutoConnect.test.d.ts.map +1 -0
- package/build/__tests__/unit/reloadAppAutoConnect.test.js +63 -0
- package/build/__tests__/unit/reloadAppAutoConnect.test.js.map +1 -0
- package/build/__tests__/unit/toolsJson.test.js +11 -0
- package/build/__tests__/unit/toolsJson.test.js.map +1 -1
- package/build/__tests__/unit/transportClassify.test.js +108 -7
- package/build/__tests__/unit/transportClassify.test.js.map +1 -1
- package/build/core/componentSearch.d.ts +1 -1
- package/build/core/componentSearch.d.ts.map +1 -1
- package/build/core/componentSearch.js +8 -8
- package/build/core/componentSearch.js.map +1 -1
- package/build/core/componentTree.d.ts +1 -1
- package/build/core/componentTree.d.ts.map +1 -1
- package/build/core/componentTree.js +8 -8
- package/build/core/componentTree.js.map +1 -1
- package/build/core/connection.d.ts +30 -0
- package/build/core/connection.d.ts.map +1 -1
- package/build/core/connection.js +97 -28
- package/build/core/connection.js.map +1 -1
- package/build/core/debugGlobals.d.ts.map +1 -1
- package/build/core/debugGlobals.js +89 -32
- package/build/core/debugGlobals.js.map +1 -1
- package/build/core/errors.d.ts +7 -1
- package/build/core/errors.d.ts.map +1 -1
- package/build/core/errors.js +8 -1
- package/build/core/errors.js.map +1 -1
- package/build/core/guides.d.ts.map +1 -1
- package/build/core/guides.js +25 -0
- package/build/core/guides.js.map +1 -1
- package/build/core/index.d.ts +0 -2
- package/build/core/index.d.ts.map +1 -1
- package/build/core/index.js +0 -2
- package/build/core/index.js.map +1 -1
- package/build/core/jsExecute.d.ts +76 -1
- package/build/core/jsExecute.d.ts.map +1 -1
- package/build/core/jsExecute.js +193 -32
- package/build/core/jsExecute.js.map +1 -1
- package/build/core/jsLogEvents.d.ts +13 -0
- package/build/core/jsLogEvents.d.ts.map +1 -0
- package/build/core/jsLogEvents.js +65 -0
- package/build/core/jsLogEvents.js.map +1 -0
- package/build/core/logDiagnosis.d.ts +65 -0
- package/build/core/logDiagnosis.d.ts.map +1 -0
- package/build/core/logDiagnosis.js +51 -0
- package/build/core/logDiagnosis.js.map +1 -0
- package/build/core/logEventFormat.d.ts +14 -0
- package/build/core/logEventFormat.d.ts.map +1 -0
- package/build/core/logEventFormat.js +85 -0
- package/build/core/logEventFormat.js.map +1 -0
- package/build/core/logEvents.d.ts +115 -0
- package/build/core/logEvents.d.ts.map +1 -0
- package/build/core/logEvents.js +146 -0
- package/build/core/logEvents.js.map +1 -0
- package/build/core/logGrouping.d.ts +17 -0
- package/build/core/logGrouping.d.ts.map +1 -0
- package/build/core/logGrouping.js +134 -0
- package/build/core/logGrouping.js.map +1 -0
- package/build/core/logOwnership.d.ts +29 -0
- package/build/core/logOwnership.d.ts.map +1 -0
- package/build/core/logOwnership.js +83 -0
- package/build/core/logOwnership.js.map +1 -0
- package/build/core/logRelevance.d.ts +13 -0
- package/build/core/logRelevance.d.ts.map +1 -0
- package/build/core/logRelevance.js +23 -0
- package/build/core/logRelevance.js.map +1 -0
- package/build/core/logSourceAndroid.d.ts +27 -0
- package/build/core/logSourceAndroid.d.ts.map +1 -0
- package/build/core/logSourceAndroid.js +89 -0
- package/build/core/logSourceAndroid.js.map +1 -0
- package/build/core/logSourceIos.d.ts +26 -0
- package/build/core/logSourceIos.d.ts.map +1 -0
- package/build/core/logSourceIos.js +119 -0
- package/build/core/logSourceIos.js.map +1 -0
- package/build/core/logs.d.ts +5 -1
- package/build/core/logs.d.ts.map +1 -1
- package/build/core/logs.js +8 -1
- package/build/core/logs.js.map +1 -1
- package/build/core/nativeLogs.d.ts +75 -0
- package/build/core/nativeLogs.d.ts.map +1 -0
- package/build/core/nativeLogs.js +260 -0
- package/build/core/nativeLogs.js.map +1 -0
- package/build/core/register.d.ts.map +1 -1
- package/build/core/register.js +22 -6
- package/build/core/register.js.map +1 -1
- package/build/core/screenLayout.d.ts +1 -1
- package/build/core/screenLayout.d.ts.map +1 -1
- package/build/core/screenLayout.js +3 -3
- package/build/core/screenLayout.js.map +1 -1
- package/build/core/state.d.ts +10 -0
- package/build/core/state.d.ts.map +1 -1
- package/build/core/state.js +21 -0
- package/build/core/state.js.map +1 -1
- package/build/core/types.d.ts +11 -2
- package/build/core/types.d.ts.map +1 -1
- package/build/tools/componentTools.js +6 -6
- package/build/tools/componentTools.js.map +1 -1
- package/build/tools/connectionTools.d.ts.map +1 -1
- package/build/tools/connectionTools.js +7 -3
- package/build/tools/connectionTools.js.map +1 -1
- package/build/tools/executionTools.js +7 -7
- package/build/tools/executionTools.js.map +1 -1
- package/build/tools/logTools.d.ts +25 -0
- package/build/tools/logTools.d.ts.map +1 -1
- package/build/tools/logTools.js +316 -132
- package/build/tools/logTools.js.map +1 -1
- package/build/tools/networkTools.d.ts.map +1 -1
- package/build/tools/networkTools.js +65 -54
- package/build/tools/networkTools.js.map +1 -1
- package/package.json +5 -4
- package/tools.json +447 -0
- package/build/core/format.d.ts +0 -8
- package/build/core/format.d.ts.map +0 -1
- package/build/core/format.js +0 -34
- package/build/core/format.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nativeLogs.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/nativeLogs.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pendingExecutions.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/unit/pendingExecutions.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { describe, it, expect, beforeEach } from "@jest/globals";
|
|
2
|
+
import { pendingExecutions, failPendingExecutionsForSocket } from "../../core/state.js";
|
|
3
|
+
// A socket death mid-flight used to leave the in-flight CDP call parked until
|
|
4
|
+
// its full timeoutMs elapsed (telemetry: 48 events/30d across 12 tools, burning
|
|
5
|
+
// the entire timeout — min durations sat exactly on 5001/10001/30007ms). Worse,
|
|
6
|
+
// the resulting "Timeout: Expression took too long" message was classified
|
|
7
|
+
// server-timer => logical, so auto-reconnect never fired. Failing the pending
|
|
8
|
+
// call at close time makes it surface as a ws_closed transport error instead.
|
|
9
|
+
describe("failPendingExecutionsForSocket", () => {
|
|
10
|
+
beforeEach(() => {
|
|
11
|
+
pendingExecutions.clear();
|
|
12
|
+
});
|
|
13
|
+
const register = (id, ws) => {
|
|
14
|
+
const results = [];
|
|
15
|
+
let cleared = false;
|
|
16
|
+
const timeoutId = setTimeout(() => { }, 60_000);
|
|
17
|
+
const originalClear = clearTimeout;
|
|
18
|
+
pendingExecutions.set(id, {
|
|
19
|
+
resolve: (r) => { results.push(r); },
|
|
20
|
+
timeoutId,
|
|
21
|
+
ws,
|
|
22
|
+
});
|
|
23
|
+
return {
|
|
24
|
+
results,
|
|
25
|
+
isCleared: () => cleared,
|
|
26
|
+
cleanup: () => originalClear(timeoutId),
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
it("fails pending executions belonging to the closed socket", () => {
|
|
30
|
+
const socket = { id: "a" };
|
|
31
|
+
const entry = register(1, socket);
|
|
32
|
+
const failed = failPendingExecutionsForSocket(socket, "WebSocket connection is not open.");
|
|
33
|
+
expect(failed).toBe(1);
|
|
34
|
+
expect(entry.results).toHaveLength(1);
|
|
35
|
+
expect(entry.results[0].success).toBe(false);
|
|
36
|
+
expect(entry.results[0].error).toBe("WebSocket connection is not open.");
|
|
37
|
+
entry.cleanup();
|
|
38
|
+
});
|
|
39
|
+
it("removes the failed execution from the pending map", () => {
|
|
40
|
+
const socket = { id: "a" };
|
|
41
|
+
const entry = register(1, socket);
|
|
42
|
+
failPendingExecutionsForSocket(socket, "WebSocket connection is not open.");
|
|
43
|
+
expect(pendingExecutions.has(1)).toBe(false);
|
|
44
|
+
entry.cleanup();
|
|
45
|
+
});
|
|
46
|
+
it("leaves executions belonging to other sockets untouched", () => {
|
|
47
|
+
const socketA = { id: "a" };
|
|
48
|
+
const socketB = { id: "b" };
|
|
49
|
+
const a = register(1, socketA);
|
|
50
|
+
const b = register(2, socketB);
|
|
51
|
+
const failed = failPendingExecutionsForSocket(socketA, "WebSocket connection is not open.");
|
|
52
|
+
expect(failed).toBe(1);
|
|
53
|
+
expect(b.results).toHaveLength(0);
|
|
54
|
+
expect(pendingExecutions.has(2)).toBe(true);
|
|
55
|
+
a.cleanup();
|
|
56
|
+
b.cleanup();
|
|
57
|
+
});
|
|
58
|
+
it("ignores entries with no socket association", () => {
|
|
59
|
+
const socket = { id: "a" };
|
|
60
|
+
const timeoutId = setTimeout(() => { }, 60_000);
|
|
61
|
+
const results = [];
|
|
62
|
+
pendingExecutions.set(9, { resolve: (r) => { results.push(r); }, timeoutId });
|
|
63
|
+
const failed = failPendingExecutionsForSocket(socket, "WebSocket connection is not open.");
|
|
64
|
+
expect(failed).toBe(0);
|
|
65
|
+
expect(results).toHaveLength(0);
|
|
66
|
+
expect(pendingExecutions.has(9)).toBe(true);
|
|
67
|
+
clearTimeout(timeoutId);
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
//# sourceMappingURL=pendingExecutions.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pendingExecutions.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/pendingExecutions.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reloadAppAutoConnect.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/unit/reloadAppAutoConnect.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { describe, it, expect, jest, beforeEach, afterEach } from "@jest/globals";
|
|
2
|
+
// reload_app's auto-connect used to be unreachable whenever a `device`
|
|
3
|
+
// argument was supplied: the first resolve threw UserInputError before the
|
|
4
|
+
// fallback ran, so 35% of reload_app failures were "run scan_metro" told to
|
|
5
|
+
// agents the tool could have unblocked itself. These tests pin the recovery.
|
|
6
|
+
const scanMetroPortsMock = jest.fn();
|
|
7
|
+
const fetchDevicesMock = jest.fn();
|
|
8
|
+
const filterDebuggableDevicesMock = jest.fn();
|
|
9
|
+
jest.unstable_mockModule("../../core/metro.js", () => ({
|
|
10
|
+
scanMetroPorts: scanMetroPortsMock,
|
|
11
|
+
fetchDevices: fetchDevicesMock,
|
|
12
|
+
filterDebuggableDevices: filterDebuggableDevicesMock,
|
|
13
|
+
// Other importers in the graph (connection.js, bundle.js) resolve these at
|
|
14
|
+
// import time, so the mock has to cover the module's full surface.
|
|
15
|
+
COMMON_PORTS: [8081],
|
|
16
|
+
isPortOpen: jest.fn(),
|
|
17
|
+
selectMainDevice: jest.fn(),
|
|
18
|
+
filterBridgelessDevices: jest.fn(),
|
|
19
|
+
discoverMetroDevices: jest.fn(),
|
|
20
|
+
checkMetroState: jest.fn()
|
|
21
|
+
}));
|
|
22
|
+
const { connectedApps } = await import("../../core/state.js");
|
|
23
|
+
const { reloadApp } = await import("../../core/debugGlobals.js");
|
|
24
|
+
describe("reloadApp auto-connect", () => {
|
|
25
|
+
beforeEach(() => {
|
|
26
|
+
connectedApps.clear();
|
|
27
|
+
scanMetroPortsMock.mockReset();
|
|
28
|
+
fetchDevicesMock.mockReset();
|
|
29
|
+
filterDebuggableDevicesMock.mockReset();
|
|
30
|
+
fetchDevicesMock.mockResolvedValue([]);
|
|
31
|
+
filterDebuggableDevicesMock.mockReturnValue([]);
|
|
32
|
+
});
|
|
33
|
+
afterEach(() => connectedApps.clear());
|
|
34
|
+
it("attempts auto-connect even when a device argument is supplied", async () => {
|
|
35
|
+
scanMetroPortsMock.mockResolvedValue([8081]);
|
|
36
|
+
const result = await reloadApp("iPhone 17 Pro");
|
|
37
|
+
expect(result.success).toBe(false);
|
|
38
|
+
// The regression: previously this threw before scanMetroPorts was reached.
|
|
39
|
+
expect(scanMetroPortsMock).toHaveBeenCalled();
|
|
40
|
+
expect(fetchDevicesMock).toHaveBeenCalledWith(8081);
|
|
41
|
+
}, 15000);
|
|
42
|
+
it("retries the sweep once before giving up (Metro's target list lags app start)", async () => {
|
|
43
|
+
scanMetroPortsMock.mockResolvedValue([8081]);
|
|
44
|
+
await reloadApp("iPhone 17 Pro");
|
|
45
|
+
expect(fetchDevicesMock).toHaveBeenCalledTimes(2);
|
|
46
|
+
}, 15000);
|
|
47
|
+
it("returns a failure result rather than throwing, tagged for telemetry", async () => {
|
|
48
|
+
scanMetroPortsMock.mockResolvedValue([8081]);
|
|
49
|
+
const result = await reloadApp("iPhone 17 Pro");
|
|
50
|
+
expect(result.success).toBe(false);
|
|
51
|
+
expect(result.errorContext).toBe("connect_failed_with_device");
|
|
52
|
+
// Metro was up but exposed no debuggable target — say so instead of
|
|
53
|
+
// the opaque "could not connect to any device".
|
|
54
|
+
expect(result.error).toContain("no debuggable targets");
|
|
55
|
+
}, 15000);
|
|
56
|
+
it("tags the no-Metro case separately", async () => {
|
|
57
|
+
scanMetroPortsMock.mockResolvedValue([]);
|
|
58
|
+
const result = await reloadApp("iPhone 17 Pro");
|
|
59
|
+
expect(result.errorContext).toBe("no_metro");
|
|
60
|
+
expect(result.error).toContain("Metro bundler is running");
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
//# sourceMappingURL=reloadAppAutoConnect.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reloadAppAutoConnect.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/reloadAppAutoConnect.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,17 @@ describe("tools.json", () => {
|
|
|
17
17
|
it("records a count matching its own list", () => {
|
|
18
18
|
expect(payload.count).toBe(payload.tools.length);
|
|
19
19
|
});
|
|
20
|
+
it("records each tool's parameter names", () => {
|
|
21
|
+
// Consumers assert their prose does not reference a parameter that no
|
|
22
|
+
// longer exists. Tool add/remove was already guarded; PARAMETER changes
|
|
23
|
+
// drifted silently — four website entries advertised a removed `format`
|
|
24
|
+
// parameter for months with every test green.
|
|
25
|
+
const live = {};
|
|
26
|
+
for (const [name, entry] of toolRegistry.entries()) {
|
|
27
|
+
live[name] = Object.keys(entry.config.inputSchema).sort();
|
|
28
|
+
}
|
|
29
|
+
expect(payload.params).toEqual(live);
|
|
30
|
+
});
|
|
20
31
|
it("is not empty", () => {
|
|
21
32
|
expect(payload.tools.length).toBeGreaterThan(0);
|
|
22
33
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toolsJson.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/toolsJson.test.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAC9E,oCAAoC;AAEpC,8EAA8E;AAC9E,sEAAsE;AACtE,OAAO,CAAC,GAAG,CAAC,wBAAwB,GAAG,GAAG,CAAC;AAE3C,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IACxB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"toolsJson.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/toolsJson.test.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,8EAA8E;AAC9E,8EAA8E;AAC9E,oCAAoC;AAEpC,8EAA8E;AAC9E,sEAAsE;AACtE,OAAO,CAAC,GAAG,CAAC,wBAAwB,GAAG,GAAG,CAAC;AAE3C,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IACxB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,CAIjF,CAAC;IAEF,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;QAC1C,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;QAC7C,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC3C,sEAAsE;QACtE,wEAAwE;QACxE,wEAAwE;QACxE,8CAA8C;QAC9C,MAAM,IAAI,GAA6B,EAAE,CAAC;QAC1C,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC;YACjD,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAE,KAAK,CAAC,MAAkC,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC;QAC3F,CAAC;QACD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,cAAc,EAAE,GAAG,EAAE;QACpB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -1,5 +1,93 @@
|
|
|
1
1
|
import { describe, expect, it } from "@jest/globals";
|
|
2
|
-
import {
|
|
2
|
+
import { jest } from "@jest/globals";
|
|
3
|
+
import { classifyTransportError, isEvalTimeoutOnLiveSocket, classifyWithLivenessProbe, isTargetStillAdvertised } from "../../core/jsExecute.js";
|
|
4
|
+
// A "took too long" on a socket that is still OPEN is ambiguous: either the
|
|
5
|
+
// expression really was slow, or the CDP target went stale while the
|
|
6
|
+
// device-level socket kept answering pings. Only these cases are worth paying
|
|
7
|
+
// for a probe to disambiguate.
|
|
8
|
+
describe("isEvalTimeoutOnLiveSocket", () => {
|
|
9
|
+
const timeoutMsg = (ws) => `Timeout: Expression took too long to evaluate.\n\nConnection state: ws=${ws}, device="iPhone"`;
|
|
10
|
+
it("is true for a server-timer timeout on an open socket", () => {
|
|
11
|
+
expect(isEvalTimeoutOnLiveSocket(timeoutMsg("OPEN"), "server-timer")).toBe(true);
|
|
12
|
+
});
|
|
13
|
+
it("is false when the socket was closed (already a transport error)", () => {
|
|
14
|
+
expect(isEvalTimeoutOnLiveSocket(timeoutMsg("CLOSED"), "server-timer")).toBe(false);
|
|
15
|
+
});
|
|
16
|
+
it("is false for errors that did not come from the server timer", () => {
|
|
17
|
+
expect(isEvalTimeoutOnLiveSocket(timeoutMsg("OPEN"), "cdp")).toBe(false);
|
|
18
|
+
});
|
|
19
|
+
it("is false for unrelated failures", () => {
|
|
20
|
+
expect(isEvalTimeoutOnLiveSocket("ReferenceError: x is not defined", "logical")).toBe(false);
|
|
21
|
+
});
|
|
22
|
+
});
|
|
23
|
+
// The probe-backed upgrade lives behind an injectable seam so this can be
|
|
24
|
+
// exercised without a real socket. Driving it through executeInApp instead
|
|
25
|
+
// would reach attemptQuickReconnect -> scanMetroPorts(), which scans real
|
|
26
|
+
// localhost ports and would latch onto whatever Metro the developer has running.
|
|
27
|
+
describe("classifyWithLivenessProbe", () => {
|
|
28
|
+
const timeoutMsg = (ws) => `Timeout: Expression took too long to evaluate.\n\nConnection state: ws=${ws}, device="iPhone"`;
|
|
29
|
+
const fakeApp = { ws: {}, port: 8081, deviceInfo: { id: "page-1" } };
|
|
30
|
+
const listed = async () => true;
|
|
31
|
+
const gone = async () => false;
|
|
32
|
+
it("keeps a ws=OPEN timeout logical when the probe answers", async () => {
|
|
33
|
+
const probe = jest.fn(async () => true);
|
|
34
|
+
const result = await classifyWithLivenessProbe(timeoutMsg("OPEN"), "server-timer", fakeApp, probe, gone);
|
|
35
|
+
expect(result).toEqual({ kind: "logical" });
|
|
36
|
+
expect(probe).toHaveBeenCalledTimes(1);
|
|
37
|
+
});
|
|
38
|
+
// The case that bit us on-device: a 15s busy loop silences the probe just
|
|
39
|
+
// like a dead context would. Metro still lists the page, so this must stay
|
|
40
|
+
// logical — upgrading it triggers a retry that re-runs the expression.
|
|
41
|
+
it("keeps a blocked JS thread logical while Metro still lists the target", async () => {
|
|
42
|
+
const probe = jest.fn(async () => false);
|
|
43
|
+
const result = await classifyWithLivenessProbe(timeoutMsg("OPEN"), "server-timer", fakeApp, probe, listed);
|
|
44
|
+
expect(result).toEqual({ kind: "logical" });
|
|
45
|
+
});
|
|
46
|
+
it("upgrades to stale_target only when the probe is silent AND the target is gone", async () => {
|
|
47
|
+
const probe = jest.fn(async () => false);
|
|
48
|
+
const result = await classifyWithLivenessProbe(timeoutMsg("OPEN"), "server-timer", fakeApp, probe, gone);
|
|
49
|
+
expect(result).toEqual({ kind: "transport", pattern: "stale_target" });
|
|
50
|
+
});
|
|
51
|
+
it("does not spend a probe when the socket was already closed", async () => {
|
|
52
|
+
const probe = jest.fn(async () => false);
|
|
53
|
+
const result = await classifyWithLivenessProbe(timeoutMsg("CLOSED"), "server-timer", fakeApp, probe, gone);
|
|
54
|
+
expect(result).toMatchObject({ kind: "transport", pattern: "ws_closed" });
|
|
55
|
+
expect(probe).not.toHaveBeenCalled();
|
|
56
|
+
});
|
|
57
|
+
it("does not spend a probe on unrelated logical errors", async () => {
|
|
58
|
+
const probe = jest.fn(async () => false);
|
|
59
|
+
const result = await classifyWithLivenessProbe("ReferenceError: x", "logical", fakeApp, probe, gone);
|
|
60
|
+
expect(result).toEqual({ kind: "logical" });
|
|
61
|
+
expect(probe).not.toHaveBeenCalled();
|
|
62
|
+
});
|
|
63
|
+
it("stays logical when there is no app to probe", async () => {
|
|
64
|
+
const probe = jest.fn(async () => false);
|
|
65
|
+
const result = await classifyWithLivenessProbe(timeoutMsg("OPEN"), "server-timer", null, probe, gone);
|
|
66
|
+
expect(result).toEqual({ kind: "logical" });
|
|
67
|
+
expect(probe).not.toHaveBeenCalled();
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
describe("isTargetStillAdvertised", () => {
|
|
71
|
+
const app = { port: 8081, deviceInfo: { id: "page-1" } };
|
|
72
|
+
it("is true when Metro still lists our page id", async () => {
|
|
73
|
+
const fetchTargets = async () => [{ id: "page-1" }, { id: "page-2" }];
|
|
74
|
+
expect(await isTargetStillAdvertised(app, fetchTargets)).toBe(true);
|
|
75
|
+
});
|
|
76
|
+
it("is false when Metro lists other pages but not ours", async () => {
|
|
77
|
+
const fetchTargets = async () => [{ id: "page-9" }];
|
|
78
|
+
expect(await isTargetStillAdvertised(app, fetchTargets)).toBe(false);
|
|
79
|
+
});
|
|
80
|
+
// fetchDevices returns [] on any network error. Treating that as "gone"
|
|
81
|
+
// would let a Metro blip trigger a reconnect that re-runs the expression.
|
|
82
|
+
it("is true when the target list comes back empty", async () => {
|
|
83
|
+
const fetchTargets = async () => [];
|
|
84
|
+
expect(await isTargetStillAdvertised(app, fetchTargets)).toBe(true);
|
|
85
|
+
});
|
|
86
|
+
it("is true when we have no page id to compare", async () => {
|
|
87
|
+
const fetchTargets = async () => [{ id: "page-9" }];
|
|
88
|
+
expect(await isTargetStillAdvertised({ port: 8081, deviceInfo: {} }, fetchTargets)).toBe(true);
|
|
89
|
+
});
|
|
90
|
+
});
|
|
3
91
|
describe("classifyTransportError — positive cases", () => {
|
|
4
92
|
it("matches 'No apps connected'", () => {
|
|
5
93
|
expect(classifyTransportError("No apps connected. Run 'scan_metro' first.", "logical")).toMatchObject({
|
|
@@ -31,18 +119,31 @@ describe("classifyTransportError — positive cases", () => {
|
|
|
31
119
|
pattern: "target_closed",
|
|
32
120
|
});
|
|
33
121
|
});
|
|
34
|
-
it("matches CDP-side 'Expression took too long to evaluate'", () => {
|
|
35
|
-
expect(classifyTransportError("Expression took too long to evaluate", "cdp")).toMatchObject({
|
|
36
|
-
kind: "transport",
|
|
37
|
-
pattern: "cdp_eval_too_long",
|
|
38
|
-
});
|
|
39
|
-
});
|
|
40
122
|
});
|
|
41
123
|
describe("classifyTransportError — negative cases (must NOT auto-retry)", () => {
|
|
42
124
|
it("does NOT match server-side timer text", () => {
|
|
43
125
|
const serverTimerMsg = "Timeout: Expression took too long to evaluate.\n\nConnection state: ws=OPEN...";
|
|
44
126
|
expect(classifyTransportError(serverTimerMsg, "server-timer")).toEqual({ kind: "logical" });
|
|
45
127
|
});
|
|
128
|
+
// Backstop for the race where our timer fires before the socket's close
|
|
129
|
+
// handler has failed the in-flight call. A timer expiry is only "logical"
|
|
130
|
+
// if the transport was actually alive when it fired.
|
|
131
|
+
it("DOES match server-timer text when the socket was already closed", () => {
|
|
132
|
+
const closedMsg = "Timeout: Expression took too long to evaluate.\n\nConnection state: ws=CLOSED, device=\"iPhone\"";
|
|
133
|
+
expect(classifyTransportError(closedMsg, "server-timer")).toMatchObject({
|
|
134
|
+
kind: "transport",
|
|
135
|
+
pattern: "ws_closed",
|
|
136
|
+
});
|
|
137
|
+
});
|
|
138
|
+
// "took too long" on a live socket is a slow expression, not a dead
|
|
139
|
+
// transport — the 1s ping/pong keepalive terminates genuinely dead sockets
|
|
140
|
+
// within ~2s, so anything still OPEN after a multi-second timeout had a
|
|
141
|
+
// working transport the whole time. Retrying it just burns the timeout again.
|
|
142
|
+
it("does NOT match an eval-too-long message while the socket is alive", () => {
|
|
143
|
+
expect(classifyTransportError("Expression took too long to evaluate", "cdp")).toEqual({
|
|
144
|
+
kind: "logical",
|
|
145
|
+
});
|
|
146
|
+
});
|
|
46
147
|
it("does NOT match 'no component matched'", () => {
|
|
47
148
|
expect(classifyTransportError("No component matched pattern Foo", "logical")).toEqual({ kind: "logical" });
|
|
48
149
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transportClassify.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/transportClassify.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"transportClassify.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/transportClassify.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,7 +34,7 @@ export declare function findComponents(pattern: string, options?: {
|
|
|
34
34
|
includeLayout?: boolean;
|
|
35
35
|
shortPath?: boolean;
|
|
36
36
|
summary?: boolean;
|
|
37
|
-
format?: "json" | "
|
|
37
|
+
format?: "json" | "compact";
|
|
38
38
|
device?: string;
|
|
39
39
|
timeoutMs?: number;
|
|
40
40
|
visibleOnly?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"componentSearch.d.ts","sourceRoot":"","sources":["../../src/core/componentSearch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAgClD;;;GAGG;AAEH;;;;;;;;GAQG;AAIH;;GAEG;AACH,wBAAsB,gBAAgB,CAClC,aAAa,EAAE,MAAM,EACrB,OAAO,GAAE;IACL,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACjB,GACP,OAAO,CAAC,eAAe,CAAC,CA2Z1B;AAED;;GAEG;AACH,wBAAsB,cAAc,CAChC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;IACL,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"componentSearch.d.ts","sourceRoot":"","sources":["../../src/core/componentSearch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAgClD;;;GAGG;AAEH;;;;;;;;GAQG;AAIH;;GAEG;AACH,wBAAsB,gBAAgB,CAClC,aAAa,EAAE,MAAM,EACrB,OAAO,GAAE;IACL,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACjB,GACP,OAAO,CAAC,eAAe,CAAC,CA2Z1B;AAED;;GAEG;AACH,wBAAsB,cAAc,CAChC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;IACL,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;CACpB,GACP,OAAO,CAAC,eAAe,CAAC,CA6J1B"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { executeInApp, delay } from "./jsExecute.js";
|
|
2
|
-
import {
|
|
2
|
+
import { formatSummaryCompact } from "./screenLayout.js";
|
|
3
3
|
import { VISIBILITY_HELPERS_JS } from "./injected/visibility.js";
|
|
4
|
-
function
|
|
4
|
+
function formatFoundComponentsCompact(components) {
|
|
5
5
|
const lines = ["#found{component,path,depth,key,layout}"];
|
|
6
6
|
for (const c of components) {
|
|
7
7
|
const layout = c.layout
|
|
@@ -434,7 +434,7 @@ export async function inspectComponent(componentName, options = {}) {
|
|
|
434
434
|
* Find all components matching a name pattern and return summary info.
|
|
435
435
|
*/
|
|
436
436
|
export async function findComponents(pattern, options = {}) {
|
|
437
|
-
const { maxResults = 20, includeLayout = false, shortPath = true, summary = false, format = "
|
|
437
|
+
const { maxResults = 20, includeLayout = false, shortPath = true, summary = false, format = "compact", device, timeoutMs, visibleOnly = false } = options;
|
|
438
438
|
const escapedPattern = pattern.replace(/'/g, "\\'").replace(/\\/g, "\\\\");
|
|
439
439
|
const expression = `
|
|
440
440
|
(function() {
|
|
@@ -569,17 +569,17 @@ export async function findComponents(pattern, options = {}) {
|
|
|
569
569
|
})()
|
|
570
570
|
`;
|
|
571
571
|
const result = await executeInApp(expression, false, { timeoutMs: timeoutMs ?? 5000, originatingToolName: "find_components" }, device);
|
|
572
|
-
if (format === "
|
|
572
|
+
if (format === "compact" && result.success && result.result) {
|
|
573
573
|
try {
|
|
574
574
|
const parsed = JSON.parse(result.result);
|
|
575
575
|
if (parsed.components) {
|
|
576
576
|
if (parsed.totalMatches !== undefined) {
|
|
577
|
-
const
|
|
578
|
-
return { success: true, result: `pattern: ${parsed.pattern}\n${
|
|
577
|
+
const compact = formatSummaryCompact(parsed.components, parsed.totalMatches);
|
|
578
|
+
return { success: true, result: `pattern: ${parsed.pattern}\n${compact}` };
|
|
579
579
|
}
|
|
580
580
|
else {
|
|
581
|
-
const
|
|
582
|
-
return { success: true, result: `pattern: ${parsed.pattern}\nfound: ${parsed.found}\n${
|
|
581
|
+
const compact = formatFoundComponentsCompact(parsed.components);
|
|
582
|
+
return { success: true, result: `pattern: ${parsed.pattern}\nfound: ${parsed.found}\n${compact}` };
|
|
583
583
|
}
|
|
584
584
|
}
|
|
585
585
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"componentSearch.js","sourceRoot":"","sources":["../../src/core/componentSearch.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"componentSearch.js","sourceRoot":"","sources":["../../src/core/componentSearch.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"componentTree.d.ts","sourceRoot":"","sources":["../../src/core/componentTree.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AA6DlD,wBAAsB,gBAAgB,CAClC,OAAO,GAAE;IACL,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"componentTree.d.ts","sourceRoot":"","sources":["../../src/core/componentTree.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AA6DlD,wBAAsB,gBAAgB,CAClC,OAAO,GAAE;IACL,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACjB,GACP,OAAO,CAAC,eAAe,CAAC,CA8P1B"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { executeInApp } from "./jsExecute.js";
|
|
2
2
|
import { VISIBILITY_HELPERS_JS } from "./injected/visibility.js";
|
|
3
|
-
function
|
|
3
|
+
function formatTreeCompact(node, indent = 0) {
|
|
4
4
|
const prefix = " ".repeat(indent);
|
|
5
5
|
let result = `${prefix}${node.component}`;
|
|
6
6
|
// Add props inline if present
|
|
@@ -21,7 +21,7 @@ function formatTreeToTonl(node, indent = 0) {
|
|
|
21
21
|
// Recurse children
|
|
22
22
|
if (node.children && node.children.length > 0) {
|
|
23
23
|
for (const child of node.children) {
|
|
24
|
-
result +=
|
|
24
|
+
result += formatTreeCompact(child, indent + 1);
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
27
|
return result;
|
|
@@ -38,9 +38,9 @@ function formatTreeStructureOnly(node, indent = 0) {
|
|
|
38
38
|
return result;
|
|
39
39
|
}
|
|
40
40
|
export async function getComponentTree(options = {}) {
|
|
41
|
-
const { includeProps = false, includeStyles = false, hideInternals = true, format = "
|
|
41
|
+
const { includeProps = false, includeStyles = false, hideInternals = true, format = "compact", structureOnly = false, focusedOnly = false, device, timeoutMs } = options;
|
|
42
42
|
// Use lower default depth for structureOnly to keep output compact (~2-5KB)
|
|
43
|
-
// Full mode uses higher depth since
|
|
43
|
+
// Full mode uses higher depth since compact format handles it better
|
|
44
44
|
// focusedOnly mode uses moderate depth since we're already filtering to active screen
|
|
45
45
|
const maxDepth = options.maxDepth ?? 5000;
|
|
46
46
|
const expression = `
|
|
@@ -266,10 +266,10 @@ export async function getComponentTree(options = {}) {
|
|
|
266
266
|
const structure = formatTreeStructureOnly(parsed.tree);
|
|
267
267
|
return { success: true, result: prefix + structure };
|
|
268
268
|
}
|
|
269
|
-
//
|
|
270
|
-
if (format === "
|
|
271
|
-
const
|
|
272
|
-
return { success: true, result: prefix +
|
|
269
|
+
// Compact format: indented tree with props/layout
|
|
270
|
+
if (format === "compact") {
|
|
271
|
+
const compact = formatTreeCompact(parsed.tree);
|
|
272
|
+
return { success: true, result: prefix + compact };
|
|
273
273
|
}
|
|
274
274
|
}
|
|
275
275
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"componentTree.js","sourceRoot":"","sources":["../../src/core/componentTree.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAajE,SAAS,
|
|
1
|
+
{"version":3,"file":"componentTree.js","sourceRoot":"","sources":["../../src/core/componentTree.ts"],"names":[],"mappings":"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"}
|
|
@@ -55,6 +55,36 @@ export declare function getConnectedAppBySimulatorUdid(udid: string): ConnectedA
|
|
|
55
55
|
* multiple Android apps are connected.
|
|
56
56
|
*/
|
|
57
57
|
export declare function getConnectedAppByAndroidDeviceId(deviceId?: string): ConnectedApp | null;
|
|
58
|
+
/**
|
|
59
|
+
* Outcome of matching a caller-supplied `device` string against the currently
|
|
60
|
+
* connected apps. Split out of getConnectedAppByDevice so callers that can
|
|
61
|
+
* *recover* from a miss (reload_app auto-connects, then re-resolves) can
|
|
62
|
+
* inspect the failure instead of catching a thrown UserInputError — a throw
|
|
63
|
+
* on the first resolve is what made reload_app skip its own auto-connect path
|
|
64
|
+
* whenever a device argument was supplied.
|
|
65
|
+
*/
|
|
66
|
+
export type DeviceResolution = {
|
|
67
|
+
kind: "ok";
|
|
68
|
+
app: ConnectedApp;
|
|
69
|
+
} | {
|
|
70
|
+
kind: "ambiguous";
|
|
71
|
+
device: string;
|
|
72
|
+
matches: ConnectedApp[];
|
|
73
|
+
} | {
|
|
74
|
+
kind: "none";
|
|
75
|
+
device?: string;
|
|
76
|
+
connected: ConnectedApp[];
|
|
77
|
+
};
|
|
78
|
+
/**
|
|
79
|
+
* Human-facing explanation for a `kind: "none"` / `kind: "ambiguous"` resolution.
|
|
80
|
+
* Kept next to the matcher so the message always reflects the matching rules.
|
|
81
|
+
*/
|
|
82
|
+
export declare function describeDeviceResolution(resolution: DeviceResolution): string;
|
|
83
|
+
/**
|
|
84
|
+
* Non-throwing device matcher. Prefer this in call sites that can retry
|
|
85
|
+
* (auto-connect, rescan); use getConnectedAppByDevice when a miss is terminal.
|
|
86
|
+
*/
|
|
87
|
+
export declare function resolveConnectedAppByDevice(device?: string): DeviceResolution;
|
|
58
88
|
export declare function getConnectedAppByDevice(device?: string): ConnectedApp | null;
|
|
59
89
|
export declare function hasConnectedApp(): boolean;
|
|
60
90
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../src/core/connection.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,IAAI,CAAC;AAC3B,OAAO,EAAE,UAAU,EAAE,YAAY,EAAoB,YAAY,EAAkB,cAAc,EAAsB,sBAAsB,EAAmB,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAmH1M;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAI3C;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAE/D;AAED;;GAEG;AACH,wBAAgB,4BAA4B,IAAI,IAAI,CAEnD;AAYD;;;;;;;GAOG;AACH,wBAAgB,iCAAiC,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,SAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CA6DnG;AAaD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAQ3D;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CACzC,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,GAC9C,MAAM,EAAE,CAoCV;AAGD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CA4B/D;AA2RD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC,EAAE,SAAS,GAAG,IAAI,CAoW3G;AAGD,wBAAsB,eAAe,CACjC,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,cAAmB,GAC7B,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../src/core/connection.ts"],"names":[],"mappings":"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"}
|