vxrn 1.25.5 → 1.25.7

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 (442) hide show
  1. package/dist/cli.mjs +288 -0
  2. package/dist/cli.mjs.map +1 -0
  3. package/dist/cli.native.js +292 -0
  4. package/dist/cli.native.js.map +1 -0
  5. package/dist/config/getAdditionalViteConfig.mjs +67 -0
  6. package/dist/config/getAdditionalViteConfig.mjs.map +1 -0
  7. package/dist/config/getAdditionalViteConfig.native.js +67 -0
  8. package/dist/config/getAdditionalViteConfig.native.js.map +1 -0
  9. package/dist/config/getBaseViteConfigOnly.mjs +84 -0
  10. package/dist/config/getBaseViteConfigOnly.mjs.map +1 -0
  11. package/dist/config/getBaseViteConfigOnly.native.js +86 -0
  12. package/dist/config/getBaseViteConfigOnly.native.js.map +1 -0
  13. package/dist/config/getBaseViteConfigWithPlugins.mjs +10 -0
  14. package/dist/config/getBaseViteConfigWithPlugins.mjs.map +1 -0
  15. package/dist/config/getBaseViteConfigWithPlugins.native.js +10 -0
  16. package/dist/config/getBaseViteConfigWithPlugins.native.js.map +1 -0
  17. package/dist/config/getBaseVitePlugins.mjs +141 -0
  18. package/dist/config/getBaseVitePlugins.mjs.map +1 -0
  19. package/dist/config/getBaseVitePlugins.native.js +163 -0
  20. package/dist/config/getBaseVitePlugins.native.js.map +1 -0
  21. package/dist/config/getNonCliModeOnlyVitePlugins.mjs +8 -0
  22. package/dist/config/getNonCliModeOnlyVitePlugins.mjs.map +1 -0
  23. package/dist/config/getNonCliModeOnlyVitePlugins.native.js +6 -0
  24. package/dist/config/getNonCliModeOnlyVitePlugins.native.js.map +1 -0
  25. package/dist/config/getOptimizeDeps.mjs +47 -0
  26. package/dist/config/getOptimizeDeps.mjs.map +1 -0
  27. package/dist/config/getOptimizeDeps.native.js +47 -0
  28. package/dist/config/getOptimizeDeps.native.js.map +1 -0
  29. package/dist/config/getOptimizeDeps.test.mjs +20 -0
  30. package/dist/config/getOptimizeDeps.test.mjs.map +1 -0
  31. package/dist/config/getOptimizeDeps.test.native.js +39 -0
  32. package/dist/config/getOptimizeDeps.test.native.js.map +1 -0
  33. package/dist/config/getOptionsFilled.mjs +69 -0
  34. package/dist/config/getOptionsFilled.mjs.map +1 -0
  35. package/dist/config/getOptionsFilled.native.js +73 -0
  36. package/dist/config/getOptionsFilled.native.js.map +1 -0
  37. package/dist/config/getReactNativePlugins.mjs +23 -0
  38. package/dist/config/getReactNativePlugins.mjs.map +1 -0
  39. package/dist/config/getReactNativePlugins.native.js +25 -0
  40. package/dist/config/getReactNativePlugins.native.js.map +1 -0
  41. package/dist/config/getServerOptionsFilled.mjs +40 -0
  42. package/dist/config/getServerOptionsFilled.mjs.map +1 -0
  43. package/dist/config/getServerOptionsFilled.native.js +43 -0
  44. package/dist/config/getServerOptionsFilled.native.js.map +1 -0
  45. package/dist/config/getServerOptionsFilled.test.mjs +20 -0
  46. package/dist/config/getServerOptionsFilled.test.mjs.map +1 -0
  47. package/dist/config/getServerOptionsFilled.test.native.js +20 -0
  48. package/dist/config/getServerOptionsFilled.test.native.js.map +1 -0
  49. package/dist/config/getViteServerConfig.mjs +51 -0
  50. package/dist/config/getViteServerConfig.mjs.map +1 -0
  51. package/dist/config/getViteServerConfig.native.js +52 -0
  52. package/dist/config/getViteServerConfig.native.js.map +1 -0
  53. package/dist/config/mergeUserConfig.mjs +37 -0
  54. package/dist/config/mergeUserConfig.mjs.map +1 -0
  55. package/dist/config/mergeUserConfig.native.js +47 -0
  56. package/dist/config/mergeUserConfig.native.js.map +1 -0
  57. package/dist/config/mergeUserConfig.test.mjs +108 -0
  58. package/dist/config/mergeUserConfig.test.mjs.map +1 -0
  59. package/dist/config/mergeUserConfig.test.native.js +108 -0
  60. package/dist/config/mergeUserConfig.test.native.js.map +1 -0
  61. package/dist/constants/defaults.mjs +15 -0
  62. package/dist/constants/defaults.mjs.map +1 -0
  63. package/dist/constants/defaults.native.js +15 -0
  64. package/dist/constants/defaults.native.js.map +1 -0
  65. package/dist/constants.mjs +10 -0
  66. package/dist/constants.mjs.map +1 -0
  67. package/dist/constants.native.js +10 -0
  68. package/dist/constants.native.js.map +1 -0
  69. package/dist/exports/build.mjs +294 -0
  70. package/dist/exports/build.mjs.map +1 -0
  71. package/dist/exports/build.native.js +307 -0
  72. package/dist/exports/build.native.js.map +1 -0
  73. package/dist/exports/clean.mjs +99 -0
  74. package/dist/exports/clean.mjs.map +1 -0
  75. package/dist/exports/clean.native.js +111 -0
  76. package/dist/exports/clean.native.js.map +1 -0
  77. package/dist/exports/clean.test.mjs +81 -0
  78. package/dist/exports/clean.test.mjs.map +1 -0
  79. package/dist/exports/clean.test.native.js +88 -0
  80. package/dist/exports/clean.test.native.js.map +1 -0
  81. package/dist/exports/createServer.mjs +56 -0
  82. package/dist/exports/createServer.mjs.map +1 -0
  83. package/dist/exports/createServer.native.js +57 -0
  84. package/dist/exports/createServer.native.js.map +1 -0
  85. package/dist/exports/dev.mjs +204 -0
  86. package/dist/exports/dev.mjs.map +1 -0
  87. package/dist/exports/dev.native.js +218 -0
  88. package/dist/exports/dev.native.js.map +1 -0
  89. package/dist/exports/loadEnv.mjs +65 -0
  90. package/dist/exports/loadEnv.mjs.map +1 -0
  91. package/dist/exports/loadEnv.native.js +74 -0
  92. package/dist/exports/loadEnv.native.js.map +1 -0
  93. package/dist/exports/loadEnv.test.mjs +65 -0
  94. package/dist/exports/loadEnv.test.mjs.map +1 -0
  95. package/dist/exports/loadEnv.test.native.js +65 -0
  96. package/dist/exports/loadEnv.test.native.js.map +1 -0
  97. package/dist/exports/patch.mjs +12 -0
  98. package/dist/exports/patch.mjs.map +1 -0
  99. package/dist/exports/patch.native.js +12 -0
  100. package/dist/exports/patch.native.js.map +1 -0
  101. package/dist/exports/prebuild.mjs +212 -0
  102. package/dist/exports/prebuild.mjs.map +1 -0
  103. package/dist/exports/prebuild.native.js +215 -0
  104. package/dist/exports/prebuild.native.js.map +1 -0
  105. package/dist/exports/prebuildWithoutExpo.mjs +53 -0
  106. package/dist/exports/prebuildWithoutExpo.mjs.map +1 -0
  107. package/dist/exports/prebuildWithoutExpo.native.js +54 -0
  108. package/dist/exports/prebuildWithoutExpo.native.js.map +1 -0
  109. package/dist/exports/runAndroid.mjs +14 -0
  110. package/dist/exports/runAndroid.mjs.map +1 -0
  111. package/dist/exports/runAndroid.native.js +15 -0
  112. package/dist/exports/runAndroid.native.js.map +1 -0
  113. package/dist/exports/runIos.mjs +14 -0
  114. package/dist/exports/runIos.mjs.map +1 -0
  115. package/dist/exports/runIos.native.js +15 -0
  116. package/dist/exports/runIos.native.js.map +1 -0
  117. package/dist/exports/serve.mjs +37 -0
  118. package/dist/exports/serve.mjs.map +1 -0
  119. package/dist/exports/serve.native.js +40 -0
  120. package/dist/exports/serve.native.js.map +1 -0
  121. package/dist/exports/serveStaticAssets.mjs +133 -0
  122. package/dist/exports/serveStaticAssets.mjs.map +1 -0
  123. package/dist/exports/serveStaticAssets.native.js +213 -0
  124. package/dist/exports/serveStaticAssets.native.js.map +1 -0
  125. package/dist/index.js +22 -0
  126. package/dist/index.js.map +1 -0
  127. package/dist/index.mjs +22 -0
  128. package/dist/index.mjs.map +1 -0
  129. package/dist/index.native.js +22 -0
  130. package/dist/index.native.js.map +1 -0
  131. package/dist/patches/builtInDepPatches.mjs +483 -0
  132. package/dist/patches/builtInDepPatches.mjs.map +1 -0
  133. package/dist/patches/builtInDepPatches.native.js +486 -0
  134. package/dist/patches/builtInDepPatches.native.js.map +1 -0
  135. package/dist/plugins/applyBuiltInPatchesPlugin.mjs +17 -0
  136. package/dist/plugins/applyBuiltInPatchesPlugin.mjs.map +1 -0
  137. package/dist/plugins/applyBuiltInPatchesPlugin.native.js +17 -0
  138. package/dist/plugins/applyBuiltInPatchesPlugin.native.js.map +1 -0
  139. package/dist/plugins/autoDepOptimizePlugin.mjs +108 -0
  140. package/dist/plugins/autoDepOptimizePlugin.mjs.map +1 -0
  141. package/dist/plugins/autoDepOptimizePlugin.native.js +121 -0
  142. package/dist/plugins/autoDepOptimizePlugin.native.js.map +1 -0
  143. package/dist/plugins/autoDepOptimizePlugin.test.mjs +31 -0
  144. package/dist/plugins/autoDepOptimizePlugin.test.mjs.map +1 -0
  145. package/dist/plugins/autoDepOptimizePlugin.test.native.js +39 -0
  146. package/dist/plugins/autoDepOptimizePlugin.test.native.js.map +1 -0
  147. package/dist/plugins/clientInjectPlugin.mjs +16 -0
  148. package/dist/plugins/clientInjectPlugin.mjs.map +1 -0
  149. package/dist/plugins/clientInjectPlugin.native.js +16 -0
  150. package/dist/plugins/clientInjectPlugin.native.js.map +1 -0
  151. package/dist/plugins/defaultDepOptimizePlugin.mjs +30 -0
  152. package/dist/plugins/defaultDepOptimizePlugin.mjs.map +1 -0
  153. package/dist/plugins/defaultDepOptimizePlugin.native.js +30 -0
  154. package/dist/plugins/defaultDepOptimizePlugin.native.js.map +1 -0
  155. package/dist/plugins/expoManifestRequestHandlerPlugin.mjs +189 -0
  156. package/dist/plugins/expoManifestRequestHandlerPlugin.mjs.map +1 -0
  157. package/dist/plugins/expoManifestRequestHandlerPlugin.native.js +202 -0
  158. package/dist/plugins/expoManifestRequestHandlerPlugin.native.js.map +1 -0
  159. package/dist/plugins/getResolvedConfigSubset.mjs +12 -0
  160. package/dist/plugins/getResolvedConfigSubset.mjs.map +1 -0
  161. package/dist/plugins/getResolvedConfigSubset.native.js +12 -0
  162. package/dist/plugins/getResolvedConfigSubset.native.js.map +1 -0
  163. package/dist/plugins/reactNativeCommonJsPlugin.mjs +194 -0
  164. package/dist/plugins/reactNativeCommonJsPlugin.mjs.map +1 -0
  165. package/dist/plugins/reactNativeCommonJsPlugin.native.js +275 -0
  166. package/dist/plugins/reactNativeCommonJsPlugin.native.js.map +1 -0
  167. package/dist/plugins/reactNativeDevAssetPlugin.mjs +99 -0
  168. package/dist/plugins/reactNativeDevAssetPlugin.mjs.map +1 -0
  169. package/dist/plugins/reactNativeDevAssetPlugin.native.js +108 -0
  170. package/dist/plugins/reactNativeDevAssetPlugin.native.js.map +1 -0
  171. package/dist/plugins/reactNativeDevServer.mjs +221 -0
  172. package/dist/plugins/reactNativeDevServer.mjs.map +1 -0
  173. package/dist/plugins/reactNativeDevServer.native.js +263 -0
  174. package/dist/plugins/reactNativeDevServer.native.js.map +1 -0
  175. package/dist/plugins/resolveIdScan.test.mjs +31 -0
  176. package/dist/plugins/resolveIdScan.test.mjs.map +1 -0
  177. package/dist/plugins/resolveIdScan.test.native.js +38 -0
  178. package/dist/plugins/resolveIdScan.test.native.js.map +1 -0
  179. package/dist/plugins/rollupRemoveUnusedImports.mjs +11 -0
  180. package/dist/plugins/rollupRemoveUnusedImports.mjs.map +1 -0
  181. package/dist/plugins/rollupRemoveUnusedImports.native.js +11 -0
  182. package/dist/plugins/rollupRemoveUnusedImports.native.js.map +1 -0
  183. package/dist/plugins/serverExtensions.test.mjs +106 -0
  184. package/dist/plugins/serverExtensions.test.mjs.map +1 -0
  185. package/dist/plugins/serverExtensions.test.native.js +117 -0
  186. package/dist/plugins/serverExtensions.test.native.js.map +1 -0
  187. package/dist/rn-commands/bundle/buildBundle.mjs +68 -0
  188. package/dist/rn-commands/bundle/buildBundle.mjs.map +1 -0
  189. package/dist/rn-commands/bundle/buildBundle.native.js +75 -0
  190. package/dist/rn-commands/bundle/buildBundle.native.js.map +1 -0
  191. package/dist/runtime/hmr-client.mjs +145 -0
  192. package/dist/runtime/hmr-client.mjs.map +1 -0
  193. package/dist/runtime/hmr-client.native.js +237 -0
  194. package/dist/runtime/hmr-client.native.js.map +1 -0
  195. package/dist/runtime/hmr-runtime.mjs +200 -0
  196. package/dist/runtime/hmr-runtime.mjs.map +1 -0
  197. package/dist/runtime/hmr-runtime.native.js +441 -0
  198. package/dist/runtime/hmr-runtime.native.js.map +1 -0
  199. package/dist/runtime/hmr-types.mjs +2 -0
  200. package/dist/runtime/hmr-types.mjs.map +1 -0
  201. package/dist/runtime/hmr-types.native.js +2 -0
  202. package/dist/runtime/hmr-types.native.js.map +1 -0
  203. package/dist/runtime/native-prelude.mjs +94 -0
  204. package/dist/runtime/native-prelude.mjs.map +1 -0
  205. package/dist/runtime/native-prelude.native.js +94 -0
  206. package/dist/runtime/native-prelude.native.js.map +1 -0
  207. package/dist/runtime/react-refresh-utils.mjs +29 -0
  208. package/dist/runtime/react-refresh-utils.mjs.map +1 -0
  209. package/dist/runtime/react-refresh-utils.native.js +34 -0
  210. package/dist/runtime/react-refresh-utils.native.js.map +1 -0
  211. package/dist/serve/node.mjs +62 -0
  212. package/dist/serve/node.mjs.map +1 -0
  213. package/dist/serve/node.native.js +107 -0
  214. package/dist/serve/node.native.js.map +1 -0
  215. package/dist/serve/node.test.mjs +60 -0
  216. package/dist/serve/node.test.mjs.map +1 -0
  217. package/dist/serve/node.test.native.js +72 -0
  218. package/dist/serve/node.test.native.js.map +1 -0
  219. package/dist/types.mjs +2 -0
  220. package/dist/types.mjs.map +1 -0
  221. package/dist/types.native.js +2 -0
  222. package/dist/types.native.js.map +1 -0
  223. package/dist/user-interface/index.mjs +312 -0
  224. package/dist/user-interface/index.mjs.map +1 -0
  225. package/dist/user-interface/index.native.js +349 -0
  226. package/dist/user-interface/index.native.js.map +1 -0
  227. package/dist/utils/assert.mjs +12 -0
  228. package/dist/utils/assert.mjs.map +1 -0
  229. package/dist/utils/assert.native.js +24 -0
  230. package/dist/utils/assert.native.js.map +1 -0
  231. package/dist/utils/bindKeypressInput.mjs +47 -0
  232. package/dist/utils/bindKeypressInput.mjs.map +1 -0
  233. package/dist/utils/bindKeypressInput.native.js +47 -0
  234. package/dist/utils/bindKeypressInput.native.js.map +1 -0
  235. package/dist/utils/bindKeypressInput.test.mjs +48 -0
  236. package/dist/utils/bindKeypressInput.test.mjs.map +1 -0
  237. package/dist/utils/bindKeypressInput.test.native.js +48 -0
  238. package/dist/utils/bindKeypressInput.test.native.js.map +1 -0
  239. package/dist/utils/coerceToArray.mjs +5 -0
  240. package/dist/utils/coerceToArray.mjs.map +1 -0
  241. package/dist/utils/coerceToArray.native.js +5 -0
  242. package/dist/utils/coerceToArray.native.js.map +1 -0
  243. package/dist/utils/connectedNativeClients.mjs +9 -0
  244. package/dist/utils/connectedNativeClients.mjs.map +1 -0
  245. package/dist/utils/connectedNativeClients.native.js +9 -0
  246. package/dist/utils/connectedNativeClients.native.js.map +1 -0
  247. package/dist/utils/createNativeDevEngine.mjs +939 -0
  248. package/dist/utils/createNativeDevEngine.mjs.map +1 -0
  249. package/dist/utils/createNativeDevEngine.native.js +999 -0
  250. package/dist/utils/createNativeDevEngine.native.js.map +1 -0
  251. package/dist/utils/createNativeDevEngine.test.mjs +169 -0
  252. package/dist/utils/createNativeDevEngine.test.mjs.map +1 -0
  253. package/dist/utils/createNativeDevEngine.test.native.js +203 -0
  254. package/dist/utils/createNativeDevEngine.test.native.js.map +1 -0
  255. package/dist/utils/dispose.mjs +9 -0
  256. package/dist/utils/dispose.mjs.map +1 -0
  257. package/dist/utils/dispose.native.js +11 -0
  258. package/dist/utils/dispose.native.js.map +1 -0
  259. package/dist/utils/environmentUtils.mjs +14 -0
  260. package/dist/utils/environmentUtils.mjs.map +1 -0
  261. package/dist/utils/environmentUtils.native.js +14 -0
  262. package/dist/utils/environmentUtils.native.js.map +1 -0
  263. package/dist/utils/execSync.mjs +9 -0
  264. package/dist/utils/execSync.mjs.map +1 -0
  265. package/dist/utils/execSync.native.js +9 -0
  266. package/dist/utils/execSync.native.js.map +1 -0
  267. package/dist/utils/expoRun.mjs +48 -0
  268. package/dist/utils/expoRun.mjs.map +1 -0
  269. package/dist/utils/expoRun.native.js +49 -0
  270. package/dist/utils/expoRun.native.js.map +1 -0
  271. package/dist/utils/filterViteServerResolvedUrls.mjs +29 -0
  272. package/dist/utils/filterViteServerResolvedUrls.mjs.map +1 -0
  273. package/dist/utils/filterViteServerResolvedUrls.native.js +70 -0
  274. package/dist/utils/filterViteServerResolvedUrls.native.js.map +1 -0
  275. package/dist/utils/getBoundPort.mjs +9 -0
  276. package/dist/utils/getBoundPort.mjs.map +1 -0
  277. package/dist/utils/getBoundPort.native.js +16 -0
  278. package/dist/utils/getBoundPort.native.js.map +1 -0
  279. package/dist/utils/getBoundPort.test.mjs +71 -0
  280. package/dist/utils/getBoundPort.test.mjs.map +1 -0
  281. package/dist/utils/getBoundPort.test.native.js +82 -0
  282. package/dist/utils/getBoundPort.test.native.js.map +1 -0
  283. package/dist/utils/getCacheDir.mjs +6 -0
  284. package/dist/utils/getCacheDir.mjs.map +1 -0
  285. package/dist/utils/getCacheDir.native.js +6 -0
  286. package/dist/utils/getCacheDir.native.js.map +1 -0
  287. package/dist/utils/getServerEntry.mjs +10 -0
  288. package/dist/utils/getServerEntry.mjs.map +1 -0
  289. package/dist/utils/getServerEntry.native.js +17 -0
  290. package/dist/utils/getServerEntry.native.js.map +1 -0
  291. package/dist/utils/getVitePath.mjs +49 -0
  292. package/dist/utils/getVitePath.mjs.map +1 -0
  293. package/dist/utils/getVitePath.native.js +48 -0
  294. package/dist/utils/getVitePath.native.js.map +1 -0
  295. package/dist/utils/globDir.mjs +18 -0
  296. package/dist/utils/globDir.mjs.map +1 -0
  297. package/dist/utils/globDir.native.js +21 -0
  298. package/dist/utils/globDir.native.js.map +1 -0
  299. package/dist/utils/imageSizePatch.test.mjs +29 -0
  300. package/dist/utils/imageSizePatch.test.mjs.map +1 -0
  301. package/dist/utils/imageSizePatch.test.native.js +30 -0
  302. package/dist/utils/imageSizePatch.test.native.js.map +1 -0
  303. package/dist/utils/isWithin.mjs +7 -0
  304. package/dist/utils/isWithin.mjs.map +1 -0
  305. package/dist/utils/isWithin.native.js +7 -0
  306. package/dist/utils/isWithin.native.js.map +1 -0
  307. package/dist/utils/patches.mjs +279 -0
  308. package/dist/utils/patches.mjs.map +1 -0
  309. package/dist/utils/patches.native.js +508 -0
  310. package/dist/utils/patches.native.js.map +1 -0
  311. package/dist/utils/patches.test.mjs +214 -0
  312. package/dist/utils/patches.test.mjs.map +1 -0
  313. package/dist/utils/patches.test.native.js +224 -0
  314. package/dist/utils/patches.test.native.js.map +1 -0
  315. package/dist/utils/printServerUrls.mjs +12 -0
  316. package/dist/utils/printServerUrls.mjs.map +1 -0
  317. package/dist/utils/printServerUrls.native.js +56 -0
  318. package/dist/utils/printServerUrls.native.js.map +1 -0
  319. package/dist/utils/removeUndefined.mjs +11 -0
  320. package/dist/utils/removeUndefined.mjs.map +1 -0
  321. package/dist/utils/removeUndefined.native.js +11 -0
  322. package/dist/utils/removeUndefined.native.js.map +1 -0
  323. package/dist/utils/scanDepsToOptimize.mjs +176 -0
  324. package/dist/utils/scanDepsToOptimize.mjs.map +1 -0
  325. package/dist/utils/scanDepsToOptimize.native.js +212 -0
  326. package/dist/utils/scanDepsToOptimize.native.js.map +1 -0
  327. package/dist/utils/state.mjs +28 -0
  328. package/dist/utils/state.mjs.map +1 -0
  329. package/dist/utils/state.native.js +28 -0
  330. package/dist/utils/state.native.js.map +1 -0
  331. package/dist/utils/uniq.mjs +5 -0
  332. package/dist/utils/uniq.mjs.map +1 -0
  333. package/dist/utils/uniq.native.js +5 -0
  334. package/dist/utils/uniq.native.js.map +1 -0
  335. package/dist/utils/utils.mjs +32 -0
  336. package/dist/utils/utils.mjs.map +1 -0
  337. package/dist/utils/utils.native.js +53 -0
  338. package/dist/utils/utils.native.js.map +1 -0
  339. package/dist/vendor/debugger-app/index.mjs +2 -0
  340. package/dist/vendor/debugger-app/index.mjs.map +1 -0
  341. package/dist/vendor/debugger-app/index.native.js +2 -0
  342. package/dist/vendor/debugger-app/index.native.js.map +1 -0
  343. package/dist/vendor/debugger-app/src/debuggerWorker.mjs +2 -0
  344. package/dist/vendor/debugger-app/src/debuggerWorker.mjs.map +1 -0
  345. package/dist/vendor/debugger-app/src/debuggerWorker.native.js +2 -0
  346. package/dist/vendor/debugger-app/src/debuggerWorker.native.js.map +1 -0
  347. package/dist/vendor/debugger-app/src/index.css +41 -0
  348. package/dist/vendor/debugger-app/src/index.css.map +6 -0
  349. package/dist/vendor/debugger-app/src/index.mjs +2 -0
  350. package/dist/vendor/debugger-app/src/index.mjs.map +1 -0
  351. package/dist/vendor/debugger-app/src/index.native.js +2 -0
  352. package/dist/vendor/debugger-app/src/index.native.js.map +1 -0
  353. package/dist/vxrn-vite-plugin.mjs +44 -0
  354. package/dist/vxrn-vite-plugin.mjs.map +1 -0
  355. package/dist/vxrn-vite-plugin.native.js +45 -0
  356. package/dist/vxrn-vite-plugin.native.js.map +1 -0
  357. package/package.json +11 -11
  358. package/types/cli.d.ts.map +1 -0
  359. package/types/config/getAdditionalViteConfig.d.ts.map +1 -0
  360. package/types/config/getBaseViteConfigOnly.d.ts.map +1 -0
  361. package/types/config/getBaseViteConfigWithPlugins.d.ts.map +1 -0
  362. package/types/config/getBaseVitePlugins.d.ts.map +1 -0
  363. package/types/config/getNonCliModeOnlyVitePlugins.d.ts.map +1 -0
  364. package/types/config/getOptimizeDeps.d.ts.map +1 -0
  365. package/types/config/getOptimizeDeps.test.d.ts.map +1 -0
  366. package/types/config/getOptionsFilled.d.ts.map +1 -0
  367. package/types/config/getReactNativePlugins.d.ts.map +1 -0
  368. package/types/config/getServerOptionsFilled.d.ts.map +1 -0
  369. package/types/config/getServerOptionsFilled.test.d.ts.map +1 -0
  370. package/types/config/getViteServerConfig.d.ts.map +1 -0
  371. package/types/config/mergeUserConfig.d.ts.map +1 -0
  372. package/types/config/mergeUserConfig.test.d.ts.map +1 -0
  373. package/types/constants/defaults.d.ts.map +1 -0
  374. package/types/constants.d.ts.map +1 -0
  375. package/types/exports/build.d.ts.map +1 -0
  376. package/types/exports/clean.d.ts.map +1 -0
  377. package/types/exports/clean.test.d.ts.map +1 -0
  378. package/types/exports/createServer.d.ts.map +1 -0
  379. package/types/exports/dev.d.ts.map +1 -0
  380. package/types/exports/loadEnv.d.ts.map +1 -0
  381. package/types/exports/loadEnv.test.d.ts.map +1 -0
  382. package/types/exports/patch.d.ts.map +1 -0
  383. package/types/exports/prebuild.d.ts.map +1 -0
  384. package/types/exports/prebuildWithoutExpo.d.ts.map +1 -0
  385. package/types/exports/runAndroid.d.ts.map +1 -0
  386. package/types/exports/runIos.d.ts.map +1 -0
  387. package/types/exports/serve.d.ts.map +1 -0
  388. package/types/exports/serveStaticAssets.d.ts.map +1 -0
  389. package/types/index.d.ts.map +1 -0
  390. package/types/patches/builtInDepPatches.d.ts.map +1 -0
  391. package/types/plugins/applyBuiltInPatchesPlugin.d.ts.map +1 -0
  392. package/types/plugins/autoDepOptimizePlugin.d.ts.map +1 -0
  393. package/types/plugins/autoDepOptimizePlugin.test.d.ts.map +1 -0
  394. package/types/plugins/clientInjectPlugin.d.ts.map +1 -0
  395. package/types/plugins/defaultDepOptimizePlugin.d.ts.map +1 -0
  396. package/types/plugins/expoManifestRequestHandlerPlugin.d.ts.map +1 -0
  397. package/types/plugins/getResolvedConfigSubset.d.ts.map +1 -0
  398. package/types/plugins/reactNativeCommonJsPlugin.d.ts.map +1 -0
  399. package/types/plugins/reactNativeDevAssetPlugin.d.ts.map +1 -0
  400. package/types/plugins/reactNativeDevServer.d.ts.map +1 -0
  401. package/types/plugins/resolveIdScan.test.d.ts.map +1 -0
  402. package/types/plugins/rollupRemoveUnusedImports.d.ts.map +1 -0
  403. package/types/plugins/serverExtensions.test.d.ts.map +1 -0
  404. package/types/rn-commands/bundle/buildBundle.d.ts.map +1 -0
  405. package/types/runtime/hmr-client.d.ts.map +1 -0
  406. package/types/runtime/hmr-runtime.d.ts.map +1 -0
  407. package/types/runtime/hmr-types.d.ts.map +1 -0
  408. package/types/runtime/native-prelude.d.ts.map +1 -0
  409. package/types/runtime/react-refresh-utils.d.ts.map +1 -0
  410. package/types/serve/node.d.ts.map +1 -0
  411. package/types/serve/node.test.d.ts.map +1 -0
  412. package/types/types.d.ts.map +1 -0
  413. package/types/user-interface/index.d.ts.map +1 -0
  414. package/types/utils/assert.d.ts.map +1 -0
  415. package/types/utils/bindKeypressInput.d.ts.map +1 -0
  416. package/types/utils/bindKeypressInput.test.d.ts.map +1 -0
  417. package/types/utils/coerceToArray.d.ts.map +1 -0
  418. package/types/utils/connectedNativeClients.d.ts.map +1 -0
  419. package/types/utils/createNativeDevEngine.d.ts.map +1 -0
  420. package/types/utils/createNativeDevEngine.test.d.ts.map +1 -0
  421. package/types/utils/dispose.d.ts.map +1 -0
  422. package/types/utils/environmentUtils.d.ts.map +1 -0
  423. package/types/utils/execSync.d.ts.map +1 -0
  424. package/types/utils/expoRun.d.ts.map +1 -0
  425. package/types/utils/filterViteServerResolvedUrls.d.ts.map +1 -0
  426. package/types/utils/getBoundPort.d.ts.map +1 -0
  427. package/types/utils/getBoundPort.test.d.ts.map +1 -0
  428. package/types/utils/getCacheDir.d.ts.map +1 -0
  429. package/types/utils/getServerEntry.d.ts.map +1 -0
  430. package/types/utils/getVitePath.d.ts.map +1 -0
  431. package/types/utils/globDir.d.ts.map +1 -0
  432. package/types/utils/imageSizePatch.test.d.ts.map +1 -0
  433. package/types/utils/isWithin.d.ts.map +1 -0
  434. package/types/utils/patches.d.ts.map +1 -0
  435. package/types/utils/patches.test.d.ts.map +1 -0
  436. package/types/utils/printServerUrls.d.ts.map +1 -0
  437. package/types/utils/removeUndefined.d.ts.map +1 -0
  438. package/types/utils/scanDepsToOptimize.d.ts.map +1 -0
  439. package/types/utils/state.d.ts.map +1 -0
  440. package/types/utils/uniq.d.ts.map +1 -0
  441. package/types/utils/utils.d.ts.map +1 -0
  442. package/types/vxrn-vite-plugin.d.ts.map +1 -0
@@ -0,0 +1,486 @@
1
+ import { assertString } from "../utils/assert.native.js";
2
+ import { bailIfExists, bailIfUnchanged } from "../utils/patches.native.js";
3
+ var builtInDepPatches = [
4
+ // @react-navigation/core 7.17 renamed createComponentForStaticNavigation to
5
+ // createComponentForStaticConfigDeprecated, breaking @react-navigation/native
6
+ // which still imports the old name. re-export the old name as an alias.
7
+ {
8
+ module: "@react-navigation/core",
9
+ patchFiles: {
10
+ version: ">=7.17.0 <8.0.0",
11
+ "lib/module/index.js": function (contents) {
12
+ assertString(contents);
13
+ if (contents.includes("createComponentForStaticNavigation")) return;
14
+ if (!contents.includes("createComponentForStaticConfigDeprecated")) return;
15
+ return contents.replace(/export \{ createComponentForStaticConfigDeprecated as createComponentForStaticConfig,/, "export { createComponentForStaticConfigDeprecated as createComponentForStaticConfig, createComponentForStaticConfigDeprecated as createComponentForStaticNavigation,");
16
+ },
17
+ "lib/commonjs/index.js": function (contents) {
18
+ if (!contents) return;
19
+ if (contents.includes("createComponentForStaticNavigation")) return;
20
+ if (!contents.includes("createComponentForStaticConfigDeprecated")) return;
21
+ return contents.replace(/createComponentForStaticConfigDeprecated as createComponentForStaticConfig,/, "createComponentForStaticConfigDeprecated as createComponentForStaticConfig, createComponentForStaticConfigDeprecated as createComponentForStaticNavigation,");
22
+ }
23
+ }
24
+ },
25
+ // react-native-web doesn't export unstable_batchedUpdates but react-native does,
26
+ // so libraries like @legendapp/list break when aliased to rnw on web
27
+ {
28
+ module: "react-native-web",
29
+ patchFiles: {
30
+ "dist/index.js": function (contents) {
31
+ assertString(contents);
32
+ bailIfExists(contents, "unstable_batchedUpdates");
33
+ return `${contents}
34
+ export { unstable_batchedUpdates } from 'react-dom';
35
+ `;
36
+ }
37
+ }
38
+ }, {
39
+ module: "react",
40
+ patchFiles: {
41
+ version: "18.*",
42
+ "compiler-runtime.js": `module.exports = require('@vxrn/vendor/react-19-compiler-runtime');`,
43
+ "index.vxrn-web.js": `module.exports = require('@vxrn/vendor/react-19');`,
44
+ "jsx-dev-runtime.vxrn-web.js": `module.exports = require('@vxrn/vendor/react-jsx-dev-19');`,
45
+ "jsx-runtime.vxrn-web.js": `module.exports = require('@vxrn/vendor/react-jsx-19');`,
46
+ "package.json": function (contents) {
47
+ assertString(contents);
48
+ var pkg = JSON.parse(contents);
49
+ if (pkg.version.startsWith("19.")) {
50
+ return;
51
+ }
52
+ var existingExports = {
53
+ ...pkg.exports
54
+ };
55
+ if (!pkg.exports["."]) {
56
+ throw new Error(`Expected a version of React that has package.json exports defined`);
57
+ }
58
+ pkg.exports["."] = {
59
+ "react-server": "./react.shared-subset.js",
60
+ "vxrn-web": "./index.vxrn-web.js",
61
+ default: "./index.js"
62
+ };
63
+ pkg.exports["./jsx-runtime"] = {
64
+ "vxrn-web": "./jsx-runtime.vxrn-web.js",
65
+ default: "./jsx-runtime.js"
66
+ };
67
+ pkg.exports["./compiler-runtime"] = {
68
+ default: "./compiler-runtime.js"
69
+ };
70
+ pkg.exports["./jsx-dev-runtime"] = {
71
+ "vxrn-web": "./jsx-dev-runtime.vxrn-web.js",
72
+ default: "./jsx-dev-runtime.js"
73
+ };
74
+ bailIfUnchanged(existingExports, pkg.exports);
75
+ return JSON.stringify(pkg, null, 2);
76
+ },
77
+ // for prod builds we have to actually change the entries:
78
+ // to avoid terrible metro we have to eval :(
79
+ "index.js": function (contents) {
80
+ assertString(contents);
81
+ return `
82
+ if (process.env.VXRN_REACT_19) { Object.assign(exports, eval("require('@vxrn/vendor/react-19')")) } else {
83
+ ${contents}
84
+ }`;
85
+ },
86
+ // to avoid terrible metro we have to eval :(
87
+ "jsx-runtime.js": function (contents) {
88
+ assertString(contents);
89
+ return `
90
+ if (process.env.VXRN_REACT_19) { Object.assign(exports, eval("require('@vxrn/vendor/react-jsx-19')")) } else {
91
+ ${contents}
92
+ }`;
93
+ }
94
+ }
95
+ }, {
96
+ module: "react-dom",
97
+ patchFiles: {
98
+ version: "18.*",
99
+ // for prod builds we have to actually change the entries:
100
+ "index.js": function (contents) {
101
+ assertString(contents);
102
+ return `
103
+ if (process.env.VXRN_REACT_19) { Object.assign(exports, eval("require('@vxrn/vendor/react-dom-19')")) } else {
104
+ ${contents}
105
+ }`;
106
+ },
107
+ "client.js": function (contents) {
108
+ assertString(contents);
109
+ return `
110
+ if (process.env.VXRN_REACT_19) { Object.assign(exports, eval("require('@vxrn/vendor/react-dom-client-19')")) } else {
111
+ ${contents}
112
+ }`;
113
+ },
114
+ "server.browser.js": function (contents) {
115
+ assertString(contents);
116
+ return `
117
+ if (process.env.VXRN_REACT_19) { Object.assign(exports, require('@vxrn/vendor/react-dom-server.browser-19')) } else {
118
+ ${contents}
119
+ }`;
120
+ },
121
+ "client.vxrn-web.js": `module.exports = require('@vxrn/vendor/react-dom-client-19')`,
122
+ "index.vxrn-web.js": `module.exports = require('@vxrn/vendor/react-dom-19')`,
123
+ "server.browser.vxrn-web.js": `module.exports = require('@vxrn/vendor/react-dom-server.browser-19')`,
124
+ "test-utils.vxrn-web.js": `module.exports = require('@vxrn/vendor/react-dom-test-utils-19')`,
125
+ "package.json": function (contents) {
126
+ assertString(contents);
127
+ var pkg = JSON.parse(contents);
128
+ if (pkg.version.startsWith("19.")) {
129
+ return;
130
+ }
131
+ var existingExports = {
132
+ ...pkg.exports
133
+ };
134
+ if (!pkg.exports["."]) {
135
+ throw new Error(`Expected a version of React that has package.json exports defined`);
136
+ }
137
+ pkg.exports["."] = {
138
+ "vxrn-web": "./index.vxrn-web.js",
139
+ default: "./index.js"
140
+ };
141
+ pkg.exports["./client"] = {
142
+ "vxrn-web": "./client.vxrn-web.js",
143
+ default: "./client.js"
144
+ };
145
+ pkg.exports["./server.browser"] = {
146
+ "vxrn-web": "./server.browser.vxrn-web.js",
147
+ default: "./server.browser.js"
148
+ };
149
+ pkg.exports["./test-utils"] = {
150
+ "vxrn-web": "./test-utils.vxrn-web.js",
151
+ default: "./test-utils.js"
152
+ };
153
+ bailIfUnchanged(existingExports, pkg.exports);
154
+ return JSON.stringify(pkg, null, 2);
155
+ }
156
+ }
157
+ },
158
+ // Older versions of the cli-config package will not look for `.cjs` files when loading the config. This isn't necessary for v14.x (which comes with RN 0.75). See: https://hackmd.io/@z/SJghMPN6C.
159
+ {
160
+ module: "@react-native-community/cli-config",
161
+ patchFiles: {
162
+ version: ">=13.0.0 <16.0.0",
163
+ "build/readConfigFromDisk.js": function (contents) {
164
+ assertString(contents);
165
+ return contents.replace(`['react-native.config.js']`, `['react-native.config.js', 'react-native.config.cjs']`).replace("searchPlaces,", `searchPlaces, loaders: { '.cjs': _cosmiconfig().default.loadJs },`).replace("stopDir: rootFolder,", `stopDir: rootFolder, loaders: { '.cjs': _cosmiconfig().default.loadJs },`);
166
+ }
167
+ }
168
+ }, {
169
+ module: "react-native-reanimated",
170
+ patchFiles: {
171
+ // reanimated 4 ships no JSX in its `.js`. Measured against 4.5.1: all 374
172
+ // files parse with SWC at `jsx: false`, and the only JSX-shaped text is
173
+ // inside comments. The transform still rewrote and reformatted every one
174
+ // of them, which is how a patch aimed at reanimated ended up re-printing
175
+ // its nested `semver` and giving one package@version two contents on
176
+ // disk. Left in place below 4 rather than deleted, because we verified 4
177
+ // and not the 3.x line.
178
+ version: "<4.0.0",
179
+ "**/*.js": ["jsx"]
180
+ }
181
+ },
182
+ // fix RNGH crash on RN 0.81+ new architecture
183
+ // getShadowNodeFromRef crashes when findHostInstance_DEPRECATED returns null
184
+ {
185
+ module: "react-native-gesture-handler",
186
+ patchFiles: {
187
+ // no upper bound. this was capped at 2.30.0, but 2.32.0 still ships the
188
+ // exact unsafe line in all three targets, so the cap silently dropped the
189
+ // crash guard rather than retiring it. each replacement is a no-op when
190
+ // its target is absent, so an uncapped range retires itself.
191
+ version: ">=2.0.0",
192
+ "lib/module/getShadowNodeFromRef.js": function (contents) {
193
+ return contents === null || contents === void 0 ? void 0 : contents.replace(`return getInternalInstanceHandleFromPublicInstance(findHostInstance_DEPRECATED(ref)).stateNode.node;`, `const hostInstance = findHostInstance_DEPRECATED(ref);
194
+ if (hostInstance === null || hostInstance === undefined) {
195
+ return null;
196
+ }
197
+ const internalHandle = getInternalInstanceHandleFromPublicInstance(hostInstance);
198
+ if (internalHandle === null || internalHandle === undefined) {
199
+ return null;
200
+ }
201
+ return internalHandle.stateNode?.node ?? null;`);
202
+ },
203
+ "lib/commonjs/getShadowNodeFromRef.js": function (contents) {
204
+ return contents === null || contents === void 0 ? void 0 : contents.replace(`return getInternalInstanceHandleFromPublicInstance(findHostInstance_DEPRECATED(ref)).stateNode.node;`, `const hostInstance = findHostInstance_DEPRECATED(ref);
205
+ if (hostInstance === null || hostInstance === undefined) {
206
+ return null;
207
+ }
208
+ const internalHandle = getInternalInstanceHandleFromPublicInstance(hostInstance);
209
+ if (internalHandle === null || internalHandle === undefined) {
210
+ return null;
211
+ }
212
+ return internalHandle.stateNode?.node ?? null;`);
213
+ },
214
+ // metro uses src/ directly via "react-native" field in package.json
215
+ "src/getShadowNodeFromRef.ts": function (contents) {
216
+ return contents === null || contents === void 0 ? void 0 : contents.replace(`return getInternalInstanceHandleFromPublicInstance(
217
+ findHostInstance_DEPRECATED(ref)
218
+ ).stateNode.node;`, `const hostInstance = findHostInstance_DEPRECATED(ref);
219
+ if (hostInstance === null || hostInstance === undefined) {
220
+ return null;
221
+ }
222
+ const internalHandle = getInternalInstanceHandleFromPublicInstance(hostInstance);
223
+ if (internalHandle === null || internalHandle === undefined) {
224
+ return null;
225
+ }
226
+ return internalHandle.stateNode?.node ?? null;`);
227
+ }
228
+ }
229
+ }, {
230
+ module: "@react-native-masked-view/masked-view",
231
+ patchFiles: {
232
+ "**/*.js": ["flow", "swc"]
233
+ }
234
+ }, {
235
+ module: "react-native-vector-icons",
236
+ patchFiles: {
237
+ "**/*.js": ["jsx", "flow"]
238
+ }
239
+ }, {
240
+ module: "react-native-webview",
241
+ patchFiles: {
242
+ "**/*.js": ["jsx"]
243
+ }
244
+ }, {
245
+ module: "@react-native/assets-registry",
246
+ patchFiles: {
247
+ "**/*.js": ["flow"]
248
+ }
249
+ }, {
250
+ module: "expo",
251
+ patchFiles: {
252
+ "build/**/*.js": ["jsx"]
253
+ }
254
+ }, {
255
+ module: "expo",
256
+ patchFiles: {
257
+ version: ">=52.0.0 <56.0.0",
258
+ "src/winter/runtime.native.ts": function (contents) {
259
+ assertString(contents);
260
+ return contents.replace(`
261
+ // https://encoding.spec.whatwg.org/#textdecoder
262
+ install('TextDecoder', () => require('./TextDecoder').TextDecoder);
263
+ // https://url.spec.whatwg.org/#url
264
+ install('URL', () => require('./url').URL);
265
+ // https://url.spec.whatwg.org/#urlsearchparams
266
+ install('URLSearchParams', () => require('./url').URLSearchParams);
267
+ `.trim(), `
268
+ import { TextDecoder } from './TextDecoder';
269
+ import { URL } from './url';
270
+ import { URLSearchParams } from './url';
271
+
272
+ // https://encoding.spec.whatwg.org/#textdecoder
273
+ install('TextDecoder', () => TextDecoder);
274
+ // https://url.spec.whatwg.org/#url
275
+ install('URL', () => URL);
276
+ // https://url.spec.whatwg.org/#urlsearchparams
277
+ install('URLSearchParams', () => URLSearchParams);
278
+ `.trim());
279
+ }
280
+ }
281
+ }, {
282
+ module: "expo-modules-core",
283
+ patchFiles: {
284
+ version: "<=55.*",
285
+ "src/**/*.ts": addNoCheck,
286
+ "src/**/*.tsx": addNoCheck
287
+ }
288
+ }, {
289
+ module: "@expo/cli",
290
+ patchFiles: {
291
+ version: "<=55",
292
+ "build/src/export/embed/exportEmbedAsync.js": function (contents) {
293
+ return contents === null || contents === void 0 ? void 0 : contents.replace("exportEmbedAsync(projectRoot, options) {", 'exportEmbedAsync(projectRoot, options) { console.warn("[one] skipping expo export:embed since it will not work properly, we just let the JS bundle build during the native build process where VxRN has control"); return;');
294
+ }
295
+ }
296
+ }, {
297
+ module: "expo-liquid-glass-view",
298
+ patchFiles: {
299
+ "build/**/*.js": ["jsx"]
300
+ }
301
+ }, {
302
+ module: "expo-ios-popover-tip",
303
+ patchFiles: {
304
+ "build/**/*.js": ["jsx"]
305
+ }
306
+ }, {
307
+ module: "expo-ios-text-animations",
308
+ patchFiles: {
309
+ "build/**/*.js": ["jsx"]
310
+ }
311
+ }, {
312
+ module: "expo-ios-mesh-gradient",
313
+ patchFiles: {
314
+ "build/**/*.js": ["jsx"]
315
+ }
316
+ }, {
317
+ module: "expo-glass-effect",
318
+ patchFiles: {
319
+ "build/**/*.js": ["jsx"]
320
+ }
321
+ }, {
322
+ module: "@expo/ui",
323
+ patchFiles: {
324
+ "build/**/*.js": ["jsx"]
325
+ }
326
+ }, {
327
+ module: "expo-image",
328
+ patchFiles: {
329
+ "build/**/*.js": ["jsx"]
330
+ }
331
+ }, {
332
+ module: "expo-linear-gradient",
333
+ patchFiles: {
334
+ "build/**/*.js": ["jsx"]
335
+ }
336
+ }, {
337
+ module: "expo-apple-authentication",
338
+ patchFiles: {
339
+ "build/**/*.js": ["jsx"]
340
+ }
341
+ }, {
342
+ module: "react-native-css-interop",
343
+ patchFiles: {
344
+ // 2 of 53 dist files genuinely need JSX parsing, so this one is real.
345
+ //
346
+ // Two sibling patches were removed here, both dead. A `wrap-jsx.js` entry
347
+ // tried to hoist `require("./components")` out of the function so
348
+ // cssInterop registration runs, but `patches.ts` selects with
349
+ // `filePatches.find(relativePath)` and `dist/**/*.js` is declared first,
350
+ // so the glob shadowed it and the hoist never executed once: the patched
351
+ // file on disk still has the require inside the function. A `package.json`
352
+ // entry set `sideEffects` to keep components.js from being tree-shaken,
353
+ // and 0.2.6 already ships exactly that value.
354
+ //
355
+ // So nativewind registration has never actually been hoisted by this
356
+ // patch. Anyone deciding whether to keep the CSS-on-native path should
357
+ // start from that, not from the assumption that it works today.
358
+ "dist/**/*.js": ["jsx"]
359
+ }
360
+ }, {
361
+ module: "expo-video",
362
+ patchFiles: {
363
+ "build/index.js": function (contents) {
364
+ return contents === null || contents === void 0 ? void 0 : contents.replace(`export { VideoThumbnail } from './VideoThumbnail';`, ``);
365
+ },
366
+ "build/**/*.js": ["jsx"]
367
+ }
368
+ }, {
369
+ module: "expo-clipboard",
370
+ patchFiles: {
371
+ "build/**/*.js": ["jsx"]
372
+ }
373
+ }, {
374
+ module: "@expo/vector-icons",
375
+ patchFiles: {
376
+ "build/**/*.js": ["jsx"]
377
+ }
378
+ }, {
379
+ module: "@sentry/react-native",
380
+ patchFiles: {
381
+ version: ">=5.6.0",
382
+ "dist/**/*.js": ["jsx"]
383
+ }
384
+ }, {
385
+ module: "@sentry/react-native",
386
+ patchFiles: {
387
+ version: ">=5.0.0 <5.6.0",
388
+ "dist/js/utils/environment.js": function (contents) {
389
+ assertString(contents);
390
+ return contents.replace(`import { version as RNV } from 'react-native/Libraries/Core/ReactNativeVersion';`, `import { Platform } from 'react-native';
391
+ const RNV = Platform.constants.reactNativeVersion;
392
+ `);
393
+ },
394
+ "dist/**/*.js": ["jsx"]
395
+ }
396
+ }, {
397
+ module: "qrcode",
398
+ patchFiles: {
399
+ version: "<=1.5.1",
400
+ "lib/server.js": function (contents) {
401
+ assertString(contents);
402
+ return contents.replace(`const TerminalRenderer = require('./renderer/terminal')`, `const TerminalRenderer = require('./renderer/terminal.js')`);
403
+ }
404
+ }
405
+ }, {
406
+ module: "expo-camera",
407
+ patchFiles: {
408
+ "**/*.js": ["jsx"]
409
+ }
410
+ }, {
411
+ module: "expo-blur",
412
+ patchFiles: {
413
+ "**/*.js": ["jsx"]
414
+ }
415
+ }, {
416
+ module: "expo-asset",
417
+ patchFiles: {
418
+ // Fix: expo-asset re-exports from react-native but RN uses properties on default export, not named exports
419
+ // This patch explicitly re-exports the functions so they're available as named exports
420
+ "build/resolveAssetSource.native.js": function (contents) {
421
+ assertString(contents);
422
+ return contents.replace(`export * from 'react-native/Libraries/Image/resolveAssetSource';`, `export const pickScale = resolveAssetSource.pickScale;
423
+ export const setCustomSourceTransformer = resolveAssetSource.setCustomSourceTransformer;
424
+ export const addCustomSourceTransformer = resolveAssetSource.addCustomSourceTransformer;`);
425
+ }
426
+ }
427
+ }, {
428
+ module: "whatwg-url-without-unicode",
429
+ // https://github.com/onejs/one/issues/258
430
+ patchFiles: {
431
+ "**/*.js": function (contents) {
432
+ var _contents_replace;
433
+ return contents === null || contents === void 0 ? void 0 : (_contents_replace = contents.replace(/punycode\.ucs2\.decode/gm, "(punycode.ucs2decode || punycode.ucs2.decode)")) === null || _contents_replace === void 0 ? void 0 : _contents_replace.replace(/punycode\.ucs2\.encode/gm, "(punycode.ucs2encode || punycode.ucs2.encode)");
434
+ }
435
+ }
436
+ }, {
437
+ module: "@hot-updater/plugin-core",
438
+ patchFiles: {
439
+ version: "0.*",
440
+ "dist/index.cjs": function (contents) {
441
+ return contents === null || contents === void 0 ? void 0 : contents.replace('let mime = require("mime");', 'let mime = { getType: () => "application/octet-stream", getExtension: () => null };');
442
+ }
443
+ }
444
+ },
445
+ // a void TurboModule method that throws an Obj-C NSException crashes the app
446
+ // with a SIGSEGV: ObjCTurboModule::performVoidMethodInvocation converts it to
447
+ // a JS error (convertNSExceptionToJSError) on the TurboModule method queue,
448
+ // which touches the Hermes runtime off the JS thread and corrupts the
449
+ // single-threaded VM. only safe to build the JS error when the method runs
450
+ // sync (on the JS thread); otherwise log. mirrors the isSync guard added for
451
+ // value-returning methods in facebook/react-native#50193 (which never covered
452
+ // the void path). see tests/test/IOS_PROD_CRASH.md
453
+ {
454
+ module: "react-native",
455
+ patchFiles: {
456
+ version: ">=0.81.0",
457
+ "ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm": function (contents) {
458
+ if (!contents) return;
459
+ return contents.replace(` @try {
460
+ [inv invokeWithTarget:strongModule];
461
+ } @catch (NSException *exception) {
462
+ throw convertNSExceptionToJSError(runtime, exception, std::string{moduleName}, methodNameStr);
463
+ } @finally {`, ` @try {
464
+ [inv invokeWithTarget:strongModule];
465
+ } @catch (NSException *exception) {
466
+ if (shouldVoidMethodsExecuteSync_) {
467
+ // sync void methods run on the JS thread \u2014 safe to build the JS error.
468
+ throw convertNSExceptionToJSError(runtime, exception, std::string{moduleName}, methodNameStr);
469
+ } else {
470
+ // async void methods run on the TurboModule method queue; building a JS
471
+ // error here touches the Hermes runtime off the JS thread and corrupts
472
+ // the VM (SIGSEGV). there is no JS caller to receive it, so log instead.
473
+ RCTLogError(@"Exception in %s.%s: %@", moduleName, methodNameStr.c_str(), exception.reason);
474
+ }
475
+ } @finally {`);
476
+ }
477
+ }
478
+ }];
479
+ function addNoCheck(contents) {
480
+ if (!(contents === null || contents === void 0 ? void 0 : contents.includes("// @ts-nocheck"))) {
481
+ return `// @ts-nocheck
482
+ ${contents}`;
483
+ }
484
+ }
485
+ export { builtInDepPatches };
486
+ //# sourceMappingURL=builtInDepPatches.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["assertString","bailIfExists","bailIfUnchanged","builtInDepPatches","module","patchFiles","version","lib/module/index.js","contents","includes","replace","lib/commonjs/index.js","dist/index.js","package.json","pkg","JSON","parse","startsWith","existingExports","exports","Error","default","stringify","index.js","jsx-runtime.js","client.js","server.browser.js","build/readConfigFromDisk.js","lib/module/getShadowNodeFromRef.js","lib/commonjs/getShadowNodeFromRef.js","src/getShadowNodeFromRef.ts","src/winter/runtime.native.ts","trim","addNoCheck","build/src/export/embed/exportEmbedAsync.js","build/index.js","dist/js/utils/environment.js","lib/server.js","build/resolveAssetSource.native.js","**/*.js","_contents_replace","dist/index.cjs","ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm"],"sources":["../../src/patches/builtInDepPatches.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,17 @@
1
+ import { applyBuiltInPatches } from "../utils/patches.mjs";
2
+ function applyBuiltInPatchesPlugin() {
3
+ return {
4
+ name: "vxrn-applyBuiltInPatchesPlugin",
5
+ enforce: "pre",
6
+ async configResolved(config) {
7
+ await applyBuiltInPatches({
8
+ root: config.root
9
+ }).catch(err => {
10
+ console.error(`
11
+ \u{1F97A} error applying built-in patches`, err);
12
+ });
13
+ }
14
+ };
15
+ }
16
+ export { applyBuiltInPatchesPlugin };
17
+ //# sourceMappingURL=applyBuiltInPatchesPlugin.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["applyBuiltInPatches","applyBuiltInPatchesPlugin","name","enforce","configResolved","config","root","catch","err","console","error"],"sources":["../../src/plugins/applyBuiltInPatchesPlugin.ts"],"sourcesContent":[null],"mappings":"AAEA,SAASA,mBAAA,QAA2B;AAE7B,SAASC,0BAAA,EAAoC;EAClD,OAAO;IACLC,IAAA,EAAM;IACNC,OAAA,EAAS;IAET,MAAMC,eAAeC,MAAA,EAAQ;MAC3B,MAAML,mBAAA,CAAoB;QAAEM,IAAA,EAAMD,MAAA,CAAOC;MAAK,CAAC,EAAEC,KAAA,CAAOC,GAAA,IAAQ;QAC9DC,OAAA,CAAQC,KAAA,CAAM;AAAA,6CAAyCF,GAAG;MAC5D,CAAC;IACH;EACF;AACF","ignoreList":[]}
@@ -0,0 +1,17 @@
1
+ import { applyBuiltInPatches } from "../utils/patches.native.js";
2
+ function applyBuiltInPatchesPlugin() {
3
+ return {
4
+ name: "vxrn-applyBuiltInPatchesPlugin",
5
+ enforce: "pre",
6
+ async configResolved(config) {
7
+ await applyBuiltInPatches({
8
+ root: config.root
9
+ }).catch(function (err) {
10
+ console.error(`
11
+ \u{1F97A} error applying built-in patches`, err);
12
+ });
13
+ }
14
+ };
15
+ }
16
+ export { applyBuiltInPatchesPlugin };
17
+ //# sourceMappingURL=applyBuiltInPatchesPlugin.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["applyBuiltInPatches","applyBuiltInPatchesPlugin","name","enforce","configResolved","config","root","catch","err","console","error"],"sources":["../../src/plugins/applyBuiltInPatchesPlugin.ts"],"sourcesContent":[null],"mappings":"AAEA,SAASA,mBAAA,QAA2B;AAE7B,SAASC,0BAAA,EAAoC;EAClD,OAAO;IACLC,IAAA,EAAM;IACNC,OAAA,EAAS;IAET,MAAMC,eAAeC,MAAA,EAAQ;MAC3B,MAAML,mBAAA,CAAoB;QACxBM,IAAA,EAAAD,MAAQ,CAAAC;MAAM,GAAAC,KAAA,WAAAC,GAAA;QACfC,OAAA,CAAAC,KAAA;AAAA,2CACH,EAAAF,GAAA;MACF;IACF","ignoreList":[]}
@@ -0,0 +1,108 @@
1
+ import { createDebugger } from "@vxrn/debug";
2
+ import FSExtra from "fs-extra";
3
+ import path from "node:path";
4
+ import { createFilter } from "vite";
5
+ import { EXCLUDE_LIST, scanDepsToOptimize } from "../utils/scanDepsToOptimize.mjs";
6
+ import { getFileHash, lookupFile } from "../utils/utils.mjs";
7
+ import { getCacheDir } from "../utils/getCacheDir.mjs";
8
+ const name = "vxrn:auto-dep-optimize";
9
+ const {
10
+ debug,
11
+ debugDetails
12
+ } = createDebugger(name);
13
+ function autoDepOptimizePlugin(props) {
14
+ return {
15
+ name,
16
+ enforce: "pre",
17
+ async config(cfg, env) {
18
+ debug?.("Config hook called");
19
+ const userOptions = globalThis.__oneOptions;
20
+ const depsConfig = userOptions?.deps;
21
+ const exclude = depsConfig ? Object.entries(depsConfig).filter(([_, value]) => value === false).map(([k]) => k) : [];
22
+ const userExcludes = Array.isArray(props.exclude) ? props.exclude : [props.exclude];
23
+ const userViteExcludes = cfg.optimizeDeps?.exclude || [];
24
+ const userSsrExcludes = cfg.ssr?.optimizeDeps?.exclude || [];
25
+ const finalConfig = await getScannedOptimizeDepsConfig({
26
+ ...props,
27
+ mode: env.mode,
28
+ exclude: [...exclude, ...userExcludes, ...userViteExcludes, ...userSsrExcludes].filter(Boolean)
29
+ });
30
+ debugDetails?.(`Final auto-dep-optimize config: ${JSON.stringify(finalConfig, null, 2)}
31
+ from props: ${JSON.stringify(props)}`);
32
+ return finalConfig;
33
+ }
34
+ };
35
+ }
36
+ const getSSRExternalsCachePath = root => {
37
+ return path.join(getCacheDir(root), "deps-to-pre-bundle-for-ssr-cache.json");
38
+ };
39
+ async function getScannedOptimizeDepsConfig(props) {
40
+ const result = await findDepsToOptimize(props);
41
+ props.onScannedDeps?.(result);
42
+ const excludeArray = Array.isArray(props.exclude) ? props.exclude : [props.exclude];
43
+ const excludeStrings = excludeArray.filter(e => typeof e === "string");
44
+ const excludeSet = new Set(excludeStrings);
45
+ const filteredDeps = result.prebundleDeps.filter(dep => !excludeSet.has(dep));
46
+ return {
47
+ ssr: {
48
+ optimizeDeps: {
49
+ include: filteredDeps,
50
+ exclude: EXCLUDE_LIST
51
+ },
52
+ noExternal: filteredDeps
53
+ }
54
+ };
55
+ }
56
+ let sessionCacheVal = null;
57
+ async function findDepsToOptimize({
58
+ root,
59
+ mode,
60
+ exclude,
61
+ include
62
+ }) {
63
+ const cacheFilePath = getSSRExternalsCachePath(root);
64
+ const startedAt = debug ? Date.now() : 0;
65
+ const noCache = mode === "production";
66
+ const sessionCache = mode === "production";
67
+ if (sessionCache && sessionCacheVal) {
68
+ return sessionCacheVal;
69
+ }
70
+ const lockFile = await lookupFile(root, ["yarn.lock", "package-lock.json", "pnpm-lock.yaml", "bun.lockb"]);
71
+ const lockFileHash = lockFile ? await getFileHash(lockFile) : void 0;
72
+ let value;
73
+ if (lockFileHash && !noCache) {
74
+ try {
75
+ const {
76
+ lockFileHash: cachedLockFileHash,
77
+ depsToPreBundleForSsr: cachedDepsToPreBundle
78
+ } = await FSExtra.readJSON(cacheFilePath);
79
+ if (lockFileHash === cachedLockFileHash && !!cachedDepsToPreBundle && "prebundleDeps" in cachedDepsToPreBundle) {
80
+ value = cachedDepsToPreBundle;
81
+ debug?.(`Using cached scan results from ${cacheFilePath}`);
82
+ }
83
+ } catch (err) {
84
+ debug?.(`${err}`);
85
+ }
86
+ }
87
+ const filter = createFilter(include, exclude);
88
+ if (!value) {
89
+ value = await scanDepsToOptimize(`${root}/package.json`, {
90
+ filter
91
+ });
92
+ if (sessionCache) {
93
+ sessionCacheVal = value;
94
+ }
95
+ if (!noCache) {
96
+ void FSExtra.outputJSON(cacheFilePath, {
97
+ lockFileHash,
98
+ depsToPreBundleForSsr: value
99
+ });
100
+ }
101
+ }
102
+ debug?.(`Scanning completed in ${Date.now() - startedAt}ms`);
103
+ debug?.(`${value.prebundleDeps.length} deps are discovered and will be pre-bundled for SSR.` + (debugDetails ? "" : ` (Focus on this debug scope, "DEBUG=${debug.namespace}", to see more details.)`));
104
+ debugDetails?.(`Deps discovered to be pre-bundled for SSR: ${value.prebundleDeps.join(", ")}`);
105
+ return value;
106
+ }
107
+ export { autoDepOptimizePlugin, findDepsToOptimize, getSSRExternalsCachePath, getScannedOptimizeDepsConfig };
108
+ //# sourceMappingURL=autoDepOptimizePlugin.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createDebugger","FSExtra","path","createFilter","EXCLUDE_LIST","scanDepsToOptimize","getFileHash","lookupFile","getCacheDir","name","debug","debugDetails","autoDepOptimizePlugin","props","enforce","config","cfg","env","userOptions","globalThis","__oneOptions","depsConfig","deps","exclude","Object","entries","filter","_","value","map","k","userExcludes","Array","isArray","userViteExcludes","optimizeDeps","userSsrExcludes","ssr","finalConfig","getScannedOptimizeDepsConfig","mode","Boolean","JSON","stringify","getSSRExternalsCachePath","root","join","result","findDepsToOptimize","onScannedDeps","excludeArray","excludeStrings","e","excludeSet","Set","filteredDeps","prebundleDeps","dep","has","include","noExternal","sessionCacheVal","cacheFilePath","startedAt","Date","now","noCache","sessionCache","lockFile","lockFileHash","cachedLockFileHash","depsToPreBundleForSsr","cachedDepsToPreBundle","readJSON","err","outputJSON","length","namespace"],"sources":["../../src/plugins/autoDepOptimizePlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}