@vxrn/vite-plugin-metro 2.0.0-beta.33.1 → 2.0.0-beta.45.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (290) hide show
  1. package/dist/cjs/babel-plugins/import-meta-env-plugin.cjs +84 -102
  2. package/dist/cjs/babel-plugins/import-meta-env-plugin.native.cjs +108 -0
  3. package/dist/cjs/babel-plugins/import-meta-env-plugin.native.js +90 -107
  4. package/dist/cjs/babel-plugins/import-meta-env-plugin.native.js.map +1 -1
  5. package/dist/cjs/env/platformEnv.cjs +55 -57
  6. package/dist/cjs/env/platformEnv.native.cjs +93 -0
  7. package/dist/cjs/env/platformEnv.native.js +72 -75
  8. package/dist/cjs/env/platformEnv.native.js.map +1 -1
  9. package/dist/cjs/index.cjs +22 -24
  10. package/dist/cjs/index.native.cjs +41 -0
  11. package/dist/cjs/index.native.js +22 -23
  12. package/dist/cjs/index.native.js.map +1 -1
  13. package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.cjs +48 -51
  14. package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.native.cjs +101 -0
  15. package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.native.js +88 -94
  16. package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.native.js.map +1 -1
  17. package/dist/cjs/metro-config/getMetroConfigFromViteConfig.cjs +249 -256
  18. package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.cjs +295 -0
  19. package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js +260 -266
  20. package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -1
  21. package/dist/cjs/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.cjs +38 -44
  22. package/dist/cjs/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.cjs +53 -0
  23. package/dist/cjs/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js +39 -44
  24. package/dist/cjs/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js.map +1 -1
  25. package/dist/cjs/metro-config/types.cjs +9 -11
  26. package/dist/cjs/metro-config/types.native.cjs +18 -0
  27. package/dist/cjs/metro-config/types.native.js +9 -10
  28. package/dist/cjs/metro-config/types.native.js.map +1 -1
  29. package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.cjs +44 -56
  30. package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.native.cjs +62 -0
  31. package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.native.js +45 -63
  32. package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.native.js.map +1 -1
  33. package/dist/cjs/plugins/metroPlugin.cjs +210 -248
  34. package/dist/cjs/plugins/metroPlugin.native.cjs +242 -0
  35. package/dist/cjs/plugins/metroPlugin.native.js +216 -253
  36. package/dist/cjs/plugins/metroPlugin.native.js.map +1 -1
  37. package/dist/cjs/rn-commands/bundle/assetCatalogIOS.cjs +56 -65
  38. package/dist/cjs/rn-commands/bundle/assetCatalogIOS.native.cjs +121 -0
  39. package/dist/cjs/rn-commands/bundle/assetCatalogIOS.native.js +94 -106
  40. package/dist/cjs/rn-commands/bundle/assetCatalogIOS.native.js.map +1 -1
  41. package/dist/cjs/rn-commands/bundle/assetPathUtils.cjs +51 -55
  42. package/dist/cjs/rn-commands/bundle/assetPathUtils.native.cjs +72 -0
  43. package/dist/cjs/rn-commands/bundle/assetPathUtils.native.js +51 -54
  44. package/dist/cjs/rn-commands/bundle/assetPathUtils.native.js.map +1 -1
  45. package/dist/cjs/rn-commands/bundle/buildBundle.cjs +37 -46
  46. package/dist/cjs/rn-commands/bundle/buildBundle.native.cjs +57 -0
  47. package/dist/cjs/rn-commands/bundle/buildBundle.native.js +39 -47
  48. package/dist/cjs/rn-commands/bundle/buildBundle.native.js.map +1 -1
  49. package/dist/cjs/rn-commands/bundle/buildBundleWithConfig.cjs +57 -68
  50. package/dist/cjs/rn-commands/bundle/buildBundleWithConfig.native.cjs +81 -0
  51. package/dist/cjs/rn-commands/bundle/buildBundleWithConfig.native.js +59 -70
  52. package/dist/cjs/rn-commands/bundle/buildBundleWithConfig.native.js.map +1 -1
  53. package/dist/cjs/rn-commands/bundle/filterPlatformAssetScales.cjs +37 -39
  54. package/dist/cjs/rn-commands/bundle/filterPlatformAssetScales.native.cjs +70 -0
  55. package/dist/cjs/rn-commands/bundle/filterPlatformAssetScales.native.js +56 -59
  56. package/dist/cjs/rn-commands/bundle/filterPlatformAssetScales.native.js.map +1 -1
  57. package/dist/cjs/rn-commands/bundle/getAssetDestPathAndroid.cjs +20 -29
  58. package/dist/cjs/rn-commands/bundle/getAssetDestPathAndroid.native.cjs +39 -0
  59. package/dist/cjs/rn-commands/bundle/getAssetDestPathAndroid.native.js +20 -28
  60. package/dist/cjs/rn-commands/bundle/getAssetDestPathAndroid.native.js.map +1 -1
  61. package/dist/cjs/rn-commands/bundle/getAssetDestPathIOS.cjs +20 -33
  62. package/dist/cjs/rn-commands/bundle/getAssetDestPathIOS.native.cjs +38 -0
  63. package/dist/cjs/rn-commands/bundle/getAssetDestPathIOS.native.js +20 -32
  64. package/dist/cjs/rn-commands/bundle/getAssetDestPathIOS.native.js.map +1 -1
  65. package/dist/cjs/rn-commands/bundle/getBuildBundleFn.cjs +23 -32
  66. package/dist/cjs/rn-commands/bundle/getBuildBundleFn.native.cjs +38 -0
  67. package/dist/cjs/rn-commands/bundle/getBuildBundleFn.native.js +23 -31
  68. package/dist/cjs/rn-commands/bundle/getBuildBundleFn.native.js.map +1 -1
  69. package/dist/cjs/rn-commands/bundle/index.cjs +15 -17
  70. package/dist/cjs/rn-commands/bundle/index.native.cjs +30 -0
  71. package/dist/cjs/rn-commands/bundle/index.native.js +15 -16
  72. package/dist/cjs/rn-commands/bundle/index.native.js.map +1 -1
  73. package/dist/cjs/rn-commands/bundle/saveAssets.cjs +85 -96
  74. package/dist/cjs/rn-commands/bundle/saveAssets.native.cjs +129 -0
  75. package/dist/cjs/rn-commands/bundle/saveAssets.native.js +102 -114
  76. package/dist/cjs/rn-commands/bundle/saveAssets.native.js.map +1 -1
  77. package/dist/cjs/rn-commands/bundle/types.cjs +9 -11
  78. package/dist/cjs/rn-commands/bundle/types.native.cjs +18 -0
  79. package/dist/cjs/rn-commands/bundle/types.native.js +9 -10
  80. package/dist/cjs/rn-commands/bundle/types.native.js.map +1 -1
  81. package/dist/cjs/rn-commands/index.cjs +17 -26
  82. package/dist/cjs/rn-commands/index.native.cjs +32 -0
  83. package/dist/cjs/rn-commands/index.native.js +17 -25
  84. package/dist/cjs/rn-commands/index.native.js.map +1 -1
  85. package/dist/cjs/transformer/babel-core.cjs +16 -18
  86. package/dist/cjs/transformer/babel-core.native.cjs +30 -0
  87. package/dist/cjs/transformer/babel-core.native.js +16 -17
  88. package/dist/cjs/transformer/babel-core.native.js.map +1 -1
  89. package/dist/cjs/transformer/babel-transformer.cjs +101 -152
  90. package/dist/cjs/transformer/babel-transformer.native.cjs +131 -0
  91. package/dist/cjs/transformer/babel-transformer.native.js +106 -159
  92. package/dist/cjs/transformer/babel-transformer.native.js.map +1 -1
  93. package/dist/cjs/transformer/loadBabelConfig.cjs +44 -49
  94. package/dist/cjs/transformer/loadBabelConfig.native.cjs +64 -0
  95. package/dist/cjs/transformer/loadBabelConfig.native.js +48 -52
  96. package/dist/cjs/transformer/loadBabelConfig.native.js.map +1 -1
  97. package/dist/cjs/transformer/metroNativeWorker.cjs +1442 -1480
  98. package/dist/cjs/transformer/metroNativeWorker.native.cjs +2536 -0
  99. package/dist/cjs/transformer/metroNativeWorker.native.js +2416 -2552
  100. package/dist/cjs/transformer/metroNativeWorker.native.js.map +1 -1
  101. package/dist/cjs/transformer/transformSync.cjs +47 -63
  102. package/dist/cjs/transformer/transformSync.native.cjs +74 -0
  103. package/dist/cjs/transformer/transformSync.native.js +49 -64
  104. package/dist/cjs/transformer/transformSync.native.js.map +1 -1
  105. package/dist/cjs/transformer/types.cjs +9 -11
  106. package/dist/cjs/transformer/types.native.cjs +18 -0
  107. package/dist/cjs/transformer/types.native.js +9 -10
  108. package/dist/cjs/transformer/types.native.js.map +1 -1
  109. package/dist/cjs/utils/exit.cjs +141 -139
  110. package/dist/cjs/utils/exit.native.cjs +266 -0
  111. package/dist/cjs/utils/exit.native.js +228 -241
  112. package/dist/cjs/utils/exit.native.js.map +1 -1
  113. package/dist/cjs/utils/getTerminalReporter.cjs +35 -47
  114. package/dist/cjs/utils/getTerminalReporter.native.cjs +57 -0
  115. package/dist/cjs/utils/getTerminalReporter.native.js +38 -49
  116. package/dist/cjs/utils/getTerminalReporter.native.js.map +1 -1
  117. package/dist/cjs/utils/metroCacheManager.cjs +84 -99
  118. package/dist/cjs/utils/metroCacheManager.native.cjs +130 -0
  119. package/dist/cjs/utils/metroCacheManager.native.js +102 -118
  120. package/dist/cjs/utils/metroCacheManager.native.js.map +1 -1
  121. package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.cjs +24 -28
  122. package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.cjs +37 -0
  123. package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js +24 -27
  124. package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js.map +1 -1
  125. package/dist/cjs/utils/projectImport.cjs +40 -51
  126. package/dist/cjs/utils/projectImport.native.cjs +64 -0
  127. package/dist/cjs/utils/projectImport.native.js +41 -58
  128. package/dist/cjs/utils/projectImport.native.js.map +1 -1
  129. package/dist/esm/babel-plugins/import-meta-env-plugin.mjs +72 -86
  130. package/dist/esm/babel-plugins/import-meta-env-plugin.mjs.map +1 -1
  131. package/dist/esm/babel-plugins/import-meta-env-plugin.native.js +78 -92
  132. package/dist/esm/babel-plugins/import-meta-env-plugin.native.js.map +1 -1
  133. package/dist/esm/env/platformEnv.mjs +40 -39
  134. package/dist/esm/env/platformEnv.mjs.map +1 -1
  135. package/dist/esm/env/platformEnv.native.js +57 -58
  136. package/dist/esm/env/platformEnv.native.js.map +1 -1
  137. package/dist/esm/index.js +3 -3
  138. package/dist/esm/index.mjs +3 -3
  139. package/dist/esm/index.native.js +3 -3
  140. package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.mjs +35 -33
  141. package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.mjs.map +1 -1
  142. package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.native.js +75 -77
  143. package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.native.js.map +1 -1
  144. package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs +233 -231
  145. package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs.map +1 -1
  146. package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js +244 -242
  147. package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -1
  148. package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.mjs +26 -26
  149. package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.mjs.map +1 -1
  150. package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js +27 -27
  151. package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js.map +1 -1
  152. package/dist/esm/metro-config/types.mjs +0 -2
  153. package/dist/esm/metro-config/types.native.js +0 -2
  154. package/dist/esm/plugins/expoManifestRequestHandlerPlugin.mjs +32 -38
  155. package/dist/esm/plugins/expoManifestRequestHandlerPlugin.mjs.map +1 -1
  156. package/dist/esm/plugins/expoManifestRequestHandlerPlugin.native.js +33 -46
  157. package/dist/esm/plugins/expoManifestRequestHandlerPlugin.native.js.map +1 -1
  158. package/dist/esm/plugins/metroPlugin.mjs +195 -222
  159. package/dist/esm/plugins/metroPlugin.mjs.map +1 -1
  160. package/dist/esm/plugins/metroPlugin.native.js +201 -228
  161. package/dist/esm/plugins/metroPlugin.native.js.map +1 -1
  162. package/dist/esm/rn-commands/bundle/assetCatalogIOS.mjs +38 -38
  163. package/dist/esm/rn-commands/bundle/assetCatalogIOS.mjs.map +1 -1
  164. package/dist/esm/rn-commands/bundle/assetCatalogIOS.native.js +76 -80
  165. package/dist/esm/rn-commands/bundle/assetCatalogIOS.native.js.map +1 -1
  166. package/dist/esm/rn-commands/bundle/assetPathUtils.mjs +38 -37
  167. package/dist/esm/rn-commands/bundle/assetPathUtils.mjs.map +1 -1
  168. package/dist/esm/rn-commands/bundle/assetPathUtils.native.js +38 -37
  169. package/dist/esm/rn-commands/bundle/assetPathUtils.native.js.map +1 -1
  170. package/dist/esm/rn-commands/bundle/buildBundle.mjs +25 -28
  171. package/dist/esm/rn-commands/bundle/buildBundle.mjs.map +1 -1
  172. package/dist/esm/rn-commands/bundle/buildBundle.native.js +27 -30
  173. package/dist/esm/rn-commands/bundle/buildBundle.native.js.map +1 -1
  174. package/dist/esm/rn-commands/bundle/buildBundleWithConfig.mjs +43 -43
  175. package/dist/esm/rn-commands/bundle/buildBundleWithConfig.mjs.map +1 -1
  176. package/dist/esm/rn-commands/bundle/buildBundleWithConfig.native.js +45 -46
  177. package/dist/esm/rn-commands/bundle/buildBundleWithConfig.native.js.map +1 -1
  178. package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.mjs +24 -21
  179. package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.mjs.map +1 -1
  180. package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.native.js +43 -42
  181. package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.native.js.map +1 -1
  182. package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.mjs +5 -3
  183. package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.mjs.map +1 -1
  184. package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.native.js +5 -3
  185. package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.native.js.map +1 -1
  186. package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.mjs +5 -7
  187. package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.mjs.map +1 -1
  188. package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.native.js +5 -7
  189. package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.native.js.map +1 -1
  190. package/dist/esm/rn-commands/bundle/getBuildBundleFn.mjs +11 -14
  191. package/dist/esm/rn-commands/bundle/getBuildBundleFn.mjs.map +1 -1
  192. package/dist/esm/rn-commands/bundle/getBuildBundleFn.native.js +11 -14
  193. package/dist/esm/rn-commands/bundle/getBuildBundleFn.native.js.map +1 -1
  194. package/dist/esm/rn-commands/bundle/index.mjs +2 -2
  195. package/dist/esm/rn-commands/bundle/index.native.js +2 -2
  196. package/dist/esm/rn-commands/bundle/saveAssets.mjs +70 -70
  197. package/dist/esm/rn-commands/bundle/saveAssets.mjs.map +1 -1
  198. package/dist/esm/rn-commands/bundle/saveAssets.native.js +87 -89
  199. package/dist/esm/rn-commands/bundle/saveAssets.native.js.map +1 -1
  200. package/dist/esm/rn-commands/bundle/types.mjs +0 -2
  201. package/dist/esm/rn-commands/bundle/types.native.js +0 -2
  202. package/dist/esm/rn-commands/index.mjs +2 -2
  203. package/dist/esm/rn-commands/index.native.js +2 -2
  204. package/dist/esm/transformer/babel-core.mjs +2 -2
  205. package/dist/esm/transformer/babel-core.native.js +2 -2
  206. package/dist/esm/transformer/babel-transformer.mjs +108 -144
  207. package/dist/esm/transformer/babel-transformer.mjs.map +1 -1
  208. package/dist/esm/transformer/babel-transformer.native.js +114 -155
  209. package/dist/esm/transformer/babel-transformer.native.js.map +1 -1
  210. package/dist/esm/transformer/loadBabelConfig.mjs +29 -23
  211. package/dist/esm/transformer/loadBabelConfig.mjs.map +1 -1
  212. package/dist/esm/transformer/loadBabelConfig.native.js +33 -27
  213. package/dist/esm/transformer/loadBabelConfig.native.js.map +1 -1
  214. package/dist/esm/transformer/metroNativeWorker.mjs +1405 -1434
  215. package/dist/esm/transformer/metroNativeWorker.mjs.map +1 -1
  216. package/dist/esm/transformer/metroNativeWorker.native.js +2379 -2507
  217. package/dist/esm/transformer/metroNativeWorker.native.js.map +1 -1
  218. package/dist/esm/transformer/transformSync.mjs +32 -37
  219. package/dist/esm/transformer/transformSync.mjs.map +1 -1
  220. package/dist/esm/transformer/transformSync.native.js +34 -39
  221. package/dist/esm/transformer/transformSync.native.js.map +1 -1
  222. package/dist/esm/transformer/types.mjs +0 -2
  223. package/dist/esm/transformer/types.native.js +0 -2
  224. package/dist/esm/utils/exit.mjs +123 -112
  225. package/dist/esm/utils/exit.mjs.map +1 -1
  226. package/dist/esm/utils/exit.native.js +210 -215
  227. package/dist/esm/utils/exit.native.js.map +1 -1
  228. package/dist/esm/utils/getTerminalReporter.mjs +20 -21
  229. package/dist/esm/utils/getTerminalReporter.mjs.map +1 -1
  230. package/dist/esm/utils/getTerminalReporter.native.js +23 -24
  231. package/dist/esm/utils/getTerminalReporter.native.js.map +1 -1
  232. package/dist/esm/utils/metroCacheManager.mjs +73 -82
  233. package/dist/esm/utils/metroCacheManager.mjs.map +1 -1
  234. package/dist/esm/utils/metroCacheManager.native.js +91 -102
  235. package/dist/esm/utils/metroCacheManager.native.js.map +1 -1
  236. package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.mjs +11 -10
  237. package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.mjs.map +1 -1
  238. package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js +11 -10
  239. package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js.map +1 -1
  240. package/dist/esm/utils/projectImport.mjs +23 -25
  241. package/dist/esm/utils/projectImport.mjs.map +1 -1
  242. package/dist/esm/utils/projectImport.native.js +24 -33
  243. package/dist/esm/utils/projectImport.native.js.map +1 -1
  244. package/package.json +5 -6
  245. package/src/metro-config/getMetroConfigFromViteConfig.ts +46 -10
  246. package/src/transformer/loadBabelConfig.ts +2 -0
  247. package/src/transformer/metroNativeWorker.test.ts +267 -35
  248. package/src/transformer/metroNativeWorker.ts +3 -11
  249. package/types/babel-plugins/import-meta-env-plugin.d.ts.map +1 -1
  250. package/types/metro-config/getMetroConfigFromViteConfig.d.ts.map +1 -1
  251. package/types/rn-commands/bundle/assetPathUtils.d.ts.map +1 -1
  252. package/types/rn-commands/bundle/filterPlatformAssetScales.d.ts.map +1 -1
  253. package/types/rn-commands/bundle/getAssetDestPathAndroid.d.ts.map +1 -1
  254. package/types/rn-commands/bundle/getAssetDestPathIOS.d.ts.map +1 -1
  255. package/types/rn-commands/bundle/saveAssets.d.ts.map +1 -1
  256. package/types/transformer/loadBabelConfig.d.ts.map +1 -1
  257. package/types/transformer/metroNativeWorker.d.ts.map +1 -1
  258. package/dist/cjs/transformer/metroNativeWorker.test.cjs +0 -897
  259. package/dist/cjs/transformer/metroNativeWorker.test.native.js +0 -1010
  260. package/dist/cjs/transformer/metroNativeWorker.test.native.js.map +0 -1
  261. package/dist/cjs/transformer/transformSync.test.cjs +0 -36
  262. package/dist/cjs/transformer/transformSync.test.native.js +0 -49
  263. package/dist/cjs/transformer/transformSync.test.native.js.map +0 -1
  264. package/dist/esm/index.js.map +0 -1
  265. package/dist/esm/index.mjs.map +0 -1
  266. package/dist/esm/index.native.js.map +0 -1
  267. package/dist/esm/metro-config/types.mjs.map +0 -1
  268. package/dist/esm/metro-config/types.native.js.map +0 -1
  269. package/dist/esm/rn-commands/bundle/index.mjs.map +0 -1
  270. package/dist/esm/rn-commands/bundle/index.native.js.map +0 -1
  271. package/dist/esm/rn-commands/bundle/types.mjs.map +0 -1
  272. package/dist/esm/rn-commands/bundle/types.native.js.map +0 -1
  273. package/dist/esm/rn-commands/index.mjs.map +0 -1
  274. package/dist/esm/rn-commands/index.native.js.map +0 -1
  275. package/dist/esm/transformer/babel-core.mjs.map +0 -1
  276. package/dist/esm/transformer/babel-core.native.js.map +0 -1
  277. package/dist/esm/transformer/metroNativeWorker.test.mjs +0 -861
  278. package/dist/esm/transformer/metroNativeWorker.test.mjs.map +0 -1
  279. package/dist/esm/transformer/metroNativeWorker.test.native.js +0 -972
  280. package/dist/esm/transformer/metroNativeWorker.test.native.js.map +0 -1
  281. package/dist/esm/transformer/transformSync.test.mjs +0 -37
  282. package/dist/esm/transformer/transformSync.test.mjs.map +0 -1
  283. package/dist/esm/transformer/transformSync.test.native.js +0 -47
  284. package/dist/esm/transformer/transformSync.test.native.js.map +0 -1
  285. package/dist/esm/transformer/types.mjs.map +0 -1
  286. package/dist/esm/transformer/types.native.js.map +0 -1
  287. package/types/transformer/metroNativeWorker.test.d.ts +0 -2
  288. package/types/transformer/metroNativeWorker.test.d.ts.map +0 -1
  289. package/types/transformer/transformSync.test.d.ts +0 -2
  290. package/types/transformer/transformSync.test.d.ts.map +0 -1
@@ -8,235 +8,208 @@ import { checkAndClearMetroCacheFromVite } from "../utils/metroCacheManager.nati
8
8
  import { projectImport } from "../utils/projectImport.native.js";
9
9
  import { getMetroConfigFromViteConfig } from "../metro-config/getMetroConfigFromViteConfig.native.js";
10
10
  import { patchMetroServerWithViteConfigAndMetroPluginOptions } from "../metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js";
11
- var {
12
- debug
13
- } = createDebugger("vite-plugin-metro");
11
+
12
+ var { debug } = createDebugger("vite-plugin-metro");
14
13
  function metroPlugin() {
15
- var options = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
16
- globalThis["__viteMetroPluginOptions__"] = options;
17
- return {
18
- name: "metro",
19
- // configResolved(config) {
20
- // projectRoot = config.root
21
- // },
22
- configureServer(server) {
23
- var projectRoot = resolve(server.config.root);
24
- var shouldLetViteServe = function (url) {
25
- if (!url) return false;
26
- var pathname = "";
27
- try {
28
- pathname = new URL(url, "http://localhost").pathname;
29
- } catch (unused) {
30
- var _url_split_;
31
- pathname = (_url_split_ = url.split("?")[0]) !== null && _url_split_ !== void 0 ? _url_split_ : "";
32
- }
33
- if (!pathname.startsWith("/assets/")) return false;
34
- if (pathname.endsWith("_vxrn_loader.js")) return true;
35
- var decodedPathname = pathname;
36
- try {
37
- decodedPathname = decodeURIComponent(pathname);
38
- } catch (unused) {}
39
- var filePath = resolve(projectRoot, decodedPathname.slice(1));
40
- var relativePath = relative(projectRoot, filePath);
41
- var isInsideRoot = relativePath !== "" && !relativePath.startsWith("..") && !isAbsolute(relativePath);
42
- return isInsideRoot && existsSync(filePath);
43
- };
44
- var metroReady = false;
45
- var middleware;
46
- var metroServer;
47
- var hmrServer;
48
- var websocketEndpoints;
49
- var rnDevtoolsMiddleware;
50
- var metroPromise;
51
- var metroPromiseResolvers;
52
- metroPromise = new Promise(function (resolve2, reject) {
53
- metroPromiseResolvers = {
54
- resolve: resolve2,
55
- reject
56
- };
57
- });
58
- var startMetro = async function () {
59
- var metroStartTime = Date.now();
60
- try {
61
- var _server_httpServer;
62
- checkAndClearMetroCacheFromVite(server, server.config.logger);
63
- var {
64
- default: Metro
65
- } = await projectImport(projectRoot, "metro");
66
- var {
67
- default: MetroHmrServer
68
- } = await projectImport(projectRoot, "metro/private/HmrServer");
69
- var {
70
- default: createWebsocketServer
71
- } = await projectImport(projectRoot, "metro/private/lib/createWebsocketServer");
72
- var {
73
- createDevMiddleware
74
- } = await projectImport(projectRoot, "@react-native/dev-middleware");
75
- var config = await getMetroConfigFromViteConfig(server.config, options);
76
- var metroResult = await Metro.createConnectMiddleware(config, {
77
- // Force enable file watching, even on CI.
78
- // This is needed for HMR tests to work on CI.
79
- watch: true
80
- });
81
- middleware = metroResult.middleware;
82
- metroServer = metroResult.metroServer;
83
- patchMetroServerWithViteConfigAndMetroPluginOptions(metroServer, server.config, options);
84
- hmrServer = new MetroHmrServer(metroServer.getBundler(), metroServer.getCreateModuleId(), config);
85
- var reactNativeDevToolsUrl = `http://${typeof server.config.server.host === "boolean" ? "localhost" : server.config.server.host}:${server.config.server.port}`;
86
- var devMiddleware = createDevMiddleware({
87
- serverBaseUrl: reactNativeDevToolsUrl,
88
- logger: console,
89
- unstable_experiments: {
90
- // rn 0.86 turns this on by default and prepares the standalone debugger
91
- // shell eagerly while building the middleware. its tool launcher throws
92
- // outright under NODE_ENV=test rather than spawn a gui, which would take
93
- // the whole dev server down on boot for anyone running tests against it.
94
- enableStandaloneFuseboxShell: process.env.NODE_ENV !== "test"
95
- }
96
- });
97
- rnDevtoolsMiddleware = devMiddleware.middleware;
98
- websocketEndpoints = {
99
- "/hot": createWebsocketServer({
100
- websocketServer: hmrServer
101
- }),
102
- // metro parity: the packager message socket (metro serves /message via
103
- // @react-native-community/cli-server-api). leaving the upgrade unanswered
104
- // dangles the socket and chromium queues every later websocket handshake
105
- // to the same host:port behind it (blocking e.g. zero /sync in sootsim).
106
- "/message": createMessageSocket(),
107
- ...devMiddleware.websocketEndpoints
108
- };
109
- (_server_httpServer = server.httpServer) === null || _server_httpServer === void 0 ? void 0 : _server_httpServer.on("upgrade", function (request, socket, head) {
110
- var pathname = new URL(request.url, `http://${request.headers.host}`).pathname;
111
- var endpoint = websocketEndpoints[pathname];
112
- if (endpoint) {
113
- endpoint.handleUpgrade(request, socket, head, function (ws) {
114
- endpoint.emit("connection", ws, request);
115
- });
116
- }
117
- });
118
- server.middlewares.use(rnDevtoolsMiddleware);
119
- metroReady = true;
120
- var metroElapsed = Date.now() - metroStartTime;
121
- debug === null || debug === void 0 ? void 0 : debug(`Metro bundler ready (${metroElapsed}ms)`);
122
- metroPromiseResolvers.resolve();
123
- } catch (err) {
124
- debug === null || debug === void 0 ? void 0 : debug(`Error during Metro initialization: ${err}`);
125
- metroPromiseResolvers.reject(err);
126
- throw err;
127
- }
128
- };
129
- var isLazyStartup = options.startup === "lazy";
130
- var metroStarting = false;
131
- var ensureMetroStarted = function () {
132
- if (metroStarting || metroReady) return;
133
- metroStarting = true;
134
- debug === null || debug === void 0 ? void 0 : debug("Starting Metro on-demand (lazy startup)");
135
- startMetro().catch(function (err) {
136
- debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);
137
- });
138
- };
139
- if (!isLazyStartup) {
140
- if (server.httpServer) {
141
- if (server.httpServer.listening) {
142
- startMetro().catch(function (err) {
143
- debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);
144
- });
145
- } else {
146
- server.httpServer.on("listening", function () {
147
- startMetro().catch(function (err) {
148
- debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);
149
- });
150
- });
151
- }
152
- } else {
153
- var waitForServer = function () {
154
- if (server.httpServer) {
155
- if (server.httpServer.listening) {
156
- startMetro().catch(function (err) {
157
- debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);
158
- });
159
- } else {
160
- server.httpServer.on("listening", function () {
161
- startMetro().catch(function (err) {
162
- debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);
163
- });
164
- });
165
- }
166
- } else {
167
- setTimeout(waitForServer, 10);
168
- }
169
- };
170
- waitForServer();
171
- }
172
- } else {
173
- debug === null || debug === void 0 ? void 0 : debug("Metro lazy startup enabled - will start on first native request");
174
- }
175
- server.middlewares.use(async function (req, res, next) {
176
- var _req_headers_useragent, _req_headers_useragent1, _req_url;
177
- var isNativeRequest = ((_req_headers_useragent = req.headers["user-agent"]) === null || _req_headers_useragent === void 0 ? void 0 : _req_headers_useragent.includes("CFNetwork/")) || ((_req_headers_useragent1 = req.headers["user-agent"]) === null || _req_headers_useragent1 === void 0 ? void 0 : _req_headers_useragent1.includes("okhttp/"));
178
- if (isLazyStartup && !metroReady) {
179
- var _req_url1;
180
- if (((_req_url1 = req.url) === null || _req_url1 === void 0 ? void 0 : _req_url1.includes(".bundle")) || req.url === "/status" && isNativeRequest) {
181
- ensureMetroStarted();
182
- }
183
- }
184
- if (req.url === "/status" && isNativeRequest) {
185
- res.statusCode = 200;
186
- res.end("packager-status:running");
187
- return;
188
- }
189
- if (((_req_url = req.url) === null || _req_url === void 0 ? void 0 : _req_url.includes(".bundle")) && !metroReady) {
190
- await metroPromise;
191
- }
192
- if (middleware) {
193
- if (shouldLetViteServe(req.url)) {
194
- return next();
195
- }
196
- try {
197
- var _req_url2;
198
- if ((_req_url2 = req.url) === null || _req_url2 === void 0 ? void 0 : _req_url2.includes(".bundle")) {
199
- var VITE_METRO_DEBUG_BUNDLE = process.env.VITE_METRO_DEBUG_BUNDLE;
200
- if (VITE_METRO_DEBUG_BUNDLE) {
201
- if (existsSync(VITE_METRO_DEBUG_BUNDLE)) {
202
- debug === null || debug === void 0 ? void 0 : debug(`serving debug bundle from ${VITE_METRO_DEBUG_BUNDLE}`);
203
- var content = await readFile(VITE_METRO_DEBUG_BUNDLE, "utf-8");
204
- res.setHeader("Content-Type", "application/javascript");
205
- res.end(content);
206
- return;
207
- }
208
- }
209
- }
210
- if (req.url === "/open-stack-frame" && req.method === "POST") {
211
- var body = "";
212
- req.on("data", function (chunk) {
213
- body += chunk.toString();
214
- });
215
- req.on("end", function () {
216
- try {
217
- var frame = JSON.parse(body);
218
- launchEditor(frame.file);
219
- res.statusCode = 200;
220
- res.end("Stack frame opened in editor");
221
- } catch (e) {
222
- debug === null || debug === void 0 ? void 0 : debug(`Failed to parse stack frame: ${e}`);
223
- res.statusCode = 400;
224
- return res.end("Invalid stack frame JSON");
225
- }
226
- });
227
- return;
228
- }
229
- await middleware(req, res, next);
230
- } catch (error) {
231
- debug === null || debug === void 0 ? void 0 : debug(`Metro middleware error: ${error}`);
232
- next();
233
- }
234
- } else {
235
- next();
236
- }
237
- });
238
- }
239
- };
14
+ var options = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
15
+ globalThis["__viteMetroPluginOptions__"] = options;
16
+ return {
17
+ name: "metro",
18
+ configureServer(server) {
19
+ var projectRoot = resolve(server.config.root);
20
+ var shouldLetViteServe = function(url) {
21
+ if (!url) return false;
22
+ var pathname = "";
23
+ try {
24
+ pathname = new URL(url, "http://localhost").pathname;
25
+ } catch (unused) {
26
+ var _url_split_;
27
+ pathname = (_url_split_ = url.split("?")[0]) !== null && _url_split_ !== void 0 ? _url_split_ : "";
28
+ }
29
+ if (!pathname.startsWith("/assets/")) return false;
30
+ if (pathname.endsWith("_vxrn_loader.js")) return true;
31
+ var decodedPathname = pathname;
32
+ try {
33
+ decodedPathname = decodeURIComponent(pathname);
34
+ } catch (unused) {}
35
+ var filePath = resolve(projectRoot, decodedPathname.slice(1));
36
+ var relativePath = relative(projectRoot, filePath);
37
+ var isInsideRoot = relativePath !== "" && !relativePath.startsWith("..") && !isAbsolute(relativePath);
38
+ return isInsideRoot && existsSync(filePath);
39
+ };
40
+ var metroReady = false;
41
+ var middleware;
42
+ var metroServer;
43
+ var hmrServer;
44
+ var websocketEndpoints;
45
+ var rnDevtoolsMiddleware;
46
+ var metroPromise;
47
+ var metroPromiseResolvers;
48
+ metroPromise = new Promise(function(resolve2, reject) {
49
+ metroPromiseResolvers = {
50
+ resolve: resolve2,
51
+ reject
52
+ };
53
+ });
54
+ var startMetro = async function() {
55
+ var metroStartTime = Date.now();
56
+ try {
57
+ var _server_httpServer;
58
+ checkAndClearMetroCacheFromVite(server, server.config.logger);
59
+ var { default: Metro } = await projectImport(projectRoot, "metro");
60
+ var { default: MetroHmrServer } = await projectImport(projectRoot, "metro/private/HmrServer");
61
+ var { default: createWebsocketServer } = await projectImport(projectRoot, "metro/private/lib/createWebsocketServer");
62
+ var { createDevMiddleware } = await projectImport(projectRoot, "@react-native/dev-middleware");
63
+ var config = await getMetroConfigFromViteConfig(server.config, options);
64
+ var metroResult = await Metro.createConnectMiddleware(config, { watch: true });
65
+ middleware = metroResult.middleware;
66
+ metroServer = metroResult.metroServer;
67
+ patchMetroServerWithViteConfigAndMetroPluginOptions(metroServer, server.config, options);
68
+ hmrServer = new MetroHmrServer(metroServer.getBundler(), metroServer.getCreateModuleId(), config);
69
+ var reactNativeDevToolsUrl = `http://${typeof server.config.server.host === "boolean" ? "localhost" : server.config.server.host}:${server.config.server.port}`;
70
+ var devMiddleware = createDevMiddleware({
71
+ serverBaseUrl: reactNativeDevToolsUrl,
72
+ logger: console,
73
+ unstable_experiments: { enableStandaloneFuseboxShell: process.env.NODE_ENV !== "test" }
74
+ });
75
+ rnDevtoolsMiddleware = devMiddleware.middleware;
76
+ websocketEndpoints = {
77
+ "/hot": createWebsocketServer({ websocketServer: hmrServer }),
78
+ "/message": createMessageSocket(),
79
+ ...devMiddleware.websocketEndpoints
80
+ };
81
+ (_server_httpServer = server.httpServer) === null || _server_httpServer === void 0 ? void 0 : _server_httpServer.on("upgrade", function(request, socket, head) {
82
+ var pathname = new URL(request.url, `http://${request.headers.host}`).pathname;
83
+ var endpoint = websocketEndpoints[pathname];
84
+ if (endpoint) {
85
+ endpoint.handleUpgrade(request, socket, head, function(ws) {
86
+ endpoint.emit("connection", ws, request);
87
+ });
88
+ }
89
+ });
90
+ server.middlewares.use(rnDevtoolsMiddleware);
91
+ metroReady = true;
92
+ var metroElapsed = Date.now() - metroStartTime;
93
+ debug === null || debug === void 0 ? void 0 : debug(`Metro bundler ready (${metroElapsed}ms)`);
94
+ metroPromiseResolvers.resolve();
95
+ } catch (err) {
96
+ debug === null || debug === void 0 ? void 0 : debug(`Error during Metro initialization: ${err}`);
97
+ metroPromiseResolvers.reject(err);
98
+ throw err;
99
+ }
100
+ };
101
+ var isLazyStartup = options.startup === "lazy";
102
+ var metroStarting = false;
103
+ var ensureMetroStarted = function() {
104
+ if (metroStarting || metroReady) return;
105
+ metroStarting = true;
106
+ debug === null || debug === void 0 ? void 0 : debug("Starting Metro on-demand (lazy startup)");
107
+ startMetro().catch(function(err) {
108
+ debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);
109
+ });
110
+ };
111
+ if (!isLazyStartup) {
112
+ if (server.httpServer) {
113
+ if (server.httpServer.listening) {
114
+ startMetro().catch(function(err) {
115
+ debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);
116
+ });
117
+ } else {
118
+ server.httpServer.on("listening", function() {
119
+ startMetro().catch(function(err) {
120
+ debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);
121
+ });
122
+ });
123
+ }
124
+ } else {
125
+ var waitForServer = function() {
126
+ if (server.httpServer) {
127
+ if (server.httpServer.listening) {
128
+ startMetro().catch(function(err) {
129
+ debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);
130
+ });
131
+ } else {
132
+ server.httpServer.on("listening", function() {
133
+ startMetro().catch(function(err) {
134
+ debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);
135
+ });
136
+ });
137
+ }
138
+ } else {
139
+ setTimeout(waitForServer, 10);
140
+ }
141
+ };
142
+ waitForServer();
143
+ }
144
+ } else {
145
+ debug === null || debug === void 0 ? void 0 : debug("Metro lazy startup enabled - will start on first native request");
146
+ }
147
+ server.middlewares.use(async function(req, res, next) {
148
+ var _req_headers_useragent, _req_headers_useragent1, _req_url;
149
+ var isNativeRequest = ((_req_headers_useragent = req.headers["user-agent"]) === null || _req_headers_useragent === void 0 ? void 0 : _req_headers_useragent.includes("CFNetwork/")) || ((_req_headers_useragent1 = req.headers["user-agent"]) === null || _req_headers_useragent1 === void 0 ? void 0 : _req_headers_useragent1.includes("okhttp/"));
150
+ if (isLazyStartup && !metroReady) {
151
+ var _req_url1;
152
+ if (((_req_url1 = req.url) === null || _req_url1 === void 0 ? void 0 : _req_url1.includes(".bundle")) || req.url === "/status" && isNativeRequest) {
153
+ ensureMetroStarted();
154
+ }
155
+ }
156
+ if (req.url === "/status" && isNativeRequest) {
157
+ res.statusCode = 200;
158
+ res.end("packager-status:running");
159
+ return;
160
+ }
161
+ if (((_req_url = req.url) === null || _req_url === void 0 ? void 0 : _req_url.includes(".bundle")) && !metroReady) {
162
+ await metroPromise;
163
+ }
164
+ if (middleware) {
165
+ if (shouldLetViteServe(req.url)) {
166
+ return next();
167
+ }
168
+ try {
169
+ var _req_url2;
170
+ if ((_req_url2 = req.url) === null || _req_url2 === void 0 ? void 0 : _req_url2.includes(".bundle")) {
171
+ var VITE_METRO_DEBUG_BUNDLE = process.env.VITE_METRO_DEBUG_BUNDLE;
172
+ if (VITE_METRO_DEBUG_BUNDLE) {
173
+ if (existsSync(VITE_METRO_DEBUG_BUNDLE)) {
174
+ debug === null || debug === void 0 ? void 0 : debug(`serving debug bundle from ${VITE_METRO_DEBUG_BUNDLE}`);
175
+ var content = await readFile(VITE_METRO_DEBUG_BUNDLE, "utf-8");
176
+ res.setHeader("Content-Type", "application/javascript");
177
+ res.end(content);
178
+ return;
179
+ }
180
+ }
181
+ }
182
+ if (req.url === "/open-stack-frame" && req.method === "POST") {
183
+ var body = "";
184
+ req.on("data", function(chunk) {
185
+ body += chunk.toString();
186
+ });
187
+ req.on("end", function() {
188
+ try {
189
+ var frame = JSON.parse(body);
190
+ launchEditor(frame.file);
191
+ res.statusCode = 200;
192
+ res.end("Stack frame opened in editor");
193
+ } catch (e) {
194
+ debug === null || debug === void 0 ? void 0 : debug(`Failed to parse stack frame: ${e}`);
195
+ res.statusCode = 400;
196
+ return res.end("Invalid stack frame JSON");
197
+ }
198
+ });
199
+ return;
200
+ }
201
+ await middleware(req, res, next);
202
+ } catch (error) {
203
+ debug === null || debug === void 0 ? void 0 : debug(`Metro middleware error: ${error}`);
204
+ next();
205
+ }
206
+ } else {
207
+ next();
208
+ }
209
+ });
210
+ }
211
+ };
240
212
  }
213
+
241
214
  export { metroPlugin };
242
215
  //# sourceMappingURL=metroPlugin.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["existsSync","readFile","isAbsolute","relative","resolve","launchEditor","createDebugger","createMessageSocket","checkAndClearMetroCacheFromVite","projectImport","getMetroConfigFromViteConfig","patchMetroServerWithViteConfigAndMetroPluginOptions","debug","metroPlugin","options","arguments","length","globalThis","name","configureServer","server","projectRoot","config","root","shouldLetViteServe","url","pathname","URL","unused","_url_split_","split","startsWith","endsWith","decodedPathname","decodeURIComponent","filePath","slice","relativePath","isInsideRoot","metroReady","middleware","metroServer","hmrServer","websocketEndpoints","rnDevtoolsMiddleware","metroPromise","metroPromiseResolvers","Promise","resolve2","reject","startMetro","metroStartTime","Date","now","_server_httpServer","logger","default","Metro","MetroHmrServer","createWebsocketServer","createDevMiddleware","metroResult","createConnectMiddleware","watch","getBundler","getCreateModuleId","reactNativeDevToolsUrl","host","port","devMiddleware","serverBaseUrl","console","unstable_experiments","enableStandaloneFuseboxShell","process","env","NODE_ENV","websocketServer","httpServer","on","request","socket","head","headers","endpoint","handleUpgrade","ws","emit","middlewares","use","metroElapsed","err","isLazyStartup","startup","metroStarting","ensureMetroStarted","catch","listening","waitForServer","setTimeout","req","res","next","_req_headers_useragent","_req_headers_useragent1","_req_url","isNativeRequest","includes","_req_url1","statusCode","end","_req_url2","VITE_METRO_DEBUG_BUNDLE","content","setHeader","method","body","chunk","toString","frame","JSON","parse","file","e","error"],"sources":["../../../src/plugins/metroPlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"metroPlugin.native.js","names":[],"sources":["esm/plugins/metroPlugin.native.js"],"sourcesContent":["import { existsSync } from \"fs\";\nimport { readFile } from \"fs/promises\";\nimport { isAbsolute, relative, resolve } from \"path\";\nimport launchEditor from \"launch-editor\";\nimport { createDebugger } from \"@vxrn/debug\";\nimport { createMessageSocket } from \"@vxrn/utils\";\nimport { checkAndClearMetroCacheFromVite } from \"../utils/metroCacheManager\";\nimport { projectImport } from \"../utils/projectImport\";\nimport { getMetroConfigFromViteConfig } from \"../metro-config/getMetroConfigFromViteConfig\";\nimport { patchMetroServerWithViteConfigAndMetroPluginOptions } from \"../metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions\";\nvar { debug } = createDebugger(\"vite-plugin-metro\");\nfunction metroPlugin() {\n var options = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};\n globalThis[\"__viteMetroPluginOptions__\"] = options;\n return {\n name: \"metro\",\n // configResolved(config) {\n // projectRoot = config.root\n // },\n configureServer(server) {\n var projectRoot = resolve(server.config.root);\n var shouldLetViteServe = function(url) {\n if (!url) return false;\n var pathname = \"\";\n try {\n pathname = new URL(url, \"http://localhost\").pathname;\n } catch (unused) {\n var _url_split_;\n pathname = (_url_split_ = url.split(\"?\")[0]) !== null && _url_split_ !== void 0 ? _url_split_ : \"\";\n }\n if (!pathname.startsWith(\"/assets/\")) return false;\n if (pathname.endsWith(\"_vxrn_loader.js\")) return true;\n var decodedPathname = pathname;\n try {\n decodedPathname = decodeURIComponent(pathname);\n } catch (unused) {\n }\n var filePath = resolve(projectRoot, decodedPathname.slice(1));\n var relativePath = relative(projectRoot, filePath);\n var isInsideRoot = relativePath !== \"\" && !relativePath.startsWith(\"..\") && !isAbsolute(relativePath);\n return isInsideRoot && existsSync(filePath);\n };\n var metroReady = false;\n var middleware;\n var metroServer;\n var hmrServer;\n var websocketEndpoints;\n var rnDevtoolsMiddleware;\n var metroPromise;\n var metroPromiseResolvers;\n metroPromise = new Promise(function(resolve2, reject) {\n metroPromiseResolvers = {\n resolve: resolve2,\n reject\n };\n });\n var startMetro = async function() {\n var metroStartTime = Date.now();\n try {\n var _server_httpServer;\n checkAndClearMetroCacheFromVite(server, server.config.logger);\n var { default: Metro } = await projectImport(projectRoot, \"metro\");\n var { default: MetroHmrServer } = await projectImport(projectRoot, \"metro/private/HmrServer\");\n var { default: createWebsocketServer } = await projectImport(projectRoot, \"metro/private/lib/createWebsocketServer\");\n var { createDevMiddleware } = await projectImport(projectRoot, \"@react-native/dev-middleware\");\n var config = await getMetroConfigFromViteConfig(server.config, options);\n var metroResult = await Metro.createConnectMiddleware(config, {\n // Force enable file watching, even on CI.\n // This is needed for HMR tests to work on CI.\n watch: true\n });\n middleware = metroResult.middleware;\n metroServer = metroResult.metroServer;\n patchMetroServerWithViteConfigAndMetroPluginOptions(metroServer, server.config, options);\n hmrServer = new MetroHmrServer(metroServer.getBundler(), metroServer.getCreateModuleId(), config);\n var reactNativeDevToolsUrl = `http://${typeof server.config.server.host === \"boolean\" ? \"localhost\" : server.config.server.host}:${server.config.server.port}`;\n var devMiddleware = createDevMiddleware({\n serverBaseUrl: reactNativeDevToolsUrl,\n logger: console,\n unstable_experiments: {\n // rn 0.86 turns this on by default and prepares the standalone debugger\n // shell eagerly while building the middleware. its tool launcher throws\n // outright under NODE_ENV=test rather than spawn a gui, which would take\n // the whole dev server down on boot for anyone running tests against it.\n enableStandaloneFuseboxShell: process.env.NODE_ENV !== \"test\"\n }\n });\n rnDevtoolsMiddleware = devMiddleware.middleware;\n websocketEndpoints = {\n \"/hot\": createWebsocketServer({\n websocketServer: hmrServer\n }),\n // metro parity: the packager message socket (metro serves /message via\n // @react-native-community/cli-server-api). leaving the upgrade unanswered\n // dangles the socket and chromium queues every later websocket handshake\n // to the same host:port behind it (blocking e.g. zero /sync in sootsim).\n \"/message\": createMessageSocket(),\n ...devMiddleware.websocketEndpoints\n };\n (_server_httpServer = server.httpServer) === null || _server_httpServer === void 0 ? void 0 : _server_httpServer.on(\"upgrade\", function(request, socket, head) {\n var pathname = new URL(request.url, `http://${request.headers.host}`).pathname;\n var endpoint = websocketEndpoints[pathname];\n if (endpoint) {\n endpoint.handleUpgrade(request, socket, head, function(ws) {\n endpoint.emit(\"connection\", ws, request);\n });\n }\n });\n server.middlewares.use(rnDevtoolsMiddleware);\n metroReady = true;\n var metroElapsed = Date.now() - metroStartTime;\n debug === null || debug === void 0 ? void 0 : debug(`Metro bundler ready (${metroElapsed}ms)`);\n metroPromiseResolvers.resolve();\n } catch (err) {\n debug === null || debug === void 0 ? void 0 : debug(`Error during Metro initialization: ${err}`);\n metroPromiseResolvers.reject(err);\n throw err;\n }\n };\n var isLazyStartup = options.startup === \"lazy\";\n var metroStarting = false;\n var ensureMetroStarted = function() {\n if (metroStarting || metroReady) return;\n metroStarting = true;\n debug === null || debug === void 0 ? void 0 : debug(\"Starting Metro on-demand (lazy startup)\");\n startMetro().catch(function(err) {\n debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);\n });\n };\n if (!isLazyStartup) {\n if (server.httpServer) {\n if (server.httpServer.listening) {\n startMetro().catch(function(err) {\n debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);\n });\n } else {\n server.httpServer.on(\"listening\", function() {\n startMetro().catch(function(err) {\n debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);\n });\n });\n }\n } else {\n var waitForServer = function() {\n if (server.httpServer) {\n if (server.httpServer.listening) {\n startMetro().catch(function(err) {\n debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);\n });\n } else {\n server.httpServer.on(\"listening\", function() {\n startMetro().catch(function(err) {\n debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);\n });\n });\n }\n } else {\n setTimeout(waitForServer, 10);\n }\n };\n waitForServer();\n }\n } else {\n debug === null || debug === void 0 ? void 0 : debug(\"Metro lazy startup enabled - will start on first native request\");\n }\n server.middlewares.use(async function(req, res, next) {\n var _req_headers_useragent, _req_headers_useragent1, _req_url;\n var isNativeRequest = ((_req_headers_useragent = req.headers[\"user-agent\"]) === null || _req_headers_useragent === void 0 ? void 0 : _req_headers_useragent.includes(\"CFNetwork/\")) || ((_req_headers_useragent1 = req.headers[\"user-agent\"]) === null || _req_headers_useragent1 === void 0 ? void 0 : _req_headers_useragent1.includes(\"okhttp/\"));\n if (isLazyStartup && !metroReady) {\n var _req_url1;\n if (((_req_url1 = req.url) === null || _req_url1 === void 0 ? void 0 : _req_url1.includes(\".bundle\")) || req.url === \"/status\" && isNativeRequest) {\n ensureMetroStarted();\n }\n }\n if (req.url === \"/status\" && isNativeRequest) {\n res.statusCode = 200;\n res.end(\"packager-status:running\");\n return;\n }\n if (((_req_url = req.url) === null || _req_url === void 0 ? void 0 : _req_url.includes(\".bundle\")) && !metroReady) {\n await metroPromise;\n }\n if (middleware) {\n if (shouldLetViteServe(req.url)) {\n return next();\n }\n try {\n var _req_url2;\n if ((_req_url2 = req.url) === null || _req_url2 === void 0 ? void 0 : _req_url2.includes(\".bundle\")) {\n var VITE_METRO_DEBUG_BUNDLE = process.env.VITE_METRO_DEBUG_BUNDLE;\n if (VITE_METRO_DEBUG_BUNDLE) {\n if (existsSync(VITE_METRO_DEBUG_BUNDLE)) {\n debug === null || debug === void 0 ? void 0 : debug(`serving debug bundle from ${VITE_METRO_DEBUG_BUNDLE}`);\n var content = await readFile(VITE_METRO_DEBUG_BUNDLE, \"utf-8\");\n res.setHeader(\"Content-Type\", \"application/javascript\");\n res.end(content);\n return;\n }\n }\n }\n if (req.url === \"/open-stack-frame\" && req.method === \"POST\") {\n var body = \"\";\n req.on(\"data\", function(chunk) {\n body += chunk.toString();\n });\n req.on(\"end\", function() {\n try {\n var frame = JSON.parse(body);\n launchEditor(frame.file);\n res.statusCode = 200;\n res.end(\"Stack frame opened in editor\");\n } catch (e) {\n debug === null || debug === void 0 ? void 0 : debug(`Failed to parse stack frame: ${e}`);\n res.statusCode = 400;\n return res.end(\"Invalid stack frame JSON\");\n }\n });\n return;\n }\n await middleware(req, res, next);\n } catch (error) {\n debug === null || debug === void 0 ? void 0 : debug(`Metro middleware error: ${error}`);\n next();\n }\n } else {\n next();\n }\n });\n }\n };\n}\nexport {\n metroPlugin\n};\n//# sourceMappingURL=metroPlugin.js.map\n"],"mappings":"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"}
@@ -1,51 +1,51 @@
1
1
  import assetPathUtils from "./assetPathUtils.mjs";
2
2
  import fs from "node:fs";
3
3
  import path from "node:path";
4
+
4
5
  function cleanAssetCatalog(catalogDir) {
5
- const files = fs.readdirSync(catalogDir).filter(file => file.endsWith(".imageset"));
6
- for (const file of files) {
7
- fs.rmSync(path.join(catalogDir, file), {
8
- recursive: true,
9
- force: true
10
- });
11
- }
6
+ const files = fs.readdirSync(catalogDir).filter((file) => file.endsWith(".imageset"));
7
+ for (const file of files) {
8
+ fs.rmSync(path.join(catalogDir, file), {
9
+ recursive: true,
10
+ force: true
11
+ });
12
+ }
12
13
  }
13
14
  function getImageSet(catalogDir, asset, scales) {
14
- const fileName = assetPathUtils.getResourceIdentifier(asset);
15
- return {
16
- basePath: path.join(catalogDir, `${fileName}.imageset`),
17
- files: scales.map((scale, idx) => {
18
- const suffix = scale === 1 ? "" : `@${scale}x`;
19
- return {
20
- name: `${fileName + suffix}.${asset.type}`,
21
- scale,
22
- src: asset.files[idx]
23
- };
24
- })
25
- };
15
+ const fileName = assetPathUtils.getResourceIdentifier(asset);
16
+ return {
17
+ basePath: path.join(catalogDir, `${fileName}.imageset`),
18
+ files: scales.map((scale, idx) => {
19
+ const suffix = scale === 1 ? "" : `@${scale}x`;
20
+ return {
21
+ name: `${fileName + suffix}.${asset.type}`,
22
+ scale,
23
+ src: asset.files[idx]
24
+ };
25
+ })
26
+ };
26
27
  }
27
28
  function isCatalogAsset(asset) {
28
- return asset.type === "png" || asset.type === "jpg" || asset.type === "jpeg";
29
+ return asset.type === "png" || asset.type === "jpg" || asset.type === "jpeg";
29
30
  }
30
31
  function writeImageSet(imageSet) {
31
- fs.mkdirSync(imageSet.basePath, {
32
- recursive: true
33
- });
34
- for (const file of imageSet.files) {
35
- const dest = path.join(imageSet.basePath, file.name);
36
- fs.copyFileSync(file.src, dest);
37
- }
38
- fs.writeFileSync(path.join(imageSet.basePath, "Contents.json"), JSON.stringify({
39
- images: imageSet.files.map(file => ({
40
- filename: file.name,
41
- idiom: "universal",
42
- scale: `${file.scale}x`
43
- })),
44
- info: {
45
- author: "xcode",
46
- version: 1
47
- }
48
- }));
32
+ fs.mkdirSync(imageSet.basePath, { recursive: true });
33
+ for (const file of imageSet.files) {
34
+ const dest = path.join(imageSet.basePath, file.name);
35
+ fs.copyFileSync(file.src, dest);
36
+ }
37
+ fs.writeFileSync(path.join(imageSet.basePath, "Contents.json"), JSON.stringify({
38
+ images: imageSet.files.map((file) => ({
39
+ filename: file.name,
40
+ idiom: "universal",
41
+ scale: `${file.scale}x`
42
+ })),
43
+ info: {
44
+ author: "xcode",
45
+ version: 1
46
+ }
47
+ }));
49
48
  }
49
+
50
50
  export { cleanAssetCatalog, getImageSet, isCatalogAsset, writeImageSet };
51
51
  //# sourceMappingURL=assetCatalogIOS.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["assetPathUtils","fs","path","cleanAssetCatalog","catalogDir","files","readdirSync","filter","file","endsWith","rmSync","join","recursive","force","getImageSet","asset","scales","fileName","getResourceIdentifier","basePath","map","scale","idx","suffix","name","type","src","isCatalogAsset","writeImageSet","imageSet","mkdirSync","dest","copyFileSync","writeFileSync","JSON","stringify","images","filename","idiom","info","author","version"],"sources":["../../../../src/rn-commands/bundle/assetCatalogIOS.ts"],"sourcesContent":[null],"mappings":"AASA,OAAOA,cAAA,MAAoB;AAC3B,OAAOC,EAAA,MAAQ;AACf,OAAOC,IAAA,MAAU;AAEV,SAASC,kBAAkBC,UAAA,EAA0B;EAC1D,MAAMC,KAAA,GAAQJ,EAAA,CAAGK,WAAA,CAAYF,UAAU,EAAEG,MAAA,CAAQC,IAAA,IAASA,IAAA,CAAKC,QAAA,CAAS,WAAW,CAAC;EACpF,WAAWD,IAAA,IAAQH,KAAA,EAAO;IACxBJ,EAAA,CAAGS,MAAA,CAAOR,IAAA,CAAKS,IAAA,CAAKP,UAAA,EAAYI,IAAI,GAAG;MAAEI,SAAA,EAAW;MAAMC,KAAA,EAAO;IAAK,CAAC;EACzE;AACF;AAOO,SAASC,YACdV,UAAA,EACAW,KAAA,EACAC,MAAA,EACU;EACV,MAAMC,QAAA,GAAWjB,cAAA,CAAekB,qBAAA,CAAsBH,KAAK;EAC3D,OAAO;IACLI,QAAA,EAAUjB,IAAA,CAAKS,IAAA,CAAKP,UAAA,EAAY,GAAGa,QAAQ,WAAW;IACtDZ,KAAA,EAAOW,MAAA,CAAOI,GAAA,CAAI,CAACC,KAAA,EAAOC,GAAA,KAAQ;MAChC,MAAMC,MAAA,GAASF,KAAA,KAAU,IAAI,KAAK,IAAIA,KAAK;MAC3C,OAAO;QACLG,IAAA,EAAM,GAAGP,QAAA,GAAWM,MAAM,IAAIR,KAAA,CAAMU,IAAI;QACxCJ,KAAA;QACAK,GAAA,EAAKX,KAAA,CAAMV,KAAA,CAAMiB,GAAG;MACtB;IACF,CAAC;EACH;AACF;AAEO,SAASK,eAAeZ,KAAA,EAA2B;EACxD,OAAOA,KAAA,CAAMU,IAAA,KAAS,SAASV,KAAA,CAAMU,IAAA,KAAS,SAASV,KAAA,CAAMU,IAAA,KAAS;AACxE;AAEO,SAASG,cAAcC,QAAA,EAA0B;EACtD5B,EAAA,CAAG6B,SAAA,CAAUD,QAAA,CAASV,QAAA,EAAU;IAAEP,SAAA,EAAW;EAAK,CAAC;EAEnD,WAAWJ,IAAA,IAAQqB,QAAA,CAASxB,KAAA,EAAO;IACjC,MAAM0B,IAAA,GAAO7B,IAAA,CAAKS,IAAA,CAAKkB,QAAA,CAASV,QAAA,EAAUX,IAAA,CAAKgB,IAAI;IACnDvB,EAAA,CAAG+B,YAAA,CAAaxB,IAAA,CAAKkB,GAAA,EAAKK,IAAI;EAChC;EAEA9B,EAAA,CAAGgC,aAAA,CACD/B,IAAA,CAAKS,IAAA,CAAKkB,QAAA,CAASV,QAAA,EAAU,eAAe,GAC5Ce,IAAA,CAAKC,SAAA,CAAU;IACbC,MAAA,EAAQP,QAAA,CAASxB,KAAA,CAAMe,GAAA,CAAKZ,IAAA,KAAU;MACpC6B,QAAA,EAAU7B,IAAA,CAAKgB,IAAA;MACfc,KAAA,EAAO;MACPjB,KAAA,EAAO,GAAGb,IAAA,CAAKa,KAAK;IACtB,EAAE;IACFkB,IAAA,EAAM;MACJC,MAAA,EAAQ;MACRC,OAAA,EAAS;IACX;EACF,CAAC,CACH;AACF","ignoreList":[]}
1
+ {"version":3,"file":"assetCatalogIOS.js","names":[],"sources":["esm/rn-commands/bundle/assetCatalogIOS.js"],"sourcesContent":["import assetPathUtils from \"./assetPathUtils\";\nimport fs from \"node:fs\";\nimport path from \"node:path\";\nfunction cleanAssetCatalog(catalogDir) {\n const files = fs.readdirSync(catalogDir).filter((file) => file.endsWith(\".imageset\"));\n for (const file of files) {\n fs.rmSync(path.join(catalogDir, file), { recursive: true, force: true });\n }\n}\nfunction getImageSet(catalogDir, asset, scales) {\n const fileName = assetPathUtils.getResourceIdentifier(asset);\n return {\n basePath: path.join(catalogDir, `${fileName}.imageset`),\n files: scales.map((scale, idx) => {\n const suffix = scale === 1 ? \"\" : `@${scale}x`;\n return {\n name: `${fileName + suffix}.${asset.type}`,\n scale,\n src: asset.files[idx]\n };\n })\n };\n}\nfunction isCatalogAsset(asset) {\n return asset.type === \"png\" || asset.type === \"jpg\" || asset.type === \"jpeg\";\n}\nfunction writeImageSet(imageSet) {\n fs.mkdirSync(imageSet.basePath, { recursive: true });\n for (const file of imageSet.files) {\n const dest = path.join(imageSet.basePath, file.name);\n fs.copyFileSync(file.src, dest);\n }\n fs.writeFileSync(\n path.join(imageSet.basePath, \"Contents.json\"),\n JSON.stringify({\n images: imageSet.files.map((file) => ({\n filename: file.name,\n idiom: \"universal\",\n scale: `${file.scale}x`\n })),\n info: {\n author: \"xcode\",\n version: 1\n }\n })\n );\n}\nexport {\n cleanAssetCatalog,\n getImageSet,\n isCatalogAsset,\n writeImageSet\n};\n//# sourceMappingURL=assetCatalogIOS.js.map\n"],"mappings":";;;;;AAGA,SAAS,kBAAkB,YAAY;CACrC,MAAM,QAAQ,GAAG,YAAY,UAAU,CAAC,CAAC,QAAQ,SAAS,KAAK,SAAS,WAAW,CAAC;CACpF,KAAK,MAAM,QAAQ,OAAO;EACxB,GAAG,OAAO,KAAK,KAAK,YAAY,IAAI,GAAG;GAAE,WAAW;GAAM,OAAO;EAAK,CAAC;CACzE;AACF;AACA,SAAS,YAAY,YAAY,OAAO,QAAQ;CAC9C,MAAM,WAAW,eAAe,sBAAsB,KAAK;CAC3D,OAAO;EACL,UAAU,KAAK,KAAK,YAAY,GAAG,SAAS,UAAU;EACtD,OAAO,OAAO,KAAK,OAAO,QAAQ;GAChC,MAAM,SAAS,UAAU,IAAI,KAAK,IAAI,MAAM;GAC5C,OAAO;IACL,MAAM,GAAG,WAAW,OAAO,GAAG,MAAM;IACpC;IACA,KAAK,MAAM,MAAM;GACnB;EACF,CAAC;CACH;AACF;AACA,SAAS,eAAe,OAAO;CAC7B,OAAO,MAAM,SAAS,SAAS,MAAM,SAAS,SAAS,MAAM,SAAS;AACxE;AACA,SAAS,cAAc,UAAU;CAC/B,GAAG,UAAU,SAAS,UAAU,EAAE,WAAW,KAAK,CAAC;CACnD,KAAK,MAAM,QAAQ,SAAS,OAAO;EACjC,MAAM,OAAO,KAAK,KAAK,SAAS,UAAU,KAAK,IAAI;EACnD,GAAG,aAAa,KAAK,KAAK,IAAI;CAChC;CACA,GAAG,cACD,KAAK,KAAK,SAAS,UAAU,eAAe,GAC5C,KAAK,UAAU;EACb,QAAQ,SAAS,MAAM,KAAK,UAAU;GACpC,UAAU,KAAK;GACf,OAAO;GACP,OAAO,GAAG,KAAK,MAAM;EACvB,EAAE;EACF,MAAM;GACJ,QAAQ;GACR,SAAS;EACX;CACF,CAAC,CACH;AACF"}