@vxrn/vite-plugin-metro 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 (259) hide show
  1. package/dist/cjs/babel-plugins/import-meta-env-plugin.cjs +130 -0
  2. package/dist/cjs/babel-plugins/import-meta-env-plugin.native.js +138 -0
  3. package/dist/cjs/babel-plugins/import-meta-env-plugin.native.js.map +1 -0
  4. package/dist/cjs/env/platformEnv.cjs +76 -0
  5. package/dist/cjs/env/platformEnv.native.js +98 -0
  6. package/dist/cjs/env/platformEnv.native.js.map +1 -0
  7. package/dist/cjs/index.cjs +41 -0
  8. package/dist/cjs/index.native.js +44 -0
  9. package/dist/cjs/index.native.js.map +1 -0
  10. package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.cjs +62 -0
  11. package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.native.js +109 -0
  12. package/dist/cjs/metro-config/getMetroBabelConfigFromViteConfig.native.js.map +1 -0
  13. package/dist/cjs/metro-config/getMetroConfigFromViteConfig.cjs +270 -0
  14. package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js +284 -0
  15. package/dist/cjs/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -0
  16. package/dist/cjs/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.cjs +55 -0
  17. package/dist/cjs/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js +59 -0
  18. package/dist/cjs/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js.map +1 -0
  19. package/dist/cjs/metro-config/types.cjs +18 -0
  20. package/dist/cjs/metro-config/types.native.js +21 -0
  21. package/dist/cjs/metro-config/types.native.js.map +1 -0
  22. package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.cjs +71 -0
  23. package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.native.js +82 -0
  24. package/dist/cjs/plugins/expoManifestRequestHandlerPlugin.native.js.map +1 -0
  25. package/dist/cjs/plugins/metroPlugin.cjs +272 -0
  26. package/dist/cjs/plugins/metroPlugin.native.js +281 -0
  27. package/dist/cjs/plugins/metroPlugin.native.js.map +1 -0
  28. package/dist/cjs/rn-commands/bundle/assetCatalogIOS.cjs +90 -0
  29. package/dist/cjs/rn-commands/bundle/assetCatalogIOS.native.js +135 -0
  30. package/dist/cjs/rn-commands/bundle/assetCatalogIOS.native.js.map +1 -0
  31. package/dist/cjs/rn-commands/bundle/assetPathUtils.cjs +74 -0
  32. package/dist/cjs/rn-commands/bundle/assetPathUtils.native.js +77 -0
  33. package/dist/cjs/rn-commands/bundle/assetPathUtils.native.js.map +1 -0
  34. package/dist/cjs/rn-commands/bundle/buildBundle.cjs +62 -0
  35. package/dist/cjs/rn-commands/bundle/buildBundle.native.js +67 -0
  36. package/dist/cjs/rn-commands/bundle/buildBundle.native.js.map +1 -0
  37. package/dist/cjs/rn-commands/bundle/buildBundleWithConfig.cjs +87 -0
  38. package/dist/cjs/rn-commands/bundle/buildBundleWithConfig.native.js +94 -0
  39. package/dist/cjs/rn-commands/bundle/buildBundleWithConfig.native.js.map +1 -0
  40. package/dist/cjs/rn-commands/bundle/filterPlatformAssetScales.cjs +51 -0
  41. package/dist/cjs/rn-commands/bundle/filterPlatformAssetScales.native.js +75 -0
  42. package/dist/cjs/rn-commands/bundle/filterPlatformAssetScales.native.js.map +1 -0
  43. package/dist/cjs/rn-commands/bundle/getAssetDestPathAndroid.cjs +46 -0
  44. package/dist/cjs/rn-commands/bundle/getAssetDestPathAndroid.native.js +49 -0
  45. package/dist/cjs/rn-commands/bundle/getAssetDestPathAndroid.native.js.map +1 -0
  46. package/dist/cjs/rn-commands/bundle/getAssetDestPathIOS.cjs +49 -0
  47. package/dist/cjs/rn-commands/bundle/getAssetDestPathIOS.native.js +52 -0
  48. package/dist/cjs/rn-commands/bundle/getAssetDestPathIOS.native.js.map +1 -0
  49. package/dist/cjs/rn-commands/bundle/getBuildBundleFn.cjs +45 -0
  50. package/dist/cjs/rn-commands/bundle/getBuildBundleFn.native.js +48 -0
  51. package/dist/cjs/rn-commands/bundle/getBuildBundleFn.native.js.map +1 -0
  52. package/dist/cjs/rn-commands/bundle/index.cjs +30 -0
  53. package/dist/cjs/rn-commands/bundle/index.native.js +33 -0
  54. package/dist/cjs/rn-commands/bundle/index.native.js.map +1 -0
  55. package/dist/cjs/rn-commands/bundle/saveAssets.cjs +121 -0
  56. package/dist/cjs/rn-commands/bundle/saveAssets.native.js +143 -0
  57. package/dist/cjs/rn-commands/bundle/saveAssets.native.js.map +1 -0
  58. package/dist/cjs/rn-commands/bundle/types.cjs +18 -0
  59. package/dist/cjs/rn-commands/bundle/types.native.js +21 -0
  60. package/dist/cjs/rn-commands/bundle/types.native.js.map +1 -0
  61. package/dist/cjs/rn-commands/index.cjs +39 -0
  62. package/dist/cjs/rn-commands/index.native.js +42 -0
  63. package/dist/cjs/rn-commands/index.native.js.map +1 -0
  64. package/dist/cjs/transformer/babel-core.cjs +30 -0
  65. package/dist/cjs/transformer/babel-core.native.js +33 -0
  66. package/dist/cjs/transformer/babel-core.native.js.map +1 -0
  67. package/dist/cjs/transformer/babel-transformer.cjs +176 -0
  68. package/dist/cjs/transformer/babel-transformer.native.js +186 -0
  69. package/dist/cjs/transformer/babel-transformer.native.js.map +1 -0
  70. package/dist/cjs/transformer/loadBabelConfig.cjs +64 -0
  71. package/dist/cjs/transformer/loadBabelConfig.native.js +70 -0
  72. package/dist/cjs/transformer/loadBabelConfig.native.js.map +1 -0
  73. package/dist/cjs/transformer/transformSync.cjs +85 -0
  74. package/dist/cjs/transformer/transformSync.native.js +91 -0
  75. package/dist/cjs/transformer/transformSync.native.js.map +1 -0
  76. package/dist/cjs/transformer/transformSync.test.cjs +36 -0
  77. package/dist/cjs/transformer/transformSync.test.native.js +49 -0
  78. package/dist/cjs/transformer/transformSync.test.native.js.map +1 -0
  79. package/dist/cjs/transformer/types.cjs +18 -0
  80. package/dist/cjs/transformer/types.native.js +21 -0
  81. package/dist/cjs/transformer/types.native.js.map +1 -0
  82. package/dist/cjs/utils/exit.cjs +174 -0
  83. package/dist/cjs/utils/exit.native.js +281 -0
  84. package/dist/cjs/utils/exit.native.js.map +1 -0
  85. package/dist/cjs/utils/getTerminalReporter.cjs +64 -0
  86. package/dist/cjs/utils/getTerminalReporter.native.js +70 -0
  87. package/dist/cjs/utils/getTerminalReporter.native.js.map +1 -0
  88. package/dist/cjs/utils/metroCacheManager.cjs +125 -0
  89. package/dist/cjs/utils/metroCacheManager.native.js +148 -0
  90. package/dist/cjs/utils/metroCacheManager.native.js.map +1 -0
  91. package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.cjs +39 -0
  92. package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js +42 -0
  93. package/dist/cjs/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js.map +1 -0
  94. package/dist/cjs/utils/projectImport.cjs +72 -0
  95. package/dist/cjs/utils/projectImport.native.js +83 -0
  96. package/dist/cjs/utils/projectImport.native.js.map +1 -0
  97. package/dist/esm/babel-plugins/import-meta-env-plugin.mjs +93 -0
  98. package/dist/esm/babel-plugins/import-meta-env-plugin.mjs.map +1 -0
  99. package/dist/esm/babel-plugins/import-meta-env-plugin.native.js +98 -0
  100. package/dist/esm/babel-plugins/import-meta-env-plugin.native.js.map +1 -0
  101. package/dist/esm/env/platformEnv.mjs +49 -0
  102. package/dist/esm/env/platformEnv.mjs.map +1 -0
  103. package/dist/esm/env/platformEnv.native.js +68 -0
  104. package/dist/esm/env/platformEnv.native.js.map +1 -0
  105. package/dist/esm/index.js +8 -0
  106. package/dist/esm/index.js.map +1 -0
  107. package/dist/esm/index.mjs +8 -0
  108. package/dist/esm/index.mjs.map +1 -0
  109. package/dist/esm/index.native.js +8 -0
  110. package/dist/esm/index.native.js.map +1 -0
  111. package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.mjs +37 -0
  112. package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.mjs.map +1 -0
  113. package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.native.js +81 -0
  114. package/dist/esm/metro-config/getMetroBabelConfigFromViteConfig.native.js.map +1 -0
  115. package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs +233 -0
  116. package/dist/esm/metro-config/getMetroConfigFromViteConfig.mjs.map +1 -0
  117. package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js +244 -0
  118. package/dist/esm/metro-config/getMetroConfigFromViteConfig.native.js.map +1 -0
  119. package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.mjs +30 -0
  120. package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.mjs.map +1 -0
  121. package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js +31 -0
  122. package/dist/esm/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js.map +1 -0
  123. package/dist/esm/metro-config/types.mjs +2 -0
  124. package/dist/esm/metro-config/types.mjs.map +1 -0
  125. package/dist/esm/metro-config/types.native.js +2 -0
  126. package/dist/esm/metro-config/types.native.js.map +1 -0
  127. package/dist/esm/plugins/expoManifestRequestHandlerPlugin.mjs +46 -0
  128. package/dist/esm/plugins/expoManifestRequestHandlerPlugin.mjs.map +1 -0
  129. package/dist/esm/plugins/expoManifestRequestHandlerPlugin.native.js +54 -0
  130. package/dist/esm/plugins/expoManifestRequestHandlerPlugin.native.js.map +1 -0
  131. package/dist/esm/plugins/metroPlugin.mjs +236 -0
  132. package/dist/esm/plugins/metroPlugin.mjs.map +1 -0
  133. package/dist/esm/plugins/metroPlugin.native.js +242 -0
  134. package/dist/esm/plugins/metroPlugin.native.js.map +1 -0
  135. package/dist/esm/rn-commands/bundle/assetCatalogIOS.mjs +51 -0
  136. package/dist/esm/rn-commands/bundle/assetCatalogIOS.mjs.map +1 -0
  137. package/dist/esm/rn-commands/bundle/assetCatalogIOS.native.js +93 -0
  138. package/dist/esm/rn-commands/bundle/assetCatalogIOS.native.js.map +1 -0
  139. package/dist/esm/rn-commands/bundle/assetPathUtils.mjs +49 -0
  140. package/dist/esm/rn-commands/bundle/assetPathUtils.mjs.map +1 -0
  141. package/dist/esm/rn-commands/bundle/assetPathUtils.native.js +49 -0
  142. package/dist/esm/rn-commands/bundle/assetPathUtils.native.js.map +1 -0
  143. package/dist/esm/rn-commands/bundle/buildBundle.mjs +37 -0
  144. package/dist/esm/rn-commands/bundle/buildBundle.mjs.map +1 -0
  145. package/dist/esm/rn-commands/bundle/buildBundle.native.js +39 -0
  146. package/dist/esm/rn-commands/bundle/buildBundle.native.js.map +1 -0
  147. package/dist/esm/rn-commands/bundle/buildBundleWithConfig.mjs +51 -0
  148. package/dist/esm/rn-commands/bundle/buildBundleWithConfig.mjs.map +1 -0
  149. package/dist/esm/rn-commands/bundle/buildBundleWithConfig.native.js +55 -0
  150. package/dist/esm/rn-commands/bundle/buildBundleWithConfig.native.js.map +1 -0
  151. package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.mjs +26 -0
  152. package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.mjs.map +1 -0
  153. package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.native.js +47 -0
  154. package/dist/esm/rn-commands/bundle/filterPlatformAssetScales.native.js.map +1 -0
  155. package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.mjs +10 -0
  156. package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.mjs.map +1 -0
  157. package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.native.js +10 -0
  158. package/dist/esm/rn-commands/bundle/getAssetDestPathAndroid.native.js.map +1 -0
  159. package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.mjs +13 -0
  160. package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.mjs.map +1 -0
  161. package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.native.js +13 -0
  162. package/dist/esm/rn-commands/bundle/getAssetDestPathIOS.native.js.map +1 -0
  163. package/dist/esm/rn-commands/bundle/getBuildBundleFn.mjs +20 -0
  164. package/dist/esm/rn-commands/bundle/getBuildBundleFn.mjs.map +1 -0
  165. package/dist/esm/rn-commands/bundle/getBuildBundleFn.native.js +20 -0
  166. package/dist/esm/rn-commands/bundle/getBuildBundleFn.native.js.map +1 -0
  167. package/dist/esm/rn-commands/bundle/index.mjs +4 -0
  168. package/dist/esm/rn-commands/bundle/index.mjs.map +1 -0
  169. package/dist/esm/rn-commands/bundle/index.native.js +4 -0
  170. package/dist/esm/rn-commands/bundle/index.native.js.map +1 -0
  171. package/dist/esm/rn-commands/bundle/saveAssets.mjs +85 -0
  172. package/dist/esm/rn-commands/bundle/saveAssets.mjs.map +1 -0
  173. package/dist/esm/rn-commands/bundle/saveAssets.native.js +104 -0
  174. package/dist/esm/rn-commands/bundle/saveAssets.native.js.map +1 -0
  175. package/dist/esm/rn-commands/bundle/types.mjs +2 -0
  176. package/dist/esm/rn-commands/bundle/types.mjs.map +1 -0
  177. package/dist/esm/rn-commands/bundle/types.native.js +2 -0
  178. package/dist/esm/rn-commands/bundle/types.native.js.map +1 -0
  179. package/dist/esm/rn-commands/index.mjs +3 -0
  180. package/dist/esm/rn-commands/index.mjs.map +1 -0
  181. package/dist/esm/rn-commands/index.native.js +3 -0
  182. package/dist/esm/rn-commands/index.native.js.map +1 -0
  183. package/dist/esm/transformer/babel-core.mjs +3 -0
  184. package/dist/esm/transformer/babel-core.mjs.map +1 -0
  185. package/dist/esm/transformer/babel-core.native.js +3 -0
  186. package/dist/esm/transformer/babel-core.native.js.map +1 -0
  187. package/dist/esm/transformer/babel-transformer.mjs +148 -0
  188. package/dist/esm/transformer/babel-transformer.mjs.map +1 -0
  189. package/dist/esm/transformer/babel-transformer.native.js +160 -0
  190. package/dist/esm/transformer/babel-transformer.native.js.map +1 -0
  191. package/dist/esm/transformer/loadBabelConfig.mjs +28 -0
  192. package/dist/esm/transformer/loadBabelConfig.mjs.map +1 -0
  193. package/dist/esm/transformer/loadBabelConfig.native.js +31 -0
  194. package/dist/esm/transformer/loadBabelConfig.native.js.map +1 -0
  195. package/dist/esm/transformer/transformSync.mjs +49 -0
  196. package/dist/esm/transformer/transformSync.mjs.map +1 -0
  197. package/dist/esm/transformer/transformSync.native.js +52 -0
  198. package/dist/esm/transformer/transformSync.native.js.map +1 -0
  199. package/dist/esm/transformer/transformSync.test.mjs +37 -0
  200. package/dist/esm/transformer/transformSync.test.mjs.map +1 -0
  201. package/dist/esm/transformer/transformSync.test.native.js +47 -0
  202. package/dist/esm/transformer/transformSync.test.native.js.map +1 -0
  203. package/dist/esm/transformer/types.mjs +2 -0
  204. package/dist/esm/transformer/types.mjs.map +1 -0
  205. package/dist/esm/transformer/types.native.js +2 -0
  206. package/dist/esm/transformer/types.native.js.map +1 -0
  207. package/dist/esm/utils/exit.mjs +135 -0
  208. package/dist/esm/utils/exit.mjs.map +1 -0
  209. package/dist/esm/utils/exit.native.js +239 -0
  210. package/dist/esm/utils/exit.native.js.map +1 -0
  211. package/dist/esm/utils/getTerminalReporter.mjs +28 -0
  212. package/dist/esm/utils/getTerminalReporter.mjs.map +1 -0
  213. package/dist/esm/utils/getTerminalReporter.native.js +31 -0
  214. package/dist/esm/utils/getTerminalReporter.native.js.map +1 -0
  215. package/dist/esm/utils/metroCacheManager.mjs +100 -0
  216. package/dist/esm/utils/metroCacheManager.mjs.map +1 -0
  217. package/dist/esm/utils/metroCacheManager.native.js +120 -0
  218. package/dist/esm/utils/metroCacheManager.native.js.map +1 -0
  219. package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.mjs +14 -0
  220. package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.mjs.map +1 -0
  221. package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js +14 -0
  222. package/dist/esm/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.native.js.map +1 -0
  223. package/dist/esm/utils/projectImport.mjs +34 -0
  224. package/dist/esm/utils/projectImport.mjs.map +1 -0
  225. package/dist/esm/utils/projectImport.native.js +42 -0
  226. package/dist/esm/utils/projectImport.native.js.map +1 -0
  227. package/package.json +3 -3
  228. package/types/babel-plugins/import-meta-env-plugin.d.ts.map +1 -0
  229. package/types/env/platformEnv.d.ts.map +1 -0
  230. package/types/index.d.ts.map +1 -0
  231. package/types/metro-config/getMetroBabelConfigFromViteConfig.d.ts.map +1 -0
  232. package/types/metro-config/getMetroConfigFromViteConfig.d.ts.map +1 -0
  233. package/types/metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.d.ts.map +1 -0
  234. package/types/metro-config/types.d.ts.map +1 -0
  235. package/types/plugins/expoManifestRequestHandlerPlugin.d.ts.map +1 -0
  236. package/types/plugins/metroPlugin.d.ts.map +1 -0
  237. package/types/rn-commands/bundle/assetCatalogIOS.d.ts.map +1 -0
  238. package/types/rn-commands/bundle/assetPathUtils.d.ts.map +1 -0
  239. package/types/rn-commands/bundle/buildBundle.d.ts.map +1 -0
  240. package/types/rn-commands/bundle/buildBundleWithConfig.d.ts.map +1 -0
  241. package/types/rn-commands/bundle/filterPlatformAssetScales.d.ts.map +1 -0
  242. package/types/rn-commands/bundle/getAssetDestPathAndroid.d.ts.map +1 -0
  243. package/types/rn-commands/bundle/getAssetDestPathIOS.d.ts.map +1 -0
  244. package/types/rn-commands/bundle/getBuildBundleFn.d.ts.map +1 -0
  245. package/types/rn-commands/bundle/index.d.ts.map +1 -0
  246. package/types/rn-commands/bundle/saveAssets.d.ts.map +1 -0
  247. package/types/rn-commands/bundle/types.d.ts.map +1 -0
  248. package/types/rn-commands/index.d.ts.map +1 -0
  249. package/types/transformer/babel-core.d.ts.map +1 -0
  250. package/types/transformer/babel-transformer.d.ts.map +1 -0
  251. package/types/transformer/loadBabelConfig.d.ts.map +1 -0
  252. package/types/transformer/transformSync.d.ts.map +1 -0
  253. package/types/transformer/transformSync.test.d.ts.map +1 -0
  254. package/types/transformer/types.d.ts.map +1 -0
  255. package/types/utils/exit.d.ts.map +1 -0
  256. package/types/utils/getTerminalReporter.d.ts.map +1 -0
  257. package/types/utils/metroCacheManager.d.ts.map +1 -0
  258. package/types/utils/patchExpoGoManifestHandlerMiddlewareWithCustomMainModuleName.d.ts.map +1 -0
  259. package/types/utils/projectImport.d.ts.map +1 -0
@@ -0,0 +1,281 @@
1
+ "use strict";
2
+
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __export = (target, all) => {
10
+ for (var name in all) __defProp(target, name, {
11
+ get: all[name],
12
+ enumerable: true
13
+ });
14
+ };
15
+ var __copyProps = (to, from, except, desc) => {
16
+ if (from && typeof from === "object" || typeof from === "function") {
17
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
18
+ get: () => from[key],
19
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
20
+ });
21
+ }
22
+ return to;
23
+ };
24
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
25
+ // If the importer is in node compatibility mode or this is not an ESM
26
+ // file that has been converted to a CommonJS file using a Babel-
27
+ // compatible transform (i.e. "__esModule" has not been set), then set
28
+ // "default" to the CommonJS "module.exports" for node compatibility.
29
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
30
+ value: mod,
31
+ enumerable: true
32
+ }) : target, mod));
33
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
34
+ value: true
35
+ }), mod);
36
+ var metroPlugin_exports = {};
37
+ __export(metroPlugin_exports, {
38
+ metroPlugin: () => metroPlugin
39
+ });
40
+ module.exports = __toCommonJS(metroPlugin_exports);
41
+ var import_fs = require("fs");
42
+ var import_promises = require("fs/promises");
43
+ var import_path = require("path");
44
+ var import_launch_editor = __toESM(require("launch-editor"), 1);
45
+ var import_debug = require("@vxrn/debug");
46
+ var import_utils = require("@vxrn/utils");
47
+ var import_metroCacheManager = require("../utils/metroCacheManager.native.js");
48
+ var import_projectImport = require("../utils/projectImport.native.js");
49
+ var import_getMetroConfigFromViteConfig = require("../metro-config/getMetroConfigFromViteConfig.native.js");
50
+ var import_patchMetroServerWithViteConfigAndMetroPluginOptions = require("../metro-config/patchMetroServerWithViteConfigAndMetroPluginOptions.native.js");
51
+ var {
52
+ debug
53
+ } = (0, import_debug.createDebugger)("vite-plugin-metro");
54
+ function metroPlugin() {
55
+ var options = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
56
+ globalThis["__viteMetroPluginOptions__"] = options;
57
+ return {
58
+ name: "metro",
59
+ // configResolved(config) {
60
+ // projectRoot = config.root
61
+ // },
62
+ configureServer(server) {
63
+ var projectRoot = (0, import_path.resolve)(server.config.root);
64
+ var shouldLetViteServe = function (url) {
65
+ if (!url) return false;
66
+ var pathname = "";
67
+ try {
68
+ pathname = new URL(url, "http://localhost").pathname;
69
+ } catch (unused) {
70
+ var _url_split_;
71
+ pathname = (_url_split_ = url.split("?")[0]) !== null && _url_split_ !== void 0 ? _url_split_ : "";
72
+ }
73
+ if (!pathname.startsWith("/assets/")) return false;
74
+ if (pathname.endsWith("_vxrn_loader.js")) return true;
75
+ var decodedPathname = pathname;
76
+ try {
77
+ decodedPathname = decodeURIComponent(pathname);
78
+ } catch (unused) {}
79
+ var filePath = (0, import_path.resolve)(projectRoot, decodedPathname.slice(1));
80
+ var relativePath = (0, import_path.relative)(projectRoot, filePath);
81
+ var isInsideRoot = relativePath !== "" && !relativePath.startsWith("..") && !(0, import_path.isAbsolute)(relativePath);
82
+ return isInsideRoot && (0, import_fs.existsSync)(filePath);
83
+ };
84
+ var metroReady = false;
85
+ var middleware;
86
+ var metroServer;
87
+ var hmrServer;
88
+ var websocketEndpoints;
89
+ var rnDevtoolsMiddleware;
90
+ var metroPromise;
91
+ var metroPromiseResolvers;
92
+ metroPromise = new Promise(function (resolve2, reject) {
93
+ metroPromiseResolvers = {
94
+ resolve: resolve2,
95
+ reject
96
+ };
97
+ });
98
+ var startMetro = async function () {
99
+ var metroStartTime = Date.now();
100
+ try {
101
+ var _server_httpServer;
102
+ (0, import_metroCacheManager.checkAndClearMetroCacheFromVite)(server, server.config.logger);
103
+ var {
104
+ default: Metro
105
+ } = await (0, import_projectImport.projectImport)(projectRoot, "metro");
106
+ var {
107
+ default: MetroHmrServer
108
+ } = await (0, import_projectImport.projectImport)(projectRoot, "metro/private/HmrServer");
109
+ var {
110
+ default: createWebsocketServer
111
+ } = await (0, import_projectImport.projectImport)(projectRoot, "metro/private/lib/createWebsocketServer");
112
+ var {
113
+ createDevMiddleware
114
+ } = await (0, import_projectImport.projectImport)(projectRoot, "@react-native/dev-middleware");
115
+ var config = await (0, import_getMetroConfigFromViteConfig.getMetroConfigFromViteConfig)(server.config, options);
116
+ var metroResult = await Metro.createConnectMiddleware(config, {
117
+ // Force enable file watching, even on CI.
118
+ // This is needed for HMR tests to work on CI.
119
+ watch: true
120
+ });
121
+ middleware = metroResult.middleware;
122
+ metroServer = metroResult.metroServer;
123
+ (0, import_patchMetroServerWithViteConfigAndMetroPluginOptions.patchMetroServerWithViteConfigAndMetroPluginOptions)(metroServer, server.config, options);
124
+ hmrServer = new MetroHmrServer(metroServer.getBundler(), metroServer.getCreateModuleId(), config);
125
+ var reactNativeDevToolsUrl = `http://${typeof server.config.server.host === "boolean" ? "localhost" : server.config.server.host}:${server.config.server.port}`;
126
+ var devMiddleware = createDevMiddleware({
127
+ serverBaseUrl: reactNativeDevToolsUrl,
128
+ logger: console,
129
+ unstable_experiments: {
130
+ // rn 0.86 turns this on by default and prepares the standalone debugger
131
+ // shell eagerly while building the middleware. its tool launcher throws
132
+ // outright under NODE_ENV=test rather than spawn a gui, which would take
133
+ // the whole dev server down on boot for anyone running tests against it.
134
+ enableStandaloneFuseboxShell: process.env.NODE_ENV !== "test"
135
+ }
136
+ });
137
+ rnDevtoolsMiddleware = devMiddleware.middleware;
138
+ websocketEndpoints = {
139
+ "/hot": createWebsocketServer({
140
+ websocketServer: hmrServer
141
+ }),
142
+ // metro parity: the packager message socket (metro serves /message via
143
+ // @react-native-community/cli-server-api). leaving the upgrade unanswered
144
+ // dangles the socket and chromium queues every later websocket handshake
145
+ // to the same host:port behind it (blocking e.g. zero /sync in sootsim).
146
+ "/message": (0, import_utils.createMessageSocket)(),
147
+ ...devMiddleware.websocketEndpoints
148
+ };
149
+ (_server_httpServer = server.httpServer) === null || _server_httpServer === void 0 ? void 0 : _server_httpServer.on("upgrade", function (request, socket, head) {
150
+ var pathname = new URL(request.url, `http://${request.headers.host}`).pathname;
151
+ var endpoint = websocketEndpoints[pathname];
152
+ if (endpoint) {
153
+ endpoint.handleUpgrade(request, socket, head, function (ws) {
154
+ endpoint.emit("connection", ws, request);
155
+ });
156
+ }
157
+ });
158
+ server.middlewares.use(rnDevtoolsMiddleware);
159
+ metroReady = true;
160
+ var metroElapsed = Date.now() - metroStartTime;
161
+ debug === null || debug === void 0 ? void 0 : debug(`Metro bundler ready (${metroElapsed}ms)`);
162
+ metroPromiseResolvers.resolve();
163
+ } catch (err) {
164
+ debug === null || debug === void 0 ? void 0 : debug(`Error during Metro initialization: ${err}`);
165
+ metroPromiseResolvers.reject(err);
166
+ throw err;
167
+ }
168
+ };
169
+ var isLazyStartup = options.startup === "lazy";
170
+ var metroStarting = false;
171
+ var ensureMetroStarted = function () {
172
+ if (metroStarting || metroReady) return;
173
+ metroStarting = true;
174
+ debug === null || debug === void 0 ? void 0 : debug("Starting Metro on-demand (lazy startup)");
175
+ startMetro().catch(function (err) {
176
+ debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);
177
+ });
178
+ };
179
+ if (!isLazyStartup) {
180
+ if (server.httpServer) {
181
+ if (server.httpServer.listening) {
182
+ startMetro().catch(function (err) {
183
+ debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);
184
+ });
185
+ } else {
186
+ server.httpServer.on("listening", function () {
187
+ startMetro().catch(function (err) {
188
+ debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);
189
+ });
190
+ });
191
+ }
192
+ } else {
193
+ var waitForServer = function () {
194
+ if (server.httpServer) {
195
+ if (server.httpServer.listening) {
196
+ startMetro().catch(function (err) {
197
+ debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);
198
+ });
199
+ } else {
200
+ server.httpServer.on("listening", function () {
201
+ startMetro().catch(function (err) {
202
+ debug === null || debug === void 0 ? void 0 : debug(`Failed to start Metro: ${err}`);
203
+ });
204
+ });
205
+ }
206
+ } else {
207
+ setTimeout(waitForServer, 10);
208
+ }
209
+ };
210
+ waitForServer();
211
+ }
212
+ } else {
213
+ debug === null || debug === void 0 ? void 0 : debug("Metro lazy startup enabled - will start on first native request");
214
+ }
215
+ server.middlewares.use(async function (req, res, next) {
216
+ var _req_headers_useragent, _req_headers_useragent1, _req_url;
217
+ 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/"));
218
+ if (isLazyStartup && !metroReady) {
219
+ var _req_url1;
220
+ if (((_req_url1 = req.url) === null || _req_url1 === void 0 ? void 0 : _req_url1.includes(".bundle")) || req.url === "/status" && isNativeRequest) {
221
+ ensureMetroStarted();
222
+ }
223
+ }
224
+ if (req.url === "/status" && isNativeRequest) {
225
+ res.statusCode = 200;
226
+ res.end("packager-status:running");
227
+ return;
228
+ }
229
+ if (((_req_url = req.url) === null || _req_url === void 0 ? void 0 : _req_url.includes(".bundle")) && !metroReady) {
230
+ await metroPromise;
231
+ }
232
+ if (middleware) {
233
+ if (shouldLetViteServe(req.url)) {
234
+ return next();
235
+ }
236
+ try {
237
+ var _req_url2;
238
+ if ((_req_url2 = req.url) === null || _req_url2 === void 0 ? void 0 : _req_url2.includes(".bundle")) {
239
+ var VITE_METRO_DEBUG_BUNDLE = process.env.VITE_METRO_DEBUG_BUNDLE;
240
+ if (VITE_METRO_DEBUG_BUNDLE) {
241
+ if ((0, import_fs.existsSync)(VITE_METRO_DEBUG_BUNDLE)) {
242
+ debug === null || debug === void 0 ? void 0 : debug(`serving debug bundle from ${VITE_METRO_DEBUG_BUNDLE}`);
243
+ var content = await (0, import_promises.readFile)(VITE_METRO_DEBUG_BUNDLE, "utf-8");
244
+ res.setHeader("Content-Type", "application/javascript");
245
+ res.end(content);
246
+ return;
247
+ }
248
+ }
249
+ }
250
+ if (req.url === "/open-stack-frame" && req.method === "POST") {
251
+ var body = "";
252
+ req.on("data", function (chunk) {
253
+ body += chunk.toString();
254
+ });
255
+ req.on("end", function () {
256
+ try {
257
+ var frame = JSON.parse(body);
258
+ (0, import_launch_editor.default)(frame.file);
259
+ res.statusCode = 200;
260
+ res.end("Stack frame opened in editor");
261
+ } catch (e) {
262
+ debug === null || debug === void 0 ? void 0 : debug(`Failed to parse stack frame: ${e}`);
263
+ res.statusCode = 400;
264
+ return res.end("Invalid stack frame JSON");
265
+ }
266
+ });
267
+ return;
268
+ }
269
+ await middleware(req, res, next);
270
+ } catch (error) {
271
+ debug === null || debug === void 0 ? void 0 : debug(`Metro middleware error: ${error}`);
272
+ next();
273
+ }
274
+ } else {
275
+ next();
276
+ }
277
+ });
278
+ }
279
+ };
280
+ }
281
+ //# sourceMappingURL=metroPlugin.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","metroPlugin_exports","__export","metroPlugin","module","exports","import_fs","require","import_promises","import_path","import_launch_editor","__toESM","import_debug","import_utils","import_metroCacheManager","import_projectImport","import_getMetroConfigFromViteConfig","import_patchMetroServerWithViteConfigAndMetroPluginOptions","debug","createDebugger","options","arguments","length","globalThis","name","configureServer","server","projectRoot","resolve","config","root","shouldLetViteServe","url","pathname","URL","unused","_url_split_","split","startsWith","endsWith","decodedPathname","decodeURIComponent","filePath","slice","relativePath","relative","isInsideRoot","isAbsolute","existsSync","metroReady","middleware","metroServer","hmrServer","websocketEndpoints","rnDevtoolsMiddleware","metroPromise","metroPromiseResolvers","Promise","resolve2","reject","startMetro","metroStartTime","Date","now","_server_httpServer","checkAndClearMetroCacheFromVite","logger","default","Metro","projectImport","MetroHmrServer","createWebsocketServer","createDevMiddleware","getMetroConfigFromViteConfig","metroResult","createConnectMiddleware","watch","patchMetroServerWithViteConfigAndMetroPluginOptions","getBundler","getCreateModuleId","reactNativeDevToolsUrl","host","port","devMiddleware","serverBaseUrl","console","unstable_experiments","enableStandaloneFuseboxShell","process","env","NODE_ENV","websocketServer","createMessageSocket","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","readFile","setHeader","method","body","chunk","toString","frame","JSON","parse","file","e","error"],"sources":["../../../src/plugins/metroPlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,90 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
+ get: () => from[key],
17
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
+ });
19
+ }
20
+ return to;
21
+ };
22
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
23
+ // If the importer is in node compatibility mode or this is not an ESM
24
+ // file that has been converted to a CommonJS file using a Babel-
25
+ // compatible transform (i.e. "__esModule" has not been set), then set
26
+ // "default" to the CommonJS "module.exports" for node compatibility.
27
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
28
+ value: mod,
29
+ enumerable: true
30
+ }) : target, mod));
31
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
32
+ value: true
33
+ }), mod);
34
+ var assetCatalogIOS_exports = {};
35
+ __export(assetCatalogIOS_exports, {
36
+ cleanAssetCatalog: () => cleanAssetCatalog,
37
+ getImageSet: () => getImageSet,
38
+ isCatalogAsset: () => isCatalogAsset,
39
+ writeImageSet: () => writeImageSet
40
+ });
41
+ module.exports = __toCommonJS(assetCatalogIOS_exports);
42
+ var import_assetPathUtils = __toESM(require("./assetPathUtils.cjs"), 1);
43
+ var import_node_fs = __toESM(require("node:fs"), 1);
44
+ var import_node_path = __toESM(require("node:path"), 1);
45
+ function cleanAssetCatalog(catalogDir) {
46
+ const files = import_node_fs.default.readdirSync(catalogDir).filter(file => file.endsWith(".imageset"));
47
+ for (const file of files) {
48
+ import_node_fs.default.rmSync(import_node_path.default.join(catalogDir, file), {
49
+ recursive: true,
50
+ force: true
51
+ });
52
+ }
53
+ }
54
+ function getImageSet(catalogDir, asset, scales) {
55
+ const fileName = import_assetPathUtils.default.getResourceIdentifier(asset);
56
+ return {
57
+ basePath: import_node_path.default.join(catalogDir, `${fileName}.imageset`),
58
+ files: scales.map((scale, idx) => {
59
+ const suffix = scale === 1 ? "" : `@${scale}x`;
60
+ return {
61
+ name: `${fileName + suffix}.${asset.type}`,
62
+ scale,
63
+ src: asset.files[idx]
64
+ };
65
+ })
66
+ };
67
+ }
68
+ function isCatalogAsset(asset) {
69
+ return asset.type === "png" || asset.type === "jpg" || asset.type === "jpeg";
70
+ }
71
+ function writeImageSet(imageSet) {
72
+ import_node_fs.default.mkdirSync(imageSet.basePath, {
73
+ recursive: true
74
+ });
75
+ for (const file of imageSet.files) {
76
+ const dest = import_node_path.default.join(imageSet.basePath, file.name);
77
+ import_node_fs.default.copyFileSync(file.src, dest);
78
+ }
79
+ import_node_fs.default.writeFileSync(import_node_path.default.join(imageSet.basePath, "Contents.json"), JSON.stringify({
80
+ images: imageSet.files.map(file => ({
81
+ filename: file.name,
82
+ idiom: "universal",
83
+ scale: `${file.scale}x`
84
+ })),
85
+ info: {
86
+ author: "xcode",
87
+ version: 1
88
+ }
89
+ }));
90
+ }
@@ -0,0 +1,135 @@
1
+ "use strict";
2
+
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __export = (target, all) => {
10
+ for (var name in all) __defProp(target, name, {
11
+ get: all[name],
12
+ enumerable: true
13
+ });
14
+ };
15
+ var __copyProps = (to, from, except, desc) => {
16
+ if (from && typeof from === "object" || typeof from === "function") {
17
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
18
+ get: () => from[key],
19
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
20
+ });
21
+ }
22
+ return to;
23
+ };
24
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
25
+ // If the importer is in node compatibility mode or this is not an ESM
26
+ // file that has been converted to a CommonJS file using a Babel-
27
+ // compatible transform (i.e. "__esModule" has not been set), then set
28
+ // "default" to the CommonJS "module.exports" for node compatibility.
29
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
30
+ value: mod,
31
+ enumerable: true
32
+ }) : target, mod));
33
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
34
+ value: true
35
+ }), mod);
36
+ var assetCatalogIOS_exports = {};
37
+ __export(assetCatalogIOS_exports, {
38
+ cleanAssetCatalog: () => cleanAssetCatalog,
39
+ getImageSet: () => getImageSet,
40
+ isCatalogAsset: () => isCatalogAsset,
41
+ writeImageSet: () => writeImageSet
42
+ });
43
+ module.exports = __toCommonJS(assetCatalogIOS_exports);
44
+ var import_assetPathUtils = __toESM(require("./assetPathUtils.native.js"), 1);
45
+ var import_fs = __toESM(require("fs"), 1);
46
+ var import_path = __toESM(require("path"), 1);
47
+ function cleanAssetCatalog(catalogDir) {
48
+ var files = import_fs.default.readdirSync(catalogDir).filter(function (file2) {
49
+ return file2.endsWith(".imageset");
50
+ });
51
+ var _iteratorNormalCompletion = true,
52
+ _didIteratorError = false,
53
+ _iteratorError = void 0;
54
+ try {
55
+ for (var _iterator = files[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
56
+ var file = _step.value;
57
+ import_fs.default.rmSync(import_path.default.join(catalogDir, file), {
58
+ recursive: true,
59
+ force: true
60
+ });
61
+ }
62
+ } catch (err) {
63
+ _didIteratorError = true;
64
+ _iteratorError = err;
65
+ } finally {
66
+ try {
67
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
68
+ _iterator.return();
69
+ }
70
+ } finally {
71
+ if (_didIteratorError) {
72
+ throw _iteratorError;
73
+ }
74
+ }
75
+ }
76
+ }
77
+ function getImageSet(catalogDir, asset, scales) {
78
+ var fileName = import_assetPathUtils.default.getResourceIdentifier(asset);
79
+ return {
80
+ basePath: import_path.default.join(catalogDir, `${fileName}.imageset`),
81
+ files: scales.map(function (scale, idx) {
82
+ var suffix = scale === 1 ? "" : `@${scale}x`;
83
+ return {
84
+ name: `${fileName + suffix}.${asset.type}`,
85
+ scale,
86
+ src: asset.files[idx]
87
+ };
88
+ })
89
+ };
90
+ }
91
+ function isCatalogAsset(asset) {
92
+ return asset.type === "png" || asset.type === "jpg" || asset.type === "jpeg";
93
+ }
94
+ function writeImageSet(imageSet) {
95
+ import_fs.default.mkdirSync(imageSet.basePath, {
96
+ recursive: true
97
+ });
98
+ var _iteratorNormalCompletion = true,
99
+ _didIteratorError = false,
100
+ _iteratorError = void 0;
101
+ try {
102
+ for (var _iterator = imageSet.files[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
103
+ var file = _step.value;
104
+ var dest = import_path.default.join(imageSet.basePath, file.name);
105
+ import_fs.default.copyFileSync(file.src, dest);
106
+ }
107
+ } catch (err) {
108
+ _didIteratorError = true;
109
+ _iteratorError = err;
110
+ } finally {
111
+ try {
112
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
113
+ _iterator.return();
114
+ }
115
+ } finally {
116
+ if (_didIteratorError) {
117
+ throw _iteratorError;
118
+ }
119
+ }
120
+ }
121
+ import_fs.default.writeFileSync(import_path.default.join(imageSet.basePath, "Contents.json"), JSON.stringify({
122
+ images: imageSet.files.map(function (file2) {
123
+ return {
124
+ filename: file2.name,
125
+ idiom: "universal",
126
+ scale: `${file2.scale}x`
127
+ };
128
+ }),
129
+ info: {
130
+ author: "xcode",
131
+ version: 1
132
+ }
133
+ }));
134
+ }
135
+ //# sourceMappingURL=assetCatalogIOS.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","assetCatalogIOS_exports","__export","cleanAssetCatalog","getImageSet","isCatalogAsset","writeImageSet","module","exports","import_assetPathUtils","__toESM","require","import_fs","import_path","catalogDir","files","default","readdirSync","filter","file2","endsWith","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","file","rmSync","join","recursive","force","err","return","fs","asset","scales","fileName","getResourceIdentifier","basePath","map","scale","idx","suffix","name","type","src"],"sources":["../../../../src/rn-commands/bundle/assetCatalogIOS.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,uBAAA;AAAAC,QAAA,CAAAD,uBAAA;EAAAE,iBAAA,EAAAA,CAAA,KAAAA,iBAAA;EAAAC,WAAA,EAAAA,CAAA,KAAAA,WAAA;EAAAC,cAAA,EAAAA,CAAA,KAAAA,cAAA;EAAAC,aAAA,EAAAA,CAAA,KAAAA;AAAA;AASAC,MAAA,CAAAC,OAAA,GAAAZ,YAA2B,CAAAK,uBAAA;AAC3B,IAAAQ,qBAAe,GAAAC,OAAA,CAAAC,OAAA;AACf,IAAAC,SAAA,GAAAF,OAAiB,CAAAC,OAAA;AAEV,IAAAE,WAAS,GAAAH,OAAA,CAAAC,OAAkB,OAA0B;AAC1D,SAAMR,iBAAQA,CAAAW,UAAA,EAAG;EACjB,IAAAC,KAAA,GAAWH,SAAQ,CAAAI,OAAO,CAAAC,WAAA,CAAAH,UAAA,EAAAI,MAAA,WAAAC,KAAA;IACxB,OAAAA,KAAA,CAAAC,QAAA,YAAU;EACZ;EACF,IAAAC,yBAAA;IAAAC,iBAAA;IAAAC,cAAA;EAOO;IAKL,KAAM,IAAAC,SAAW,GAAAT,KAAA,CAAAU,MAAA,CAAAC,QAAA,GAAe,EAAAC,KAAA,IAAAN,yBAA2B,IAAAM,KAAA,GAAAH,SAAA,CAAAI,IAAA,IAAAC,IAAA,GAAAR,yBAAA;MAC3D,IAAOS,IAAA,GAAAH,KAAA,CAAA3B,KAAA;MACLY,SAAU,CAAAI,OAAA,CAAAe,MAAA,CAAAlB,WAAK,CAAAG,OAAK,CAAAgB,IAAA,CAAYlB,UAAG,EAAQgB,IAAA;QAC3CG,SAAO,EAAO,IAAK;QACjBC,KAAM;MACN;IAAO;EACmC,SACxCC,GAAA;IAAAb,iBACW,OAAS;IAAAC,cACtB,GAAAY,GAAA;EAAA,UACD;IACH;MACF,KAAAd,yBAAA,IAAAG,SAAA,CAAAY,MAAA;QAEOZ,SAAS,CAAAY,MAAe;MAC7B;IACF;MAEO,IAASd,iBAAc;QAC5B,MAAAC,cAAG;MAEH;IACE;EACA;AAA8B;AAGhC,SAAAnB,WAAAiC,CAAAvB,UAAG,EAAAwB,KAAA,EAAAC,MAAA;EAAA,IACDC,QAAA,GAAA/B,qBAAU,CAAAO,OAAS,CAAAyB,qBAAyB,CAAAH,KAAA;EAAA,OACvC;IAAUI,QACb,EAAQ7B,WAAS,CAAAG,OAAU,CAACgB,IAAA,CAAAlB,UAAU,KAAA0B,QAAA;IAAAzB,KACpC,EAAAwB,MAAA,CAAUI,GAAA,WAAKC,KAAA,EAAAC,GAAA;MAAA,IACfC,MAAO,GAAAF,KAAA,kBAAAA,KAAA;MAAA,OACP;QACAG,IAAA,KAAAP,QAAA,GAAAM,MAAA,IAAAR,KAAA,CAAAU,IAAA;QACFJ,KAAM;QACJK,GAAA,EAAAX,KAAQ,CAAAvB,KAAA,CAAA8B,GAAA;MAAA;IACC;EACX;AACD;AAEL,SAAAxC,eAAAiC,KAAA","ignoreList":[]}
@@ -0,0 +1,74 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: true
9
+ });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
14
+ get: () => from[key],
15
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
16
+ });
17
+ }
18
+ return to;
19
+ };
20
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
21
+ value: true
22
+ }), mod);
23
+ var assetPathUtils_exports = {};
24
+ __export(assetPathUtils_exports, {
25
+ default: () => assetPathUtils_default
26
+ });
27
+ module.exports = __toCommonJS(assetPathUtils_exports);
28
+ function getAndroidAssetSuffix(scale) {
29
+ switch (scale) {
30
+ case 0.75:
31
+ return "ldpi";
32
+ case 1:
33
+ return "mdpi";
34
+ case 1.5:
35
+ return "hdpi";
36
+ case 2:
37
+ return "xhdpi";
38
+ case 3:
39
+ return "xxhdpi";
40
+ case 4:
41
+ return "xxxhdpi";
42
+ default:
43
+ return "";
44
+ }
45
+ }
46
+ const drawableFileTypes = /* @__PURE__ */new Set(["gif", "jpeg", "jpg", "png", "webp", "xml"]);
47
+ function getAndroidResourceFolderName(asset, scale) {
48
+ if (!drawableFileTypes.has(asset.type)) {
49
+ return "raw";
50
+ }
51
+ const suffix = getAndroidAssetSuffix(scale);
52
+ if (!suffix) {
53
+ throw new Error(`Don't know which android drawable suffix to use for asset: ${JSON.stringify(asset)}`);
54
+ }
55
+ const androidFolder = `drawable-${suffix}`;
56
+ return androidFolder;
57
+ }
58
+ function getResourceIdentifier(asset) {
59
+ const folderPath = getBasePath(asset);
60
+ return `${folderPath}/${asset.name}`.toLowerCase().replace(/\//g, "_").replace(/([^a-z0-9_])/g, "").replace(/^assets_/, "");
61
+ }
62
+ function getBasePath(asset) {
63
+ let basePath = asset.httpServerLocation;
64
+ if (basePath[0] === "/") {
65
+ basePath = basePath.substr(1);
66
+ }
67
+ return basePath;
68
+ }
69
+ var assetPathUtils_default = {
70
+ getAndroidAssetSuffix,
71
+ getAndroidResourceFolderName,
72
+ getResourceIdentifier,
73
+ getBasePath
74
+ };