rnxsim 0.1.345 → 0.1.347

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 (174) hide show
  1. package/README.md +9 -3
  2. package/cli/commands/welcome.ts +19 -17
  3. package/cli/outbound-endpoints.ts +1 -1
  4. package/dist-cli/bin.js +5 -5
  5. package/dist-cli/chunks/{agent-52G55XTO.js → agent-VVY2A5YV.js} +2 -2
  6. package/dist-cli/chunks/{agent-wrapper-BOZM43ON.js → agent-wrapper-YBMTZ3KU.js} +2 -2
  7. package/dist-cli/chunks/{app-fonts-A2L6V5EZ.js → app-fonts-EF7FM3VP.js} +2 -2
  8. package/dist-cli/chunks/{assert-CJKIP4LN.js → assert-J7N6WGMS.js} +2 -2
  9. package/dist-cli/chunks/{auth-VHHN3TOB.js → auth-YGX3WVEL.js} +2 -2
  10. package/dist-cli/chunks/{beta-EBDIGV3E.js → beta-JXYFAOHO.js} +2 -2
  11. package/dist-cli/chunks/{camera-5F4KKCQ3.js → camera-WIVF3UQ3.js} +2 -2
  12. package/dist-cli/chunks/{chunk-PLB6UVVX.js → chunk-23WNLQUB.js} +2 -2
  13. package/dist-cli/chunks/{chunk-KZFJNDH3.js → chunk-24Q4J4U6.js} +1 -1
  14. package/dist-cli/chunks/chunk-2E5KDIGN.js +14 -0
  15. package/dist-cli/chunks/{chunk-XJBFJGNT.js → chunk-2PAG4FBP.js} +2 -2
  16. package/dist-cli/chunks/{chunk-7LGINKM6.js → chunk-2UZ6QQ6S.js} +2 -2
  17. package/dist-cli/chunks/{chunk-7V4KPZ7O.js → chunk-2W4ME6YI.js} +2 -2
  18. package/dist-cli/chunks/{chunk-5GXRRUOA.js → chunk-3HBHHU5F.js} +3 -3
  19. package/dist-cli/chunks/{chunk-E2RGSCHT.js → chunk-3SPBSEVL.js} +1 -1
  20. package/dist-cli/chunks/{chunk-QNBBKRCA.js → chunk-4KK5IRA6.js} +2 -2
  21. package/dist-cli/chunks/{chunk-4OKV7T5D.js → chunk-4KOWLH77.js} +2 -2
  22. package/dist-cli/chunks/{chunk-DPP2M4AJ.js → chunk-4RI6KXVH.js} +1 -1
  23. package/dist-cli/chunks/{chunk-DHM3JDCK.js → chunk-6CGQWXXT.js} +2 -2
  24. package/dist-cli/chunks/{chunk-ZMTZ5G5H.js → chunk-7C6XE6AT.js} +2 -2
  25. package/dist-cli/chunks/{chunk-7YMQRA6L.js → chunk-7D56NCJ3.js} +2 -2
  26. package/dist-cli/chunks/{chunk-4ZILDTZX.js → chunk-ABBCVE5V.js} +2 -2
  27. package/dist-cli/chunks/{chunk-JC33TOAF.js → chunk-ANANQDHB.js} +1 -1
  28. package/dist-cli/chunks/{chunk-BFTDL2GX.js → chunk-BA45ZZKU.js} +2 -2
  29. package/dist-cli/chunks/{chunk-RB4VFUNM.js → chunk-BAXXUHKV.js} +2 -2
  30. package/dist-cli/chunks/{chunk-LAQGSSTT.js → chunk-DC4MQAR3.js} +1 -1
  31. package/dist-cli/chunks/{chunk-KA4PJNTE.js → chunk-DTNRKFSE.js} +2 -2
  32. package/dist-cli/chunks/{chunk-A2Q76LJV.js → chunk-EEZEVA2C.js} +2 -2
  33. package/dist-cli/chunks/{chunk-7UIIAHVU.js → chunk-EIIZZ2XK.js} +2 -2
  34. package/dist-cli/chunks/{chunk-TEU5NGUA.js → chunk-FQ3OHHCY.js} +2 -2
  35. package/dist-cli/chunks/{chunk-BCQV63BW.js → chunk-HWAGFGV7.js} +3 -3
  36. package/dist-cli/chunks/{chunk-XXZLK4BY.js → chunk-HY7XOD5E.js} +1 -1
  37. package/dist-cli/chunks/{chunk-T7SBFG5I.js → chunk-IQWQ6KI7.js} +2 -2
  38. package/dist-cli/chunks/{chunk-TMRD5MHL.js → chunk-IS2LT6MN.js} +2 -2
  39. package/dist-cli/chunks/{chunk-NUPRHZQW.js → chunk-JG2TIZ7E.js} +2 -2
  40. package/dist-cli/chunks/{chunk-YVSUFVVB.js → chunk-JKRVWCTC.js} +1 -1
  41. package/dist-cli/chunks/{chunk-3DBTS4MC.js → chunk-JP4FCK5J.js} +6 -6
  42. package/dist-cli/chunks/{chunk-RTDHX6CW.js → chunk-JQTBZERT.js} +2 -2
  43. package/dist-cli/chunks/{chunk-OPHT4DUO.js → chunk-KYTBJ2QV.js} +1 -1
  44. package/dist-cli/chunks/{chunk-63ASUHOV.js → chunk-LRRQI4TP.js} +2 -2
  45. package/dist-cli/chunks/{chunk-RT3DXTDP.js → chunk-LWE2HRS4.js} +2 -2
  46. package/dist-cli/chunks/{chunk-U5YHXQHH.js → chunk-NJ2JVAGV.js} +2 -2
  47. package/dist-cli/chunks/{chunk-4BIPA7MD.js → chunk-O7WPHIYQ.js} +1 -1
  48. package/dist-cli/chunks/{chunk-WPPGU5IK.js → chunk-OG3KGU4V.js} +2 -2
  49. package/dist-cli/chunks/{chunk-KH777UAO.js → chunk-PCU2CQCI.js} +3 -3
  50. package/dist-cli/chunks/{chunk-KRZPFXVN.js → chunk-QJYUHYQS.js} +1 -1
  51. package/dist-cli/chunks/{chunk-HK7YKH6N.js → chunk-QK2U5IW3.js} +2 -2
  52. package/dist-cli/chunks/{chunk-3N7M5HMJ.js → chunk-SMLCC5EP.js} +1 -1
  53. package/dist-cli/chunks/{chunk-QNRWPAOA.js → chunk-SNBSRIKO.js} +2 -2
  54. package/dist-cli/chunks/{chunk-R7ZNRGQN.js → chunk-SYQZTZTR.js} +1 -1
  55. package/dist-cli/chunks/{chunk-7GO2DSYQ.js → chunk-TAYE2YII.js} +1 -1
  56. package/dist-cli/chunks/{chunk-EPLVIDPC.js → chunk-U6CJ3EHB.js} +1 -1
  57. package/dist-cli/chunks/{chunk-GKGXULJK.js → chunk-UM7IG4DE.js} +2 -2
  58. package/dist-cli/chunks/{chunk-VLBN3KRC.js → chunk-VENH5KLL.js} +1 -1
  59. package/dist-cli/chunks/{chunk-P2CGGMU2.js → chunk-W4MASUQ7.js} +2 -2
  60. package/dist-cli/chunks/{chunk-WU72KL6Z.js → chunk-WIYBEKBM.js} +2 -2
  61. package/dist-cli/chunks/{chunk-LRM2XCEQ.js → chunk-WNZOJDBL.js} +1 -1
  62. package/dist-cli/chunks/{chunk-UVOEHIGP.js → chunk-XB7DLZNQ.js} +1 -1
  63. package/dist-cli/chunks/{chunk-PLUWN2V5.js → chunk-XGUCAKZM.js} +1 -1
  64. package/dist-cli/chunks/{chunk-DGTV3KOW.js → chunk-Z6K6TD7X.js} +1 -1
  65. package/dist-cli/chunks/{chunk-BHKSCNDC.js → chunk-ZPCQFQEN.js} +1 -1
  66. package/dist-cli/chunks/{chunk-HXE344V3.js → chunk-ZY44NCRQ.js} +1 -1
  67. package/dist-cli/chunks/{cleanup-MAVZJXVW.js → cleanup-ZIDQQLEN.js} +2 -2
  68. package/dist-cli/chunks/cli-version-BEJJXF35.js +4 -0
  69. package/dist-cli/chunks/{compat-7AURLGCS.js → compat-5PFPTBBK.js} +2 -2
  70. package/dist-cli/chunks/{config-TN3Y4J5N.js → config-CG73FOTM.js} +2 -2
  71. package/dist-cli/chunks/{control-EV2ELU5R.js → control-7IYIDOOI.js} +2 -2
  72. package/dist-cli/chunks/daemon-G6VR7LJI.js +4 -0
  73. package/dist-cli/chunks/{debug-JICITUB6.js → debug-6AQQXXE3.js} +3 -3
  74. package/dist-cli/chunks/{desktop-4F5HGLLX.js → desktop-HJE5B4XO.js} +3 -3
  75. package/dist-cli/chunks/{detox-ZC7NHLJI.js → detox-KUZ7EYOP.js} +2 -2
  76. package/dist-cli/chunks/{device-V57GHRXX.js → device-O6WI4PQT.js} +2 -2
  77. package/dist-cli/chunks/{diagnose-FF4IWYXC.js → diagnose-FTCJGH2Q.js} +2 -2
  78. package/dist-cli/chunks/{disk-cleanup-T277L6ZO.js → disk-cleanup-YAXG52EZ.js} +2 -2
  79. package/dist-cli/chunks/drivers-6QOL2SON.js +4 -0
  80. package/dist-cli/chunks/{film-G7ZAPWB7.js → film-KTLKRCJR.js} +3 -3
  81. package/dist-cli/chunks/flow-6VQN4VNW.js +4 -0
  82. package/dist-cli/chunks/help-22OURA2E.js +4 -0
  83. package/dist-cli/chunks/{hidden-runtime-alias-VSJNNSNI.js → hidden-runtime-alias-W375XBOM.js} +2 -2
  84. package/dist-cli/chunks/{home-paths-75HP3HKA.js → home-paths-CIGRWLDB.js} +2 -2
  85. package/dist-cli/chunks/inspect-36A2IEJL.js +4 -0
  86. package/dist-cli/chunks/install-desktop-KOW3XXUF.js +4 -0
  87. package/dist-cli/chunks/{login-ZSIHGHUK.js → login-AJWLXLPQ.js} +2 -2
  88. package/dist-cli/chunks/{logout-Q4DXMI2C.js → logout-CEJLZIOI.js} +2 -2
  89. package/dist-cli/chunks/{maestro-LE5LCRBL.js → maestro-YF4M6M6L.js} +3 -3
  90. package/dist-cli/chunks/{maestro-generate-D3ZIJCRL.js → maestro-generate-FJWDLMEB.js} +3 -3
  91. package/dist-cli/chunks/{mode-BWX6MDPJ.js → mode-6BJ523BY.js} +2 -2
  92. package/dist-cli/chunks/{optional-demo-registry-6CVASL3S.js → optional-demo-registry-5CKCN2TP.js} +2 -2
  93. package/dist-cli/chunks/{perf-NXQZISN6.js → perf-WE6QTFJU.js} +2 -2
  94. package/dist-cli/chunks/{permissions-5PD67RRO.js → permissions-OZZZZFPB.js} +2 -2
  95. package/dist-cli/chunks/privacy-3BERNBUM.js +4 -0
  96. package/dist-cli/chunks/{record-YJF4KXMR.js → record-QHQS2524.js} +3 -3
  97. package/dist-cli/chunks/{report-issue-XOL5FQBG.js → report-issue-SEMVVJUH.js} +2 -2
  98. package/dist-cli/chunks/reset-A5AA5ML6.js +4 -0
  99. package/dist-cli/chunks/runtime-R26QWA2M.js +4 -0
  100. package/dist-cli/chunks/{screenshot-command-VRPJXWFS.js → screenshot-command-WW33MAB3.js} +3 -3
  101. package/dist-cli/chunks/{screenshot-layers-QP4WA2F5.js → screenshot-layers-2GJTEQ4T.js} +2 -2
  102. package/dist-cli/chunks/{screenshots-capture-O2IBAVSP.js → screenshots-capture-J5HKONCC.js} +2 -2
  103. package/dist-cli/chunks/{serve-WC6RZNJL.js → serve-FEBNDKUD.js} +2 -2
  104. package/dist-cli/chunks/{setup-A6BIG3KL.js → setup-NGZWS373.js} +2 -2
  105. package/dist-cli/chunks/{skills-A7YC6RL5.js → skills-CFCZFEME.js} +2 -2
  106. package/dist-cli/chunks/{state-IJI5YROJ.js → state-XWRKK7FW.js} +2 -2
  107. package/dist-cli/chunks/{storage-Z2DBO2PQ.js → storage-C5GNK4XB.js} +2 -2
  108. package/dist-cli/chunks/store-L3A4CLND.js +4 -0
  109. package/dist-cli/chunks/telemetry-O67J22QU.js +4 -0
  110. package/dist-cli/chunks/{timeline-N7V2M6QA.js → timeline-7RA7ZILQ.js} +2 -2
  111. package/dist-cli/chunks/{upgrade-P2NH3BOR.js → upgrade-ZW6IJ5LX.js} +2 -2
  112. package/dist-cli/chunks/upload-UKUN6HCD.js +4 -0
  113. package/dist-cli/chunks/{version-OUHCSCUS.js → version-N3E4OIMM.js} +2 -2
  114. package/dist-cli/chunks/{web-6NRTF3UV.js → web-UC2SFEBA.js} +2 -2
  115. package/dist-cli/chunks/welcome-DAZPCMES.js +5 -0
  116. package/dist-cli/chunks/{what-happened-FUEL3BEF.js → what-happened-VUNKID5W.js} +2 -2
  117. package/dist-lib/agent-daemon-client.cjs +1 -1
  118. package/dist-lib/agent-events.cjs +1 -1
  119. package/dist-lib/agent-identity.cjs +1 -1
  120. package/dist-lib/agent-sessions.cjs +1 -1
  121. package/dist-lib/attached-projects.cjs +1 -1
  122. package/dist-lib/auth/shared-session.cjs +1 -1
  123. package/dist-lib/backend-origin.cjs +13 -1
  124. package/dist-lib/beta.cjs +1 -1
  125. package/dist-lib/beta.mjs +1 -1
  126. package/dist-lib/bridge-constants.cjs +1 -1
  127. package/dist-lib/bridge-contract.cjs +1 -1
  128. package/dist-lib/cli-constants.cjs +1 -1
  129. package/dist-lib/config.cjs +1 -1
  130. package/dist-lib/detox/index.cjs +1 -1
  131. package/dist-lib/dev-bundle-resolution.cjs +26 -10
  132. package/dist-lib/home-paths.cjs +1 -1
  133. package/dist-lib/host/bridge-host.cjs +101 -58
  134. package/dist-lib/host/fetch-proxy-handler.cjs +1 -1
  135. package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
  136. package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
  137. package/dist-lib/host/replacement-module-handler.cjs +1 -1
  138. package/dist-lib/host/websocket-proxy.cjs +1 -1
  139. package/dist-lib/index.cjs +1 -1
  140. package/dist-lib/jump-to-source-babel.cjs +1 -1
  141. package/dist-lib/menu.cjs +1 -1
  142. package/dist-lib/menu.mjs +1 -1
  143. package/dist-lib/metro-production-bundle.cjs +1 -1
  144. package/dist-lib/metro-production-bundle.mjs +1 -1
  145. package/dist-lib/metro.cjs +1 -1
  146. package/dist-lib/profiles.cjs +1 -1
  147. package/dist-lib/public-brand.cjs +1 -1
  148. package/dist-lib/react-native-host-modules.cjs +1 -1
  149. package/dist-lib/react-native-host-modules.mjs +1 -1
  150. package/dist-lib/render-mode.cjs +1 -1
  151. package/dist-lib/scripts/dev-server-scanner.cjs +106 -59
  152. package/dist-lib/sdk.cjs +1 -1
  153. package/dist-lib/sdk.mjs +1 -1
  154. package/dist-lib/skills.cjs +127 -72
  155. package/dist-lib/vite.cjs +1 -1
  156. package/package.json +1 -1
  157. package/scripts/dev-server-scanner.ts +101 -47
  158. package/src/backend-origin.ts +15 -1
  159. package/src/dev-bundle-resolution.ts +29 -12
  160. package/dist-cli/chunks/chunk-TOF5TA5X.js +0 -14
  161. package/dist-cli/chunks/cli-version-2B4KRNML.js +0 -4
  162. package/dist-cli/chunks/daemon-KKDG5MYR.js +0 -4
  163. package/dist-cli/chunks/drivers-LCX7S76X.js +0 -4
  164. package/dist-cli/chunks/flow-ONZGGFGD.js +0 -4
  165. package/dist-cli/chunks/help-DROVDXJM.js +0 -4
  166. package/dist-cli/chunks/inspect-MDA7ESGQ.js +0 -4
  167. package/dist-cli/chunks/install-desktop-EIVZHIFA.js +0 -4
  168. package/dist-cli/chunks/privacy-H5KNRNIZ.js +0 -4
  169. package/dist-cli/chunks/reset-5LZN5P5B.js +0 -4
  170. package/dist-cli/chunks/runtime-U36VWBH3.js +0 -4
  171. package/dist-cli/chunks/store-BYTCKNIC.js +0 -4
  172. package/dist-cli/chunks/telemetry-JLHFMD7N.js +0 -4
  173. package/dist-cli/chunks/upload-Z2WX5DCD.js +0 -4
  174. package/dist-cli/chunks/welcome-6RS7PEJW.js +0 -5
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __defProp = Object.defineProperty;
@@ -23,16 +23,25 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
23
23
  var backend_origin_exports = {};
24
24
  __export(backend_origin_exports, {
25
25
  DEFAULT_CONTRAST_BACKEND_ORIGIN: () => DEFAULT_CONTRAST_BACKEND_ORIGIN,
26
+ LOOPBACK_PROBE_HOSTNAMES: () => LOOPBACK_PROBE_HOSTNAMES,
27
+ buildLoopbackProbeBaseUrl: () => buildLoopbackProbeBaseUrl,
26
28
  isContrastBackendHost: () => isContrastBackendHost,
27
29
  isContrastBackendOrigin: () => isContrastBackendOrigin,
28
30
  isLoopbackHost: () => isLoopbackHost,
31
+ normalizeHostname: () => normalizeHostname,
29
32
  resolveContrastBackendOrigin: () => resolveContrastBackendOrigin
30
33
  });
31
34
  module.exports = __toCommonJS(backend_origin_exports);
32
35
  var DEFAULT_CONTRAST_BACKEND_ORIGIN = "https://contrast.dev";
36
+ var LOOPBACK_PROBE_HOSTNAMES = ["::1", "127.0.0.1"];
33
37
  function normalizeHostname(hostname) {
34
38
  return hostname.replace(/^\[|\]$/g, "").toLowerCase();
35
39
  }
40
+ function buildLoopbackProbeBaseUrl(protocol, hostname, port) {
41
+ const normalizedHostname = normalizeHostname(hostname);
42
+ const urlHost = normalizedHostname.includes(":") ? `[${normalizedHostname}]` : normalizedHostname;
43
+ return `${protocol}//${urlHost}:${port}`;
44
+ }
36
45
  function isLoopbackHost(hostname) {
37
46
  const normalized = normalizeHostname(hostname);
38
47
  return normalized === "localhost" || normalized.endsWith(".localhost") || normalized === "0.0.0.0" || normalized === "::1" || /^127(?:\.\d{1,3}){3}$/.test(normalized);
@@ -63,8 +72,11 @@ function resolveContrastBackendOrigin(currentOrigin) {
63
72
  // Annotate the CommonJS export names for ESM import in node:
64
73
  0 && (module.exports = {
65
74
  DEFAULT_CONTRAST_BACKEND_ORIGIN,
75
+ LOOPBACK_PROBE_HOSTNAMES,
76
+ buildLoopbackProbeBaseUrl,
66
77
  isContrastBackendHost,
67
78
  isContrastBackendOrigin,
68
79
  isLoopbackHost,
80
+ normalizeHostname,
69
81
  resolveContrastBackendOrigin
70
82
  });
package/dist-lib/beta.cjs CHANGED
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __defProp = Object.defineProperty;
package/dist-lib/beta.mjs CHANGED
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
 
3
3
  // src/beta.ts
4
4
  var IS_BETA = true;
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __defProp = Object.defineProperty;
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __defProp = Object.defineProperty;
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __defProp = Object.defineProperty;
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __defProp = Object.defineProperty;
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __create = Object.create;
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __defProp = Object.defineProperty;
@@ -30,9 +30,15 @@ __export(dev_bundle_resolution_exports, {
30
30
  module.exports = __toCommonJS(dev_bundle_resolution_exports);
31
31
 
32
32
  // src/backend-origin.ts
33
+ var LOOPBACK_PROBE_HOSTNAMES = ["::1", "127.0.0.1"];
33
34
  function normalizeHostname(hostname) {
34
35
  return hostname.replace(/^\[|\]$/g, "").toLowerCase();
35
36
  }
37
+ function buildLoopbackProbeBaseUrl(protocol, hostname, port) {
38
+ const normalizedHostname = normalizeHostname(hostname);
39
+ const urlHost = normalizedHostname.includes(":") ? `[${normalizedHostname}]` : normalizedHostname;
40
+ return `${protocol}//${urlHost}:${port}`;
41
+ }
36
42
  function isLoopbackHost(hostname) {
37
43
  const normalized = normalizeHostname(hostname);
38
44
  return normalized === "localhost" || normalized.endsWith(".localhost") || normalized === "0.0.0.0" || normalized === "::1" || /^127(?:\.\d{1,3}){3}$/.test(normalized);
@@ -151,15 +157,8 @@ async function resolvePortViaServerScan(port) {
151
157
  return null;
152
158
  }
153
159
  }
154
- async function probeBaseUrlBundle(baseUrl, port) {
160
+ async function probeBaseUrlBundleDirect(baseUrl, port) {
155
161
  const normalizedBaseUrl = baseUrl.replace(/\/+$/, "");
156
- try {
157
- if (isLoopbackHost(new URL(normalizedBaseUrl).hostname)) {
158
- const viaScan = await resolvePortViaServerScan(port);
159
- if (viaScan) return viaScan;
160
- }
161
- } catch {
162
- }
163
162
  try {
164
163
  const manifestRes = await fetchDevProbe(`${normalizedBaseUrl}/`, {
165
164
  headers: { "expo-platform": "ios" }
@@ -198,8 +197,25 @@ async function probeBaseUrlBundle(baseUrl, port) {
198
197
  }
199
198
  return null;
200
199
  }
200
+ async function probeBaseUrlBundle(baseUrl, port) {
201
+ try {
202
+ if (isLoopbackHost(new URL(baseUrl).hostname)) {
203
+ const viaScan = await resolvePortViaServerScan(port);
204
+ if (viaScan) return viaScan;
205
+ }
206
+ } catch {
207
+ }
208
+ return probeBaseUrlBundleDirect(baseUrl, port);
209
+ }
201
210
  async function probePortBundle(port) {
202
- return probeBaseUrlBundle(buildBaseUrl("http:", "localhost", port), port);
211
+ const viaScan = await resolvePortViaServerScan(port);
212
+ if (viaScan) return viaScan;
213
+ const candidates = await Promise.all(
214
+ LOOPBACK_PROBE_HOSTNAMES.map(
215
+ (hostname) => probeBaseUrlBundleDirect(buildLoopbackProbeBaseUrl("http:", hostname, port), port)
216
+ )
217
+ );
218
+ return candidates.find((candidate) => candidate !== null) ?? null;
203
219
  }
204
220
  async function resolveConnectionInput(input) {
205
221
  const trimmed = input.trim();
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __create = Object.create;
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __create = Object.create;
@@ -116,6 +116,21 @@ var import_net = __toESM(require("net"), 1);
116
116
  var import_node_path3 = require("node:path");
117
117
  var import_util = require("util");
118
118
 
119
+ // src/backend-origin.ts
120
+ var LOOPBACK_PROBE_HOSTNAMES = ["::1", "127.0.0.1"];
121
+ function normalizeHostname(hostname) {
122
+ return hostname.replace(/^\[|\]$/g, "").toLowerCase();
123
+ }
124
+ function buildLoopbackProbeBaseUrl(protocol, hostname, port) {
125
+ const normalizedHostname = normalizeHostname(hostname);
126
+ const urlHost = normalizedHostname.includes(":") ? `[${normalizedHostname}]` : normalizedHostname;
127
+ return `${protocol}//${urlHost}:${port}`;
128
+ }
129
+ function isLoopbackHost(hostname) {
130
+ const normalized = normalizeHostname(hostname);
131
+ return normalized === "localhost" || normalized.endsWith(".localhost") || normalized === "0.0.0.0" || normalized === "::1" || /^127(?:\.\d{1,3}){3}$/.test(normalized);
132
+ }
133
+
119
134
  // src/config.ts
120
135
  var SOOTSIM_CONFIG_QUERY_PARAM = "sootsimConfig";
121
136
  function hasOwnKeys(value) {
@@ -135,15 +150,6 @@ function applySootSimConfigToUrl(url, config) {
135
150
  return parsed.toString();
136
151
  }
137
152
 
138
- // src/backend-origin.ts
139
- function normalizeHostname(hostname) {
140
- return hostname.replace(/^\[|\]$/g, "").toLowerCase();
141
- }
142
- function isLoopbackHost(hostname) {
143
- const normalized = normalizeHostname(hostname);
144
- return normalized === "localhost" || normalized.endsWith(".localhost") || normalized === "0.0.0.0" || normalized === "::1" || /^127(?:\.\d{1,3}){3}$/.test(normalized);
145
- }
146
-
147
153
  // src/native-dev-bundle-url.ts
148
154
  function isAbsoluteHttpUrl(url) {
149
155
  return /^https?:\/\//i.test(url);
@@ -536,27 +542,36 @@ var execP = (0, import_util.promisify)(import_child_process.exec);
536
542
  var TIMEOUT_MS = 250;
537
543
  var MANIFEST_TIMEOUT_MS = 1500;
538
544
  var TCP_GATE_MS = 120;
539
- function tcpPing(port, timeout = TCP_GATE_MS) {
540
- return new Promise((resolve2) => {
541
- const sock = new import_net.default.Socket();
542
- let settled = false;
543
- const done = (ok) => {
544
- if (settled) return;
545
- settled = true;
546
- sock.destroy();
547
- resolve2(ok);
548
- };
549
- sock.setTimeout(timeout);
550
- sock.once("connect", () => done(true));
551
- sock.once("timeout", () => done(false));
552
- sock.once("error", () => done(false));
553
- sock.connect(port, "localhost");
554
- });
545
+ async function tcpPing(port, timeout = TCP_GATE_MS) {
546
+ try {
547
+ return await Promise.any(
548
+ LOOPBACK_PROBE_HOSTNAMES.map(
549
+ (hostname) => new Promise((resolve2, reject) => {
550
+ const sock = new import_net.default.Socket();
551
+ let settled = false;
552
+ const done = (reachable) => {
553
+ if (settled) return;
554
+ settled = true;
555
+ sock.destroy();
556
+ if (reachable) resolve2(hostname);
557
+ else reject(new Error(`unreachable loopback host ${hostname}`));
558
+ };
559
+ sock.setTimeout(timeout);
560
+ sock.once("connect", () => done(true));
561
+ sock.once("timeout", () => done(false));
562
+ sock.once("error", () => done(false));
563
+ sock.connect(port, hostname);
564
+ })
565
+ )
566
+ );
567
+ } catch {
568
+ return null;
569
+ }
555
570
  }
556
- function httpGet(port, path10, method = "GET", timeout = TIMEOUT_MS, headers = {}) {
571
+ function httpGet(hostname, port, path10, method = "GET", timeout = TIMEOUT_MS, headers = {}) {
557
572
  return new Promise((resolve2) => {
558
573
  const req = import_http.default.request(
559
- { hostname: "localhost", port, path: path10, method, timeout, headers },
574
+ { hostname, port, path: path10, method, timeout, headers },
560
575
  (res) => {
561
576
  let body = "";
562
577
  res.on("data", (c) => body += c.toString());
@@ -568,7 +583,12 @@ function httpGet(port, path10, method = "GET", timeout = TIMEOUT_MS, headers = {
568
583
  })();
569
584
  res.on(
570
585
  "end",
571
- () => resolve2({ statusCode: res.statusCode || 0, body, contentType })
586
+ () => resolve2({
587
+ statusCode: res.statusCode || 0,
588
+ body,
589
+ contentType,
590
+ hostname
591
+ })
572
592
  );
573
593
  }
574
594
  );
@@ -720,16 +740,16 @@ async function resolveProcessCwd(pid) {
720
740
  }
721
741
  return null;
722
742
  }
723
- function makeResult(port, framework, owner) {
743
+ function makeResult(hostname, port, framework, owner) {
724
744
  return {
725
745
  port,
726
746
  framework,
727
747
  bundleUrl: withRuntimeConfig(
728
748
  port,
729
- `http://localhost:${port}/index.bundle?platform=ios&dev=true&hot=true&minify=false`,
749
+ `${buildLoopbackProbeBaseUrl("http:", hostname, port)}/index.bundle?platform=ios&dev=true&hot=true&minify=false`,
730
750
  owner.cwd
731
751
  ),
732
- hmrUrl: `ws://localhost:${port}/hot`,
752
+ hmrUrl: `${buildLoopbackProbeBaseUrl("ws:", hostname, port)}/hot`,
733
753
  lastSeen: Date.now(),
734
754
  ...owner
735
755
  };
@@ -761,7 +781,10 @@ function applyManifest(result, manifestRes, buildIconProxyUrl) {
761
781
  if (client.ios?.bundleIdentifier) result.bundleId = client.ios.bundleIdentifier;
762
782
  if (result.framework === "metro" && client.sdkVersion) result.framework = "expo";
763
783
  const rawLaunchUrl = manifest?.launchAsset?.url;
764
- const launchUrl2 = typeof rawLaunchUrl === "string" ? alignLoopbackBundleUrlWithProbe(rawLaunchUrl, `http://localhost:${result.port}`) : rawLaunchUrl;
784
+ const launchUrl2 = typeof rawLaunchUrl === "string" ? alignLoopbackBundleUrlWithProbe(
785
+ rawLaunchUrl,
786
+ buildLoopbackProbeBaseUrl("http:", manifestRes.hostname, result.port)
787
+ ) : rawLaunchUrl;
765
788
  if (launchUrl2 && !result.patched && !isDirectOneBundleUrl(result.bundleUrl)) {
766
789
  result.bundleUrl = withRuntimeConfig(result.port, launchUrl2, result.cwd);
767
790
  }
@@ -774,11 +797,11 @@ function applyManifest(result, manifestRes, buildIconProxyUrl) {
774
797
  } else {
775
798
  const cleanPath = rawIconUrl.replace(/^\.\//, "");
776
799
  result.iconUrl = buildIconProxyUrl(
777
- `http://localhost:${result.port}/assets/${cleanPath}`
800
+ `${buildLoopbackProbeBaseUrl("http:", manifestRes.hostname, result.port)}/assets/${cleanPath}`
778
801
  );
779
802
  }
780
803
  } else {
781
- result.iconUrl = rawIconUrl.startsWith("http") ? rawIconUrl : `http://localhost:${result.port}/assets/${rawIconUrl.replace(/^\.\//, "")}`;
804
+ result.iconUrl = rawIconUrl.startsWith("http") ? rawIconUrl : `${buildLoopbackProbeBaseUrl("http:", manifestRes.hostname, result.port)}/assets/${rawIconUrl.replace(/^\.\//, "")}`;
782
805
  }
783
806
  }
784
807
  } catch {
@@ -802,38 +825,51 @@ function enrichWithManifest(result, buildIconProxyUrl) {
802
825
  }
803
826
  if (!enrichmentInFlight.has(result.port)) {
804
827
  enrichmentInFlight.add(result.port);
805
- const port = result.port;
806
- void fetchManifestEnrichment(port, buildIconProxyUrl).finally(
807
- () => enrichmentInFlight.delete(port)
828
+ void fetchManifestEnrichment(result, buildIconProxyUrl).finally(
829
+ () => enrichmentInFlight.delete(result.port)
808
830
  );
809
831
  }
810
832
  return result;
811
833
  }
812
- async function fetchManifestEnrichment(port, buildIconProxyUrl) {
813
- const manifestRes = await httpGet(port, "/", "GET", ENRICH_TIMEOUT_MS, {
814
- "expo-platform": "ios"
815
- });
834
+ async function fetchManifestEnrichment(result, buildIconProxyUrl) {
835
+ const hostname = normalizeHostname(new URL(result.bundleUrl).hostname);
836
+ const manifestRes = await httpGet(
837
+ hostname,
838
+ result.port,
839
+ "/",
840
+ "GET",
841
+ ENRICH_TIMEOUT_MS,
842
+ {
843
+ "expo-platform": "ios"
844
+ }
845
+ );
816
846
  if (!manifestRes || manifestRes.statusCode !== 200) return;
817
847
  const parsed = applyManifest(
818
- { port, framework: "one", bundleUrl: "", lastSeen: 0 },
848
+ {
849
+ port: result.port,
850
+ framework: "one",
851
+ bundleUrl: `${buildLoopbackProbeBaseUrl("http:", hostname, result.port)}/index.bundle`,
852
+ lastSeen: 0
853
+ },
819
854
  manifestRes,
820
855
  buildIconProxyUrl
821
856
  );
822
857
  if (!parsed.projectName && !parsed.iconUrl) return;
823
- enrichmentCache.set(port, {
858
+ enrichmentCache.set(result.port, {
824
859
  projectName: parsed.projectName,
825
860
  iconUrl: parsed.iconUrl,
826
861
  iconPath: parsed.iconPath,
827
862
  bundleId: parsed.bundleId
828
863
  });
829
- portCache.delete(port);
864
+ portCache.delete(result.port);
830
865
  }
831
866
  var knownNonPatched = /* @__PURE__ */ new Set();
832
867
  var knownNonExpo = /* @__PURE__ */ new Set();
833
868
  var knownOne = /* @__PURE__ */ new Set();
834
869
  async function probePort(port, buildIconProxyUrl, listeningProcess) {
835
870
  await loadOptionalDemoApps();
836
- if (!await tcpPing(port)) return null;
871
+ const probeHostname = await tcpPing(port);
872
+ if (!probeHostname) return null;
837
873
  const suppliedPid = listeningProcess?.pid;
838
874
  const ownerPid = suppliedPid && suppliedPid > 0 ? suppliedPid : await resolveListeningPid(port);
839
875
  const ownerCwd = ownerPid ? await resolveProcessCwd(ownerPid) : null;
@@ -843,10 +879,12 @@ async function probePort(port, buildIconProxyUrl, listeningProcess) {
843
879
  };
844
880
  const onePath = `/node_modules/one/metro-entry.bundle?platform=ios&dev=true`;
845
881
  const [sootsimRes, statusRes, manifestRes, expoRes] = await Promise.all([
846
- knownNonPatched.has(port) ? Promise.resolve(null) : httpGet(port, "/__soot/"),
847
- httpGet(port, "/status"),
848
- knownOne.has(port) ? Promise.resolve(null) : httpGet(port, "/", "GET", MANIFEST_TIMEOUT_MS, { "expo-platform": "ios" }),
849
- knownNonExpo.has(port) ? Promise.resolve(null) : httpGet(port, "/_expo/status")
882
+ knownNonPatched.has(port) ? Promise.resolve(null) : httpGet(probeHostname, port, "/__soot/"),
883
+ httpGet(probeHostname, port, "/status"),
884
+ knownOne.has(port) ? Promise.resolve(null) : httpGet(probeHostname, port, "/", "GET", MANIFEST_TIMEOUT_MS, {
885
+ "expo-platform": "ios"
886
+ }),
887
+ knownNonExpo.has(port) ? Promise.resolve(null) : httpGet(probeHostname, port, "/_expo/status")
850
888
  ]);
851
889
  if (expoRes && expoRes.statusCode === 200) {
852
890
  knownNonExpo.delete(port);
@@ -858,7 +896,7 @@ async function probePort(port, buildIconProxyUrl, listeningProcess) {
858
896
  const manifestClient = manifestParsed?.extra?.expoClient || manifestParsed?.extra || {};
859
897
  if (manifestParsed && (manifestLaunchUrl || typeof manifestClient.name === "string")) {
860
898
  knownNonPatched.add(port);
861
- const launchUrl2 = manifestLaunchUrl || `http://localhost:${port}/index.bundle?platform=ios&dev=true&hot=true&minify=false`;
899
+ const launchUrl2 = manifestLaunchUrl || `${buildLoopbackProbeBaseUrl("http:", probeHostname, port)}/index.bundle?platform=ios&dev=true&hot=true&minify=false`;
862
900
  const framework = launchUrl2.includes(
863
901
  "/one/metro-entry.bundle"
864
902
  ) ? "one" : "expo";
@@ -867,7 +905,7 @@ async function probePort(port, buildIconProxyUrl, listeningProcess) {
867
905
  port,
868
906
  framework,
869
907
  bundleUrl: withRuntimeConfig(port, launchUrl2, owner.cwd),
870
- hmrUrl: `ws://localhost:${port}/hot`,
908
+ hmrUrl: `${buildLoopbackProbeBaseUrl("ws:", probeHostname, port)}/hot`,
871
909
  lastSeen: Date.now(),
872
910
  ...owner
873
911
  },
@@ -879,7 +917,12 @@ async function probePort(port, buildIconProxyUrl, listeningProcess) {
879
917
  knownNonPatched.add(port);
880
918
  return enrichWithManifest(
881
919
  applyManifest(
882
- makeResult(port, expoRes && expoRes.statusCode === 200 ? "expo" : "metro", owner),
920
+ makeResult(
921
+ probeHostname,
922
+ port,
923
+ expoRes && expoRes.statusCode === 200 ? "expo" : "metro",
924
+ owner
925
+ ),
883
926
  manifestRes,
884
927
  buildIconProxyUrl
885
928
  ),
@@ -895,10 +938,10 @@ async function probePort(port, buildIconProxyUrl, listeningProcess) {
895
938
  framework: "one",
896
939
  bundleUrl: withRuntimeConfig(
897
940
  port,
898
- `http://localhost:${port}/__soot/bundle.js`,
941
+ `${buildLoopbackProbeBaseUrl("http:", probeHostname, port)}/__soot/bundle.js`,
899
942
  owner.cwd
900
943
  ),
901
- hmrUrl: `ws://localhost:${port}/hot`,
944
+ hmrUrl: `${buildLoopbackProbeBaseUrl("ws:", probeHostname, port)}/hot`,
902
945
  lastSeen: Date.now(),
903
946
  patched: true,
904
947
  ...owner
@@ -913,7 +956,7 @@ async function probePort(port, buildIconProxyUrl, listeningProcess) {
913
956
  if (looksLikeMetroPackager) {
914
957
  return null;
915
958
  }
916
- const oneRes = await httpGet(port, onePath, "HEAD");
959
+ const oneRes = await httpGet(probeHostname, port, onePath, "HEAD");
917
960
  if (oneRes && oneRes.statusCode > 0 && oneRes.statusCode < 400 && /application\/javascript/i.test(oneRes.contentType || "")) {
918
961
  knownNonPatched.add(port);
919
962
  knownOne.add(port);
@@ -924,10 +967,10 @@ async function probePort(port, buildIconProxyUrl, listeningProcess) {
924
967
  framework: "one",
925
968
  bundleUrl: withRuntimeConfig(
926
969
  port,
927
- `http://localhost:${port}${onePath}&minify=false`,
970
+ `${buildLoopbackProbeBaseUrl("http:", probeHostname, port)}${onePath}&minify=false`,
928
971
  owner.cwd
929
972
  ),
930
- hmrUrl: `ws://localhost:${port}/hot`,
973
+ hmrUrl: `${buildLoopbackProbeBaseUrl("ws:", probeHostname, port)}/hot`,
931
974
  lastSeen: Date.now(),
932
975
  ...owner
933
976
  },
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __create = Object.create;
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __defProp = Object.defineProperty;
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
 
3
3
  // src/host/fetch-proxy-overrides.ts
4
4
  var FETCH_PROXY_BROWSER_USER_AGENT = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36";
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __create = Object.create;
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __defProp = Object.defineProperty;
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __create = Object.create;
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __defProp = Object.defineProperty;
package/dist-lib/menu.cjs CHANGED
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __defProp = Object.defineProperty;
package/dist-lib/menu.mjs CHANGED
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
 
3
3
  // src/public-brand.ts
4
4
  var name = "rnx";
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __defProp = Object.defineProperty;
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
 
3
3
  // src/metro-production-bundle.ts
4
4
  var RNXSIM_METRO_PRODUCTION_BUNDLE_OPTION = "rnxsim";
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __create = Object.create;
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __create = Object.create;
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __defProp = Object.defineProperty;
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __defProp = Object.defineProperty;
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
 
3
3
  // src/react-native-host-modules.ts
4
4
  var REACT_NATIVE_PASSTHROUGH_SPECIFIERS = [
@@ -1,4 +1,4 @@
1
- /*! rnx v0.1.345 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
1
+ /*! rnx v0.1.347 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
2
  let __sootsim_import_meta_url = ''; try { __sootsim_import_meta_url = require('url').pathToFileURL(__filename).href; } catch {}
3
3
  "use strict";
4
4
  var __defProp = Object.defineProperty;