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":"patches.native.js","names":[],"sources":["utils/patches.native.js"],"sourcesContent":["import { transformSWC } from \"@vxrn/compiler\";\nimport { transformFlowBabel } from \"@vxrn/vite-flow\";\nimport Glob from \"fast-glob\";\nimport findNodeModules from \"find-node-modules\";\nimport FSExtra from \"fs-extra\";\nimport { realpathSync } from \"fs\";\nimport { join } from \"path\";\nimport { rename } from \"fs/promises\";\nimport semver from \"semver\";\nimport { builtInDepPatches } from \"../patches/builtInDepPatches\";\nimport { globDir } from \"./globDir\";\nfunction _assert_this_initialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}\nfunction _call_super(_this, derived, args) {\n derived = _get_prototype_of(derived);\n return _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args));\n}\nfunction _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _construct(Parent, args, Class) {\n if (_is_native_reflect_construct()) {\n _construct = Reflect.construct;\n } else {\n _construct = function construct(Parent2, args2, Class2) {\n var a = [\n null\n ];\n a.push.apply(a, args2);\n var Constructor = Function.bind.apply(Parent2, a);\n var instance = new Constructor();\n if (Class2) _set_prototype_of(instance, Class2.prototype);\n return instance;\n };\n }\n return _construct.apply(null, arguments);\n}\nfunction _get_prototype_of(o) {\n _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o2) {\n return o2.__proto__ || Object.getPrototypeOf(o2);\n };\n return _get_prototype_of(o);\n}\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _set_prototype_of(subClass, superClass);\n}\nfunction _is_native_function(fn) {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n}\nfunction _possible_constructor_return(self, call) {\n if (call && (_type_of(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n return _assert_this_initialized(self);\n}\nfunction _set_prototype_of(o, p) {\n _set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o2, p2) {\n o2.__proto__ = p2;\n return o2;\n };\n return _set_prototype_of(o, p);\n}\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nfunction _wrap_native_super(Class) {\n var _cache = typeof Map === \"function\" ? /* @__PURE__ */ new Map() : void 0;\n _wrap_native_super = function wrapNativeSuper(Class2) {\n if (Class2 === null || !_is_native_function(Class2)) return Class2;\n if (typeof Class2 !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class2)) return _cache.get(Class2);\n _cache.set(Class2, Wrapper);\n }\n function Wrapper() {\n return _construct(Class2, arguments, _get_prototype_of(this).constructor);\n }\n Wrapper.prototype = Object.create(Class2.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return _set_prototype_of(Wrapper, Class2);\n };\n return _wrap_native_super(Class);\n}\nfunction _is_native_reflect_construct() {\n try {\n var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {\n }));\n } catch (_) {\n }\n return (_is_native_reflect_construct = function() {\n return !!result;\n })();\n}\nvar Bail = /* @__PURE__ */ (function(Error1) {\n \"use strict\";\n _inherits(Bail2, Error1);\n function Bail2() {\n _class_call_check(this, Bail2);\n return _call_super(this, Bail2, arguments);\n }\n return Bail2;\n})(_wrap_native_super(Error));\nfunction bailIfUnchanged(obj1, obj2) {\n if (JSON.stringify(obj1) === JSON.stringify(obj2)) {\n throw new Bail();\n }\n}\nfunction bailIfExists(haystack, needle) {\n if (haystack.includes(needle)) {\n throw new Bail();\n }\n}\nasync function applyBuiltInPatches(options, extraPatches) {\n var all = [\n ...builtInDepPatches\n ];\n if (extraPatches) {\n var _loop = function(key2) {\n var extraPatchFiles = extraPatches[key2];\n var existing = all.find(function(x) {\n return x.module === key2;\n });\n if (existing) {\n for (var patchKey in extraPatchFiles) {\n if (existing.patchFiles[patchKey]) {\n console.warn(`Warning: Overwriting One built-in patch with user patch`, key2, patchKey);\n }\n existing.patchFiles[patchKey] = extraPatchFiles[patchKey];\n }\n } else {\n all.push({\n module: key2,\n patchFiles: extraPatchFiles\n });\n }\n };\n for (var key in extraPatches) _loop(key);\n }\n await applyDependencyPatches(all, {\n root: options.root\n });\n}\nvar STATS_FILE = \".vxrn.patch-stats.json\";\nfunction getOriginalPath(fullPath) {\n return fullPath + \".vxrn.original\";\n}\nasync function readPatchStats(nodeModulesDir) {\n try {\n return await FSExtra.readJSON(join(nodeModulesDir, STATS_FILE));\n } catch (unused) {\n return {};\n }\n}\nasync function writePatchStats(nodeModulesDir, stats) {\n await FSExtra.writeJSON(join(nodeModulesDir, STATS_FILE), stats);\n}\nfunction moduleToPnpmStorePattern(moduleName) {\n return moduleName.replace(\"/\", \"+\");\n}\nasync function applyDependencyPatches(patches) {\n var { root = process.cwd() } = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};\n var patchModuleNames = [\n ...new Set(patches.map(function(p) {\n return p.module;\n }))\n ];\n var nodeModulesDirs = findNodeModules({\n cwd: root\n }).flatMap(function(relativePath) {\n var dir = join(root, relativePath);\n var dirs = [\n dir\n ];\n var pnpmBase = join(dir, \".pnpm\");\n if (!FSExtra.existsSync(pnpmBase)) return dirs;\n var pnpmHoistedDir = join(pnpmBase, \"node_modules\");\n if (FSExtra.existsSync(pnpmHoistedDir)) {\n dirs.push(pnpmHoistedDir);\n }\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = patchModuleNames[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var moduleName = _step2.value;\n var storePattern = moduleToPnpmStorePattern(moduleName);\n var storeMatches = Glob.sync(`${storePattern}@*/node_modules`, {\n cwd: pnpmBase,\n onlyDirectories: true\n });\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = storeMatches[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var match = _step1.value;\n dirs.push(join(pnpmBase, match));\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return != null) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n return dirs;\n });\n var results = /* @__PURE__ */ new Map();\n var transformWarnedModules = /* @__PURE__ */ new Set();\n var patchedRealPaths = /* @__PURE__ */ new Set();\n await Promise.all(nodeModulesDirs.map(async function(nodeModulesDir) {\n var patchStats = await readPatchStats(nodeModulesDir);\n var statsChanged = false;\n await Promise.all(patches.map(async function(patch) {\n try {\n var nodeModuleDir = join(nodeModulesDir, patch.module);\n if (!FSExtra.existsSync(nodeModuleDir)) return;\n var realModuleDir;\n try {\n realModuleDir = realpathSync(nodeModuleDir);\n } catch (unused) {\n return;\n }\n var patchIdx = patches.indexOf(patch);\n var dedupKey = `${patchIdx}\\0${realModuleDir}`;\n if (patchedRealPaths.has(dedupKey)) return;\n patchedRealPaths.add(dedupKey);\n var version = patch.patchFiles.version;\n if (typeof version === \"string\") {\n var pkgJSON = await FSExtra.readJSON(join(nodeModuleDir, \"package.json\"));\n if (!semver.satisfies(pkgJSON.version, version)) return;\n }\n var filePatches = [];\n for (var file in patch.patchFiles) {\n if (file === \"version\") continue;\n var filesToApply = file.includes(\"*\") ? globDir(nodeModuleDir, file) : [\n file\n ];\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = filesToApply[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var relativePath = _step2.value;\n filePatches.push({\n relativePath,\n patchDefinition: patch.patchFiles[file]\n });\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return != null) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n }\n var fileStatsResults = await Promise.all(filePatches.map(async function(param) {\n var { relativePath: relativePath2 } = param;\n var fullPath = join(nodeModuleDir, relativePath2);\n try {\n var stat = await FSExtra.stat(fullPath);\n return {\n relativePath: relativePath2,\n fullPath,\n stat,\n exists: true\n };\n } catch (unused) {\n return {\n relativePath: relativePath2,\n fullPath,\n stat: null,\n exists: false\n };\n }\n }));\n var filesToProcess = fileStatsResults.filter(function(param) {\n var { fullPath, stat, exists } = param;\n if (!exists || !stat) return false;\n if (process.env.VXRN_FORCE_PATCH) return true;\n var cached = patchStats[fullPath];\n if (!cached) return true;\n return stat.size !== cached.size || stat.mtimeMs !== cached.mtimeMs;\n });\n if (filesToProcess.length === 0) {\n if (!results.has(patch.module)) {\n results.set(patch.module, \"ok\");\n }\n return;\n }\n var didApplyPatch = false;\n await Promise.all(filesToProcess.map(async function(param) {\n var { relativePath: relativePath2, fullPath } = param;\n try {\n var patchDef = filePatches.find(function(p) {\n return p.relativePath === relativePath2;\n }).patchDefinition;\n var originalPath = getOriginalPath(fullPath);\n var [targetContent, originalContent] = await Promise.all([\n FSExtra.readFile(fullPath, \"utf-8\"),\n FSExtra.readFile(originalPath, \"utf-8\").catch(function() {\n return null;\n })\n ]);\n var sourceContent = originalContent !== null && originalContent !== void 0 ? originalContent : targetContent;\n var patchedContent = null;\n if (typeof patchDef === \"string\") {\n patchedContent = patchDef;\n } else if (Array.isArray(patchDef)) {\n try {\n var contents = sourceContent;\n var _iteratorNormalCompletion3 = true, _didIteratorError3 = false, _iteratorError3 = void 0;\n try {\n for (var _iterator3 = patchDef[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {\n var strategy = _step3.value;\n if (strategy === \"flow\") {\n contents = await transformFlowBabel(contents);\n }\n if (strategy === \"swc\" || strategy === \"jsx\") {\n var _this;\n contents = ((_this = await transformSWC(fullPath, contents, {\n mode: \"build\",\n environment: \"ios\",\n forceJSX: strategy === \"jsx\",\n noHMR: true,\n fixNonTypeSpecificImports: true,\n // a patch is written to node_modules ONCE and then read by\n // every later build, dev and production alike, so its output\n // has to be valid in both. the automatic JSX runtime is not:\n // its dev form emits `jsxDEV` from react/jsx-dev-runtime, and\n // React's production build exports `jsxDEV = void 0`, so a\n // patched dependency that renders JSX throws \"undefined is not\n // a function\" from render in any production bundle. `jsx`/`jsxs`\n // work in both builds, and refresh is already off for\n // node_modules, so the stable runtime is the only correct output.\n production: true\n })) === null || _this === void 0 ? void 0 : _this.code) || contents;\n }\n }\n } catch (err) {\n _didIteratorError3 = true;\n _iteratorError3 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion3 && _iterator3.return != null) {\n _iterator3.return();\n }\n } finally {\n if (_didIteratorError3) {\n throw _iteratorError3;\n }\n }\n }\n if (contents !== sourceContent) {\n patchedContent = contents;\n }\n } catch (transformErr) {\n if (!transformWarnedModules.has(patch.module)) {\n var _ref;\n transformWarnedModules.add(patch.module);\n console.warn(` \\u26A0 Patch transform failed for ${patch.module} in ${relativePath2}, skipping non-critical patch: ${(_ref = transformErr === null || transformErr === void 0 ? void 0 : transformErr.stack) !== null && _ref !== void 0 ? _ref : transformErr}`);\n }\n return;\n }\n } else {\n var out = await patchDef(sourceContent);\n if (typeof out === \"string\" && out !== sourceContent) {\n patchedContent = out;\n } else if (typeof out === \"string\") {\n console.warn(`[vxrn] patch for ${patch.module} matched nothing in ${relativePath2} \\u2014 it is stale and is no longer protecting anything`);\n }\n }\n if (patchedContent !== null) {\n if (targetContent === patchedContent) {\n var stat = await FSExtra.stat(fullPath);\n patchStats[fullPath] = {\n size: stat.size,\n mtimeMs: stat.mtimeMs\n };\n statsChanged = true;\n return;\n }\n await Promise.all([\n originalContent === null && atomicWriteFile(originalPath, sourceContent),\n atomicWriteFile(fullPath, patchedContent)\n ]);\n var stat1 = await FSExtra.stat(fullPath);\n patchStats[fullPath] = {\n size: stat1.size,\n mtimeMs: stat1.mtimeMs\n };\n statsChanged = true;\n didApplyPatch = true;\n if (process.env.DEBUG) {\n console.info(` - Applied patch to ${patch.module}: ${relativePath2}`);\n }\n } else {\n var stat2 = await FSExtra.stat(fullPath);\n patchStats[fullPath] = {\n size: stat2.size,\n mtimeMs: stat2.mtimeMs\n };\n statsChanged = true;\n }\n } catch (err) {\n if (err instanceof Bail) return;\n throw err;\n }\n }));\n if (didApplyPatch) {\n results.set(patch.module, \"applied\");\n } else if (!results.has(patch.module)) {\n results.set(patch.module, \"ok\");\n }\n } catch (err) {\n console.error(`\\u{1F6A8} Error applying patch to`, patch.module);\n console.error(err);\n }\n }));\n if (statsChanged) {\n await writePatchStats(nodeModulesDir, patchStats);\n }\n }));\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = results[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [module, result] = _step.value;\n if (result === \"applied\") {\n console.info(` \\u{1FA79} ${module}`);\n } else if (result === \"ok\" && process.env.VXRN_FORCE_PATCH) {\n console.info(` \\u2713 ${module}`);\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n}\nasync function atomicWriteFile(filePath, contents) {\n var tempPath = filePath + \".vxrn.tmp.\" + process.pid + \".\" + Date.now();\n await FSExtra.writeFile(tempPath, contents);\n await rename(tempPath, filePath);\n}\nexport {\n applyBuiltInPatches,\n applyDependencyPatches,\n bailIfExists,\n bailIfUnchanged,\n moduleToPnpmStorePattern\n};\n//# sourceMappingURL=patches.js.map\n"],"mappings":"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"}
1
+ {"version":3,"file":"patches.native.js","names":[],"sources":["utils/patches.native.js"],"sourcesContent":["import { transformSWC } from \"@vxrn/compiler\";\nimport { transformFlowBabel } from \"@vxrn/vite-flow\";\nimport Glob from \"fast-glob\";\nimport findNodeModules from \"find-node-modules\";\nimport FSExtra from \"fs-extra\";\nimport { realpathSync } from \"fs\";\nimport { join } from \"path\";\nimport { rename } from \"fs/promises\";\nimport semver from \"semver\";\nimport { builtInDepPatches } from \"../patches/builtInDepPatches\";\nimport { globDir } from \"./globDir\";\nfunction _assert_this_initialized(self) {\n if (self === void 0) throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n return self;\n}\nfunction _call_super(_this, derived, args) {\n derived = _get_prototype_of(derived);\n return _possible_constructor_return(_this, _is_native_reflect_construct() ? Reflect.construct(derived, args || [], _get_prototype_of(_this).constructor) : derived.apply(_this, args));\n}\nfunction _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\nfunction _construct(Parent, args, Class) {\n if (_is_native_reflect_construct()) _construct = Reflect.construct;\n else {\n _construct = function construct(Parent2, args2, Class2) {\n var a = [\n null\n ];\n a.push.apply(a, args2);\n var Constructor = Function.bind.apply(Parent2, a);\n var instance = new Constructor();\n if (Class2) _set_prototype_of(instance, Class2.prototype);\n return instance;\n };\n }\n return _construct.apply(null, arguments);\n}\nfunction _get_prototype_of(o) {\n _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o2) {\n return o2.__proto__ || Object.getPrototypeOf(o2);\n };\n return _get_prototype_of(o);\n}\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _set_prototype_of(subClass, superClass);\n}\nfunction _is_native_function(fn) {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n}\nfunction _is_native_reflect_construct() {\n try {\n var result = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {\n }));\n } catch (_) {\n }\n return (_is_native_reflect_construct = function() {\n return !!result;\n })();\n}\nfunction _possible_constructor_return(self, call) {\n if (call && (_type_of(call) === \"object\" || typeof call === \"function\")) return call;\n return _assert_this_initialized(self);\n}\nfunction _set_prototype_of(o, p) {\n _set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o2, p2) {\n o2.__proto__ = p2;\n return o2;\n };\n return _set_prototype_of(o, p);\n}\nfunction _type_of(obj) {\n \"@swc/helpers - typeof\";\n return obj && typeof Symbol !== \"undefined\" && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n}\nfunction _wrap_native_super(Class) {\n var _cache = typeof Map === \"function\" ? /* @__PURE__ */ new Map() : void 0;\n _wrap_native_super = function(Class2) {\n if (Class2 === null || !_is_native_function(Class2)) return Class2;\n if (typeof Class2 !== \"function\") throw new TypeError(\"Super expression must either be null or a function\");\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class2)) return _cache.get(Class2);\n _cache.set(Class2, Wrapper);\n }\n function Wrapper() {\n return _construct(Class2, arguments, _get_prototype_of(this).constructor);\n }\n Wrapper.prototype = Object.create(Class2.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return _set_prototype_of(Wrapper, Class2);\n };\n return _wrap_native_super(Class);\n}\nvar Bail = /* @__PURE__ */ (function(Error1) {\n \"use strict\";\n _inherits(Bail2, Error1);\n function Bail2() {\n _class_call_check(this, Bail2);\n return _call_super(this, Bail2, arguments);\n }\n return Bail2;\n})(_wrap_native_super(Error));\nfunction bailIfUnchanged(obj1, obj2) {\n if (JSON.stringify(obj1) === JSON.stringify(obj2)) {\n throw new Bail();\n }\n}\nfunction bailIfExists(haystack, needle) {\n if (haystack.includes(needle)) {\n throw new Bail();\n }\n}\nasync function applyBuiltInPatches(options, extraPatches) {\n var all = [\n ...builtInDepPatches\n ];\n if (extraPatches) {\n var _loop = function(key2) {\n var extraPatchFiles = extraPatches[key2];\n var existing = all.find(function(x) {\n return x.module === key2;\n });\n if (existing) {\n for (var patchKey in extraPatchFiles) {\n if (existing.patchFiles[patchKey]) {\n console.warn(`Warning: Overwriting One built-in patch with user patch`, key2, patchKey);\n }\n existing.patchFiles[patchKey] = extraPatchFiles[patchKey];\n }\n } else {\n all.push({\n module: key2,\n patchFiles: extraPatchFiles\n });\n }\n };\n for (var key in extraPatches) _loop(key);\n }\n await applyDependencyPatches(all, {\n root: options.root\n });\n}\nvar STATS_FILE = \".vxrn.patch-stats.json\";\nfunction getOriginalPath(fullPath) {\n return fullPath + \".vxrn.original\";\n}\nasync function readPatchStats(nodeModulesDir) {\n try {\n return await FSExtra.readJSON(join(nodeModulesDir, STATS_FILE));\n } catch (unused) {\n return {};\n }\n}\nasync function writePatchStats(nodeModulesDir, stats) {\n await FSExtra.writeJSON(join(nodeModulesDir, STATS_FILE), stats);\n}\nfunction moduleToPnpmStorePattern(moduleName) {\n return moduleName.replace(\"/\", \"+\");\n}\nasync function applyDependencyPatches(patches) {\n var { root = process.cwd() } = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};\n var patchModuleNames = [\n ...new Set(patches.map(function(p) {\n return p.module;\n }))\n ];\n var nodeModulesDirs = findNodeModules({\n cwd: root\n }).flatMap(function(relativePath) {\n var dir = join(root, relativePath);\n var dirs = [\n dir\n ];\n var pnpmBase = join(dir, \".pnpm\");\n if (!FSExtra.existsSync(pnpmBase)) return dirs;\n var pnpmHoistedDir = join(pnpmBase, \"node_modules\");\n if (FSExtra.existsSync(pnpmHoistedDir)) {\n dirs.push(pnpmHoistedDir);\n }\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = patchModuleNames[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var moduleName = _step2.value;\n var storePattern = moduleToPnpmStorePattern(moduleName);\n var storeMatches = Glob.sync(`${storePattern}@*/node_modules`, {\n cwd: pnpmBase,\n onlyDirectories: true\n });\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = storeMatches[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var match = _step1.value;\n dirs.push(join(pnpmBase, match));\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return != null) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n return dirs;\n });\n var results = /* @__PURE__ */ new Map();\n var transformWarnedModules = /* @__PURE__ */ new Set();\n var patchedRealPaths = /* @__PURE__ */ new Set();\n await Promise.all(nodeModulesDirs.map(async function(nodeModulesDir) {\n var patchStats = await readPatchStats(nodeModulesDir);\n var statsChanged = false;\n await Promise.all(patches.map(async function(patch) {\n try {\n var nodeModuleDir = join(nodeModulesDir, patch.module);\n if (!FSExtra.existsSync(nodeModuleDir)) return;\n var realModuleDir;\n try {\n realModuleDir = realpathSync(nodeModuleDir);\n } catch (unused) {\n return;\n }\n var patchIdx = patches.indexOf(patch);\n var dedupKey = `${patchIdx}\\0${realModuleDir}`;\n if (patchedRealPaths.has(dedupKey)) return;\n patchedRealPaths.add(dedupKey);\n var version = patch.patchFiles.version;\n if (typeof version === \"string\") {\n var pkgJSON = await FSExtra.readJSON(join(nodeModuleDir, \"package.json\"));\n if (!semver.satisfies(pkgJSON.version, version)) return;\n }\n var filePatches = [];\n for (var file in patch.patchFiles) {\n if (file === \"version\") continue;\n var filesToApply = file.includes(\"*\") ? globDir(nodeModuleDir, file) : [\n file\n ];\n var _iteratorNormalCompletion2 = true, _didIteratorError2 = false, _iteratorError2 = void 0;\n try {\n for (var _iterator2 = filesToApply[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var relativePath = _step2.value;\n filePatches.push({\n relativePath,\n patchDefinition: patch.patchFiles[file]\n });\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return != null) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n }\n var fileStatsResults = await Promise.all(filePatches.map(async function(param) {\n var { relativePath: relativePath2 } = param;\n var fullPath = join(nodeModuleDir, relativePath2);\n try {\n var stat = await FSExtra.stat(fullPath);\n return {\n relativePath: relativePath2,\n fullPath,\n stat,\n exists: true\n };\n } catch (unused) {\n return {\n relativePath: relativePath2,\n fullPath,\n stat: null,\n exists: false\n };\n }\n }));\n var filesToProcess = fileStatsResults.filter(function(param) {\n var { fullPath, stat, exists } = param;\n if (!exists || !stat) return false;\n if (process.env.VXRN_FORCE_PATCH) return true;\n var cached = patchStats[fullPath];\n if (!cached) return true;\n return stat.size !== cached.size || stat.mtimeMs !== cached.mtimeMs;\n });\n if (filesToProcess.length === 0) {\n if (!results.has(patch.module)) {\n results.set(patch.module, \"ok\");\n }\n return;\n }\n var didApplyPatch = false;\n await Promise.all(filesToProcess.map(async function(param) {\n var { relativePath: relativePath2, fullPath } = param;\n try {\n var patchDef = filePatches.find(function(p) {\n return p.relativePath === relativePath2;\n }).patchDefinition;\n var originalPath = getOriginalPath(fullPath);\n var [targetContent, originalContent] = await Promise.all([\n FSExtra.readFile(fullPath, \"utf-8\"),\n FSExtra.readFile(originalPath, \"utf-8\").catch(function() {\n return null;\n })\n ]);\n var sourceContent = originalContent !== null && originalContent !== void 0 ? originalContent : targetContent;\n var patchedContent = null;\n if (typeof patchDef === \"string\") {\n patchedContent = patchDef;\n } else if (Array.isArray(patchDef)) {\n try {\n var contents = sourceContent;\n var _iteratorNormalCompletion3 = true, _didIteratorError3 = false, _iteratorError3 = void 0;\n try {\n for (var _iterator3 = patchDef[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {\n var strategy = _step3.value;\n if (strategy === \"flow\") {\n contents = await transformFlowBabel(contents);\n }\n if (strategy === \"swc\" || strategy === \"jsx\") {\n var _this;\n contents = ((_this = await transformSWC(fullPath, contents, {\n mode: \"build\",\n environment: \"ios\",\n forceJSX: strategy === \"jsx\",\n noHMR: true,\n fixNonTypeSpecificImports: true,\n // a patch is written to node_modules ONCE and then read by\n // every later build, dev and production alike, so its output\n // has to be valid in both. the automatic JSX runtime is not:\n // its dev form emits `jsxDEV` from react/jsx-dev-runtime, and\n // React's production build exports `jsxDEV = void 0`, so a\n // patched dependency that renders JSX throws \"undefined is not\n // a function\" from render in any production bundle. `jsx`/`jsxs`\n // work in both builds, and refresh is already off for\n // node_modules, so the stable runtime is the only correct output.\n production: true\n })) === null || _this === void 0 ? void 0 : _this.code) || contents;\n }\n }\n } catch (err) {\n _didIteratorError3 = true;\n _iteratorError3 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion3 && _iterator3.return != null) {\n _iterator3.return();\n }\n } finally {\n if (_didIteratorError3) {\n throw _iteratorError3;\n }\n }\n }\n if (contents !== sourceContent) {\n patchedContent = contents;\n }\n } catch (transformErr) {\n if (!transformWarnedModules.has(patch.module)) {\n var _ref;\n transformWarnedModules.add(patch.module);\n console.warn(` \\u26A0 Patch transform failed for ${patch.module} in ${relativePath2}, skipping non-critical patch: ${(_ref = transformErr === null || transformErr === void 0 ? void 0 : transformErr.stack) !== null && _ref !== void 0 ? _ref : transformErr}`);\n }\n return;\n }\n } else {\n var out = await patchDef(sourceContent);\n if (typeof out === \"string\" && out !== sourceContent) {\n patchedContent = out;\n } else if (typeof out === \"string\") {\n console.warn(`[vxrn] patch for ${patch.module} matched nothing in ${relativePath2} \\u2014 it is stale and is no longer protecting anything`);\n }\n }\n if (patchedContent !== null) {\n if (targetContent === patchedContent) {\n var stat = await FSExtra.stat(fullPath);\n patchStats[fullPath] = {\n size: stat.size,\n mtimeMs: stat.mtimeMs\n };\n statsChanged = true;\n return;\n }\n await Promise.all([\n originalContent === null && atomicWriteFile(originalPath, sourceContent),\n atomicWriteFile(fullPath, patchedContent)\n ]);\n var stat1 = await FSExtra.stat(fullPath);\n patchStats[fullPath] = {\n size: stat1.size,\n mtimeMs: stat1.mtimeMs\n };\n statsChanged = true;\n didApplyPatch = true;\n if (process.env.DEBUG) {\n console.info(` - Applied patch to ${patch.module}: ${relativePath2}`);\n }\n } else {\n var stat2 = await FSExtra.stat(fullPath);\n patchStats[fullPath] = {\n size: stat2.size,\n mtimeMs: stat2.mtimeMs\n };\n statsChanged = true;\n }\n } catch (err) {\n if (err instanceof Bail) return;\n throw err;\n }\n }));\n if (didApplyPatch) {\n results.set(patch.module, \"applied\");\n } else if (!results.has(patch.module)) {\n results.set(patch.module, \"ok\");\n }\n } catch (err) {\n console.error(`\\u{1F6A8} Error applying patch to`, patch.module);\n console.error(err);\n }\n }));\n if (statsChanged) {\n await writePatchStats(nodeModulesDir, patchStats);\n }\n }));\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = results[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [module, result] = _step.value;\n if (result === \"applied\") {\n console.info(` \\u{1FA79} ${module}`);\n } else if (result === \"ok\" && process.env.VXRN_FORCE_PATCH) {\n console.info(` \\u2713 ${module}`);\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n}\nasync function atomicWriteFile(filePath, contents) {\n var tempPath = filePath + \".vxrn.tmp.\" + process.pid + \".\" + Date.now();\n await FSExtra.writeFile(tempPath, contents);\n await rename(tempPath, filePath);\n}\nexport {\n applyBuiltInPatches,\n applyDependencyPatches,\n bailIfExists,\n bailIfUnchanged,\n moduleToPnpmStorePattern\n};\n//# sourceMappingURL=patches.js.map\n"],"mappings":"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"}
@@ -2,7 +2,7 @@ import colors from "picocolors";
2
2
 
3
3
  function printServerUrls(urls) {
4
4
  var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, info = arguments.length > 2 ? arguments[2] : void 0;
5
- var colorUrl = function(url2) {
5
+ var colorUrl = function colorUrl2(url2) {
6
6
  return colors.cyan(url2.replace(/:(\d+)\//, function(_, port) {
7
7
  return `:${colors.bold(port)}/`;
8
8
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"printServerUrls.native.js","names":[],"sources":["utils/printServerUrls.native.js"],"sourcesContent":["import colors from \"picocolors\";\nfunction printServerUrls(urls) {\n var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, info = arguments.length > 2 ? arguments[2] : void 0;\n var colorUrl = function(url2) {\n return colors.cyan(url2.replace(/:(\\d+)\\//, function(_, port) {\n return `:${colors.bold(port)}/`;\n }));\n };\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = urls.local[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var url = _step.value;\n info(` ${colors.green(\"\\u279C\")} ${colors.bold(\"Local\")}: ${colorUrl(url)}`);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = urls.network[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var url1 = _step1.value;\n info(` ${colors.green(\"\\u279C\")} ${colors.bold(\"Network\")}: ${colorUrl(url1)}`);\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n}\nexport {\n printServerUrls\n};\n//# sourceMappingURL=printServerUrls.js.map\n"],"mappings":";;;AACA,SAAS,gBAAgB,MAAM;CAC7B,IAAI,UAAU,UAAU,SAAS,KAAK,UAAU,OAAO,KAAK,IAAI,UAAU,KAAK,CAAC,GAAG,OAAO,UAAU,SAAS,IAAI,UAAU,KAAK,KAAK;CACrI,IAAI,WAAW,SAAS,MAAM;EAC5B,OAAO,OAAO,KAAK,KAAK,QAAQ,YAAY,SAAS,GAAG,MAAM;GAC5D,OAAO,IAAI,OAAO,KAAK,IAAI,EAAE;EAC/B,CAAC,CAAC;CACJ;CACA,IAAI,4BAA4B,MAAM,oBAAoB,OAAO,iBAAiB,KAAK;CACvF,IAAI;EACF,KAAK,IAAI,YAAY,KAAK,MAAM,OAAO,SAAS,CAAC,GAAG,OAAO,EAAE,6BAA6B,QAAQ,UAAU,KAAK,EAAC,CAAE,OAAO,4BAA4B,MAAM;GAC3J,IAAI,MAAM,MAAM;GAChB,KAAK,KAAK,OAAO,MAAM,GAAQ,EAAE,IAAI,OAAO,KAAK,OAAO,EAAE,MAAM,SAAS,GAAG,GAAG;EACjF;CACF,SAAS,KAAK;EACZ,oBAAoB;EACpB,iBAAiB;CACnB,UAAU;EACR,IAAI;GACF,IAAI,CAAC,6BAA6B,UAAU,UAAU,MAAM;IAC1D,UAAU,OAAO;GACnB;EACF,UAAU;GACR,IAAI,mBAAmB;IACrB,MAAM;GACR;EACF;CACF;CACA,IAAI,6BAA6B,MAAM,qBAAqB,OAAO,kBAAkB,KAAK;CAC1F,IAAI;EACF,KAAK,IAAI,aAAa,KAAK,QAAQ,OAAO,SAAS,CAAC,GAAG,QAAQ,EAAE,8BAA8B,SAAS,WAAW,KAAK,EAAC,CAAE,OAAO,6BAA6B,MAAM;GACnK,IAAI,OAAO,OAAO;GAClB,KAAK,KAAK,OAAO,MAAM,GAAQ,EAAE,IAAI,OAAO,KAAK,SAAS,EAAE,IAAI,SAAS,IAAI,GAAG;EAClF;CACF,SAAS,KAAK;EACZ,qBAAqB;EACrB,kBAAkB;CACpB,UAAU;EACR,IAAI;GACF,IAAI,CAAC,8BAA8B,WAAW,UAAU,MAAM;IAC5D,WAAW,OAAO;GACpB;EACF,UAAU;GACR,IAAI,oBAAoB;IACtB,MAAM;GACR;EACF;CACF;AACF"}
1
+ {"version":3,"file":"printServerUrls.native.js","names":[],"sources":["utils/printServerUrls.native.js"],"sourcesContent":["import colors from \"picocolors\";\nfunction printServerUrls(urls) {\n var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, info = arguments.length > 2 ? arguments[2] : void 0;\n var colorUrl = function colorUrl2(url2) {\n return colors.cyan(url2.replace(/:(\\d+)\\//, function(_, port) {\n return `:${colors.bold(port)}/`;\n }));\n };\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = urls.local[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var url = _step.value;\n info(` ${colors.green(\"\\u279C\")} ${colors.bold(\"Local\")}: ${colorUrl(url)}`);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = urls.network[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var url1 = _step1.value;\n info(` ${colors.green(\"\\u279C\")} ${colors.bold(\"Network\")}: ${colorUrl(url1)}`);\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n}\nexport {\n printServerUrls\n};\n//# sourceMappingURL=printServerUrls.js.map\n"],"mappings":";;;AACA,SAAS,gBAAgB,MAAM;CAC7B,IAAI,UAAU,UAAU,SAAS,KAAK,UAAU,OAAO,KAAK,IAAI,UAAU,KAAK,CAAC,GAAG,OAAO,UAAU,SAAS,IAAI,UAAU,KAAK,KAAK;CACrI,IAAI,WAAW,SAAS,UAAU,MAAM;EACtC,OAAO,OAAO,KAAK,KAAK,QAAQ,YAAY,SAAS,GAAG,MAAM;GAC5D,OAAO,IAAI,OAAO,KAAK,IAAI,EAAE;EAC/B,CAAC,CAAC;CACJ;CACA,IAAI,4BAA4B,MAAM,oBAAoB,OAAO,iBAAiB,KAAK;CACvF,IAAI;EACF,KAAK,IAAI,YAAY,KAAK,MAAM,OAAO,SAAS,CAAC,GAAG,OAAO,EAAE,6BAA6B,QAAQ,UAAU,KAAK,EAAC,CAAE,OAAO,4BAA4B,MAAM;GAC3J,IAAI,MAAM,MAAM;GAChB,KAAK,KAAK,OAAO,MAAM,GAAQ,EAAE,IAAI,OAAO,KAAK,OAAO,EAAE,MAAM,SAAS,GAAG,GAAG;EACjF;CACF,SAAS,KAAK;EACZ,oBAAoB;EACpB,iBAAiB;CACnB,UAAU;EACR,IAAI;GACF,IAAI,CAAC,6BAA6B,UAAU,UAAU,MAAM;IAC1D,UAAU,OAAO;GACnB;EACF,UAAU;GACR,IAAI,mBAAmB;IACrB,MAAM;GACR;EACF;CACF;CACA,IAAI,6BAA6B,MAAM,qBAAqB,OAAO,kBAAkB,KAAK;CAC1F,IAAI;EACF,KAAK,IAAI,aAAa,KAAK,QAAQ,OAAO,SAAS,CAAC,GAAG,QAAQ,EAAE,8BAA8B,SAAS,WAAW,KAAK,EAAC,CAAE,OAAO,6BAA6B,MAAM;GACnK,IAAI,OAAO,OAAO;GAClB,KAAK,KAAK,OAAO,MAAM,GAAQ,EAAE,IAAI,OAAO,KAAK,SAAS,EAAE,IAAI,SAAS,IAAI,GAAG;EAClF;CACF,SAAS,KAAK;EACZ,qBAAqB;EACrB,kBAAkB;CACpB,UAAU;EACR,IAAI;GACF,IAAI,CAAC,8BAA8B,WAAW,UAAU,MAAM;IAC5D,WAAW,OAAO;GACpB;EACF,UAAU;GACR,IAAI,oBAAoB;IACtB,MAAM;GACR;EACF;CACF;AACF"}
@@ -51,6 +51,8 @@ const EXCLUDE_LIST = [
51
51
  "@nandorojo/galeria",
52
52
  "react-native-pager-view",
53
53
  "@react-native/debugger-shell",
54
+ "@expo/cli",
55
+ "@expo/log-box",
54
56
  "@hot-updater/react-native",
55
57
  "@hot-updater/plugin-core",
56
58
  "validator",
@@ -69,6 +71,7 @@ async function scanDepsToOptimize(packageJsonPath, options = rootOptions) {
69
71
  if (options === rootOptions) {
70
72
  console.info(`[one] Scanning node_modules to auto-optimize...`);
71
73
  }
74
+ const noExternalDeps = /* @__PURE__ */ new Set();
72
75
  const currentRoot = path.dirname(packageJsonPath);
73
76
  const pkgJson = pkgJsonContent || await readPackageJsonSafe(packageJsonPath);
74
77
  const deps = Object.keys(pkgJson.dependencies || {});
@@ -96,6 +99,7 @@ async function scanDepsToOptimize(packageJsonPath, options = rootOptions) {
96
99
  hasReanimated = true;
97
100
  }
98
101
  if (depPkgJson.codegenConfig != null) {
102
+ noExternalDeps.add(dep);
99
103
  debug?.(`${dep} skipped: declares codegenConfig (native codegen package)`);
100
104
  return [];
101
105
  }
@@ -104,6 +108,7 @@ async function scanDepsToOptimize(packageJsonPath, options = rootOptions) {
104
108
  pkgJsonContent: depPkgJson,
105
109
  proceededDeps
106
110
  });
111
+ for (const dep2 of subDeps.noExternalDeps) noExternalDeps.add(dep2);
107
112
  if (subDeps.hasReanimated) {
108
113
  hasReanimated = true;
109
114
  }
@@ -152,7 +157,7 @@ async function scanDepsToOptimize(packageJsonPath, options = rootOptions) {
152
157
  })();
153
158
  const mainExport = depPkgJson["main"] || depPkgJson["module"] || definedExports["."];
154
159
  const exports = [...definedExports, ...specialExports].filter((d) => !EXCLUDE_LIST_SET.has(d));
155
- if (mainExport) {
160
+ if (mainExport && (!extname(mainExport) || /\.[cm]?[jt]s$/.test(mainExport))) {
156
161
  if (await checkIfExportExists(join(dirname(depPkgJsonPath), mainExport))) {
157
162
  exports.unshift(dep);
158
163
  }
@@ -170,6 +175,7 @@ async function scanDepsToOptimize(packageJsonPath, options = rootOptions) {
170
175
  }
171
176
  return {
172
177
  prebundleDeps,
178
+ noExternalDeps: [...noExternalDeps],
173
179
  hasReanimated,
174
180
  hasNativewind
175
181
  };
@@ -1 +1 @@
1
- {"version":3,"file":"scanDepsToOptimize.js","names":[],"sources":["utils/scanDepsToOptimize.js"],"sourcesContent":["import { createDebugger } from \"@vxrn/debug\";\nimport FSExtra from \"fs-extra\";\nimport path, { dirname, extname, join, sep } from \"node:path\";\nconst { debug, debugDetails } = createDebugger(`vxrn:scanDepsToOptimize`);\nconst EXCLUDE_LIST = [\n \"jsc-android\",\n \"react-shallow-renderer\",\n \"fsevents\",\n \"@swc/core\",\n \"@swc/core-darwin-arm64\",\n \"@swc/core-darwin-x64\",\n \"@swc/core-linux-arm-gnueabihf\",\n \"@swc/core-linux-arm64-gnu\",\n \"@swc/core-linux-arm64-musl\",\n \"@swc/core-linux-x64-gnu\",\n \"@swc/core-linux-x64-musl\",\n \"@swc/core-win32-arm64-msvc\",\n \"@swc/core-win32-ia32-msvc\",\n \"@swc/core-win32-x64-msvc\",\n \"lightningcss\",\n // this breaks fileToUrlPath in upstreams, like @discordjs/client\n \"url\",\n \"sharp\",\n \"@sentry/react-native\",\n // not used by web anyway\n // Could not read from file: /Users/n8/one/node_modules/react-native-web/dist/cjs/index.js/Libraries/Image/AssetRegistry\n // /lib/module/Platform/Platform.web.js:132:20\n \"@shopify/react-native-skia\",\n \"@react-native/virtualized-lists\",\n // Unexpected \"typeof\" in `node_modules/@react-native/virtualized-lists/index.js`\n // Native only, we don't expect SSR to use these packages.\n // Also, some of these packages might attempt to import from react-native internals, which will break in SSR while react-native is aliased to react-native-web.\n \"@vxrn/vite-native-hmr\",\n \"@vxrn/compiler\",\n \"@vxrn/vite-native-client\",\n // build-time only, and they load native .node addons the ssr dep optimizer\n // cannot parse. apps list vxrn as a dependency because it is their dev\n // server, which is exactly why it must never be pre-bundled for ssr.\n \"vxrn\",\n \"@vxrn/vite-plugin-metro\",\n \"oxc-transform\",\n \"oxc-parser\",\n \"react-native-ios-utilities\",\n \"react-native-ios-modal\",\n \"react-native-ios-context-menu\",\n \"react-native-haptic-feedback\",\n \"react-native-sortables\",\n \"react-native-image-colors\",\n \"react-native-fast-image\",\n \"react-native-fast-squircle\",\n \"react-native-device-info\",\n // CLI/scripts shouldn't be used in SSR runtime\n \"@tamagui/cli\",\n // only used by static/plugin\n \"@tamagui/static\",\n \"@tamagui/config-default\",\n \"@tamagui/vite-plugin\",\n \"@take-out/scripts\",\n \"@take-out/cli\",\n // Should be used on native only\n \"@tamagui/core/native-test\",\n \"@storybook/react\",\n // native-only or not needed in SSR\n \"@nandorojo/galeria\",\n \"react-native-pager-view\",\n \"@react-native/debugger-shell\",\n \"@hot-updater/react-native\",\n \"@hot-updater/plugin-core\",\n \"validator\",\n \"zlib\"\n];\nconst EXCLUDE_LIST_SET = new Set(EXCLUDE_LIST);\nconst INCLUDE_LIST = [\n // ReferenceError: exports is not defined - at eval (.../node_modules/inline-style-prefixer/lib/createPrefixer.js:3:23)\n \"inline-style-prefixer\",\n \"react-native-vector-icons\",\n \"jotai\"\n];\nconst INCLUDE_LIST_SET = new Set(INCLUDE_LIST);\nconst rootOptions = {};\nasync function scanDepsToOptimize(packageJsonPath, options = rootOptions) {\n const { parentDepNames = [], proceededDeps = /* @__PURE__ */ new Map(), pkgJsonContent } = options;\n if (options === rootOptions) {\n console.info(`[one] Scanning node_modules to auto-optimize...`);\n }\n const currentRoot = path.dirname(packageJsonPath);\n const pkgJson = pkgJsonContent || await readPackageJsonSafe(packageJsonPath);\n const deps = Object.keys(pkgJson.dependencies || {});\n const needsWorklets = (json) => !!(json.dependencies?.[\"react-native-reanimated\"] || json.dependencies?.[\"react-native-worklets\"]);\n let hasReanimated = needsWorklets(pkgJson);\n const prebundleDeps = (await Promise.all(\n deps.map(async (dep) => {\n if (parentDepNames.includes(dep)) {\n return [];\n }\n const cachedResult = proceededDeps.get(dep);\n if (cachedResult) {\n return cachedResult;\n }\n if (EXCLUDE_LIST_SET.has(dep)) {\n return [];\n }\n const localPath = await findDepPkgJsonPath(dep, currentRoot);\n if (!localPath) return [];\n const depPkgJsonPath = await FSExtra.realpath(localPath);\n if (options.filter && !options.filter(depPkgJsonPath)) {\n return [];\n }\n const depPkgJson = await readPackageJsonSafe(depPkgJsonPath);\n if (needsWorklets(depPkgJson)) {\n hasReanimated = true;\n }\n if (depPkgJson.codegenConfig != null) {\n debug?.(`${dep} skipped: declares codegenConfig (native codegen package)`);\n return [];\n }\n const subDeps = await scanDepsToOptimize(depPkgJsonPath, {\n parentDepNames: [...parentDepNames, dep],\n pkgJsonContent: depPkgJson,\n proceededDeps\n });\n if (subDeps.hasReanimated) {\n hasReanimated = true;\n }\n const shouldPreBundle = subDeps.prebundleDeps.length > 0 || INCLUDE_LIST_SET.has(\n dep\n ) || hasRequiredDep(depPkgJson, \"react\") || // an optional react peer still means the package ships react\n // entrypoints (e.g. better-auth/react). left external, those load a\n // second react copy in SSR and crash hooks with a null dispatcher.\n !!depPkgJson.peerDependencies?.react || hasRequiredDep(depPkgJson, \"react-native\") || hasRequiredDep(depPkgJson, \"expo-modules-core\") || // expo packages publish extensionless ESM imports that Node cannot\n // execute directly. Keep installed Expo modules inside Vite's SSR\n // graph without making Expo a framework dependency.\n dep.startsWith(\"@expo/\") || dep.startsWith(\"expo-\");\n debug?.(`${dep} shouldPreBundle? ${shouldPreBundle}`);\n const depsToPreBundle = await (async () => {\n if (!shouldPreBundle) {\n return [];\n }\n const depPkgJsonExports = depPkgJson.exports || {};\n const definedExports = Object.keys(depPkgJsonExports).filter((k) => {\n const expData = depPkgJsonExports[k];\n const imp = typeof expData === \"string\" ? expData : expData?.import;\n if (typeof imp !== \"string\") {\n return false;\n }\n if (!imp.endsWith(\".js\")) {\n return false;\n }\n if (!k.match(/^(\\.\\/)?[a-zA-Z0-9-_]+$/)) {\n return false;\n }\n return true;\n }).map((k) => k.replace(/^\\.\\/?/, \"\")).map((k) => `${dep}/${k}`);\n const specialExports = (() => {\n switch (dep) {\n case \"react-native-vector-icons\":\n return [\n \"AntDesign\",\n \"Entypo\",\n \"EvilIcons\",\n \"Feather\",\n \"FontAwesome\",\n \"FontAwesome5\",\n \"FontAwesome5Pro\",\n \"Fontisto\",\n \"Foundation\",\n \"Ionicons\",\n \"MaterialCommunityIcons\",\n \"MaterialIcons\",\n \"Octicons\",\n \"SimpleLineIcons\",\n \"Zocial\"\n ].map((n) => `${dep}/${n}`);\n default:\n return [];\n }\n })();\n const mainExport = depPkgJson[\"main\"] || depPkgJson[\"module\"] || definedExports[\".\"];\n const exports = [...definedExports, ...specialExports].filter(\n (d) => !EXCLUDE_LIST_SET.has(d)\n );\n if (mainExport) {\n if (await checkIfExportExists(join(dirname(depPkgJsonPath), mainExport))) {\n exports.unshift(dep);\n }\n }\n return exports;\n })();\n const result = [...depsToPreBundle, ...subDeps.prebundleDeps];\n debugDetails?.(`final result ${JSON.stringify(result, null, 2)}`);\n proceededDeps.set(dep, result);\n return result;\n })\n )).flat().filter((dep, index, arr) => arr.indexOf(dep) === index);\n const hasNativewind = !!pkgJson.dependencies?.[\"nativewind\"];\n if ((hasNativewind || hasReanimated) && options === rootOptions) {\n if (hasReanimated)\n console.info(\n `[one] Enabled babel plugins: ${[hasReanimated ? \"Reanimated\" : \"\", hasNativewind ? \"Nativewind\" : \"\"].filter(Boolean).join(\", \")}`\n );\n }\n return {\n prebundleDeps,\n hasReanimated,\n // only check if set in root, dont want to enable css mode too easily\n hasNativewind\n };\n}\nasync function checkIfExportExists(pathIn) {\n const paths = [\n pathIn,\n ...extname(pathIn) ? [] : [pathIn + \".js\", pathIn + sep + \"index.js\"]\n ];\n for (const path2 of paths) {\n if (await FSExtra.pathExists(path2)) {\n return true;\n }\n }\n return false;\n}\nasync function readPackageJsonSafe(packageJsonPath) {\n try {\n return await FSExtra.readJson(packageJsonPath);\n } catch (e) {\n console.error(\n `[scanDepsToPreBundleForSsr] Error reading package.json from ${packageJsonPath}: ${e}`\n );\n return {};\n }\n}\nasync function findDepPkgJsonPath(dep, dependent) {\n let root = dependent;\n while (root) {\n const possiblePkgJson = path.join(root, \"node_modules\", dep, \"package.json\");\n if (await FSExtra.pathExists(possiblePkgJson)) {\n return possiblePkgJson;\n }\n const nextRoot = path.dirname(root);\n if (nextRoot === root) break;\n root = nextRoot;\n }\n console.error(\n `[findDepPkgJsonPath] Could not find package.json for ${dep}, which is a dependency of ${dependent}`\n );\n return void 0;\n}\nfunction hasRequiredDep(pkgJson, depName) {\n return !!(pkgJson.dependencies?.[depName] || pkgJson.peerDependencies?.[depName] && !pkgJson.peerDependenciesMeta?.[depName]?.optional);\n}\nexport {\n EXCLUDE_LIST,\n EXCLUDE_LIST_SET,\n INCLUDE_LIST,\n INCLUDE_LIST_SET,\n findDepPkgJsonPath,\n scanDepsToOptimize\n};\n//# sourceMappingURL=scanDepsToOptimize.js.map\n"],"mappings":"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"}
1
+ {"version":3,"file":"scanDepsToOptimize.js","names":[],"sources":["utils/scanDepsToOptimize.js"],"sourcesContent":["import { createDebugger } from \"@vxrn/debug\";\nimport FSExtra from \"fs-extra\";\nimport path, { dirname, extname, join, sep } from \"node:path\";\nconst { debug, debugDetails } = createDebugger(`vxrn:scanDepsToOptimize`);\nconst EXCLUDE_LIST = [\n \"jsc-android\",\n \"react-shallow-renderer\",\n \"fsevents\",\n \"@swc/core\",\n \"@swc/core-darwin-arm64\",\n \"@swc/core-darwin-x64\",\n \"@swc/core-linux-arm-gnueabihf\",\n \"@swc/core-linux-arm64-gnu\",\n \"@swc/core-linux-arm64-musl\",\n \"@swc/core-linux-x64-gnu\",\n \"@swc/core-linux-x64-musl\",\n \"@swc/core-win32-arm64-msvc\",\n \"@swc/core-win32-ia32-msvc\",\n \"@swc/core-win32-x64-msvc\",\n \"lightningcss\",\n // this breaks fileToUrlPath in upstreams, like @discordjs/client\n \"url\",\n \"sharp\",\n \"@sentry/react-native\",\n // not used by web anyway\n // Could not read from file: /Users/n8/one/node_modules/react-native-web/dist/cjs/index.js/Libraries/Image/AssetRegistry\n // /lib/module/Platform/Platform.web.js:132:20\n \"@shopify/react-native-skia\",\n \"@react-native/virtualized-lists\",\n // Unexpected \"typeof\" in `node_modules/@react-native/virtualized-lists/index.js`\n // Native only, we don't expect SSR to use these packages.\n // Also, some of these packages might attempt to import from react-native internals, which will break in SSR while react-native is aliased to react-native-web.\n \"@vxrn/vite-native-hmr\",\n \"@vxrn/compiler\",\n \"@vxrn/vite-native-client\",\n // build-time only, and they load native .node addons the ssr dep optimizer\n // cannot parse. apps list vxrn as a dependency because it is their dev\n // server, which is exactly why it must never be pre-bundled for ssr.\n \"vxrn\",\n \"@vxrn/vite-plugin-metro\",\n \"oxc-transform\",\n \"oxc-parser\",\n \"react-native-ios-utilities\",\n \"react-native-ios-modal\",\n \"react-native-ios-context-menu\",\n \"react-native-haptic-feedback\",\n \"react-native-sortables\",\n \"react-native-image-colors\",\n \"react-native-fast-image\",\n \"react-native-fast-squircle\",\n \"react-native-device-info\",\n // CLI/scripts shouldn't be used in SSR runtime\n \"@tamagui/cli\",\n // only used by static/plugin\n \"@tamagui/static\",\n \"@tamagui/config-default\",\n \"@tamagui/vite-plugin\",\n \"@take-out/scripts\",\n \"@take-out/cli\",\n // Should be used on native only\n \"@tamagui/core/native-test\",\n \"@storybook/react\",\n // native-only or not needed in SSR\n \"@nandorojo/galeria\",\n \"react-native-pager-view\",\n \"@react-native/debugger-shell\",\n // expo's debugger is a standalone app, not an SSR runtime dependency.\n \"@expo/cli\",\n \"@expo/log-box\",\n \"@hot-updater/react-native\",\n \"@hot-updater/plugin-core\",\n \"validator\",\n \"zlib\"\n];\nconst EXCLUDE_LIST_SET = new Set(EXCLUDE_LIST);\nconst INCLUDE_LIST = [\n // ReferenceError: exports is not defined - at eval (.../node_modules/inline-style-prefixer/lib/createPrefixer.js:3:23)\n \"inline-style-prefixer\",\n \"react-native-vector-icons\",\n \"jotai\"\n];\nconst INCLUDE_LIST_SET = new Set(INCLUDE_LIST);\nconst rootOptions = {};\nasync function scanDepsToOptimize(packageJsonPath, options = rootOptions) {\n const { parentDepNames = [], proceededDeps = /* @__PURE__ */ new Map(), pkgJsonContent } = options;\n if (options === rootOptions) {\n console.info(`[one] Scanning node_modules to auto-optimize...`);\n }\n const noExternalDeps = /* @__PURE__ */ new Set();\n const currentRoot = path.dirname(packageJsonPath);\n const pkgJson = pkgJsonContent || await readPackageJsonSafe(packageJsonPath);\n const deps = Object.keys(pkgJson.dependencies || {});\n const needsWorklets = (json) => !!(json.dependencies?.[\"react-native-reanimated\"] || json.dependencies?.[\"react-native-worklets\"]);\n let hasReanimated = needsWorklets(pkgJson);\n const prebundleDeps = (await Promise.all(\n deps.map(async (dep) => {\n if (parentDepNames.includes(dep)) {\n return [];\n }\n const cachedResult = proceededDeps.get(dep);\n if (cachedResult) {\n return cachedResult;\n }\n if (EXCLUDE_LIST_SET.has(dep)) {\n return [];\n }\n const localPath = await findDepPkgJsonPath(dep, currentRoot);\n if (!localPath) return [];\n const depPkgJsonPath = await FSExtra.realpath(localPath);\n if (options.filter && !options.filter(depPkgJsonPath)) {\n return [];\n }\n const depPkgJson = await readPackageJsonSafe(depPkgJsonPath);\n if (needsWorklets(depPkgJson)) {\n hasReanimated = true;\n }\n if (depPkgJson.codegenConfig != null) {\n noExternalDeps.add(dep);\n debug?.(`${dep} skipped: declares codegenConfig (native codegen package)`);\n return [];\n }\n const subDeps = await scanDepsToOptimize(depPkgJsonPath, {\n parentDepNames: [...parentDepNames, dep],\n pkgJsonContent: depPkgJson,\n proceededDeps\n });\n for (const dep2 of subDeps.noExternalDeps) noExternalDeps.add(dep2);\n if (subDeps.hasReanimated) {\n hasReanimated = true;\n }\n const shouldPreBundle = subDeps.prebundleDeps.length > 0 || INCLUDE_LIST_SET.has(\n dep\n ) || hasRequiredDep(depPkgJson, \"react\") || // an optional react peer still means the package ships react\n // entrypoints (e.g. better-auth/react). left external, those load a\n // second react copy in SSR and crash hooks with a null dispatcher.\n !!depPkgJson.peerDependencies?.react || hasRequiredDep(depPkgJson, \"react-native\") || hasRequiredDep(depPkgJson, \"expo-modules-core\") || // expo packages publish extensionless ESM imports that Node cannot\n // execute directly. Keep installed Expo modules inside Vite's SSR\n // graph without making Expo a framework dependency.\n dep.startsWith(\"@expo/\") || dep.startsWith(\"expo-\");\n debug?.(`${dep} shouldPreBundle? ${shouldPreBundle}`);\n const depsToPreBundle = await (async () => {\n if (!shouldPreBundle) {\n return [];\n }\n const depPkgJsonExports = depPkgJson.exports || {};\n const definedExports = Object.keys(depPkgJsonExports).filter((k) => {\n const expData = depPkgJsonExports[k];\n const imp = typeof expData === \"string\" ? expData : expData?.import;\n if (typeof imp !== \"string\") {\n return false;\n }\n if (!imp.endsWith(\".js\")) {\n return false;\n }\n if (!k.match(/^(\\.\\/)?[a-zA-Z0-9-_]+$/)) {\n return false;\n }\n return true;\n }).map((k) => k.replace(/^\\.\\/?/, \"\")).map((k) => `${dep}/${k}`);\n const specialExports = (() => {\n switch (dep) {\n case \"react-native-vector-icons\":\n return [\n \"AntDesign\",\n \"Entypo\",\n \"EvilIcons\",\n \"Feather\",\n \"FontAwesome\",\n \"FontAwesome5\",\n \"FontAwesome5Pro\",\n \"Fontisto\",\n \"Foundation\",\n \"Ionicons\",\n \"MaterialCommunityIcons\",\n \"MaterialIcons\",\n \"Octicons\",\n \"SimpleLineIcons\",\n \"Zocial\"\n ].map((n) => `${dep}/${n}`);\n default:\n return [];\n }\n })();\n const mainExport = depPkgJson[\"main\"] || depPkgJson[\"module\"] || definedExports[\".\"];\n const exports = [...definedExports, ...specialExports].filter(\n (d) => !EXCLUDE_LIST_SET.has(d)\n );\n if (mainExport && (!extname(mainExport) || /\\.[cm]?[jt]s$/.test(mainExport))) {\n if (await checkIfExportExists(join(dirname(depPkgJsonPath), mainExport))) {\n exports.unshift(dep);\n }\n }\n return exports;\n })();\n const result = [...depsToPreBundle, ...subDeps.prebundleDeps];\n debugDetails?.(`final result ${JSON.stringify(result, null, 2)}`);\n proceededDeps.set(dep, result);\n return result;\n })\n )).flat().filter((dep, index, arr) => arr.indexOf(dep) === index);\n const hasNativewind = !!pkgJson.dependencies?.[\"nativewind\"];\n if ((hasNativewind || hasReanimated) && options === rootOptions) {\n if (hasReanimated)\n console.info(\n `[one] Enabled babel plugins: ${[hasReanimated ? \"Reanimated\" : \"\", hasNativewind ? \"Nativewind\" : \"\"].filter(Boolean).join(\", \")}`\n );\n }\n return {\n prebundleDeps,\n noExternalDeps: [...noExternalDeps],\n hasReanimated,\n // only check if set in root, dont want to enable css mode too easily\n hasNativewind\n };\n}\nasync function checkIfExportExists(pathIn) {\n const paths = [\n pathIn,\n ...extname(pathIn) ? [] : [pathIn + \".js\", pathIn + sep + \"index.js\"]\n ];\n for (const path2 of paths) {\n if (await FSExtra.pathExists(path2)) {\n return true;\n }\n }\n return false;\n}\nasync function readPackageJsonSafe(packageJsonPath) {\n try {\n return await FSExtra.readJson(packageJsonPath);\n } catch (e) {\n console.error(\n `[scanDepsToPreBundleForSsr] Error reading package.json from ${packageJsonPath}: ${e}`\n );\n return {};\n }\n}\nasync function findDepPkgJsonPath(dep, dependent) {\n let root = dependent;\n while (root) {\n const possiblePkgJson = path.join(root, \"node_modules\", dep, \"package.json\");\n if (await FSExtra.pathExists(possiblePkgJson)) {\n return possiblePkgJson;\n }\n const nextRoot = path.dirname(root);\n if (nextRoot === root) break;\n root = nextRoot;\n }\n console.error(\n `[findDepPkgJsonPath] Could not find package.json for ${dep}, which is a dependency of ${dependent}`\n );\n return void 0;\n}\nfunction hasRequiredDep(pkgJson, depName) {\n return !!(pkgJson.dependencies?.[depName] || pkgJson.peerDependencies?.[depName] && !pkgJson.peerDependenciesMeta?.[depName]?.optional);\n}\nexport {\n EXCLUDE_LIST,\n EXCLUDE_LIST_SET,\n INCLUDE_LIST,\n INCLUDE_LIST_SET,\n findDepPkgJsonPath,\n scanDepsToOptimize\n};\n//# sourceMappingURL=scanDepsToOptimize.js.map\n"],"mappings":"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"}
@@ -51,6 +51,8 @@ var EXCLUDE_LIST = [
51
51
  "@nandorojo/galeria",
52
52
  "react-native-pager-view",
53
53
  "@react-native/debugger-shell",
54
+ "@expo/cli",
55
+ "@expo/log-box",
54
56
  "@hot-updater/react-native",
55
57
  "@hot-updater/plugin-core",
56
58
  "validator",
@@ -73,10 +75,11 @@ async function scanDepsToOptimize(packageJsonPath) {
73
75
  if (options === rootOptions) {
74
76
  console.info(`[one] Scanning node_modules to auto-optimize...`);
75
77
  }
78
+ var noExternalDeps = /* @__PURE__ */ new Set();
76
79
  var currentRoot = path.dirname(packageJsonPath);
77
80
  var pkgJson = pkgJsonContent || await readPackageJsonSafe(packageJsonPath);
78
81
  var deps = Object.keys(pkgJson.dependencies || {});
79
- var needsWorklets = function(json) {
82
+ var needsWorklets = function needsWorklets2(json) {
80
83
  var _json_dependencies, _json_dependencies1;
81
84
  return !!(((_json_dependencies = json.dependencies) === null || _json_dependencies === void 0 ? void 0 : _json_dependencies["react-native-reanimated"]) || ((_json_dependencies1 = json.dependencies) === null || _json_dependencies1 === void 0 ? void 0 : _json_dependencies1["react-native-worklets"]));
82
85
  };
@@ -104,6 +107,7 @@ async function scanDepsToOptimize(packageJsonPath) {
104
107
  hasReanimated = true;
105
108
  }
106
109
  if (depPkgJson.codegenConfig != null) {
110
+ noExternalDeps.add(dep);
107
111
  debug === null || debug === void 0 ? void 0 : debug(`${dep} skipped: declares codegenConfig (native codegen package)`);
108
112
  return [];
109
113
  }
@@ -112,6 +116,26 @@ async function scanDepsToOptimize(packageJsonPath) {
112
116
  pkgJsonContent: depPkgJson,
113
117
  proceededDeps
114
118
  });
119
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
120
+ try {
121
+ for (var _iterator = subDeps.noExternalDeps[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
122
+ var _$dep = _step.value;
123
+ noExternalDeps.add(_$dep);
124
+ }
125
+ } catch (err) {
126
+ _didIteratorError = true;
127
+ _iteratorError = err;
128
+ } finally {
129
+ try {
130
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
131
+ _iterator.return();
132
+ }
133
+ } finally {
134
+ if (_didIteratorError) {
135
+ throw _iteratorError;
136
+ }
137
+ }
138
+ }
115
139
  if (subDeps.hasReanimated) {
116
140
  hasReanimated = true;
117
141
  }
@@ -168,7 +192,7 @@ async function scanDepsToOptimize(packageJsonPath) {
168
192
  var exports = [...definedExports, ...specialExports].filter(function(d) {
169
193
  return !EXCLUDE_LIST_SET.has(d);
170
194
  });
171
- if (mainExport) {
195
+ if (mainExport && (!extname(mainExport) || /\.[cm]?[jt]s$/.test(mainExport))) {
172
196
  if (await checkIfExportExists(join(dirname(depPkgJsonPath), mainExport))) {
173
197
  exports.unshift(dep);
174
198
  }
@@ -188,6 +212,7 @@ async function scanDepsToOptimize(packageJsonPath) {
188
212
  }
189
213
  return {
190
214
  prebundleDeps,
215
+ noExternalDeps: [...noExternalDeps],
191
216
  hasReanimated,
192
217
  hasNativewind
193
218
  };
@@ -1 +1 @@
1
- {"version":3,"file":"scanDepsToOptimize.native.js","names":[],"sources":["utils/scanDepsToOptimize.native.js"],"sourcesContent":["import { createDebugger } from \"@vxrn/debug\";\nimport FSExtra from \"fs-extra\";\nimport path, { dirname, extname, join, sep } from \"path\";\nvar { debug, debugDetails } = createDebugger(`vxrn:scanDepsToOptimize`);\nvar EXCLUDE_LIST = [\n \"jsc-android\",\n \"react-shallow-renderer\",\n \"fsevents\",\n \"@swc/core\",\n \"@swc/core-darwin-arm64\",\n \"@swc/core-darwin-x64\",\n \"@swc/core-linux-arm-gnueabihf\",\n \"@swc/core-linux-arm64-gnu\",\n \"@swc/core-linux-arm64-musl\",\n \"@swc/core-linux-x64-gnu\",\n \"@swc/core-linux-x64-musl\",\n \"@swc/core-win32-arm64-msvc\",\n \"@swc/core-win32-ia32-msvc\",\n \"@swc/core-win32-x64-msvc\",\n \"lightningcss\",\n // this breaks fileToUrlPath in upstreams, like @discordjs/client\n \"url\",\n \"sharp\",\n \"@sentry/react-native\",\n // not used by web anyway\n // Could not read from file: /Users/n8/one/node_modules/react-native-web/dist/cjs/index.js/Libraries/Image/AssetRegistry\n // /lib/module/Platform/Platform.web.js:132:20\n \"@shopify/react-native-skia\",\n \"@react-native/virtualized-lists\",\n // Unexpected \"typeof\" in `node_modules/@react-native/virtualized-lists/index.js`\n // Native only, we don't expect SSR to use these packages.\n // Also, some of these packages might attempt to import from react-native internals, which will break in SSR while react-native is aliased to react-native-web.\n \"@vxrn/vite-native-hmr\",\n \"@vxrn/compiler\",\n \"@vxrn/vite-native-client\",\n // build-time only, and they load native .node addons the ssr dep optimizer\n // cannot parse. apps list vxrn as a dependency because it is their dev\n // server, which is exactly why it must never be pre-bundled for ssr.\n \"vxrn\",\n \"@vxrn/vite-plugin-metro\",\n \"oxc-transform\",\n \"oxc-parser\",\n \"react-native-ios-utilities\",\n \"react-native-ios-modal\",\n \"react-native-ios-context-menu\",\n \"react-native-haptic-feedback\",\n \"react-native-sortables\",\n \"react-native-image-colors\",\n \"react-native-fast-image\",\n \"react-native-fast-squircle\",\n \"react-native-device-info\",\n // CLI/scripts shouldn't be used in SSR runtime\n \"@tamagui/cli\",\n // only used by static/plugin\n \"@tamagui/static\",\n \"@tamagui/config-default\",\n \"@tamagui/vite-plugin\",\n \"@take-out/scripts\",\n \"@take-out/cli\",\n // Should be used on native only\n \"@tamagui/core/native-test\",\n \"@storybook/react\",\n // native-only or not needed in SSR\n \"@nandorojo/galeria\",\n \"react-native-pager-view\",\n \"@react-native/debugger-shell\",\n \"@hot-updater/react-native\",\n \"@hot-updater/plugin-core\",\n \"validator\",\n \"zlib\"\n];\nvar EXCLUDE_LIST_SET = new Set(EXCLUDE_LIST);\nvar INCLUDE_LIST = [\n // ReferenceError: exports is not defined - at eval (.../node_modules/inline-style-prefixer/lib/createPrefixer.js:3:23)\n \"inline-style-prefixer\",\n \"react-native-vector-icons\",\n \"jotai\"\n];\nvar INCLUDE_LIST_SET = new Set(INCLUDE_LIST);\nvar rootOptions = {};\nasync function scanDepsToOptimize(packageJsonPath) {\n var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : (\n /** If the content of the package.json is already read before calling this function, pass it here to avoid reading it again */\n rootOptions\n );\n var _pkgJson_dependencies;\n var { parentDepNames = [], proceededDeps = /* @__PURE__ */ new Map(), pkgJsonContent } = options;\n if (options === rootOptions) {\n console.info(`[one] Scanning node_modules to auto-optimize...`);\n }\n var currentRoot = path.dirname(packageJsonPath);\n var pkgJson = pkgJsonContent || await readPackageJsonSafe(packageJsonPath);\n var deps = Object.keys(pkgJson.dependencies || {});\n var needsWorklets = function(json) {\n var _json_dependencies, _json_dependencies1;\n return !!(((_json_dependencies = json.dependencies) === null || _json_dependencies === void 0 ? void 0 : _json_dependencies[\"react-native-reanimated\"]) || ((_json_dependencies1 = json.dependencies) === null || _json_dependencies1 === void 0 ? void 0 : _json_dependencies1[\"react-native-worklets\"]));\n };\n var hasReanimated = needsWorklets(pkgJson);\n var prebundleDeps = (await Promise.all(deps.map(async function(dep) {\n var _depPkgJson_peerDependencies;\n if (parentDepNames.includes(dep)) {\n return [];\n }\n var cachedResult = proceededDeps.get(dep);\n if (cachedResult) {\n return cachedResult;\n }\n if (EXCLUDE_LIST_SET.has(dep)) {\n return [];\n }\n var localPath = await findDepPkgJsonPath(dep, currentRoot);\n if (!localPath) return [];\n var depPkgJsonPath = await FSExtra.realpath(localPath);\n if (options.filter && !options.filter(depPkgJsonPath)) {\n return [];\n }\n var depPkgJson = await readPackageJsonSafe(depPkgJsonPath);\n if (needsWorklets(depPkgJson)) {\n hasReanimated = true;\n }\n if (depPkgJson.codegenConfig != null) {\n debug === null || debug === void 0 ? void 0 : debug(`${dep} skipped: declares codegenConfig (native codegen package)`);\n return [];\n }\n var subDeps = await scanDepsToOptimize(depPkgJsonPath, {\n parentDepNames: [\n ...parentDepNames,\n dep\n ],\n pkgJsonContent: depPkgJson,\n proceededDeps\n });\n if (subDeps.hasReanimated) {\n hasReanimated = true;\n }\n var shouldPreBundle = subDeps.prebundleDeps.length > 0 || /* If this dep is depending on other deps that need pre-bundling, then also pre-bundle this dep */\n INCLUDE_LIST_SET.has(dep) || /* If this dep is in the include list, then pre-bundle it */\n hasRequiredDep(depPkgJson, \"react\") || // an optional react peer still means the package ships react\n // entrypoints (e.g. better-auth/react). left external, those load a\n // second react copy in SSR and crash hooks with a null dispatcher.\n !!((_depPkgJson_peerDependencies = depPkgJson.peerDependencies) === null || _depPkgJson_peerDependencies === void 0 ? void 0 : _depPkgJson_peerDependencies.react) || hasRequiredDep(depPkgJson, \"react-native\") || hasRequiredDep(depPkgJson, \"expo-modules-core\") || // expo packages publish extensionless ESM imports that Node cannot\n // execute directly. Keep installed Expo modules inside Vite's SSR\n // graph without making Expo a framework dependency.\n dep.startsWith(\"@expo/\") || dep.startsWith(\"expo-\");\n debug === null || debug === void 0 ? void 0 : debug(`${dep} shouldPreBundle? ${shouldPreBundle}`);\n var depsToPreBundle = await (async function() {\n if (!shouldPreBundle) {\n return [];\n }\n var depPkgJsonExports = depPkgJson.exports || {};\n var definedExports = Object.keys(depPkgJsonExports).filter(function(k) {\n var expData = depPkgJsonExports[k];\n var imp = typeof expData === \"string\" ? expData : expData === null || expData === void 0 ? void 0 : expData.import;\n if (typeof imp !== \"string\") {\n return false;\n }\n if (!imp.endsWith(\".js\")) {\n return false;\n }\n if (!k.match(/^(\\.\\/)?[a-zA-Z0-9-_]+$/)) {\n return false;\n }\n return true;\n }).map(function(k) {\n return k.replace(/^\\.\\/?/, \"\");\n }).map(function(k) {\n return `${dep}/${k}`;\n });\n var specialExports = (function() {\n switch (dep) {\n case \"react-native-vector-icons\":\n return [\n \"AntDesign\",\n \"Entypo\",\n \"EvilIcons\",\n \"Feather\",\n \"FontAwesome\",\n \"FontAwesome5\",\n \"FontAwesome5Pro\",\n \"Fontisto\",\n \"Foundation\",\n \"Ionicons\",\n \"MaterialCommunityIcons\",\n \"MaterialIcons\",\n \"Octicons\",\n \"SimpleLineIcons\",\n \"Zocial\"\n ].map(function(n) {\n return `${dep}/${n}`;\n });\n default:\n return [];\n }\n })();\n var mainExport = depPkgJson[\"main\"] || depPkgJson[\"module\"] || definedExports[\".\"];\n var exports = [\n ...definedExports,\n ...specialExports\n ].filter(function(d) {\n return !EXCLUDE_LIST_SET.has(d);\n });\n if (mainExport) {\n if (await checkIfExportExists(join(dirname(depPkgJsonPath), mainExport))) {\n exports.unshift(dep);\n }\n }\n return exports;\n })();\n var result = [\n ...depsToPreBundle,\n ...subDeps.prebundleDeps\n ];\n debugDetails === null || debugDetails === void 0 ? void 0 : debugDetails(`final result ${JSON.stringify(result, null, 2)}`);\n proceededDeps.set(dep, result);\n return result;\n }))).flat().filter(function(dep, index, arr) {\n return arr.indexOf(dep) === index;\n });\n var hasNativewind = !!((_pkgJson_dependencies = pkgJson.dependencies) === null || _pkgJson_dependencies === void 0 ? void 0 : _pkgJson_dependencies[\"nativewind\"]);\n if ((hasNativewind || hasReanimated) && options === rootOptions) {\n if (hasReanimated) console.info(`[one] Enabled babel plugins: ${[\n hasReanimated ? \"Reanimated\" : \"\",\n hasNativewind ? \"Nativewind\" : \"\"\n ].filter(Boolean).join(\", \")}`);\n }\n return {\n prebundleDeps,\n hasReanimated,\n // only check if set in root, dont want to enable css mode too easily\n hasNativewind\n };\n}\nasync function checkIfExportExists(pathIn) {\n var paths = [\n pathIn,\n ...extname(pathIn) ? [] : [\n pathIn + \".js\",\n pathIn + sep + \"index.js\"\n ]\n ];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = paths[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var path2 = _step.value;\n if (await FSExtra.pathExists(path2)) {\n return true;\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return false;\n}\nasync function readPackageJsonSafe(packageJsonPath) {\n try {\n return await FSExtra.readJson(packageJsonPath);\n } catch (e) {\n console.error(`[scanDepsToPreBundleForSsr] Error reading package.json from ${packageJsonPath}: ${e}`);\n return {};\n }\n}\nasync function findDepPkgJsonPath(dep, dependent) {\n var root = dependent;\n while (root) {\n var possiblePkgJson = path.join(root, \"node_modules\", dep, \"package.json\");\n if (await FSExtra.pathExists(possiblePkgJson)) {\n return possiblePkgJson;\n }\n var nextRoot = path.dirname(root);\n if (nextRoot === root) break;\n root = nextRoot;\n }\n console.error(`[findDepPkgJsonPath] Could not find package.json for ${dep}, which is a dependency of ${dependent}`);\n return void 0;\n}\nfunction hasRequiredDep(pkgJson, depName) {\n var _pkgJson_dependencies, _pkgJson_peerDependencies, _pkgJson_peerDependenciesMeta_depName, _pkgJson_peerDependenciesMeta;\n return !!(((_pkgJson_dependencies = pkgJson.dependencies) === null || _pkgJson_dependencies === void 0 ? void 0 : _pkgJson_dependencies[depName]) || ((_pkgJson_peerDependencies = pkgJson.peerDependencies) === null || _pkgJson_peerDependencies === void 0 ? void 0 : _pkgJson_peerDependencies[depName]) && !((_pkgJson_peerDependenciesMeta = pkgJson.peerDependenciesMeta) === null || _pkgJson_peerDependenciesMeta === void 0 ? void 0 : (_pkgJson_peerDependenciesMeta_depName = _pkgJson_peerDependenciesMeta[depName]) === null || _pkgJson_peerDependenciesMeta_depName === void 0 ? void 0 : _pkgJson_peerDependenciesMeta_depName.optional));\n}\nexport {\n EXCLUDE_LIST,\n EXCLUDE_LIST_SET,\n INCLUDE_LIST,\n INCLUDE_LIST_SET,\n findDepPkgJsonPath,\n scanDepsToOptimize\n};\n//# sourceMappingURL=scanDepsToOptimize.js.map\n"],"mappings":";;;;;AAGA,IAAI,EAAE,OAAO,iBAAiB,eAAe,yBAAyB;AACtE,IAAI,eAAe;CACjB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CAEA;CACA;CACA;CAIA;CACA;CAIA;CACA;CACA;CAIA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CAEA;CAEA;CACA;CACA;CACA;CACA;CAEA;CACA;CAEA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AACA,IAAI,mBAAmB,IAAI,IAAI,YAAY;AAC3C,IAAI,eAAe;CAEjB;CACA;CACA;AACF;AACA,IAAI,mBAAmB,IAAI,IAAI,YAAY;AAC3C,IAAI,cAAc,CAAC;AACnB,eAAe,mBAAmB,iBAAiB;CACjD,IAAI,UAAU,UAAU,SAAS,KAAK,UAAU,OAAO,KAAK,IAAI,UAAU;;CAExE;CAEF,IAAI;CACJ,IAAI,EAAE,iBAAiB,CAAC,GAAG,gCAAgC,IAAI,IAAI,GAAG,mBAAmB;CACzF,IAAI,YAAY,aAAa;EAC3B,QAAQ,KAAK,iDAAiD;CAChE;CACA,IAAI,cAAc,KAAK,QAAQ,eAAe;CAC9C,IAAI,UAAU,kBAAkB,MAAM,oBAAoB,eAAe;CACzE,IAAI,OAAO,OAAO,KAAK,QAAQ,gBAAgB,CAAC,CAAC;CACjD,IAAI,gBAAgB,SAAS,MAAM;EACjC,IAAI,oBAAoB;EACxB,OAAO,CAAC,IAAI,qBAAqB,KAAK,kBAAkB,QAAQ,uBAAuB,KAAK,IAAI,KAAK,IAAI,mBAAmB,iCAAiC,sBAAsB,KAAK,kBAAkB,QAAQ,wBAAwB,KAAK,IAAI,KAAK,IAAI,oBAAoB;CAClR;CACA,IAAI,gBAAgB,cAAc,OAAO;CACzC,IAAI,iBAAiB,MAAM,QAAQ,IAAI,KAAK,IAAI,eAAe,KAAK;EAClE,IAAI;EACJ,IAAI,eAAe,SAAS,GAAG,GAAG;GAChC,OAAO,CAAC;EACV;EACA,IAAI,eAAe,cAAc,IAAI,GAAG;EACxC,IAAI,cAAc;GAChB,OAAO;EACT;EACA,IAAI,iBAAiB,IAAI,GAAG,GAAG;GAC7B,OAAO,CAAC;EACV;EACA,IAAI,YAAY,MAAM,mBAAmB,KAAK,WAAW;EACzD,IAAI,CAAC,WAAW,OAAO,CAAC;EACxB,IAAI,iBAAiB,MAAM,QAAQ,SAAS,SAAS;EACrD,IAAI,QAAQ,UAAU,CAAC,QAAQ,OAAO,cAAc,GAAG;GACrD,OAAO,CAAC;EACV;EACA,IAAI,aAAa,MAAM,oBAAoB,cAAc;EACzD,IAAI,cAAc,UAAU,GAAG;GAC7B,gBAAgB;EAClB;EACA,IAAI,WAAW,iBAAiB,MAAM;GACpC,UAAU,QAAQ,UAAU,KAAK,IAAI,KAAK,IAAI,MAAM,GAAG,IAAI,0DAA0D;GACrH,OAAO,CAAC;EACV;EACA,IAAI,UAAU,MAAM,mBAAmB,gBAAgB;GACrD,gBAAgB,CACd,GAAG,gBACH,GACF;GACA,gBAAgB;GAChB;EACF,CAAC;EACD,IAAI,QAAQ,eAAe;GACzB,gBAAgB;EAClB;EACA,IAAI,kBAAkB,QAAQ,cAAc,SAAS,KACrD,iBAAiB,IAAI,GAAG,KACxB,eAAe,YAAY,OAAO,KAGlC,CAAC,GAAG,+BAA+B,WAAW,sBAAsB,QAAQ,iCAAiC,KAAK,IAAI,KAAK,IAAI,6BAA6B,UAAU,eAAe,YAAY,cAAc,KAAK,eAAe,YAAY,mBAAmB,KAGlQ,IAAI,WAAW,QAAQ,KAAK,IAAI,WAAW,OAAO;EAClD,UAAU,QAAQ,UAAU,KAAK,IAAI,KAAK,IAAI,MAAM,GAAG,IAAI,oBAAoB,iBAAiB;EAChG,IAAI,kBAAkB,OAAO,iBAAiB;GAC5C,IAAI,CAAC,iBAAiB;IACpB,OAAO,CAAC;GACV;GACA,IAAI,oBAAoB,WAAW,WAAW,CAAC;GAC/C,IAAI,iBAAiB,OAAO,KAAK,iBAAiB,CAAC,CAAC,OAAO,SAAS,GAAG;IACrE,IAAI,UAAU,kBAAkB;IAChC,IAAI,MAAM,OAAO,YAAY,WAAW,UAAU,YAAY,QAAQ,YAAY,KAAK,IAAI,KAAK,IAAI,QAAQ;IAC5G,IAAI,OAAO,QAAQ,UAAU;KAC3B,OAAO;IACT;IACA,IAAI,CAAC,IAAI,SAAS,KAAK,GAAG;KACxB,OAAO;IACT;IACA,IAAI,CAAC,EAAE,MAAM,yBAAyB,GAAG;KACvC,OAAO;IACT;IACA,OAAO;GACT,CAAC,CAAC,CAAC,IAAI,SAAS,GAAG;IACjB,OAAO,EAAE,QAAQ,UAAU,EAAE;GAC/B,CAAC,CAAC,CAAC,IAAI,SAAS,GAAG;IACjB,OAAO,GAAG,IAAI,GAAG;GACnB,CAAC;GACD,IAAI,kBAAkB,WAAW;IAC/B,QAAQ,KAAR;KACE,KAAK,6BACH,OAAO;MACL;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;MACA;KACF,CAAC,CAAC,IAAI,SAAS,GAAG;MAChB,OAAO,GAAG,IAAI,GAAG;KACnB,CAAC;KACH,SACE,OAAO,CAAC;IACZ;GACF,EAAC,CAAE;GACH,IAAI,aAAa,WAAW,WAAW,WAAW,aAAa,eAAe;GAC9E,IAAI,UAAU,CACZ,GAAG,gBACH,GAAG,cACL,CAAC,CAAC,OAAO,SAAS,GAAG;IACnB,OAAO,CAAC,iBAAiB,IAAI,CAAC;GAChC,CAAC;GACD,IAAI,YAAY;IACd,IAAI,MAAM,oBAAoB,KAAK,QAAQ,cAAc,GAAG,UAAU,CAAC,GAAG;KACxE,QAAQ,QAAQ,GAAG;IACrB;GACF;GACA,OAAO;EACT,EAAC,CAAE;EACH,IAAI,SAAS,CACX,GAAG,iBACH,GAAG,QAAQ,aACb;EACA,iBAAiB,QAAQ,iBAAiB,KAAK,IAAI,KAAK,IAAI,aAAa,gBAAgB,KAAK,UAAU,QAAQ,MAAM,CAAC,GAAG;EAC1H,cAAc,IAAI,KAAK,MAAM;EAC7B,OAAO;CACT,CAAC,CAAC,EAAC,CAAE,KAAK,CAAC,CAAC,OAAO,SAAS,KAAK,OAAO,KAAK;EAC3C,OAAO,IAAI,QAAQ,GAAG,MAAM;CAC9B,CAAC;CACD,IAAI,gBAAgB,CAAC,GAAG,wBAAwB,QAAQ,kBAAkB,QAAQ,0BAA0B,KAAK,IAAI,KAAK,IAAI,sBAAsB;CACpJ,KAAK,iBAAiB,kBAAkB,YAAY,aAAa;EAC/D,IAAI,eAAe,QAAQ,KAAK,gCAAgC,CAC9D,gBAAgB,eAAe,IAC/B,gBAAgB,eAAe,EACjC,CAAC,CAAC,OAAO,OAAO,CAAC,CAAC,KAAK,IAAI,GAAG;CAChC;CACA,OAAO;EACL;EACA;EAEA;CACF;AACF;AACA,eAAe,oBAAoB,QAAQ;CACzC,IAAI,QAAQ,CACV,QACA,GAAG,QAAQ,MAAM,IAAI,CAAC,IAAI,CACxB,SAAS,OACT,SAAS,MAAM,UACjB,CACF;CACA,IAAI,4BAA4B,MAAM,oBAAoB,OAAO,iBAAiB,KAAK;CACvF,IAAI;EACF,KAAK,IAAI,YAAY,MAAM,OAAO,SAAS,CAAC,GAAG,OAAO,EAAE,6BAA6B,QAAQ,UAAU,KAAK,EAAC,CAAE,OAAO,4BAA4B,MAAM;GACtJ,IAAI,QAAQ,MAAM;GAClB,IAAI,MAAM,QAAQ,WAAW,KAAK,GAAG;IACnC,OAAO;GACT;EACF;CACF,SAAS,KAAK;EACZ,oBAAoB;EACpB,iBAAiB;CACnB,UAAU;EACR,IAAI;GACF,IAAI,CAAC,6BAA6B,UAAU,UAAU,MAAM;IAC1D,UAAU,OAAO;GACnB;EACF,UAAU;GACR,IAAI,mBAAmB;IACrB,MAAM;GACR;EACF;CACF;CACA,OAAO;AACT;AACA,eAAe,oBAAoB,iBAAiB;CAClD,IAAI;EACF,OAAO,MAAM,QAAQ,SAAS,eAAe;CAC/C,SAAS,GAAG;EACV,QAAQ,MAAM,+DAA+D,gBAAgB,IAAI,GAAG;EACpG,OAAO,CAAC;CACV;AACF;AACA,eAAe,mBAAmB,KAAK,WAAW;CAChD,IAAI,OAAO;CACX,OAAO,MAAM;EACX,IAAI,kBAAkB,KAAK,KAAK,MAAM,gBAAgB,KAAK,cAAc;EACzE,IAAI,MAAM,QAAQ,WAAW,eAAe,GAAG;GAC7C,OAAO;EACT;EACA,IAAI,WAAW,KAAK,QAAQ,IAAI;EAChC,IAAI,aAAa,MAAM;EACvB,OAAO;CACT;CACA,QAAQ,MAAM,wDAAwD,IAAI,6BAA6B,WAAW;CAClH,OAAO,KAAK;AACd;AACA,SAAS,eAAe,SAAS,SAAS;CACxC,IAAI,uBAAuB,2BAA2B,uCAAuC;CAC7F,OAAO,CAAC,IAAI,wBAAwB,QAAQ,kBAAkB,QAAQ,0BAA0B,KAAK,IAAI,KAAK,IAAI,sBAAsB,eAAe,4BAA4B,QAAQ,sBAAsB,QAAQ,8BAA8B,KAAK,IAAI,KAAK,IAAI,0BAA0B,aAAa,GAAG,gCAAgC,QAAQ,0BAA0B,QAAQ,kCAAkC,KAAK,IAAI,KAAK,KAAK,wCAAwC,8BAA8B,cAAc,QAAQ,0CAA0C,KAAK,IAAI,KAAK,IAAI,sCAAsC;AAClnB"}
1
+ {"version":3,"file":"scanDepsToOptimize.native.js","names":[],"sources":["utils/scanDepsToOptimize.native.js"],"sourcesContent":["import { createDebugger } from \"@vxrn/debug\";\nimport FSExtra from \"fs-extra\";\nimport path, { dirname, extname, join, sep } from \"path\";\nvar { debug, debugDetails } = createDebugger(`vxrn:scanDepsToOptimize`);\nvar EXCLUDE_LIST = [\n \"jsc-android\",\n \"react-shallow-renderer\",\n \"fsevents\",\n \"@swc/core\",\n \"@swc/core-darwin-arm64\",\n \"@swc/core-darwin-x64\",\n \"@swc/core-linux-arm-gnueabihf\",\n \"@swc/core-linux-arm64-gnu\",\n \"@swc/core-linux-arm64-musl\",\n \"@swc/core-linux-x64-gnu\",\n \"@swc/core-linux-x64-musl\",\n \"@swc/core-win32-arm64-msvc\",\n \"@swc/core-win32-ia32-msvc\",\n \"@swc/core-win32-x64-msvc\",\n \"lightningcss\",\n // this breaks fileToUrlPath in upstreams, like @discordjs/client\n \"url\",\n \"sharp\",\n \"@sentry/react-native\",\n // not used by web anyway\n // Could not read from file: /Users/n8/one/node_modules/react-native-web/dist/cjs/index.js/Libraries/Image/AssetRegistry\n // /lib/module/Platform/Platform.web.js:132:20\n \"@shopify/react-native-skia\",\n \"@react-native/virtualized-lists\",\n // Unexpected \"typeof\" in `node_modules/@react-native/virtualized-lists/index.js`\n // Native only, we don't expect SSR to use these packages.\n // Also, some of these packages might attempt to import from react-native internals, which will break in SSR while react-native is aliased to react-native-web.\n \"@vxrn/vite-native-hmr\",\n \"@vxrn/compiler\",\n \"@vxrn/vite-native-client\",\n // build-time only, and they load native .node addons the ssr dep optimizer\n // cannot parse. apps list vxrn as a dependency because it is their dev\n // server, which is exactly why it must never be pre-bundled for ssr.\n \"vxrn\",\n \"@vxrn/vite-plugin-metro\",\n \"oxc-transform\",\n \"oxc-parser\",\n \"react-native-ios-utilities\",\n \"react-native-ios-modal\",\n \"react-native-ios-context-menu\",\n \"react-native-haptic-feedback\",\n \"react-native-sortables\",\n \"react-native-image-colors\",\n \"react-native-fast-image\",\n \"react-native-fast-squircle\",\n \"react-native-device-info\",\n // CLI/scripts shouldn't be used in SSR runtime\n \"@tamagui/cli\",\n // only used by static/plugin\n \"@tamagui/static\",\n \"@tamagui/config-default\",\n \"@tamagui/vite-plugin\",\n \"@take-out/scripts\",\n \"@take-out/cli\",\n // Should be used on native only\n \"@tamagui/core/native-test\",\n \"@storybook/react\",\n // native-only or not needed in SSR\n \"@nandorojo/galeria\",\n \"react-native-pager-view\",\n \"@react-native/debugger-shell\",\n // expo's debugger is a standalone app, not an SSR runtime dependency.\n \"@expo/cli\",\n \"@expo/log-box\",\n \"@hot-updater/react-native\",\n \"@hot-updater/plugin-core\",\n \"validator\",\n \"zlib\"\n];\nvar EXCLUDE_LIST_SET = new Set(EXCLUDE_LIST);\nvar INCLUDE_LIST = [\n // ReferenceError: exports is not defined - at eval (.../node_modules/inline-style-prefixer/lib/createPrefixer.js:3:23)\n \"inline-style-prefixer\",\n \"react-native-vector-icons\",\n \"jotai\"\n];\nvar INCLUDE_LIST_SET = new Set(INCLUDE_LIST);\nvar rootOptions = {};\nasync function scanDepsToOptimize(packageJsonPath) {\n var options = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : (\n /** If the content of the package.json is already read before calling this function, pass it here to avoid reading it again */\n rootOptions\n );\n var _pkgJson_dependencies;\n var { parentDepNames = [], proceededDeps = /* @__PURE__ */ new Map(), pkgJsonContent } = options;\n if (options === rootOptions) {\n console.info(`[one] Scanning node_modules to auto-optimize...`);\n }\n var noExternalDeps = /* @__PURE__ */ new Set();\n var currentRoot = path.dirname(packageJsonPath);\n var pkgJson = pkgJsonContent || await readPackageJsonSafe(packageJsonPath);\n var deps = Object.keys(pkgJson.dependencies || {});\n var needsWorklets = function needsWorklets2(json) {\n var _json_dependencies, _json_dependencies1;\n return !!(((_json_dependencies = json.dependencies) === null || _json_dependencies === void 0 ? void 0 : _json_dependencies[\"react-native-reanimated\"]) || ((_json_dependencies1 = json.dependencies) === null || _json_dependencies1 === void 0 ? void 0 : _json_dependencies1[\"react-native-worklets\"]));\n };\n var hasReanimated = needsWorklets(pkgJson);\n var prebundleDeps = (await Promise.all(deps.map(async function(dep) {\n var _depPkgJson_peerDependencies;\n if (parentDepNames.includes(dep)) {\n return [];\n }\n var cachedResult = proceededDeps.get(dep);\n if (cachedResult) {\n return cachedResult;\n }\n if (EXCLUDE_LIST_SET.has(dep)) {\n return [];\n }\n var localPath = await findDepPkgJsonPath(dep, currentRoot);\n if (!localPath) return [];\n var depPkgJsonPath = await FSExtra.realpath(localPath);\n if (options.filter && !options.filter(depPkgJsonPath)) {\n return [];\n }\n var depPkgJson = await readPackageJsonSafe(depPkgJsonPath);\n if (needsWorklets(depPkgJson)) {\n hasReanimated = true;\n }\n if (depPkgJson.codegenConfig != null) {\n noExternalDeps.add(dep);\n debug === null || debug === void 0 ? void 0 : debug(`${dep} skipped: declares codegenConfig (native codegen package)`);\n return [];\n }\n var subDeps = await scanDepsToOptimize(depPkgJsonPath, {\n parentDepNames: [\n ...parentDepNames,\n dep\n ],\n pkgJsonContent: depPkgJson,\n proceededDeps\n });\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = subDeps.noExternalDeps[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var _$dep = _step.value;\n noExternalDeps.add(_$dep);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n if (subDeps.hasReanimated) {\n hasReanimated = true;\n }\n var shouldPreBundle = subDeps.prebundleDeps.length > 0 || /* If this dep is depending on other deps that need pre-bundling, then also pre-bundle this dep */\n INCLUDE_LIST_SET.has(dep) || /* If this dep is in the include list, then pre-bundle it */\n hasRequiredDep(depPkgJson, \"react\") || // an optional react peer still means the package ships react\n // entrypoints (e.g. better-auth/react). left external, those load a\n // second react copy in SSR and crash hooks with a null dispatcher.\n !!((_depPkgJson_peerDependencies = depPkgJson.peerDependencies) === null || _depPkgJson_peerDependencies === void 0 ? void 0 : _depPkgJson_peerDependencies.react) || hasRequiredDep(depPkgJson, \"react-native\") || hasRequiredDep(depPkgJson, \"expo-modules-core\") || // expo packages publish extensionless ESM imports that Node cannot\n // execute directly. Keep installed Expo modules inside Vite's SSR\n // graph without making Expo a framework dependency.\n dep.startsWith(\"@expo/\") || dep.startsWith(\"expo-\");\n debug === null || debug === void 0 ? void 0 : debug(`${dep} shouldPreBundle? ${shouldPreBundle}`);\n var depsToPreBundle = await (async function() {\n if (!shouldPreBundle) {\n return [];\n }\n var depPkgJsonExports = depPkgJson.exports || {};\n var definedExports = Object.keys(depPkgJsonExports).filter(function(k) {\n var expData = depPkgJsonExports[k];\n var imp = typeof expData === \"string\" ? expData : expData === null || expData === void 0 ? void 0 : expData.import;\n if (typeof imp !== \"string\") {\n return false;\n }\n if (!imp.endsWith(\".js\")) {\n return false;\n }\n if (!k.match(/^(\\.\\/)?[a-zA-Z0-9-_]+$/)) {\n return false;\n }\n return true;\n }).map(function(k) {\n return k.replace(/^\\.\\/?/, \"\");\n }).map(function(k) {\n return `${dep}/${k}`;\n });\n var specialExports = (function() {\n switch (dep) {\n case \"react-native-vector-icons\":\n return [\n \"AntDesign\",\n \"Entypo\",\n \"EvilIcons\",\n \"Feather\",\n \"FontAwesome\",\n \"FontAwesome5\",\n \"FontAwesome5Pro\",\n \"Fontisto\",\n \"Foundation\",\n \"Ionicons\",\n \"MaterialCommunityIcons\",\n \"MaterialIcons\",\n \"Octicons\",\n \"SimpleLineIcons\",\n \"Zocial\"\n ].map(function(n) {\n return `${dep}/${n}`;\n });\n default:\n return [];\n }\n })();\n var mainExport = depPkgJson[\"main\"] || depPkgJson[\"module\"] || definedExports[\".\"];\n var exports = [\n ...definedExports,\n ...specialExports\n ].filter(function(d) {\n return !EXCLUDE_LIST_SET.has(d);\n });\n if (mainExport && (!extname(mainExport) || /\\.[cm]?[jt]s$/.test(mainExport))) {\n if (await checkIfExportExists(join(dirname(depPkgJsonPath), mainExport))) {\n exports.unshift(dep);\n }\n }\n return exports;\n })();\n var result = [\n ...depsToPreBundle,\n ...subDeps.prebundleDeps\n ];\n debugDetails === null || debugDetails === void 0 ? void 0 : debugDetails(`final result ${JSON.stringify(result, null, 2)}`);\n proceededDeps.set(dep, result);\n return result;\n }))).flat().filter(function(dep, index, arr) {\n return arr.indexOf(dep) === index;\n });\n var hasNativewind = !!((_pkgJson_dependencies = pkgJson.dependencies) === null || _pkgJson_dependencies === void 0 ? void 0 : _pkgJson_dependencies[\"nativewind\"]);\n if ((hasNativewind || hasReanimated) && options === rootOptions) {\n if (hasReanimated) console.info(`[one] Enabled babel plugins: ${[\n hasReanimated ? \"Reanimated\" : \"\",\n hasNativewind ? \"Nativewind\" : \"\"\n ].filter(Boolean).join(\", \")}`);\n }\n return {\n prebundleDeps,\n noExternalDeps: [\n ...noExternalDeps\n ],\n hasReanimated,\n // only check if set in root, dont want to enable css mode too easily\n hasNativewind\n };\n}\nasync function checkIfExportExists(pathIn) {\n var paths = [\n pathIn,\n ...extname(pathIn) ? [] : [\n pathIn + \".js\",\n pathIn + sep + \"index.js\"\n ]\n ];\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = paths[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var path2 = _step.value;\n if (await FSExtra.pathExists(path2)) {\n return true;\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return false;\n}\nasync function readPackageJsonSafe(packageJsonPath) {\n try {\n return await FSExtra.readJson(packageJsonPath);\n } catch (e) {\n console.error(`[scanDepsToPreBundleForSsr] Error reading package.json from ${packageJsonPath}: ${e}`);\n return {};\n }\n}\nasync function findDepPkgJsonPath(dep, dependent) {\n var root = dependent;\n while (root) {\n var possiblePkgJson = path.join(root, \"node_modules\", dep, \"package.json\");\n if (await FSExtra.pathExists(possiblePkgJson)) {\n return possiblePkgJson;\n }\n var nextRoot = path.dirname(root);\n if (nextRoot === root) break;\n root = nextRoot;\n }\n console.error(`[findDepPkgJsonPath] Could not find package.json for ${dep}, which is a dependency of ${dependent}`);\n return void 0;\n}\nfunction hasRequiredDep(pkgJson, depName) {\n var _pkgJson_dependencies, _pkgJson_peerDependencies, _pkgJson_peerDependenciesMeta_depName, _pkgJson_peerDependenciesMeta;\n return !!(((_pkgJson_dependencies = pkgJson.dependencies) === null || _pkgJson_dependencies === void 0 ? void 0 : _pkgJson_dependencies[depName]) || ((_pkgJson_peerDependencies = pkgJson.peerDependencies) === null || _pkgJson_peerDependencies === void 0 ? void 0 : _pkgJson_peerDependencies[depName]) && !((_pkgJson_peerDependenciesMeta = pkgJson.peerDependenciesMeta) === null || _pkgJson_peerDependenciesMeta === void 0 ? void 0 : (_pkgJson_peerDependenciesMeta_depName = _pkgJson_peerDependenciesMeta[depName]) === null || _pkgJson_peerDependenciesMeta_depName === void 0 ? void 0 : _pkgJson_peerDependenciesMeta_depName.optional));\n}\nexport {\n EXCLUDE_LIST,\n EXCLUDE_LIST_SET,\n INCLUDE_LIST,\n INCLUDE_LIST_SET,\n findDepPkgJsonPath,\n scanDepsToOptimize\n};\n//# sourceMappingURL=scanDepsToOptimize.js.map\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { existsSync } from "node:fs";
1
+ import { existsSync, readdirSync } from "node:fs";
2
2
  import { basename, dirname, join } from "node:path";
3
3
 
4
4
  function swiftPackageId(packageDir) {
@@ -9,6 +9,35 @@ function swiftPackageDirOf(file) {
9
9
  if (existsSync(join(dir, "Package.swift"))) return dir;
10
10
  }
11
11
  }
12
+ function swiftPackageDirectories(root) {
13
+ const skip = /* @__PURE__ */ new Set([
14
+ "node_modules",
15
+ "ios",
16
+ "android",
17
+ "dist",
18
+ "types",
19
+ "build"
20
+ ]);
21
+ const packages = /* @__PURE__ */ new Map();
22
+ const walk = (dir) => {
23
+ const entries = readdirSync(dir, { withFileTypes: true });
24
+ if (entries.some((entry) => entry.isFile() && entry.name === "Package.swift")) {
25
+ const name = swiftPackageId(dir);
26
+ const previous = packages.get(name);
27
+ if (previous) {
28
+ throw new Error(`[vxrn] swift packages ${previous} and ${dir} both have name ${name}`);
29
+ }
30
+ packages.set(name, dir);
31
+ return;
32
+ }
33
+ for (const entry of entries) {
34
+ if (!entry.isDirectory() || entry.name.startsWith(".") || skip.has(entry.name)) continue;
35
+ walk(join(dir, entry.name));
36
+ }
37
+ };
38
+ walk(root);
39
+ return packages;
40
+ }
12
41
 
13
- export { swiftPackageDirOf, swiftPackageId };
42
+ export { swiftPackageDirOf, swiftPackageDirectories, swiftPackageId };
14
43
  //# sourceMappingURL=swiftPackageId.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"swiftPackageId.js","names":[],"sources":["utils/swiftPackageId.js"],"sourcesContent":["import { existsSync } from \"node:fs\";\nimport { basename, dirname, join } from \"node:path\";\nfunction swiftPackageId(packageDir) {\n return basename(packageDir).replace(/[^A-Za-z0-9_]/g, \"_\").replace(/^(\\d)/, \"_$1\");\n}\nfunction swiftPackageDirOf(file) {\n for (let dir = dirname(file); dirname(dir) !== dir; dir = dirname(dir)) {\n if (existsSync(join(dir, \"Package.swift\"))) return dir;\n }\n}\nexport {\n swiftPackageDirOf,\n swiftPackageId\n};\n//# sourceMappingURL=swiftPackageId.js.map\n"],"mappings":";;;;AAEA,SAAS,eAAe,YAAY;CAClC,OAAO,SAAS,UAAU,CAAC,CAAC,QAAQ,kBAAkB,GAAG,CAAC,CAAC,QAAQ,SAAS,KAAK;AACnF;AACA,SAAS,kBAAkB,MAAM;CAC/B,KAAK,IAAI,MAAM,QAAQ,IAAI,GAAG,QAAQ,GAAG,MAAM,KAAK,MAAM,QAAQ,GAAG,GAAG;EACtE,IAAI,WAAW,KAAK,KAAK,eAAe,CAAC,GAAG,OAAO;CACrD;AACF"}
1
+ {"version":3,"file":"swiftPackageId.js","names":[],"sources":["utils/swiftPackageId.js"],"sourcesContent":["import { existsSync, readdirSync } from \"node:fs\";\nimport { basename, dirname, join } from \"node:path\";\nfunction swiftPackageId(packageDir) {\n return basename(packageDir).replace(/[^A-Za-z0-9_]/g, \"_\").replace(/^(\\d)/, \"_$1\");\n}\nfunction swiftPackageDirOf(file) {\n for (let dir = dirname(file); dirname(dir) !== dir; dir = dirname(dir)) {\n if (existsSync(join(dir, \"Package.swift\"))) return dir;\n }\n}\nfunction swiftPackageDirectories(root) {\n const skip = /* @__PURE__ */ new Set([\"node_modules\", \"ios\", \"android\", \"dist\", \"types\", \"build\"]);\n const packages = /* @__PURE__ */ new Map();\n const walk = (dir) => {\n const entries = readdirSync(dir, { withFileTypes: true });\n if (entries.some((entry) => entry.isFile() && entry.name === \"Package.swift\")) {\n const name = swiftPackageId(dir);\n const previous = packages.get(name);\n if (previous) {\n throw new Error(`[vxrn] swift packages ${previous} and ${dir} both have name ${name}`);\n }\n packages.set(name, dir);\n return;\n }\n for (const entry of entries) {\n if (!entry.isDirectory() || entry.name.startsWith(\".\") || skip.has(entry.name)) continue;\n walk(join(dir, entry.name));\n }\n };\n walk(root);\n return packages;\n}\nexport {\n swiftPackageDirOf,\n swiftPackageDirectories,\n swiftPackageId\n};\n//# sourceMappingURL=swiftPackageId.js.map\n"],"mappings":";;;;AAEA,SAAS,eAAe,YAAY;CAClC,OAAO,SAAS,UAAU,CAAC,CAAC,QAAQ,kBAAkB,GAAG,CAAC,CAAC,QAAQ,SAAS,KAAK;AACnF;AACA,SAAS,kBAAkB,MAAM;CAC/B,KAAK,IAAI,MAAM,QAAQ,IAAI,GAAG,QAAQ,GAAG,MAAM,KAAK,MAAM,QAAQ,GAAG,GAAG;EACtE,IAAI,WAAW,KAAK,KAAK,eAAe,CAAC,GAAG,OAAO;CACrD;AACF;AACA,SAAS,wBAAwB,MAAM;CACrC,MAAM,uBAAuB,IAAI,IAAI;EAAC;EAAgB;EAAO;EAAW;EAAQ;EAAS;CAAO,CAAC;CACjG,MAAM,2BAA2B,IAAI,IAAI;CACzC,MAAM,QAAQ,QAAQ;EACpB,MAAM,UAAU,YAAY,KAAK,EAAE,eAAe,KAAK,CAAC;EACxD,IAAI,QAAQ,MAAM,UAAU,MAAM,OAAO,KAAK,MAAM,SAAS,eAAe,GAAG;GAC7E,MAAM,OAAO,eAAe,GAAG;GAC/B,MAAM,WAAW,SAAS,IAAI,IAAI;GAClC,IAAI,UAAU;IACZ,MAAM,IAAI,MAAM,yBAAyB,SAAS,OAAO,IAAI,kBAAkB,MAAM;GACvF;GACA,SAAS,IAAI,MAAM,GAAG;GACtB;EACF;EACA,KAAK,MAAM,SAAS,SAAS;GAC3B,IAAI,CAAC,MAAM,YAAY,KAAK,MAAM,KAAK,WAAW,GAAG,KAAK,KAAK,IAAI,MAAM,IAAI,GAAG;GAChF,KAAK,KAAK,KAAK,MAAM,IAAI,CAAC;EAC5B;CACF;CACA,KAAK,IAAI;CACT,OAAO;AACT"}
@@ -1,4 +1,4 @@
1
- import { existsSync } from "fs";
1
+ import { existsSync, readdirSync } from "fs";
2
2
  import { basename, dirname, join } from "path";
3
3
 
4
4
  function swiftPackageId(packageDir) {
@@ -9,6 +9,54 @@ function swiftPackageDirOf(file) {
9
9
  if (existsSync(join(dir, "Package.swift"))) return dir;
10
10
  }
11
11
  }
12
+ function swiftPackageDirectories(root) {
13
+ var skip = /* @__PURE__ */ new Set([
14
+ "node_modules",
15
+ "ios",
16
+ "android",
17
+ "dist",
18
+ "types",
19
+ "build"
20
+ ]);
21
+ var packages = /* @__PURE__ */ new Map();
22
+ var walk = function walk1(dir) {
23
+ var entries = readdirSync(dir, { withFileTypes: true });
24
+ if (entries.some(function(entry2) {
25
+ return entry2.isFile() && entry2.name === "Package.swift";
26
+ })) {
27
+ var name = swiftPackageId(dir);
28
+ var previous = packages.get(name);
29
+ if (previous) {
30
+ throw new Error(`[vxrn] swift packages ${previous} and ${dir} both have name ${name}`);
31
+ }
32
+ packages.set(name, dir);
33
+ return;
34
+ }
35
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
36
+ try {
37
+ for (var _iterator = entries[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
38
+ var entry = _step.value;
39
+ if (!entry.isDirectory() || entry.name.startsWith(".") || skip.has(entry.name)) continue;
40
+ walk(join(dir, entry.name));
41
+ }
42
+ } catch (err) {
43
+ _didIteratorError = true;
44
+ _iteratorError = err;
45
+ } finally {
46
+ try {
47
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
48
+ _iterator.return();
49
+ }
50
+ } finally {
51
+ if (_didIteratorError) {
52
+ throw _iteratorError;
53
+ }
54
+ }
55
+ }
56
+ };
57
+ walk(root);
58
+ return packages;
59
+ }
12
60
 
13
- export { swiftPackageDirOf, swiftPackageId };
61
+ export { swiftPackageDirOf, swiftPackageDirectories, swiftPackageId };
14
62
  //# sourceMappingURL=swiftPackageId.native.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"swiftPackageId.native.js","names":[],"sources":["utils/swiftPackageId.native.js"],"sourcesContent":["import { existsSync } from \"fs\";\nimport { basename, dirname, join } from \"path\";\nfunction swiftPackageId(packageDir) {\n return basename(packageDir).replace(/[^A-Za-z0-9_]/g, \"_\").replace(/^(\\d)/, \"_$1\");\n}\nfunction swiftPackageDirOf(file) {\n for (var dir = dirname(file); dirname(dir) !== dir; dir = dirname(dir)) {\n if (existsSync(join(dir, \"Package.swift\"))) return dir;\n }\n}\nexport {\n swiftPackageDirOf,\n swiftPackageId\n};\n//# sourceMappingURL=swiftPackageId.js.map\n"],"mappings":";;;;AAEA,SAAS,eAAe,YAAY;CAClC,OAAO,SAAS,UAAU,CAAC,CAAC,QAAQ,kBAAkB,GAAG,CAAC,CAAC,QAAQ,SAAS,KAAK;AACnF;AACA,SAAS,kBAAkB,MAAM;CAC/B,KAAK,IAAI,MAAM,QAAQ,IAAI,GAAG,QAAQ,GAAG,MAAM,KAAK,MAAM,QAAQ,GAAG,GAAG;EACtE,IAAI,WAAW,KAAK,KAAK,eAAe,CAAC,GAAG,OAAO;CACrD;AACF"}
1
+ {"version":3,"file":"swiftPackageId.native.js","names":[],"sources":["utils/swiftPackageId.native.js"],"sourcesContent":["import { existsSync, readdirSync } from \"fs\";\nimport { basename, dirname, join } from \"path\";\nfunction swiftPackageId(packageDir) {\n return basename(packageDir).replace(/[^A-Za-z0-9_]/g, \"_\").replace(/^(\\d)/, \"_$1\");\n}\nfunction swiftPackageDirOf(file) {\n for (var dir = dirname(file); dirname(dir) !== dir; dir = dirname(dir)) {\n if (existsSync(join(dir, \"Package.swift\"))) return dir;\n }\n}\nfunction swiftPackageDirectories(root) {\n var skip = /* @__PURE__ */ new Set([\n \"node_modules\",\n \"ios\",\n \"android\",\n \"dist\",\n \"types\",\n \"build\"\n ]);\n var packages = /* @__PURE__ */ new Map();\n var walk = function walk1(dir) {\n var entries = readdirSync(dir, {\n withFileTypes: true\n });\n if (entries.some(function(entry2) {\n return entry2.isFile() && entry2.name === \"Package.swift\";\n })) {\n var name = swiftPackageId(dir);\n var previous = packages.get(name);\n if (previous) {\n throw new Error(`[vxrn] swift packages ${previous} and ${dir} both have name ${name}`);\n }\n packages.set(name, dir);\n return;\n }\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = entries[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var entry = _step.value;\n if (!entry.isDirectory() || entry.name.startsWith(\".\") || skip.has(entry.name)) continue;\n walk(join(dir, entry.name));\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n };\n walk(root);\n return packages;\n}\nexport {\n swiftPackageDirOf,\n swiftPackageDirectories,\n swiftPackageId\n};\n//# sourceMappingURL=swiftPackageId.js.map\n"],"mappings":";;;;AAEA,SAAS,eAAe,YAAY;CAClC,OAAO,SAAS,UAAU,CAAC,CAAC,QAAQ,kBAAkB,GAAG,CAAC,CAAC,QAAQ,SAAS,KAAK;AACnF;AACA,SAAS,kBAAkB,MAAM;CAC/B,KAAK,IAAI,MAAM,QAAQ,IAAI,GAAG,QAAQ,GAAG,MAAM,KAAK,MAAM,QAAQ,GAAG,GAAG;EACtE,IAAI,WAAW,KAAK,KAAK,eAAe,CAAC,GAAG,OAAO;CACrD;AACF;AACA,SAAS,wBAAwB,MAAM;CACrC,IAAI,uBAAuB,IAAI,IAAI;EACjC;EACA;EACA;EACA;EACA;EACA;CACF,CAAC;CACD,IAAI,2BAA2B,IAAI,IAAI;CACvC,IAAI,OAAO,SAAS,MAAM,KAAK;EAC7B,IAAI,UAAU,YAAY,KAAK,EAC7B,eAAe,KACjB,CAAC;EACD,IAAI,QAAQ,KAAK,SAAS,QAAQ;GAChC,OAAO,OAAO,OAAO,KAAK,OAAO,SAAS;EAC5C,CAAC,GAAG;GACF,IAAI,OAAO,eAAe,GAAG;GAC7B,IAAI,WAAW,SAAS,IAAI,IAAI;GAChC,IAAI,UAAU;IACZ,MAAM,IAAI,MAAM,yBAAyB,SAAS,OAAO,IAAI,kBAAkB,MAAM;GACvF;GACA,SAAS,IAAI,MAAM,GAAG;GACtB;EACF;EACA,IAAI,4BAA4B,MAAM,oBAAoB,OAAO,iBAAiB,KAAK;EACvF,IAAI;GACF,KAAK,IAAI,YAAY,QAAQ,OAAO,SAAS,CAAC,GAAG,OAAO,EAAE,6BAA6B,QAAQ,UAAU,KAAK,EAAC,CAAE,OAAO,4BAA4B,MAAM;IACxJ,IAAI,QAAQ,MAAM;IAClB,IAAI,CAAC,MAAM,YAAY,KAAK,MAAM,KAAK,WAAW,GAAG,KAAK,KAAK,IAAI,MAAM,IAAI,GAAG;IAChF,KAAK,KAAK,KAAK,MAAM,IAAI,CAAC;GAC5B;EACF,SAAS,KAAK;GACZ,oBAAoB;GACpB,iBAAiB;EACnB,UAAU;GACR,IAAI;IACF,IAAI,CAAC,6BAA6B,UAAU,UAAU,MAAM;KAC1D,UAAU,OAAO;IACnB;GACF,UAAU;IACR,IAAI,mBAAmB;KACrB,MAAM;IACR;GACF;EACF;CACF;CACA,KAAK,IAAI;CACT,OAAO;AACT"}
@@ -9,7 +9,7 @@ function vxrn(options) {
9
9
  return [
10
10
  {
11
11
  name: "vxrn-config",
12
- config: async function(config, param) {
12
+ config: async function config(config, param) {
13
13
  var { mode: modeIn } = param;
14
14
  var mode = (function() {
15
15
  switch (modeIn) {
@@ -1 +1 @@
1
- {"version":3,"file":"vxrn-vite-plugin.native.js","names":[],"sources":["vxrn-vite-plugin.native.js"],"sourcesContent":["import { mergeConfig } from \"vite\";\nimport { getBaseViteConfig } from \"./config/getBaseViteConfigOnly\";\nimport { getAdditionalViteConfig } from \"./config/getAdditionalViteConfig\";\nimport { getBaseVitePlugins } from \"./config/getBaseVitePlugins\";\nimport { getNonCliModeOnlyVitePlugins } from \"./config/getNonCliModeOnlyVitePlugins\";\nimport { getReactNativePlugins } from \"./config/getReactNativePlugins\";\nfunction vxrn(options) {\n return [\n {\n name: \"vxrn-config\",\n config: async function(config, param) {\n var { mode: modeIn } = param;\n var mode = (function() {\n switch (modeIn) {\n case \"development\":\n case \"dev\":\n return \"development\";\n case \"production\":\n case \"prod\":\n return \"production\";\n default:\n console.warn(`[vxrn-config] Unrecognized mode \"${modeIn}\". Defaulting to \"development\".`);\n return \"development\";\n }\n })();\n var root = config.root;\n if (!root) {\n root = process.cwd();\n console.warn(`[vxrn-config] \\`config.root\\` is empty, using current working directory (process.cwd()): ${root}`);\n }\n var baseConfig = await getBaseViteConfig({\n root,\n mode\n });\n var additionalConfig = getAdditionalViteConfig();\n return mergeConfig(baseConfig, additionalConfig);\n }\n },\n ...getBaseVitePlugins(),\n ...getNonCliModeOnlyVitePlugins(),\n ...(options === null || options === void 0 ? void 0 : options.disableNative) ? [] : getReactNativePlugins({}, {\n metro: (options === null || options === void 0 ? void 0 : options.metro) || null\n })\n ];\n}\nvar vxrn_vite_plugin_default = vxrn;\nexport {\n vxrn_vite_plugin_default as default,\n vxrn\n};\n//# sourceMappingURL=vxrn-vite-plugin.js.map\n"],"mappings":";;;;;;;;AAMA,SAAS,KAAK,SAAS;CACrB,OAAO;EACL;GACE,MAAM;GACN,QAAQ,eAAe,QAAQ,OAAO;IACpC,IAAI,EAAE,MAAM,WAAW;IACvB,IAAI,QAAQ,WAAW;KACrB,QAAQ,QAAR;MACE,KAAK;MACL,KAAK,OACH,OAAO;MACT,KAAK;MACL,KAAK,QACH,OAAO;MACT;OACE,QAAQ,KAAK,oCAAoC,OAAO,gCAAgC;OACxF,OAAO;KACX;IACF,EAAC,CAAE;IACH,IAAI,OAAO,OAAO;IAClB,IAAI,CAAC,MAAM;KACT,OAAO,QAAQ,IAAI;KACnB,QAAQ,KAAK,4FAA4F,MAAM;IACjH;IACA,IAAI,aAAa,MAAM,kBAAkB;KACvC;KACA;IACF,CAAC;IACD,IAAI,mBAAmB,wBAAwB;IAC/C,OAAO,YAAY,YAAY,gBAAgB;GACjD;EACF;EACA,GAAG,mBAAmB;EACtB,GAAG,6BAA6B;EAChC,IAAI,YAAY,QAAQ,YAAY,KAAK,IAAI,KAAK,IAAI,QAAQ,iBAAiB,CAAC,IAAI,sBAAsB,CAAC,GAAG,EAC5G,QAAQ,YAAY,QAAQ,YAAY,KAAK,IAAI,KAAK,IAAI,QAAQ,UAAU,KAC9E,CAAC;CACH;AACF;AACA,IAAI,2BAA2B"}
1
+ {"version":3,"file":"vxrn-vite-plugin.native.js","names":[],"sources":["vxrn-vite-plugin.native.js"],"sourcesContent":["import { mergeConfig } from \"vite\";\nimport { getBaseViteConfig } from \"./config/getBaseViteConfigOnly\";\nimport { getAdditionalViteConfig } from \"./config/getAdditionalViteConfig\";\nimport { getBaseVitePlugins } from \"./config/getBaseVitePlugins\";\nimport { getNonCliModeOnlyVitePlugins } from \"./config/getNonCliModeOnlyVitePlugins\";\nimport { getReactNativePlugins } from \"./config/getReactNativePlugins\";\nfunction vxrn(options) {\n return [\n {\n name: \"vxrn-config\",\n config: async function config(config, param) {\n var { mode: modeIn } = param;\n var mode = (function() {\n switch (modeIn) {\n case \"development\":\n case \"dev\":\n return \"development\";\n case \"production\":\n case \"prod\":\n return \"production\";\n default:\n console.warn(`[vxrn-config] Unrecognized mode \"${modeIn}\". Defaulting to \"development\".`);\n return \"development\";\n }\n })();\n var root = config.root;\n if (!root) {\n root = process.cwd();\n console.warn(`[vxrn-config] \\`config.root\\` is empty, using current working directory (process.cwd()): ${root}`);\n }\n var baseConfig = await getBaseViteConfig({\n root,\n mode\n });\n var additionalConfig = getAdditionalViteConfig();\n return mergeConfig(baseConfig, additionalConfig);\n }\n },\n ...getBaseVitePlugins(),\n ...getNonCliModeOnlyVitePlugins(),\n ...(options === null || options === void 0 ? void 0 : options.disableNative) ? [] : getReactNativePlugins({}, {\n metro: (options === null || options === void 0 ? void 0 : options.metro) || null\n })\n ];\n}\nvar vxrn_vite_plugin_default = vxrn;\nexport {\n vxrn_vite_plugin_default as default,\n vxrn\n};\n//# sourceMappingURL=vxrn-vite-plugin.js.map\n"],"mappings":";;;;;;;;AAMA,SAAS,KAAK,SAAS;CACrB,OAAO;EACL;GACE,MAAM;GACN,QAAQ,eAAe,OAAO,QAAQ,OAAO;IAC3C,IAAI,EAAE,MAAM,WAAW;IACvB,IAAI,QAAQ,WAAW;KACrB,QAAQ,QAAR;MACE,KAAK;MACL,KAAK,OACH,OAAO;MACT,KAAK;MACL,KAAK,QACH,OAAO;MACT;OACE,QAAQ,KAAK,oCAAoC,OAAO,gCAAgC;OACxF,OAAO;KACX;IACF,EAAC,CAAE;IACH,IAAI,OAAO,OAAO;IAClB,IAAI,CAAC,MAAM;KACT,OAAO,QAAQ,IAAI;KACnB,QAAQ,KAAK,4FAA4F,MAAM;IACjH;IACA,IAAI,aAAa,MAAM,kBAAkB;KACvC;KACA;IACF,CAAC;IACD,IAAI,mBAAmB,wBAAwB;IAC/C,OAAO,YAAY,YAAY,gBAAgB;GACjD;EACF;EACA,GAAG,mBAAmB;EACtB,GAAG,6BAA6B;EAChC,IAAI,YAAY,QAAQ,YAAY,KAAK,IAAI,KAAK,IAAI,QAAQ,iBAAiB,CAAC,IAAI,sBAAsB,CAAC,GAAG,EAC5G,QAAQ,YAAY,QAAQ,YAAY,KAAK,IAAI,KAAK,IAAI,QAAQ,UAAU,KAC9E,CAAC;CACH;AACF;AACA,IAAI,2BAA2B"}