vxrn 2.0.0-beta.99.1 → 2.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (210) hide show
  1. package/dist/backgroundComputation.mjs +145 -0
  2. package/dist/backgroundComputation.mjs.map +1 -0
  3. package/dist/backgroundComputation.native.js +163 -0
  4. package/dist/backgroundComputation.native.js.map +1 -0
  5. package/dist/backgroundComputationNative.mjs +16 -0
  6. package/dist/backgroundComputationNative.mjs.map +1 -0
  7. package/dist/backgroundComputationNative.native.js +18 -0
  8. package/dist/backgroundComputationNative.native.js.map +1 -0
  9. package/dist/config/getBaseViteConfigOnly.mjs +6 -10
  10. package/dist/config/getBaseViteConfigOnly.mjs.map +1 -1
  11. package/dist/config/getBaseViteConfigOnly.native.js +6 -10
  12. package/dist/config/getBaseViteConfigOnly.native.js.map +1 -1
  13. package/dist/config/getOptimizeDeps.mjs +2 -1
  14. package/dist/config/getOptimizeDeps.mjs.map +1 -1
  15. package/dist/config/getOptimizeDeps.native.js +2 -1
  16. package/dist/config/getOptimizeDeps.native.js.map +1 -1
  17. package/dist/config/getViteServerConfig.mjs +13 -0
  18. package/dist/config/getViteServerConfig.mjs.map +1 -1
  19. package/dist/config/getViteServerConfig.native.js +15 -1
  20. package/dist/config/getViteServerConfig.native.js.map +1 -1
  21. package/dist/constants/defaults.mjs +4 -0
  22. package/dist/constants/defaults.mjs.map +1 -1
  23. package/dist/constants/defaults.native.js +4 -0
  24. package/dist/constants/defaults.native.js.map +1 -1
  25. package/dist/exports/build.native.js +1 -1
  26. package/dist/exports/build.native.js.map +1 -1
  27. package/dist/exports/clean.native.js +1 -1
  28. package/dist/exports/clean.native.js.map +1 -1
  29. package/dist/exports/createServer.native.js +2 -2
  30. package/dist/exports/createServer.native.js.map +1 -1
  31. package/dist/exports/dev.mjs +3 -0
  32. package/dist/exports/dev.mjs.map +1 -1
  33. package/dist/exports/dev.native.js +6 -3
  34. package/dist/exports/dev.native.js.map +1 -1
  35. package/dist/exports/loadEnv.native.js +1 -1
  36. package/dist/exports/loadEnv.native.js.map +1 -1
  37. package/dist/exports/patch.native.js +1 -1
  38. package/dist/exports/patch.native.js.map +1 -1
  39. package/dist/exports/prebuild.mjs +0 -22
  40. package/dist/exports/prebuild.mjs.map +1 -1
  41. package/dist/exports/prebuild.native.js +1 -23
  42. package/dist/exports/prebuild.native.js.map +1 -1
  43. package/dist/exports/prebuildWithoutExpo.mjs +1116 -178
  44. package/dist/exports/prebuildWithoutExpo.mjs.map +1 -1
  45. package/dist/exports/prebuildWithoutExpo.native.js +1592 -243
  46. package/dist/exports/prebuildWithoutExpo.native.js.map +1 -1
  47. package/dist/exports/runAndroid.native.js +1 -1
  48. package/dist/exports/runAndroid.native.js.map +1 -1
  49. package/dist/exports/runIos.native.js +1 -1
  50. package/dist/exports/runIos.native.js.map +1 -1
  51. package/dist/exports/serve.native.js +1 -1
  52. package/dist/exports/serve.native.js.map +1 -1
  53. package/dist/exports/serveStaticAssets.native.js +1 -1
  54. package/dist/exports/serveStaticAssets.native.js.map +1 -1
  55. package/dist/index.js +4 -1
  56. package/dist/index.mjs +4 -1
  57. package/dist/index.native.js +4 -1
  58. package/dist/native-source-contract.mjs +3 -0
  59. package/dist/native-source-contract.native.js +3 -0
  60. package/dist/patches/builtInDepPatches.mjs +0 -13
  61. package/dist/patches/builtInDepPatches.mjs.map +1 -1
  62. package/dist/patches/builtInDepPatches.native.js +0 -13
  63. package/dist/patches/builtInDepPatches.native.js.map +1 -1
  64. package/dist/plugins/autoDepOptimizePlugin.mjs +3 -2
  65. package/dist/plugins/autoDepOptimizePlugin.mjs.map +1 -1
  66. package/dist/plugins/autoDepOptimizePlugin.native.js +6 -3
  67. package/dist/plugins/autoDepOptimizePlugin.native.js.map +1 -1
  68. package/dist/plugins/backgroundComputationPlugin.mjs +27 -0
  69. package/dist/plugins/backgroundComputationPlugin.mjs.map +1 -0
  70. package/dist/plugins/backgroundComputationPlugin.native.js +32 -0
  71. package/dist/plugins/backgroundComputationPlugin.native.js.map +1 -0
  72. package/dist/plugins/reactNativeCommonJsPlugin.native.js +3 -3
  73. package/dist/plugins/reactNativeCommonJsPlugin.native.js.map +1 -1
  74. package/dist/plugins/reactNativeDevAssetPlugin.mjs +2 -1
  75. package/dist/plugins/reactNativeDevAssetPlugin.mjs.map +1 -1
  76. package/dist/plugins/reactNativeDevAssetPlugin.native.js +3 -2
  77. package/dist/plugins/reactNativeDevAssetPlugin.native.js.map +1 -1
  78. package/dist/plugins/reactNativeDevServer.mjs +87 -24
  79. package/dist/plugins/reactNativeDevServer.mjs.map +1 -1
  80. package/dist/plugins/reactNativeDevServer.native.js +162 -45
  81. package/dist/plugins/reactNativeDevServer.native.js.map +1 -1
  82. package/dist/plugins/workletImportsPlugin.mjs +9 -30
  83. package/dist/plugins/workletImportsPlugin.mjs.map +1 -1
  84. package/dist/plugins/workletImportsPlugin.native.js +10 -35
  85. package/dist/plugins/workletImportsPlugin.native.js.map +1 -1
  86. package/dist/rn-commands/bundle/buildBundle.mjs +3 -3
  87. package/dist/rn-commands/bundle/buildBundle.mjs.map +1 -1
  88. package/dist/rn-commands/bundle/buildBundle.native.js +3 -3
  89. package/dist/rn-commands/bundle/buildBundle.native.js.map +1 -1
  90. package/dist/runtime/hmr-client.native.js +3 -7
  91. package/dist/runtime/hmr-client.native.js.map +1 -1
  92. package/dist/runtime/hmr-runtime.native.js +32 -40
  93. package/dist/runtime/hmr-runtime.native.js.map +1 -1
  94. package/dist/serve/node.native.js +2 -2
  95. package/dist/serve/node.native.js.map +1 -1
  96. package/dist/swift-package-id.mjs +3 -0
  97. package/dist/swift-package-id.native.js +3 -0
  98. package/dist/user-interface/index.native.js +6 -6
  99. package/dist/user-interface/index.native.js.map +1 -1
  100. package/dist/utils/compileNativeDevBytecode.mjs +93 -0
  101. package/dist/utils/compileNativeDevBytecode.mjs.map +1 -0
  102. package/dist/utils/compileNativeDevBytecode.native.js +98 -0
  103. package/dist/utils/compileNativeDevBytecode.native.js.map +1 -0
  104. package/dist/utils/createNativeDevEngine.mjs +227 -20
  105. package/dist/utils/createNativeDevEngine.mjs.map +1 -1
  106. package/dist/utils/createNativeDevEngine.native.js +249 -37
  107. package/dist/utils/createNativeDevEngine.native.js.map +1 -1
  108. package/dist/utils/execSync.native.js +1 -1
  109. package/dist/utils/execSync.native.js.map +1 -1
  110. package/dist/utils/getServerEntry.native.js +2 -2
  111. package/dist/utils/getServerEntry.native.js.map +1 -1
  112. package/dist/utils/nativeRun.mjs +32 -16
  113. package/dist/utils/nativeRun.mjs.map +1 -1
  114. package/dist/utils/nativeRun.native.js +43 -18
  115. package/dist/utils/nativeRun.native.js.map +1 -1
  116. package/dist/utils/nativeSourceContract.mjs +1823 -0
  117. package/dist/utils/nativeSourceContract.mjs.map +1 -0
  118. package/dist/utils/nativeSourceContract.native.js +2425 -0
  119. package/dist/utils/nativeSourceContract.native.js.map +1 -0
  120. package/dist/utils/patches.native.js +15 -24
  121. package/dist/utils/patches.native.js.map +1 -1
  122. package/dist/utils/printServerUrls.native.js +1 -1
  123. package/dist/utils/printServerUrls.native.js.map +1 -1
  124. package/dist/utils/scanDepsToOptimize.mjs +7 -1
  125. package/dist/utils/scanDepsToOptimize.mjs.map +1 -1
  126. package/dist/utils/scanDepsToOptimize.native.js +27 -2
  127. package/dist/utils/scanDepsToOptimize.native.js.map +1 -1
  128. package/dist/utils/swiftPackageId.mjs +31 -2
  129. package/dist/utils/swiftPackageId.mjs.map +1 -1
  130. package/dist/utils/swiftPackageId.native.js +50 -2
  131. package/dist/utils/swiftPackageId.native.js.map +1 -1
  132. package/dist/vxrn-vite-plugin.native.js +1 -1
  133. package/dist/vxrn-vite-plugin.native.js.map +1 -1
  134. package/expo-plugin.cjs +792 -2
  135. package/native-project-patches.cjs +201 -10
  136. package/package.json +34 -15
  137. package/src/backgroundComputation.ts +220 -0
  138. package/src/backgroundComputationNative.ts +23 -0
  139. package/src/config/getBaseViteConfigOnly.ts +8 -9
  140. package/src/config/getOptimizeDeps.ts +3 -1
  141. package/src/config/getViteServerConfig.ts +16 -0
  142. package/src/config/glbAssets.test.ts +228 -0
  143. package/src/constants/defaults.ts +6 -0
  144. package/src/exports/dev.ts +5 -1
  145. package/src/exports/expoPlugin.test.mjs +337 -15
  146. package/src/exports/prebuild.ts +0 -31
  147. package/src/exports/prebuildWithoutExpo.test.ts +1588 -48
  148. package/src/exports/prebuildWithoutExpo.ts +1573 -213
  149. package/src/index.ts +8 -0
  150. package/src/native-source-contract.ts +16 -0
  151. package/src/patches/builtInDepPatches.ts +0 -21
  152. package/src/plugins/autoDepOptimizePlugin.ts +7 -2
  153. package/src/plugins/backgroundComputationPlugin.test.ts +77 -0
  154. package/src/plugins/backgroundComputationPlugin.ts +29 -0
  155. package/src/plugins/reactNativeDevAssetPlugin.ts +5 -1
  156. package/src/plugins/reactNativeDevServer.test.ts +74 -0
  157. package/src/plugins/reactNativeDevServer.ts +145 -28
  158. package/src/plugins/rnCodegenPlugin.test.ts +30 -0
  159. package/src/plugins/workletImportsPlugin.ts +19 -37
  160. package/src/rn-commands/bundle/buildBundle.ts +5 -3
  161. package/src/swift-package-id.ts +1 -0
  162. package/src/utils/compileNativeDevBytecode.test.ts +168 -0
  163. package/src/utils/compileNativeDevBytecode.ts +117 -0
  164. package/src/utils/createNativeDevEngine.test.ts +643 -18
  165. package/src/utils/createNativeDevEngine.ts +278 -48
  166. package/src/utils/nativeRun.test.ts +125 -23
  167. package/src/utils/nativeRun.ts +51 -23
  168. package/src/utils/nativeSourceArtifacts.test.ts +39 -0
  169. package/src/utils/nativeSourceContract.test.ts +600 -0
  170. package/src/utils/nativeSourceContract.ts +1897 -0
  171. package/src/utils/scanDepsToOptimize.test.ts +80 -0
  172. package/src/utils/scanDepsToOptimize.ts +18 -7
  173. package/src/utils/swiftPackageId.ts +25 -1
  174. package/types/backgroundComputation.d.ts +28 -0
  175. package/types/backgroundComputation.d.ts.map +1 -0
  176. package/types/backgroundComputationNative.d.ts +2 -0
  177. package/types/backgroundComputationNative.d.ts.map +1 -0
  178. package/types/config/getBaseViteConfigOnly.d.ts.map +1 -1
  179. package/types/config/getOptimizeDeps.d.ts.map +1 -1
  180. package/types/config/getViteServerConfig.d.ts.map +1 -1
  181. package/types/constants/defaults.d.ts.map +1 -1
  182. package/types/exports/dev.d.ts.map +1 -1
  183. package/types/exports/prebuild.d.ts.map +1 -1
  184. package/types/exports/prebuildWithoutExpo.d.ts +6 -0
  185. package/types/exports/prebuildWithoutExpo.d.ts.map +1 -1
  186. package/types/index.d.ts +2 -0
  187. package/types/index.d.ts.map +1 -1
  188. package/types/native-source-contract.d.ts +2 -0
  189. package/types/native-source-contract.d.ts.map +1 -0
  190. package/types/patches/builtInDepPatches.d.ts.map +1 -1
  191. package/types/plugins/autoDepOptimizePlugin.d.ts.map +1 -1
  192. package/types/plugins/backgroundComputationPlugin.d.ts +3 -0
  193. package/types/plugins/backgroundComputationPlugin.d.ts.map +1 -0
  194. package/types/plugins/reactNativeDevAssetPlugin.d.ts.map +1 -1
  195. package/types/plugins/reactNativeDevServer.d.ts.map +1 -1
  196. package/types/plugins/workletImportsPlugin.d.ts.map +1 -1
  197. package/types/rn-commands/bundle/buildBundle.d.ts.map +1 -1
  198. package/types/swift-package-id.d.ts +2 -0
  199. package/types/swift-package-id.d.ts.map +1 -0
  200. package/types/utils/compileNativeDevBytecode.d.ts +3 -0
  201. package/types/utils/compileNativeDevBytecode.d.ts.map +1 -0
  202. package/types/utils/createNativeDevEngine.d.ts +7 -22
  203. package/types/utils/createNativeDevEngine.d.ts.map +1 -1
  204. package/types/utils/nativeRun.d.ts.map +1 -1
  205. package/types/utils/nativeSourceContract.d.ts +121 -0
  206. package/types/utils/nativeSourceContract.d.ts.map +1 -0
  207. package/types/utils/scanDepsToOptimize.d.ts +1 -0
  208. package/types/utils/scanDepsToOptimize.d.ts.map +1 -1
  209. package/types/utils/swiftPackageId.d.ts +1 -0
  210. package/types/utils/swiftPackageId.d.ts.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"getOptimizeDeps.js","names":[],"sources":["config/getOptimizeDeps.js"],"sourcesContent":["import { webExtensions } from \"../constants\";\nfunction getOptimizeDeps(mode) {\n const needsInterop = [\n \"nativewind\",\n \"react-native-css-interop/jsx-runtime\",\n \"react-native-css-interop/jsx-dev-runtime\",\n \"react-native-css-interop\",\n \"secure-json-parse\",\n \"@react-native/normalize-colors\",\n \"@vxrn/safe-area\",\n \"@vxrn/vendor/react-19-prod\",\n \"@vxrn/vendor/react-19\",\n \"@vxrn/vendor/react-19-compiler-runtime\",\n \"@vxrn/vendor/react-dom-19\",\n \"@vxrn/vendor/react-dom-client-19\",\n \"@vxrn/vendor/react-dom-server.browser-19\",\n \"@vxrn/vendor/react-jsx-19\",\n \"@vxrn/vendor/react-jsx-dev-19\",\n \"react\",\n \"react/jsx-runtime\",\n \"react/jsx-dev-runtime\",\n \"react/compiler-runtime\",\n \"react-dom\",\n \"react-dom/server\",\n \"react-dom/client\",\n \"react-native-web-internals\",\n \"@react-native-masked-view/masked-view\",\n \"url-parse\",\n \"query-string\",\n \"escape-string-regexp\",\n \"use-latest-callback\",\n \"react-is\",\n \"fast-deep-equal\",\n \"@supabase/auth-helpers-react\",\n \"@supabase/postgres-js\",\n \"core-js\",\n \"parse-numeric-range\",\n \"use-sync-external-store\",\n \"use-sync-external-store/shim\",\n \"inline-style-prefixer\",\n \"@docsearch/react\",\n \"@algolia/autocomplete-core\",\n \"@algolia/autocomplete-plugin-algolia-insights\",\n \"@algolia/autocomplete-shared\",\n \"moti\"\n ];\n const depsToOptimize = [\n ...needsInterop,\n \"fast-xml-parser\",\n \"set-cookie-parser\",\n \"ipaddr.js\",\n \"cross-fetch\",\n \"pg\",\n \"react-native-svg\",\n \"react-native-screens\",\n \"ws\",\n \"lodash\",\n // added these when using a worker env\n \"reading-time\",\n \"mdx-bundler/client\",\n \"gray-matter\",\n \"glob\",\n \"memoize-one\",\n \"css-in-js-utils\",\n \"hyphenate-style-name\",\n \"use-sync-external-store\",\n \"react-native-reanimated\",\n // uses .web.js extensions\n \"@react-navigation/core\",\n \"@react-navigation/native\",\n \"@react-navigation/elements\",\n \"@react-navigation/bottom-tabs\",\n \"@react-navigation/native-stack\",\n \"one\",\n \"styleq\",\n \"fbjs\",\n \"@vxrn/universal-color-scheme\",\n \"@vxrn/color-scheme\",\n \"requires-port\",\n \"querystringify\",\n \"compare-versions\",\n \"strict-uri-encode\",\n \"decode-uri-component\",\n \"split-on-first\",\n \"filter-obj\",\n \"scheduler\",\n \"warn-once\",\n \"@radix-ui/react-compose-refs\",\n \"@radix-ui/react-slot\",\n \"nanoid\",\n \"swr\",\n \"swr/mutation\",\n \"one\",\n \"one/zero\",\n \"refractor/lang/tsx\",\n \"invariant\",\n \"tamagui/linear-gradient\",\n \"@react-native/normalize-color\",\n \"react-native\",\n \"@floating-ui/react\",\n \"@floating-ui/react-dom\",\n \"tamagui\",\n \"reforest\"\n ];\n if (mode === \"build\") {\n depsToOptimize.push(\"@babel/runtime\");\n }\n return {\n needsInterop,\n depsToOptimize,\n optimizeDeps: {\n include: depsToOptimize,\n exclude: [\n \"util\",\n \"@swc/wasm\",\n \"@swc/core-darwin-arm64\",\n \"moti/author\",\n \"@hot-updater/cli-tools\"\n ],\n needsInterop,\n // Enable lazy optimization - don't wait for all deps before starting server\n // This allows browser to process requests in parallel for faster initial load\n holdUntilCrawlEnd: false,\n rolldownOptions: {\n resolve: {\n extensions: webExtensions\n },\n // expo reads its platform from this constant, which babel-preset-expo\n // inlines during transform. a pre-bundled dep never goes through babel,\n // so the constant has to be defined here or it reads as undefined and\n // every expo module in a client chunk takes its native branch. expo's\n // dev HMR client is the one that bites: setupHMR calls\n // HMRClient.setup({ isEnabled: true }), the web form, and the native\n // branch asserts a string platform, so the whole client fails to\n // initialize and every route renders blank. rolldown takes define under\n // `transform`, and vite's dep optimizer merges that one key into its own\n // define; a top-level `define` is typed `never` and is rejected outright.\n transform: {\n define: {\n \"process.env.EXPO_OS\": '\"web\"'\n }\n },\n // some packages ship JSX in .js files (e.g., react-native-css-interop/dist/doctor.js).\n // .ts/.tsx must be declared too. when es-module-lexer can't read a dep entry,\n // vite's extractExportsData retries it as `moduleTypes[extname] || 'jsx'`, and\n // lexer always fails on TS syntax, so an undeclared .ts entry gets re-parsed as\n // JSX and dies on the first inline type specifier (`import { type Foo }`).\n moduleTypes: { \".js\": \"jsx\", \".ts\": \"ts\", \".tsx\": \"tsx\" },\n // react-native packages import native-only exports (TurboModuleRegistry etc.)\n // from react-native, which is aliased to react-native-web on web. react-native-web\n // doesn't export these, so rolldown would error. shimMissingExports creates\n // undefined shims instead, matching esbuild's lenient behavior.\n shimMissingExports: true\n }\n }\n };\n}\nexport {\n getOptimizeDeps\n};\n//# sourceMappingURL=getOptimizeDeps.js.map\n"],"mappings":";;;AACA,SAAS,gBAAgB,MAAM;CAC7B,MAAM,eAAe;EACnB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,MAAM,iBAAiB;EACrB,GAAG;EACH;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,IAAI,SAAS,SAAS;EACpB,eAAe,KAAK,gBAAgB;CACtC;CACA,OAAO;EACL;EACA;EACA,cAAc;GACZ,SAAS;GACT,SAAS;IACP;IACA;IACA;IACA;IACA;GACF;GACA;GAGA,mBAAmB;GACnB,iBAAiB;IACf,SAAS,EACP,YAAY,cACd;IAWA,WAAW,EACT,QAAQ,EACN,uBAAuB,UACzB,EACF;IAMA,aAAa;KAAE,OAAO;KAAO,OAAO;KAAM,QAAQ;IAAM;IAKxD,oBAAoB;GACtB;EACF;CACF;AACF"}
1
+ {"version":3,"file":"getOptimizeDeps.js","names":[],"sources":["config/getOptimizeDeps.js"],"sourcesContent":["import { webExtensions } from \"../constants\";\nfunction getOptimizeDeps(mode) {\n const needsInterop = [\n \"nativewind\",\n \"react-native-css-interop/jsx-runtime\",\n \"react-native-css-interop/jsx-dev-runtime\",\n \"react-native-css-interop\",\n \"secure-json-parse\",\n \"@react-native/normalize-colors\",\n \"@vxrn/vendor/react-19-prod\",\n \"@vxrn/vendor/react-19\",\n \"@vxrn/vendor/react-19-compiler-runtime\",\n \"@vxrn/vendor/react-dom-19\",\n \"@vxrn/vendor/react-dom-client-19\",\n \"@vxrn/vendor/react-dom-server.browser-19\",\n \"@vxrn/vendor/react-jsx-19\",\n \"@vxrn/vendor/react-jsx-dev-19\",\n \"react\",\n \"react/jsx-runtime\",\n \"react/jsx-dev-runtime\",\n \"react/compiler-runtime\",\n \"react-dom\",\n \"react-dom/server\",\n \"react-dom/client\",\n \"react-native-web-internals\",\n \"@react-native-masked-view/masked-view\",\n \"url-parse\",\n \"query-string\",\n \"escape-string-regexp\",\n \"use-latest-callback\",\n \"react-is\",\n \"fast-deep-equal\",\n \"@supabase/auth-helpers-react\",\n \"@supabase/postgres-js\",\n \"core-js\",\n \"parse-numeric-range\",\n \"use-sync-external-store\",\n \"use-sync-external-store/shim\",\n \"inline-style-prefixer\",\n \"@docsearch/react\",\n \"@algolia/autocomplete-core\",\n \"@algolia/autocomplete-plugin-algolia-insights\",\n \"@algolia/autocomplete-shared\",\n \"moti\"\n ];\n const depsToOptimize = [\n ...needsInterop,\n \"fast-xml-parser\",\n \"set-cookie-parser\",\n \"ipaddr.js\",\n \"cross-fetch\",\n \"pg\",\n \"react-native-svg\",\n \"react-native-screens\",\n \"ws\",\n \"lodash\",\n // added these when using a worker env\n \"reading-time\",\n \"mdx-bundler/client\",\n \"gray-matter\",\n \"glob\",\n \"memoize-one\",\n \"css-in-js-utils\",\n \"hyphenate-style-name\",\n \"use-sync-external-store\",\n \"react-native-reanimated\",\n // uses .web.js extensions\n \"@react-navigation/core\",\n \"@react-navigation/native\",\n \"@react-navigation/elements\",\n \"@react-navigation/bottom-tabs\",\n \"@react-navigation/native-stack\",\n \"one\",\n \"one/drawer\",\n // one's own copy, by alias: prebundled with one so both share one context\n \"react-native-safe-area-context\",\n \"styleq\",\n \"fbjs\",\n \"@vxrn/universal-color-scheme\",\n \"@vxrn/color-scheme\",\n \"requires-port\",\n \"querystringify\",\n \"compare-versions\",\n \"strict-uri-encode\",\n \"decode-uri-component\",\n \"split-on-first\",\n \"filter-obj\",\n \"scheduler\",\n \"warn-once\",\n \"@radix-ui/react-compose-refs\",\n \"@radix-ui/react-slot\",\n \"nanoid\",\n \"swr\",\n \"swr/mutation\",\n \"one\",\n \"one/zero\",\n \"refractor/lang/tsx\",\n \"invariant\",\n \"tamagui/linear-gradient\",\n \"@react-native/normalize-color\",\n \"react-native\",\n \"@floating-ui/react\",\n \"@floating-ui/react-dom\",\n \"tamagui\",\n \"reforest\"\n ];\n if (mode === \"build\") {\n depsToOptimize.push(\"@babel/runtime\");\n }\n return {\n needsInterop,\n depsToOptimize,\n optimizeDeps: {\n include: depsToOptimize,\n exclude: [\n \"util\",\n \"@swc/wasm\",\n \"@swc/core-darwin-arm64\",\n \"moti/author\",\n \"@hot-updater/cli-tools\"\n ],\n needsInterop,\n // Enable lazy optimization - don't wait for all deps before starting server\n // This allows browser to process requests in parallel for faster initial load\n holdUntilCrawlEnd: false,\n rolldownOptions: {\n resolve: {\n extensions: webExtensions\n },\n // expo reads its platform from this constant, which babel-preset-expo\n // inlines during transform. a pre-bundled dep never goes through babel,\n // so the constant has to be defined here or it reads as undefined and\n // every expo module in a client chunk takes its native branch. expo's\n // dev HMR client is the one that bites: setupHMR calls\n // HMRClient.setup({ isEnabled: true }), the web form, and the native\n // branch asserts a string platform, so the whole client fails to\n // initialize and every route renders blank. rolldown takes define under\n // `transform`, and vite's dep optimizer merges that one key into its own\n // define; a top-level `define` is typed `never` and is rejected outright.\n transform: {\n define: {\n \"process.env.EXPO_OS\": '\"web\"'\n }\n },\n // some packages ship JSX in .js files (e.g., react-native-css-interop/dist/doctor.js).\n // .ts/.tsx must be declared too. when es-module-lexer can't read a dep entry,\n // vite's extractExportsData retries it as `moduleTypes[extname] || 'jsx'`, and\n // lexer always fails on TS syntax, so an undeclared .ts entry gets re-parsed as\n // JSX and dies on the first inline type specifier (`import { type Foo }`).\n moduleTypes: { \".js\": \"jsx\", \".ts\": \"ts\", \".tsx\": \"tsx\" },\n // react-native packages import native-only exports (TurboModuleRegistry etc.)\n // from react-native, which is aliased to react-native-web on web. react-native-web\n // doesn't export these, so rolldown would error. shimMissingExports creates\n // undefined shims instead, matching esbuild's lenient behavior.\n shimMissingExports: true\n }\n }\n };\n}\nexport {\n getOptimizeDeps\n};\n//# sourceMappingURL=getOptimizeDeps.js.map\n"],"mappings":";;;AACA,SAAS,gBAAgB,MAAM;CAC7B,MAAM,eAAe;EACnB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,MAAM,iBAAiB;EACrB,GAAG;EACH;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,IAAI,SAAS,SAAS;EACpB,eAAe,KAAK,gBAAgB;CACtC;CACA,OAAO;EACL;EACA;EACA,cAAc;GACZ,SAAS;GACT,SAAS;IACP;IACA;IACA;IACA;IACA;GACF;GACA;GAGA,mBAAmB;GACnB,iBAAiB;IACf,SAAS,EACP,YAAY,cACd;IAWA,WAAW,EACT,QAAQ,EACN,uBAAuB,UACzB,EACF;IAMA,aAAa;KAAE,OAAO;KAAO,OAAO;KAAM,QAAQ;IAAM;IAKxD,oBAAoB;GACtB;EACF;CACF;AACF"}
@@ -8,7 +8,6 @@ function getOptimizeDeps(mode) {
8
8
  "react-native-css-interop",
9
9
  "secure-json-parse",
10
10
  "@react-native/normalize-colors",
11
- "@vxrn/safe-area",
12
11
  "@vxrn/vendor/react-19-prod",
13
12
  "@vxrn/vendor/react-19",
14
13
  "@vxrn/vendor/react-19-compiler-runtime",
@@ -71,6 +70,8 @@ function getOptimizeDeps(mode) {
71
70
  "@react-navigation/bottom-tabs",
72
71
  "@react-navigation/native-stack",
73
72
  "one",
73
+ "one/drawer",
74
+ "react-native-safe-area-context",
74
75
  "styleq",
75
76
  "fbjs",
76
77
  "@vxrn/universal-color-scheme",
@@ -1 +1 @@
1
- {"version":3,"file":"getOptimizeDeps.native.js","names":[],"sources":["config/getOptimizeDeps.native.js"],"sourcesContent":["import { webExtensions } from \"../constants\";\nfunction getOptimizeDeps(mode) {\n var needsInterop = [\n \"nativewind\",\n \"react-native-css-interop/jsx-runtime\",\n \"react-native-css-interop/jsx-dev-runtime\",\n \"react-native-css-interop\",\n \"secure-json-parse\",\n \"@react-native/normalize-colors\",\n \"@vxrn/safe-area\",\n \"@vxrn/vendor/react-19-prod\",\n \"@vxrn/vendor/react-19\",\n \"@vxrn/vendor/react-19-compiler-runtime\",\n \"@vxrn/vendor/react-dom-19\",\n \"@vxrn/vendor/react-dom-client-19\",\n \"@vxrn/vendor/react-dom-server.browser-19\",\n \"@vxrn/vendor/react-jsx-19\",\n \"@vxrn/vendor/react-jsx-dev-19\",\n \"react\",\n \"react/jsx-runtime\",\n \"react/jsx-dev-runtime\",\n \"react/compiler-runtime\",\n \"react-dom\",\n \"react-dom/server\",\n \"react-dom/client\",\n \"react-native-web-internals\",\n \"@react-native-masked-view/masked-view\",\n \"url-parse\",\n \"query-string\",\n \"escape-string-regexp\",\n \"use-latest-callback\",\n \"react-is\",\n \"fast-deep-equal\",\n \"@supabase/auth-helpers-react\",\n \"@supabase/postgres-js\",\n \"core-js\",\n \"parse-numeric-range\",\n \"use-sync-external-store\",\n \"use-sync-external-store/shim\",\n \"inline-style-prefixer\",\n \"@docsearch/react\",\n \"@algolia/autocomplete-core\",\n \"@algolia/autocomplete-plugin-algolia-insights\",\n \"@algolia/autocomplete-shared\",\n \"moti\"\n ];\n var depsToOptimize = [\n ...needsInterop,\n \"fast-xml-parser\",\n \"set-cookie-parser\",\n \"ipaddr.js\",\n \"cross-fetch\",\n \"pg\",\n \"react-native-svg\",\n \"react-native-screens\",\n \"ws\",\n \"lodash\",\n // added these when using a worker env\n \"reading-time\",\n \"mdx-bundler/client\",\n \"gray-matter\",\n \"glob\",\n \"memoize-one\",\n \"css-in-js-utils\",\n \"hyphenate-style-name\",\n \"use-sync-external-store\",\n \"react-native-reanimated\",\n // uses .web.js extensions\n \"@react-navigation/core\",\n \"@react-navigation/native\",\n \"@react-navigation/elements\",\n \"@react-navigation/bottom-tabs\",\n \"@react-navigation/native-stack\",\n \"one\",\n \"styleq\",\n \"fbjs\",\n \"@vxrn/universal-color-scheme\",\n \"@vxrn/color-scheme\",\n \"requires-port\",\n \"querystringify\",\n \"compare-versions\",\n \"strict-uri-encode\",\n \"decode-uri-component\",\n \"split-on-first\",\n \"filter-obj\",\n \"scheduler\",\n \"warn-once\",\n \"@radix-ui/react-compose-refs\",\n \"@radix-ui/react-slot\",\n \"nanoid\",\n \"swr\",\n \"swr/mutation\",\n \"one\",\n \"one/zero\",\n \"refractor/lang/tsx\",\n \"invariant\",\n \"tamagui/linear-gradient\",\n \"@react-native/normalize-color\",\n \"react-native\",\n \"@floating-ui/react\",\n \"@floating-ui/react-dom\",\n \"tamagui\",\n \"reforest\"\n ];\n if (mode === \"build\") {\n depsToOptimize.push(\"@babel/runtime\");\n }\n return {\n needsInterop,\n depsToOptimize,\n optimizeDeps: {\n include: depsToOptimize,\n exclude: [\n \"util\",\n \"@swc/wasm\",\n \"@swc/core-darwin-arm64\",\n \"moti/author\",\n \"@hot-updater/cli-tools\"\n ],\n needsInterop,\n // Enable lazy optimization - don't wait for all deps before starting server\n // This allows browser to process requests in parallel for faster initial load\n holdUntilCrawlEnd: false,\n rolldownOptions: {\n resolve: {\n extensions: webExtensions\n },\n // expo reads its platform from this constant, which babel-preset-expo\n // inlines during transform. a pre-bundled dep never goes through babel,\n // so the constant has to be defined here or it reads as undefined and\n // every expo module in a client chunk takes its native branch. expo's\n // dev HMR client is the one that bites: setupHMR calls\n // HMRClient.setup({ isEnabled: true }), the web form, and the native\n // branch asserts a string platform, so the whole client fails to\n // initialize and every route renders blank. rolldown takes define under\n // `transform`, and vite's dep optimizer merges that one key into its own\n // define; a top-level `define` is typed `never` and is rejected outright.\n transform: {\n define: {\n \"process.env.EXPO_OS\": '\"web\"'\n }\n },\n // some packages ship JSX in .js files (e.g., react-native-css-interop/dist/doctor.js).\n // .ts/.tsx must be declared too. when es-module-lexer can't read a dep entry,\n // vite's extractExportsData retries it as `moduleTypes[extname] || 'jsx'`, and\n // lexer always fails on TS syntax, so an undeclared .ts entry gets re-parsed as\n // JSX and dies on the first inline type specifier (`import { type Foo }`).\n moduleTypes: {\n \".js\": \"jsx\",\n \".ts\": \"ts\",\n \".tsx\": \"tsx\"\n },\n // react-native packages import native-only exports (TurboModuleRegistry etc.)\n // from react-native, which is aliased to react-native-web on web. react-native-web\n // doesn't export these, so rolldown would error. shimMissingExports creates\n // undefined shims instead, matching esbuild's lenient behavior.\n shimMissingExports: true\n }\n }\n };\n}\nexport {\n getOptimizeDeps\n};\n//# sourceMappingURL=getOptimizeDeps.js.map\n"],"mappings":";;;AACA,SAAS,gBAAgB,MAAM;CAC7B,IAAI,eAAe;EACjB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,IAAI,iBAAiB;EACnB,GAAG;EACH;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,IAAI,SAAS,SAAS;EACpB,eAAe,KAAK,gBAAgB;CACtC;CACA,OAAO;EACL;EACA;EACA,cAAc;GACZ,SAAS;GACT,SAAS;IACP;IACA;IACA;IACA;IACA;GACF;GACA;GAGA,mBAAmB;GACnB,iBAAiB;IACf,SAAS,EACP,YAAY,cACd;IAWA,WAAW,EACT,QAAQ,EACN,uBAAuB,UACzB,EACF;IAMA,aAAa;KACX,OAAO;KACP,OAAO;KACP,QAAQ;IACV;IAKA,oBAAoB;GACtB;EACF;CACF;AACF"}
1
+ {"version":3,"file":"getOptimizeDeps.native.js","names":[],"sources":["config/getOptimizeDeps.native.js"],"sourcesContent":["import { webExtensions } from \"../constants\";\nfunction getOptimizeDeps(mode) {\n var needsInterop = [\n \"nativewind\",\n \"react-native-css-interop/jsx-runtime\",\n \"react-native-css-interop/jsx-dev-runtime\",\n \"react-native-css-interop\",\n \"secure-json-parse\",\n \"@react-native/normalize-colors\",\n \"@vxrn/vendor/react-19-prod\",\n \"@vxrn/vendor/react-19\",\n \"@vxrn/vendor/react-19-compiler-runtime\",\n \"@vxrn/vendor/react-dom-19\",\n \"@vxrn/vendor/react-dom-client-19\",\n \"@vxrn/vendor/react-dom-server.browser-19\",\n \"@vxrn/vendor/react-jsx-19\",\n \"@vxrn/vendor/react-jsx-dev-19\",\n \"react\",\n \"react/jsx-runtime\",\n \"react/jsx-dev-runtime\",\n \"react/compiler-runtime\",\n \"react-dom\",\n \"react-dom/server\",\n \"react-dom/client\",\n \"react-native-web-internals\",\n \"@react-native-masked-view/masked-view\",\n \"url-parse\",\n \"query-string\",\n \"escape-string-regexp\",\n \"use-latest-callback\",\n \"react-is\",\n \"fast-deep-equal\",\n \"@supabase/auth-helpers-react\",\n \"@supabase/postgres-js\",\n \"core-js\",\n \"parse-numeric-range\",\n \"use-sync-external-store\",\n \"use-sync-external-store/shim\",\n \"inline-style-prefixer\",\n \"@docsearch/react\",\n \"@algolia/autocomplete-core\",\n \"@algolia/autocomplete-plugin-algolia-insights\",\n \"@algolia/autocomplete-shared\",\n \"moti\"\n ];\n var depsToOptimize = [\n ...needsInterop,\n \"fast-xml-parser\",\n \"set-cookie-parser\",\n \"ipaddr.js\",\n \"cross-fetch\",\n \"pg\",\n \"react-native-svg\",\n \"react-native-screens\",\n \"ws\",\n \"lodash\",\n // added these when using a worker env\n \"reading-time\",\n \"mdx-bundler/client\",\n \"gray-matter\",\n \"glob\",\n \"memoize-one\",\n \"css-in-js-utils\",\n \"hyphenate-style-name\",\n \"use-sync-external-store\",\n \"react-native-reanimated\",\n // uses .web.js extensions\n \"@react-navigation/core\",\n \"@react-navigation/native\",\n \"@react-navigation/elements\",\n \"@react-navigation/bottom-tabs\",\n \"@react-navigation/native-stack\",\n \"one\",\n \"one/drawer\",\n // one's own copy, by alias: prebundled with one so both share one context\n \"react-native-safe-area-context\",\n \"styleq\",\n \"fbjs\",\n \"@vxrn/universal-color-scheme\",\n \"@vxrn/color-scheme\",\n \"requires-port\",\n \"querystringify\",\n \"compare-versions\",\n \"strict-uri-encode\",\n \"decode-uri-component\",\n \"split-on-first\",\n \"filter-obj\",\n \"scheduler\",\n \"warn-once\",\n \"@radix-ui/react-compose-refs\",\n \"@radix-ui/react-slot\",\n \"nanoid\",\n \"swr\",\n \"swr/mutation\",\n \"one\",\n \"one/zero\",\n \"refractor/lang/tsx\",\n \"invariant\",\n \"tamagui/linear-gradient\",\n \"@react-native/normalize-color\",\n \"react-native\",\n \"@floating-ui/react\",\n \"@floating-ui/react-dom\",\n \"tamagui\",\n \"reforest\"\n ];\n if (mode === \"build\") {\n depsToOptimize.push(\"@babel/runtime\");\n }\n return {\n needsInterop,\n depsToOptimize,\n optimizeDeps: {\n include: depsToOptimize,\n exclude: [\n \"util\",\n \"@swc/wasm\",\n \"@swc/core-darwin-arm64\",\n \"moti/author\",\n \"@hot-updater/cli-tools\"\n ],\n needsInterop,\n // Enable lazy optimization - don't wait for all deps before starting server\n // This allows browser to process requests in parallel for faster initial load\n holdUntilCrawlEnd: false,\n rolldownOptions: {\n resolve: {\n extensions: webExtensions\n },\n // expo reads its platform from this constant, which babel-preset-expo\n // inlines during transform. a pre-bundled dep never goes through babel,\n // so the constant has to be defined here or it reads as undefined and\n // every expo module in a client chunk takes its native branch. expo's\n // dev HMR client is the one that bites: setupHMR calls\n // HMRClient.setup({ isEnabled: true }), the web form, and the native\n // branch asserts a string platform, so the whole client fails to\n // initialize and every route renders blank. rolldown takes define under\n // `transform`, and vite's dep optimizer merges that one key into its own\n // define; a top-level `define` is typed `never` and is rejected outright.\n transform: {\n define: {\n \"process.env.EXPO_OS\": '\"web\"'\n }\n },\n // some packages ship JSX in .js files (e.g., react-native-css-interop/dist/doctor.js).\n // .ts/.tsx must be declared too. when es-module-lexer can't read a dep entry,\n // vite's extractExportsData retries it as `moduleTypes[extname] || 'jsx'`, and\n // lexer always fails on TS syntax, so an undeclared .ts entry gets re-parsed as\n // JSX and dies on the first inline type specifier (`import { type Foo }`).\n moduleTypes: {\n \".js\": \"jsx\",\n \".ts\": \"ts\",\n \".tsx\": \"tsx\"\n },\n // react-native packages import native-only exports (TurboModuleRegistry etc.)\n // from react-native, which is aliased to react-native-web on web. react-native-web\n // doesn't export these, so rolldown would error. shimMissingExports creates\n // undefined shims instead, matching esbuild's lenient behavior.\n shimMissingExports: true\n }\n }\n };\n}\nexport {\n getOptimizeDeps\n};\n//# sourceMappingURL=getOptimizeDeps.js.map\n"],"mappings":";;;AACA,SAAS,gBAAgB,MAAM;CAC7B,IAAI,eAAe;EACjB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,IAAI,iBAAiB;EACnB,GAAG;EACH;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,IAAI,SAAS,SAAS;EACpB,eAAe,KAAK,gBAAgB;CACtC;CACA,OAAO;EACL;EACA;EACA,cAAc;GACZ,SAAS;GACT,SAAS;IACP;IACA;IACA;IACA;IACA;GACF;GACA;GAGA,mBAAmB;GACnB,iBAAiB;IACf,SAAS,EACP,YAAY,cACd;IAWA,WAAW,EACT,QAAQ,EACN,uBAAuB,UACzB,EACF;IAMA,aAAa;KACX,OAAO;KACP,OAAO;KACP,QAAQ;IACV;IAKA,oBAAoB;GACtB;EACF;CACF;AACF"}
@@ -39,6 +39,19 @@ async function getViteServerConfig(config, userViteConfig) {
39
39
  ----
40
40
  `);
41
41
  }
42
+ if (typeof serverConfig.server?.hmr === "object") {
43
+ for (const key of [
44
+ "protocol",
45
+ "host",
46
+ "port",
47
+ "path",
48
+ "clientPort",
49
+ "timeout",
50
+ "server"
51
+ ]) {
52
+ delete serverConfig.server.hmr[key];
53
+ }
54
+ }
42
55
  return serverConfig;
43
56
  }
44
57
 
@@ -1 +1 @@
1
- {"version":3,"file":"getViteServerConfig.js","names":[],"sources":["config/getViteServerConfig.js"],"sourcesContent":["import { mergeConfig } from \"vite\";\nimport { getBaseViteConfigWithPlugins } from \"./getBaseViteConfigWithPlugins\";\nimport { getOptimizeDeps } from \"./getOptimizeDeps\";\nimport { mergeUserConfig } from \"./mergeUserConfig\";\nimport { getReactNativePlugins } from \"./getReactNativePlugins\";\nimport { getAdditionalViteConfig } from \"./getAdditionalViteConfig\";\nasync function getViteServerConfig(config, userViteConfig) {\n const { root, server } = config;\n const { optimizeDeps } = getOptimizeDeps(\"serve\");\n let serverConfig = mergeConfig(\n await getBaseViteConfigWithPlugins(config),\n mergeConfig(getAdditionalViteConfig(), {\n plugins: [...getReactNativePlugins(config)],\n server: {\n // vite 8.1 deprecated server.hmr.* in favor of server.ws.*\n ws: {\n path: \"/__vxrnhmr\"\n },\n host: server.host,\n https: server.https,\n port: server.port\n },\n root\n })\n );\n const rerouteNoExternalConfig = userViteConfig?.ssr?.noExternal === true;\n if (rerouteNoExternalConfig) {\n delete userViteConfig.ssr.noExternal;\n }\n const { plugins, ...rest } = userViteConfig || {};\n const mergableUserConf = {\n ...rest\n };\n serverConfig = mergeUserConfig(optimizeDeps, serverConfig, mergableUserConf);\n serverConfig.server = {\n ...serverConfig.server,\n host: server.host,\n https: server.https,\n port: server.port\n };\n if (rerouteNoExternalConfig) {\n serverConfig.ssr.noExternal = true;\n }\n if (process.env.DEBUG) {\n console.debug(\"merged config:\", JSON.stringify(serverConfig, null, 2), `\n----\n`);\n }\n return serverConfig;\n}\nexport {\n getViteServerConfig\n};\n//# sourceMappingURL=getViteServerConfig.js.map\n"],"mappings":";;;;;;;;AAMA,eAAe,oBAAoB,QAAQ,gBAAgB;CACzD,MAAM,EAAE,MAAM,WAAW;CACzB,MAAM,EAAE,iBAAiB,gBAAgB,OAAO;CAChD,IAAI,eAAe,YACjB,MAAM,6BAA6B,MAAM,GACzC,YAAY,wBAAwB,GAAG;EACrC,SAAS,CAAC,GAAG,sBAAsB,MAAM,CAAC;EAC1C,QAAQ;GAEN,IAAI,EACF,MAAM,aACR;GACA,MAAM,OAAO;GACb,OAAO,OAAO;GACd,MAAM,OAAO;EACf;EACA;CACF,CAAC,CACH;CACA,MAAM,0BAA0B,gBAAgB,KAAK,eAAe;CACpE,IAAI,yBAAyB;EAC3B,OAAO,eAAe,IAAI;CAC5B;CACA,MAAM,EAAE,SAAS,GAAG,SAAS,kBAAkB,CAAC;CAChD,MAAM,mBAAmB,EACvB,GAAG,KACL;CACA,eAAe,gBAAgB,cAAc,cAAc,gBAAgB;CAC3E,aAAa,SAAS;EACpB,GAAG,aAAa;EAChB,MAAM,OAAO;EACb,OAAO,OAAO;EACd,MAAM,OAAO;CACf;CACA,IAAI,yBAAyB;EAC3B,aAAa,IAAI,aAAa;CAChC;CACA,IAAI,QAAQ,IAAI,OAAO;EACrB,QAAQ,MAAM,kBAAkB,KAAK,UAAU,cAAc,MAAM,CAAC,GAAG;;CAE1E;CACC;CACA,OAAO;AACT"}
1
+ {"version":3,"file":"getViteServerConfig.js","names":[],"sources":["config/getViteServerConfig.js"],"sourcesContent":["import { mergeConfig } from \"vite\";\nimport { getBaseViteConfigWithPlugins } from \"./getBaseViteConfigWithPlugins\";\nimport { getOptimizeDeps } from \"./getOptimizeDeps\";\nimport { mergeUserConfig } from \"./mergeUserConfig\";\nimport { getReactNativePlugins } from \"./getReactNativePlugins\";\nimport { getAdditionalViteConfig } from \"./getAdditionalViteConfig\";\nasync function getViteServerConfig(config, userViteConfig) {\n const { root, server } = config;\n const { optimizeDeps } = getOptimizeDeps(\"serve\");\n let serverConfig = mergeConfig(\n await getBaseViteConfigWithPlugins(config),\n mergeConfig(getAdditionalViteConfig(), {\n plugins: [...getReactNativePlugins(config)],\n server: {\n // vite 8.1 deprecated server.hmr.* in favor of server.ws.*\n ws: {\n path: \"/__vxrnhmr\"\n },\n host: server.host,\n https: server.https,\n port: server.port\n },\n root\n })\n );\n const rerouteNoExternalConfig = userViteConfig?.ssr?.noExternal === true;\n if (rerouteNoExternalConfig) {\n delete userViteConfig.ssr.noExternal;\n }\n const { plugins, ...rest } = userViteConfig || {};\n const mergableUserConf = {\n ...rest\n };\n serverConfig = mergeUserConfig(optimizeDeps, serverConfig, mergableUserConf);\n serverConfig.server = {\n ...serverConfig.server,\n host: server.host,\n https: server.https,\n port: server.port\n };\n if (rerouteNoExternalConfig) {\n serverConfig.ssr.noExternal = true;\n }\n if (process.env.DEBUG) {\n console.debug(\"merged config:\", JSON.stringify(serverConfig, null, 2), `\n----\n`);\n }\n if (typeof serverConfig.server?.hmr === \"object\") {\n for (const key of [\n \"protocol\",\n \"host\",\n \"port\",\n \"path\",\n \"clientPort\",\n \"timeout\",\n \"server\"\n ]) {\n delete serverConfig.server.hmr[key];\n }\n }\n return serverConfig;\n}\nexport {\n getViteServerConfig\n};\n//# sourceMappingURL=getViteServerConfig.js.map\n"],"mappings":";;;;;;;;AAMA,eAAe,oBAAoB,QAAQ,gBAAgB;CACzD,MAAM,EAAE,MAAM,WAAW;CACzB,MAAM,EAAE,iBAAiB,gBAAgB,OAAO;CAChD,IAAI,eAAe,YACjB,MAAM,6BAA6B,MAAM,GACzC,YAAY,wBAAwB,GAAG;EACrC,SAAS,CAAC,GAAG,sBAAsB,MAAM,CAAC;EAC1C,QAAQ;GAEN,IAAI,EACF,MAAM,aACR;GACA,MAAM,OAAO;GACb,OAAO,OAAO;GACd,MAAM,OAAO;EACf;EACA;CACF,CAAC,CACH;CACA,MAAM,0BAA0B,gBAAgB,KAAK,eAAe;CACpE,IAAI,yBAAyB;EAC3B,OAAO,eAAe,IAAI;CAC5B;CACA,MAAM,EAAE,SAAS,GAAG,SAAS,kBAAkB,CAAC;CAChD,MAAM,mBAAmB,EACvB,GAAG,KACL;CACA,eAAe,gBAAgB,cAAc,cAAc,gBAAgB;CAC3E,aAAa,SAAS;EACpB,GAAG,aAAa;EAChB,MAAM,OAAO;EACb,OAAO,OAAO;EACd,MAAM,OAAO;CACf;CACA,IAAI,yBAAyB;EAC3B,aAAa,IAAI,aAAa;CAChC;CACA,IAAI,QAAQ,IAAI,OAAO;EACrB,QAAQ,MAAM,kBAAkB,KAAK,UAAU,cAAc,MAAM,CAAC,GAAG;;CAE1E;CACC;CACA,IAAI,OAAO,aAAa,QAAQ,QAAQ,UAAU;EAChD,KAAK,MAAM,OAAO;GAChB;GACA;GACA;GACA;GACA;GACA;GACA;EACF,GAAG;GACD,OAAO,aAAa,OAAO,IAAI;EACjC;CACF;CACA,OAAO;AACT"}
@@ -6,7 +6,7 @@ import { getReactNativePlugins } from "./getReactNativePlugins.native.js";
6
6
  import { getAdditionalViteConfig } from "./getAdditionalViteConfig.native.js";
7
7
 
8
8
  async function getViteServerConfig(config, userViteConfig) {
9
- var _userViteConfig_ssr;
9
+ var _userViteConfig_ssr, _serverConfig_server;
10
10
  var { root, server } = config;
11
11
  var { optimizeDeps } = getOptimizeDeps("serve");
12
12
  var serverConfig = mergeConfig(await getBaseViteConfigWithPlugins(config), mergeConfig(getAdditionalViteConfig(), {
@@ -40,6 +40,20 @@ async function getViteServerConfig(config, userViteConfig) {
40
40
  ----
41
41
  `);
42
42
  }
43
+ if (typeof ((_serverConfig_server = serverConfig.server) === null || _serverConfig_server === void 0 ? void 0 : _serverConfig_server.hmr) === "object") {
44
+ for (var _i = 0, _iter = [
45
+ "protocol",
46
+ "host",
47
+ "port",
48
+ "path",
49
+ "clientPort",
50
+ "timeout",
51
+ "server"
52
+ ]; _i < _iter.length; _i++) {
53
+ var key = _iter[_i];
54
+ delete serverConfig.server.hmr[key];
55
+ }
56
+ }
43
57
  return serverConfig;
44
58
  }
45
59
 
@@ -1 +1 @@
1
- {"version":3,"file":"getViteServerConfig.native.js","names":[],"sources":["config/getViteServerConfig.native.js"],"sourcesContent":["import { mergeConfig } from \"vite\";\nimport { getBaseViteConfigWithPlugins } from \"./getBaseViteConfigWithPlugins\";\nimport { getOptimizeDeps } from \"./getOptimizeDeps\";\nimport { mergeUserConfig } from \"./mergeUserConfig\";\nimport { getReactNativePlugins } from \"./getReactNativePlugins\";\nimport { getAdditionalViteConfig } from \"./getAdditionalViteConfig\";\nasync function getViteServerConfig(config, userViteConfig) {\n var _userViteConfig_ssr;\n var { root, server } = config;\n var { optimizeDeps } = getOptimizeDeps(\"serve\");\n var serverConfig = mergeConfig(await getBaseViteConfigWithPlugins(config), mergeConfig(getAdditionalViteConfig(), {\n plugins: [\n ...getReactNativePlugins(config)\n ],\n server: {\n // vite 8.1 deprecated server.hmr.* in favor of server.ws.*\n ws: {\n path: \"/__vxrnhmr\"\n },\n host: server.host,\n https: server.https,\n port: server.port\n },\n root\n }));\n var rerouteNoExternalConfig = (userViteConfig === null || userViteConfig === void 0 ? void 0 : (_userViteConfig_ssr = userViteConfig.ssr) === null || _userViteConfig_ssr === void 0 ? void 0 : _userViteConfig_ssr.noExternal) === true;\n if (rerouteNoExternalConfig) {\n delete userViteConfig.ssr.noExternal;\n }\n var { plugins, ...rest } = userViteConfig || {};\n var mergableUserConf = {\n ...rest\n };\n serverConfig = mergeUserConfig(optimizeDeps, serverConfig, mergableUserConf);\n serverConfig.server = {\n ...serverConfig.server,\n host: server.host,\n https: server.https,\n port: server.port\n };\n if (rerouteNoExternalConfig) {\n serverConfig.ssr.noExternal = true;\n }\n if (process.env.DEBUG) {\n console.debug(\"merged config:\", JSON.stringify(serverConfig, null, 2), `\n----\n`);\n }\n return serverConfig;\n}\nexport {\n getViteServerConfig\n};\n//# sourceMappingURL=getViteServerConfig.js.map\n"],"mappings":";;;;;;;;AAMA,eAAe,oBAAoB,QAAQ,gBAAgB;CACzD,IAAI;CACJ,IAAI,EAAE,MAAM,WAAW;CACvB,IAAI,EAAE,iBAAiB,gBAAgB,OAAO;CAC9C,IAAI,eAAe,YAAY,MAAM,6BAA6B,MAAM,GAAG,YAAY,wBAAwB,GAAG;EAChH,SAAS,CACP,GAAG,sBAAsB,MAAM,CACjC;EACA,QAAQ;GAEN,IAAI,EACF,MAAM,aACR;GACA,MAAM,OAAO;GACb,OAAO,OAAO;GACd,MAAM,OAAO;EACf;EACA;CACF,CAAC,CAAC;CACF,IAAI,2BAA2B,mBAAmB,QAAQ,mBAAmB,KAAK,IAAI,KAAK,KAAK,sBAAsB,eAAe,SAAS,QAAQ,wBAAwB,KAAK,IAAI,KAAK,IAAI,oBAAoB,gBAAgB;CACpO,IAAI,yBAAyB;EAC3B,OAAO,eAAe,IAAI;CAC5B;CACA,IAAI,EAAE,SAAS,GAAG,SAAS,kBAAkB,CAAC;CAC9C,IAAI,mBAAmB,EACrB,GAAG,KACL;CACA,eAAe,gBAAgB,cAAc,cAAc,gBAAgB;CAC3E,aAAa,SAAS;EACpB,GAAG,aAAa;EAChB,MAAM,OAAO;EACb,OAAO,OAAO;EACd,MAAM,OAAO;CACf;CACA,IAAI,yBAAyB;EAC3B,aAAa,IAAI,aAAa;CAChC;CACA,IAAI,QAAQ,IAAI,OAAO;EACrB,QAAQ,MAAM,kBAAkB,KAAK,UAAU,cAAc,MAAM,CAAC,GAAG;;CAE1E;CACC;CACA,OAAO;AACT"}
1
+ {"version":3,"file":"getViteServerConfig.native.js","names":[],"sources":["config/getViteServerConfig.native.js"],"sourcesContent":["import { mergeConfig } from \"vite\";\nimport { getBaseViteConfigWithPlugins } from \"./getBaseViteConfigWithPlugins\";\nimport { getOptimizeDeps } from \"./getOptimizeDeps\";\nimport { mergeUserConfig } from \"./mergeUserConfig\";\nimport { getReactNativePlugins } from \"./getReactNativePlugins\";\nimport { getAdditionalViteConfig } from \"./getAdditionalViteConfig\";\nasync function getViteServerConfig(config, userViteConfig) {\n var _userViteConfig_ssr, _serverConfig_server;\n var { root, server } = config;\n var { optimizeDeps } = getOptimizeDeps(\"serve\");\n var serverConfig = mergeConfig(await getBaseViteConfigWithPlugins(config), mergeConfig(getAdditionalViteConfig(), {\n plugins: [\n ...getReactNativePlugins(config)\n ],\n server: {\n // vite 8.1 deprecated server.hmr.* in favor of server.ws.*\n ws: {\n path: \"/__vxrnhmr\"\n },\n host: server.host,\n https: server.https,\n port: server.port\n },\n root\n }));\n var rerouteNoExternalConfig = (userViteConfig === null || userViteConfig === void 0 ? void 0 : (_userViteConfig_ssr = userViteConfig.ssr) === null || _userViteConfig_ssr === void 0 ? void 0 : _userViteConfig_ssr.noExternal) === true;\n if (rerouteNoExternalConfig) {\n delete userViteConfig.ssr.noExternal;\n }\n var { plugins, ...rest } = userViteConfig || {};\n var mergableUserConf = {\n ...rest\n };\n serverConfig = mergeUserConfig(optimizeDeps, serverConfig, mergableUserConf);\n serverConfig.server = {\n ...serverConfig.server,\n host: server.host,\n https: server.https,\n port: server.port\n };\n if (rerouteNoExternalConfig) {\n serverConfig.ssr.noExternal = true;\n }\n if (process.env.DEBUG) {\n console.debug(\"merged config:\", JSON.stringify(serverConfig, null, 2), `\n----\n`);\n }\n if (typeof ((_serverConfig_server = serverConfig.server) === null || _serverConfig_server === void 0 ? void 0 : _serverConfig_server.hmr) === \"object\") {\n for (var _i = 0, _iter = [\n \"protocol\",\n \"host\",\n \"port\",\n \"path\",\n \"clientPort\",\n \"timeout\",\n \"server\"\n ]; _i < _iter.length; _i++) {\n var key = _iter[_i];\n delete serverConfig.server.hmr[key];\n }\n }\n return serverConfig;\n}\nexport {\n getViteServerConfig\n};\n//# sourceMappingURL=getViteServerConfig.js.map\n"],"mappings":";;;;;;;;AAMA,eAAe,oBAAoB,QAAQ,gBAAgB;CACzD,IAAI,qBAAqB;CACzB,IAAI,EAAE,MAAM,WAAW;CACvB,IAAI,EAAE,iBAAiB,gBAAgB,OAAO;CAC9C,IAAI,eAAe,YAAY,MAAM,6BAA6B,MAAM,GAAG,YAAY,wBAAwB,GAAG;EAChH,SAAS,CACP,GAAG,sBAAsB,MAAM,CACjC;EACA,QAAQ;GAEN,IAAI,EACF,MAAM,aACR;GACA,MAAM,OAAO;GACb,OAAO,OAAO;GACd,MAAM,OAAO;EACf;EACA;CACF,CAAC,CAAC;CACF,IAAI,2BAA2B,mBAAmB,QAAQ,mBAAmB,KAAK,IAAI,KAAK,KAAK,sBAAsB,eAAe,SAAS,QAAQ,wBAAwB,KAAK,IAAI,KAAK,IAAI,oBAAoB,gBAAgB;CACpO,IAAI,yBAAyB;EAC3B,OAAO,eAAe,IAAI;CAC5B;CACA,IAAI,EAAE,SAAS,GAAG,SAAS,kBAAkB,CAAC;CAC9C,IAAI,mBAAmB,EACrB,GAAG,KACL;CACA,eAAe,gBAAgB,cAAc,cAAc,gBAAgB;CAC3E,aAAa,SAAS;EACpB,GAAG,aAAa;EAChB,MAAM,OAAO;EACb,OAAO,OAAO;EACd,MAAM,OAAO;CACf;CACA,IAAI,yBAAyB;EAC3B,aAAa,IAAI,aAAa;CAChC;CACA,IAAI,QAAQ,IAAI,OAAO;EACrB,QAAQ,MAAM,kBAAkB,KAAK,UAAU,cAAc,MAAM,CAAC,GAAG;;CAE1E;CACC;CACA,IAAI,SAAS,uBAAuB,aAAa,YAAY,QAAQ,yBAAyB,KAAK,IAAI,KAAK,IAAI,qBAAqB,SAAS,UAAU;EACtJ,KAAK,IAAI,KAAK,GAAG,QAAQ;GACvB;GACA;GACA;GACA;GACA;GACA;GACA;EACF,GAAG,KAAK,MAAM,QAAQ,MAAM;GAC1B,IAAI,MAAM,MAAM;GAChB,OAAO,aAAa,OAAO,IAAI;EACjC;CACF;CACA,OAAO;AACT"}
@@ -7,6 +7,8 @@ const DEFAULT_ASSET_EXTS = [
7
7
  "psd",
8
8
  "svg",
9
9
  "webp",
10
+ "lottie",
11
+ "glb",
10
12
  "m4v",
11
13
  "mov",
12
14
  "mp4",
@@ -26,6 +28,8 @@ const DEFAULT_ASSET_EXTS = [
26
28
  "yml",
27
29
  "otf",
28
30
  "ttf",
31
+ "woff",
32
+ "woff2",
29
33
  "zip"
30
34
  ];
31
35
 
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","names":[],"sources":["constants/defaults.js"],"sourcesContent":["const DEFAULT_ASSET_EXTS = [\n // Image formats\n \"bmp\",\n \"gif\",\n \"jpg\",\n \"jpeg\",\n \"png\",\n \"psd\",\n \"svg\",\n \"webp\",\n // Video formats\n \"m4v\",\n \"mov\",\n \"mp4\",\n \"mpeg\",\n \"mpg\",\n \"webm\",\n // Audio formats\n \"aac\",\n \"aiff\",\n \"caf\",\n \"m4a\",\n \"mp3\",\n \"wav\",\n // Document formats\n \"html\",\n \"pdf\",\n \"txt\",\n \"yaml\",\n \"yml\",\n // Font formats\n \"otf\",\n \"ttf\",\n // Archives (virtual files)\n \"zip\"\n];\nexport {\n DEFAULT_ASSET_EXTS\n};\n//# sourceMappingURL=defaults.js.map\n"],"mappings":";AAAA,MAAM,qBAAqB;CAEzB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;CACA;CACA;CAEA;CACA;CAEA;AACF"}
1
+ {"version":3,"file":"defaults.js","names":[],"sources":["constants/defaults.js"],"sourcesContent":["const DEFAULT_ASSET_EXTS = [\n // Image formats\n \"bmp\",\n \"gif\",\n \"jpg\",\n \"jpeg\",\n \"png\",\n \"psd\",\n \"svg\",\n \"webp\",\n // dotLottie animation archives\n \"lottie\",\n // binary gltf models\n \"glb\",\n // Video formats\n \"m4v\",\n \"mov\",\n \"mp4\",\n \"mpeg\",\n \"mpg\",\n \"webm\",\n // Audio formats\n \"aac\",\n \"aiff\",\n \"caf\",\n \"m4a\",\n \"mp3\",\n \"wav\",\n // Document formats\n \"html\",\n \"pdf\",\n \"txt\",\n \"yaml\",\n \"yml\",\n // Font formats\n \"otf\",\n \"ttf\",\n \"woff\",\n \"woff2\",\n // Archives (virtual files)\n \"zip\"\n];\nexport {\n DEFAULT_ASSET_EXTS\n};\n//# sourceMappingURL=defaults.js.map\n"],"mappings":";AAAA,MAAM,qBAAqB;CAEzB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CAEA;CAEA;CAEA;CACA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;CACA;CAEA;AACF"}
@@ -7,6 +7,8 @@ var DEFAULT_ASSET_EXTS = [
7
7
  "psd",
8
8
  "svg",
9
9
  "webp",
10
+ "lottie",
11
+ "glb",
10
12
  "m4v",
11
13
  "mov",
12
14
  "mp4",
@@ -26,6 +28,8 @@ var DEFAULT_ASSET_EXTS = [
26
28
  "yml",
27
29
  "otf",
28
30
  "ttf",
31
+ "woff",
32
+ "woff2",
29
33
  "zip"
30
34
  ];
31
35
 
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.native.js","names":[],"sources":["constants/defaults.native.js"],"sourcesContent":["var DEFAULT_ASSET_EXTS = [\n // Image formats\n \"bmp\",\n \"gif\",\n \"jpg\",\n \"jpeg\",\n \"png\",\n \"psd\",\n \"svg\",\n \"webp\",\n // Video formats\n \"m4v\",\n \"mov\",\n \"mp4\",\n \"mpeg\",\n \"mpg\",\n \"webm\",\n // Audio formats\n \"aac\",\n \"aiff\",\n \"caf\",\n \"m4a\",\n \"mp3\",\n \"wav\",\n // Document formats\n \"html\",\n \"pdf\",\n \"txt\",\n \"yaml\",\n \"yml\",\n // Font formats\n \"otf\",\n \"ttf\",\n // Archives (virtual files)\n \"zip\"\n];\nexport {\n DEFAULT_ASSET_EXTS\n};\n//# sourceMappingURL=defaults.js.map\n"],"mappings":";AAAA,IAAI,qBAAqB;CAEvB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;CACA;CACA;CAEA;CACA;CAEA;AACF"}
1
+ {"version":3,"file":"defaults.native.js","names":[],"sources":["constants/defaults.native.js"],"sourcesContent":["var DEFAULT_ASSET_EXTS = [\n // Image formats\n \"bmp\",\n \"gif\",\n \"jpg\",\n \"jpeg\",\n \"png\",\n \"psd\",\n \"svg\",\n \"webp\",\n // dotLottie animation archives\n \"lottie\",\n // binary gltf models\n \"glb\",\n // Video formats\n \"m4v\",\n \"mov\",\n \"mp4\",\n \"mpeg\",\n \"mpg\",\n \"webm\",\n // Audio formats\n \"aac\",\n \"aiff\",\n \"caf\",\n \"m4a\",\n \"mp3\",\n \"wav\",\n // Document formats\n \"html\",\n \"pdf\",\n \"txt\",\n \"yaml\",\n \"yml\",\n // Font formats\n \"otf\",\n \"ttf\",\n \"woff\",\n \"woff2\",\n // Archives (virtual files)\n \"zip\"\n];\nexport {\n DEFAULT_ASSET_EXTS\n};\n//# sourceMappingURL=defaults.js.map\n"],"mappings":";AAAA,IAAI,qBAAqB;CAEvB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CAEA;CAEA;CAEA;CACA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;CACA;CAEA;AACF"}
@@ -22,7 +22,7 @@ var disableOptimizationConfig = {
22
22
  }
23
23
  }
24
24
  };
25
- var build = async function(optionsIn) {
25
+ var build = async function build2(optionsIn) {
26
26
  var buildArgs = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
27
27
  var _optionsIn_skipEnv, _ref;
28
28
  var _userViteConfig_build, _userViteConfig_ssr, _options_build, _webConfig_deploy;
@@ -1 +1 @@
1
- {"version":3,"file":"build.native.js","names":["viteBuild"],"sources":["exports/build.native.js"],"sourcesContent":["import FSExtra from \"fs-extra\";\nimport { rm } from \"fs/promises\";\nimport { sep } from \"path\";\nimport { loadConfigFromFile, mergeConfig, build as viteBuild } from \"vite\";\nimport { getBaseViteConfigWithPlugins } from \"../config/getBaseViteConfigWithPlugins\";\nimport { getOptimizeDeps } from \"../config/getOptimizeDeps\";\nimport { fillOptions } from \"../config/getOptionsFilled\";\nimport { mergeUserConfig } from \"../config/mergeUserConfig\";\nimport { getServerCJSSetting, getServerEntry } from \"../utils/getServerEntry\";\nimport { applyBuiltInPatches } from \"../utils/patches\";\nimport { loadEnv } from \"./loadEnv\";\nvar { existsSync } = FSExtra;\nError.stackTraceLimit = Number.POSITIVE_INFINITY;\nvar disableOptimizationConfig = {\n optimizeDeps: {},\n build: {\n minify: false,\n rolldownOptions: {\n treeshake: false,\n output: {\n minifyInternalExports: false\n }\n }\n }\n};\nvar build = async function(optionsIn) {\n var buildArgs = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};\n var _optionsIn_skipEnv, _ref;\n var _userViteConfig_build, _userViteConfig_ssr, _options_build, _webConfig_deploy;\n process.env.IS_VXRN_CLI = \"true\";\n if (!process.env.NODE_ENV) {\n process.env.NODE_ENV = \"production\";\n } else if (process.env.NODE_ENV !== \"production\") {\n console.warn(`\n \\u26A0\\uFE0F Warning: NODE_ENV is set to \"${process.env.NODE_ENV}\" (builds default to \"production\")\n`);\n }\n var skipEnv = (_optionsIn_skipEnv = optionsIn.skipEnv) !== null && _optionsIn_skipEnv !== void 0 ? _optionsIn_skipEnv : false;\n var [envResult, options, userViteConfig] = await Promise.all([\n skipEnv ? {\n serverEnv: {},\n clientEnv: {},\n clientEnvDefine: {}\n } : loadEnv(\"production\"),\n fillOptions(optionsIn, {\n mode: \"prod\"\n }),\n loadConfigFromFile({\n command: \"build\",\n mode: \"prod\"\n }).then(function(_) {\n return _ === null || _ === void 0 ? void 0 : _.config;\n })\n ]);\n if (!process.env.ONE_SERVER_URL) {\n console.warn(`\\u26A0\\uFE0F No ONE_SERVER_URL environment set, set it in your .env to your target deploy URL`);\n }\n var processEnvDefines = Object.fromEntries(Object.entries(envResult.serverEnv).map(function(param) {\n var [key, value] = param;\n return [\n `process.env.${key}`,\n JSON.stringify(value)\n ];\n }));\n await applyBuiltInPatches(options).catch(function(err) {\n console.error(`\n \\u{1F97A} error applying built-in patches`, err);\n });\n var outDir = (_ref = userViteConfig === null || userViteConfig === void 0 ? void 0 : (_userViteConfig_build = userViteConfig.build) === null || _userViteConfig_build === void 0 ? void 0 : _userViteConfig_build.outDir) !== null && _ref !== void 0 ? _ref : \"dist\";\n await Promise.all([\n (async function() {\n if (existsSync(outDir)) {\n await rm(outDir, {\n recursive: true,\n force: true\n });\n }\n })()\n ]);\n if (buildArgs.platform === \"ios\" || buildArgs.platform === \"android\") {\n var { buildBundle } = await import(\"../rn-commands/bundle/buildBundle\");\n return buildBundle(\n [],\n // only an entry the app named: without one the bundle starts at the\n // generated route entry, as the xcode bundle phase does. the filled\n // default (./src/entry-native.tsx) exists only in plain vxrn apps.\n {\n root: options.root,\n vxrnEntries: optionsIn.entries\n },\n {\n platform: buildArgs.platform,\n bundleOutput: `${outDir}${sep}${buildArgs.platform}.js`,\n dev: false,\n entryFile: \"\",\n resetCache: true,\n resetGlobalCache: true,\n sourcemapUseAbsolutePath: true,\n verbose: false,\n unstableTransformProfile: \"default\"\n }\n );\n }\n var { optimizeDeps } = getOptimizeDeps(\"build\");\n var { rolldownOptions: optimizeDepsRolldownOptions, ...optimizeDepsWithoutRolldown } = optimizeDeps;\n var webBuildConfig = mergeConfig(await getBaseViteConfigWithPlugins({\n ...options,\n mode: \"production\"\n }), {\n plugins: globalThis.__vxrnAddWebPluginsProd,\n clearScreen: false,\n configFile: false,\n ...skipEnv && {\n envFile: false\n },\n // rolldownOptions goes on environments.client to avoid Vite compat-proxy bug\n optimizeDeps: optimizeDepsWithoutRolldown,\n environments: {\n client: {\n optimizeDeps: {\n rolldownOptions: optimizeDepsRolldownOptions\n }\n }\n },\n logLevel: \"warn\",\n build: {\n rolldownOptions: {\n // react-native packages import native-only exports (codegenNativeComponent etc.)\n // from react-native, which is aliased to react-native-web on web. react-native-web\n // doesn't export these, so rolldown would error. shimMissingExports creates\n // undefined shims instead, matching esbuild's lenient behavior.\n shimMissingExports: true,\n onwarn(warning, defaultHandler) {\n if (warning.code === \"MODULE_LEVEL_DIRECTIVE\" && warning.message.includes(\"use client\")) {\n return;\n }\n if (warning.code === \"SOURCEMAP_ERROR\" && warning.message.includes(`Can't resolve original location of error.`)) {\n return;\n }\n if (warning.code === \"EVAL\") {\n warning.message = warning.message.replace(/(\\.+\\/){0,}node_modules/, \"node_modules\");\n }\n if (warning.code === \"INVALID_ANNOTATION\") {\n return;\n }\n defaultHandler(warning);\n }\n }\n }\n });\n var rerouteNoExternalConfig = (userViteConfig === null || userViteConfig === void 0 ? void 0 : (_userViteConfig_ssr = userViteConfig.ssr) === null || _userViteConfig_ssr === void 0 ? void 0 : _userViteConfig_ssr.noExternal) === true;\n if (rerouteNoExternalConfig) {\n delete userViteConfig.ssr.noExternal;\n }\n webBuildConfig = mergeUserConfig(optimizeDeps, webBuildConfig, userViteConfig);\n var excludeAPIAndMiddlewareRoutesPlugin = {\n enforce: \"pre\",\n name: \"omit-api-routes\",\n transform: {\n order: \"pre\",\n // both patterns as one rust-side filter, so only api/middleware files\n // cross into js instead of every module in the client bundle\n filter: {\n id: /(?:\\+api|_middleware)\\.tsx?$/\n },\n handler() {\n return ``;\n }\n }\n };\n var clientOutput;\n var clientBuildPromise;\n if (buildArgs.step !== \"generate\") {\n var _options_build1;\n var clientBuildConfig = mergeConfig(webBuildConfig, {\n plugins: [\n excludeAPIAndMiddlewareRoutesPlugin\n ],\n define: {\n \"process.env.VITE_ENVIRONMENT\": '\"client\"',\n ...process.env.ONE_SERVER_URL && {\n \"process.env.ONE_SERVER_URL\": JSON.stringify(process.env.ONE_SERVER_URL)\n }\n },\n build: {\n ssrManifest: true,\n outDir: `${outDir}/client`,\n sourcemap: false,\n manifest: true,\n rolldownOptions: {\n input: [\n \"virtual:one-entry\"\n ],\n output: {\n codeSplitting: {\n // merge tiny chunks to reduce HTTP requests and total chunk count\n minSize: 42e3\n }\n }\n }\n }\n });\n if (process.env.VXRN_DISABLE_PROD_OPTIMIZATION) {\n clientBuildConfig = mergeConfig(clientBuildConfig, disableOptimizationConfig);\n }\n console.info(`\n \\u{1F528} build ${((_options_build1 = options.build) === null || _options_build1 === void 0 ? void 0 : _options_build1.server) !== false ? \"client + server\" : \"client\"}\n`);\n clientBuildPromise = viteBuild(clientBuildConfig);\n }\n var serverOptions = (_options_build = options.build) === null || _options_build === void 0 ? void 0 : _options_build.server;\n var webConfig = optionsIn.web;\n var deployTarget = typeof (webConfig === null || webConfig === void 0 ? void 0 : webConfig.deploy) === \"string\" ? webConfig.deploy : webConfig === null || webConfig === void 0 ? void 0 : (_webConfig_deploy = webConfig.deploy) === null || _webConfig_deploy === void 0 ? void 0 : _webConfig_deploy.target;\n var isCloudflareDeploy = deployTarget === \"cloudflare\";\n var shouldOutputCJS = getServerCJSSetting(options);\n var isUnified = typeof serverOptions === \"object\" && serverOptions !== null && serverOptions.unified === true;\n var serverBuildConfig = mergeConfig(webBuildConfig, {\n plugins: [\n excludeAPIAndMiddlewareRoutesPlugin,\n ...globalThis.__vxrnAddWebPluginsProd\n ],\n define: {\n \"process.env.TAMAGUI_IS_SERVER\": '\"1\"',\n \"process.env.VITE_ENVIRONMENT\": '\"ssr\"',\n ...processEnvDefines,\n ...webBuildConfig.define\n },\n ssr: {\n ...isCloudflareDeploy && {\n target: \"webworker\"\n },\n noExternal: isUnified ? [\n \"react\",\n \"react-dom\"\n ] : true,\n optimizeDeps: optimizeDepsWithoutRolldown\n },\n environments: {\n ssr: {\n optimizeDeps: {\n rolldownOptions: optimizeDepsRolldownOptions\n }\n }\n },\n build: {\n // we want one big file of css\n cssCodeSplit: false,\n ssr: true,\n sourcemap: false,\n outDir: `${outDir}/server`,\n rolldownOptions: {\n treeshake: true,\n // fixes some weird issues with optimizing tamagui and other packages\n // external: (id) => {\n // if (serverExternals.has(id)) return true\n // return false\n // // return /^@tamagui/.test(id)\n // },\n input: [\n \"virtual:one-entry\"\n ],\n output: {\n ...isCloudflareDeploy && {\n codeSplitting: true\n },\n ...shouldOutputCJS && {\n format: \"cjs\",\n entryFileNames: \"[name].cjs\"\n }\n }\n }\n }\n });\n if (rerouteNoExternalConfig) {\n serverBuildConfig.ssr.noExternal = true;\n }\n var serverEntry = getServerEntry(options, outDir);\n var serverOutput;\n var clientManifest;\n var serverBuildPromise;\n if (serverOptions !== false) {\n var _optionsIn_build;\n if (!clientBuildPromise) {\n console.info(`\n \\u{1F528} build server\n`);\n }\n var userServerConf = (_optionsIn_build = optionsIn.build) === null || _optionsIn_build === void 0 ? void 0 : _optionsIn_build.server;\n var userServerBuildConf = typeof userServerConf === \"boolean\" ? null : userServerConf === null || userServerConf === void 0 ? void 0 : userServerConf.config;\n serverBuildPromise = viteBuild(userServerBuildConf ? mergeConfig(serverBuildConfig, userServerBuildConf) : serverBuildConfig);\n }\n if (clientBuildPromise && serverBuildPromise) {\n var [clientResult, serverResult] = await Promise.all([\n clientBuildPromise,\n serverBuildPromise\n ]);\n clientOutput = clientResult.output;\n serverOutput = serverResult.output;\n } else if (clientBuildPromise) {\n var clientResult1 = await clientBuildPromise;\n clientOutput = clientResult1.output;\n } else if (serverBuildPromise) {\n var serverResult1 = await serverBuildPromise;\n serverOutput = serverResult1.output;\n }\n if (serverOptions !== false) {\n clientManifest = await FSExtra.readJSON(`${outDir}/client/.vite/manifest.json`);\n var old = await FSExtra.readFile(serverEntry, \"utf-8\");\n await FSExtra.writeFile(serverEntry, old.replace(`import { hydrate as hydrate$1, unmountComponentAtNode, render as render$1 } from \"react-dom\";`, \"\").replace(`import ReactDOM__default, { render as render$2, unmountComponentAtNode as unmountComponentAtNode$1, hydrate as hydrate$1 } from \"react-dom\";`, 'import ReactDOM__default from \"react-dom\";'));\n }\n return {\n outDir,\n processEnvDefines,\n options,\n buildArgs,\n serverEntry,\n clientOutput,\n serverOutput,\n serverBuildConfig,\n webBuildConfig,\n clientManifest\n };\n};\nexport {\n build\n};\n//# sourceMappingURL=build.js.map\n"],"mappings":"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"}
1
+ {"version":3,"file":"build.native.js","names":["viteBuild"],"sources":["exports/build.native.js"],"sourcesContent":["import FSExtra from \"fs-extra\";\nimport { rm } from \"fs/promises\";\nimport { sep } from \"path\";\nimport { loadConfigFromFile, mergeConfig, build as viteBuild } from \"vite\";\nimport { getBaseViteConfigWithPlugins } from \"../config/getBaseViteConfigWithPlugins\";\nimport { getOptimizeDeps } from \"../config/getOptimizeDeps\";\nimport { fillOptions } from \"../config/getOptionsFilled\";\nimport { mergeUserConfig } from \"../config/mergeUserConfig\";\nimport { getServerCJSSetting, getServerEntry } from \"../utils/getServerEntry\";\nimport { applyBuiltInPatches } from \"../utils/patches\";\nimport { loadEnv } from \"./loadEnv\";\nvar { existsSync } = FSExtra;\nError.stackTraceLimit = Number.POSITIVE_INFINITY;\nvar disableOptimizationConfig = {\n optimizeDeps: {},\n build: {\n minify: false,\n rolldownOptions: {\n treeshake: false,\n output: {\n minifyInternalExports: false\n }\n }\n }\n};\nvar build = async function build2(optionsIn) {\n var buildArgs = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};\n var _optionsIn_skipEnv, _ref;\n var _userViteConfig_build, _userViteConfig_ssr, _options_build, _webConfig_deploy;\n process.env.IS_VXRN_CLI = \"true\";\n if (!process.env.NODE_ENV) {\n process.env.NODE_ENV = \"production\";\n } else if (process.env.NODE_ENV !== \"production\") {\n console.warn(`\n \\u26A0\\uFE0F Warning: NODE_ENV is set to \"${process.env.NODE_ENV}\" (builds default to \"production\")\n`);\n }\n var skipEnv = (_optionsIn_skipEnv = optionsIn.skipEnv) !== null && _optionsIn_skipEnv !== void 0 ? _optionsIn_skipEnv : false;\n var [envResult, options, userViteConfig] = await Promise.all([\n skipEnv ? {\n serverEnv: {},\n clientEnv: {},\n clientEnvDefine: {}\n } : loadEnv(\"production\"),\n fillOptions(optionsIn, {\n mode: \"prod\"\n }),\n loadConfigFromFile({\n command: \"build\",\n mode: \"prod\"\n }).then(function(_) {\n return _ === null || _ === void 0 ? void 0 : _.config;\n })\n ]);\n if (!process.env.ONE_SERVER_URL) {\n console.warn(`\\u26A0\\uFE0F No ONE_SERVER_URL environment set, set it in your .env to your target deploy URL`);\n }\n var processEnvDefines = Object.fromEntries(Object.entries(envResult.serverEnv).map(function(param) {\n var [key, value] = param;\n return [\n `process.env.${key}`,\n JSON.stringify(value)\n ];\n }));\n await applyBuiltInPatches(options).catch(function(err) {\n console.error(`\n \\u{1F97A} error applying built-in patches`, err);\n });\n var outDir = (_ref = userViteConfig === null || userViteConfig === void 0 ? void 0 : (_userViteConfig_build = userViteConfig.build) === null || _userViteConfig_build === void 0 ? void 0 : _userViteConfig_build.outDir) !== null && _ref !== void 0 ? _ref : \"dist\";\n await Promise.all([\n (async function() {\n if (existsSync(outDir)) {\n await rm(outDir, {\n recursive: true,\n force: true\n });\n }\n })()\n ]);\n if (buildArgs.platform === \"ios\" || buildArgs.platform === \"android\") {\n var { buildBundle } = await import(\"../rn-commands/bundle/buildBundle\");\n return buildBundle(\n [],\n // only an entry the app named: without one the bundle starts at the\n // generated route entry, as the xcode bundle phase does. the filled\n // default (./src/entry-native.tsx) exists only in plain vxrn apps.\n {\n root: options.root,\n vxrnEntries: optionsIn.entries\n },\n {\n platform: buildArgs.platform,\n bundleOutput: `${outDir}${sep}${buildArgs.platform}.js`,\n dev: false,\n entryFile: \"\",\n resetCache: true,\n resetGlobalCache: true,\n sourcemapUseAbsolutePath: true,\n verbose: false,\n unstableTransformProfile: \"default\"\n }\n );\n }\n var { optimizeDeps } = getOptimizeDeps(\"build\");\n var { rolldownOptions: optimizeDepsRolldownOptions, ...optimizeDepsWithoutRolldown } = optimizeDeps;\n var webBuildConfig = mergeConfig(await getBaseViteConfigWithPlugins({\n ...options,\n mode: \"production\"\n }), {\n plugins: globalThis.__vxrnAddWebPluginsProd,\n clearScreen: false,\n configFile: false,\n ...skipEnv && {\n envFile: false\n },\n // rolldownOptions goes on environments.client to avoid Vite compat-proxy bug\n optimizeDeps: optimizeDepsWithoutRolldown,\n environments: {\n client: {\n optimizeDeps: {\n rolldownOptions: optimizeDepsRolldownOptions\n }\n }\n },\n logLevel: \"warn\",\n build: {\n rolldownOptions: {\n // react-native packages import native-only exports (codegenNativeComponent etc.)\n // from react-native, which is aliased to react-native-web on web. react-native-web\n // doesn't export these, so rolldown would error. shimMissingExports creates\n // undefined shims instead, matching esbuild's lenient behavior.\n shimMissingExports: true,\n onwarn(warning, defaultHandler) {\n if (warning.code === \"MODULE_LEVEL_DIRECTIVE\" && warning.message.includes(\"use client\")) {\n return;\n }\n if (warning.code === \"SOURCEMAP_ERROR\" && warning.message.includes(`Can't resolve original location of error.`)) {\n return;\n }\n if (warning.code === \"EVAL\") {\n warning.message = warning.message.replace(/(\\.+\\/){0,}node_modules/, \"node_modules\");\n }\n if (warning.code === \"INVALID_ANNOTATION\") {\n return;\n }\n defaultHandler(warning);\n }\n }\n }\n });\n var rerouteNoExternalConfig = (userViteConfig === null || userViteConfig === void 0 ? void 0 : (_userViteConfig_ssr = userViteConfig.ssr) === null || _userViteConfig_ssr === void 0 ? void 0 : _userViteConfig_ssr.noExternal) === true;\n if (rerouteNoExternalConfig) {\n delete userViteConfig.ssr.noExternal;\n }\n webBuildConfig = mergeUserConfig(optimizeDeps, webBuildConfig, userViteConfig);\n var excludeAPIAndMiddlewareRoutesPlugin = {\n enforce: \"pre\",\n name: \"omit-api-routes\",\n transform: {\n order: \"pre\",\n // both patterns as one rust-side filter, so only api/middleware files\n // cross into js instead of every module in the client bundle\n filter: {\n id: /(?:\\+api|_middleware)\\.tsx?$/\n },\n handler() {\n return ``;\n }\n }\n };\n var clientOutput;\n var clientBuildPromise;\n if (buildArgs.step !== \"generate\") {\n var _options_build1;\n var clientBuildConfig = mergeConfig(webBuildConfig, {\n plugins: [\n excludeAPIAndMiddlewareRoutesPlugin\n ],\n define: {\n \"process.env.VITE_ENVIRONMENT\": '\"client\"',\n ...process.env.ONE_SERVER_URL && {\n \"process.env.ONE_SERVER_URL\": JSON.stringify(process.env.ONE_SERVER_URL)\n }\n },\n build: {\n ssrManifest: true,\n outDir: `${outDir}/client`,\n sourcemap: false,\n manifest: true,\n rolldownOptions: {\n input: [\n \"virtual:one-entry\"\n ],\n output: {\n codeSplitting: {\n // merge tiny chunks to reduce HTTP requests and total chunk count\n minSize: 42e3\n }\n }\n }\n }\n });\n if (process.env.VXRN_DISABLE_PROD_OPTIMIZATION) {\n clientBuildConfig = mergeConfig(clientBuildConfig, disableOptimizationConfig);\n }\n console.info(`\n \\u{1F528} build ${((_options_build1 = options.build) === null || _options_build1 === void 0 ? void 0 : _options_build1.server) !== false ? \"client + server\" : \"client\"}\n`);\n clientBuildPromise = viteBuild(clientBuildConfig);\n }\n var serverOptions = (_options_build = options.build) === null || _options_build === void 0 ? void 0 : _options_build.server;\n var webConfig = optionsIn.web;\n var deployTarget = typeof (webConfig === null || webConfig === void 0 ? void 0 : webConfig.deploy) === \"string\" ? webConfig.deploy : webConfig === null || webConfig === void 0 ? void 0 : (_webConfig_deploy = webConfig.deploy) === null || _webConfig_deploy === void 0 ? void 0 : _webConfig_deploy.target;\n var isCloudflareDeploy = deployTarget === \"cloudflare\";\n var shouldOutputCJS = getServerCJSSetting(options);\n var isUnified = typeof serverOptions === \"object\" && serverOptions !== null && serverOptions.unified === true;\n var serverBuildConfig = mergeConfig(webBuildConfig, {\n plugins: [\n excludeAPIAndMiddlewareRoutesPlugin,\n ...globalThis.__vxrnAddWebPluginsProd\n ],\n define: {\n \"process.env.TAMAGUI_IS_SERVER\": '\"1\"',\n \"process.env.VITE_ENVIRONMENT\": '\"ssr\"',\n ...processEnvDefines,\n ...webBuildConfig.define\n },\n ssr: {\n ...isCloudflareDeploy && {\n target: \"webworker\"\n },\n noExternal: isUnified ? [\n \"react\",\n \"react-dom\"\n ] : true,\n optimizeDeps: optimizeDepsWithoutRolldown\n },\n environments: {\n ssr: {\n optimizeDeps: {\n rolldownOptions: optimizeDepsRolldownOptions\n }\n }\n },\n build: {\n // we want one big file of css\n cssCodeSplit: false,\n ssr: true,\n sourcemap: false,\n outDir: `${outDir}/server`,\n rolldownOptions: {\n treeshake: true,\n // fixes some weird issues with optimizing tamagui and other packages\n // external: (id) => {\n // if (serverExternals.has(id)) return true\n // return false\n // // return /^@tamagui/.test(id)\n // },\n input: [\n \"virtual:one-entry\"\n ],\n output: {\n ...isCloudflareDeploy && {\n codeSplitting: true\n },\n ...shouldOutputCJS && {\n format: \"cjs\",\n entryFileNames: \"[name].cjs\"\n }\n }\n }\n }\n });\n if (rerouteNoExternalConfig) {\n serverBuildConfig.ssr.noExternal = true;\n }\n var serverEntry = getServerEntry(options, outDir);\n var serverOutput;\n var clientManifest;\n var serverBuildPromise;\n if (serverOptions !== false) {\n var _optionsIn_build;\n if (!clientBuildPromise) {\n console.info(`\n \\u{1F528} build server\n`);\n }\n var userServerConf = (_optionsIn_build = optionsIn.build) === null || _optionsIn_build === void 0 ? void 0 : _optionsIn_build.server;\n var userServerBuildConf = typeof userServerConf === \"boolean\" ? null : userServerConf === null || userServerConf === void 0 ? void 0 : userServerConf.config;\n serverBuildPromise = viteBuild(userServerBuildConf ? mergeConfig(serverBuildConfig, userServerBuildConf) : serverBuildConfig);\n }\n if (clientBuildPromise && serverBuildPromise) {\n var [clientResult, serverResult] = await Promise.all([\n clientBuildPromise,\n serverBuildPromise\n ]);\n clientOutput = clientResult.output;\n serverOutput = serverResult.output;\n } else if (clientBuildPromise) {\n var clientResult1 = await clientBuildPromise;\n clientOutput = clientResult1.output;\n } else if (serverBuildPromise) {\n var serverResult1 = await serverBuildPromise;\n serverOutput = serverResult1.output;\n }\n if (serverOptions !== false) {\n clientManifest = await FSExtra.readJSON(`${outDir}/client/.vite/manifest.json`);\n var old = await FSExtra.readFile(serverEntry, \"utf-8\");\n await FSExtra.writeFile(serverEntry, old.replace(`import { hydrate as hydrate$1, unmountComponentAtNode, render as render$1 } from \"react-dom\";`, \"\").replace(`import ReactDOM__default, { render as render$2, unmountComponentAtNode as unmountComponentAtNode$1, hydrate as hydrate$1 } from \"react-dom\";`, 'import ReactDOM__default from \"react-dom\";'));\n }\n return {\n outDir,\n processEnvDefines,\n options,\n buildArgs,\n serverEntry,\n clientOutput,\n serverOutput,\n serverBuildConfig,\n webBuildConfig,\n clientManifest\n };\n};\nexport {\n build\n};\n//# sourceMappingURL=build.js.map\n"],"mappings":"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"}
@@ -81,7 +81,7 @@ async function prepareCacheForVersion(param) {
81
81
  return shouldClean;
82
82
  });
83
83
  }
84
- var clean = async function(rest, only) {
84
+ var clean = async function clean2(rest, only) {
85
85
  var options = await fillOptions(rest);
86
86
  await withCacheCleanLock(options.cacheDir, function() {
87
87
  return removeCachePaths(options.root, only);
@@ -1 +1 @@
1
- {"version":3,"file":"clean.native.js","names":[],"sources":["exports/clean.native.js"],"sourcesContent":["import { mkdir, readFile, rm, writeFile } from \"fs/promises\";\nimport { dirname, join } from \"path\";\nimport { fillOptions } from \"../config/getOptionsFilled\";\nimport { getSSRExternalsCachePath } from \"../plugins/autoDepOptimizePlugin\";\nimport { getCacheDir } from \"../utils/getCacheDir\";\nimport { readState, writeState } from \"../utils/state\";\nvar CLEAN_LOCK_WAIT_MS = 25;\nvar CLEAN_LOCK_TIMEOUT_MS = 6e4;\nfunction getErrorCode(err) {\n if (err instanceof Error && \"code\" in err && typeof err.code === \"string\") {\n return err.code;\n }\n}\nasync function withCacheCleanLock(cacheDir, action) {\n var lockPath = join(dirname(cacheDir), \".vxrn-clean.lock\");\n var startedAt = Date.now();\n await mkdir(dirname(lockPath), {\n recursive: true\n });\n while (true) {\n try {\n await writeFile(lockPath, `${process.pid}\n`, {\n flag: \"wx\"\n });\n break;\n } catch (err) {\n if (getErrorCode(err) !== \"EEXIST\") {\n throw err;\n }\n if (Date.now() - startedAt >= CLEAN_LOCK_TIMEOUT_MS) {\n var owner = \"unknown process\";\n try {\n owner = `process ${(await readFile(lockPath, \"utf8\")).trim()}`;\n } catch (readErr) {\n if (getErrorCode(readErr) === \"ENOENT\") {\n continue;\n }\n throw readErr;\n }\n throw new Error(`Timed out waiting for VXRN cache cleanup lock held by ${owner}`);\n }\n await new Promise(function(resolve) {\n return setTimeout(resolve, CLEAN_LOCK_WAIT_MS);\n });\n }\n }\n try {\n return await action();\n } finally {\n await rm(lockPath, {\n force: true\n });\n }\n}\nasync function removeCachePaths(root, only) {\n var removeVxrnCache = process.env.VXRN_DONT_CLEAN_SELF ? rm(getSSRExternalsCachePath(root)).catch(throwIfNotMissingError) : rm(getCacheDir(root), {\n recursive: true,\n force: true\n }).catch(throwIfNotMissingError);\n console.info(`[vxrn] cleaning`);\n await Promise.all([\n rm(join(root, \"node_modules\", \".vite\"), {\n recursive: true,\n force: true\n }).catch(throwIfNotMissingError),\n removeVxrnCache,\n only === \"vite\" ? null : rm(join(root, \"dist\"), {\n recursive: true,\n force: true\n }).catch(throwIfNotMissingError)\n ]);\n}\nasync function prepareCacheForVersion(param) {\n var { root, cacheDir, versionHash, forceClean = false } = param;\n return withCacheCleanLock(cacheDir, async function() {\n var state = await readState(cacheDir);\n var versionChanged = !!state.versionHash && state.versionHash !== versionHash;\n var shouldClean = forceClean || versionChanged;\n if (shouldClean) {\n await removeCachePaths(root, \"vite\");\n }\n if (shouldClean || state.versionHash !== versionHash) {\n await writeState(cacheDir, {\n versionHash\n });\n }\n return shouldClean;\n });\n}\nvar clean = async function(rest, only) {\n var options = await fillOptions(rest);\n await withCacheCleanLock(options.cacheDir, function() {\n return removeCachePaths(options.root, only);\n });\n};\nfunction throwIfNotMissingError(err) {\n if (getErrorCode(err) !== \"ENOENT\") {\n throw err;\n }\n}\nexport {\n clean,\n prepareCacheForVersion\n};\n//# sourceMappingURL=clean.js.map\n"],"mappings":";;;;;;;;AAMA,IAAI,qBAAqB;AACzB,IAAI,wBAAwB;AAC5B,SAAS,aAAa,KAAK;CACzB,IAAI,eAAe,SAAS,UAAU,OAAO,OAAO,IAAI,SAAS,UAAU;EACzE,OAAO,IAAI;CACb;AACF;AACA,eAAe,mBAAmB,UAAU,QAAQ;CAClD,IAAI,WAAW,KAAK,QAAQ,QAAQ,GAAG,kBAAkB;CACzD,IAAI,YAAY,KAAK,IAAI;CACzB,MAAM,MAAM,QAAQ,QAAQ,GAAG,EAC7B,WAAW,KACb,CAAC;CACD,OAAO,MAAM;EACX,IAAI;GACF,MAAM,UAAU,UAAU,GAAG,QAAQ,IAAI;GAC5C,EACK,MAAM,KACR,CAAC;GACD;EACF,SAAS,KAAK;GACZ,IAAI,aAAa,GAAG,MAAM,UAAU;IAClC,MAAM;GACR;GACA,IAAI,KAAK,IAAI,IAAI,aAAa,uBAAuB;IACnD,IAAI,QAAQ;IACZ,IAAI;KACF,QAAQ,YAAY,MAAM,SAAS,UAAU,MAAM,EAAC,CAAE,KAAK;IAC7D,SAAS,SAAS;KAChB,IAAI,aAAa,OAAO,MAAM,UAAU;MACtC;KACF;KACA,MAAM;IACR;IACA,MAAM,IAAI,MAAM,yDAAyD,OAAO;GAClF;GACA,MAAM,IAAI,QAAQ,SAAS,SAAS;IAClC,OAAO,WAAW,SAAS,kBAAkB;GAC/C,CAAC;EACH;CACF;CACA,IAAI;EACF,OAAO,MAAM,OAAO;CACtB,UAAU;EACR,MAAM,GAAG,UAAU,EACjB,OAAO,KACT,CAAC;CACH;AACF;AACA,eAAe,iBAAiB,MAAM,MAAM;CAC1C,IAAI,kBAAkB,QAAQ,IAAI,uBAAuB,GAAG,yBAAyB,IAAI,CAAC,CAAC,CAAC,MAAM,sBAAsB,IAAI,GAAG,YAAY,IAAI,GAAG;EAChJ,WAAW;EACX,OAAO;CACT,CAAC,CAAC,CAAC,MAAM,sBAAsB;CAC/B,QAAQ,KAAK,iBAAiB;CAC9B,MAAM,QAAQ,IAAI;EAChB,GAAG,KAAK,MAAM,gBAAgB,OAAO,GAAG;GACtC,WAAW;GACX,OAAO;EACT,CAAC,CAAC,CAAC,MAAM,sBAAsB;EAC/B;EACA,SAAS,SAAS,OAAO,GAAG,KAAK,MAAM,MAAM,GAAG;GAC9C,WAAW;GACX,OAAO;EACT,CAAC,CAAC,CAAC,MAAM,sBAAsB;CACjC,CAAC;AACH;AACA,eAAe,uBAAuB,OAAO;CAC3C,IAAI,EAAE,MAAM,UAAU,aAAa,aAAa,UAAU;CAC1D,OAAO,mBAAmB,UAAU,iBAAiB;EACnD,IAAI,QAAQ,MAAM,UAAU,QAAQ;EACpC,IAAI,iBAAiB,CAAC,CAAC,MAAM,eAAe,MAAM,gBAAgB;EAClE,IAAI,cAAc,cAAc;EAChC,IAAI,aAAa;GACf,MAAM,iBAAiB,MAAM,MAAM;EACrC;EACA,IAAI,eAAe,MAAM,gBAAgB,aAAa;GACpD,MAAM,WAAW,UAAU,EACzB,YACF,CAAC;EACH;EACA,OAAO;CACT,CAAC;AACH;AACA,IAAI,QAAQ,eAAe,MAAM,MAAM;CACrC,IAAI,UAAU,MAAM,YAAY,IAAI;CACpC,MAAM,mBAAmB,QAAQ,UAAU,WAAW;EACpD,OAAO,iBAAiB,QAAQ,MAAM,IAAI;CAC5C,CAAC;AACH;AACA,SAAS,uBAAuB,KAAK;CACnC,IAAI,aAAa,GAAG,MAAM,UAAU;EAClC,MAAM;CACR;AACF"}
1
+ {"version":3,"file":"clean.native.js","names":[],"sources":["exports/clean.native.js"],"sourcesContent":["import { mkdir, readFile, rm, writeFile } from \"fs/promises\";\nimport { dirname, join } from \"path\";\nimport { fillOptions } from \"../config/getOptionsFilled\";\nimport { getSSRExternalsCachePath } from \"../plugins/autoDepOptimizePlugin\";\nimport { getCacheDir } from \"../utils/getCacheDir\";\nimport { readState, writeState } from \"../utils/state\";\nvar CLEAN_LOCK_WAIT_MS = 25;\nvar CLEAN_LOCK_TIMEOUT_MS = 6e4;\nfunction getErrorCode(err) {\n if (err instanceof Error && \"code\" in err && typeof err.code === \"string\") {\n return err.code;\n }\n}\nasync function withCacheCleanLock(cacheDir, action) {\n var lockPath = join(dirname(cacheDir), \".vxrn-clean.lock\");\n var startedAt = Date.now();\n await mkdir(dirname(lockPath), {\n recursive: true\n });\n while (true) {\n try {\n await writeFile(lockPath, `${process.pid}\n`, {\n flag: \"wx\"\n });\n break;\n } catch (err) {\n if (getErrorCode(err) !== \"EEXIST\") {\n throw err;\n }\n if (Date.now() - startedAt >= CLEAN_LOCK_TIMEOUT_MS) {\n var owner = \"unknown process\";\n try {\n owner = `process ${(await readFile(lockPath, \"utf8\")).trim()}`;\n } catch (readErr) {\n if (getErrorCode(readErr) === \"ENOENT\") {\n continue;\n }\n throw readErr;\n }\n throw new Error(`Timed out waiting for VXRN cache cleanup lock held by ${owner}`);\n }\n await new Promise(function(resolve) {\n return setTimeout(resolve, CLEAN_LOCK_WAIT_MS);\n });\n }\n }\n try {\n return await action();\n } finally {\n await rm(lockPath, {\n force: true\n });\n }\n}\nasync function removeCachePaths(root, only) {\n var removeVxrnCache = process.env.VXRN_DONT_CLEAN_SELF ? rm(getSSRExternalsCachePath(root)).catch(throwIfNotMissingError) : rm(getCacheDir(root), {\n recursive: true,\n force: true\n }).catch(throwIfNotMissingError);\n console.info(`[vxrn] cleaning`);\n await Promise.all([\n rm(join(root, \"node_modules\", \".vite\"), {\n recursive: true,\n force: true\n }).catch(throwIfNotMissingError),\n removeVxrnCache,\n only === \"vite\" ? null : rm(join(root, \"dist\"), {\n recursive: true,\n force: true\n }).catch(throwIfNotMissingError)\n ]);\n}\nasync function prepareCacheForVersion(param) {\n var { root, cacheDir, versionHash, forceClean = false } = param;\n return withCacheCleanLock(cacheDir, async function() {\n var state = await readState(cacheDir);\n var versionChanged = !!state.versionHash && state.versionHash !== versionHash;\n var shouldClean = forceClean || versionChanged;\n if (shouldClean) {\n await removeCachePaths(root, \"vite\");\n }\n if (shouldClean || state.versionHash !== versionHash) {\n await writeState(cacheDir, {\n versionHash\n });\n }\n return shouldClean;\n });\n}\nvar clean = async function clean2(rest, only) {\n var options = await fillOptions(rest);\n await withCacheCleanLock(options.cacheDir, function() {\n return removeCachePaths(options.root, only);\n });\n};\nfunction throwIfNotMissingError(err) {\n if (getErrorCode(err) !== \"ENOENT\") {\n throw err;\n }\n}\nexport {\n clean,\n prepareCacheForVersion\n};\n//# sourceMappingURL=clean.js.map\n"],"mappings":";;;;;;;;AAMA,IAAI,qBAAqB;AACzB,IAAI,wBAAwB;AAC5B,SAAS,aAAa,KAAK;CACzB,IAAI,eAAe,SAAS,UAAU,OAAO,OAAO,IAAI,SAAS,UAAU;EACzE,OAAO,IAAI;CACb;AACF;AACA,eAAe,mBAAmB,UAAU,QAAQ;CAClD,IAAI,WAAW,KAAK,QAAQ,QAAQ,GAAG,kBAAkB;CACzD,IAAI,YAAY,KAAK,IAAI;CACzB,MAAM,MAAM,QAAQ,QAAQ,GAAG,EAC7B,WAAW,KACb,CAAC;CACD,OAAO,MAAM;EACX,IAAI;GACF,MAAM,UAAU,UAAU,GAAG,QAAQ,IAAI;GAC5C,EACK,MAAM,KACR,CAAC;GACD;EACF,SAAS,KAAK;GACZ,IAAI,aAAa,GAAG,MAAM,UAAU;IAClC,MAAM;GACR;GACA,IAAI,KAAK,IAAI,IAAI,aAAa,uBAAuB;IACnD,IAAI,QAAQ;IACZ,IAAI;KACF,QAAQ,YAAY,MAAM,SAAS,UAAU,MAAM,EAAC,CAAE,KAAK;IAC7D,SAAS,SAAS;KAChB,IAAI,aAAa,OAAO,MAAM,UAAU;MACtC;KACF;KACA,MAAM;IACR;IACA,MAAM,IAAI,MAAM,yDAAyD,OAAO;GAClF;GACA,MAAM,IAAI,QAAQ,SAAS,SAAS;IAClC,OAAO,WAAW,SAAS,kBAAkB;GAC/C,CAAC;EACH;CACF;CACA,IAAI;EACF,OAAO,MAAM,OAAO;CACtB,UAAU;EACR,MAAM,GAAG,UAAU,EACjB,OAAO,KACT,CAAC;CACH;AACF;AACA,eAAe,iBAAiB,MAAM,MAAM;CAC1C,IAAI,kBAAkB,QAAQ,IAAI,uBAAuB,GAAG,yBAAyB,IAAI,CAAC,CAAC,CAAC,MAAM,sBAAsB,IAAI,GAAG,YAAY,IAAI,GAAG;EAChJ,WAAW;EACX,OAAO;CACT,CAAC,CAAC,CAAC,MAAM,sBAAsB;CAC/B,QAAQ,KAAK,iBAAiB;CAC9B,MAAM,QAAQ,IAAI;EAChB,GAAG,KAAK,MAAM,gBAAgB,OAAO,GAAG;GACtC,WAAW;GACX,OAAO;EACT,CAAC,CAAC,CAAC,MAAM,sBAAsB;EAC/B;EACA,SAAS,SAAS,OAAO,GAAG,KAAK,MAAM,MAAM,GAAG;GAC9C,WAAW;GACX,OAAO;EACT,CAAC,CAAC,CAAC,MAAM,sBAAsB;CACjC,CAAC;AACH;AACA,eAAe,uBAAuB,OAAO;CAC3C,IAAI,EAAE,MAAM,UAAU,aAAa,aAAa,UAAU;CAC1D,OAAO,mBAAmB,UAAU,iBAAiB;EACnD,IAAI,QAAQ,MAAM,UAAU,QAAQ;EACpC,IAAI,iBAAiB,CAAC,CAAC,MAAM,eAAe,MAAM,gBAAgB;EAClE,IAAI,cAAc,cAAc;EAChC,IAAI,aAAa;GACf,MAAM,iBAAiB,MAAM,MAAM;EACrC;EACA,IAAI,eAAe,MAAM,gBAAgB,aAAa;GACpD,MAAM,WAAW,UAAU,EACzB,YACF,CAAC;EACH;EACA,OAAO;CACT,CAAC;AACH;AACA,IAAI,QAAQ,eAAe,OAAO,MAAM,MAAM;CAC5C,IAAI,UAAU,MAAM,YAAY,IAAI;CACpC,MAAM,mBAAmB,QAAQ,UAAU,WAAW;EACpD,OAAO,iBAAiB,QAAQ,MAAM,IAAI;CAC5C,CAAC;AACH;AACA,SAAS,uBAAuB,KAAK;CACnC,IAAI,aAAa,GAAG,MAAM,UAAU;EAClC,MAAM;CACR;AACF"}
@@ -4,12 +4,12 @@ import { dirname, join } from "path";
4
4
  import { compileCacheRules, serveStaticAssets } from "./serveStaticAssets.native.js";
5
5
 
6
6
  var staticExtRe = /\.\w{2,5}$/;
7
- var applyCompression = function(app, options) {
7
+ var applyCompression = function applyCompression2(app, options) {
8
8
  if (options.compress !== false) {
9
9
  app.use(compress());
10
10
  }
11
11
  };
12
- var createProdServer = async function(app, options) {
12
+ var createProdServer = async function createProdServer2(app, options) {
13
13
  var { skipCompression, outDir = "dist" } = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};
14
14
  if (!skipCompression) {
15
15
  applyCompression(app, options);
@@ -1 +1 @@
1
- {"version":3,"file":"createServer.native.js","names":[],"sources":["exports/createServer.native.js"],"sourcesContent":["import { serveStatic } from \"@hono/node-server/serve-static\";\nimport { compress } from \"hono/compress\";\nimport { dirname, join } from \"path\";\nimport { compileCacheRules, serveStaticAssets } from \"./serveStaticAssets\";\nvar staticExtRe = /\\.\\w{2,5}$/;\nvar applyCompression = function(app, options) {\n if (options.compress !== false) {\n app.use(compress());\n }\n};\nvar createProdServer = async function(app, options) {\n var { skipCompression, outDir = \"dist\" } = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};\n if (!skipCompression) {\n applyCompression(app, options);\n }\n var cacheRules = options.cacheControl ? compileCacheRules(options.cacheControl) : void 0;\n app.use(\"*\", async function(context, next) {\n var path = context.req.path;\n if (!staticExtRe.test(path) && !path.startsWith(\"/assets/\")) {\n return await next();\n }\n return await serveStaticAssets({\n context,\n next,\n outDir,\n cacheRules\n });\n });\n app.notFound(async function(c) {\n var path = c.req.path;\n var currentDir = dirname(path);\n while (true) {\n var response = await serveStatic({\n root: `./${outDir}/client`,\n path: join(currentDir, \"+not-found.html\")\n })(c, async function() {\n });\n if (response && response.body) {\n c.status(404);\n return c.body(response.body);\n }\n var nextDir = dirname(currentDir);\n if (nextDir === currentDir) {\n break;\n }\n currentDir = nextDir;\n }\n return c.text(\"404 Not Found\", {\n status: 404\n });\n });\n return app;\n};\nexport {\n applyCompression,\n createProdServer\n};\n//# sourceMappingURL=createServer.js.map\n"],"mappings":";;;;;;AAIA,IAAI,cAAc;AAClB,IAAI,mBAAmB,SAAS,KAAK,SAAS;CAC5C,IAAI,QAAQ,aAAa,OAAO;EAC9B,IAAI,IAAI,SAAS,CAAC;CACpB;AACF;AACA,IAAI,mBAAmB,eAAe,KAAK,SAAS;CAClD,IAAI,EAAE,iBAAiB,SAAS,WAAW,UAAU,SAAS,KAAK,UAAU,OAAO,KAAK,IAAI,UAAU,KAAK,CAAC;CAC7G,IAAI,CAAC,iBAAiB;EACpB,iBAAiB,KAAK,OAAO;CAC/B;CACA,IAAI,aAAa,QAAQ,eAAe,kBAAkB,QAAQ,YAAY,IAAI,KAAK;CACvF,IAAI,IAAI,KAAK,eAAe,SAAS,MAAM;EACzC,IAAI,OAAO,QAAQ,IAAI;EACvB,IAAI,CAAC,YAAY,KAAK,IAAI,KAAK,CAAC,KAAK,WAAW,UAAU,GAAG;GAC3D,OAAO,MAAM,KAAK;EACpB;EACA,OAAO,MAAM,kBAAkB;GAC7B;GACA;GACA;GACA;EACF,CAAC;CACH,CAAC;CACD,IAAI,SAAS,eAAe,GAAG;EAC7B,IAAI,OAAO,EAAE,IAAI;EACjB,IAAI,aAAa,QAAQ,IAAI;EAC7B,OAAO,MAAM;GACX,IAAI,WAAW,MAAM,YAAY;IAC/B,MAAM,KAAK,OAAO;IAClB,MAAM,KAAK,YAAY,iBAAiB;GAC1C,CAAC,CAAC,CAAC,GAAG,iBAAiB,CACvB,CAAC;GACD,IAAI,YAAY,SAAS,MAAM;IAC7B,EAAE,OAAO,GAAG;IACZ,OAAO,EAAE,KAAK,SAAS,IAAI;GAC7B;GACA,IAAI,UAAU,QAAQ,UAAU;GAChC,IAAI,YAAY,YAAY;IAC1B;GACF;GACA,aAAa;EACf;EACA,OAAO,EAAE,KAAK,iBAAiB,EAC7B,QAAQ,IACV,CAAC;CACH,CAAC;CACD,OAAO;AACT"}
1
+ {"version":3,"file":"createServer.native.js","names":[],"sources":["exports/createServer.native.js"],"sourcesContent":["import { serveStatic } from \"@hono/node-server/serve-static\";\nimport { compress } from \"hono/compress\";\nimport { dirname, join } from \"path\";\nimport { compileCacheRules, serveStaticAssets } from \"./serveStaticAssets\";\nvar staticExtRe = /\\.\\w{2,5}$/;\nvar applyCompression = function applyCompression2(app, options) {\n if (options.compress !== false) {\n app.use(compress());\n }\n};\nvar createProdServer = async function createProdServer2(app, options) {\n var { skipCompression, outDir = \"dist\" } = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {};\n if (!skipCompression) {\n applyCompression(app, options);\n }\n var cacheRules = options.cacheControl ? compileCacheRules(options.cacheControl) : void 0;\n app.use(\"*\", async function(context, next) {\n var path = context.req.path;\n if (!staticExtRe.test(path) && !path.startsWith(\"/assets/\")) {\n return await next();\n }\n return await serveStaticAssets({\n context,\n next,\n outDir,\n cacheRules\n });\n });\n app.notFound(async function(c) {\n var path = c.req.path;\n var currentDir = dirname(path);\n while (true) {\n var response = await serveStatic({\n root: `./${outDir}/client`,\n path: join(currentDir, \"+not-found.html\")\n })(c, async function() {\n });\n if (response && response.body) {\n c.status(404);\n return c.body(response.body);\n }\n var nextDir = dirname(currentDir);\n if (nextDir === currentDir) {\n break;\n }\n currentDir = nextDir;\n }\n return c.text(\"404 Not Found\", {\n status: 404\n });\n });\n return app;\n};\nexport {\n applyCompression,\n createProdServer\n};\n//# sourceMappingURL=createServer.js.map\n"],"mappings":";;;;;;AAIA,IAAI,cAAc;AAClB,IAAI,mBAAmB,SAAS,kBAAkB,KAAK,SAAS;CAC9D,IAAI,QAAQ,aAAa,OAAO;EAC9B,IAAI,IAAI,SAAS,CAAC;CACpB;AACF;AACA,IAAI,mBAAmB,eAAe,kBAAkB,KAAK,SAAS;CACpE,IAAI,EAAE,iBAAiB,SAAS,WAAW,UAAU,SAAS,KAAK,UAAU,OAAO,KAAK,IAAI,UAAU,KAAK,CAAC;CAC7G,IAAI,CAAC,iBAAiB;EACpB,iBAAiB,KAAK,OAAO;CAC/B;CACA,IAAI,aAAa,QAAQ,eAAe,kBAAkB,QAAQ,YAAY,IAAI,KAAK;CACvF,IAAI,IAAI,KAAK,eAAe,SAAS,MAAM;EACzC,IAAI,OAAO,QAAQ,IAAI;EACvB,IAAI,CAAC,YAAY,KAAK,IAAI,KAAK,CAAC,KAAK,WAAW,UAAU,GAAG;GAC3D,OAAO,MAAM,KAAK;EACpB;EACA,OAAO,MAAM,kBAAkB;GAC7B;GACA;GACA;GACA;EACF,CAAC;CACH,CAAC;CACD,IAAI,SAAS,eAAe,GAAG;EAC7B,IAAI,OAAO,EAAE,IAAI;EACjB,IAAI,aAAa,QAAQ,IAAI;EAC7B,OAAO,MAAM;GACX,IAAI,WAAW,MAAM,YAAY;IAC/B,MAAM,KAAK,OAAO;IAClB,MAAM,KAAK,YAAY,iBAAiB;GAC1C,CAAC,CAAC,CAAC,GAAG,iBAAiB,CACvB,CAAC;GACD,IAAI,YAAY,SAAS,MAAM;IAC7B,EAAE,OAAO,GAAG;IACZ,OAAO,EAAE,KAAK,SAAS,IAAI;GAC7B;GACA,IAAI,UAAU,QAAQ,UAAU;GAChC,IAAI,YAAY,YAAY;IAC1B;GACF;GACA,aAAa;EACf;EACA,OAAO,EAAE,KAAK,iBAAiB,EAC7B,QAAQ,IACV,CAAC;CACH,CAAC;CACD,OAAO;AACT"}
@@ -95,6 +95,7 @@ export default defineConfig({
95
95
  `);
96
96
  process.exit(0);
97
97
  }
98
+ let extraPlugins = [];
98
99
  if (optionsIn.extraConfig) {
99
100
  const { resolve } = await import("node:path");
100
101
  const extraConfigPath = resolve(optionsIn.extraConfig);
@@ -104,6 +105,7 @@ export default defineConfig({
104
105
  }, extraConfigPath);
105
106
  if (extraResult?.config) {
106
107
  const { mergeConfig } = await import("vite");
108
+ extraPlugins = extraResult.config.plugins || [];
107
109
  config = mergeConfig(config, extraResult.config);
108
110
  console.info(colors.cyan(`Merged extra config from ${extraConfigPath}`));
109
111
  } else {
@@ -138,6 +140,7 @@ export default defineConfig({
138
140
  await ensureDir(cacheDir);
139
141
  await ensureDir(`${cacheDir}/compiler-cache`);
140
142
  const serverConfig = await getViteServerConfig(options, config);
143
+ serverConfig.plugins = [...serverConfig.plugins || [], ...extraPlugins];
141
144
  let viteServer = null;
142
145
  let isClosing = false;
143
146
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","names":[],"sources":["exports/dev.js"],"sourcesContent":["import { execFileSync } from \"node:child_process\";\nimport FSExtra from \"fs-extra\";\nimport colors from \"picocolors\";\nimport { debounce } from \"perfect-debounce\";\nimport { normalizePath } from \"vite\";\nconst { ensureDir } = FSExtra;\nfunction readParentPid(pid) {\n try {\n const output = execFileSync(\"ps\", [\"-o\", \"ppid=\", \"-p\", `${pid}`], {\n encoding: \"utf8\",\n stdio: [\"ignore\", \"pipe\", \"ignore\"]\n }).trim();\n const ppid = Number.parseInt(output, 10);\n return Number.isFinite(ppid) ? ppid : void 0;\n } catch {\n return void 0;\n }\n}\nfunction processExists(pid) {\n try {\n process.kill(pid, 0);\n return true;\n } catch (error) {\n return error.code !== \"ESRCH\";\n }\n}\nfunction setupOrphanDetection() {\n if (process.platform === \"win32\") return;\n const initialPpid = process.ppid;\n const launcherPid = readParentPid(initialPpid);\n if (initialPpid === 1 || launcherPid === 1) {\n process.exit(0);\n }\n const interval = setInterval(() => {\n if (process.ppid !== initialPpid || launcherPid !== void 0 && !processExists(launcherPid)) {\n process.exit(0);\n }\n }, 500);\n interval.unref();\n}\nfunction collectStartupGarbage(server) {\n const webEnvironmentsIdle = [\"client\", \"ssr\"].map((name) => server.environments[name]).filter(Boolean).map((environment) => environment.waitForRequestsIdle());\n void Promise.all(webEnvironmentsIdle).then(async () => {\n await new Promise((res) => setTimeout(res, 2e3).unref());\n const [v8, vm] = await Promise.all([import(\"node:v8\"), import(\"node:vm\")]);\n v8.setFlagsFromString(\"--expose-gc\");\n const gc = vm.runInNewContext(\"gc\");\n v8.setFlagsFromString(\"--no-expose-gc\");\n gc();\n });\n}\nconst dev = async (optionsIn) => {\n setupOrphanDetection();\n const devStartTime = Date.now();\n process.env.IS_VXRN_CLI = \"true\";\n if (typeof optionsIn.debug === \"string\") {\n process.env.DEBUG ||= !optionsIn.debug ? `vite` : `vite:${optionsIn.debug}`;\n }\n const { startUserInterface } = await import(\"../user-interface/index\");\n const { bindKeypressInput } = await import(\"../utils/bindKeypressInput\");\n const { fillOptions } = await import(\"../config/getOptionsFilled\");\n const { getViteServerConfig } = await import(\"../config/getViteServerConfig\");\n const { printServerUrls } = await import(\"../utils/printServerUrls\");\n const { prepareCacheForVersion } = await import(\"./clean\");\n const { filterViteServerResolvedUrls } = await import(\"../utils/filterViteServerResolvedUrls\");\n const { removeUndefined } = await import(\"../utils/removeUndefined\");\n const { createServer, loadConfigFromFile } = await import(\"vite\");\n let { config } = await loadConfigFromFile({\n mode: \"dev\",\n command: \"serve\"\n }) ?? {};\n if (!config) {\n console.error(`\n\\u26D4\\uFE0F No vite.config.ts, please create a minimal config:\n\nimport { defineConfig } from 'vite'\nimport { one } from 'one/vite'\n\nexport default defineConfig({\n plugins: [\n one()\n ]\n})\n\n`);\n process.exit(0);\n }\n if (optionsIn.extraConfig) {\n const { resolve } = await import(\"node:path\");\n const extraConfigPath = resolve(optionsIn.extraConfig);\n const extraResult = await loadConfigFromFile(\n { mode: \"dev\", command: \"serve\" },\n extraConfigPath\n );\n if (extraResult?.config) {\n const { mergeConfig } = await import(\"vite\");\n config = mergeConfig(config, extraResult.config);\n console.info(colors.cyan(`Merged extra config from ${extraConfigPath}`));\n } else {\n console.warn(colors.yellow(`Could not load extra config from ${extraConfigPath}`));\n }\n }\n const oneServerConfig = config?.plugins?.find(\n (x) => Array.isArray(x) && x[0]?.[\"name\"] === \"one:config\"\n )?.[0]?.[\"__get\"]?.server;\n const viteServerConfig = config.server;\n const options = await fillOptions({\n ...optionsIn,\n server: {\n ...oneServerConfig,\n ...removeUndefined({\n host: viteServerConfig?.host === true ? \"0.0.0.0\" : typeof viteServerConfig?.host === \"string\" ? viteServerConfig.host : void 0,\n https: viteServerConfig?.https,\n port: viteServerConfig?.port\n }),\n ...removeUndefined(optionsIn.server || {})\n }\n });\n const { cacheDir } = options;\n bindKeypressInput();\n const cacheWasCleaned = await prepareCacheForVersion({\n root: options.root,\n cacheDir,\n versionHash: options.versionHash,\n forceClean: optionsIn.clean === true\n });\n if (options.clean || cacheWasCleaned) {\n process.env.METRO_RESET_CACHE = \"1\";\n }\n await ensureDir(cacheDir);\n await ensureDir(`${cacheDir}/compiler-cache`);\n const serverConfig = await getViteServerConfig(options, config);\n let viteServer = null;\n let isClosing = false;\n return {\n viteServer,\n start: async () => {\n viteServer = await createServer(serverConfig);\n const { connectedNativeClients } = await import(\"../utils/connectedNativeClients\");\n const pendingTransforms = /* @__PURE__ */ new Map();\n viteServer.watcher.addListener(\"change\", async (path) => {\n if (isClosing || connectedNativeClients === 0) {\n return;\n }\n const normalizedPath = normalizePath(path);\n if (normalizedPath.includes(\"/dist/\")) {\n return;\n }\n const normalizedCwd = normalizePath(process.cwd());\n const id = normalizedPath.replace(normalizedCwd, \"\");\n if (!id.endsWith(\"tsx\") && !id.endsWith(\"jsx\")) {\n return;\n }\n if (!pendingTransforms.has(id)) {\n pendingTransforms.set(\n id,\n debounce(async () => {\n if (isClosing) return;\n try {\n await viteServer.transformRequest(id);\n } catch (err) {\n if (!isClosing) {\n console.info(\"err\", err);\n }\n }\n }, 100)\n );\n }\n pendingTransforms.get(id)();\n });\n viteServer.httpServer?.on(\"close\", () => {\n isClosing = true;\n });\n await viteServer.listen();\n collectStartupGarbage(viteServer);\n const totalStartupTime = Date.now() - devStartTime;\n console.info();\n console.info(colors.bold(\"Server running on\") + \" \\u2AA2\");\n console.info();\n const viteServerResolvedUrls = filterViteServerResolvedUrls(viteServer.resolvedUrls);\n if (viteServerResolvedUrls) {\n printServerUrls(viteServerResolvedUrls, {}, viteServer.config.logger.info);\n }\n startUserInterface({ server: viteServer });\n return {\n closePromise: new Promise((res) => {\n viteServer?.httpServer?.on(\"close\", res);\n })\n };\n },\n stop: () => {\n isClosing = true;\n if (viteServer) {\n viteServer.watcher.removeAllListeners();\n return viteServer.close();\n }\n }\n };\n};\nexport {\n dev\n};\n//# sourceMappingURL=dev.js.map\n"],"mappings":"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"}
1
+ {"version":3,"file":"dev.js","names":[],"sources":["exports/dev.js"],"sourcesContent":["import { execFileSync } from \"node:child_process\";\nimport FSExtra from \"fs-extra\";\nimport colors from \"picocolors\";\nimport { debounce } from \"perfect-debounce\";\nimport { normalizePath } from \"vite\";\nconst { ensureDir } = FSExtra;\nfunction readParentPid(pid) {\n try {\n const output = execFileSync(\"ps\", [\"-o\", \"ppid=\", \"-p\", `${pid}`], {\n encoding: \"utf8\",\n stdio: [\"ignore\", \"pipe\", \"ignore\"]\n }).trim();\n const ppid = Number.parseInt(output, 10);\n return Number.isFinite(ppid) ? ppid : void 0;\n } catch {\n return void 0;\n }\n}\nfunction processExists(pid) {\n try {\n process.kill(pid, 0);\n return true;\n } catch (error) {\n return error.code !== \"ESRCH\";\n }\n}\nfunction setupOrphanDetection() {\n if (process.platform === \"win32\") return;\n const initialPpid = process.ppid;\n const launcherPid = readParentPid(initialPpid);\n if (initialPpid === 1 || launcherPid === 1) {\n process.exit(0);\n }\n const interval = setInterval(() => {\n if (process.ppid !== initialPpid || launcherPid !== void 0 && !processExists(launcherPid)) {\n process.exit(0);\n }\n }, 500);\n interval.unref();\n}\nfunction collectStartupGarbage(server) {\n const webEnvironmentsIdle = [\"client\", \"ssr\"].map((name) => server.environments[name]).filter(Boolean).map((environment) => environment.waitForRequestsIdle());\n void Promise.all(webEnvironmentsIdle).then(async () => {\n await new Promise((res) => setTimeout(res, 2e3).unref());\n const [v8, vm] = await Promise.all([import(\"node:v8\"), import(\"node:vm\")]);\n v8.setFlagsFromString(\"--expose-gc\");\n const gc = vm.runInNewContext(\"gc\");\n v8.setFlagsFromString(\"--no-expose-gc\");\n gc();\n });\n}\nconst dev = async (optionsIn) => {\n setupOrphanDetection();\n const devStartTime = Date.now();\n process.env.IS_VXRN_CLI = \"true\";\n if (typeof optionsIn.debug === \"string\") {\n process.env.DEBUG ||= !optionsIn.debug ? `vite` : `vite:${optionsIn.debug}`;\n }\n const { startUserInterface } = await import(\"../user-interface/index\");\n const { bindKeypressInput } = await import(\"../utils/bindKeypressInput\");\n const { fillOptions } = await import(\"../config/getOptionsFilled\");\n const { getViteServerConfig } = await import(\"../config/getViteServerConfig\");\n const { printServerUrls } = await import(\"../utils/printServerUrls\");\n const { prepareCacheForVersion } = await import(\"./clean\");\n const { filterViteServerResolvedUrls } = await import(\"../utils/filterViteServerResolvedUrls\");\n const { removeUndefined } = await import(\"../utils/removeUndefined\");\n const { createServer, loadConfigFromFile } = await import(\"vite\");\n let { config } = await loadConfigFromFile({\n mode: \"dev\",\n command: \"serve\"\n }) ?? {};\n if (!config) {\n console.error(`\n\\u26D4\\uFE0F No vite.config.ts, please create a minimal config:\n\nimport { defineConfig } from 'vite'\nimport { one } from 'one/vite'\n\nexport default defineConfig({\n plugins: [\n one()\n ]\n})\n\n`);\n process.exit(0);\n }\n let extraPlugins = [];\n if (optionsIn.extraConfig) {\n const { resolve } = await import(\"node:path\");\n const extraConfigPath = resolve(optionsIn.extraConfig);\n const extraResult = await loadConfigFromFile(\n { mode: \"dev\", command: \"serve\" },\n extraConfigPath\n );\n if (extraResult?.config) {\n const { mergeConfig } = await import(\"vite\");\n extraPlugins = extraResult.config.plugins || [];\n config = mergeConfig(config, extraResult.config);\n console.info(colors.cyan(`Merged extra config from ${extraConfigPath}`));\n } else {\n console.warn(colors.yellow(`Could not load extra config from ${extraConfigPath}`));\n }\n }\n const oneServerConfig = config?.plugins?.find(\n (x) => Array.isArray(x) && x[0]?.[\"name\"] === \"one:config\"\n )?.[0]?.[\"__get\"]?.server;\n const viteServerConfig = config.server;\n const options = await fillOptions({\n ...optionsIn,\n server: {\n ...oneServerConfig,\n ...removeUndefined({\n host: viteServerConfig?.host === true ? \"0.0.0.0\" : typeof viteServerConfig?.host === \"string\" ? viteServerConfig.host : void 0,\n https: viteServerConfig?.https,\n port: viteServerConfig?.port\n }),\n ...removeUndefined(optionsIn.server || {})\n }\n });\n const { cacheDir } = options;\n bindKeypressInput();\n const cacheWasCleaned = await prepareCacheForVersion({\n root: options.root,\n cacheDir,\n versionHash: options.versionHash,\n forceClean: optionsIn.clean === true\n });\n if (options.clean || cacheWasCleaned) {\n process.env.METRO_RESET_CACHE = \"1\";\n }\n await ensureDir(cacheDir);\n await ensureDir(`${cacheDir}/compiler-cache`);\n const serverConfig = await getViteServerConfig(options, config);\n serverConfig.plugins = [...serverConfig.plugins || [], ...extraPlugins];\n let viteServer = null;\n let isClosing = false;\n return {\n viteServer,\n start: async () => {\n viteServer = await createServer(serverConfig);\n const { connectedNativeClients } = await import(\"../utils/connectedNativeClients\");\n const pendingTransforms = /* @__PURE__ */ new Map();\n viteServer.watcher.addListener(\"change\", async (path) => {\n if (isClosing || connectedNativeClients === 0) {\n return;\n }\n const normalizedPath = normalizePath(path);\n if (normalizedPath.includes(\"/dist/\")) {\n return;\n }\n const normalizedCwd = normalizePath(process.cwd());\n const id = normalizedPath.replace(normalizedCwd, \"\");\n if (!id.endsWith(\"tsx\") && !id.endsWith(\"jsx\")) {\n return;\n }\n if (!pendingTransforms.has(id)) {\n pendingTransforms.set(\n id,\n debounce(async () => {\n if (isClosing) return;\n try {\n await viteServer.transformRequest(id);\n } catch (err) {\n if (!isClosing) {\n console.info(\"err\", err);\n }\n }\n }, 100)\n );\n }\n pendingTransforms.get(id)();\n });\n viteServer.httpServer?.on(\"close\", () => {\n isClosing = true;\n });\n await viteServer.listen();\n collectStartupGarbage(viteServer);\n const totalStartupTime = Date.now() - devStartTime;\n console.info();\n console.info(colors.bold(\"Server running on\") + \" \\u2AA2\");\n console.info();\n const viteServerResolvedUrls = filterViteServerResolvedUrls(viteServer.resolvedUrls);\n if (viteServerResolvedUrls) {\n printServerUrls(viteServerResolvedUrls, {}, viteServer.config.logger.info);\n }\n startUserInterface({ server: viteServer });\n return {\n closePromise: new Promise((res) => {\n viteServer?.httpServer?.on(\"close\", res);\n })\n };\n },\n stop: () => {\n isClosing = true;\n if (viteServer) {\n viteServer.watcher.removeAllListeners();\n return viteServer.close();\n }\n }\n };\n};\nexport {\n dev\n};\n//# sourceMappingURL=dev.js.map\n"],"mappings":"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"}
@@ -65,7 +65,7 @@ function collectStartupGarbage(server) {
65
65
  gc();
66
66
  });
67
67
  }
68
- var dev = async function(optionsIn) {
68
+ var dev = async function dev2(optionsIn) {
69
69
  var _ref;
70
70
  var _config_plugins_find____get, _config_plugins_find_, _config_plugins_find, _config_plugins;
71
71
  setupOrphanDetection();
@@ -104,6 +104,7 @@ export default defineConfig({
104
104
  `);
105
105
  process.exit(0);
106
106
  }
107
+ var extraPlugins = [];
107
108
  if (optionsIn.extraConfig) {
108
109
  var { resolve } = await import("path");
109
110
  var extraConfigPath = resolve(optionsIn.extraConfig);
@@ -113,6 +114,7 @@ export default defineConfig({
113
114
  }, extraConfigPath);
114
115
  if (extraResult === null || extraResult === void 0 ? void 0 : extraResult.config) {
115
116
  var { mergeConfig } = await import("vite");
117
+ extraPlugins = extraResult.config.plugins || [];
116
118
  config = mergeConfig(config, extraResult.config);
117
119
  console.info(colors.cyan(`Merged extra config from ${extraConfigPath}`));
118
120
  } else {
@@ -150,11 +152,12 @@ export default defineConfig({
150
152
  await ensureDir(cacheDir);
151
153
  await ensureDir(`${cacheDir}/compiler-cache`);
152
154
  var serverConfig = await getViteServerConfig(options, config);
155
+ serverConfig.plugins = [...serverConfig.plugins || [], ...extraPlugins];
153
156
  var viteServer = null;
154
157
  var isClosing = false;
155
158
  return {
156
159
  viteServer,
157
- start: async function() {
160
+ start: async function start() {
158
161
  var _viteServer_httpServer;
159
162
  viteServer = await createServer(serverConfig);
160
163
  var { connectedNativeClients } = await import("../utils/connectedNativeClients.native.js");
@@ -205,7 +208,7 @@ export default defineConfig({
205
208
  viteServer === null || viteServer === void 0 ? void 0 : (_viteServer_httpServer2 = viteServer.httpServer) === null || _viteServer_httpServer2 === void 0 ? void 0 : _viteServer_httpServer2.on("close", res);
206
209
  }) };
207
210
  },
208
- stop: function() {
211
+ stop: function stop() {
209
212
  isClosing = true;
210
213
  if (viteServer) {
211
214
  viteServer.watcher.removeAllListeners();