vxrn 1.14.4 → 1.15.0

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 (234) hide show
  1. package/dist/cli.mjs +263 -248
  2. package/dist/cli.mjs.map +1 -1
  3. package/dist/cli.native.js +267 -252
  4. package/dist/cli.native.js.map +1 -1
  5. package/dist/config/getAdditionalViteConfig.mjs +8 -8
  6. package/dist/config/getAdditionalViteConfig.mjs.map +1 -1
  7. package/dist/config/getAdditionalViteConfig.native.js +8 -8
  8. package/dist/config/getAdditionalViteConfig.native.js.map +1 -1
  9. package/dist/config/getBaseViteConfigOnly.mjs +14 -12
  10. package/dist/config/getBaseViteConfigOnly.mjs.map +1 -1
  11. package/dist/config/getBaseViteConfigOnly.native.js +16 -14
  12. package/dist/config/getBaseViteConfigOnly.native.js.map +1 -1
  13. package/dist/config/getBaseVitePlugins.mjs +34 -19
  14. package/dist/config/getBaseVitePlugins.mjs.map +1 -1
  15. package/dist/config/getBaseVitePlugins.native.js +47 -32
  16. package/dist/config/getBaseVitePlugins.native.js.map +1 -1
  17. package/dist/config/getOptimizeDeps.mjs +12 -9
  18. package/dist/config/getOptimizeDeps.mjs.map +1 -1
  19. package/dist/config/getOptimizeDeps.native.js +12 -9
  20. package/dist/config/getOptimizeDeps.native.js.map +1 -1
  21. package/dist/config/getOptionsFilled.mjs +47 -41
  22. package/dist/config/getOptionsFilled.mjs.map +1 -1
  23. package/dist/config/getOptionsFilled.native.js +53 -50
  24. package/dist/config/getOptionsFilled.native.js.map +1 -1
  25. package/dist/config/getReactNativePlugins.mjs +5 -2
  26. package/dist/config/getReactNativePlugins.mjs.map +1 -1
  27. package/dist/config/getReactNativePlugins.native.js +8 -5
  28. package/dist/config/getReactNativePlugins.native.js.map +1 -1
  29. package/dist/config/getServerOptionsFilled.mjs +21 -14
  30. package/dist/config/getServerOptionsFilled.mjs.map +1 -1
  31. package/dist/config/getServerOptionsFilled.native.js +25 -21
  32. package/dist/config/getServerOptionsFilled.native.js.map +1 -1
  33. package/dist/config/getViteServerConfig.mjs +25 -16
  34. package/dist/config/getViteServerConfig.mjs.map +1 -1
  35. package/dist/config/getViteServerConfig.native.js +37 -28
  36. package/dist/config/getViteServerConfig.native.js.map +1 -1
  37. package/dist/config/mergeUserConfig.mjs +25 -7
  38. package/dist/config/mergeUserConfig.mjs.map +1 -1
  39. package/dist/config/mergeUserConfig.native.js +32 -14
  40. package/dist/config/mergeUserConfig.native.js.map +1 -1
  41. package/dist/config/mergeUserConfig.test.mjs +53 -26
  42. package/dist/config/mergeUserConfig.test.mjs.map +1 -1
  43. package/dist/config/mergeUserConfig.test.native.js +94 -74
  44. package/dist/config/mergeUserConfig.test.native.js.map +1 -1
  45. package/dist/constants.mjs +6 -6
  46. package/dist/constants.mjs.map +1 -1
  47. package/dist/constants.native.js +6 -6
  48. package/dist/constants.native.js.map +1 -1
  49. package/dist/exports/build.mjs +241 -191
  50. package/dist/exports/build.mjs.map +1 -1
  51. package/dist/exports/build.native.js +257 -221
  52. package/dist/exports/build.native.js.map +1 -1
  53. package/dist/exports/clean.mjs +17 -12
  54. package/dist/exports/clean.mjs.map +1 -1
  55. package/dist/exports/clean.native.js +22 -13
  56. package/dist/exports/clean.native.js.map +1 -1
  57. package/dist/exports/createServer.mjs +49 -35
  58. package/dist/exports/createServer.mjs.map +1 -1
  59. package/dist/exports/createServer.native.js +50 -34
  60. package/dist/exports/createServer.native.js.map +1 -1
  61. package/dist/exports/dev.mjs +119 -74
  62. package/dist/exports/dev.mjs.map +1 -1
  63. package/dist/exports/dev.native.js +131 -90
  64. package/dist/exports/dev.native.js.map +1 -1
  65. package/dist/exports/loadEnv.mjs +28 -19
  66. package/dist/exports/loadEnv.mjs.map +1 -1
  67. package/dist/exports/loadEnv.native.js +33 -28
  68. package/dist/exports/loadEnv.native.js.map +1 -1
  69. package/dist/exports/patch.mjs +4 -1
  70. package/dist/exports/patch.mjs.map +1 -1
  71. package/dist/exports/patch.native.js +4 -1
  72. package/dist/exports/patch.native.js.map +1 -1
  73. package/dist/exports/prebuild.mjs +106 -42
  74. package/dist/exports/prebuild.mjs.map +1 -1
  75. package/dist/exports/prebuild.native.js +116 -63
  76. package/dist/exports/prebuild.native.js.map +1 -1
  77. package/dist/exports/prebuildWithoutExpo.mjs +44 -39
  78. package/dist/exports/prebuildWithoutExpo.mjs.map +1 -1
  79. package/dist/exports/prebuildWithoutExpo.native.js +45 -42
  80. package/dist/exports/prebuildWithoutExpo.native.js.map +1 -1
  81. package/dist/exports/runAndroid.mjs +8 -5
  82. package/dist/exports/runAndroid.mjs.map +1 -1
  83. package/dist/exports/runAndroid.native.js +2 -1
  84. package/dist/exports/runAndroid.native.js.map +1 -1
  85. package/dist/exports/runIos.mjs +8 -5
  86. package/dist/exports/runIos.mjs.map +1 -1
  87. package/dist/exports/runIos.native.js +2 -1
  88. package/dist/exports/runIos.native.js.map +1 -1
  89. package/dist/exports/serve.mjs +14 -6
  90. package/dist/exports/serve.mjs.map +1 -1
  91. package/dist/exports/serve.native.js +21 -13
  92. package/dist/exports/serve.native.js.map +1 -1
  93. package/dist/exports/serveStaticAssets.mjs +37 -22
  94. package/dist/exports/serveStaticAssets.mjs.map +1 -1
  95. package/dist/exports/serveStaticAssets.native.js +65 -41
  96. package/dist/exports/serveStaticAssets.native.js.map +1 -1
  97. package/dist/patches/builtInDepPatches.mjs +145 -62
  98. package/dist/patches/builtInDepPatches.mjs.map +1 -1
  99. package/dist/patches/builtInDepPatches.native.js +116 -70
  100. package/dist/patches/builtInDepPatches.native.js.map +1 -1
  101. package/dist/plugins/autoDepOptimizePlugin.mjs +66 -42
  102. package/dist/plugins/autoDepOptimizePlugin.mjs.map +1 -1
  103. package/dist/plugins/autoDepOptimizePlugin.native.js +83 -63
  104. package/dist/plugins/autoDepOptimizePlugin.native.js.map +1 -1
  105. package/dist/plugins/autoDepOptimizePlugin.test.mjs +23 -17
  106. package/dist/plugins/autoDepOptimizePlugin.test.mjs.map +1 -1
  107. package/dist/plugins/autoDepOptimizePlugin.test.native.js +31 -27
  108. package/dist/plugins/autoDepOptimizePlugin.test.native.js.map +1 -1
  109. package/dist/plugins/defaultDepOptimizePlugin.mjs +6 -2
  110. package/dist/plugins/defaultDepOptimizePlugin.mjs.map +1 -1
  111. package/dist/plugins/defaultDepOptimizePlugin.native.js +6 -2
  112. package/dist/plugins/defaultDepOptimizePlugin.native.js.map +1 -1
  113. package/dist/plugins/expoManifestRequestHandlerPlugin.mjs +80 -36
  114. package/dist/plugins/expoManifestRequestHandlerPlugin.mjs.map +1 -1
  115. package/dist/plugins/expoManifestRequestHandlerPlugin.native.js +93 -46
  116. package/dist/plugins/expoManifestRequestHandlerPlugin.native.js.map +1 -1
  117. package/dist/plugins/getResolvedConfigSubset.mjs +3 -1
  118. package/dist/plugins/getResolvedConfigSubset.mjs.map +1 -1
  119. package/dist/plugins/getResolvedConfigSubset.native.js +3 -1
  120. package/dist/plugins/getResolvedConfigSubset.native.js.map +1 -1
  121. package/dist/plugins/reactNativeCommonJsPlugin.mjs +70 -46
  122. package/dist/plugins/reactNativeCommonJsPlugin.mjs.map +1 -1
  123. package/dist/plugins/reactNativeCommonJsPlugin.native.js +99 -68
  124. package/dist/plugins/reactNativeCommonJsPlugin.native.js.map +1 -1
  125. package/dist/plugins/reactNativeDevAssetPlugin.mjs +41 -27
  126. package/dist/plugins/reactNativeDevAssetPlugin.mjs.map +1 -1
  127. package/dist/plugins/reactNativeDevAssetPlugin.native.js +61 -48
  128. package/dist/plugins/reactNativeDevAssetPlugin.native.js.map +1 -1
  129. package/dist/plugins/reactNativeDevServer.mjs +126 -83
  130. package/dist/plugins/reactNativeDevServer.mjs.map +1 -1
  131. package/dist/plugins/reactNativeDevServer.native.js +156 -107
  132. package/dist/plugins/reactNativeDevServer.native.js.map +1 -1
  133. package/dist/plugins/resolveIdScan.test.mjs +22 -17
  134. package/dist/plugins/resolveIdScan.test.mjs.map +1 -1
  135. package/dist/plugins/resolveIdScan.test.native.js +25 -21
  136. package/dist/plugins/resolveIdScan.test.native.js.map +1 -1
  137. package/dist/plugins/serverExtensions.test.mjs +66 -38
  138. package/dist/plugins/serverExtensions.test.mjs.map +1 -1
  139. package/dist/plugins/serverExtensions.test.native.js +63 -49
  140. package/dist/plugins/serverExtensions.test.native.js.map +1 -1
  141. package/dist/rn-commands/bundle/buildBundle.mjs +48 -31
  142. package/dist/rn-commands/bundle/buildBundle.mjs.map +1 -1
  143. package/dist/rn-commands/bundle/buildBundle.native.js +52 -35
  144. package/dist/rn-commands/bundle/buildBundle.native.js.map +1 -1
  145. package/dist/runtime/hmr-client.mjs +59 -39
  146. package/dist/runtime/hmr-client.mjs.map +1 -1
  147. package/dist/runtime/hmr-client.native.js +132 -92
  148. package/dist/runtime/hmr-client.native.js.map +1 -1
  149. package/dist/runtime/hmr-runtime.mjs +65 -29
  150. package/dist/runtime/hmr-runtime.mjs.map +1 -1
  151. package/dist/runtime/hmr-runtime.native.js +361 -268
  152. package/dist/runtime/hmr-runtime.native.js.map +1 -1
  153. package/dist/runtime/react-refresh-utils.mjs +19 -9
  154. package/dist/runtime/react-refresh-utils.mjs.map +1 -1
  155. package/dist/runtime/react-refresh-utils.native.js +20 -10
  156. package/dist/runtime/react-refresh-utils.native.js.map +1 -1
  157. package/dist/serve/node.mjs +33 -19
  158. package/dist/serve/node.mjs.map +1 -1
  159. package/dist/serve/node.native.js +57 -39
  160. package/dist/serve/node.native.js.map +1 -1
  161. package/dist/user-interface/index.mjs +114 -61
  162. package/dist/user-interface/index.mjs.map +1 -1
  163. package/dist/user-interface/index.native.js +158 -111
  164. package/dist/user-interface/index.native.js.map +1 -1
  165. package/dist/utils/assert.mjs +6 -2
  166. package/dist/utils/assert.mjs.map +1 -1
  167. package/dist/utils/assert.native.js +12 -4
  168. package/dist/utils/assert.native.js.map +1 -1
  169. package/dist/utils/bindKeypressInput.mjs +38 -23
  170. package/dist/utils/bindKeypressInput.mjs.map +1 -1
  171. package/dist/utils/bindKeypressInput.native.js +38 -23
  172. package/dist/utils/bindKeypressInput.native.js.map +1 -1
  173. package/dist/utils/createNativeDevEngine.mjs +421 -319
  174. package/dist/utils/createNativeDevEngine.mjs.map +1 -1
  175. package/dist/utils/createNativeDevEngine.native.js +529 -425
  176. package/dist/utils/createNativeDevEngine.native.js.map +1 -1
  177. package/dist/utils/execSync.mjs +6 -4
  178. package/dist/utils/execSync.mjs.map +1 -1
  179. package/dist/utils/execSync.native.js.map +1 -1
  180. package/dist/utils/expoRun.mjs +5 -3
  181. package/dist/utils/expoRun.mjs.map +1 -1
  182. package/dist/utils/expoRun.native.js +13 -13
  183. package/dist/utils/expoRun.native.js.map +1 -1
  184. package/dist/utils/filterViteServerResolvedUrls.mjs +17 -5
  185. package/dist/utils/filterViteServerResolvedUrls.mjs.map +1 -1
  186. package/dist/utils/filterViteServerResolvedUrls.native.js +41 -23
  187. package/dist/utils/filterViteServerResolvedUrls.native.js.map +1 -1
  188. package/dist/utils/getServerEntry.mjs +6 -4
  189. package/dist/utils/getServerEntry.mjs.map +1 -1
  190. package/dist/utils/getServerEntry.native.js +9 -9
  191. package/dist/utils/getServerEntry.native.js.map +1 -1
  192. package/dist/utils/getVitePath.mjs +41 -17
  193. package/dist/utils/getVitePath.mjs.map +1 -1
  194. package/dist/utils/getVitePath.native.js +38 -16
  195. package/dist/utils/getVitePath.native.js.map +1 -1
  196. package/dist/utils/patches.mjs +143 -73
  197. package/dist/utils/patches.mjs.map +1 -1
  198. package/dist/utils/patches.native.js +299 -188
  199. package/dist/utils/patches.native.js.map +1 -1
  200. package/dist/utils/patches.test.mjs +106 -69
  201. package/dist/utils/patches.test.mjs.map +1 -1
  202. package/dist/utils/patches.test.native.js +100 -75
  203. package/dist/utils/patches.test.native.js.map +1 -1
  204. package/dist/utils/printServerUrls.mjs +6 -2
  205. package/dist/utils/printServerUrls.mjs.map +1 -1
  206. package/dist/utils/printServerUrls.native.js +28 -18
  207. package/dist/utils/printServerUrls.native.js.map +1 -1
  208. package/dist/utils/removeUndefined.mjs +5 -1
  209. package/dist/utils/removeUndefined.mjs.map +1 -1
  210. package/dist/utils/removeUndefined.native.js +5 -1
  211. package/dist/utils/removeUndefined.native.js.map +1 -1
  212. package/dist/utils/scanDepsToOptimize.mjs +131 -87
  213. package/dist/utils/scanDepsToOptimize.mjs.map +1 -1
  214. package/dist/utils/scanDepsToOptimize.native.js +163 -117
  215. package/dist/utils/scanDepsToOptimize.native.js.map +1 -1
  216. package/dist/utils/state.mjs +4 -2
  217. package/dist/utils/state.mjs.map +1 -1
  218. package/dist/utils/state.native.js +3 -2
  219. package/dist/utils/state.native.js.map +1 -1
  220. package/dist/utils/utils.mjs +4 -3
  221. package/dist/utils/utils.mjs.map +1 -1
  222. package/dist/utils/utils.native.js +22 -16
  223. package/dist/utils/utils.native.js.map +1 -1
  224. package/dist/vendor/debugger-app/src/index.css +1 -1
  225. package/dist/vendor/debugger-app/src/index.css.map +1 -1
  226. package/dist/vxrn-vite-plugin.mjs +10 -6
  227. package/dist/vxrn-vite-plugin.mjs.map +1 -1
  228. package/dist/vxrn-vite-plugin.native.js +25 -21
  229. package/dist/vxrn-vite-plugin.native.js.map +1 -1
  230. package/package.json +12 -12
  231. package/src/plugins/reactNativeDevServer.ts +0 -6
  232. package/src/utils/createNativeDevEngine.ts +55 -1
  233. package/types/plugins/reactNativeDevServer.d.ts.map +1 -1
  234. package/types/utils/createNativeDevEngine.d.ts.map +1 -1
@@ -9,34 +9,47 @@ import { generateForPlatform } from "./prebuildWithoutExpo.mjs";
9
9
  const prebuild = async ({
10
10
  root,
11
11
  platform,
12
- "no-install": noInstall = !1,
13
- expo = !0
12
+ "no-install": noInstall = false,
13
+ expo = true
14
14
  }) => {
15
15
  const options = await fillOptions({
16
16
  root
17
17
  });
18
18
  await applyBuiltInPatches(options);
19
- const doesIOSExist = FSExtra.existsSync(path.resolve("ios")),
20
- doesAndroidExist = FSExtra.existsSync(path.resolve("android"));
19
+ const doesIOSExist = FSExtra.existsSync(path.resolve("ios"));
20
+ const doesAndroidExist = FSExtra.existsSync(path.resolve("android"));
21
21
  if (expo) {
22
22
  try {
23
- const expoPrebuild = (await import(resolvePath("@expo/cli/build/src/prebuild/index.js", root))).default.expoPrebuild;
23
+ const importPath = resolvePath("@expo/cli/build/src/prebuild/index.js", root);
24
+ const expoPrebuild = (await import(importPath)).default.expoPrebuild;
24
25
  await expoPrebuild([...(platform ? ["--platform", platform] : []), ...(noInstall ? ["--no-install"] : []), "--skip-dependency-update", "react,react-native,expo"]);
25
26
  try {
26
27
  const packageJsonPath = path.join(root, "package.json");
27
28
  let packageJsonContents = await FSExtra.readFile(packageJsonPath, "utf8");
28
- packageJsonContents = packageJsonContents.replace(/expo run:ios/g, "one run:ios"), packageJsonContents = packageJsonContents.replace(/expo run:android/g, "one run:android"), await FSExtra.writeFile(packageJsonPath, packageJsonContents, "utf8");
29
+ packageJsonContents = packageJsonContents.replace(/expo run:ios/g, "one run:ios");
30
+ packageJsonContents = packageJsonContents.replace(/expo run:android/g, "one run:android");
31
+ await FSExtra.writeFile(packageJsonPath, packageJsonContents, "utf8");
29
32
  } catch (error) {
30
33
  console.error("Error updating package.json", error);
31
34
  }
32
35
  try {
33
36
  FSExtra.removeSync(path.join(root, "ios", ".xcode.env.local"));
34
- } catch {}
37
+ } catch (e) {}
35
38
  } catch (e) {
36
39
  throw new Error(`Failed to prebuild native project: ${e}
37
40
  Is "expo" listed in your dependencies?`);
38
41
  }
39
- (!platform || platform === "ios") && (process.env.ONE_METRO_MODE || globalThis.__vxrnMetroOptions__ || globalThis.__vxrnPluginConfig__?.native?.bundler === "metro" || ensureRolldownPodfileProperties(root)), (!platform || platform === "ios") && validateSwift6Workaround(root), (!platform || platform === "ios") && console.info(`
42
+ if (!platform || platform === "ios") {
43
+ const isMetro = process.env.ONE_METRO_MODE || globalThis["__vxrnMetroOptions__"] || globalThis["__vxrnPluginConfig__"]?.native?.bundler === "metro";
44
+ if (!isMetro) {
45
+ ensureRolldownPodfileProperties(root);
46
+ }
47
+ }
48
+ if (!platform || platform === "ios") {
49
+ validateSwift6Workaround(root);
50
+ }
51
+ if (!platform || platform === "ios") {
52
+ console.info(`
40
53
  iOS:
41
54
 
42
55
  Run \`open ios/*.xcworkspace\` in your terminal to open the prebuilt iOS project.
@@ -46,65 +59,101 @@ iOS:
46
59
 
47
60
  ---
48
61
  `);
62
+ }
49
63
  } else {
50
64
  try {
51
65
  const packageJsonPath = path.join(root, "package.json");
52
- let packageJsonContents = await FSExtra.readFile(packageJsonPath, "utf8"),
53
- {
54
- devDependencies
55
- } = JSON.parse(packageJsonContents);
66
+ let packageJsonContents = await FSExtra.readFile(packageJsonPath, "utf8");
67
+ let {
68
+ devDependencies
69
+ } = JSON.parse(packageJsonContents);
56
70
  if (!devDependencies["@react-native-community/template"]) {
57
71
  const installCommand = await (async () => {
58
72
  const found = await detectPackageManager();
59
- switch (!0) {
73
+ switch (true) {
60
74
  case found.bun:
61
- return "bun add -D @react-native-community/template";
75
+ return `bun add -D @react-native-community/template`;
62
76
  case found.pnpm:
63
- return "pnpm install -D @react-native-community/template";
77
+ return `pnpm install -D @react-native-community/template`;
64
78
  case found.yarn:
65
- return "yarn add -D @react-native-community/template";
79
+ return `yarn add -D @react-native-community/template`;
66
80
  default:
67
- return "npm install -D @react-native-community/template";
81
+ return `npm install -D @react-native-community/template`;
68
82
  }
69
83
  })();
70
84
  throw new Error(`"@react-native-community/template" is not found in package.json, please install "@react-native-community/template" as dev dependency:
71
85
  \`${installCommand}\``);
72
86
  }
73
87
  } catch (error) {
74
- throw new Error(`package.json checks are failing:
75
- ` + error);
88
+ throw new Error("package.json checks are failing:\n" + error);
76
89
  }
77
90
  let appConfig;
78
91
  try {
79
- const appConfigPath = path.resolve("app.json"),
80
- appConfigContents = await FSExtra.readFile(appConfigPath, "utf8");
92
+ const appConfigPath = path.resolve("app.json");
93
+ const appConfigContents = await FSExtra.readFile(appConfigPath, "utf8");
81
94
  appConfig = JSON.parse(appConfigContents);
82
95
  } catch (error) {
83
- throw new Error(`app.json checks are failing:
84
- ` + error);
96
+ throw new Error("app.json checks are failing:\n" + error);
85
97
  }
86
- (platform == "ios" || !platform) && (doesIOSExist ? console.error("ios/ folder already exists") : await generateForPlatform(root, "ios", appConfig)), (platform == "android" || !platform) && (doesAndroidExist ? console.error("android/ folder already exists") : await generateForPlatform(root, "android", appConfig)), (!platform || platform === "ios") && (console.info("Run cd ios && pod install"), console.info("Then run `open *.xcworkspace` in your terminal to open the prebuilt iOS project, then you can either run it via Xcode or archive it for distribution."));
98
+ if (platform == "ios" || !platform) {
99
+ if (!doesIOSExist) {
100
+ await generateForPlatform(root, "ios", appConfig);
101
+ } else {
102
+ console.error("ios/ folder already exists");
103
+ }
104
+ }
105
+ if (platform == "android" || !platform) {
106
+ if (!doesAndroidExist) {
107
+ await generateForPlatform(root, "android", appConfig);
108
+ } else {
109
+ console.error("android/ folder already exists");
110
+ }
111
+ }
112
+ if (!platform || platform === "ios") {
113
+ console.info(`Run cd ios && pod install`);
114
+ console.info("Then run `open *.xcworkspace` in your terminal to open the prebuilt iOS project, then you can either run it via Xcode or archive it for distribution.");
115
+ }
116
+ }
117
+ if (!platform || platform === "android") {
118
+ console.info(`
119
+ Android:
120
+
121
+ \`cd android\` and run \`./gradlew generateCodegenArtifactsFromSchema\`, then \`./gradlew assembleRelease\` or \`./gradlew assembleDebug\` to build the Android project.
122
+
123
+ Afterwards, you can find the built APK at \`android/app/build/outputs/apk/release/app-release.apk\` or
124
+ \`android/app/build/outputs/apk/debug/app-debug.apk\`.
125
+
126
+ `);
87
127
  }
88
- (!platform || platform === "android") && console.info("\nAndroid:\n\n `cd android` and run `./gradlew generateCodegenArtifactsFromSchema`, then `./gradlew assembleRelease` or `./gradlew assembleDebug` to build the Android project.\n\n Afterwards, you can find the built APK at `android/app/build/outputs/apk/release/app-release.apk` or\n `android/app/build/outputs/apk/debug/app-debug.apk`.\n\n");
89
128
  try {
90
129
  resolvePath("@react-native-community/cli", root);
91
130
  } catch (e) {
92
- if (isMissingCliDependency(e)) warnMissingCliDependency();else throw e;
131
+ if (isMissingCliDependency(e)) {
132
+ warnMissingCliDependency();
133
+ } else {
134
+ throw e;
135
+ }
93
136
  }
94
137
  };
95
138
  function validateSwift6Workaround(root) {
96
139
  const podfilePath = path.join(root, "ios", "Podfile");
97
140
  if (!FSExtra.existsSync(podfilePath)) return;
98
141
  const propsPath = path.join(root, "ios", "Podfile.properties.json");
99
- if (FSExtra.existsSync(propsPath)) try {
100
- if (JSON.parse(FSExtra.readFileSync(propsPath, "utf8"))["one.disableSwift6Workaround"] === "true") return;
101
- } catch {}
142
+ if (FSExtra.existsSync(propsPath)) {
143
+ try {
144
+ const props = JSON.parse(FSExtra.readFileSync(propsPath, "utf8"));
145
+ if (props["one.disableSwift6Workaround"] === "true") return;
146
+ } catch {}
147
+ }
102
148
  try {
103
- const emcPkgPath = resolvePath("expo-modules-core/package.json", root),
104
- emcVersion = JSON.parse(FSExtra.readFileSync(emcPkgPath, "utf8")).version;
105
- if (Number.parseInt(emcVersion.match(/^(\d+)/)?.[1] || "0", 10) >= 56) return;
149
+ const emcPkgPath = resolvePath("expo-modules-core/package.json", root);
150
+ const emcVersion = JSON.parse(FSExtra.readFileSync(emcPkgPath, "utf8")).version;
151
+ const major = Number.parseInt(emcVersion.match(/^(\d+)/)?.[1] || "0", 10);
152
+ if (major >= 56) return;
106
153
  } catch {}
107
- FSExtra.readFileSync(podfilePath, "utf8").includes("SWIFT_STRICT_CONCURRENCY") || console.warn(colors.yellow(`
154
+ const podfile = FSExtra.readFileSync(podfilePath, "utf8");
155
+ if (!podfile.includes("SWIFT_STRICT_CONCURRENCY")) {
156
+ console.warn(colors.yellow(`
108
157
  \u26A0\uFE0F Your ios/Podfile is missing the Swift 6 workaround for expo-modules-core.
109
158
  Without this, your iOS build will fail with Swift concurrency errors.
110
159
 
@@ -115,6 +164,7 @@ function validateSwift6Workaround(root) {
115
164
 
116
165
  See: expo/expo#43199
117
166
  `));
167
+ }
118
168
  }
119
169
  function isMissingCliDependency(error) {
120
170
  return error.code === "MODULE_NOT_FOUND" && /@react-native-community\/cli/.test(error.message);
@@ -128,20 +178,34 @@ ${colors.white(colors.bold(`
128
178
  }`))}`);
129
179
  }
130
180
  async function replaceInUTF8File(filePath, findThis, replaceWith) {
131
- const fileContent = await FSExtra.readFile(filePath, "utf8"),
132
- replacedFileContent = fileContent.replace(findThis, replaceWith);
133
- fileContent !== replacedFileContent && (await FSExtra.writeFile(filePath, replacedFileContent, "utf8"));
181
+ const fileContent = await FSExtra.readFile(filePath, "utf8");
182
+ const replacedFileContent = fileContent.replace(findThis, replaceWith);
183
+ if (fileContent !== replacedFileContent) {
184
+ await FSExtra.writeFile(filePath, replacedFileContent, "utf8");
185
+ }
134
186
  }
135
187
  function ensureRolldownPodfileProperties(root) {
136
188
  const propsPath = path.join(root, "ios", "Podfile.properties.json");
137
189
  if (!FSExtra.existsSync(path.join(root, "ios"))) return;
138
190
  let props = {};
139
- if (FSExtra.existsSync(propsPath)) try {
140
- props = JSON.parse(FSExtra.readFileSync(propsPath, "utf8"));
141
- } catch {}
142
- let changed = !1;
143
- props["expo.useHermesV1"] !== "true" && (props["expo.useHermesV1"] = "true", changed = !0), props["ios.buildReactNativeFromSource"] !== "true" && (props["ios.buildReactNativeFromSource"] = "true", changed = !0), changed && (FSExtra.writeFileSync(propsPath, JSON.stringify(props, null, 2) + `
144
- `, "utf8"), console.info(colors.cyan("[vxrn] Updated ios/Podfile.properties.json for rolldown mode (hermes v1 + build from source)")));
191
+ if (FSExtra.existsSync(propsPath)) {
192
+ try {
193
+ props = JSON.parse(FSExtra.readFileSync(propsPath, "utf8"));
194
+ } catch {}
195
+ }
196
+ let changed = false;
197
+ if (props["expo.useHermesV1"] !== "true") {
198
+ props["expo.useHermesV1"] = "true";
199
+ changed = true;
200
+ }
201
+ if (props["ios.buildReactNativeFromSource"] !== "true") {
202
+ props["ios.buildReactNativeFromSource"] = "true";
203
+ changed = true;
204
+ }
205
+ if (changed) {
206
+ FSExtra.writeFileSync(propsPath, JSON.stringify(props, null, 2) + "\n", "utf8");
207
+ console.info(colors.cyan(`[vxrn] Updated ios/Podfile.properties.json for rolldown mode (hermes v1 + build from source)`));
208
+ }
145
209
  }
146
210
  export { prebuild, replaceInUTF8File };
147
211
  //# sourceMappingURL=prebuild.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["resolvePath","detectPackageManager","FSExtra","path","colors","fillOptions","applyBuiltInPatches","generateForPlatform","prebuild","root","platform","noInstall","expo","options","doesIOSExist","existsSync","resolve","doesAndroidExist","expoPrebuild","default","packageJsonPath","join","packageJsonContents","readFile","replace","writeFile","error","console","removeSync","e","Error","process","env","ONE_METRO_MODE","globalThis","__vxrnMetroOptions__","__vxrnPluginConfig__","native","bundler","ensureRolldownPodfileProperties","validateSwift6Workaround","info","devDependencies","JSON","parse","installCommand","found","bun","pnpm","yarn","appConfig","appConfigPath","appConfigContents","isMissingCliDependency","warnMissingCliDependency","podfilePath","propsPath","readFileSync","emcPkgPath","emcVersion","version","Number","parseInt","match","includes","warn","yellow","code","test","message","red","dim","white","bold","replaceInUTF8File","filePath","findThis","replaceWith","fileContent","replacedFileContent","props","changed","writeFileSync","stringify","cyan"],"sources":["../../src/exports/prebuild.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["resolvePath","detectPackageManager","FSExtra","path","colors","fillOptions","applyBuiltInPatches","generateForPlatform","prebuild","root","platform","noInstall","expo","options","doesIOSExist","existsSync","resolve","doesAndroidExist","importPath","expoPrebuild","default","packageJsonPath","join","packageJsonContents","readFile","replace","writeFile","error","console","removeSync","e","Error","isMetro","process","env","ONE_METRO_MODE","globalThis","native","bundler","ensureRolldownPodfileProperties","validateSwift6Workaround","info","devDependencies","JSON","parse","installCommand","found","bun","pnpm","yarn","appConfig","appConfigPath","appConfigContents","isMissingCliDependency","warnMissingCliDependency","podfilePath","propsPath","props","readFileSync","emcPkgPath","emcVersion","version","major","Number","parseInt","match","podfile","includes","warn","yellow","code","test","message","red","dim","white","bold","replaceInUTF8File","filePath","findThis","replaceWith","fileContent","replacedFileContent","changed","writeFileSync","stringify","cyan"],"sources":["../../src/exports/prebuild.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -8,43 +8,50 @@ import { applyBuiltInPatches } from "../utils/patches.native.js";
8
8
  import { generateForPlatform } from "./prebuildWithoutExpo.native.js";
9
9
  var prebuild = async function (param) {
10
10
  var {
11
- root,
12
- platform,
13
- "no-install": noInstall = !1,
14
- expo = !0
15
- } = param,
16
- options = await fillOptions({
17
- root
18
- });
11
+ root,
12
+ platform,
13
+ "no-install": noInstall = false,
14
+ expo = true
15
+ } = param;
16
+ var options = await fillOptions({
17
+ root
18
+ });
19
19
  await applyBuiltInPatches(options);
20
- var doesIOSExist = FSExtra.existsSync(path.resolve("ios")),
21
- doesAndroidExist = FSExtra.existsSync(path.resolve("android"));
20
+ var doesIOSExist = FSExtra.existsSync(path.resolve("ios"));
21
+ var doesAndroidExist = FSExtra.existsSync(path.resolve("android"));
22
22
  if (expo) {
23
23
  try {
24
- var importPath = resolvePath("@expo/cli/build/src/prebuild/index.js", root),
25
- expoPrebuild = (await import(importPath)).default.expoPrebuild;
24
+ var importPath = resolvePath("@expo/cli/build/src/prebuild/index.js", root);
25
+ var expoPrebuild = (await import(importPath)).default.expoPrebuild;
26
26
  await expoPrebuild([...(platform ? ["--platform", platform] : []), ...(noInstall ? ["--no-install"] : []), "--skip-dependency-update", "react,react-native,expo"]);
27
27
  try {
28
- var packageJsonPath = path.join(root, "package.json"),
29
- packageJsonContents = await FSExtra.readFile(packageJsonPath, "utf8");
30
- packageJsonContents = packageJsonContents.replace(/expo run:ios/g, "one run:ios"), packageJsonContents = packageJsonContents.replace(/expo run:android/g, "one run:android"), await FSExtra.writeFile(packageJsonPath, packageJsonContents, "utf8");
28
+ var packageJsonPath = path.join(root, "package.json");
29
+ var packageJsonContents = await FSExtra.readFile(packageJsonPath, "utf8");
30
+ packageJsonContents = packageJsonContents.replace(/expo run:ios/g, "one run:ios");
31
+ packageJsonContents = packageJsonContents.replace(/expo run:android/g, "one run:android");
32
+ await FSExtra.writeFile(packageJsonPath, packageJsonContents, "utf8");
31
33
  } catch (error) {
32
34
  console.error("Error updating package.json", error);
33
35
  }
34
36
  try {
35
37
  FSExtra.removeSync(path.join(root, "ios", ".xcode.env.local"));
36
- } catch {}
38
+ } catch (e) {}
37
39
  } catch (e) {
38
40
  throw new Error(`Failed to prebuild native project: ${e}
39
41
  Is "expo" listed in your dependencies?`);
40
42
  }
41
43
  if (!platform || platform === "ios") {
42
- var _globalThis___vxrnPluginConfig___native,
43
- _globalThis___vxrnPluginConfig__,
44
- isMetro = process.env.ONE_METRO_MODE || globalThis.__vxrnMetroOptions__ || ((_globalThis___vxrnPluginConfig__ = globalThis.__vxrnPluginConfig__) === null || _globalThis___vxrnPluginConfig__ === void 0 || (_globalThis___vxrnPluginConfig___native = _globalThis___vxrnPluginConfig__.native) === null || _globalThis___vxrnPluginConfig___native === void 0 ? void 0 : _globalThis___vxrnPluginConfig___native.bundler) === "metro";
45
- isMetro || ensureRolldownPodfileProperties(root);
44
+ var _globalThis___vxrnPluginConfig___native, _globalThis___vxrnPluginConfig__;
45
+ var isMetro = process.env.ONE_METRO_MODE || globalThis["__vxrnMetroOptions__"] || ((_globalThis___vxrnPluginConfig__ = globalThis["__vxrnPluginConfig__"]) === null || _globalThis___vxrnPluginConfig__ === void 0 ? void 0 : (_globalThis___vxrnPluginConfig___native = _globalThis___vxrnPluginConfig__.native) === null || _globalThis___vxrnPluginConfig___native === void 0 ? void 0 : _globalThis___vxrnPluginConfig___native.bundler) === "metro";
46
+ if (!isMetro) {
47
+ ensureRolldownPodfileProperties(root);
48
+ }
49
+ }
50
+ if (!platform || platform === "ios") {
51
+ validateSwift6Workaround(root);
46
52
  }
47
- (!platform || platform === "ios") && validateSwift6Workaround(root), (!platform || platform === "ios") && console.info(`
53
+ if (!platform || platform === "ios") {
54
+ console.info(`
48
55
  iOS:
49
56
 
50
57
  Run \`open ios/*.xcworkspace\` in your terminal to open the prebuilt iOS project.
@@ -54,69 +61,102 @@ iOS:
54
61
 
55
62
  ---
56
63
  `);
64
+ }
57
65
  } else {
58
66
  try {
59
- var packageJsonPath1 = path.join(root, "package.json"),
60
- packageJsonContents1 = await FSExtra.readFile(packageJsonPath1, "utf8"),
61
- {
62
- devDependencies
63
- } = JSON.parse(packageJsonContents1);
67
+ var packageJsonPath1 = path.join(root, "package.json");
68
+ var packageJsonContents1 = await FSExtra.readFile(packageJsonPath1, "utf8");
69
+ var {
70
+ devDependencies
71
+ } = JSON.parse(packageJsonContents1);
64
72
  if (!devDependencies["@react-native-community/template"]) {
65
73
  var installCommand = await async function () {
66
74
  var found = await detectPackageManager();
67
- switch (!0) {
75
+ switch (true) {
68
76
  case found.bun:
69
- return "bun add -D @react-native-community/template";
77
+ return `bun add -D @react-native-community/template`;
70
78
  case found.pnpm:
71
- return "pnpm install -D @react-native-community/template";
79
+ return `pnpm install -D @react-native-community/template`;
72
80
  case found.yarn:
73
- return "yarn add -D @react-native-community/template";
81
+ return `yarn add -D @react-native-community/template`;
74
82
  default:
75
- return "npm install -D @react-native-community/template";
83
+ return `npm install -D @react-native-community/template`;
76
84
  }
77
85
  }();
78
86
  throw new Error(`"@react-native-community/template" is not found in package.json, please install "@react-native-community/template" as dev dependency:
79
87
  \`${installCommand}\``);
80
88
  }
81
89
  } catch (error) {
82
- throw new Error(`package.json checks are failing:
83
- ` + error);
90
+ throw new Error("package.json checks are failing:\n" + error);
84
91
  }
85
92
  var appConfig;
86
93
  try {
87
- var appConfigPath = path.resolve("app.json"),
88
- appConfigContents = await FSExtra.readFile(appConfigPath, "utf8");
94
+ var appConfigPath = path.resolve("app.json");
95
+ var appConfigContents = await FSExtra.readFile(appConfigPath, "utf8");
89
96
  appConfig = JSON.parse(appConfigContents);
90
97
  } catch (error) {
91
- throw new Error(`app.json checks are failing:
92
- ` + error);
98
+ throw new Error("app.json checks are failing:\n" + error);
99
+ }
100
+ if (platform == "ios" || !platform) {
101
+ if (!doesIOSExist) {
102
+ await generateForPlatform(root, "ios", appConfig);
103
+ } else {
104
+ console.error("ios/ folder already exists");
105
+ }
106
+ }
107
+ if (platform == "android" || !platform) {
108
+ if (!doesAndroidExist) {
109
+ await generateForPlatform(root, "android", appConfig);
110
+ } else {
111
+ console.error("android/ folder already exists");
112
+ }
113
+ }
114
+ if (!platform || platform === "ios") {
115
+ console.info(`Run cd ios && pod install`);
116
+ console.info("Then run `open *.xcworkspace` in your terminal to open the prebuilt iOS project, then you can either run it via Xcode or archive it for distribution.");
93
117
  }
94
- (platform == "ios" || !platform) && (doesIOSExist ? console.error("ios/ folder already exists") : await generateForPlatform(root, "ios", appConfig)), (platform == "android" || !platform) && (doesAndroidExist ? console.error("android/ folder already exists") : await generateForPlatform(root, "android", appConfig)), (!platform || platform === "ios") && (console.info("Run cd ios && pod install"), console.info("Then run `open *.xcworkspace` in your terminal to open the prebuilt iOS project, then you can either run it via Xcode or archive it for distribution."));
95
118
  }
96
- (!platform || platform === "android") && console.info("\nAndroid:\n\n `cd android` and run `./gradlew generateCodegenArtifactsFromSchema`, then `./gradlew assembleRelease` or `./gradlew assembleDebug` to build the Android project.\n\n Afterwards, you can find the built APK at `android/app/build/outputs/apk/release/app-release.apk` or\n `android/app/build/outputs/apk/debug/app-debug.apk`.\n\n");
119
+ if (!platform || platform === "android") {
120
+ console.info(`
121
+ Android:
122
+
123
+ \`cd android\` and run \`./gradlew generateCodegenArtifactsFromSchema\`, then \`./gradlew assembleRelease\` or \`./gradlew assembleDebug\` to build the Android project.
124
+
125
+ Afterwards, you can find the built APK at \`android/app/build/outputs/apk/release/app-release.apk\` or
126
+ \`android/app/build/outputs/apk/debug/app-debug.apk\`.
127
+
128
+ `);
129
+ }
97
130
  try {
98
131
  resolvePath("@react-native-community/cli", root);
99
132
  } catch (e) {
100
- if (isMissingCliDependency(e)) warnMissingCliDependency();else throw e;
133
+ if (isMissingCliDependency(e)) {
134
+ warnMissingCliDependency();
135
+ } else {
136
+ throw e;
137
+ }
101
138
  }
102
139
  };
103
140
  function validateSwift6Workaround(root) {
104
141
  var podfilePath = path.join(root, "ios", "Podfile");
105
- if (FSExtra.existsSync(podfilePath)) {
106
- var propsPath = path.join(root, "ios", "Podfile.properties.json");
107
- if (FSExtra.existsSync(propsPath)) try {
142
+ if (!FSExtra.existsSync(podfilePath)) return;
143
+ var propsPath = path.join(root, "ios", "Podfile.properties.json");
144
+ if (FSExtra.existsSync(propsPath)) {
145
+ try {
108
146
  var props = JSON.parse(FSExtra.readFileSync(propsPath, "utf8"));
109
147
  if (props["one.disableSwift6Workaround"] === "true") return;
110
- } catch {}
111
- try {
112
- var _emcVersion_match,
113
- emcPkgPath = resolvePath("expo-modules-core/package.json", root),
114
- emcVersion = JSON.parse(FSExtra.readFileSync(emcPkgPath, "utf8")).version,
115
- major = Number.parseInt(((_emcVersion_match = emcVersion.match(/^(\d+)/)) === null || _emcVersion_match === void 0 ? void 0 : _emcVersion_match[1]) || "0", 10);
116
- if (major >= 56) return;
117
- } catch {}
118
- var podfile = FSExtra.readFileSync(podfilePath, "utf8");
119
- podfile.includes("SWIFT_STRICT_CONCURRENCY") || console.warn(colors.yellow(`
148
+ } catch (unused) {}
149
+ }
150
+ try {
151
+ var _emcVersion_match;
152
+ var emcPkgPath = resolvePath("expo-modules-core/package.json", root);
153
+ var emcVersion = JSON.parse(FSExtra.readFileSync(emcPkgPath, "utf8")).version;
154
+ var major = Number.parseInt(((_emcVersion_match = emcVersion.match(/^(\d+)/)) === null || _emcVersion_match === void 0 ? void 0 : _emcVersion_match[1]) || "0", 10);
155
+ if (major >= 56) return;
156
+ } catch (unused) {}
157
+ var podfile = FSExtra.readFileSync(podfilePath, "utf8");
158
+ if (!podfile.includes("SWIFT_STRICT_CONCURRENCY")) {
159
+ console.warn(colors.yellow(`
120
160
  \u26A0\uFE0F Your ios/Podfile is missing the Swift 6 workaround for expo-modules-core.
121
161
  Without this, your iOS build will fail with Swift concurrency errors.
122
162
 
@@ -141,20 +181,33 @@ ${colors.white(colors.bold(`
141
181
  }`))}`);
142
182
  }
143
183
  async function replaceInUTF8File(filePath, findThis, replaceWith) {
144
- var fileContent = await FSExtra.readFile(filePath, "utf8"),
145
- replacedFileContent = fileContent.replace(findThis, replaceWith);
146
- fileContent !== replacedFileContent && (await FSExtra.writeFile(filePath, replacedFileContent, "utf8"));
184
+ var fileContent = await FSExtra.readFile(filePath, "utf8");
185
+ var replacedFileContent = fileContent.replace(findThis, replaceWith);
186
+ if (fileContent !== replacedFileContent) {
187
+ await FSExtra.writeFile(filePath, replacedFileContent, "utf8");
188
+ }
147
189
  }
148
190
  function ensureRolldownPodfileProperties(root) {
149
191
  var propsPath = path.join(root, "ios", "Podfile.properties.json");
150
- if (FSExtra.existsSync(path.join(root, "ios"))) {
151
- var props = {};
152
- if (FSExtra.existsSync(propsPath)) try {
192
+ if (!FSExtra.existsSync(path.join(root, "ios"))) return;
193
+ var props = {};
194
+ if (FSExtra.existsSync(propsPath)) {
195
+ try {
153
196
  props = JSON.parse(FSExtra.readFileSync(propsPath, "utf8"));
154
- } catch {}
155
- var changed = !1;
156
- props["expo.useHermesV1"] !== "true" && (props["expo.useHermesV1"] = "true", changed = !0), props["ios.buildReactNativeFromSource"] !== "true" && (props["ios.buildReactNativeFromSource"] = "true", changed = !0), changed && (FSExtra.writeFileSync(propsPath, JSON.stringify(props, null, 2) + `
157
- `, "utf8"), console.info(colors.cyan("[vxrn] Updated ios/Podfile.properties.json for rolldown mode (hermes v1 + build from source)")));
197
+ } catch (unused) {}
198
+ }
199
+ var changed = false;
200
+ if (props["expo.useHermesV1"] !== "true") {
201
+ props["expo.useHermesV1"] = "true";
202
+ changed = true;
203
+ }
204
+ if (props["ios.buildReactNativeFromSource"] !== "true") {
205
+ props["ios.buildReactNativeFromSource"] = "true";
206
+ changed = true;
207
+ }
208
+ if (changed) {
209
+ FSExtra.writeFileSync(propsPath, JSON.stringify(props, null, 2) + "\n", "utf8");
210
+ console.info(colors.cyan(`[vxrn] Updated ios/Podfile.properties.json for rolldown mode (hermes v1 + build from source)`));
158
211
  }
159
212
  }
160
213
  export { prebuild, replaceInUTF8File };
@@ -1 +1 @@
1
- {"version":3,"names":["resolvePath","detectPackageManager","FSExtra","path","colors","fillOptions","applyBuiltInPatches","generateForPlatform","prebuild","param","root","platform","noInstall","expo","options","doesIOSExist","existsSync","resolve","doesAndroidExist","importPath","expoPrebuild","default","packageJsonPath","join","packageJsonContents","readFile","replace","writeFile","error","console","removeSync","e","Error","_globalThis___vxrnPluginConfig___native","_globalThis___vxrnPluginConfig__","isMetro","process","env","ONE_METRO_MODE","globalThis","__vxrnMetroOptions__","__vxrnPluginConfig__","native","bundler","ensureRolldownPodfileProperties","validateSwift6Workaround","info","packageJsonPath1","packageJsonContents1","devDependencies","JSON","parse","installCommand","found","bun","pnpm","yarn","appConfig","appConfigPath","appConfigContents","isMissingCliDependency","warnMissingCliDependency","podfilePath","propsPath","props","readFileSync","_emcVersion_match","emcPkgPath","emcVersion","version","major","Number","parseInt","match","podfile","includes","warn","yellow","code","test","message","red","dim","white","bold","replaceInUTF8File","filePath","findThis","replaceWith","fileContent","replacedFileContent","changed","writeFileSync","stringify","cyan"],"sources":["../../src/exports/prebuild.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["resolvePath","detectPackageManager","FSExtra","path","colors","fillOptions","applyBuiltInPatches","generateForPlatform","prebuild","param","root","platform","noInstall","expo","options","doesIOSExist","existsSync","resolve","doesAndroidExist","importPath","expoPrebuild","default","packageJsonPath","join","packageJsonContents","readFile","replace","writeFile","error","console","removeSync","e","Error","_globalThis___vxrnPluginConfig___native","_globalThis___vxrnPluginConfig__","isMetro","process","env","ONE_METRO_MODE","globalThis","native","bundler","ensureRolldownPodfileProperties","validateSwift6Workaround","info","packageJsonPath1","packageJsonContents1","devDependencies","JSON","parse","installCommand","found","bun","pnpm","yarn","appConfig","appConfigPath","appConfigContents","isMissingCliDependency","warnMissingCliDependency","podfilePath","propsPath","props","readFileSync","unused","_emcVersion_match","emcPkgPath","emcVersion","version","major","Number","parseInt","match","podfile","includes","warn","yellow","code","test","message","red","dim","white","bold","replaceInUTF8File","filePath","findThis","replaceWith","fileContent","replacedFileContent","changed","writeFileSync","stringify","cyan"],"sources":["../../src/exports/prebuild.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}