@swmansion/argent 0.16.1-next.11 → 0.16.1-next.12

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.
@@ -104705,22 +104705,46 @@ function requireDylibIn(dir, name) {
104705
104705
  }
104706
104706
  return p;
104707
104707
  }
104708
+ function requireTcpArtifact(dir, name, kind, envVar) {
104709
+ const p = path5.join(dir, name);
104710
+ if (!fs3.existsSync(p)) {
104711
+ throw new Error(
104712
+ `TCP-transport ${kind} not found: ${p}. This ${kind} is required to drive an ios-remote (sim-remote) device over the QUIC tunnel. It ships in the argent package under bin/tcp/ and dylibs/tcp/ (platform-neutral); if you are running a local build, produce it with \`npm run build:ios-binaries:tcp\`. To point the lookup at a directory that already contains it, set ${envVar}=<dir>.`
104713
+ );
104714
+ }
104715
+ return p;
104716
+ }
104708
104717
  var bootstrapDylibPath = () => {
104709
104718
  requireDarwin("bootstrapDylibPath");
104710
104719
  return requireDylibIn(DYLIB_DIR, "libArgentInjectionBootstrap.dylib");
104711
104720
  };
104712
104721
  var bootstrapDylibPathTcp = () => {
104713
- return requireDylibIn(DYLIB_TCP_DIR, "libArgentInjectionBootstrap.dylib");
104722
+ return requireTcpArtifact(
104723
+ DYLIB_TCP_DIR,
104724
+ "libArgentInjectionBootstrap.dylib",
104725
+ "dylib",
104726
+ "ARGENT_NATIVE_DEVTOOLS_TCP_DIR"
104727
+ );
104714
104728
  };
104715
104729
  var bootstrapDylibPathTvos = () => {
104716
104730
  requireDarwin("bootstrapDylibPathTvos");
104717
104731
  return requireDylibIn(DYLIB_TVOS_DIR, "libArgentInjectionBootstrap.dylib");
104718
104732
  };
104719
104733
  var nativeDevtoolsDylibPathTcp = () => {
104720
- return requireDylibIn(DYLIB_TCP_DIR, "libNativeDevtoolsIos.dylib");
104734
+ return requireTcpArtifact(
104735
+ DYLIB_TCP_DIR,
104736
+ "libNativeDevtoolsIos.dylib",
104737
+ "dylib",
104738
+ "ARGENT_NATIVE_DEVTOOLS_TCP_DIR"
104739
+ );
104721
104740
  };
104722
104741
  var keyboardPatchDylibPathTcp = () => {
104723
- return requireDylibIn(DYLIB_TCP_DIR, "libKeyboardPatch.dylib");
104742
+ return requireTcpArtifact(
104743
+ DYLIB_TCP_DIR,
104744
+ "libKeyboardPatch.dylib",
104745
+ "dylib",
104746
+ "ARGENT_NATIVE_DEVTOOLS_TCP_DIR"
104747
+ );
104724
104748
  };
104725
104749
  function tcpInjectionDylibs() {
104726
104750
  return [
@@ -104738,8 +104762,8 @@ function hostPlatformKey() {
104738
104762
  function platformBinDir() {
104739
104763
  return path5.join(BIN_DIR, hostPlatformKey());
104740
104764
  }
104741
- function platformTcpBinDir() {
104742
- return process.env.ARGENT_SIMULATOR_SERVER_TCP_DIR ?? path5.join(platformBinDir(), "tcp");
104765
+ function tcpBinDir() {
104766
+ return process.env.ARGENT_SIMULATOR_SERVER_TCP_DIR ?? path5.join(BIN_DIR, "tcp");
104743
104767
  }
104744
104768
  function simulatorServerBinaryPath() {
104745
104769
  const p = path5.join(platformBinDir(), "simulator-server");
@@ -104767,7 +104791,7 @@ function axServiceBinaryPath() {
104767
104791
  return requireBinIn(platformBinDir(), "ax-service");
104768
104792
  }
104769
104793
  function axServiceBinaryPathTcp() {
104770
- return requireBinIn(platformTcpBinDir(), "ax-service");
104794
+ return requireTcpArtifact(tcpBinDir(), "ax-service", "binary", "ARGENT_SIMULATOR_SERVER_TCP_DIR");
104771
104795
  }
104772
104796
  function tvosAxServiceBinaryPath() {
104773
104797
  requireDarwin("tvos-ax-service");
@@ -106144,6 +106168,7 @@ async function simctlSpawn(udid, opts) {
106144
106168
  const cmd = ["spawn", stripRemotePrefix(udid)];
106145
106169
  if (opts.binPath) cmd.push("--bin", opts.binPath);
106146
106170
  if (opts.detach) cmd.push("--detach");
106171
+ cmd.push("--json");
106147
106172
  const args = opts.args ?? [];
106148
106173
  if (args.length > 0) cmd.push("--", ...args);
106149
106174
  const { stdout } = await run(cmd, { timeoutMs: 6e4 });
@@ -117423,6 +117448,10 @@ function adaptAXDescribeToDescribeResult(response) {
117423
117448
 
117424
117449
  // ../tool-server/src/tools/describe/platforms/ios/index.ts
117425
117450
  var DEGRADED_HINT = "This simulator was not booted through argent \u2014 system dialogs and native modals may not appear. You MUST call boot-device with force=true now to restart the simulator and apply full accessibility settings before continuing.";
117451
+ function tcpArtifactHint(err) {
117452
+ const message = err instanceof Error ? err.message : typeof err === "string" ? err : "";
117453
+ return /TCP-transport (?:binary|dylib) not found/.test(message) ? message : void 0;
117454
+ }
117426
117455
  var TVOS_HINT = "This is an Apple TV (tvOS) simulator, which the iOS accessibility service does not support. Use the `describe` tool to read the focused and focusable elements, `tv-remote` (up/down/left/right/select/back/menu/home) to move focus, and `keyboard` to type. See the argent-tv-interact skill.";
117427
117456
  var NON_INJECTABLE_HINT = "This is an Apple system app (com.apple.*), which cannot load argent's native-devtools instrumentation \u2014 the native view hierarchy is unavailable and restarting the app will NOT help. Take a `screenshot` to see the screen and interact by coordinate. " + NON_INJECTABLE_NATIVE_WARNING;
117428
117457
  function emptyTree() {
@@ -117446,9 +117475,9 @@ async function describeIos(registry2, device, params, options = {}) {
117446
117475
  const response = await axApi.describe();
117447
117476
  tree = adaptAXDescribeToDescribeResult(response);
117448
117477
  hint = axApi.degraded ? DEGRADED_HINT : void 0;
117449
- } catch {
117478
+ } catch (err) {
117450
117479
  tree = emptyTree();
117451
- hint = DEGRADED_HINT;
117480
+ hint = tcpArtifactHint(err) ?? DEGRADED_HINT;
117452
117481
  }
117453
117482
  if (tree.children.length > 0) {
117454
117483
  return { tree, source: "ax-service", hint };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@swmansion/argent",
3
- "version": "0.16.1-next.11",
3
+ "version": "0.16.1-next.12",
4
4
  "description": "MCP server for iOS Simulator and Android Emulator control",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
File without changes