react-native-mcp-kit 2.2.2 → 2.3.1

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 (86) hide show
  1. package/README.md +62 -23
  2. package/dist/bin/ios-hid +0 -0
  3. package/dist/client/core/McpClient.d.ts +2 -0
  4. package/dist/client/core/McpClient.d.ts.map +1 -1
  5. package/dist/client/core/McpClient.js +33 -0
  6. package/dist/client/core/McpClient.js.map +1 -1
  7. package/dist/modules/console/console.d.ts.map +1 -1
  8. package/dist/modules/console/console.js +78 -49
  9. package/dist/modules/console/console.js.map +1 -1
  10. package/dist/modules/errors/errors.d.ts.map +1 -1
  11. package/dist/modules/errors/errors.js +58 -39
  12. package/dist/modules/errors/errors.js.map +1 -1
  13. package/dist/modules/fiberTree/fiberTree.d.ts.map +1 -1
  14. package/dist/modules/fiberTree/fiberTree.js +144 -61
  15. package/dist/modules/fiberTree/fiberTree.js.map +1 -1
  16. package/dist/modules/logBox/logBox.d.ts.map +1 -1
  17. package/dist/modules/logBox/logBox.js +8 -9
  18. package/dist/modules/logBox/logBox.js.map +1 -1
  19. package/dist/modules/navigation/navigation.d.ts.map +1 -1
  20. package/dist/modules/navigation/navigation.js +12 -9
  21. package/dist/modules/navigation/navigation.js.map +1 -1
  22. package/dist/modules/network/network.d.ts.map +1 -1
  23. package/dist/modules/network/network.js +76 -36
  24. package/dist/modules/network/network.js.map +1 -1
  25. package/dist/server/bridge.d.ts +2 -1
  26. package/dist/server/bridge.d.ts.map +1 -1
  27. package/dist/server/bridge.js +1 -0
  28. package/dist/server/bridge.js.map +1 -1
  29. package/dist/server/cli.js +2 -1
  30. package/dist/server/cli.js.map +1 -1
  31. package/dist/server/host/hostModule.d.ts.map +1 -1
  32. package/dist/server/host/hostModule.js +0 -2
  33. package/dist/server/host/hostModule.js.map +1 -1
  34. package/dist/server/host/tools/symbolicate.d.ts.map +1 -1
  35. package/dist/server/host/tools/symbolicate.js +13 -3
  36. package/dist/server/host/tools/symbolicate.js.map +1 -1
  37. package/dist/server/mcpServer.d.ts.map +1 -1
  38. package/dist/server/mcpServer.js +11 -10
  39. package/dist/server/mcpServer.js.map +1 -1
  40. package/dist/server/metro/eventCapture.d.ts +41 -0
  41. package/dist/server/metro/eventCapture.d.ts.map +1 -0
  42. package/dist/server/metro/eventCapture.js +138 -0
  43. package/dist/server/metro/eventCapture.js.map +1 -0
  44. package/dist/server/metro/index.d.ts +2 -0
  45. package/dist/server/metro/index.d.ts.map +1 -0
  46. package/dist/server/metro/index.js +6 -0
  47. package/dist/server/metro/index.js.map +1 -0
  48. package/dist/server/metro/metroModule.d.ts +3 -0
  49. package/dist/server/metro/metroModule.d.ts.map +1 -0
  50. package/dist/server/metro/metroModule.js +25 -0
  51. package/dist/server/metro/metroModule.js.map +1 -0
  52. package/dist/server/metro/resolveMetroUrl.d.ts +12 -0
  53. package/dist/server/metro/resolveMetroUrl.d.ts.map +1 -0
  54. package/dist/server/metro/resolveMetroUrl.js +23 -0
  55. package/dist/server/metro/resolveMetroUrl.js.map +1 -0
  56. package/dist/server/metro/tools/events.d.ts +3 -0
  57. package/dist/server/metro/tools/events.d.ts.map +1 -0
  58. package/dist/server/metro/tools/events.js +51 -0
  59. package/dist/server/metro/tools/events.js.map +1 -0
  60. package/dist/server/metro/tools/openInEditor.d.ts +3 -0
  61. package/dist/server/metro/tools/openInEditor.d.ts.map +1 -0
  62. package/dist/server/metro/tools/openInEditor.js +89 -0
  63. package/dist/server/metro/tools/openInEditor.js.map +1 -0
  64. package/dist/server/metro/tools/openUrl.d.ts +3 -0
  65. package/dist/server/metro/tools/openUrl.d.ts.map +1 -0
  66. package/dist/server/metro/tools/openUrl.js +71 -0
  67. package/dist/server/metro/tools/openUrl.js.map +1 -0
  68. package/dist/server/metro/tools/reload.d.ts +3 -0
  69. package/dist/server/metro/tools/reload.d.ts.map +1 -0
  70. package/dist/server/metro/tools/reload.js +53 -0
  71. package/dist/server/metro/tools/reload.js.map +1 -0
  72. package/dist/server/metro/tools/status.d.ts +3 -0
  73. package/dist/server/metro/tools/status.d.ts.map +1 -0
  74. package/dist/server/metro/tools/status.js +52 -0
  75. package/dist/server/metro/tools/status.js.map +1 -0
  76. package/dist/server/metro/tools/symbolicate.d.ts +3 -0
  77. package/dist/server/metro/tools/symbolicate.d.ts.map +1 -0
  78. package/dist/server/metro/tools/symbolicate.js +203 -0
  79. package/dist/server/metro/tools/symbolicate.js.map +1 -0
  80. package/dist/shared/protocol.d.ts +14 -0
  81. package/dist/shared/protocol.d.ts.map +1 -1
  82. package/dist/shared/slice.d.ts +16 -0
  83. package/dist/shared/slice.d.ts.map +1 -0
  84. package/dist/shared/slice.js +29 -0
  85. package/dist/shared/slice.js.map +1 -0
  86. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"symbolicate.js","sourceRoot":"","sources":["../../../../src/server/host/tools/symbolicate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"symbolicate.js","sourceRoot":"","sources":["../../../../src/server/host/tools/symbolicate.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcpServer.d.ts","sourceRoot":"","sources":["../../src/server/mcpServer.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,MAAM,EAAoB,MAAM,UAAU,CAAC;AACzD,OAAO,EAAE,KAAK,UAAU,EAAwB,MAAM,cAAc,CAAC;AAgSrE,qBAAa,gBAAgB;IAMzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IALzB,OAAO,CAAC,WAAW,CAAe;IAClC,OAAO,CAAC,WAAW,CAAoC;IACvD,OAAO,CAAC,GAAG,CAAY;gBAGJ,MAAM,EAAE,MAAM,EAC/B,WAAW,GAAE,UAAU,EAAO;IAuB1B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5B,OAAO,CAAC,aAAa;IA8oBrB;;;;OAIG;YACW,YAAY;IAkG1B,OAAO,CAAC,eAAe;IAyCvB,OAAO,CAAC,YAAY;CAiBrB"}
1
+ {"version":3,"file":"mcpServer.d.ts","sourceRoot":"","sources":["../../src/server/mcpServer.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,MAAM,EAAoB,MAAM,UAAU,CAAC;AACzD,OAAO,EAAE,KAAK,UAAU,EAAwB,MAAM,cAAc,CAAC;AAiSrE,qBAAa,gBAAgB;IAMzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IALzB,OAAO,CAAC,WAAW,CAAe;IAClC,OAAO,CAAC,WAAW,CAAoC;IACvD,OAAO,CAAC,GAAG,CAAY;gBAGJ,MAAM,EAAE,MAAM,EAC/B,WAAW,GAAE,UAAU,EAAO;IAuB1B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5B,OAAO,CAAC,aAAa;IA8oBrB;;;;OAIG;YACW,YAAY;IAkG1B,OAAO,CAAC,eAAe;IAyCvB,OAAO,CAAC,YAAY;CAiBrB"}
@@ -30,12 +30,13 @@ Multiple React Native apps can connect simultaneously — each is identified by
30
30
  2. Use \`list_tools\` to browse all available tool names and short descriptions. The response is compact — modules that are structurally identical across multiple clients are deduplicated into a single entry with a \`clientIds\` array, and input schemas are omitted. Narrow the listing with \`{ module }\` or \`{ clientId }\`, or pass \`{ compact: true }\` to drop module-level descriptions.
31
31
  3. Use \`describe_tool\` with \`{ tool, clientId? }\` to fetch the full input schema of a specific tool before calling it. Required when you need to know the argument shape. Host tools are resolved directly (no clientId needed). For in-app tools, omit \`clientId\` to auto-pick; specify it only when multiple clients have the same tool with different schemas.
32
32
  4. Use \`call\` to invoke any tool with format: module${protocol_1.MODULE_SEPARATOR}method (e.g. navigation${protocol_1.MODULE_SEPARATOR}navigate). When more than one client is connected, specify \`clientId\`. When exactly one client is connected, \`clientId\` is optional — it's auto-picked. \`args\` accepts either a plain object or a JSON string — prefer objects to avoid quote escaping.
33
- 5. Use \`wait_until\` to poll any tool until a predicate over its result holds (or timeout). Replaces "screenshot in a loop + sleep" for things like "wait for screen X", "wait for the spinner to disappear", "wait for network to idle". Predicate supports compound forms: { all: [...] } (AND), { any: [...] } (OR), { not: predicate }.
34
- 6. Use \`assert\` for a single-shot checkpoint after actions same predicate vocabulary as wait_until, returns { pass, actual, expected?, result? }. Natural pair: do action wait_until assert.
35
- 7. Use \`host${protocol_1.MODULE_SEPARATOR}tap_fiber\` to collapse "fiber_tree__query host__tap at bounds" into one call. Pass fiber_tree steps; if exactly one fiber matches, its center is tapped. Ambiguous match returns the candidate list so you can add \`index\` or narrow the chain.
36
- 8. Use \`state_list\` / \`state_get\` to read app state exposed via useMcpState. State is scoped per client; specify \`clientId\` when multiple clients are connected.
33
+ 5. Use \`wait_until\` to poll any tool until a predicate over its result holds (or timeout). Replaces "screenshot in a loop + sleep" for state-level waits ("wait for network to idle", "wait for state key X to become Y"). Predicate supports compound forms: { all: [...] } (AND), { any: [...] } (OR), { not: predicate }.
34
+ 6. For UI-level waits ("wait for a screen to appear", "wait for a spinner to disappear") use \`fiber_tree${protocol_1.MODULE_SEPARATOR}query\` with \`waitFor: { until: "appear" | "disappear", timeout?, interval?, stable? }\` — it polls the same query with cache bypassed until the target state holds. \`stable: <ms>\` requires continuous presence/absence for that many ms to ignore transient matches during screen transitions.
35
+ 7. Use \`assert\` for a single-shot checkpoint after actions same predicate vocabulary as wait_until, returns { pass, actual, expected?, result? }. Natural pair: do action wait_until / fiber_tree waitFor assert.
36
+ 8. Use \`host${protocol_1.MODULE_SEPARATOR}tap_fiber\` to collapse "fiber_tree__query host__tap at bounds" into one call. Pass fiber_tree steps; if exactly one fiber matches, its center is tapped. Ambiguous match returns the candidate list so you can add \`index\` or narrow the chain.
37
+ 9. Use \`state_list\` / \`state_get\` to read app state exposed via useMcpState. State is scoped per client; specify \`clientId\` when multiple clients are connected.
37
38
 
38
- Some tools run inline on the MCP server host (e.g. \`host${protocol_1.MODULE_SEPARATOR}screenshot\`, \`host${protocol_1.MODULE_SEPARATOR}list_devices\`, \`host${protocol_1.MODULE_SEPARATOR}launch_app\`, \`host${protocol_1.MODULE_SEPARATOR}terminate_app\`, \`host${protocol_1.MODULE_SEPARATOR}restart_app\`, \`host${protocol_1.MODULE_SEPARATOR}symbolicate\`) and work even when no React Native client is connected. They use xcrun simctl / adb on the dev machine. When \`clientId\` is provided, host tools use that client's platform/label/deviceId as hints to resolve the target device; otherwise they prefer the device of the single connected client, falling back to the single booted sim / online device. \`launch_app\`, \`terminate_app\`, and \`restart_app\` accept an \`appId\` arg (iOS bundle ID / Android package name); omit it to reuse the target client's registered \`bundleId\` from its connection metadata.
39
+ Some tools run inline on the MCP server host (e.g. \`host${protocol_1.MODULE_SEPARATOR}screenshot\`, \`host${protocol_1.MODULE_SEPARATOR}list_devices\`, \`host${protocol_1.MODULE_SEPARATOR}launch_app\`, \`host${protocol_1.MODULE_SEPARATOR}terminate_app\`, \`host${protocol_1.MODULE_SEPARATOR}restart_app\`, \`metro${protocol_1.MODULE_SEPARATOR}reload\`, \`metro${protocol_1.MODULE_SEPARATOR}symbolicate\`) and work even when no React Native client is connected. They use xcrun simctl / adb on the dev machine. When \`clientId\` is provided, host tools use that client's platform/label/deviceId as hints to resolve the target device; otherwise they prefer the device of the single connected client, falling back to the single booted sim / online device. \`launch_app\`, \`terminate_app\`, and \`restart_app\` accept an \`appId\` arg (iOS bundle ID / Android package name); omit it to reuse the target client's registered \`bundleId\` from its connection metadata.
39
40
 
40
41
  ## Driving the UI — pick the right tool
41
42
  1. **\`host${protocol_1.MODULE_SEPARATOR}tap_fiber\` with \`steps: [...]\`** — the canonical way to simulate a user tap. One call locates the fiber via fiber_tree__query and taps its center through the real OS gesture pipeline, so Pressable feedback, gesture responders, and hit-test logic all run. Ambiguous matches return a candidate list so you can add \`index\` or narrow \`steps\`. This is what you want whenever the user asks to simulate a tap / press / button click.
@@ -45,7 +46,7 @@ Some tools run inline on the MCP server host (e.g. \`host${protocol_1.MODULE_SEP
45
46
 
46
47
  Gesture tools: \`host${protocol_1.MODULE_SEPARATOR}tap\` / \`host${protocol_1.MODULE_SEPARATOR}long_press\` / \`host${protocol_1.MODULE_SEPARATOR}swipe\` / \`host${protocol_1.MODULE_SEPARATOR}drag\` / \`host${protocol_1.MODULE_SEPARATOR}type_text\` / \`host${protocol_1.MODULE_SEPARATOR}type_text_batch\` / \`host${protocol_1.MODULE_SEPARATOR}press_key\` work on both platforms with no external daemons: Android via \`adb shell input\`, iOS via a bundled \`ios-hid\` binary that injects HID events directly into iOS Simulator through SimulatorKit.
47
48
 
48
- Stack traces: \`errors${protocol_1.MODULE_SEPARATOR}get_errors\` and \`log_box${protocol_1.MODULE_SEPARATOR}get_logs\` return parsed \`stackFrames\` you can pass straight into \`host${protocol_1.MODULE_SEPARATOR}symbolicate\` to resolve bundled frames back to source paths via Metro.
49
+ Stack traces: \`errors${protocol_1.MODULE_SEPARATOR}get_errors\` and \`log_box${protocol_1.MODULE_SEPARATOR}get_logs\` return parsed \`stackFrames\` you can pass straight into \`metro${protocol_1.MODULE_SEPARATOR}symbolicate\` to resolve bundled frames back to source paths via Metro.
49
50
  `;
50
51
  const jsonError = (msg) => {
51
52
  return {
@@ -331,8 +332,7 @@ RETURNS
331
332
  .optional()
332
333
  .describe('Delay between poll attempts. Default 300, min 50, max 5000.'),
333
334
  predicate: zod_1.z
334
- .object({})
335
- .passthrough()
335
+ .looseObject({})
336
336
  .describe('Leaf { op, path?, value? } or compound { all|any: [...] } / { not: predicate }. See tool description for ops and composition.'),
337
337
  timeoutMs: zod_1.z
338
338
  .number()
@@ -425,8 +425,7 @@ Useful after wait_until as a checkpoint — the pair reads "do action → wait
425
425
  .optional()
426
426
  .describe('Optional human-readable description of the check; echoed in the failure payload.'),
427
427
  predicate: zod_1.z
428
- .object({})
429
- .passthrough()
428
+ .looseObject({})
430
429
  .describe('Leaf { op, path?, value? } or compound { all|any: [...] } / { not: predicate }. See wait_until for full semantics.'),
431
430
  tool: zod_1.z
432
431
  .string()
@@ -549,6 +548,7 @@ Useful after wait_until as a checkpoint — the pair reads "do action → wait
549
548
  appName: client.appName,
550
549
  appVersion: client.appVersion,
551
550
  bundleId: client.bundleId,
551
+ devServer: client.devServer,
552
552
  deviceId: client.deviceId,
553
553
  id: client.id,
554
554
  label: client.label,
@@ -584,6 +584,7 @@ Useful after wait_until as a checkpoint — the pair reads "do action → wait
584
584
  appVersion: c.appVersion,
585
585
  bundleId: c.bundleId,
586
586
  connectedAt: new Date(c.connectedAt).toISOString(),
587
+ devServer: c.devServer,
587
588
  deviceId: c.deviceId,
588
589
  id: c.id,
589
590
  label: c.label,
@@ -1 +1 @@
1
- {"version":3,"file":"mcpServer.js","sourceRoot":"","sources":["../../src/server/mcpServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcpServer.js","sourceRoot":"","sources":["../../src/server/mcpServer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ import { type SliceInput } from '../../shared/slice';
2
+ export interface CapturedMetroEvent {
3
+ data: Record<string, unknown>;
4
+ id: number;
5
+ receivedAt: number;
6
+ type: string;
7
+ }
8
+ /**
9
+ * Maintains a single WebSocket to Metro's `/events` endpoint and buffers the
10
+ * last N events with server-side timestamps. Tools query the buffer with
11
+ * filters; we never stream back to the agent directly. Connection is lazy
12
+ * (first call to `ensureConnected`), auto-reconnecting with fixed backoff.
13
+ */
14
+ declare class MetroEventCapture {
15
+ private readonly metroUrl;
16
+ private readonly bufferLimit;
17
+ private ws;
18
+ private buffer;
19
+ private nextId;
20
+ private reconnectTimer;
21
+ private disposed;
22
+ private lastError;
23
+ constructor(metroUrl: string, bufferLimit: number);
24
+ ensureConnected(): void;
25
+ private scheduleReconnect;
26
+ getEvents(filter: {
27
+ since?: number;
28
+ slice?: SliceInput;
29
+ type?: string | string[];
30
+ }): {
31
+ connected: boolean;
32
+ events: CapturedMetroEvent[];
33
+ lastError: string | null;
34
+ total: number;
35
+ };
36
+ clear(): void;
37
+ dispose(): void;
38
+ }
39
+ export declare const getEventCapture: (metroUrl: string, bufferLimit?: number) => MetroEventCapture;
40
+ export {};
41
+ //# sourceMappingURL=eventCapture.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eventCapture.d.ts","sourceRoot":"","sources":["../../../src/server/metro/eventCapture.ts"],"names":[],"mappings":"AAEA,OAAO,EAAc,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAK7D,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;GAKG;AACH,cAAM,iBAAiB;IASnB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAT9B,OAAO,CAAC,EAAE,CAA0B;IACpC,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,cAAc,CAA8C;IACpE,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAAuB;gBAGrB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM;IAGtC,eAAe,IAAI,IAAI;IAiDvB,OAAO,CAAC,iBAAiB;IAQzB,SAAS,CAAC,MAAM,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,UAAU,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,GAAG;QACnF,SAAS,EAAE,OAAO,CAAC;QACnB,MAAM,EAAE,kBAAkB,EAAE,CAAC;QAC7B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,KAAK,EAAE,MAAM,CAAC;KACf;IA2BD,KAAK,IAAI,IAAI;IAIb,OAAO,IAAI,IAAI;CAYhB;AAID,eAAO,MAAM,eAAe,aAChB,MAAM,gBACH,MAAM,KAClB,iBAQF,CAAC"}
@@ -0,0 +1,138 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getEventCapture = void 0;
7
+ const ws_1 = __importDefault(require("ws"));
8
+ const slice_1 = require("../../shared/slice");
9
+ const DEFAULT_BUFFER_LIMIT = 200;
10
+ const RECONNECT_MS = 3_000;
11
+ /**
12
+ * Maintains a single WebSocket to Metro's `/events` endpoint and buffers the
13
+ * last N events with server-side timestamps. Tools query the buffer with
14
+ * filters; we never stream back to the agent directly. Connection is lazy
15
+ * (first call to `ensureConnected`), auto-reconnecting with fixed backoff.
16
+ */
17
+ class MetroEventCapture {
18
+ metroUrl;
19
+ bufferLimit;
20
+ ws = null;
21
+ buffer = [];
22
+ nextId = 1;
23
+ reconnectTimer = null;
24
+ disposed = false;
25
+ lastError = null;
26
+ constructor(metroUrl, bufferLimit) {
27
+ this.metroUrl = metroUrl;
28
+ this.bufferLimit = bufferLimit;
29
+ }
30
+ ensureConnected() {
31
+ if (this.disposed)
32
+ return;
33
+ if (this.ws &&
34
+ (this.ws.readyState === ws_1.default.OPEN || this.ws.readyState === ws_1.default.CONNECTING)) {
35
+ return;
36
+ }
37
+ const wsUrl = this.metroUrl.replace(/^http/, 'ws') + '/events';
38
+ try {
39
+ const socket = new ws_1.default(wsUrl);
40
+ this.ws = socket;
41
+ this.lastError = null;
42
+ socket.on('message', (raw) => {
43
+ try {
44
+ const parsed = JSON.parse(String(raw));
45
+ if (typeof parsed.type !== 'string')
46
+ return;
47
+ const { type, ...data } = parsed;
48
+ const entry = {
49
+ data,
50
+ id: this.nextId++,
51
+ receivedAt: Date.now(),
52
+ type,
53
+ };
54
+ this.buffer.push(entry);
55
+ if (this.buffer.length > this.bufferLimit) {
56
+ this.buffer.splice(0, this.buffer.length - this.bufferLimit);
57
+ }
58
+ }
59
+ catch {
60
+ // malformed message — skip
61
+ }
62
+ });
63
+ socket.on('error', (err) => {
64
+ this.lastError = err.message;
65
+ });
66
+ socket.on('close', () => {
67
+ this.ws = null;
68
+ this.scheduleReconnect();
69
+ });
70
+ }
71
+ catch (err) {
72
+ this.lastError = err.message;
73
+ this.scheduleReconnect();
74
+ }
75
+ }
76
+ scheduleReconnect() {
77
+ if (this.disposed || this.reconnectTimer)
78
+ return;
79
+ this.reconnectTimer = setTimeout(() => {
80
+ this.reconnectTimer = null;
81
+ this.ensureConnected();
82
+ }, RECONNECT_MS);
83
+ }
84
+ getEvents(filter) {
85
+ this.ensureConnected();
86
+ const typeFilter = filter.type;
87
+ const matchType = Array.isArray(typeFilter)
88
+ ? (t) => {
89
+ return typeFilter.includes(t);
90
+ }
91
+ : typeof typeFilter === 'string'
92
+ ? (t) => {
93
+ return t === typeFilter;
94
+ }
95
+ : null;
96
+ const since = typeof filter.since === 'number' ? filter.since : null;
97
+ const filtered = this.buffer.filter((e) => {
98
+ if (matchType && !matchType(e.type))
99
+ return false;
100
+ if (since !== null && e.receivedAt < since)
101
+ return false;
102
+ return true;
103
+ });
104
+ return {
105
+ connected: this.ws?.readyState === ws_1.default.OPEN,
106
+ events: (0, slice_1.applySlice)(filtered, filter.slice),
107
+ lastError: this.lastError,
108
+ total: filtered.length,
109
+ };
110
+ }
111
+ clear() {
112
+ this.buffer = [];
113
+ }
114
+ dispose() {
115
+ this.disposed = true;
116
+ if (this.reconnectTimer) {
117
+ clearTimeout(this.reconnectTimer);
118
+ this.reconnectTimer = null;
119
+ }
120
+ if (this.ws) {
121
+ this.ws.removeAllListeners();
122
+ this.ws.close();
123
+ this.ws = null;
124
+ }
125
+ }
126
+ }
127
+ const captures = new Map();
128
+ const getEventCapture = (metroUrl, bufferLimit = DEFAULT_BUFFER_LIMIT) => {
129
+ let capture = captures.get(metroUrl);
130
+ if (!capture) {
131
+ capture = new MetroEventCapture(metroUrl, bufferLimit);
132
+ captures.set(metroUrl, capture);
133
+ }
134
+ capture.ensureConnected();
135
+ return capture;
136
+ };
137
+ exports.getEventCapture = getEventCapture;
138
+ //# sourceMappingURL=eventCapture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eventCapture.js","sourceRoot":"","sources":["../../../src/server/metro/eventCapture.ts"],"names":[],"mappings":";;;;;;AAAA,4CAA2B;AAE3B,0CAA6D;AAE7D,MAAM,oBAAoB,GAAG,GAAG,CAAC;AACjC,MAAM,YAAY,GAAG,KAAK,CAAC;AAS3B;;;;;GAKG;AACH,MAAM,iBAAiB;IASF;IACA;IATX,EAAE,GAAqB,IAAI,CAAC;IAC5B,MAAM,GAAyB,EAAE,CAAC;IAClC,MAAM,GAAG,CAAC,CAAC;IACX,cAAc,GAAyC,IAAI,CAAC;IAC5D,QAAQ,GAAG,KAAK,CAAC;IACjB,SAAS,GAAkB,IAAI,CAAC;IAExC,YACmB,QAAgB,EAChB,WAAmB;QADnB,aAAQ,GAAR,QAAQ,CAAQ;QAChB,gBAAW,GAAX,WAAW,CAAQ;IACnC,CAAC;IAEJ,eAAe;QACb,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAO;QAC1B,IACE,IAAI,CAAC,EAAE;YACP,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,KAAK,YAAS,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC,UAAU,KAAK,YAAS,CAAC,UAAU,CAAC,EACtF,CAAC;YACD,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,SAAS,CAAC;QAC/D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,YAAS,CAAC,KAAK,CAAC,CAAC;YACpC,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC;YACjB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YAEtB,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;gBAC3B,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAiD,CAAC;oBACvF,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ;wBAAE,OAAO;oBAC5C,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;oBACjC,MAAM,KAAK,GAAuB;wBAChC,IAAI;wBACJ,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE;wBACjB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;wBACtB,IAAI;qBACL,CAAC;oBACF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACxB,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;wBAC1C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;oBAC/D,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,2BAA2B;gBAC7B,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBACzB,IAAI,CAAC,SAAS,GAAI,GAAa,CAAC,OAAO,CAAC;YAC1C,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;gBACtB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;gBACf,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,SAAS,GAAI,GAAa,CAAC,OAAO,CAAC;YACxC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAEO,iBAAiB;QACvB,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,cAAc;YAAE,OAAO;QACjD,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,GAAG,EAAE;YACpC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,CAAC,EAAE,YAAY,CAAC,CAAC;IACnB,CAAC;IAED,SAAS,CAAC,MAAwE;QAMhF,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;QAC/B,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;YACzC,CAAC,CAAC,CAAC,CAAS,EAAW,EAAE;gBACrB,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAChC,CAAC;YACH,CAAC,CAAC,OAAO,UAAU,KAAK,QAAQ;gBAC9B,CAAC,CAAC,CAAC,CAAS,EAAW,EAAE;oBACrB,OAAO,CAAC,KAAK,UAAU,CAAC;gBAC1B,CAAC;gBACH,CAAC,CAAC,IAAI,CAAC;QAEX,MAAM,KAAK,GAAG,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YACxC,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;gBAAE,OAAO,KAAK,CAAC;YAClD,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,CAAC,UAAU,GAAG,KAAK;gBAAE,OAAO,KAAK,CAAC;YACzD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;QACH,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE,UAAU,KAAK,YAAS,CAAC,IAAI;YACjD,MAAM,EAAE,IAAA,kBAAU,EAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC;YAC1C,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,KAAK,EAAE,QAAQ,CAAC,MAAM;SACvB,CAAC;IACJ,CAAC;IAED,KAAK;QACH,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;IACnB,CAAC;IAED,OAAO;QACL,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAClC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;QACD,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACZ,IAAI,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC;YAC7B,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;QACjB,CAAC;IACH,CAAC;CACF;AAED,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA6B,CAAC;AAE/C,MAAM,eAAe,GAAG,CAC7B,QAAgB,EAChB,cAAsB,oBAAoB,EACvB,EAAE;IACrB,IAAI,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACrC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,GAAG,IAAI,iBAAiB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACvD,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,CAAC,eAAe,EAAE,CAAC;IAC1B,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAXW,QAAA,eAAe,mBAW1B"}
@@ -0,0 +1,2 @@
1
+ export { metroModule } from './metroModule';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/metro/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.metroModule = void 0;
4
+ var metroModule_1 = require("./metroModule");
5
+ Object.defineProperty(exports, "metroModule", { enumerable: true, get: function () { return metroModule_1.metroModule; } });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/server/metro/index.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAAnC,0GAAA,WAAW,OAAA"}
@@ -0,0 +1,3 @@
1
+ import { type HostModule } from '../../server/host/types';
2
+ export declare const metroModule: () => HostModule;
3
+ //# sourceMappingURL=metroModule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metroModule.d.ts","sourceRoot":"","sources":["../../../src/server/metro/metroModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAQtD,eAAO,MAAM,WAAW,QAAO,UAc9B,CAAC"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.metroModule = void 0;
4
+ const events_1 = require("./tools/events");
5
+ const openInEditor_1 = require("./tools/openInEditor");
6
+ const reload_1 = require("./tools/reload");
7
+ const status_1 = require("./tools/status");
8
+ const symbolicate_1 = require("./tools/symbolicate");
9
+ const metroModule = () => {
10
+ return {
11
+ description: `Metro dev-server control plane. Tools here talk HTTP / WS to the Metro instance the React Native app was bundled from — the URL is auto-detected from each client's handshake (scriptURL), so non-default ports and LAN-connected physical devices work without extra config. Falls back to http://localhost:8081 when the app didn't report a dev-server (production builds, detection failure).
12
+
13
+ All tools no-op gracefully with { skipped: true, error } when Metro is unreachable.`,
14
+ name: 'metro',
15
+ tools: {
16
+ get_events: (0, events_1.getEventsTool)(),
17
+ open_in_editor: (0, openInEditor_1.openInEditorTool)(),
18
+ reload: (0, reload_1.reloadTool)(),
19
+ status: (0, status_1.statusTool)(),
20
+ symbolicate: (0, symbolicate_1.symbolicateTool)(),
21
+ },
22
+ };
23
+ };
24
+ exports.metroModule = metroModule;
25
+ //# sourceMappingURL=metroModule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metroModule.js","sourceRoot":"","sources":["../../../src/server/metro/metroModule.ts"],"names":[],"mappings":";;;AAEA,2CAA+C;AAC/C,uDAAwD;AACxD,2CAA4C;AAC5C,2CAA4C;AAC5C,qDAAsD;AAE/C,MAAM,WAAW,GAAG,GAAe,EAAE;IAC1C,OAAO;QACL,WAAW,EAAE;;oFAEmE;QAChF,IAAI,EAAE,OAAO;QACb,KAAK,EAAE;YACL,UAAU,EAAE,IAAA,sBAAa,GAAE;YAC3B,cAAc,EAAE,IAAA,+BAAgB,GAAE;YAClC,MAAM,EAAE,IAAA,mBAAU,GAAE;YACpB,MAAM,EAAE,IAAA,mBAAU,GAAE;YACpB,WAAW,EAAE,IAAA,6BAAe,GAAE;SAC/B;KACF,CAAC;AACJ,CAAC,CAAC;AAdW,QAAA,WAAW,eActB"}
@@ -0,0 +1,12 @@
1
+ import { type HostContext } from '../../server/host/types';
2
+ export declare const DEFAULT_METRO_URL = "http://localhost:8081";
3
+ /**
4
+ * Resolve the Metro dev-server URL for a Metro tool call. Priority:
5
+ * 1. `args.metroUrl` (explicit override — escape hatch).
6
+ * 2. `client.devServer.url` (origin the app was actually loaded from,
7
+ * detected via RN's getDevServer()).
8
+ * 3. Hardcoded `http://localhost:8081` (last resort).
9
+ * Trailing slash is stripped so callers can safely do `${url}/reload`.
10
+ */
11
+ export declare const resolveMetroUrl: (args: Record<string, unknown>, ctx: Pick<HostContext, "bridge" | "requestedClientId">) => string;
12
+ //# sourceMappingURL=resolveMetroUrl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveMetroUrl.d.ts","sourceRoot":"","sources":["../../../src/server/metro/resolveMetroUrl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,eAAO,MAAM,iBAAiB,0BAA0B,CAAC;AAEzD;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,SACpB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,OACxB,IAAI,CAAC,WAAW,EAAE,QAAQ,GAAG,mBAAmB,CAAC,KACrD,MAQF,CAAC"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveMetroUrl = exports.DEFAULT_METRO_URL = void 0;
4
+ exports.DEFAULT_METRO_URL = 'http://localhost:8081';
5
+ /**
6
+ * Resolve the Metro dev-server URL for a Metro tool call. Priority:
7
+ * 1. `args.metroUrl` (explicit override — escape hatch).
8
+ * 2. `client.devServer.url` (origin the app was actually loaded from,
9
+ * detected via RN's getDevServer()).
10
+ * 3. Hardcoded `http://localhost:8081` (last resort).
11
+ * Trailing slash is stripped so callers can safely do `${url}/reload`.
12
+ */
13
+ const resolveMetroUrl = (args, ctx) => {
14
+ const explicit = typeof args.metroUrl === 'string' ? args.metroUrl : undefined;
15
+ if (explicit)
16
+ return explicit.replace(/\/$/, '');
17
+ const clientId = args.clientId ?? ctx.requestedClientId;
18
+ const resolution = ctx.bridge.resolveClient(clientId);
19
+ const clientUrl = resolution.ok ? resolution.client.devServer?.url : undefined;
20
+ return (clientUrl ?? exports.DEFAULT_METRO_URL).replace(/\/$/, '');
21
+ };
22
+ exports.resolveMetroUrl = resolveMetroUrl;
23
+ //# sourceMappingURL=resolveMetroUrl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolveMetroUrl.js","sourceRoot":"","sources":["../../../src/server/metro/resolveMetroUrl.ts"],"names":[],"mappings":";;;AAEa,QAAA,iBAAiB,GAAG,uBAAuB,CAAC;AAEzD;;;;;;;GAOG;AACI,MAAM,eAAe,GAAG,CAC7B,IAA6B,EAC7B,GAAsD,EAC9C,EAAE;IACV,MAAM,QAAQ,GAAG,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/E,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAEjD,MAAM,QAAQ,GAAI,IAAI,CAAC,QAA+B,IAAI,GAAG,CAAC,iBAAiB,CAAC;IAChF,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACtD,MAAM,SAAS,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/E,OAAO,CAAC,SAAS,IAAI,yBAAiB,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AAC7D,CAAC,CAAC;AAXW,QAAA,eAAe,mBAW1B"}
@@ -0,0 +1,3 @@
1
+ import { type HostToolHandler } from '../../../server/host/types';
2
+ export declare const getEventsTool: () => HostToolHandler;
3
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../src/server/metro/tools/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAK3D,eAAO,MAAM,aAAa,QAAO,eA8ChC,CAAC"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getEventsTool = void 0;
4
+ const eventCapture_1 = require("../../../server/metro/eventCapture");
5
+ const resolveMetroUrl_1 = require("../../../server/metro/resolveMetroUrl");
6
+ const slice_1 = require("../../../shared/slice");
7
+ const getEventsTool = () => {
8
+ return {
9
+ description: `Read recent Metro reporter events from a server-side ring buffer fed by Metro's WebSocket \`/events\` stream.
10
+
11
+ Metro emits events for the whole bundler lifecycle — \`bundle_build_started\` / \`bundle_build_done\` / \`bundle_build_failed\`, \`bundling_error\`, \`hmr_update\`, \`hmr_client_error\`, \`initial_update_done\`, \`transform_cache_reset\`, \`dep_graph_loading\` / \`dep_graph_loaded\`, \`client_log\`, \`worker_stdout_chunk\` / \`worker_stderr_chunk\`. When an agent edits a file and HMR silently fails (syntax error, broken import), the red box may not appear — but the \`bundling_error\` / \`hmr_client_error\` event already explains why.
12
+
13
+ The capture is lazy (connects on first call) and auto-reconnects. Buffer holds the last 200 events. Pass \`since: <msEpoch>\` to get only what arrived after a known checkpoint ("events since right before I edited Foo.tsx"). \`type\` filters to one or several event types.
14
+
15
+ Each event has \`{ id, receivedAt, type, data }\`; \`data\` is the raw Metro payload minus the \`type\` field.`,
16
+ handler: async (args, ctx) => {
17
+ const metroUrl = (0, resolveMetroUrl_1.resolveMetroUrl)(args, ctx);
18
+ const capture = (0, eventCapture_1.getEventCapture)(metroUrl);
19
+ const type = args.type;
20
+ const since = typeof args.since === 'number' ? args.since : undefined;
21
+ const slice = (0, slice_1.parseSliceArg)(args.slice) ?? [-50];
22
+ const result = capture.getEvents({ since, slice, type });
23
+ return { metroUrl, ...result };
24
+ },
25
+ inputSchema: {
26
+ clientId: {
27
+ description: 'Target client ID — used to pick up the Metro URL the app was loaded from (falls back to `metroUrl` or the hardcoded default).',
28
+ type: 'string',
29
+ },
30
+ metroUrl: {
31
+ description: `Base URL of the Metro dev server. Overrides the URL reported by the connected client. Default "http://localhost:8081".`,
32
+ type: 'string',
33
+ },
34
+ since: {
35
+ description: 'Only return events with `receivedAt >= since` (ms since epoch).',
36
+ type: 'number',
37
+ },
38
+ slice: {
39
+ description: (0, slice_1.sliceSchemaDescription)('Default [-50] = the newest 50.'),
40
+ examples: [[-10], [-20, -10], [0]],
41
+ type: 'array',
42
+ },
43
+ type: {
44
+ description: 'Filter by event type. Accepts a single string or an array of types (OR semantics).',
45
+ examples: ['bundling_error', ['bundling_error', 'hmr_client_error', 'bundle_build_failed']],
46
+ },
47
+ },
48
+ };
49
+ };
50
+ exports.getEventsTool = getEventsTool;
51
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../../src/server/metro/tools/events.ts"],"names":[],"mappings":";;;AACA,8DAA8D;AAC9D,oEAAiE;AACjE,0CAAuE;AAEhE,MAAM,aAAa,GAAG,GAAoB,EAAE;IACjD,OAAO;QACL,WAAW,EAAE;;;;;;+GAM8F;QAC3G,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;YAC3B,MAAM,QAAQ,GAAG,IAAA,iCAAe,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAC5C,MAAM,OAAO,GAAG,IAAA,8BAAe,EAAC,QAAQ,CAAC,CAAC;YAE1C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAqC,CAAC;YACxD,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YACtE,MAAM,KAAK,GAAG,IAAA,qBAAa,EAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;YAEjD,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACzD,OAAO,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,CAAC;QACjC,CAAC;QACD,WAAW,EAAE;YACX,QAAQ,EAAE;gBACR,WAAW,EACT,+HAA+H;gBACjI,IAAI,EAAE,QAAQ;aACf;YACD,QAAQ,EAAE;gBACR,WAAW,EAAE,wHAAwH;gBACrI,IAAI,EAAE,QAAQ;aACf;YACD,KAAK,EAAE;gBACL,WAAW,EAAE,iEAAiE;gBAC9E,IAAI,EAAE,QAAQ;aACf;YACD,KAAK,EAAE;gBACL,WAAW,EAAE,IAAA,8BAAsB,EAAC,gCAAgC,CAAC;gBACrE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAClC,IAAI,EAAE,OAAO;aACd;YACD,IAAI,EAAE;gBACJ,WAAW,EACT,oFAAoF;gBACtF,QAAQ,EAAE,CAAC,gBAAgB,EAAE,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,qBAAqB,CAAC,CAAC;aAC5F;SACF;KACF,CAAC;AACJ,CAAC,CAAC;AA9CW,QAAA,aAAa,iBA8CxB"}