react-native-ai-debugger 1.0.5 → 1.0.6
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 +92 -0
- package/build/core/index.d.ts +2 -1
- package/build/core/index.d.ts.map +1 -1
- package/build/core/index.js +6 -2
- package/build/core/index.js.map +1 -1
- package/build/core/ios.d.ts +80 -0
- package/build/core/ios.d.ts.map +1 -1
- package/build/core/ios.js +591 -1
- package/build/core/ios.js.map +1 -1
- package/build/core/telemetry.d.ts +4 -0
- package/build/core/telemetry.d.ts.map +1 -0
- package/build/core/telemetry.js +225 -0
- package/build/core/telemetry.js.map +1 -0
- package/build/index.js +245 -4
- package/build/index.js.map +1 -1
- package/package.json +1 -1
package/build/core/ios.js
CHANGED
|
@@ -1,12 +1,79 @@
|
|
|
1
|
-
import { exec } from "child_process";
|
|
1
|
+
import { exec, execFile } from "child_process";
|
|
2
2
|
import { promisify } from "util";
|
|
3
3
|
import { existsSync } from "fs";
|
|
4
4
|
import path from "path";
|
|
5
5
|
import os from "os";
|
|
6
6
|
import sharp from "sharp";
|
|
7
7
|
const execAsync = promisify(exec);
|
|
8
|
+
const execFileAsync = promisify(execFile);
|
|
8
9
|
// simctl command timeout in milliseconds
|
|
9
10
|
const SIMCTL_TIMEOUT = 30000;
|
|
11
|
+
// IDB command timeout in milliseconds
|
|
12
|
+
const IDB_TIMEOUT = 30000;
|
|
13
|
+
// Valid button types for IDB ui button command
|
|
14
|
+
export const IOS_BUTTON_TYPES = ["HOME", "LOCK", "SIDE_BUTTON", "SIRI", "APPLE_PAY"];
|
|
15
|
+
// Track connected IDB simulators to avoid redundant connect calls
|
|
16
|
+
const connectedIdbSimulators = new Set();
|
|
17
|
+
/**
|
|
18
|
+
* Get the IDB executable path
|
|
19
|
+
* Supports IDB_PATH environment variable for custom installations
|
|
20
|
+
*/
|
|
21
|
+
function getIdbPath() {
|
|
22
|
+
return process.env.IDB_PATH || "idb";
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Run IDB command with execFile (no shell) for proper argument handling
|
|
26
|
+
* This matches the original ios-simulator-mcp implementation
|
|
27
|
+
*/
|
|
28
|
+
async function runIdb(...args) {
|
|
29
|
+
const idbPath = getIdbPath();
|
|
30
|
+
const { stdout, stderr } = await execFileAsync(idbPath, args, {
|
|
31
|
+
timeout: IDB_TIMEOUT
|
|
32
|
+
});
|
|
33
|
+
return {
|
|
34
|
+
stdout: stdout.trim(),
|
|
35
|
+
stderr: stderr.trim()
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Check if IDB is available
|
|
40
|
+
*/
|
|
41
|
+
export async function isIdbAvailable() {
|
|
42
|
+
try {
|
|
43
|
+
await runIdb("--help");
|
|
44
|
+
return true;
|
|
45
|
+
}
|
|
46
|
+
catch {
|
|
47
|
+
return false;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Ensure IDB is connected to the specified simulator
|
|
52
|
+
* IDB requires `idb connect <UDID>` before any UI commands work
|
|
53
|
+
*/
|
|
54
|
+
async function ensureIdbConnected(udid) {
|
|
55
|
+
// Skip if already connected in this session
|
|
56
|
+
if (connectedIdbSimulators.has(udid)) {
|
|
57
|
+
return { success: true };
|
|
58
|
+
}
|
|
59
|
+
try {
|
|
60
|
+
await runIdb("connect", udid);
|
|
61
|
+
connectedIdbSimulators.add(udid);
|
|
62
|
+
return { success: true };
|
|
63
|
+
}
|
|
64
|
+
catch (error) {
|
|
65
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
66
|
+
// "Already connected" is not an error
|
|
67
|
+
if (errorMessage.includes("already connected") || errorMessage.includes("Connected")) {
|
|
68
|
+
connectedIdbSimulators.add(udid);
|
|
69
|
+
return { success: true };
|
|
70
|
+
}
|
|
71
|
+
return {
|
|
72
|
+
success: false,
|
|
73
|
+
error: `Failed to connect IDB to simulator: ${errorMessage}`
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
}
|
|
10
77
|
/**
|
|
11
78
|
* Check if simctl is available
|
|
12
79
|
*/
|
|
@@ -390,4 +457,527 @@ export async function iosBootSimulator(udid) {
|
|
|
390
457
|
};
|
|
391
458
|
}
|
|
392
459
|
}
|
|
460
|
+
// ============================================================================
|
|
461
|
+
// IDB-Based UI Interaction Tools
|
|
462
|
+
// These tools require Facebook IDB (iOS Development Bridge) to be installed
|
|
463
|
+
// Install with: brew install idb-companion
|
|
464
|
+
// ============================================================================
|
|
465
|
+
/**
|
|
466
|
+
* Tap at coordinates on an iOS simulator using IDB
|
|
467
|
+
*/
|
|
468
|
+
export async function iosTap(x, y, options) {
|
|
469
|
+
try {
|
|
470
|
+
const idbAvailable = await isIdbAvailable();
|
|
471
|
+
if (!idbAvailable) {
|
|
472
|
+
return {
|
|
473
|
+
success: false,
|
|
474
|
+
error: "IDB is not installed. Install with: brew install idb-companion"
|
|
475
|
+
};
|
|
476
|
+
}
|
|
477
|
+
// Get simulator UDID (use provided or find booted one)
|
|
478
|
+
const targetUdid = options?.udid || (await getBootedSimulatorUdid());
|
|
479
|
+
if (!targetUdid) {
|
|
480
|
+
return {
|
|
481
|
+
success: false,
|
|
482
|
+
error: "No iOS simulator is currently running. Start a simulator first."
|
|
483
|
+
};
|
|
484
|
+
}
|
|
485
|
+
// Ensure IDB is connected to the simulator
|
|
486
|
+
const connectResult = await ensureIdbConnected(targetUdid);
|
|
487
|
+
if (!connectResult.success) {
|
|
488
|
+
return { success: false, error: connectResult.error };
|
|
489
|
+
}
|
|
490
|
+
const xRounded = Math.round(x);
|
|
491
|
+
const yRounded = Math.round(y);
|
|
492
|
+
// Build args array for execFile (no shell)
|
|
493
|
+
const args = ["ui", "tap", "--udid", targetUdid];
|
|
494
|
+
if (options?.duration !== undefined) {
|
|
495
|
+
args.push("--duration", String(options.duration));
|
|
496
|
+
}
|
|
497
|
+
args.push("--json", "--", String(xRounded), String(yRounded));
|
|
498
|
+
const { stderr } = await runIdb(...args);
|
|
499
|
+
if (stderr)
|
|
500
|
+
throw new Error(stderr);
|
|
501
|
+
return {
|
|
502
|
+
success: true,
|
|
503
|
+
result: `Tapped at (${xRounded}, ${yRounded})`
|
|
504
|
+
};
|
|
505
|
+
}
|
|
506
|
+
catch (error) {
|
|
507
|
+
return {
|
|
508
|
+
success: false,
|
|
509
|
+
error: `Failed to tap: ${error instanceof Error ? error.message : String(error)}`
|
|
510
|
+
};
|
|
511
|
+
}
|
|
512
|
+
}
|
|
513
|
+
/**
|
|
514
|
+
* Swipe gesture on an iOS simulator using IDB
|
|
515
|
+
*/
|
|
516
|
+
export async function iosSwipe(startX, startY, endX, endY, options) {
|
|
517
|
+
try {
|
|
518
|
+
const idbAvailable = await isIdbAvailable();
|
|
519
|
+
if (!idbAvailable) {
|
|
520
|
+
return {
|
|
521
|
+
success: false,
|
|
522
|
+
error: "IDB is not installed. Install with: brew install idb-companion"
|
|
523
|
+
};
|
|
524
|
+
}
|
|
525
|
+
const targetUdid = options?.udid || (await getBootedSimulatorUdid());
|
|
526
|
+
if (!targetUdid) {
|
|
527
|
+
return {
|
|
528
|
+
success: false,
|
|
529
|
+
error: "No iOS simulator is currently running. Start a simulator first."
|
|
530
|
+
};
|
|
531
|
+
}
|
|
532
|
+
// Ensure IDB is connected to the simulator
|
|
533
|
+
const connectResult = await ensureIdbConnected(targetUdid);
|
|
534
|
+
if (!connectResult.success) {
|
|
535
|
+
return { success: false, error: connectResult.error };
|
|
536
|
+
}
|
|
537
|
+
const x1 = Math.round(startX);
|
|
538
|
+
const y1 = Math.round(startY);
|
|
539
|
+
const x2 = Math.round(endX);
|
|
540
|
+
const y2 = Math.round(endY);
|
|
541
|
+
// Build args array for execFile (no shell)
|
|
542
|
+
const args = ["ui", "swipe", "--udid", targetUdid];
|
|
543
|
+
if (options?.duration !== undefined) {
|
|
544
|
+
args.push("--duration", String(options.duration));
|
|
545
|
+
}
|
|
546
|
+
if (options?.delta !== undefined) {
|
|
547
|
+
args.push("--delta", String(options.delta));
|
|
548
|
+
}
|
|
549
|
+
args.push("--json", "--", String(x1), String(y1), String(x2), String(y2));
|
|
550
|
+
const { stderr } = await runIdb(...args);
|
|
551
|
+
if (stderr)
|
|
552
|
+
throw new Error(stderr);
|
|
553
|
+
return {
|
|
554
|
+
success: true,
|
|
555
|
+
result: `Swiped from (${x1}, ${y1}) to (${x2}, ${y2})`
|
|
556
|
+
};
|
|
557
|
+
}
|
|
558
|
+
catch (error) {
|
|
559
|
+
return {
|
|
560
|
+
success: false,
|
|
561
|
+
error: `Failed to swipe: ${error instanceof Error ? error.message : String(error)}`
|
|
562
|
+
};
|
|
563
|
+
}
|
|
564
|
+
}
|
|
565
|
+
/**
|
|
566
|
+
* Input text into the active field on an iOS simulator using IDB
|
|
567
|
+
*/
|
|
568
|
+
export async function iosInputText(text, udid) {
|
|
569
|
+
try {
|
|
570
|
+
const idbAvailable = await isIdbAvailable();
|
|
571
|
+
if (!idbAvailable) {
|
|
572
|
+
return {
|
|
573
|
+
success: false,
|
|
574
|
+
error: "IDB is not installed. Install with: brew install idb-companion"
|
|
575
|
+
};
|
|
576
|
+
}
|
|
577
|
+
const targetUdid = udid || (await getBootedSimulatorUdid());
|
|
578
|
+
if (!targetUdid) {
|
|
579
|
+
return {
|
|
580
|
+
success: false,
|
|
581
|
+
error: "No iOS simulator is currently running. Start a simulator first."
|
|
582
|
+
};
|
|
583
|
+
}
|
|
584
|
+
// Ensure IDB is connected to the simulator
|
|
585
|
+
const connectResult = await ensureIdbConnected(targetUdid);
|
|
586
|
+
if (!connectResult.success) {
|
|
587
|
+
return { success: false, error: connectResult.error };
|
|
588
|
+
}
|
|
589
|
+
// Use execFile with args array (no shell escaping needed)
|
|
590
|
+
const { stderr } = await runIdb("ui", "text", "--udid", targetUdid, text);
|
|
591
|
+
if (stderr)
|
|
592
|
+
throw new Error(stderr);
|
|
593
|
+
return {
|
|
594
|
+
success: true,
|
|
595
|
+
result: `Typed text: "${text}"`
|
|
596
|
+
};
|
|
597
|
+
}
|
|
598
|
+
catch (error) {
|
|
599
|
+
return {
|
|
600
|
+
success: false,
|
|
601
|
+
error: `Failed to input text: ${error instanceof Error ? error.message : String(error)}`
|
|
602
|
+
};
|
|
603
|
+
}
|
|
604
|
+
}
|
|
605
|
+
/**
|
|
606
|
+
* Press a hardware button on an iOS simulator using IDB
|
|
607
|
+
*/
|
|
608
|
+
export async function iosButton(button, options) {
|
|
609
|
+
try {
|
|
610
|
+
const idbAvailable = await isIdbAvailable();
|
|
611
|
+
if (!idbAvailable) {
|
|
612
|
+
return {
|
|
613
|
+
success: false,
|
|
614
|
+
error: "IDB is not installed. Install with: brew install idb-companion"
|
|
615
|
+
};
|
|
616
|
+
}
|
|
617
|
+
// Validate button type
|
|
618
|
+
if (!IOS_BUTTON_TYPES.includes(button)) {
|
|
619
|
+
return {
|
|
620
|
+
success: false,
|
|
621
|
+
error: `Invalid button type: ${button}. Valid options: ${IOS_BUTTON_TYPES.join(", ")}`
|
|
622
|
+
};
|
|
623
|
+
}
|
|
624
|
+
const targetUdid = options?.udid || (await getBootedSimulatorUdid());
|
|
625
|
+
if (!targetUdid) {
|
|
626
|
+
return {
|
|
627
|
+
success: false,
|
|
628
|
+
error: "No iOS simulator is currently running. Start a simulator first."
|
|
629
|
+
};
|
|
630
|
+
}
|
|
631
|
+
// Ensure IDB is connected to the simulator
|
|
632
|
+
const connectResult = await ensureIdbConnected(targetUdid);
|
|
633
|
+
if (!connectResult.success) {
|
|
634
|
+
return { success: false, error: connectResult.error };
|
|
635
|
+
}
|
|
636
|
+
// Build args array for execFile (no shell)
|
|
637
|
+
const args = ["ui", "button", "--udid", targetUdid];
|
|
638
|
+
if (options?.duration !== undefined) {
|
|
639
|
+
args.push("--duration", String(options.duration));
|
|
640
|
+
}
|
|
641
|
+
args.push(button);
|
|
642
|
+
const { stderr } = await runIdb(...args);
|
|
643
|
+
if (stderr)
|
|
644
|
+
throw new Error(stderr);
|
|
645
|
+
return {
|
|
646
|
+
success: true,
|
|
647
|
+
result: `Pressed ${button} button`
|
|
648
|
+
};
|
|
649
|
+
}
|
|
650
|
+
catch (error) {
|
|
651
|
+
return {
|
|
652
|
+
success: false,
|
|
653
|
+
error: `Failed to press button: ${error instanceof Error ? error.message : String(error)}`
|
|
654
|
+
};
|
|
655
|
+
}
|
|
656
|
+
}
|
|
657
|
+
/**
|
|
658
|
+
* Send a key event to an iOS simulator using IDB
|
|
659
|
+
*/
|
|
660
|
+
export async function iosKeyEvent(keycode, options) {
|
|
661
|
+
try {
|
|
662
|
+
const idbAvailable = await isIdbAvailable();
|
|
663
|
+
if (!idbAvailable) {
|
|
664
|
+
return {
|
|
665
|
+
success: false,
|
|
666
|
+
error: "IDB is not installed. Install with: brew install idb-companion"
|
|
667
|
+
};
|
|
668
|
+
}
|
|
669
|
+
const targetUdid = options?.udid || (await getBootedSimulatorUdid());
|
|
670
|
+
if (!targetUdid) {
|
|
671
|
+
return {
|
|
672
|
+
success: false,
|
|
673
|
+
error: "No iOS simulator is currently running. Start a simulator first."
|
|
674
|
+
};
|
|
675
|
+
}
|
|
676
|
+
// Ensure IDB is connected to the simulator
|
|
677
|
+
const connectResult = await ensureIdbConnected(targetUdid);
|
|
678
|
+
if (!connectResult.success) {
|
|
679
|
+
return { success: false, error: connectResult.error };
|
|
680
|
+
}
|
|
681
|
+
// Build args array for execFile (no shell)
|
|
682
|
+
const args = ["ui", "key", "--udid", targetUdid];
|
|
683
|
+
if (options?.duration !== undefined) {
|
|
684
|
+
args.push("--duration", String(options.duration));
|
|
685
|
+
}
|
|
686
|
+
args.push(String(keycode));
|
|
687
|
+
const { stderr } = await runIdb(...args);
|
|
688
|
+
if (stderr)
|
|
689
|
+
throw new Error(stderr);
|
|
690
|
+
return {
|
|
691
|
+
success: true,
|
|
692
|
+
result: `Sent key event: ${keycode}`
|
|
693
|
+
};
|
|
694
|
+
}
|
|
695
|
+
catch (error) {
|
|
696
|
+
return {
|
|
697
|
+
success: false,
|
|
698
|
+
error: `Failed to send key event: ${error instanceof Error ? error.message : String(error)}`
|
|
699
|
+
};
|
|
700
|
+
}
|
|
701
|
+
}
|
|
702
|
+
/**
|
|
703
|
+
* Send a sequence of key events to an iOS simulator using IDB
|
|
704
|
+
*/
|
|
705
|
+
export async function iosKeySequence(keycodes, udid) {
|
|
706
|
+
try {
|
|
707
|
+
const idbAvailable = await isIdbAvailable();
|
|
708
|
+
if (!idbAvailable) {
|
|
709
|
+
return {
|
|
710
|
+
success: false,
|
|
711
|
+
error: "IDB is not installed. Install with: brew install idb-companion"
|
|
712
|
+
};
|
|
713
|
+
}
|
|
714
|
+
if (!keycodes || keycodes.length === 0) {
|
|
715
|
+
return {
|
|
716
|
+
success: false,
|
|
717
|
+
error: "At least one keycode is required"
|
|
718
|
+
};
|
|
719
|
+
}
|
|
720
|
+
const targetUdid = udid || (await getBootedSimulatorUdid());
|
|
721
|
+
if (!targetUdid) {
|
|
722
|
+
return {
|
|
723
|
+
success: false,
|
|
724
|
+
error: "No iOS simulator is currently running. Start a simulator first."
|
|
725
|
+
};
|
|
726
|
+
}
|
|
727
|
+
// Ensure IDB is connected to the simulator
|
|
728
|
+
const connectResult = await ensureIdbConnected(targetUdid);
|
|
729
|
+
if (!connectResult.success) {
|
|
730
|
+
return { success: false, error: connectResult.error };
|
|
731
|
+
}
|
|
732
|
+
// Build args array for execFile (no shell)
|
|
733
|
+
const args = ["ui", "key-sequence", "--udid", targetUdid, ...keycodes.map(String)];
|
|
734
|
+
const { stderr } = await runIdb(...args);
|
|
735
|
+
if (stderr)
|
|
736
|
+
throw new Error(stderr);
|
|
737
|
+
return {
|
|
738
|
+
success: true,
|
|
739
|
+
result: `Sent key sequence: ${keycodes.join(", ")}`
|
|
740
|
+
};
|
|
741
|
+
}
|
|
742
|
+
catch (error) {
|
|
743
|
+
return {
|
|
744
|
+
success: false,
|
|
745
|
+
error: `Failed to send key sequence: ${error instanceof Error ? error.message : String(error)}`
|
|
746
|
+
};
|
|
747
|
+
}
|
|
748
|
+
}
|
|
749
|
+
/**
|
|
750
|
+
* Format accessibility tree for human-readable output
|
|
751
|
+
*/
|
|
752
|
+
function formatAccessibilityTree(elements, depth = 0) {
|
|
753
|
+
const lines = [];
|
|
754
|
+
const indent = " ".repeat(depth);
|
|
755
|
+
for (const element of elements) {
|
|
756
|
+
const parts = [];
|
|
757
|
+
if (element.type)
|
|
758
|
+
parts.push(`[${element.type}]`);
|
|
759
|
+
if (element.AXLabel)
|
|
760
|
+
parts.push(`"${element.AXLabel}"`);
|
|
761
|
+
if (element.AXValue)
|
|
762
|
+
parts.push(`value="${element.AXValue}"`);
|
|
763
|
+
if (element.frame) {
|
|
764
|
+
const f = element.frame;
|
|
765
|
+
const centerX = Math.round(f.x + f.width / 2);
|
|
766
|
+
const centerY = Math.round(f.y + f.height / 2);
|
|
767
|
+
parts.push(`frame=(${f.x}, ${f.y}, ${f.width}x${f.height}) tap=(${centerX}, ${centerY})`);
|
|
768
|
+
}
|
|
769
|
+
if (parts.length > 0) {
|
|
770
|
+
lines.push(`${indent}${parts.join(" ")}`);
|
|
771
|
+
}
|
|
772
|
+
if (element.children && element.children.length > 0) {
|
|
773
|
+
lines.push(formatAccessibilityTree(element.children, depth + 1));
|
|
774
|
+
}
|
|
775
|
+
}
|
|
776
|
+
return lines.join("\n");
|
|
777
|
+
}
|
|
778
|
+
/**
|
|
779
|
+
* Get accessibility info for the entire screen using IDB
|
|
780
|
+
*/
|
|
781
|
+
export async function iosDescribeAll(udid) {
|
|
782
|
+
try {
|
|
783
|
+
const idbAvailable = await isIdbAvailable();
|
|
784
|
+
if (!idbAvailable) {
|
|
785
|
+
return {
|
|
786
|
+
success: false,
|
|
787
|
+
error: "IDB is not installed. Install with: brew install idb-companion"
|
|
788
|
+
};
|
|
789
|
+
}
|
|
790
|
+
const targetUdid = udid || (await getBootedSimulatorUdid());
|
|
791
|
+
if (!targetUdid) {
|
|
792
|
+
return {
|
|
793
|
+
success: false,
|
|
794
|
+
error: "No iOS simulator is currently running. Start a simulator first."
|
|
795
|
+
};
|
|
796
|
+
}
|
|
797
|
+
// Ensure IDB is connected to the simulator
|
|
798
|
+
const connectResult = await ensureIdbConnected(targetUdid);
|
|
799
|
+
if (!connectResult.success) {
|
|
800
|
+
return { success: false, error: connectResult.error };
|
|
801
|
+
}
|
|
802
|
+
// Use execFile with args array (no shell)
|
|
803
|
+
const { stdout, stderr } = await runIdb("ui", "describe-all", "--udid", targetUdid, "--json", "--nested");
|
|
804
|
+
if (stderr)
|
|
805
|
+
throw new Error(stderr);
|
|
806
|
+
// Parse JSON response
|
|
807
|
+
const elements = JSON.parse(stdout);
|
|
808
|
+
// Format for human-readable output
|
|
809
|
+
const formatted = formatAccessibilityTree(elements);
|
|
810
|
+
return {
|
|
811
|
+
success: true,
|
|
812
|
+
result: formatted || "No accessibility elements found",
|
|
813
|
+
elements
|
|
814
|
+
};
|
|
815
|
+
}
|
|
816
|
+
catch (error) {
|
|
817
|
+
return {
|
|
818
|
+
success: false,
|
|
819
|
+
error: `Failed to describe screen: ${error instanceof Error ? error.message : String(error)}`
|
|
820
|
+
};
|
|
821
|
+
}
|
|
822
|
+
}
|
|
823
|
+
/**
|
|
824
|
+
* Get accessibility info at a specific point using IDB
|
|
825
|
+
*/
|
|
826
|
+
export async function iosDescribePoint(x, y, udid) {
|
|
827
|
+
try {
|
|
828
|
+
const idbAvailable = await isIdbAvailable();
|
|
829
|
+
if (!idbAvailable) {
|
|
830
|
+
return {
|
|
831
|
+
success: false,
|
|
832
|
+
error: "IDB is not installed. Install with: brew install idb-companion"
|
|
833
|
+
};
|
|
834
|
+
}
|
|
835
|
+
const targetUdid = udid || (await getBootedSimulatorUdid());
|
|
836
|
+
if (!targetUdid) {
|
|
837
|
+
return {
|
|
838
|
+
success: false,
|
|
839
|
+
error: "No iOS simulator is currently running. Start a simulator first."
|
|
840
|
+
};
|
|
841
|
+
}
|
|
842
|
+
// Ensure IDB is connected to the simulator
|
|
843
|
+
const connectResult = await ensureIdbConnected(targetUdid);
|
|
844
|
+
if (!connectResult.success) {
|
|
845
|
+
return { success: false, error: connectResult.error };
|
|
846
|
+
}
|
|
847
|
+
const xRounded = Math.round(x);
|
|
848
|
+
const yRounded = Math.round(y);
|
|
849
|
+
// Use execFile with args array (no shell)
|
|
850
|
+
const { stdout, stderr } = await runIdb("ui", "describe-point", "--udid", targetUdid, "--json", "--", String(xRounded), String(yRounded));
|
|
851
|
+
if (stderr)
|
|
852
|
+
throw new Error(stderr);
|
|
853
|
+
// Parse JSON response - may be single element or array
|
|
854
|
+
let element;
|
|
855
|
+
try {
|
|
856
|
+
const parsed = JSON.parse(stdout);
|
|
857
|
+
element = Array.isArray(parsed) ? parsed[0] : parsed;
|
|
858
|
+
}
|
|
859
|
+
catch {
|
|
860
|
+
return {
|
|
861
|
+
success: true,
|
|
862
|
+
result: `No accessibility element found at (${xRounded}, ${yRounded})`,
|
|
863
|
+
elements: []
|
|
864
|
+
};
|
|
865
|
+
}
|
|
866
|
+
// Format for human-readable output
|
|
867
|
+
const parts = [];
|
|
868
|
+
if (element.type)
|
|
869
|
+
parts.push(`Type: ${element.type}`);
|
|
870
|
+
if (element.AXLabel)
|
|
871
|
+
parts.push(`Label: "${element.AXLabel}"`);
|
|
872
|
+
if (element.AXValue)
|
|
873
|
+
parts.push(`Value: "${element.AXValue}"`);
|
|
874
|
+
if (element.frame) {
|
|
875
|
+
const f = element.frame;
|
|
876
|
+
const centerX = Math.round(f.x + f.width / 2);
|
|
877
|
+
const centerY = Math.round(f.y + f.height / 2);
|
|
878
|
+
parts.push(`Frame: (${f.x}, ${f.y}) ${f.width}x${f.height}`);
|
|
879
|
+
parts.push(`Tap: (${centerX}, ${centerY})`);
|
|
880
|
+
}
|
|
881
|
+
return {
|
|
882
|
+
success: true,
|
|
883
|
+
result: parts.length > 0
|
|
884
|
+
? `Element at (${xRounded}, ${yRounded}):\n${parts.join("\n")}`
|
|
885
|
+
: `No accessibility element found at (${xRounded}, ${yRounded})`,
|
|
886
|
+
elements: element ? [element] : []
|
|
887
|
+
};
|
|
888
|
+
}
|
|
889
|
+
catch (error) {
|
|
890
|
+
return {
|
|
891
|
+
success: false,
|
|
892
|
+
error: `Failed to describe point: ${error instanceof Error ? error.message : String(error)}`
|
|
893
|
+
};
|
|
894
|
+
}
|
|
895
|
+
}
|
|
896
|
+
/**
|
|
897
|
+
* Helper to flatten nested accessibility elements
|
|
898
|
+
*/
|
|
899
|
+
function flattenElements(elements) {
|
|
900
|
+
const result = [];
|
|
901
|
+
for (const el of elements) {
|
|
902
|
+
result.push(el);
|
|
903
|
+
if (el.children && el.children.length > 0) {
|
|
904
|
+
result.push(...flattenElements(el.children));
|
|
905
|
+
}
|
|
906
|
+
}
|
|
907
|
+
return result;
|
|
908
|
+
}
|
|
909
|
+
/**
|
|
910
|
+
* Tap an element by its accessibility label using IDB
|
|
911
|
+
* This simplifies the workflow: no need to manually find coordinates
|
|
912
|
+
*/
|
|
913
|
+
export async function iosTapElement(options) {
|
|
914
|
+
try {
|
|
915
|
+
const { label, labelContains, index = 0, duration, udid } = options;
|
|
916
|
+
if (!label && !labelContains) {
|
|
917
|
+
return {
|
|
918
|
+
success: false,
|
|
919
|
+
error: "Either 'label' (exact match) or 'labelContains' (partial match) is required"
|
|
920
|
+
};
|
|
921
|
+
}
|
|
922
|
+
// Get all accessibility elements
|
|
923
|
+
const describeResult = await iosDescribeAll(udid);
|
|
924
|
+
if (!describeResult.success || !describeResult.elements) {
|
|
925
|
+
return {
|
|
926
|
+
success: false,
|
|
927
|
+
error: describeResult.error || "Failed to get accessibility elements"
|
|
928
|
+
};
|
|
929
|
+
}
|
|
930
|
+
// Flatten the tree and find matching elements
|
|
931
|
+
const allElements = flattenElements(describeResult.elements);
|
|
932
|
+
const matches = allElements.filter(el => {
|
|
933
|
+
if (!el.AXLabel)
|
|
934
|
+
return false;
|
|
935
|
+
if (label)
|
|
936
|
+
return el.AXLabel === label;
|
|
937
|
+
if (labelContains)
|
|
938
|
+
return el.AXLabel.toLowerCase().includes(labelContains.toLowerCase());
|
|
939
|
+
return false;
|
|
940
|
+
});
|
|
941
|
+
if (matches.length === 0) {
|
|
942
|
+
const searchTerm = label ? `label="${label}"` : `labelContains="${labelContains}"`;
|
|
943
|
+
return {
|
|
944
|
+
success: false,
|
|
945
|
+
error: `No element found with ${searchTerm}`
|
|
946
|
+
};
|
|
947
|
+
}
|
|
948
|
+
// Select element by index (default 0 = first match)
|
|
949
|
+
if (index >= matches.length) {
|
|
950
|
+
return {
|
|
951
|
+
success: false,
|
|
952
|
+
error: `Index ${index} out of range. Found ${matches.length} matching element(s).`
|
|
953
|
+
};
|
|
954
|
+
}
|
|
955
|
+
const element = matches[index];
|
|
956
|
+
// Check if element has frame coordinates
|
|
957
|
+
if (!element.frame) {
|
|
958
|
+
return {
|
|
959
|
+
success: false,
|
|
960
|
+
error: `Element "${element.AXLabel}" has no frame coordinates`
|
|
961
|
+
};
|
|
962
|
+
}
|
|
963
|
+
// Calculate center
|
|
964
|
+
const centerX = Math.round(element.frame.x + element.frame.width / 2);
|
|
965
|
+
const centerY = Math.round(element.frame.y + element.frame.height / 2);
|
|
966
|
+
// Tap at center
|
|
967
|
+
const tapResult = await iosTap(centerX, centerY, { duration, udid });
|
|
968
|
+
if (tapResult.success) {
|
|
969
|
+
return {
|
|
970
|
+
success: true,
|
|
971
|
+
result: `Tapped "${element.AXLabel}" at (${centerX}, ${centerY})`
|
|
972
|
+
};
|
|
973
|
+
}
|
|
974
|
+
return tapResult;
|
|
975
|
+
}
|
|
976
|
+
catch (error) {
|
|
977
|
+
return {
|
|
978
|
+
success: false,
|
|
979
|
+
error: `Failed to tap element: ${error instanceof Error ? error.message : String(error)}`
|
|
980
|
+
};
|
|
981
|
+
}
|
|
982
|
+
}
|
|
393
983
|
//# sourceMappingURL=ios.js.map
|
package/build/core/ios.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ios.js","sourceRoot":"","sources":["../../src/core/ios.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ios.js","sourceRoot":"","sources":["../../src/core/ios.ts"],"names":[],"mappings":"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"}
|