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
|
@@ -3,187 +3,171 @@ import module from "node:module";
|
|
|
3
3
|
import { TLSSocket } from "node:tls";
|
|
4
4
|
import { pathToFileURL } from "node:url";
|
|
5
5
|
import colors from "picocolors";
|
|
6
|
+
|
|
6
7
|
function expoManifestRequestHandlerPlugin(options) {
|
|
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
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
throw e;
|
|
110
|
-
}
|
|
111
|
-
throw new Error(`[vxrn:expo-manifest-request-handler] Failed to parse the Expo manifest response from expo: ${e}`);
|
|
112
|
-
}
|
|
113
|
-
};
|
|
114
|
-
manifestHandlerMiddleware.handleRequestAsync(req, res, next);
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
};
|
|
8
|
+
return {
|
|
9
|
+
name: "vxrn:expo-manifest-request-handler",
|
|
10
|
+
configureServer(server) {
|
|
11
|
+
const projectRoot = server.config.root;
|
|
12
|
+
const port = server.config.server.port;
|
|
13
|
+
const { logger } = server.config;
|
|
14
|
+
const defaultLogOptions = { timestamp: true };
|
|
15
|
+
server.middlewares.use(async (req, res, next) => {
|
|
16
|
+
if (!req.headers["expo-platform"]) {
|
|
17
|
+
return next();
|
|
18
|
+
}
|
|
19
|
+
const protocol = req.socket instanceof TLSSocket && req.socket.encrypted ? "https" : "http";
|
|
20
|
+
const host = `${req.headers["x-forwarded-host"] || req.headers.host || "127.0.0.1"}`;
|
|
21
|
+
let ExpoGoManifestHandlerMiddleware;
|
|
22
|
+
let expoGoManifestHandlerMiddlewareImportError;
|
|
23
|
+
try {
|
|
24
|
+
const require2 = module.createRequire(projectRoot);
|
|
25
|
+
const importPath = require2.resolve("@expo/cli/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js", { paths: [projectRoot] });
|
|
26
|
+
ExpoGoManifestHandlerMiddleware = (await import(pathToFileURL(importPath).href)).default.ExpoGoManifestHandlerMiddleware;
|
|
27
|
+
} catch (e) {
|
|
28
|
+
expoGoManifestHandlerMiddlewareImportError = e;
|
|
29
|
+
}
|
|
30
|
+
if (!ExpoGoManifestHandlerMiddleware) {
|
|
31
|
+
if (expoGoManifestHandlerMiddlewareImportError instanceof Error && expoGoManifestHandlerMiddlewareImportError.code === "MODULE_NOT_FOUND") {
|
|
32
|
+
logger.warn(colors.yellow(`Failed to locate Expo SDK in your project: ${expoGoManifestHandlerMiddlewareImportError}`), defaultLogOptions);
|
|
33
|
+
} else {
|
|
34
|
+
logger.warn(colors.yellow(`Failed to import Expo SDK from your project: ${expoGoManifestHandlerMiddlewareImportError}`), defaultLogOptions);
|
|
35
|
+
}
|
|
36
|
+
logger.warn("Ignoring the error and responding with preset manifest, this may not work with Expo Go or your development build.", defaultLogOptions);
|
|
37
|
+
logger.warn(colors.yellow(`Is this a Expo project, or are you using a supported version of Expo SDK? (${projectRoot})`), defaultLogOptions);
|
|
38
|
+
const json = getIndexJsonResponse({
|
|
39
|
+
projectRoot,
|
|
40
|
+
port
|
|
41
|
+
});
|
|
42
|
+
res.setHeader("content-type", "application/json");
|
|
43
|
+
res.write(JSON.stringify(json));
|
|
44
|
+
res.end();
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
const manifestHandlerMiddleware = new ExpoGoManifestHandlerMiddleware(projectRoot, { constructUrl: () => {
|
|
48
|
+
return `${protocol}://${host}`;
|
|
49
|
+
} });
|
|
50
|
+
const origGetBundleUrl = manifestHandlerMiddleware._getBundleUrl.bind(manifestHandlerMiddleware);
|
|
51
|
+
manifestHandlerMiddleware._getBundleUrl = (...args) => {
|
|
52
|
+
const origBundleUrl = origGetBundleUrl(...args);
|
|
53
|
+
let url = new URL(origBundleUrl);
|
|
54
|
+
if (host) url.host = host;
|
|
55
|
+
url.protocol = protocol;
|
|
56
|
+
url.pathname = "/index.bundle";
|
|
57
|
+
return url.toString();
|
|
58
|
+
};
|
|
59
|
+
manifestHandlerMiddleware._origGetManifestResponseAsync = manifestHandlerMiddleware._getManifestResponseAsync;
|
|
60
|
+
manifestHandlerMiddleware._getManifestResponseAsync = async (...args) => {
|
|
61
|
+
try {
|
|
62
|
+
const response = await manifestHandlerMiddleware._origGetManifestResponseAsync(...args);
|
|
63
|
+
const isWebResponse = response instanceof Response;
|
|
64
|
+
const bodyText = isWebResponse ? await response.text() : response.body;
|
|
65
|
+
const [, beforeBodyJson, bodyJson, afterBodyJson] = bodyText.match(/([^{]*)({.*})([^}]*)/) || [];
|
|
66
|
+
if (!bodyJson) {
|
|
67
|
+
throw new Error(`Unrecognized manifest response from expo: ${bodyText}`);
|
|
68
|
+
}
|
|
69
|
+
const parsedBody = JSON.parse(bodyJson);
|
|
70
|
+
if (!parsedBody.extra) {
|
|
71
|
+
parsedBody.extra = {};
|
|
72
|
+
}
|
|
73
|
+
if (!parsedBody.extra.expoClient) {
|
|
74
|
+
parsedBody.extra.expoClient = {};
|
|
75
|
+
}
|
|
76
|
+
if (typeof parsedBody.extra.expoClient.hostUri === "string") {
|
|
77
|
+
parsedBody.extra.expoClient.hostUri = parsedBody.extra.expoClient.hostUri.replace(/^https?:\/\//, "");
|
|
78
|
+
}
|
|
79
|
+
if (typeof parsedBody.extra.expoGo.debuggerHost === "string") {
|
|
80
|
+
parsedBody.extra.expoGo.debuggerHost = parsedBody.extra.expoGo.debuggerHost.replace(/^https?:\/\//, "");
|
|
81
|
+
}
|
|
82
|
+
parsedBody.extra.expoClient.iconUrl = "https://github.com/user-attachments/assets/6894506b-df81-417c-a4cd-9c125c7ba37f";
|
|
83
|
+
parsedBody.extra.expoClient.splash = {
|
|
84
|
+
image: "__vxrn_unstable_internal/icon.png",
|
|
85
|
+
resizeMode: "contain",
|
|
86
|
+
backgroundColor: "#000000",
|
|
87
|
+
imageUrl: "https://github.com/user-attachments/assets/e816c207-e7d2-4c2e-8aa5-0d4cbaa622bf"
|
|
88
|
+
};
|
|
89
|
+
const newBody = beforeBodyJson + JSON.stringify(parsedBody) + afterBodyJson;
|
|
90
|
+
if (isWebResponse) {
|
|
91
|
+
return new Response(newBody, {
|
|
92
|
+
status: response.status,
|
|
93
|
+
headers: response.headers
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
response.body = newBody;
|
|
97
|
+
return response;
|
|
98
|
+
} catch (e) {
|
|
99
|
+
if (e instanceof Error) {
|
|
100
|
+
e.message = `[vxrn:expo-manifest-request-handler] Failed to parse the Expo manifest response from expo: ${e.message}`;
|
|
101
|
+
throw e;
|
|
102
|
+
}
|
|
103
|
+
throw new Error(`[vxrn:expo-manifest-request-handler] Failed to parse the Expo manifest response from expo: ${e}`);
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
manifestHandlerMiddleware.handleRequestAsync(req, res, next);
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
};
|
|
118
110
|
}
|
|
119
|
-
function getIndexJsonResponse({
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
packagerOpts: {
|
|
179
|
-
dev: true
|
|
180
|
-
},
|
|
181
|
-
mainModuleName: "index",
|
|
182
|
-
__flipperHack: "React Native packager is running",
|
|
183
|
-
hostUri: `127.0.0.1:${port}`,
|
|
184
|
-
bundleUrl: `http://127.0.0.1:${port}/index.bundle?platform=ios&dev=true&hot=false&lazy=true`,
|
|
185
|
-
id: "@anonymous/myapp-473c4543-3c36-4786-9db1-c66a62ac9b78"
|
|
186
|
-
};
|
|
111
|
+
function getIndexJsonResponse({ port, projectRoot }) {
|
|
112
|
+
return {
|
|
113
|
+
name: "myapp",
|
|
114
|
+
slug: "myapp",
|
|
115
|
+
scheme: "myapp",
|
|
116
|
+
version: "1.0.0",
|
|
117
|
+
jsEngine: "jsc",
|
|
118
|
+
orientation: "portrait",
|
|
119
|
+
icon: "./assets/icon.png",
|
|
120
|
+
userInterfaceStyle: "light",
|
|
121
|
+
splash: {
|
|
122
|
+
image: "./assets/splash.png",
|
|
123
|
+
resizeMode: "contain",
|
|
124
|
+
backgroundColor: "#ffffff",
|
|
125
|
+
imageUrl: "http://127.0.0.1:8081/assets/./assets/splash.png"
|
|
126
|
+
},
|
|
127
|
+
updates: { fallbackToCacheTimeout: 0 },
|
|
128
|
+
assetBundlePatterns: ["**/*"],
|
|
129
|
+
ios: {
|
|
130
|
+
supportsTablet: true,
|
|
131
|
+
bundleIdentifier: "com.natew.myapp"
|
|
132
|
+
},
|
|
133
|
+
android: {
|
|
134
|
+
package: "com.tamagui.myapp",
|
|
135
|
+
adaptiveIcon: {
|
|
136
|
+
foregroundImage: "./assets/adaptive-icon.png",
|
|
137
|
+
backgroundColor: "#FFFFFF",
|
|
138
|
+
foregroundImageUrl: "http://127.0.0.1:8081/assets/./assets/adaptive-icon.png"
|
|
139
|
+
}
|
|
140
|
+
},
|
|
141
|
+
web: { favicon: "./assets/favicon.png" },
|
|
142
|
+
extra: { eas: { projectId: "061b4470-78c7-4d6a-b850-8167fb0a3434" } },
|
|
143
|
+
_internal: {
|
|
144
|
+
isDebug: false,
|
|
145
|
+
projectRoot,
|
|
146
|
+
dynamicConfigPath: null,
|
|
147
|
+
staticConfigPath: join(projectRoot, "app.json"),
|
|
148
|
+
packageJsonPath: join(projectRoot, "package.json")
|
|
149
|
+
},
|
|
150
|
+
sdkVersion: "50.0.0",
|
|
151
|
+
platforms: [
|
|
152
|
+
"ios",
|
|
153
|
+
"android",
|
|
154
|
+
"web"
|
|
155
|
+
],
|
|
156
|
+
iconUrl: `http://127.0.0.1:${port}/assets/./assets/icon.png`,
|
|
157
|
+
debuggerHost: `127.0.0.1:${port}`,
|
|
158
|
+
logUrl: `http://127.0.0.1:${port}/logs`,
|
|
159
|
+
developer: {
|
|
160
|
+
tool: "expo-cli",
|
|
161
|
+
projectRoot
|
|
162
|
+
},
|
|
163
|
+
packagerOpts: { dev: true },
|
|
164
|
+
mainModuleName: "index",
|
|
165
|
+
__flipperHack: "React Native packager is running",
|
|
166
|
+
hostUri: `127.0.0.1:${port}`,
|
|
167
|
+
bundleUrl: `http://127.0.0.1:${port}/index.bundle?platform=ios&dev=true&hot=false&lazy=true`,
|
|
168
|
+
id: "@anonymous/myapp-473c4543-3c36-4786-9db1-c66a62ac9b78"
|
|
169
|
+
};
|
|
187
170
|
}
|
|
171
|
+
|
|
188
172
|
export { expoManifestRequestHandlerPlugin };
|
|
189
173
|
//# sourceMappingURL=expoManifestRequestHandlerPlugin.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["join","module","TLSSocket","pathToFileURL","colors","expoManifestRequestHandlerPlugin","options","name","configureServer","server","projectRoot","config","root","port","logger","defaultLogOptions","timestamp","middlewares","use","req","res","next","headers","protocol","socket","encrypted","host","ExpoGoManifestHandlerMiddleware","expoGoManifestHandlerMiddlewareImportError","require","createRequire","importPath","resolve","paths","href","default","e","Error","code","warn","yellow","json","getIndexJsonResponse","setHeader","write","JSON","stringify","end","manifestHandlerMiddleware","constructUrl","origGetBundleUrl","_getBundleUrl","bind","args","origBundleUrl","url","URL","pathname","toString","_origGetManifestResponseAsync","_getManifestResponseAsync","response","isWebResponse","Response","bodyText","text","body","beforeBodyJson","bodyJson","afterBodyJson","match","parsedBody","parse","extra","expoClient","hostUri","replace","expoGo","debuggerHost","iconUrl","splash","image","resizeMode","backgroundColor","imageUrl","newBody","status","message","handleRequestAsync","slug","scheme","version","jsEngine","orientation","icon","userInterfaceStyle","updates","fallbackToCacheTimeout","assetBundlePatterns","ios","supportsTablet","bundleIdentifier","android","package","adaptiveIcon","foregroundImage","foregroundImageUrl","web","favicon","eas","projectId","_internal","isDebug","dynamicConfigPath","staticConfigPath","packageJsonPath","sdkVersion","platforms","logUrl","developer","tool","packagerOpts","dev","mainModuleName","__flipperHack","bundleUrl","id"],"sources":["../../src/plugins/expoManifestRequestHandlerPlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"expoManifestRequestHandlerPlugin.js","names":[],"sources":["plugins/expoManifestRequestHandlerPlugin.js"],"sourcesContent":["import { join } from \"node:path\";\nimport module from \"node:module\";\nimport { TLSSocket } from \"node:tls\";\nimport { pathToFileURL } from \"node:url\";\nimport colors from \"picocolors\";\nfunction expoManifestRequestHandlerPlugin(options) {\n return {\n name: \"vxrn:expo-manifest-request-handler\",\n configureServer(server) {\n const projectRoot = server.config.root;\n const port = server.config.server.port;\n const { logger } = server.config;\n const defaultLogOptions = { timestamp: true };\n server.middlewares.use(async (req, res, next) => {\n if (!req.headers[\"expo-platform\"]) {\n return next();\n }\n const protocol = req.socket instanceof TLSSocket && req.socket.encrypted ? \"https\" : \"http\";\n const host = `${req.headers[\"x-forwarded-host\"] || req.headers.host || \"127.0.0.1\"}`;\n let ExpoGoManifestHandlerMiddleware;\n let expoGoManifestHandlerMiddlewareImportError;\n try {\n const require2 = module.createRequire(projectRoot);\n const importPath = require2.resolve(\n \"@expo/cli/build/src/start/server/middleware/ExpoGoManifestHandlerMiddleware.js\",\n { paths: [projectRoot] }\n );\n ExpoGoManifestHandlerMiddleware = (await import(pathToFileURL(importPath).href)).default.ExpoGoManifestHandlerMiddleware;\n } catch (e) {\n expoGoManifestHandlerMiddlewareImportError = e;\n }\n if (!ExpoGoManifestHandlerMiddleware) {\n if (expoGoManifestHandlerMiddlewareImportError instanceof Error && expoGoManifestHandlerMiddlewareImportError.code === \"MODULE_NOT_FOUND\") {\n logger.warn(\n colors.yellow(\n `Failed to locate Expo SDK in your project: ${expoGoManifestHandlerMiddlewareImportError}`\n ),\n defaultLogOptions\n );\n } else {\n logger.warn(\n colors.yellow(\n `Failed to import Expo SDK from your project: ${expoGoManifestHandlerMiddlewareImportError}`\n ),\n defaultLogOptions\n );\n }\n logger.warn(\n \"Ignoring the error and responding with preset manifest, this may not work with Expo Go or your development build.\",\n defaultLogOptions\n );\n logger.warn(\n colors.yellow(\n `Is this a Expo project, or are you using a supported version of Expo SDK? (${projectRoot})`\n ),\n defaultLogOptions\n );\n const json = getIndexJsonResponse({ projectRoot, port });\n res.setHeader(\"content-type\", \"application/json\");\n res.write(JSON.stringify(json));\n res.end();\n return;\n }\n const manifestHandlerMiddleware = new ExpoGoManifestHandlerMiddleware(\n projectRoot,\n {\n constructUrl: () => {\n return `${protocol}://${host}`;\n }\n }\n );\n const origGetBundleUrl = manifestHandlerMiddleware._getBundleUrl.bind(\n manifestHandlerMiddleware\n );\n manifestHandlerMiddleware._getBundleUrl = (...args) => {\n const origBundleUrl = origGetBundleUrl(...args);\n let url = new URL(origBundleUrl);\n if (host) url.host = host;\n url.protocol = protocol;\n url.pathname = \"/index.bundle\";\n return url.toString();\n };\n manifestHandlerMiddleware._origGetManifestResponseAsync = manifestHandlerMiddleware._getManifestResponseAsync;\n manifestHandlerMiddleware._getManifestResponseAsync = async (...args) => {\n try {\n const response = await manifestHandlerMiddleware._origGetManifestResponseAsync(...args);\n const isWebResponse = response instanceof Response;\n const bodyText = isWebResponse ? await response.text() : response.body;\n const [, beforeBodyJson, bodyJson, afterBodyJson] = bodyText.match(/([^{]*)({.*})([^}]*)/) || [];\n if (!bodyJson) {\n throw new Error(`Unrecognized manifest response from expo: ${bodyText}`);\n }\n const parsedBody = JSON.parse(bodyJson);\n if (!parsedBody.extra) {\n parsedBody.extra = {};\n }\n if (!parsedBody.extra.expoClient) {\n parsedBody.extra.expoClient = {};\n }\n if (typeof parsedBody.extra.expoClient.hostUri === \"string\") {\n parsedBody.extra.expoClient.hostUri = parsedBody.extra.expoClient.hostUri.replace(/^https?:\\/\\//, \"\");\n }\n if (typeof parsedBody.extra.expoGo.debuggerHost === \"string\") {\n parsedBody.extra.expoGo.debuggerHost = parsedBody.extra.expoGo.debuggerHost.replace(/^https?:\\/\\//, \"\");\n }\n parsedBody.extra.expoClient.iconUrl = \"https://github.com/user-attachments/assets/6894506b-df81-417c-a4cd-9c125c7ba37f\";\n parsedBody.extra.expoClient.splash = {\n image: \"__vxrn_unstable_internal/icon.png\",\n resizeMode: \"contain\",\n backgroundColor: \"#000000\",\n imageUrl: \"https://github.com/user-attachments/assets/e816c207-e7d2-4c2e-8aa5-0d4cbaa622bf\"\n // TODO: Host this image somewhere.\n };\n const newBody = beforeBodyJson + JSON.stringify(parsedBody) + afterBodyJson;\n if (isWebResponse) {\n return new Response(newBody, {\n status: response.status,\n headers: response.headers\n });\n }\n response.body = newBody;\n return response;\n } catch (e) {\n if (e instanceof Error) {\n e.message = `[vxrn:expo-manifest-request-handler] Failed to parse the Expo manifest response from expo: ${e.message}`;\n throw e;\n }\n throw new Error(\n `[vxrn:expo-manifest-request-handler] Failed to parse the Expo manifest response from expo: ${e}`\n );\n }\n };\n manifestHandlerMiddleware.handleRequestAsync(req, res, next);\n });\n }\n };\n}\nfunction getIndexJsonResponse({\n port,\n projectRoot\n}) {\n return {\n name: \"myapp\",\n slug: \"myapp\",\n scheme: \"myapp\",\n version: \"1.0.0\",\n jsEngine: \"jsc\",\n orientation: \"portrait\",\n icon: \"./assets/icon.png\",\n userInterfaceStyle: \"light\",\n splash: {\n image: \"./assets/splash.png\",\n resizeMode: \"contain\",\n backgroundColor: \"#ffffff\",\n imageUrl: \"http://127.0.0.1:8081/assets/./assets/splash.png\"\n },\n updates: { fallbackToCacheTimeout: 0 },\n assetBundlePatterns: [\"**/*\"],\n ios: { supportsTablet: true, bundleIdentifier: \"com.natew.myapp\" },\n android: {\n package: \"com.tamagui.myapp\",\n adaptiveIcon: {\n foregroundImage: \"./assets/adaptive-icon.png\",\n backgroundColor: \"#FFFFFF\",\n foregroundImageUrl: \"http://127.0.0.1:8081/assets/./assets/adaptive-icon.png\"\n }\n },\n web: { favicon: \"./assets/favicon.png\" },\n extra: { eas: { projectId: \"061b4470-78c7-4d6a-b850-8167fb0a3434\" } },\n _internal: {\n isDebug: false,\n projectRoot,\n dynamicConfigPath: null,\n staticConfigPath: join(projectRoot, \"app.json\"),\n packageJsonPath: join(projectRoot, \"package.json\")\n },\n sdkVersion: \"50.0.0\",\n platforms: [\"ios\", \"android\", \"web\"],\n iconUrl: `http://127.0.0.1:${port}/assets/./assets/icon.png`,\n debuggerHost: `127.0.0.1:${port}`,\n logUrl: `http://127.0.0.1:${port}/logs`,\n developer: { tool: \"expo-cli\", projectRoot },\n packagerOpts: { dev: true },\n mainModuleName: \"index\",\n __flipperHack: \"React Native packager is running\",\n hostUri: `127.0.0.1:${port}`,\n bundleUrl: `http://127.0.0.1:${port}/index.bundle?platform=ios&dev=true&hot=false&lazy=true`,\n id: \"@anonymous/myapp-473c4543-3c36-4786-9db1-c66a62ac9b78\"\n };\n}\nexport {\n expoManifestRequestHandlerPlugin\n};\n//# sourceMappingURL=expoManifestRequestHandlerPlugin.js.map\n"],"mappings":"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"}
|