vxrn 1.27.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.
- package/dist/cli.mjs +212 -261
- package/dist/cli.mjs.map +1 -1
- package/dist/cli.native.js +216 -265
- package/dist/cli.native.js.map +1 -1
- package/dist/config/getAdditionalViteConfig.mjs +33 -62
- package/dist/config/getAdditionalViteConfig.mjs.map +1 -1
- package/dist/config/getAdditionalViteConfig.native.js +33 -62
- package/dist/config/getAdditionalViteConfig.native.js.map +1 -1
- package/dist/config/getBaseViteConfigOnly.mjs +84 -77
- package/dist/config/getBaseViteConfigOnly.mjs.map +1 -1
- package/dist/config/getBaseViteConfigOnly.native.js +86 -79
- package/dist/config/getBaseViteConfigOnly.native.js.map +1 -1
- package/dist/config/getBaseViteConfigWithPlugins.mjs +6 -4
- package/dist/config/getBaseViteConfigWithPlugins.mjs.map +1 -1
- package/dist/config/getBaseViteConfigWithPlugins.native.js +6 -4
- package/dist/config/getBaseViteConfigWithPlugins.native.js.map +1 -1
- package/dist/config/getBaseVitePlugins.mjs +102 -130
- package/dist/config/getBaseVitePlugins.mjs.map +1 -1
- package/dist/config/getBaseVitePlugins.native.js +123 -152
- package/dist/config/getBaseVitePlugins.native.js.map +1 -1
- package/dist/config/getNonCliModeOnlyVitePlugins.mjs +3 -3
- package/dist/config/getNonCliModeOnlyVitePlugins.mjs.map +1 -1
- package/dist/config/getNonCliModeOnlyVitePlugins.native.js +3 -1
- package/dist/config/getNonCliModeOnlyVitePlugins.native.js.map +1 -1
- package/dist/config/getOptimizeDeps.mjs +138 -42
- package/dist/config/getOptimizeDeps.mjs.map +1 -1
- package/dist/config/getOptimizeDeps.native.js +138 -42
- package/dist/config/getOptimizeDeps.native.js.map +1 -1
- package/dist/config/getOptionsFilled.mjs +48 -52
- package/dist/config/getOptionsFilled.mjs.map +1 -1
- package/dist/config/getOptionsFilled.native.js +51 -55
- package/dist/config/getOptionsFilled.native.js.map +1 -1
- package/dist/config/getReactNativePlugins.mjs +23 -15
- package/dist/config/getReactNativePlugins.mjs.map +1 -1
- package/dist/config/getReactNativePlugins.native.js +25 -16
- package/dist/config/getReactNativePlugins.native.js.map +1 -1
- package/dist/config/getServerOptionsFilled.mjs +33 -35
- package/dist/config/getServerOptionsFilled.mjs.map +1 -1
- package/dist/config/getServerOptionsFilled.native.js +35 -38
- package/dist/config/getServerOptionsFilled.native.js.map +1 -1
- package/dist/config/getViteServerConfig.mjs +34 -45
- package/dist/config/getViteServerConfig.mjs.map +1 -1
- package/dist/config/getViteServerConfig.native.js +35 -46
- package/dist/config/getViteServerConfig.native.js.map +1 -1
- package/dist/config/mergeUserConfig.mjs +50 -28
- package/dist/config/mergeUserConfig.mjs.map +1 -1
- package/dist/config/mergeUserConfig.native.js +60 -38
- package/dist/config/mergeUserConfig.native.js.map +1 -1
- package/dist/constants/defaults.mjs +29 -12
- package/dist/constants/defaults.mjs.map +1 -1
- package/dist/constants/defaults.native.js +29 -12
- package/dist/constants/defaults.native.js.map +1 -1
- package/dist/constants.mjs +41 -6
- package/dist/constants.mjs.map +1 -1
- package/dist/constants.native.js +41 -6
- package/dist/constants.native.js.map +1 -1
- package/dist/exports/build.mjs +218 -270
- package/dist/exports/build.mjs.map +1 -1
- package/dist/exports/build.native.js +226 -283
- package/dist/exports/build.native.js.map +1 -1
- package/dist/exports/clean.mjs +71 -78
- package/dist/exports/clean.mjs.map +1 -1
- package/dist/exports/clean.native.js +76 -90
- package/dist/exports/clean.native.js.map +1 -1
- package/dist/exports/createServer.mjs +43 -46
- package/dist/exports/createServer.mjs.map +1 -1
- package/dist/exports/createServer.native.js +45 -48
- package/dist/exports/createServer.native.js.map +1 -1
- package/dist/exports/dev.mjs +177 -201
- package/dist/exports/dev.mjs.map +1 -1
- package/dist/exports/dev.native.js +191 -215
- package/dist/exports/dev.native.js.map +1 -1
- package/dist/exports/loadEnv.mjs +51 -48
- package/dist/exports/loadEnv.mjs.map +1 -1
- package/dist/exports/loadEnv.native.js +59 -57
- package/dist/exports/loadEnv.native.js.map +1 -1
- package/dist/exports/patch.mjs +9 -7
- package/dist/exports/patch.mjs.map +1 -1
- package/dist/exports/patch.native.js +9 -7
- package/dist/exports/patch.native.js.map +1 -1
- package/dist/exports/prebuild.mjs +177 -157
- package/dist/exports/prebuild.mjs.map +1 -1
- package/dist/exports/prebuild.native.js +197 -160
- package/dist/exports/prebuild.native.js.map +1 -1
- package/dist/exports/prebuildWithoutExpo.mjs +46 -44
- package/dist/exports/prebuildWithoutExpo.mjs.map +1 -1
- package/dist/exports/prebuildWithoutExpo.native.js +48 -46
- package/dist/exports/prebuildWithoutExpo.native.js.map +1 -1
- package/dist/exports/runAndroid.mjs +9 -10
- package/dist/exports/runAndroid.mjs.map +1 -1
- package/dist/exports/runAndroid.native.js +10 -11
- package/dist/exports/runAndroid.native.js.map +1 -1
- package/dist/exports/runIos.mjs +9 -10
- package/dist/exports/runIos.mjs.map +1 -1
- package/dist/exports/runIos.native.js +10 -11
- package/dist/exports/runIos.native.js.map +1 -1
- package/dist/exports/serve.mjs +23 -31
- package/dist/exports/serve.mjs.map +1 -1
- package/dist/exports/serve.native.js +26 -34
- package/dist/exports/serve.native.js.map +1 -1
- package/dist/exports/serveStaticAssets.mjs +109 -113
- package/dist/exports/serveStaticAssets.mjs.map +1 -1
- package/dist/exports/serveStaticAssets.native.js +180 -192
- package/dist/exports/serveStaticAssets.native.js.map +1 -1
- package/dist/index.js +25 -14
- package/dist/index.mjs +25 -14
- package/dist/index.native.js +25 -14
- package/dist/patches/builtInDepPatches.mjs +346 -435
- package/dist/patches/builtInDepPatches.mjs.map +1 -1
- package/dist/patches/builtInDepPatches.native.js +349 -438
- package/dist/patches/builtInDepPatches.native.js.map +1 -1
- package/dist/plugins/applyBuiltInPatchesPlugin.mjs +11 -11
- package/dist/plugins/applyBuiltInPatchesPlugin.mjs.map +1 -1
- package/dist/plugins/applyBuiltInPatchesPlugin.native.js +11 -11
- package/dist/plugins/applyBuiltInPatchesPlugin.native.js.map +1 -1
- package/dist/plugins/autoDepOptimizePlugin.mjs +87 -90
- package/dist/plugins/autoDepOptimizePlugin.mjs.map +1 -1
- package/dist/plugins/autoDepOptimizePlugin.native.js +99 -102
- package/dist/plugins/autoDepOptimizePlugin.native.js.map +1 -1
- package/dist/plugins/clientInjectPlugin.mjs +13 -11
- package/dist/plugins/clientInjectPlugin.mjs.map +1 -1
- package/dist/plugins/clientInjectPlugin.native.js +13 -11
- package/dist/plugins/clientInjectPlugin.native.js.map +1 -1
- package/dist/plugins/defaultDepOptimizePlugin.mjs +15 -23
- package/dist/plugins/defaultDepOptimizePlugin.mjs.map +1 -1
- package/dist/plugins/defaultDepOptimizePlugin.native.js +15 -23
- package/dist/plugins/defaultDepOptimizePlugin.native.js.map +1 -1
- package/dist/plugins/expoManifestRequestHandlerPlugin.mjs +163 -179
- package/dist/plugins/expoManifestRequestHandlerPlugin.mjs.map +1 -1
- package/dist/plugins/expoManifestRequestHandlerPlugin.native.js +169 -191
- package/dist/plugins/expoManifestRequestHandlerPlugin.native.js.map +1 -1
- package/dist/plugins/getResolvedConfigSubset.mjs +6 -5
- package/dist/plugins/getResolvedConfigSubset.mjs.map +1 -1
- package/dist/plugins/getResolvedConfigSubset.native.js +6 -5
- package/dist/plugins/getResolvedConfigSubset.native.js.map +1 -1
- package/dist/plugins/reactNativeCommonJsPlugin.mjs +210 -178
- package/dist/plugins/reactNativeCommonJsPlugin.mjs.map +1 -1
- package/dist/plugins/reactNativeCommonJsPlugin.native.js +283 -259
- package/dist/plugins/reactNativeCommonJsPlugin.native.js.map +1 -1
- package/dist/plugins/reactNativeDevAssetPlugin.mjs +72 -83
- package/dist/plugins/reactNativeDevAssetPlugin.mjs.map +1 -1
- package/dist/plugins/reactNativeDevAssetPlugin.native.js +75 -92
- package/dist/plugins/reactNativeDevAssetPlugin.native.js.map +1 -1
- package/dist/plugins/reactNativeDevServer.mjs +283 -328
- package/dist/plugins/reactNativeDevServer.mjs.map +1 -1
- package/dist/plugins/reactNativeDevServer.native.js +332 -391
- package/dist/plugins/reactNativeDevServer.native.js.map +1 -1
- package/dist/plugins/rnCodegenPlugin.mjs +13 -12
- package/dist/plugins/rnCodegenPlugin.mjs.map +1 -1
- package/dist/plugins/rnCodegenPlugin.native.js +13 -12
- package/dist/plugins/rnCodegenPlugin.native.js.map +1 -1
- package/dist/plugins/rollupRemoveUnusedImports.mjs +8 -7
- package/dist/plugins/rollupRemoveUnusedImports.mjs.map +1 -1
- package/dist/plugins/rollupRemoveUnusedImports.native.js +8 -7
- package/dist/plugins/rollupRemoveUnusedImports.native.js.map +1 -1
- package/dist/plugins/workletImportsPlugin.mjs +127 -132
- package/dist/plugins/workletImportsPlugin.mjs.map +1 -1
- package/dist/plugins/workletImportsPlugin.native.js +192 -203
- package/dist/plugins/workletImportsPlugin.native.js.map +1 -1
- package/dist/rn-commands/bundle/buildBundle.mjs +45 -79
- package/dist/rn-commands/bundle/buildBundle.mjs.map +1 -1
- package/dist/rn-commands/bundle/buildBundle.native.js +45 -85
- package/dist/rn-commands/bundle/buildBundle.native.js.map +1 -1
- package/dist/runtime/hmr-client.mjs +133 -140
- package/dist/runtime/hmr-client.mjs.map +1 -1
- package/dist/runtime/hmr-client.native.js +223 -222
- package/dist/runtime/hmr-client.native.js.map +1 -1
- package/dist/runtime/hmr-runtime.mjs +192 -194
- package/dist/runtime/hmr-runtime.mjs.map +1 -1
- package/dist/runtime/hmr-runtime.native.js +424 -411
- package/dist/runtime/hmr-runtime.native.js.map +1 -1
- package/dist/runtime/hmr-types.mjs +0 -2
- package/dist/runtime/hmr-types.native.js +0 -2
- package/dist/runtime/native-prelude.mjs +2 -1
- package/dist/runtime/native-prelude.mjs.map +1 -1
- package/dist/runtime/native-prelude.native.js +2 -1
- package/dist/runtime/native-prelude.native.js.map +1 -1
- package/dist/runtime/react-refresh-utils.mjs +23 -22
- package/dist/runtime/react-refresh-utils.mjs.map +1 -1
- package/dist/runtime/react-refresh-utils.native.js +23 -27
- package/dist/runtime/react-refresh-utils.native.js.map +1 -1
- package/dist/serve/node.mjs +49 -49
- package/dist/serve/node.mjs.map +1 -1
- package/dist/serve/node.native.js +92 -96
- package/dist/serve/node.native.js.map +1 -1
- package/dist/types.mjs +0 -2
- package/dist/types.native.js +0 -2
- package/dist/user-interface/index.mjs +245 -262
- package/dist/user-interface/index.mjs.map +1 -1
- package/dist/user-interface/index.native.js +274 -298
- package/dist/user-interface/index.native.js.map +1 -1
- package/dist/utils/assert.mjs +7 -6
- package/dist/utils/assert.mjs.map +1 -1
- package/dist/utils/assert.native.js +7 -18
- package/dist/utils/assert.native.js.map +1 -1
- package/dist/utils/bindKeypressInput.mjs +36 -38
- package/dist/utils/bindKeypressInput.mjs.map +1 -1
- package/dist/utils/bindKeypressInput.native.js +36 -38
- package/dist/utils/bindKeypressInput.native.js.map +1 -1
- package/dist/utils/coerceToArray.mjs +2 -1
- package/dist/utils/coerceToArray.mjs.map +1 -1
- package/dist/utils/coerceToArray.native.js +2 -1
- package/dist/utils/coerceToArray.native.js.map +1 -1
- package/dist/utils/connectedNativeClients.mjs +3 -2
- package/dist/utils/connectedNativeClients.mjs.map +1 -1
- package/dist/utils/connectedNativeClients.native.js +3 -2
- package/dist/utils/connectedNativeClients.native.js.map +1 -1
- package/dist/utils/createNativeDevEngine.mjs +992 -966
- package/dist/utils/createNativeDevEngine.mjs.map +1 -1
- package/dist/utils/createNativeDevEngine.native.js +1184 -1179
- package/dist/utils/createNativeDevEngine.native.js.map +1 -1
- package/dist/utils/dispose.mjs +4 -3
- package/dist/utils/dispose.mjs.map +1 -1
- package/dist/utils/dispose.native.js +6 -5
- package/dist/utils/dispose.native.js.map +1 -1
- package/dist/utils/environmentUtils.mjs +5 -4
- package/dist/utils/environmentUtils.mjs.map +1 -1
- package/dist/utils/environmentUtils.native.js +5 -4
- package/dist/utils/environmentUtils.native.js.map +1 -1
- package/dist/utils/execSync.mjs +7 -5
- package/dist/utils/execSync.mjs.map +1 -1
- package/dist/utils/execSync.native.js +8 -6
- package/dist/utils/execSync.native.js.map +1 -1
- package/dist/utils/expoRun.mjs +27 -35
- package/dist/utils/expoRun.mjs.map +1 -1
- package/dist/utils/expoRun.native.js +27 -35
- package/dist/utils/expoRun.native.js.map +1 -1
- package/dist/utils/filterViteServerResolvedUrls.mjs +24 -22
- package/dist/utils/filterViteServerResolvedUrls.mjs.map +1 -1
- package/dist/utils/filterViteServerResolvedUrls.native.js +61 -63
- package/dist/utils/filterViteServerResolvedUrls.native.js.map +1 -1
- package/dist/utils/getBoundPort.mjs +6 -5
- package/dist/utils/getBoundPort.mjs.map +1 -1
- package/dist/utils/getBoundPort.native.js +8 -12
- package/dist/utils/getBoundPort.native.js.map +1 -1
- package/dist/utils/getCacheDir.mjs +3 -1
- package/dist/utils/getCacheDir.mjs.map +1 -1
- package/dist/utils/getCacheDir.native.js +3 -1
- package/dist/utils/getCacheDir.native.js.map +1 -1
- package/dist/utils/getServerEntry.mjs +6 -4
- package/dist/utils/getServerEntry.mjs.map +1 -1
- package/dist/utils/getServerEntry.native.js +8 -11
- package/dist/utils/getServerEntry.native.js.map +1 -1
- package/dist/utils/getVitePath.mjs +42 -42
- package/dist/utils/getVitePath.mjs.map +1 -1
- package/dist/utils/getVitePath.native.js +43 -41
- package/dist/utils/getVitePath.native.js.map +1 -1
- package/dist/utils/globDir.mjs +7 -11
- package/dist/utils/globDir.mjs.map +1 -1
- package/dist/utils/globDir.native.js +10 -14
- package/dist/utils/globDir.native.js.map +1 -1
- package/dist/utils/isWithin.mjs +4 -2
- package/dist/utils/isWithin.mjs.map +1 -1
- package/dist/utils/isWithin.native.js +4 -2
- package/dist/utils/isWithin.native.js.map +1 -1
- package/dist/utils/patches.mjs +233 -255
- package/dist/utils/patches.mjs.map +1 -1
- package/dist/utils/patches.native.js +415 -460
- package/dist/utils/patches.native.js.map +1 -1
- package/dist/utils/printServerUrls.mjs +9 -7
- package/dist/utils/printServerUrls.mjs.map +1 -1
- package/dist/utils/printServerUrls.native.js +48 -51
- package/dist/utils/printServerUrls.native.js.map +1 -1
- package/dist/utils/removeUndefined.mjs +8 -7
- package/dist/utils/removeUndefined.mjs.map +1 -1
- package/dist/utils/removeUndefined.native.js +8 -7
- package/dist/utils/removeUndefined.native.js.map +1 -1
- package/dist/utils/scanDepsToOptimize.mjs +194 -161
- package/dist/utils/scanDepsToOptimize.mjs.map +1 -1
- package/dist/utils/scanDepsToOptimize.native.js +227 -197
- package/dist/utils/scanDepsToOptimize.native.js.map +1 -1
- package/dist/utils/state.mjs +18 -18
- package/dist/utils/state.mjs.map +1 -1
- package/dist/utils/state.native.js +18 -18
- package/dist/utils/state.native.js.map +1 -1
- package/dist/utils/symbolicateNativeStack.mjs +54 -54
- package/dist/utils/symbolicateNativeStack.mjs.map +1 -1
- package/dist/utils/symbolicateNativeStack.native.js +58 -58
- package/dist/utils/symbolicateNativeStack.native.js.map +1 -1
- package/dist/utils/uniq.mjs +2 -1
- package/dist/utils/uniq.mjs.map +1 -1
- package/dist/utils/uniq.native.js +2 -1
- package/dist/utils/uniq.native.js.map +1 -1
- package/dist/utils/utils.mjs +19 -19
- package/dist/utils/utils.mjs.map +1 -1
- package/dist/utils/utils.native.js +38 -40
- package/dist/utils/utils.native.js.map +1 -1
- package/dist/vendor/debugger-app/index.mjs +0 -2
- package/dist/vendor/debugger-app/index.native.js +0 -2
- package/dist/vendor/debugger-app/src/debuggerWorker.mjs +0 -2
- package/dist/vendor/debugger-app/src/debuggerWorker.native.js +0 -2
- package/dist/vendor/debugger-app/src/index.mjs +0 -2
- package/dist/vendor/debugger-app/src/index.native.js +0 -2
- package/dist/vxrn-vite-plugin.mjs +34 -33
- package/dist/vxrn-vite-plugin.mjs.map +1 -1
- package/dist/vxrn-vite-plugin.native.js +35 -34
- package/dist/vxrn-vite-plugin.native.js.map +1 -1
- package/expo-plugin.cjs +12 -6
- package/package.json +12 -13
- package/src/config/getBaseViteConfigOnly.ts +6 -0
- package/src/exports/prebuild.ts +40 -12
- package/src/patches/builtInDepPatches.ts +24 -48
- package/src/utils/createNativeDevEngine.test.ts +1 -1
- package/src/utils/createNativeDevEngine.ts +15 -9
- package/src/utils/scanDepsToOptimize.ts +0 -3
- package/types/config/getBaseViteConfigOnly.d.ts.map +1 -1
- package/types/config/getOptimizeDeps.d.ts.map +1 -1
- package/types/config/getOptionsFilled.d.ts +15 -15
- package/types/config/getOptionsFilled.d.ts.map +1 -1
- package/types/exports/build.d.ts +11 -11
- package/types/exports/build.d.ts.map +1 -1
- package/types/exports/clean.d.ts +1 -1
- package/types/exports/clean.d.ts.map +1 -1
- package/types/exports/createServer.d.ts.map +1 -1
- package/types/exports/dev.d.ts.map +1 -1
- package/types/exports/patch.d.ts.map +1 -1
- package/types/exports/prebuild.d.ts +3 -3
- package/types/exports/prebuild.d.ts.map +1 -1
- package/types/exports/prebuildWithoutExpo.d.ts +1 -1
- package/types/exports/prebuildWithoutExpo.d.ts.map +1 -1
- package/types/exports/runAndroid.d.ts.map +1 -1
- package/types/exports/runIos.d.ts.map +1 -1
- package/types/exports/serve.d.ts.map +1 -1
- package/types/patches/builtInDepPatches.d.ts.map +1 -1
- package/types/plugins/autoDepOptimizePlugin.d.ts.map +1 -1
- package/types/plugins/rollupRemoveUnusedImports.d.ts.map +1 -1
- package/types/runtime/hmr-client.d.ts.map +1 -1
- package/types/runtime/hmr-runtime.d.ts.map +1 -1
- package/types/runtime/hmr-types.d.ts.map +1 -1
- package/types/utils/createNativeDevEngine.d.ts +1 -1
- package/types/utils/createNativeDevEngine.d.ts.map +1 -1
- package/types/utils/execSync.d.ts.map +1 -1
- package/types/utils/getServerEntry.d.ts.map +1 -1
- package/types/utils/scanDepsToOptimize.d.ts.map +1 -1
- package/types/vxrn-vite-plugin.d.ts.map +1 -1
- package/dist/config/getOptimizeDeps.test.mjs +0 -20
- package/dist/config/getOptimizeDeps.test.mjs.map +0 -1
- package/dist/config/getOptimizeDeps.test.native.js +0 -39
- package/dist/config/getOptimizeDeps.test.native.js.map +0 -1
- package/dist/config/getServerOptionsFilled.test.mjs +0 -20
- package/dist/config/getServerOptionsFilled.test.mjs.map +0 -1
- package/dist/config/getServerOptionsFilled.test.native.js +0 -20
- package/dist/config/getServerOptionsFilled.test.native.js.map +0 -1
- package/dist/config/getViteServerConfig.test.mjs +0 -26
- package/dist/config/getViteServerConfig.test.mjs.map +0 -1
- package/dist/config/getViteServerConfig.test.native.js +0 -26
- package/dist/config/getViteServerConfig.test.native.js.map +0 -1
- package/dist/config/mergeUserConfig.test.mjs +0 -108
- package/dist/config/mergeUserConfig.test.mjs.map +0 -1
- package/dist/config/mergeUserConfig.test.native.js +0 -108
- package/dist/config/mergeUserConfig.test.native.js.map +0 -1
- package/dist/exports/clean.test.mjs +0 -81
- package/dist/exports/clean.test.mjs.map +0 -1
- package/dist/exports/clean.test.native.js +0 -88
- package/dist/exports/clean.test.native.js.map +0 -1
- package/dist/exports/loadEnv.test.mjs +0 -65
- package/dist/exports/loadEnv.test.mjs.map +0 -1
- package/dist/exports/loadEnv.test.native.js +0 -65
- package/dist/exports/loadEnv.test.native.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/index.mjs.map +0 -1
- package/dist/index.native.js.map +0 -1
- package/dist/plugins/autoDepOptimizePlugin.test.mjs +0 -31
- package/dist/plugins/autoDepOptimizePlugin.test.mjs.map +0 -1
- package/dist/plugins/autoDepOptimizePlugin.test.native.js +0 -39
- package/dist/plugins/autoDepOptimizePlugin.test.native.js.map +0 -1
- package/dist/plugins/resolveIdScan.test.mjs +0 -31
- package/dist/plugins/resolveIdScan.test.mjs.map +0 -1
- package/dist/plugins/resolveIdScan.test.native.js +0 -38
- package/dist/plugins/resolveIdScan.test.native.js.map +0 -1
- package/dist/plugins/rnCodegenPlugin.test.mjs +0 -239
- package/dist/plugins/rnCodegenPlugin.test.mjs.map +0 -1
- package/dist/plugins/rnCodegenPlugin.test.native.js +0 -242
- package/dist/plugins/rnCodegenPlugin.test.native.js.map +0 -1
- package/dist/plugins/serverExtensions.test.mjs +0 -106
- package/dist/plugins/serverExtensions.test.mjs.map +0 -1
- package/dist/plugins/serverExtensions.test.native.js +0 -117
- package/dist/plugins/serverExtensions.test.native.js.map +0 -1
- package/dist/runtime/hmr-types.mjs.map +0 -1
- package/dist/runtime/hmr-types.native.js.map +0 -1
- package/dist/serve/node.test.mjs +0 -60
- package/dist/serve/node.test.mjs.map +0 -1
- package/dist/serve/node.test.native.js +0 -72
- package/dist/serve/node.test.native.js.map +0 -1
- package/dist/types.mjs.map +0 -1
- package/dist/types.native.js.map +0 -1
- package/dist/utils/bindKeypressInput.test.mjs +0 -48
- package/dist/utils/bindKeypressInput.test.mjs.map +0 -1
- package/dist/utils/bindKeypressInput.test.native.js +0 -48
- package/dist/utils/bindKeypressInput.test.native.js.map +0 -1
- package/dist/utils/createNativeDevEngine.test.mjs +0 -1788
- package/dist/utils/createNativeDevEngine.test.mjs.map +0 -1
- package/dist/utils/createNativeDevEngine.test.native.js +0 -1942
- package/dist/utils/createNativeDevEngine.test.native.js.map +0 -1
- package/dist/utils/createNativeDevEngineFailure.test.mjs +0 -44
- package/dist/utils/createNativeDevEngineFailure.test.mjs.map +0 -1
- package/dist/utils/createNativeDevEngineFailure.test.native.js +0 -54
- package/dist/utils/createNativeDevEngineFailure.test.native.js.map +0 -1
- package/dist/utils/getBoundPort.test.mjs +0 -71
- package/dist/utils/getBoundPort.test.mjs.map +0 -1
- package/dist/utils/getBoundPort.test.native.js +0 -82
- package/dist/utils/getBoundPort.test.native.js.map +0 -1
- package/dist/utils/imageSizePatch.test.mjs +0 -29
- package/dist/utils/imageSizePatch.test.mjs.map +0 -1
- package/dist/utils/imageSizePatch.test.native.js +0 -30
- package/dist/utils/imageSizePatch.test.native.js.map +0 -1
- package/dist/utils/patches.test.mjs +0 -242
- package/dist/utils/patches.test.mjs.map +0 -1
- package/dist/utils/patches.test.native.js +0 -271
- package/dist/utils/patches.test.native.js.map +0 -1
- package/dist/utils/symbolicateNativeStack.test.mjs +0 -96
- package/dist/utils/symbolicateNativeStack.test.mjs.map +0 -1
- package/dist/utils/symbolicateNativeStack.test.native.js +0 -96
- package/dist/utils/symbolicateNativeStack.test.native.js.map +0 -1
- package/dist/vendor/debugger-app/index.mjs.map +0 -1
- package/dist/vendor/debugger-app/index.native.js.map +0 -1
- package/dist/vendor/debugger-app/src/debuggerWorker.mjs.map +0 -1
- package/dist/vendor/debugger-app/src/debuggerWorker.native.js.map +0 -1
- package/dist/vendor/debugger-app/src/index.mjs.map +0 -1
- package/dist/vendor/debugger-app/src/index.native.js.map +0 -1
- package/types/config/getOptimizeDeps.test.d.ts +0 -2
- package/types/config/getOptimizeDeps.test.d.ts.map +0 -1
- package/types/config/getServerOptionsFilled.test.d.ts +0 -2
- package/types/config/getServerOptionsFilled.test.d.ts.map +0 -1
- package/types/config/getViteServerConfig.test.d.ts +0 -2
- package/types/config/getViteServerConfig.test.d.ts.map +0 -1
- package/types/config/mergeUserConfig.test.d.ts +0 -2
- package/types/config/mergeUserConfig.test.d.ts.map +0 -1
- package/types/exports/clean.test.d.ts +0 -2
- package/types/exports/clean.test.d.ts.map +0 -1
- package/types/exports/loadEnv.test.d.ts +0 -2
- package/types/exports/loadEnv.test.d.ts.map +0 -1
- package/types/plugins/autoDepOptimizePlugin.test.d.ts +0 -2
- package/types/plugins/autoDepOptimizePlugin.test.d.ts.map +0 -1
- package/types/plugins/resolveIdScan.test.d.ts +0 -2
- package/types/plugins/resolveIdScan.test.d.ts.map +0 -1
- package/types/plugins/rnCodegenPlugin.test.d.ts +0 -2
- package/types/plugins/rnCodegenPlugin.test.d.ts.map +0 -1
- package/types/plugins/serverExtensions.test.d.ts +0 -2
- package/types/plugins/serverExtensions.test.d.ts.map +0 -1
- package/types/serve/node.test.d.ts +0 -2
- package/types/serve/node.test.d.ts.map +0 -1
- package/types/utils/bindKeypressInput.test.d.ts +0 -2
- package/types/utils/bindKeypressInput.test.d.ts.map +0 -1
- package/types/utils/createNativeDevEngine.test.d.ts +0 -2
- package/types/utils/createNativeDevEngine.test.d.ts.map +0 -1
- package/types/utils/createNativeDevEngineFailure.test.d.ts +0 -2
- package/types/utils/createNativeDevEngineFailure.test.d.ts.map +0 -1
- package/types/utils/getBoundPort.test.d.ts +0 -2
- package/types/utils/getBoundPort.test.d.ts.map +0 -1
- package/types/utils/imageSizePatch.test.d.ts +0 -2
- package/types/utils/imageSizePatch.test.d.ts.map +0 -1
- package/types/utils/patches.test.d.ts +0 -2
- package/types/utils/patches.test.d.ts.map +0 -1
- package/types/utils/symbolicateNativeStack.test.d.ts +0 -2
- package/types/utils/symbolicateNativeStack.test.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["resolvePath","detectPackageManager","FSExtra","path","pathToFileURL","colors","fillOptions","applyBuiltInPatches","generateForPlatform","prebuild","root","platform","noInstall","expo","options","doesIOSExist","existsSync","resolve","doesAndroidExist","importPath","expoPrebuild","href","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":[]}
|
|
1
|
+
{"version":3,"file":"prebuild.js","names":[],"sources":["exports/prebuild.js"],"sourcesContent":["import { resolvePath } from \"@vxrn/resolve\";\nimport { detectPackageManager } from \"@vxrn/utils\";\nimport FSExtra from \"fs-extra\";\nimport path from \"node:path\";\nimport { pathToFileURL } from \"node:url\";\nimport colors from \"picocolors\";\nimport { fillOptions } from \"../config/getOptionsFilled\";\nimport { applyBuiltInPatches } from \"../utils/patches\";\nimport { generateForPlatform } from \"./prebuildWithoutExpo\";\nconst prebuild = async ({\n root,\n platform,\n \"no-install\": noInstall = false,\n expo = true\n}) => {\n const options = await fillOptions({ root });\n await applyBuiltInPatches(options);\n const doesIOSExist = FSExtra.existsSync(path.resolve(\"ios\"));\n const doesAndroidExist = FSExtra.existsSync(path.resolve(\"android\"));\n const isMetro = process.env.ONE_METRO_MODE || globalThis[\"__vxrnMetroOptions__\"] || globalThis[\"__vxrnPluginConfig__\"]?.native?.bundler === \"metro\";\n const useRolldownIOS = (!platform || platform === \"ios\") && !isMetro;\n if (expo) {\n try {\n const importPath = resolvePath(\"@expo/cli/build/src/prebuild/index.js\", root);\n const expoPrebuild = (await import(pathToFileURL(importPath).href)).default.expoPrebuild;\n const previousNativeBuildEnvironment = useRolldownIOS ? {\n EXPO_USE_PRECOMPILED_MODULES: process.env.EXPO_USE_PRECOMPILED_MODULES,\n RCT_HERMES_V1_ENABLED: process.env.RCT_HERMES_V1_ENABLED,\n RCT_USE_PREBUILT_RNCORE: process.env.RCT_USE_PREBUILT_RNCORE,\n RCT_USE_RN_DEP: process.env.RCT_USE_RN_DEP\n } : null;\n if (useRolldownIOS) {\n process.env.EXPO_USE_PRECOMPILED_MODULES = \"0\";\n process.env.RCT_HERMES_V1_ENABLED = \"1\";\n process.env.RCT_USE_PREBUILT_RNCORE = \"0\";\n process.env.RCT_USE_RN_DEP = \"0\";\n }\n try {\n await expoPrebuild([\n ...platform ? [\"--platform\", platform] : [],\n ...noInstall ? [\"--no-install\"] : [],\n \"--skip-dependency-update\",\n \"react,react-native,expo\"\n ]);\n } finally {\n if (previousNativeBuildEnvironment) {\n for (const [name, value] of Object.entries(previousNativeBuildEnvironment)) {\n if (value === void 0) delete process.env[name];\n else process.env[name] = value;\n }\n }\n }\n try {\n const packageJsonPath = path.join(root, \"package.json\");\n let packageJsonContents = await FSExtra.readFile(packageJsonPath, \"utf8\");\n packageJsonContents = packageJsonContents.replace(/expo run:ios/g, \"one run:ios\");\n packageJsonContents = packageJsonContents.replace(\n /expo run:android/g,\n \"one run:android\"\n );\n await FSExtra.writeFile(packageJsonPath, packageJsonContents, \"utf8\");\n } catch (error) {\n console.error(\"Error updating package.json\", error);\n }\n try {\n FSExtra.removeSync(path.join(root, \"ios\", \".xcode.env.local\"));\n } catch (e) {\n }\n } catch (e) {\n throw new Error(\n `Failed to prebuild native project: ${e}\nIs \"expo\" listed in your dependencies?`\n );\n }\n if (!platform || platform === \"ios\") {\n if (!isMetro) {\n ensureRolldownPodfileProperties(root);\n }\n }\n if (!platform || platform === \"ios\") {\n validateSwift6Workaround(root);\n }\n if (!platform || platform === \"ios\") {\n console.info(\n `\niOS:\n\n Run \\`open ios/*.xcworkspace\\` in your terminal to open the prebuilt iOS project.\n Then you can either run it via Xcode or archive it for distribution.\n\n See https://onestack.dev/docs/guides-ios-native for more information.\n\n---\n`\n );\n }\n } else {\n try {\n const packageJsonPath = path.join(root, \"package.json\");\n let packageJsonContents = await FSExtra.readFile(packageJsonPath, \"utf8\");\n let { devDependencies } = JSON.parse(packageJsonContents);\n if (!devDependencies[\"@react-native-community/template\"]) {\n const installCommand = await (async () => {\n const found = await detectPackageManager();\n switch (true) {\n case found.bun:\n return `bun add -D @react-native-community/template`;\n case found.pnpm:\n return `pnpm install -D @react-native-community/template`;\n case found.yarn:\n return `yarn add -D @react-native-community/template`;\n default:\n return `npm install -D @react-native-community/template`;\n }\n })();\n throw new Error(\n `\"@react-native-community/template\" is not found in package.json, please install \"@react-native-community/template\" as dev dependency:\n\\`${installCommand}\\``\n );\n }\n } catch (error) {\n throw new Error(\"package.json checks are failing:\\n\" + error);\n }\n let appConfig;\n try {\n const appConfigPath = path.resolve(\"app.json\");\n const appConfigContents = await FSExtra.readFile(appConfigPath, \"utf8\");\n appConfig = JSON.parse(appConfigContents);\n } catch (error) {\n throw new Error(\"app.json checks are failing:\\n\" + error);\n }\n if (platform == \"ios\" || !platform) {\n if (!doesIOSExist) {\n await generateForPlatform(root, \"ios\", appConfig);\n } else {\n console.error(\"ios/ folder already exists\");\n }\n }\n if (platform == \"android\" || !platform) {\n if (!doesAndroidExist) {\n await generateForPlatform(root, \"android\", appConfig);\n } else {\n console.error(\"android/ folder already exists\");\n }\n }\n if (!platform || platform === \"ios\") {\n console.info(`Run cd ios && pod install`);\n console.info(\n \"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.\"\n );\n }\n }\n if (!platform || platform === \"android\") {\n console.info(\n `\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`\n );\n }\n try {\n resolvePath(\"@react-native-community/cli\", root);\n } catch (e) {\n if (isMissingCliDependency(e)) {\n warnMissingCliDependency();\n } else {\n throw e;\n }\n }\n};\nfunction validateSwift6Workaround(root) {\n const podfilePath = path.join(root, \"ios\", \"Podfile\");\n if (!FSExtra.existsSync(podfilePath)) return;\n const propsPath = path.join(root, \"ios\", \"Podfile.properties.json\");\n if (FSExtra.existsSync(propsPath)) {\n try {\n const props = JSON.parse(FSExtra.readFileSync(propsPath, \"utf8\"));\n if (props[\"one.disableSwift6Workaround\"] === \"true\") return;\n } catch {\n }\n }\n try {\n const emcPkgPath = resolvePath(\"expo-modules-core/package.json\", root);\n const emcVersion = JSON.parse(FSExtra.readFileSync(emcPkgPath, \"utf8\")).version;\n const major = Number.parseInt(emcVersion.match(/^(\\d+)/)?.[1] || \"0\", 10);\n if (major >= 56) return;\n } catch {\n }\n const podfile = FSExtra.readFileSync(podfilePath, \"utf8\");\n if (!podfile.includes(\"SWIFT_STRICT_CONCURRENCY\")) {\n console.warn(\n colors.yellow(`\n\\u26A0\\uFE0F Your ios/Podfile is missing the Swift 6 workaround for expo-modules-core.\n Without this, your iOS build will fail with Swift concurrency errors.\n\n Fix: add \"vxrn/expo-plugin\" to your app.json plugins and re-run prebuild.\n\n To disable this check: set \"one.disableSwift6Workaround\": \"true\"\n in ios/Podfile.properties.json.\n\n See: expo/expo#43199\n`)\n );\n }\n}\nfunction isMissingCliDependency(error) {\n return error.code === \"MODULE_NOT_FOUND\" && /@react-native-community\\/cli/.test(error.message);\n}\nfunction warnMissingCliDependency() {\n console.warn(`\n${colors.red(\"\\u26A0\")}\\uFE0F To build the app, ${colors.dim(\"react-native\")} depends on ${colors.dim(\"@react-native-community/cli\")} for cli commands. Please update your ${colors.dim(\"package.json\")} to include:\n${colors.white(\n colors.bold(`\n \"devDependencies\": {\n \"@react-native-community/cli\": \"latest\",\n }`)\n )}`);\n}\nasync function replaceInUTF8File(filePath, findThis, replaceWith) {\n const fileContent = await FSExtra.readFile(filePath, \"utf8\");\n const replacedFileContent = fileContent.replace(findThis, replaceWith);\n if (fileContent !== replacedFileContent) {\n await FSExtra.writeFile(filePath, replacedFileContent, \"utf8\");\n }\n}\nfunction ensureRolldownPodfileProperties(root) {\n const propsPath = path.join(root, \"ios\", \"Podfile.properties.json\");\n if (!FSExtra.existsSync(path.join(root, \"ios\"))) return;\n let props = {};\n if (FSExtra.existsSync(propsPath)) {\n try {\n props = JSON.parse(FSExtra.readFileSync(propsPath, \"utf8\"));\n } catch {\n }\n }\n let changed = false;\n if (props[\"expo.useHermesV1\"] !== \"true\") {\n props[\"expo.useHermesV1\"] = \"true\";\n changed = true;\n }\n if (props[\"ios.buildReactNativeFromSource\"] !== \"true\") {\n props[\"ios.buildReactNativeFromSource\"] = \"true\";\n changed = true;\n }\n if (props[\"EXPO_USE_PRECOMPILED_MODULES\"] !== \"false\") {\n props[\"EXPO_USE_PRECOMPILED_MODULES\"] = \"false\";\n changed = true;\n }\n if (changed) {\n FSExtra.writeFileSync(propsPath, JSON.stringify(props, null, 2) + \"\\n\", \"utf8\");\n console.info(\n colors.cyan(\n `[vxrn] Updated ios/Podfile.properties.json for rolldown mode (hermes v1 + React Native and Expo modules from source)`\n )\n );\n }\n}\nexport {\n prebuild,\n replaceInUTF8File\n};\n//# sourceMappingURL=prebuild.js.map\n"],"mappings":";;;;;;;;;;;AASA,MAAM,WAAW,OAAO,EACtB,MACA,UACA,cAAc,YAAY,OAC1B,OAAO,WACH;CACJ,MAAM,UAAU,MAAM,YAAY,EAAE,KAAK,CAAC;CAC1C,MAAM,oBAAoB,OAAO;CACjC,MAAM,eAAe,QAAQ,WAAW,KAAK,QAAQ,KAAK,CAAC;CAC3D,MAAM,mBAAmB,QAAQ,WAAW,KAAK,QAAQ,SAAS,CAAC;CACnE,MAAM,UAAU,QAAQ,IAAI,kBAAkB,WAAW,2BAA2B,WAAW,uBAAuB,EAAE,QAAQ,YAAY;CAC5I,MAAM,kBAAkB,CAAC,YAAY,aAAa,UAAU,CAAC;CAC7D,IAAI,MAAM;EACR,IAAI;GACF,MAAM,aAAa,YAAY,yCAAyC,IAAI;GAC5E,MAAM,gBAAgB,MAAM,OAAO,cAAc,UAAU,CAAC,CAAC,MAAK,CAAE,QAAQ;GAC5E,MAAM,iCAAiC,iBAAiB;IACtD,8BAA8B,QAAQ,IAAI;IAC1C,uBAAuB,QAAQ,IAAI;IACnC,yBAAyB,QAAQ,IAAI;IACrC,gBAAgB,QAAQ,IAAI;GAC9B,IAAI;GACJ,IAAI,gBAAgB;IAClB,QAAQ,IAAI,+BAA+B;IAC3C,QAAQ,IAAI,wBAAwB;IACpC,QAAQ,IAAI,0BAA0B;IACtC,QAAQ,IAAI,iBAAiB;GAC/B;GACA,IAAI;IACF,MAAM,aAAa;KACjB,GAAG,WAAW,CAAC,cAAc,QAAQ,IAAI,CAAC;KAC1C,GAAG,YAAY,CAAC,cAAc,IAAI,CAAC;KACnC;KACA;IACF,CAAC;GACH,UAAU;IACR,IAAI,gCAAgC;KAClC,KAAK,MAAM,CAAC,MAAM,UAAU,OAAO,QAAQ,8BAA8B,GAAG;MAC1E,IAAI,UAAU,KAAK,GAAG,OAAO,QAAQ,IAAI;WACpC,QAAQ,IAAI,QAAQ;KAC3B;IACF;GACF;GACA,IAAI;IACF,MAAM,kBAAkB,KAAK,KAAK,MAAM,cAAc;IACtD,IAAI,sBAAsB,MAAM,QAAQ,SAAS,iBAAiB,MAAM;IACxE,sBAAsB,oBAAoB,QAAQ,iBAAiB,aAAa;IAChF,sBAAsB,oBAAoB,QACxC,qBACA,iBACF;IACA,MAAM,QAAQ,UAAU,iBAAiB,qBAAqB,MAAM;GACtE,SAAS,OAAO;IACd,QAAQ,MAAM,+BAA+B,KAAK;GACpD;GACA,IAAI;IACF,QAAQ,WAAW,KAAK,KAAK,MAAM,OAAO,kBAAkB,CAAC;GAC/D,SAAS,GAAG,CACZ;EACF,SAAS,GAAG;GACV,MAAM,IAAI,MACR,sCAAsC,EAAE;uCAE1C;EACF;EACA,IAAI,CAAC,YAAY,aAAa,OAAO;GACnC,IAAI,CAAC,SAAS;IACZ,gCAAgC,IAAI;GACtC;EACF;EACA,IAAI,CAAC,YAAY,aAAa,OAAO;GACnC,yBAAyB,IAAI;EAC/B;EACA,IAAI,CAAC,YAAY,aAAa,OAAO;GACnC,QAAQ,KACN;;;;;;;;;CAUF;EACF;CACF,OAAO;EACL,IAAI;GACF,MAAM,kBAAkB,KAAK,KAAK,MAAM,cAAc;GACtD,IAAI,sBAAsB,MAAM,QAAQ,SAAS,iBAAiB,MAAM;GACxE,IAAI,EAAE,oBAAoB,KAAK,MAAM,mBAAmB;GACxD,IAAI,CAAC,gBAAgB,qCAAqC;IACxD,MAAM,iBAAiB,OAAO,YAAY;KACxC,MAAM,QAAQ,MAAM,qBAAqB;KACzC,QAAQ,MAAR;MACE,KAAK,MAAM,KACT,OAAO;MACT,KAAK,MAAM,MACT,OAAO;MACT,KAAK,MAAM,MACT,OAAO;MACT,SACE,OAAO;KACX;IACF,EAAC,CAAE;IACH,MAAM,IAAI,MACR;IACN,eAAe,GACX;GACF;EACF,SAAS,OAAO;GACd,MAAM,IAAI,MAAM,uCAAuC,KAAK;EAC9D;EACA,IAAI;EACJ,IAAI;GACF,MAAM,gBAAgB,KAAK,QAAQ,UAAU;GAC7C,MAAM,oBAAoB,MAAM,QAAQ,SAAS,eAAe,MAAM;GACtE,YAAY,KAAK,MAAM,iBAAiB;EAC1C,SAAS,OAAO;GACd,MAAM,IAAI,MAAM,mCAAmC,KAAK;EAC1D;EACA,IAAI,YAAY,SAAS,CAAC,UAAU;GAClC,IAAI,CAAC,cAAc;IACjB,MAAM,oBAAoB,MAAM,OAAO,SAAS;GAClD,OAAO;IACL,QAAQ,MAAM,4BAA4B;GAC5C;EACF;EACA,IAAI,YAAY,aAAa,CAAC,UAAU;GACtC,IAAI,CAAC,kBAAkB;IACrB,MAAM,oBAAoB,MAAM,WAAW,SAAS;GACtD,OAAO;IACL,QAAQ,MAAM,gCAAgC;GAChD;EACF;EACA,IAAI,CAAC,YAAY,aAAa,OAAO;GACnC,QAAQ,KAAK,2BAA2B;GACxC,QAAQ,KACN,uJACF;EACF;CACF;CACA,IAAI,CAAC,YAAY,aAAa,WAAW;EACvC,QAAQ,KACN;;;;;;;;CASF;CACF;CACA,IAAI;EACF,YAAY,+BAA+B,IAAI;CACjD,SAAS,GAAG;EACV,IAAI,uBAAuB,CAAC,GAAG;GAC7B,yBAAyB;EAC3B,OAAO;GACL,MAAM;EACR;CACF;AACF;AACA,SAAS,yBAAyB,MAAM;CACtC,MAAM,cAAc,KAAK,KAAK,MAAM,OAAO,SAAS;CACpD,IAAI,CAAC,QAAQ,WAAW,WAAW,GAAG;CACtC,MAAM,YAAY,KAAK,KAAK,MAAM,OAAO,yBAAyB;CAClE,IAAI,QAAQ,WAAW,SAAS,GAAG;EACjC,IAAI;GACF,MAAM,QAAQ,KAAK,MAAM,QAAQ,aAAa,WAAW,MAAM,CAAC;GAChE,IAAI,MAAM,mCAAmC,QAAQ;EACvD,QAAQ,CACR;CACF;CACA,IAAI;EACF,MAAM,aAAa,YAAY,kCAAkC,IAAI;EACrE,MAAM,aAAa,KAAK,MAAM,QAAQ,aAAa,YAAY,MAAM,CAAC,CAAC,CAAC;EACxE,MAAM,QAAQ,OAAO,SAAS,WAAW,MAAM,QAAQ,CAAC,GAAG,MAAM,KAAK,EAAE;EACxE,IAAI,SAAS,IAAI;CACnB,QAAQ,CACR;CACA,MAAM,UAAU,QAAQ,aAAa,aAAa,MAAM;CACxD,IAAI,CAAC,QAAQ,SAAS,0BAA0B,GAAG;EACjD,QAAQ,KACN,OAAO,OAAO;;;;;;;;;;CAUnB,CACG;CACF;AACF;AACA,SAAS,uBAAuB,OAAO;CACrC,OAAO,MAAM,SAAS,sBAAsB,+BAA+B,KAAK,MAAM,OAAO;AAC/F;AACA,SAAS,2BAA2B;CAClC,QAAQ,KAAK;EACb,OAAO,IAAI,GAAQ,EAAE,2BAA2B,OAAO,IAAI,cAAc,EAAE,cAAc,OAAO,IAAI,6BAA6B,EAAE,wCAAwC,OAAO,IAAI,cAAc,EAAE;EACtM,OAAO,MACL,OAAO,KAAK;;;IAGZ,CACF,GAAG;AACL;AACA,eAAe,kBAAkB,UAAU,UAAU,aAAa;CAChE,MAAM,cAAc,MAAM,QAAQ,SAAS,UAAU,MAAM;CAC3D,MAAM,sBAAsB,YAAY,QAAQ,UAAU,WAAW;CACrE,IAAI,gBAAgB,qBAAqB;EACvC,MAAM,QAAQ,UAAU,UAAU,qBAAqB,MAAM;CAC/D;AACF;AACA,SAAS,gCAAgC,MAAM;CAC7C,MAAM,YAAY,KAAK,KAAK,MAAM,OAAO,yBAAyB;CAClE,IAAI,CAAC,QAAQ,WAAW,KAAK,KAAK,MAAM,KAAK,CAAC,GAAG;CACjD,IAAI,QAAQ,CAAC;CACb,IAAI,QAAQ,WAAW,SAAS,GAAG;EACjC,IAAI;GACF,QAAQ,KAAK,MAAM,QAAQ,aAAa,WAAW,MAAM,CAAC;EAC5D,QAAQ,CACR;CACF;CACA,IAAI,UAAU;CACd,IAAI,MAAM,wBAAwB,QAAQ;EACxC,MAAM,sBAAsB;EAC5B,UAAU;CACZ;CACA,IAAI,MAAM,sCAAsC,QAAQ;EACtD,MAAM,oCAAoC;EAC1C,UAAU;CACZ;CACA,IAAI,MAAM,oCAAoC,SAAS;EACrD,MAAM,kCAAkC;EACxC,UAAU;CACZ;CACA,IAAI,SAAS;EACX,QAAQ,cAAc,WAAW,KAAK,UAAU,OAAO,MAAM,CAAC,IAAI,MAAM,MAAM;EAC9E,QAAQ,KACN,OAAO,KACL,sHACF,CACF;CACF;AACF"}
|
|
@@ -7,52 +7,90 @@ import colors from "picocolors";
|
|
|
7
7
|
import { fillOptions } from "../config/getOptionsFilled.native.js";
|
|
8
8
|
import { applyBuiltInPatches } from "../utils/patches.native.js";
|
|
9
9
|
import { generateForPlatform } from "./prebuildWithoutExpo.native.js";
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
10
|
+
|
|
11
|
+
var prebuild = async function(param) {
|
|
12
|
+
var { root, platform, "no-install": noInstall = false, expo = true } = param;
|
|
13
|
+
var _globalThis___vxrnPluginConfig___native, _globalThis___vxrnPluginConfig__;
|
|
14
|
+
var options = await fillOptions({ root });
|
|
15
|
+
await applyBuiltInPatches(options);
|
|
16
|
+
var doesIOSExist = FSExtra.existsSync(path.resolve("ios"));
|
|
17
|
+
var doesAndroidExist = FSExtra.existsSync(path.resolve("android"));
|
|
18
|
+
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";
|
|
19
|
+
var useRolldownIOS = (!platform || platform === "ios") && !isMetro;
|
|
20
|
+
if (expo) {
|
|
21
|
+
try {
|
|
22
|
+
var importPath = resolvePath("@expo/cli/build/src/prebuild/index.js", root);
|
|
23
|
+
var expoPrebuild = (await import(pathToFileURL(importPath).href)).default.expoPrebuild;
|
|
24
|
+
var previousNativeBuildEnvironment = useRolldownIOS ? {
|
|
25
|
+
EXPO_USE_PRECOMPILED_MODULES: process.env.EXPO_USE_PRECOMPILED_MODULES,
|
|
26
|
+
RCT_HERMES_V1_ENABLED: process.env.RCT_HERMES_V1_ENABLED,
|
|
27
|
+
RCT_USE_PREBUILT_RNCORE: process.env.RCT_USE_PREBUILT_RNCORE,
|
|
28
|
+
RCT_USE_RN_DEP: process.env.RCT_USE_RN_DEP
|
|
29
|
+
} : null;
|
|
30
|
+
if (useRolldownIOS) {
|
|
31
|
+
process.env.EXPO_USE_PRECOMPILED_MODULES = "0";
|
|
32
|
+
process.env.RCT_HERMES_V1_ENABLED = "1";
|
|
33
|
+
process.env.RCT_USE_PREBUILT_RNCORE = "0";
|
|
34
|
+
process.env.RCT_USE_RN_DEP = "0";
|
|
35
|
+
}
|
|
36
|
+
try {
|
|
37
|
+
await expoPrebuild([
|
|
38
|
+
...platform ? ["--platform", platform] : [],
|
|
39
|
+
...noInstall ? ["--no-install"] : [],
|
|
40
|
+
"--skip-dependency-update",
|
|
41
|
+
"react,react-native,expo"
|
|
42
|
+
]);
|
|
43
|
+
} finally {
|
|
44
|
+
if (previousNativeBuildEnvironment) {
|
|
45
|
+
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
|
|
46
|
+
try {
|
|
47
|
+
for (var _iterator = Object.entries(previousNativeBuildEnvironment)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
48
|
+
var [name, value] = _step.value;
|
|
49
|
+
if (value === void 0) delete process.env[name];
|
|
50
|
+
else process.env[name] = value;
|
|
51
|
+
}
|
|
52
|
+
} catch (err) {
|
|
53
|
+
_didIteratorError = true;
|
|
54
|
+
_iteratorError = err;
|
|
55
|
+
} finally {
|
|
56
|
+
try {
|
|
57
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
58
|
+
_iterator.return();
|
|
59
|
+
}
|
|
60
|
+
} finally {
|
|
61
|
+
if (_didIteratorError) {
|
|
62
|
+
throw _iteratorError;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
try {
|
|
69
|
+
var packageJsonPath = path.join(root, "package.json");
|
|
70
|
+
var packageJsonContents = await FSExtra.readFile(packageJsonPath, "utf8");
|
|
71
|
+
packageJsonContents = packageJsonContents.replace(/expo run:ios/g, "one run:ios");
|
|
72
|
+
packageJsonContents = packageJsonContents.replace(/expo run:android/g, "one run:android");
|
|
73
|
+
await FSExtra.writeFile(packageJsonPath, packageJsonContents, "utf8");
|
|
74
|
+
} catch (error) {
|
|
75
|
+
console.error("Error updating package.json", error);
|
|
76
|
+
}
|
|
77
|
+
try {
|
|
78
|
+
FSExtra.removeSync(path.join(root, "ios", ".xcode.env.local"));
|
|
79
|
+
} catch (e) {}
|
|
80
|
+
} catch (e) {
|
|
81
|
+
throw new Error(`Failed to prebuild native project: ${e}
|
|
42
82
|
Is "expo" listed in your dependencies?`);
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
if (!platform || platform === "ios") {
|
|
55
|
-
console.info(`
|
|
83
|
+
}
|
|
84
|
+
if (!platform || platform === "ios") {
|
|
85
|
+
if (!isMetro) {
|
|
86
|
+
ensureRolldownPodfileProperties(root);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
if (!platform || platform === "ios") {
|
|
90
|
+
validateSwift6Workaround(root);
|
|
91
|
+
}
|
|
92
|
+
if (!platform || platform === "ios") {
|
|
93
|
+
console.info(`
|
|
56
94
|
iOS:
|
|
57
95
|
|
|
58
96
|
Run \`open ios/*.xcworkspace\` in your terminal to open the prebuilt iOS project.
|
|
@@ -62,63 +100,57 @@ iOS:
|
|
|
62
100
|
|
|
63
101
|
---
|
|
64
102
|
`);
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
return `yarn add -D @react-native-community/template`;
|
|
83
|
-
default:
|
|
84
|
-
return `npm install -D @react-native-community/template`;
|
|
85
|
-
}
|
|
86
|
-
}();
|
|
87
|
-
throw new Error(`"@react-native-community/template" is not found in package.json, please install "@react-native-community/template" as dev dependency:
|
|
103
|
+
}
|
|
104
|
+
} else {
|
|
105
|
+
try {
|
|
106
|
+
var packageJsonPath1 = path.join(root, "package.json");
|
|
107
|
+
var packageJsonContents1 = await FSExtra.readFile(packageJsonPath1, "utf8");
|
|
108
|
+
var { devDependencies } = JSON.parse(packageJsonContents1);
|
|
109
|
+
if (!devDependencies["@react-native-community/template"]) {
|
|
110
|
+
var installCommand = await (async function() {
|
|
111
|
+
var found = await detectPackageManager();
|
|
112
|
+
switch (true) {
|
|
113
|
+
case found.bun: return `bun add -D @react-native-community/template`;
|
|
114
|
+
case found.pnpm: return `pnpm install -D @react-native-community/template`;
|
|
115
|
+
case found.yarn: return `yarn add -D @react-native-community/template`;
|
|
116
|
+
default: return `npm install -D @react-native-community/template`;
|
|
117
|
+
}
|
|
118
|
+
})();
|
|
119
|
+
throw new Error(`"@react-native-community/template" is not found in package.json, please install "@react-native-community/template" as dev dependency:
|
|
88
120
|
\`${installCommand}\``);
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
121
|
+
}
|
|
122
|
+
} catch (error) {
|
|
123
|
+
throw new Error("package.json checks are failing:\n" + error);
|
|
124
|
+
}
|
|
125
|
+
var appConfig;
|
|
126
|
+
try {
|
|
127
|
+
var appConfigPath = path.resolve("app.json");
|
|
128
|
+
var appConfigContents = await FSExtra.readFile(appConfigPath, "utf8");
|
|
129
|
+
appConfig = JSON.parse(appConfigContents);
|
|
130
|
+
} catch (error) {
|
|
131
|
+
throw new Error("app.json checks are failing:\n" + error);
|
|
132
|
+
}
|
|
133
|
+
if (platform == "ios" || !platform) {
|
|
134
|
+
if (!doesIOSExist) {
|
|
135
|
+
await generateForPlatform(root, "ios", appConfig);
|
|
136
|
+
} else {
|
|
137
|
+
console.error("ios/ folder already exists");
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
if (platform == "android" || !platform) {
|
|
141
|
+
if (!doesAndroidExist) {
|
|
142
|
+
await generateForPlatform(root, "android", appConfig);
|
|
143
|
+
} else {
|
|
144
|
+
console.error("android/ folder already exists");
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
if (!platform || platform === "ios") {
|
|
148
|
+
console.info(`Run cd ios && pod install`);
|
|
149
|
+
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.");
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
if (!platform || platform === "android") {
|
|
153
|
+
console.info(`
|
|
122
154
|
Android:
|
|
123
155
|
|
|
124
156
|
\`cd android\` and run \`./gradlew generateCodegenArtifactsFromSchema\`, then \`./gradlew assembleRelease\` or \`./gradlew assembleDebug\` to build the Android project.
|
|
@@ -127,37 +159,37 @@ Android:
|
|
|
127
159
|
\`android/app/build/outputs/apk/debug/app-debug.apk\`.
|
|
128
160
|
|
|
129
161
|
`);
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
162
|
+
}
|
|
163
|
+
try {
|
|
164
|
+
resolvePath("@react-native-community/cli", root);
|
|
165
|
+
} catch (e) {
|
|
166
|
+
if (isMissingCliDependency(e)) {
|
|
167
|
+
warnMissingCliDependency();
|
|
168
|
+
} else {
|
|
169
|
+
throw e;
|
|
170
|
+
}
|
|
171
|
+
}
|
|
140
172
|
};
|
|
141
173
|
function validateSwift6Workaround(root) {
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
174
|
+
var podfilePath = path.join(root, "ios", "Podfile");
|
|
175
|
+
if (!FSExtra.existsSync(podfilePath)) return;
|
|
176
|
+
var propsPath = path.join(root, "ios", "Podfile.properties.json");
|
|
177
|
+
if (FSExtra.existsSync(propsPath)) {
|
|
178
|
+
try {
|
|
179
|
+
var props = JSON.parse(FSExtra.readFileSync(propsPath, "utf8"));
|
|
180
|
+
if (props["one.disableSwift6Workaround"] === "true") return;
|
|
181
|
+
} catch (unused) {}
|
|
182
|
+
}
|
|
183
|
+
try {
|
|
184
|
+
var _emcVersion_match;
|
|
185
|
+
var emcPkgPath = resolvePath("expo-modules-core/package.json", root);
|
|
186
|
+
var emcVersion = JSON.parse(FSExtra.readFileSync(emcPkgPath, "utf8")).version;
|
|
187
|
+
var major = Number.parseInt(((_emcVersion_match = emcVersion.match(/^(\d+)/)) === null || _emcVersion_match === void 0 ? void 0 : _emcVersion_match[1]) || "0", 10);
|
|
188
|
+
if (major >= 56) return;
|
|
189
|
+
} catch (unused) {}
|
|
190
|
+
var podfile = FSExtra.readFileSync(podfilePath, "utf8");
|
|
191
|
+
if (!podfile.includes("SWIFT_STRICT_CONCURRENCY")) {
|
|
192
|
+
console.warn(colors.yellow(`
|
|
161
193
|
\u26A0\uFE0F Your ios/Podfile is missing the Swift 6 workaround for expo-modules-core.
|
|
162
194
|
Without this, your iOS build will fail with Swift concurrency errors.
|
|
163
195
|
|
|
@@ -168,48 +200,53 @@ function validateSwift6Workaround(root) {
|
|
|
168
200
|
|
|
169
201
|
See: expo/expo#43199
|
|
170
202
|
`));
|
|
171
|
-
|
|
203
|
+
}
|
|
172
204
|
}
|
|
173
205
|
function isMissingCliDependency(error) {
|
|
174
|
-
|
|
206
|
+
return error.code === "MODULE_NOT_FOUND" && /@react-native-community\/cli/.test(error.message);
|
|
175
207
|
}
|
|
176
208
|
function warnMissingCliDependency() {
|
|
177
|
-
|
|
178
|
-
${colors.red("
|
|
209
|
+
console.warn(`
|
|
210
|
+
${colors.red("⚠")}\uFE0F To build the app, ${colors.dim("react-native")} depends on ${colors.dim("@react-native-community/cli")} for cli commands. Please update your ${colors.dim("package.json")} to include:
|
|
179
211
|
${colors.white(colors.bold(`
|
|
180
212
|
"devDependencies": {
|
|
181
213
|
"@react-native-community/cli": "latest",
|
|
182
214
|
}`))}`);
|
|
183
215
|
}
|
|
184
216
|
async function replaceInUTF8File(filePath, findThis, replaceWith) {
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
217
|
+
var fileContent = await FSExtra.readFile(filePath, "utf8");
|
|
218
|
+
var replacedFileContent = fileContent.replace(findThis, replaceWith);
|
|
219
|
+
if (fileContent !== replacedFileContent) {
|
|
220
|
+
await FSExtra.writeFile(filePath, replacedFileContent, "utf8");
|
|
221
|
+
}
|
|
190
222
|
}
|
|
191
223
|
function ensureRolldownPodfileProperties(root) {
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
224
|
+
var propsPath = path.join(root, "ios", "Podfile.properties.json");
|
|
225
|
+
if (!FSExtra.existsSync(path.join(root, "ios"))) return;
|
|
226
|
+
var props = {};
|
|
227
|
+
if (FSExtra.existsSync(propsPath)) {
|
|
228
|
+
try {
|
|
229
|
+
props = JSON.parse(FSExtra.readFileSync(propsPath, "utf8"));
|
|
230
|
+
} catch (unused) {}
|
|
231
|
+
}
|
|
232
|
+
var changed = false;
|
|
233
|
+
if (props["expo.useHermesV1"] !== "true") {
|
|
234
|
+
props["expo.useHermesV1"] = "true";
|
|
235
|
+
changed = true;
|
|
236
|
+
}
|
|
237
|
+
if (props["ios.buildReactNativeFromSource"] !== "true") {
|
|
238
|
+
props["ios.buildReactNativeFromSource"] = "true";
|
|
239
|
+
changed = true;
|
|
240
|
+
}
|
|
241
|
+
if (props["EXPO_USE_PRECOMPILED_MODULES"] !== "false") {
|
|
242
|
+
props["EXPO_USE_PRECOMPILED_MODULES"] = "false";
|
|
243
|
+
changed = true;
|
|
244
|
+
}
|
|
245
|
+
if (changed) {
|
|
246
|
+
FSExtra.writeFileSync(propsPath, JSON.stringify(props, null, 2) + "\n", "utf8");
|
|
247
|
+
console.info(colors.cyan(`[vxrn] Updated ios/Podfile.properties.json for rolldown mode (hermes v1 + React Native and Expo modules from source)`));
|
|
248
|
+
}
|
|
213
249
|
}
|
|
250
|
+
|
|
214
251
|
export { prebuild, replaceInUTF8File };
|
|
215
252
|
//# sourceMappingURL=prebuild.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["resolvePath","detectPackageManager","FSExtra","path","pathToFileURL","colors","fillOptions","applyBuiltInPatches","generateForPlatform","prebuild","param","root","platform","noInstall","expo","options","doesIOSExist","existsSync","resolve","doesAndroidExist","importPath","expoPrebuild","href","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":"AAAA,SAASA,WAAA,QAAmB;AAC5B,SAASC,oBAAA,QAAqD;AAC9D,OAAOC,OAAA,MAAa;AACpB,OAAOC,IAAA,MAAU;AACjB,SAASC,aAAA,QAAqB;AAC9B,OAAOC,MAAA,MAAY;AACnB,SAASC,WAAA,QAAmB;AAC5B,SAASC,mBAAA,QAA2B;AACpC,SAASC,mBAAA,QAA2B;AAE7B,IAAAC,QAAM,kBAAAA,CAAkBC,KAAA;EAC7B;IAAAC,IAAA;IAAAC,QAAA;IAAA,cAAAC,SAAA;IAAAC,IAAA;EAAA,IAAAJ,KAAA;EACA,IAAAK,OAAA,SAAAT,WAAA;IACAK;EACA;EACF,MAKMJ,mBAAA,CAAAQ,OAAA;EACJ,IAAAC,YAAgB,GAAAd,OAAM,CAAAe,UAAc,CAAAd,IAAM,CAAAe,OAAA;EAE1C,IAAAC,gBAAM,GAAAjB,OAAoB,CAAAe,UAAO,CAAAd,IAAA,CAAAe,OAAA;EAEjC,IAAAJ,IAAM;IACN,IAAM;MAEF,IAAAM,UAAM,GAAApB,WAAA,0CAAAW,IAAA;MACR,IAAIU,YAAA,iBAAAjB,aAAA,CAAAgB,UAAA,EAAAE,IAAA,GAAAC,OAAA,CAAAF,YAAA;MAEF,MAAMA,YAAA,CAAa,CACnB,IAAAT,QAAM,IAEN,YAAM,EACJA,QAAI,CACJ,GAAI,KACJ,IAAAC,SAAA,IACA,eACD,QACD,0BAAI,EACF,yBAAwB,CACxB;MAEA;QACA,IAAAW,eAAA,GAAsBrB,IAAA,CAAAsB,IAAA,CAAAd,IAAA,gBAAoB;QAAA,IACxCe,mBAAA,SAAAxB,OAAA,CAAAyB,QAAA,CAAAH,eAAA;QAAAE,mBACA,GAAAA,mBAAA,CAAAE,OAAA;QACFF,mBAAA,GAAAA,mBAAA,CAAAE,OAAA;QAEA,MAAM1B,OAAA,CAAQ2B,SAAA,CAAUL,eAAA,EAAiBE,mBAAA,EAAqB,MAAM;MACtE,SAASI,KAAA,EAAO;QACdC,OAAA,CAAQD,KAAA,CAAM,+BAA+BA,KAAK;MACpD;MAEA,IAAI;QACF5B,OAAA,CAAQ8B,UAAA,CAAW7B,IAAA,CAAKsB,IAAA,CAAKd,IAAA,EAAM,OAAO,kBAAkB,CAAC;MAC/D,SAASsB,CAAA,EAAG,CAEZ;IACF,SAASA,CAAA,EAAG;MACV,MAAM,IAAIC,KAAA,uCAAAD,CAAA;AAAA,uCACR;IAAuC;IAAA,IACzC,CAAArB,QAAA,IAAAA,QAAA;MACF,IAAAuB,uCAAA,EAAAC,gCAAA;MAIA,IAAKC,OAAA,GAAAC,OAAY,CAAAC,GAAA,CAAAC,cAAoB,IAAAC,UAAA,8BAAAL,gCAAA,GAAAK,UAAA,sCAAAL,gCAAA,wBAAAD,uCAAA,GAAAC,gCAAA,CAAAM,MAAA,cAAAP,uCAAA,uBAAAA,uCAAA,CAAAQ,OAAA;MACnC,KAAAN,OAAM;QAKNO,+BAAc,CAAAjC,IAAA;MACZ;IAAoC;IAExC,KAAAC,QAAA,IAAAA,QAAA;MAIAiC,wBAAiB,CAAAlC,IAAa;IAC5B;IACF,KAAAC,QAAA,IAAAA,QAAA;MAEAmB,OAAK,CAAAe,IAAA;AACH;AAAQ;AACN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;IAAA;EAAA;IAAA,IAUF;MACF,IAAAC,gBAAA,GAAA5C,IAAA,CAAAsB,IAAA,CAAAd,IAAA;MACF,IAAOqC,oBAAA,SAAA9C,OAAA,CAAAyB,QAAA,CAAAoB,gBAAA;MACL,IAAI;QAAAE;MAAA,IAAAC,IAAA,CAAAC,KAAA,CAAAH,oBAAA;MACF,KAAAC,eAAM,mCAAgD;QACtD,IAAIG,cAAA,SAAsB,kBAAc;UACpC,IAAEC,KAAA,SAAgBpD,oBAAe;UACjC,QAAC;YACH,KAAMoD,KAAA,CAAAC,GAAA;cAEF,OAAM,6CAAmC;YACzC,KAAAD,KAAQ,CAAAE,IAAM;cACZ,OAAK,kDAAM;YACT,KAAAF,KAAO,CAAAG,IAAA;cACT,OAAK,8CAAM;YACT;cACF,OAAK,iDAAM;UACT;QAAO,GACT;QACE,UAAAtB,KAAO;AAAA,IAAAkB,cACX;MAAA;IAEJ,SAAAtB,KAAU;MAAA,MACR,IAAAI,KAAA,wCAAAJ,KAAA;IACO;IAAc,IACvB2B,SAAA;IAAA,IACF;MACF,IAAAC,aAAgB,GAAAvD,IAAA,CAAAe,OAAA;MACd,IAAAyC,iBAAgB,SAAAzD,OAAA,CAAAyB,QAAA,CAAA+B,aAA4C;MAC9DD,SAAA,GAAAP,IAAA,CAAAC,KAAA,CAAAQ,iBAAA;IAGA,SAAI7B,KAAA;MACJ,MAAI,IAAAI,KAAA,oCAAAJ,KAAA;IACF;IACA,IAAAlB,QAAM,cAAAA,QAA0B;MAChC,KAAAI,YAAiB;QACnB,MAASR,mBAAO,CAAAG,IAAA,SAAA8C,SAAA;MACd,OAAM;QACR1B,OAAA,CAAAD,KAAA;MACA;IACE;IACE,IAAAlB,QAAM,kBAAoBA,QAAM;MAClC,KAAAO,gBAAO;QACL,MAAAX,mBAAc,CAAAG,IAAA,aAA4B8C,SAAA;MAC5C;QACF1B,OAAA,CAAAD,KAAA;MACA;IACE;IACE,KAAAlB,QAAM,IAAAA,QAAA,KAAoB,OAAM;MAClCmB,OAAO,CAAAe,IAAA;MACLf,OAAA,CAAAe,IAAQ,wJAAsC;IAAA;EAChD;EAEF,KAAAlC,QAAK,IAAAA,QAAY,cAAoB;IACnCmB,OAAA,CAAAe,IAAQ;AACR;AAAQ;AACN;AACF;AACF;AAEF;AACE;AAAQ;EACN;EAAA;IAAA9C,WAAA,gCAAAW,IAAA;EAAA,SAAAsB,CAAA;IAAA,IAAA2B,sBAAA,CAAA3B,CAAA;MAAA4B,wBAAA;IAAA;MAAA,MAAA5B,CAAA;IASF;EACF;AAgDA;AACE,SAAAY,wBAAYA,CAAAlC,IAAA;EACd,IAAAmD,WAAY,GAAA3D,IAAA,CAAAsB,IAAA,CAAAd,IAAA;EACV,KAAAT,OAAI,CAAAe,UAAA,CAAA6C,WAA2B;EAC7B,IAAAC,SAAA,GAAA5D,IAAA,CAAAsB,IAAA,CAAAd,IAAyB;EAAA,IAC3BT,OAAO,CAAAe,UAAA,CAAA8C,SAAA;IACL;MACF,IAAAC,KAAA,GAAAd,IAAA,CAAAC,KAAA,CAAAjD,OAAA,CAAA+D,YAAA,CAAAF,SAAA;MACF,IAAAC,KAAA;IACF,SAAAE,MAAA,GAEA;EACE;EACA,IAAI;IAGJ,IAAMC,iBAAiB;IACvB,IAAIC,UAAQ,GAAApE,WAAW,iCAAY,EAAAW,IAAA;IACjC,IAAI0D,UAAA,GAAAnB,IAAA,CAAAC,KAAA,CAAAjD,OAAA,CAAA+D,YAAA,CAAAG,UAAA,WAAAE,OAAA;IACF,IAAAC,KAAM,GAAAC,MAAQ,CAAAC,QAAW,GAAAN,iBAAQ,GAAaE,UAAW,CAAAK,KAAO,wBAAAP,iBAAA,uBAAAA,iBAAA;IAChE,IAAAI,KAAI,IAAM;EAA2C,EACvD,OAAAL,MAAQ;EACV,IAAAS,OAAA,GAAAzE,OAAA,CAAA+D,YAAA,CAAAH,WAAA;EAGA,IAAI,CAAAa,OAAA,CAAAC,QAAA;IACF7C,OAAM,CAAA8C,IAAA,CAAAxE,MAAa,CAAAyE,MAAA;AACnB;AACA;AACA;AAAiB;AACX;AAER;AACA;AACE;AAAQ;AACQ;EAAA;AAAA;AAAA,SAAAlB,uBAAA9B,KAAA;EAAA,OAAAA,KAAA,CAAAiD,IAAA,0DAAAC,IAAA,CAAAlD,KAAA,CAAAmD,OAAA;AAAA;AAAA,SAAApB,yBAAA;EAAA9B,OAAA,CAAA8C,IAAA;AAAA,EAAAxE,MAAA,CAAA6E,GAAA,sCAAA7E,MAAA,CAAA8E,GAAA,+BAAA9E,MAAA,CAAA8E,GAAA,wEAAA9E,MAAA,CAAA8E,GAAA;AAAA,EAUnB9E,MAAA,CAAA+E,KAAA,CAAA/E,MAAA,CAAAgF,IAAA;AAAA;AACG;AAEJ;AAEA;AACE,eACQC,iBAASA,CAAAC,QAAA,EAAAC,QACf,EAAAC,WAAA;EAEJ,IAAAC,WAAA,SAAAxF,OAAA,CAAAyB,QAAA,CAAA4D,QAAA;EAEA,IAAAI,mBAAS,GAAAD,WAA2B,CAAA9D,OAAA,CAAA4D,QAAA,EAAAC,WAAA;EAClC,IAAAC,WAAa,KAAAC,mBAAA;IACb,MAAOzF,OAAI,CAAA2B,SAAI,CAAA0D,QAAA,EAAAI,mBAA8B,QAAI;EACjD;AAAO;AACK,SAAA/C,gCAAAjC,IAAA;EAAA,IAAAoD,SAAA,GAAA5D,IAAA,CAAAsB,IAAA,CAAAd,IAAA;EAAA,IAGV,CAAAT,OAAA,CAAAe,UAAA,CAAAd,IAAA,CAAAsB,IAAA,CAAAd,IAAA;EACJ,IAAGqD,KAAA;EACH,IAAA9D,OAAA,CAAAe,UAAA,CAAA8C,SAAA;IAEA;MAKEC,KAAM,GAAAd,IAAA,CAAAC,KAAc,CAAAjD,OAAM,CAAA+D,YAAiB,CAAAF,SAAU,QAAM;IAC3D,SAAMG,MAAA,GACN;EACE;EACF,IAAA0B,OAAA;EACF,IAAA5B,KAAA;IAkBAA,KAAS;IACP4B,OAAM;EACN;EAEA,IAAI5B,KAAA,iCAAiC;IACrCA,KAAI,iCAA+B;IACjC4B,OAAI;EACF;EAA0D,IAC5DA,OAAQ;IAAC1F,OAAA,CAAA2F,aAAA,CAAA9B,SAAA,EAAAb,IAAA,CAAA4C,SAAA,CAAA9B,KAAA;IACXjC,OAAA,CAAAe,IAAA,CAAAzC,MAAA,CAAA0F,IAAA;EAEA;AAEA;AACE,SACAtF,QAAA,EACF6E,iBAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"prebuild.native.js","names":[],"sources":["exports/prebuild.native.js"],"sourcesContent":["import { resolvePath } from \"@vxrn/resolve\";\nimport { detectPackageManager } from \"@vxrn/utils\";\nimport FSExtra from \"fs-extra\";\nimport path from \"path\";\nimport { pathToFileURL } from \"url\";\nimport colors from \"picocolors\";\nimport { fillOptions } from \"../config/getOptionsFilled\";\nimport { applyBuiltInPatches } from \"../utils/patches\";\nimport { generateForPlatform } from \"./prebuildWithoutExpo\";\nvar prebuild = async function(param) {\n var { root, platform, \"no-install\": noInstall = false, expo = true } = param;\n var _globalThis___vxrnPluginConfig___native, _globalThis___vxrnPluginConfig__;\n var options = await fillOptions({\n root\n });\n await applyBuiltInPatches(options);\n var doesIOSExist = FSExtra.existsSync(path.resolve(\"ios\"));\n var doesAndroidExist = FSExtra.existsSync(path.resolve(\"android\"));\n 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\";\n var useRolldownIOS = (!platform || platform === \"ios\") && !isMetro;\n if (expo) {\n try {\n var importPath = resolvePath(\"@expo/cli/build/src/prebuild/index.js\", root);\n var expoPrebuild = (await import(pathToFileURL(importPath).href)).default.expoPrebuild;\n var previousNativeBuildEnvironment = useRolldownIOS ? {\n EXPO_USE_PRECOMPILED_MODULES: process.env.EXPO_USE_PRECOMPILED_MODULES,\n RCT_HERMES_V1_ENABLED: process.env.RCT_HERMES_V1_ENABLED,\n RCT_USE_PREBUILT_RNCORE: process.env.RCT_USE_PREBUILT_RNCORE,\n RCT_USE_RN_DEP: process.env.RCT_USE_RN_DEP\n } : null;\n if (useRolldownIOS) {\n process.env.EXPO_USE_PRECOMPILED_MODULES = \"0\";\n process.env.RCT_HERMES_V1_ENABLED = \"1\";\n process.env.RCT_USE_PREBUILT_RNCORE = \"0\";\n process.env.RCT_USE_RN_DEP = \"0\";\n }\n try {\n await expoPrebuild([\n ...platform ? [\n \"--platform\",\n platform\n ] : [],\n ...noInstall ? [\n \"--no-install\"\n ] : [],\n \"--skip-dependency-update\",\n \"react,react-native,expo\"\n ]);\n } finally {\n if (previousNativeBuildEnvironment) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = Object.entries(previousNativeBuildEnvironment)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [name, value] = _step.value;\n if (value === void 0) delete process.env[name];\n else process.env[name] = value;\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n }\n try {\n var packageJsonPath = path.join(root, \"package.json\");\n var packageJsonContents = await FSExtra.readFile(packageJsonPath, \"utf8\");\n packageJsonContents = packageJsonContents.replace(/expo run:ios/g, \"one run:ios\");\n packageJsonContents = packageJsonContents.replace(/expo run:android/g, \"one run:android\");\n await FSExtra.writeFile(packageJsonPath, packageJsonContents, \"utf8\");\n } catch (error) {\n console.error(\"Error updating package.json\", error);\n }\n try {\n FSExtra.removeSync(path.join(root, \"ios\", \".xcode.env.local\"));\n } catch (e) {\n }\n } catch (e) {\n throw new Error(`Failed to prebuild native project: ${e}\nIs \"expo\" listed in your dependencies?`);\n }\n if (!platform || platform === \"ios\") {\n if (!isMetro) {\n ensureRolldownPodfileProperties(root);\n }\n }\n if (!platform || platform === \"ios\") {\n validateSwift6Workaround(root);\n }\n if (!platform || platform === \"ios\") {\n console.info(`\niOS:\n\n Run \\`open ios/*.xcworkspace\\` in your terminal to open the prebuilt iOS project.\n Then you can either run it via Xcode or archive it for distribution.\n\n See https://onestack.dev/docs/guides-ios-native for more information.\n\n---\n`);\n }\n } else {\n try {\n var packageJsonPath1 = path.join(root, \"package.json\");\n var packageJsonContents1 = await FSExtra.readFile(packageJsonPath1, \"utf8\");\n var { devDependencies } = JSON.parse(packageJsonContents1);\n if (!devDependencies[\"@react-native-community/template\"]) {\n var installCommand = await (async function() {\n var found = await detectPackageManager();\n switch (true) {\n case found.bun:\n return `bun add -D @react-native-community/template`;\n case found.pnpm:\n return `pnpm install -D @react-native-community/template`;\n case found.yarn:\n return `yarn add -D @react-native-community/template`;\n default:\n return `npm install -D @react-native-community/template`;\n }\n })();\n throw new Error(`\"@react-native-community/template\" is not found in package.json, please install \"@react-native-community/template\" as dev dependency:\n\\`${installCommand}\\``);\n }\n } catch (error) {\n throw new Error(\"package.json checks are failing:\\n\" + error);\n }\n var appConfig;\n try {\n var appConfigPath = path.resolve(\"app.json\");\n var appConfigContents = await FSExtra.readFile(appConfigPath, \"utf8\");\n appConfig = JSON.parse(appConfigContents);\n } catch (error) {\n throw new Error(\"app.json checks are failing:\\n\" + error);\n }\n if (platform == \"ios\" || !platform) {\n if (!doesIOSExist) {\n await generateForPlatform(root, \"ios\", appConfig);\n } else {\n console.error(\"ios/ folder already exists\");\n }\n }\n if (platform == \"android\" || !platform) {\n if (!doesAndroidExist) {\n await generateForPlatform(root, \"android\", appConfig);\n } else {\n console.error(\"android/ folder already exists\");\n }\n }\n if (!platform || platform === \"ios\") {\n console.info(`Run cd ios && pod install`);\n 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.\");\n }\n }\n if (!platform || platform === \"android\") {\n 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`);\n }\n try {\n resolvePath(\"@react-native-community/cli\", root);\n } catch (e) {\n if (isMissingCliDependency(e)) {\n warnMissingCliDependency();\n } else {\n throw e;\n }\n }\n};\nfunction validateSwift6Workaround(root) {\n var podfilePath = path.join(root, \"ios\", \"Podfile\");\n if (!FSExtra.existsSync(podfilePath)) return;\n var propsPath = path.join(root, \"ios\", \"Podfile.properties.json\");\n if (FSExtra.existsSync(propsPath)) {\n try {\n var props = JSON.parse(FSExtra.readFileSync(propsPath, \"utf8\"));\n if (props[\"one.disableSwift6Workaround\"] === \"true\") return;\n } catch (unused) {\n }\n }\n try {\n var _emcVersion_match;\n var emcPkgPath = resolvePath(\"expo-modules-core/package.json\", root);\n var emcVersion = JSON.parse(FSExtra.readFileSync(emcPkgPath, \"utf8\")).version;\n var major = Number.parseInt(((_emcVersion_match = emcVersion.match(/^(\\d+)/)) === null || _emcVersion_match === void 0 ? void 0 : _emcVersion_match[1]) || \"0\", 10);\n if (major >= 56) return;\n } catch (unused) {\n }\n var podfile = FSExtra.readFileSync(podfilePath, \"utf8\");\n if (!podfile.includes(\"SWIFT_STRICT_CONCURRENCY\")) {\n console.warn(colors.yellow(`\n\\u26A0\\uFE0F Your ios/Podfile is missing the Swift 6 workaround for expo-modules-core.\n Without this, your iOS build will fail with Swift concurrency errors.\n\n Fix: add \"vxrn/expo-plugin\" to your app.json plugins and re-run prebuild.\n\n To disable this check: set \"one.disableSwift6Workaround\": \"true\"\n in ios/Podfile.properties.json.\n\n See: expo/expo#43199\n`));\n }\n}\nfunction isMissingCliDependency(error) {\n return error.code === \"MODULE_NOT_FOUND\" && /@react-native-community\\/cli/.test(error.message);\n}\nfunction warnMissingCliDependency() {\n console.warn(`\n${colors.red(\"\\u26A0\")}\\uFE0F To build the app, ${colors.dim(\"react-native\")} depends on ${colors.dim(\"@react-native-community/cli\")} for cli commands. Please update your ${colors.dim(\"package.json\")} to include:\n${colors.white(colors.bold(`\n \"devDependencies\": {\n \"@react-native-community/cli\": \"latest\",\n }`))}`);\n}\nasync function replaceInUTF8File(filePath, findThis, replaceWith) {\n var fileContent = await FSExtra.readFile(filePath, \"utf8\");\n var replacedFileContent = fileContent.replace(findThis, replaceWith);\n if (fileContent !== replacedFileContent) {\n await FSExtra.writeFile(filePath, replacedFileContent, \"utf8\");\n }\n}\nfunction ensureRolldownPodfileProperties(root) {\n var propsPath = path.join(root, \"ios\", \"Podfile.properties.json\");\n if (!FSExtra.existsSync(path.join(root, \"ios\"))) return;\n var props = {};\n if (FSExtra.existsSync(propsPath)) {\n try {\n props = JSON.parse(FSExtra.readFileSync(propsPath, \"utf8\"));\n } catch (unused) {\n }\n }\n var changed = false;\n if (props[\"expo.useHermesV1\"] !== \"true\") {\n props[\"expo.useHermesV1\"] = \"true\";\n changed = true;\n }\n if (props[\"ios.buildReactNativeFromSource\"] !== \"true\") {\n props[\"ios.buildReactNativeFromSource\"] = \"true\";\n changed = true;\n }\n if (props[\"EXPO_USE_PRECOMPILED_MODULES\"] !== \"false\") {\n props[\"EXPO_USE_PRECOMPILED_MODULES\"] = \"false\";\n changed = true;\n }\n if (changed) {\n FSExtra.writeFileSync(propsPath, JSON.stringify(props, null, 2) + \"\\n\", \"utf8\");\n console.info(colors.cyan(`[vxrn] Updated ios/Podfile.properties.json for rolldown mode (hermes v1 + React Native and Expo modules from source)`));\n }\n}\nexport {\n prebuild,\n replaceInUTF8File\n};\n//# sourceMappingURL=prebuild.js.map\n"],"mappings":"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"}
|
|
@@ -2,52 +2,54 @@ import module from "node:module";
|
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
import { pathToFileURL } from "node:url";
|
|
4
4
|
import FSExtra from "fs-extra";
|
|
5
|
+
|
|
5
6
|
const generateForPlatform = async (root, platform, appConfig) => {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
7
|
+
const dest = path.resolve(platform);
|
|
8
|
+
const appName = appConfig.name;
|
|
9
|
+
const displayName = appConfig.displayName;
|
|
10
|
+
const require2 = module.createRequire(root);
|
|
11
|
+
const importPath = require2.resolve("@react-native-community/cli/build/tools/walk.js", { paths: [root] });
|
|
12
|
+
const src = path.join(path.dirname(require2.resolve("@react-native-community/template/template/package.json", { paths: [root] })), platform);
|
|
13
|
+
const walk = (await import(pathToFileURL(importPath).href)).default.default;
|
|
14
|
+
walk(src).forEach((absoluteSrc) => {
|
|
15
|
+
const relativeFilePath = transformPath(path.relative(src, absoluteSrc)).replace(/HelloWorld/g, appName).replace(/helloworld/g, appName.toLowerCase());
|
|
16
|
+
const srcPath = absoluteSrc;
|
|
17
|
+
const destPath = path.resolve(dest, relativeFilePath);
|
|
18
|
+
console.info("copying", "\"" + srcPath + "\"", "to", "\"" + destPath + "\"");
|
|
19
|
+
const replacements = {
|
|
20
|
+
"Hello App Display Name": displayName || appName,
|
|
21
|
+
HelloWorld: appName,
|
|
22
|
+
helloworld: appName
|
|
23
|
+
};
|
|
24
|
+
if (FSExtra.lstatSync(srcPath).isDirectory()) {
|
|
25
|
+
if (!FSExtra.existsSync(destPath)) {
|
|
26
|
+
FSExtra.mkdirSync(destPath);
|
|
27
|
+
}
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
const extension = path.extname(srcPath);
|
|
31
|
+
if ([
|
|
32
|
+
".png",
|
|
33
|
+
".jar",
|
|
34
|
+
".keystore"
|
|
35
|
+
].includes(extension)) {
|
|
36
|
+
FSExtra.copyFileSync(srcPath, destPath);
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
const srcPermissions = FSExtra.statSync(srcPath).mode;
|
|
40
|
+
let content = FSExtra.readFileSync(srcPath, "utf8");
|
|
41
|
+
Object.entries(replacements).forEach(([regex, value]) => {
|
|
42
|
+
content = content.replace(new RegExp(regex, "g"), value);
|
|
43
|
+
});
|
|
44
|
+
FSExtra.writeFileSync(destPath, content, {
|
|
45
|
+
encoding: "utf8",
|
|
46
|
+
mode: srcPermissions
|
|
47
|
+
});
|
|
48
|
+
});
|
|
48
49
|
};
|
|
49
|
-
const transformPath = filePath => {
|
|
50
|
-
|
|
50
|
+
const transformPath = (filePath) => {
|
|
51
|
+
return filePath.replace("_BUCK", "BUCK").replace("_gitignore", ".gitignore").replace("_gitattributes", ".gitattributes").replace("_babelrc", ".babelrc").replace("_editorconfig", ".editorconfig").replace("_eslintrc.js", ".eslintrc.js").replace("_flowconfig", ".flowconfig").replace("_buckconfig", ".buckconfig").replace("_prettierrc.js", ".prettierrc.js").replace("_bundle", ".bundle").replace("_ruby-version", ".ruby-version").replace("_node-version", ".node-version").replace("_watchmanconfig", ".watchmanconfig").replace("_xcode.env", ".xcode.env");
|
|
51
52
|
};
|
|
53
|
+
|
|
52
54
|
export { generateForPlatform };
|
|
53
55
|
//# sourceMappingURL=prebuildWithoutExpo.mjs.map
|