vxrn 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (311) hide show
  1. package/dist/create.js +349 -0
  2. package/dist/create.js.map +6 -0
  3. package/dist/create.native.js +350 -0
  4. package/dist/create.native.js.map +6 -0
  5. package/dist/dev/clientInjectPlugin.js +71 -0
  6. package/dist/dev/clientInjectPlugin.js.map +6 -0
  7. package/dist/dev/clientInjectPlugin.native.js +72 -0
  8. package/dist/dev/clientInjectPlugin.native.js.map +6 -0
  9. package/dist/dev/createDevServer.js +127 -0
  10. package/dist/dev/createDevServer.js.map +6 -0
  11. package/dist/dev/createDevServer.native.js +128 -0
  12. package/dist/dev/createDevServer.native.js.map +6 -0
  13. package/dist/getVitePath.js +54 -0
  14. package/dist/getVitePath.js.map +6 -0
  15. package/dist/getVitePath.native.js +55 -0
  16. package/dist/getVitePath.native.js.map +6 -0
  17. package/dist/index.js +27 -0
  18. package/dist/index.js.map +6 -0
  19. package/dist/index.native.js +28 -0
  20. package/dist/index.native.js.map +6 -0
  21. package/dist/nativePlugin.js +93 -0
  22. package/dist/nativePlugin.js.map +6 -0
  23. package/dist/nativePlugin.native.js +94 -0
  24. package/dist/nativePlugin.native.js.map +6 -0
  25. package/dist/start.js +348 -0
  26. package/dist/start.js.map +6 -0
  27. package/dist/start.native.js +349 -0
  28. package/dist/start.native.js.map +6 -0
  29. package/dist/types.js +14 -0
  30. package/dist/types.js.map +6 -0
  31. package/dist/types.native.js +15 -0
  32. package/dist/types.native.js.map +6 -0
  33. package/dist/utils/constants.js +25 -0
  34. package/dist/utils/constants.js.map +6 -0
  35. package/dist/utils/constants.native.js +26 -0
  36. package/dist/utils/constants.native.js.map +6 -0
  37. package/dist/utils.js +33 -0
  38. package/dist/utils.js.map +6 -0
  39. package/dist/utils.native.js +34 -0
  40. package/dist/utils.native.js.map +6 -0
  41. package/dist/vendor/debugger-app/index.js +23 -0
  42. package/dist/vendor/debugger-app/index.js.map +6 -0
  43. package/dist/vendor/debugger-app/index.native.js +24 -0
  44. package/dist/vendor/debugger-app/index.native.js.map +6 -0
  45. package/dist/vendor/debugger-app/src/debuggerWorker.js +47 -0
  46. package/dist/vendor/debugger-app/src/debuggerWorker.js.map +6 -0
  47. package/dist/vendor/debugger-app/src/debuggerWorker.native.js +48 -0
  48. package/dist/vendor/debugger-app/src/debuggerWorker.native.js.map +6 -0
  49. package/dist/vendor/debugger-app/src/index.css +41 -0
  50. package/dist/vendor/debugger-app/src/index.css.map +6 -0
  51. package/dist/vendor/debugger-app/src/index.js +105 -0
  52. package/dist/vendor/debugger-app/src/index.js.map +6 -0
  53. package/dist/vendor/debugger-app/src/index.native.js +106 -0
  54. package/dist/vendor/debugger-app/src/index.native.js.map +6 -0
  55. package/dist/vendor/repack/dev-server/src/createServer.js +108 -0
  56. package/dist/vendor/repack/dev-server/src/createServer.js.map +6 -0
  57. package/dist/vendor/repack/dev-server/src/createServer.native.js +109 -0
  58. package/dist/vendor/repack/dev-server/src/createServer.native.js.map +6 -0
  59. package/dist/vendor/repack/dev-server/src/index.js +21 -0
  60. package/dist/vendor/repack/dev-server/src/index.js.map +6 -0
  61. package/dist/vendor/repack/dev-server/src/index.native.js +22 -0
  62. package/dist/vendor/repack/dev-server/src/index.native.js.map +6 -0
  63. package/dist/vendor/repack/dev-server/src/plugins/api/apiPlugin.js +51 -0
  64. package/dist/vendor/repack/dev-server/src/plugins/api/apiPlugin.js.map +6 -0
  65. package/dist/vendor/repack/dev-server/src/plugins/api/apiPlugin.native.js +52 -0
  66. package/dist/vendor/repack/dev-server/src/plugins/api/apiPlugin.native.js.map +6 -0
  67. package/dist/vendor/repack/dev-server/src/plugins/api/index.js +29 -0
  68. package/dist/vendor/repack/dev-server/src/plugins/api/index.js.map +6 -0
  69. package/dist/vendor/repack/dev-server/src/plugins/api/index.native.js +30 -0
  70. package/dist/vendor/repack/dev-server/src/plugins/api/index.native.js.map +6 -0
  71. package/dist/vendor/repack/dev-server/src/plugins/compiler/compilerPlugin.js +77 -0
  72. package/dist/vendor/repack/dev-server/src/plugins/compiler/compilerPlugin.js.map +6 -0
  73. package/dist/vendor/repack/dev-server/src/plugins/compiler/compilerPlugin.native.js +78 -0
  74. package/dist/vendor/repack/dev-server/src/plugins/compiler/compilerPlugin.native.js.map +6 -0
  75. package/dist/vendor/repack/dev-server/src/plugins/compiler/index.js +33 -0
  76. package/dist/vendor/repack/dev-server/src/plugins/compiler/index.js.map +6 -0
  77. package/dist/vendor/repack/dev-server/src/plugins/compiler/index.native.js +34 -0
  78. package/dist/vendor/repack/dev-server/src/plugins/compiler/index.native.js.map +6 -0
  79. package/dist/vendor/repack/dev-server/src/plugins/compiler/types.js +14 -0
  80. package/dist/vendor/repack/dev-server/src/plugins/compiler/types.js.map +6 -0
  81. package/dist/vendor/repack/dev-server/src/plugins/compiler/types.native.js +15 -0
  82. package/dist/vendor/repack/dev-server/src/plugins/compiler/types.native.js.map +6 -0
  83. package/dist/vendor/repack/dev-server/src/plugins/devtools/devtoolsPlugin.js +95 -0
  84. package/dist/vendor/repack/dev-server/src/plugins/devtools/devtoolsPlugin.js.map +6 -0
  85. package/dist/vendor/repack/dev-server/src/plugins/devtools/devtoolsPlugin.native.js +96 -0
  86. package/dist/vendor/repack/dev-server/src/plugins/devtools/devtoolsPlugin.native.js.map +6 -0
  87. package/dist/vendor/repack/dev-server/src/plugins/devtools/index.js +29 -0
  88. package/dist/vendor/repack/dev-server/src/plugins/devtools/index.js.map +6 -0
  89. package/dist/vendor/repack/dev-server/src/plugins/devtools/index.native.js +30 -0
  90. package/dist/vendor/repack/dev-server/src/plugins/devtools/index.native.js.map +6 -0
  91. package/dist/vendor/repack/dev-server/src/plugins/favicon/faviconPlugin.js +36 -0
  92. package/dist/vendor/repack/dev-server/src/plugins/favicon/faviconPlugin.js.map +6 -0
  93. package/dist/vendor/repack/dev-server/src/plugins/favicon/faviconPlugin.native.js +37 -0
  94. package/dist/vendor/repack/dev-server/src/plugins/favicon/faviconPlugin.native.js.map +6 -0
  95. package/dist/vendor/repack/dev-server/src/plugins/favicon/index.js +29 -0
  96. package/dist/vendor/repack/dev-server/src/plugins/favicon/index.js.map +6 -0
  97. package/dist/vendor/repack/dev-server/src/plugins/favicon/index.native.js +30 -0
  98. package/dist/vendor/repack/dev-server/src/plugins/favicon/index.native.js.map +6 -0
  99. package/dist/vendor/repack/dev-server/src/plugins/multipart/index.js +33 -0
  100. package/dist/vendor/repack/dev-server/src/plugins/multipart/index.js.map +6 -0
  101. package/dist/vendor/repack/dev-server/src/plugins/multipart/index.native.js +34 -0
  102. package/dist/vendor/repack/dev-server/src/plugins/multipart/index.native.js.map +6 -0
  103. package/dist/vendor/repack/dev-server/src/plugins/multipart/multipartPlugin.js +61 -0
  104. package/dist/vendor/repack/dev-server/src/plugins/multipart/multipartPlugin.js.map +6 -0
  105. package/dist/vendor/repack/dev-server/src/plugins/multipart/multipartPlugin.native.js +62 -0
  106. package/dist/vendor/repack/dev-server/src/plugins/multipart/multipartPlugin.native.js.map +6 -0
  107. package/dist/vendor/repack/dev-server/src/plugins/multipart/types.js +14 -0
  108. package/dist/vendor/repack/dev-server/src/plugins/multipart/types.js.map +6 -0
  109. package/dist/vendor/repack/dev-server/src/plugins/multipart/types.native.js +15 -0
  110. package/dist/vendor/repack/dev-server/src/plugins/multipart/types.native.js.map +6 -0
  111. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/Symbolicator.js +185 -0
  112. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/Symbolicator.js.map +6 -0
  113. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/Symbolicator.native.js +186 -0
  114. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/Symbolicator.native.js.map +6 -0
  115. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/index.js +35 -0
  116. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/index.js.map +6 -0
  117. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/index.native.js +36 -0
  118. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/index.native.js.map +6 -0
  119. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/sybmolicatePlugin.js +55 -0
  120. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/sybmolicatePlugin.js.map +6 -0
  121. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/sybmolicatePlugin.native.js +56 -0
  122. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/sybmolicatePlugin.native.js.map +6 -0
  123. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/types.js +14 -0
  124. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/types.js.map +6 -0
  125. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/types.native.js +15 -0
  126. package/dist/vendor/repack/dev-server/src/plugins/symbolicate/types.native.js.map +6 -0
  127. package/dist/vendor/repack/dev-server/src/plugins/wss/WebSocketRouter.js +65 -0
  128. package/dist/vendor/repack/dev-server/src/plugins/wss/WebSocketRouter.js.map +6 -0
  129. package/dist/vendor/repack/dev-server/src/plugins/wss/WebSocketRouter.native.js +66 -0
  130. package/dist/vendor/repack/dev-server/src/plugins/wss/WebSocketRouter.native.js.map +6 -0
  131. package/dist/vendor/repack/dev-server/src/plugins/wss/WebSocketServer.js +54 -0
  132. package/dist/vendor/repack/dev-server/src/plugins/wss/WebSocketServer.js.map +6 -0
  133. package/dist/vendor/repack/dev-server/src/plugins/wss/WebSocketServer.native.js +50 -0
  134. package/dist/vendor/repack/dev-server/src/plugins/wss/WebSocketServer.native.js.map +6 -0
  135. package/dist/vendor/repack/dev-server/src/plugins/wss/index.js +35 -0
  136. package/dist/vendor/repack/dev-server/src/plugins/wss/index.js.map +6 -0
  137. package/dist/vendor/repack/dev-server/src/plugins/wss/index.native.js +36 -0
  138. package/dist/vendor/repack/dev-server/src/plugins/wss/index.native.js.map +6 -0
  139. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/HermesInspectorProxy.js +118 -0
  140. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/HermesInspectorProxy.js.map +6 -0
  141. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/HermesInspectorProxy.native.js +118 -0
  142. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/HermesInspectorProxy.native.js.map +6 -0
  143. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketApiServer.js +69 -0
  144. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketApiServer.js.map +6 -0
  145. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketApiServer.native.js +70 -0
  146. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketApiServer.native.js.map +6 -0
  147. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDebuggerServer.js +110 -0
  148. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDebuggerServer.js.map +6 -0
  149. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDebuggerServer.native.js +103 -0
  150. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDebuggerServer.native.js.map +6 -0
  151. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDevClientServer.js +71 -0
  152. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDevClientServer.js.map +6 -0
  153. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDevClientServer.native.js +72 -0
  154. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDevClientServer.native.js.map +6 -0
  155. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketEventsServer.js +160 -0
  156. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketEventsServer.js.map +6 -0
  157. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketEventsServer.native.js +162 -0
  158. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketEventsServer.native.js.map +6 -0
  159. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketHMRServer.js +86 -0
  160. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketHMRServer.js.map +6 -0
  161. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketHMRServer.native.js +87 -0
  162. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketHMRServer.native.js.map +6 -0
  163. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketMessageServer.js +323 -0
  164. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketMessageServer.js.map +6 -0
  165. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketMessageServer.native.js +325 -0
  166. package/dist/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketMessageServer.native.js.map +6 -0
  167. package/dist/vendor/repack/dev-server/src/plugins/wss/types.js +14 -0
  168. package/dist/vendor/repack/dev-server/src/plugins/wss/types.js.map +6 -0
  169. package/dist/vendor/repack/dev-server/src/plugins/wss/types.native.js +15 -0
  170. package/dist/vendor/repack/dev-server/src/plugins/wss/types.native.js.map +6 -0
  171. package/dist/vendor/repack/dev-server/src/plugins/wss/wssPlugin.js +50 -0
  172. package/dist/vendor/repack/dev-server/src/plugins/wss/wssPlugin.js.map +6 -0
  173. package/dist/vendor/repack/dev-server/src/plugins/wss/wssPlugin.native.js +51 -0
  174. package/dist/vendor/repack/dev-server/src/plugins/wss/wssPlugin.native.js.map +6 -0
  175. package/dist/vendor/repack/dev-server/src/types.js +29 -0
  176. package/dist/vendor/repack/dev-server/src/types.js.map +6 -0
  177. package/dist/vendor/repack/dev-server/src/types.native.js +30 -0
  178. package/dist/vendor/repack/dev-server/src/types.native.js.map +6 -0
  179. package/package.json +57 -0
  180. package/react-native-template.js +104 -0
  181. package/src/create.ts +490 -0
  182. package/src/dev/clientInjectPlugin.ts +112 -0
  183. package/src/dev/createDevServer.ts +243 -0
  184. package/src/getVitePath.ts +47 -0
  185. package/src/index.ts +2 -0
  186. package/src/nativePlugin.ts +209 -0
  187. package/src/types.ts +11 -0
  188. package/src/utils/constants.ts +1 -0
  189. package/src/utils.ts +9 -0
  190. package/src/vendor/debugger-app/index.d.ts +2 -0
  191. package/src/vendor/debugger-app/index.js +3 -0
  192. package/src/vendor/debugger-app/public/index.html +49 -0
  193. package/src/vendor/debugger-app/src/assets/blue-icon.png +0 -0
  194. package/src/vendor/debugger-app/src/assets/gray-icon.png +0 -0
  195. package/src/vendor/debugger-app/src/assets/orange-icon.png +0 -0
  196. package/src/vendor/debugger-app/src/debuggerWorker.js +84 -0
  197. package/src/vendor/debugger-app/src/index.css +37 -0
  198. package/src/vendor/debugger-app/src/index.js +199 -0
  199. package/src/vendor/debugger-app/webpack.config.cjs +73 -0
  200. package/src/vendor/repack/dev-server/src/createServer.ts +136 -0
  201. package/src/vendor/repack/dev-server/src/img/favicon.ico +0 -0
  202. package/src/vendor/repack/dev-server/src/index.ts +2 -0
  203. package/src/vendor/repack/dev-server/src/plugins/api/apiPlugin.ts +50 -0
  204. package/src/vendor/repack/dev-server/src/plugins/api/index.ts +1 -0
  205. package/src/vendor/repack/dev-server/src/plugins/compiler/compilerPlugin.ts +84 -0
  206. package/src/vendor/repack/dev-server/src/plugins/compiler/index.ts +2 -0
  207. package/src/vendor/repack/dev-server/src/plugins/compiler/types.ts +37 -0
  208. package/src/vendor/repack/dev-server/src/plugins/devtools/devtoolsPlugin.ts +107 -0
  209. package/src/vendor/repack/dev-server/src/plugins/devtools/index.ts +1 -0
  210. package/src/vendor/repack/dev-server/src/plugins/favicon/faviconPlugin.ts +14 -0
  211. package/src/vendor/repack/dev-server/src/plugins/favicon/index.ts +1 -0
  212. package/src/vendor/repack/dev-server/src/plugins/multipart/index.ts +2 -0
  213. package/src/vendor/repack/dev-server/src/plugins/multipart/multipartPlugin.ts +77 -0
  214. package/src/vendor/repack/dev-server/src/plugins/multipart/types.ts +13 -0
  215. package/src/vendor/repack/dev-server/src/plugins/symbolicate/Symbolicator.ts +233 -0
  216. package/src/vendor/repack/dev-server/src/plugins/symbolicate/index.ts +3 -0
  217. package/src/vendor/repack/dev-server/src/plugins/symbolicate/sybmolicatePlugin.ts +48 -0
  218. package/src/vendor/repack/dev-server/src/plugins/symbolicate/types.ts +71 -0
  219. package/src/vendor/repack/dev-server/src/plugins/wss/WebSocketRouter.ts +74 -0
  220. package/src/vendor/repack/dev-server/src/plugins/wss/WebSocketServer.ts +60 -0
  221. package/src/vendor/repack/dev-server/src/plugins/wss/index.ts +3 -0
  222. package/src/vendor/repack/dev-server/src/plugins/wss/servers/HermesInspectorProxy.ts +158 -0
  223. package/src/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketApiServer.ts +69 -0
  224. package/src/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDebuggerServer.ts +134 -0
  225. package/src/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDevClientServer.ts +74 -0
  226. package/src/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketEventsServer.ts +205 -0
  227. package/src/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketHMRServer.ts +97 -0
  228. package/src/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketMessageServer.ts +401 -0
  229. package/src/vendor/repack/dev-server/src/plugins/wss/types.ts +17 -0
  230. package/src/vendor/repack/dev-server/src/plugins/wss/wssPlugin.ts +73 -0
  231. package/src/vendor/repack/dev-server/src/types.ts +206 -0
  232. package/types/create.d.ts +11 -0
  233. package/types/create.d.ts.map +1 -0
  234. package/types/dev/clientInjectPlugin.d.ts +7 -0
  235. package/types/dev/clientInjectPlugin.d.ts.map +1 -0
  236. package/types/dev/createDevServer.d.ts +35 -0
  237. package/types/dev/createDevServer.d.ts.map +1 -0
  238. package/types/getVitePath.d.ts +2 -0
  239. package/types/getVitePath.d.ts.map +1 -0
  240. package/types/index.d.ts +3 -0
  241. package/types/index.d.ts.map +1 -0
  242. package/types/nativePlugin.d.ts +7 -0
  243. package/types/nativePlugin.d.ts.map +1 -0
  244. package/types/types.d.ts +13 -0
  245. package/types/types.d.ts.map +1 -0
  246. package/types/utils/constants.d.ts +2 -0
  247. package/types/utils/constants.d.ts.map +1 -0
  248. package/types/utils.d.ts +3 -0
  249. package/types/utils.d.ts.map +1 -0
  250. package/types/vendor/repack/dev-server/src/createServer.d.ts +14 -0
  251. package/types/vendor/repack/dev-server/src/createServer.d.ts.map +1 -0
  252. package/types/vendor/repack/dev-server/src/index.d.ts +3 -0
  253. package/types/vendor/repack/dev-server/src/index.d.ts.map +1 -0
  254. package/types/vendor/repack/dev-server/src/plugins/api/apiPlugin.d.ts +7 -0
  255. package/types/vendor/repack/dev-server/src/plugins/api/apiPlugin.d.ts.map +1 -0
  256. package/types/vendor/repack/dev-server/src/plugins/api/index.d.ts +2 -0
  257. package/types/vendor/repack/dev-server/src/plugins/api/index.d.ts.map +1 -0
  258. package/types/vendor/repack/dev-server/src/plugins/compiler/compilerPlugin.d.ts +6 -0
  259. package/types/vendor/repack/dev-server/src/plugins/compiler/compilerPlugin.d.ts.map +1 -0
  260. package/types/vendor/repack/dev-server/src/plugins/compiler/index.d.ts +3 -0
  261. package/types/vendor/repack/dev-server/src/plugins/compiler/index.d.ts.map +1 -0
  262. package/types/vendor/repack/dev-server/src/plugins/compiler/types.d.ts +32 -0
  263. package/types/vendor/repack/dev-server/src/plugins/compiler/types.d.ts.map +1 -0
  264. package/types/vendor/repack/dev-server/src/plugins/devtools/devtoolsPlugin.d.ts +6 -0
  265. package/types/vendor/repack/dev-server/src/plugins/devtools/devtoolsPlugin.d.ts.map +1 -0
  266. package/types/vendor/repack/dev-server/src/plugins/devtools/index.d.ts +2 -0
  267. package/types/vendor/repack/dev-server/src/plugins/devtools/index.d.ts.map +1 -0
  268. package/types/vendor/repack/dev-server/src/plugins/favicon/faviconPlugin.d.ts +3 -0
  269. package/types/vendor/repack/dev-server/src/plugins/favicon/faviconPlugin.d.ts.map +1 -0
  270. package/types/vendor/repack/dev-server/src/plugins/favicon/index.d.ts +2 -0
  271. package/types/vendor/repack/dev-server/src/plugins/favicon/index.d.ts.map +1 -0
  272. package/types/vendor/repack/dev-server/src/plugins/multipart/index.d.ts +3 -0
  273. package/types/vendor/repack/dev-server/src/plugins/multipart/index.d.ts.map +1 -0
  274. package/types/vendor/repack/dev-server/src/plugins/multipart/multipartPlugin.d.ts +3 -0
  275. package/types/vendor/repack/dev-server/src/plugins/multipart/multipartPlugin.d.ts.map +1 -0
  276. package/types/vendor/repack/dev-server/src/plugins/multipart/types.d.ts +13 -0
  277. package/types/vendor/repack/dev-server/src/plugins/multipart/types.d.ts.map +1 -0
  278. package/types/vendor/repack/dev-server/src/plugins/symbolicate/Symbolicator.d.ts +47 -0
  279. package/types/vendor/repack/dev-server/src/plugins/symbolicate/Symbolicator.d.ts.map +1 -0
  280. package/types/vendor/repack/dev-server/src/plugins/symbolicate/index.d.ts +4 -0
  281. package/types/vendor/repack/dev-server/src/plugins/symbolicate/index.d.ts.map +1 -0
  282. package/types/vendor/repack/dev-server/src/plugins/symbolicate/sybmolicatePlugin.d.ts +6 -0
  283. package/types/vendor/repack/dev-server/src/plugins/symbolicate/sybmolicatePlugin.d.ts.map +1 -0
  284. package/types/vendor/repack/dev-server/src/plugins/symbolicate/types.d.ts +66 -0
  285. package/types/vendor/repack/dev-server/src/plugins/symbolicate/types.d.ts.map +1 -0
  286. package/types/vendor/repack/dev-server/src/plugins/wss/WebSocketRouter.d.ts +33 -0
  287. package/types/vendor/repack/dev-server/src/plugins/wss/WebSocketRouter.d.ts.map +1 -0
  288. package/types/vendor/repack/dev-server/src/plugins/wss/WebSocketServer.d.ts +38 -0
  289. package/types/vendor/repack/dev-server/src/plugins/wss/WebSocketServer.d.ts.map +1 -0
  290. package/types/vendor/repack/dev-server/src/plugins/wss/index.d.ts +4 -0
  291. package/types/vendor/repack/dev-server/src/plugins/wss/index.d.ts.map +1 -0
  292. package/types/vendor/repack/dev-server/src/plugins/wss/servers/HermesInspectorProxy.d.ts +25 -0
  293. package/types/vendor/repack/dev-server/src/plugins/wss/servers/HermesInspectorProxy.d.ts.map +1 -0
  294. package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketApiServer.d.ts +33 -0
  295. package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketApiServer.d.ts.map +1 -0
  296. package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDebuggerServer.d.ts +65 -0
  297. package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDebuggerServer.d.ts.map +1 -0
  298. package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDevClientServer.d.ts +33 -0
  299. package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketDevClientServer.d.ts.map +1 -0
  300. package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketEventsServer.d.ts +76 -0
  301. package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketEventsServer.d.ts.map +1 -0
  302. package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketHMRServer.d.ts +39 -0
  303. package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketHMRServer.d.ts.map +1 -0
  304. package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketMessageServer.d.ts +137 -0
  305. package/types/vendor/repack/dev-server/src/plugins/wss/servers/WebSocketMessageServer.d.ts.map +1 -0
  306. package/types/vendor/repack/dev-server/src/plugins/wss/types.d.ts +17 -0
  307. package/types/vendor/repack/dev-server/src/plugins/wss/types.d.ts.map +1 -0
  308. package/types/vendor/repack/dev-server/src/plugins/wss/wssPlugin.d.ts +29 -0
  309. package/types/vendor/repack/dev-server/src/plugins/wss/wssPlugin.d.ts.map +1 -0
  310. package/types/vendor/repack/dev-server/src/types.d.ts +162 -0
  311. package/types/vendor/repack/dev-server/src/types.d.ts.map +1 -0
package/src/create.ts ADDED
@@ -0,0 +1,490 @@
1
+ import { readFile, writeFile } from 'fs/promises'
2
+ import { dirname, join, relative } from 'path'
3
+
4
+ import * as babel from '@babel/core'
5
+ import viteReactPlugin, {
6
+ swcTransform,
7
+ transformForBuild,
8
+ } from '@vite-react-native/vite-native-swc'
9
+ import react from '@vitejs/plugin-react-swc'
10
+ import { parse } from 'es-module-lexer'
11
+ import { pathExists } from 'fs-extra'
12
+ import { InlineConfig, build, createServer, mergeConfig, resolveConfig } from 'vite'
13
+
14
+ import { clientInjectionsPlugin } from './dev/clientInjectPlugin'
15
+ import { createDevServer } from './dev/createDevServer'
16
+ import { HMRListener } from './types'
17
+ import { StartOptions } from './types'
18
+ import { nativePlugin } from './nativePlugin'
19
+ import { getVitePath } from './getVitePath'
20
+
21
+ export const create = async (options: StartOptions) => {
22
+ const { root } = options
23
+
24
+ // used for normalizing hot reloads
25
+ let entryRoot = ''
26
+
27
+ const packageRootDir = join(__dirname, '..')
28
+ const templateFile = join(packageRootDir, 'react-native-template.js')
29
+
30
+ // react native port (it scans 19000 +5)
31
+ const port = options.port || 8081
32
+ const hmrListeners: HMRListener[] = []
33
+ const hotUpdatedCJSFiles = new Map<string, string>()
34
+
35
+ let serverConfig = {
36
+ root,
37
+ mode: 'development',
38
+ clearScreen: false,
39
+
40
+ resolve: {
41
+ dedupe: ['react', 'react-dom'],
42
+ alias: {
43
+ 'react-native': 'react-native-web',
44
+ },
45
+ },
46
+
47
+ optimizeDeps: {
48
+ include: ['react'],
49
+ },
50
+
51
+ plugins: [
52
+ react(),
53
+
54
+ {
55
+ name: 'tamagui-client-transform',
56
+
57
+ async handleHotUpdate({ read, modules, file }) {
58
+ try {
59
+ if (!file.includes('/src/')) {
60
+ return
61
+ }
62
+
63
+ const [module] = modules
64
+ if (!module) return
65
+
66
+ const id = module?.url || file.replace(root, '')
67
+
68
+ const code = await read()
69
+
70
+ // got a weird pre compiled file on startup
71
+ if (code.startsWith(`'use strict';`)) return
72
+
73
+ if (!code) {
74
+ return
75
+ }
76
+
77
+ let source = code
78
+
79
+ // we have to remove jsx before we can parse imports...
80
+ source = (await transformForBuild(id, source))?.code || ''
81
+
82
+ const importsMap = {}
83
+
84
+ // parse imports of modules into ids:
85
+ // eg `import x from '@tamagui/core'` => `import x from '/me/node_modules/@tamagui/core/index.js'`
86
+ const [imports] = parse(source)
87
+
88
+ let accumulatedSliceOffset = 0
89
+
90
+ for (const specifier of imports) {
91
+ const { n: importName, s: start } = specifier
92
+
93
+ if (importName) {
94
+ const id = await getVitePath(entryRoot, file, importName)
95
+ if (!id) {
96
+ console.warn('???')
97
+ continue
98
+ }
99
+
100
+ importsMap[id] = id.replace(/^(\.\.\/)+/, '')
101
+
102
+ // replace module name with id for hmr
103
+ const len = importName.length
104
+ const extraLen = id.length - len
105
+ source =
106
+ source.slice(0, start + accumulatedSliceOffset) +
107
+ id +
108
+ source.slice(start + accumulatedSliceOffset + len)
109
+ accumulatedSliceOffset += extraLen
110
+ }
111
+ }
112
+
113
+ // then we have to convert to commonjs..
114
+ source =
115
+ (
116
+ await swcTransform(id, source, {
117
+ mode: 'serve-cjs',
118
+ })
119
+ )?.code || ''
120
+
121
+ if (!source) {
122
+ throw '❌ no source'
123
+ }
124
+
125
+ const hotUpdateSource = `exports = ((exports) => {
126
+ const require = createRequire(${JSON.stringify(importsMap, null, 2)})
127
+ ${source
128
+ .replace(`import.meta.hot.accept(() => {})`, ``)
129
+ // replace import.meta.glob with empty array in hot reloads
130
+ .replaceAll(
131
+ /import.meta.glob\(.*\)/gi,
132
+ `globalThis['__importMetaGlobbed'] || {}`
133
+ )};
134
+ return exports })({})`
135
+
136
+ if (process.env.DEBUG === 'vxrn') {
137
+ // biome-ignore lint/suspicious/noConsoleLog: <explanation>
138
+ console.log(`Sending hot update`, hotUpdateSource)
139
+ }
140
+
141
+ hotUpdatedCJSFiles.set(id, hotUpdateSource)
142
+ } catch (err) {
143
+ // biome-ignore lint/suspicious/noConsoleLog: <explanation>
144
+ console.log(`Error processing hmr update:`, err)
145
+ }
146
+ },
147
+ },
148
+ ],
149
+
150
+ server: {
151
+ cors: true,
152
+ port: options.port,
153
+ host: options.host || '127.0.0.1',
154
+ },
155
+ } satisfies InlineConfig
156
+
157
+ if (options.webConfig) {
158
+ serverConfig = mergeConfig(serverConfig, options.webConfig) as any
159
+ }
160
+
161
+ // first resolve config so we can pass into client plugin, then add client plugin:
162
+ const resolvedConfig = await resolveConfig(serverConfig, 'serve')
163
+
164
+ const viteRNClientPlugin = clientInjectionsPlugin(resolvedConfig)
165
+
166
+ serverConfig = {
167
+ ...serverConfig,
168
+ plugins: [...serverConfig.plugins],
169
+ }
170
+
171
+ const viteServer = await createServer(serverConfig)
172
+
173
+ // this fakes vite into thinking its loading files, so it hmrs in native mode despite not requesting
174
+ viteServer.watcher.addListener('change', async (path) => {
175
+ const id = path.replace(process.cwd(), '')
176
+ if (!id.endsWith('tsx') && !id.endsWith('jsx')) {
177
+ return
178
+ }
179
+ // just so it thinks its loaded
180
+ try {
181
+ void viteServer.transformRequest(id)
182
+ } catch (err) {
183
+ // ok
184
+ // biome-ignore lint/suspicious/noConsoleLog: <explanation>
185
+ console.log('err', err)
186
+ }
187
+ })
188
+
189
+ let isBuilding: Promise<string> | null = null
190
+
191
+ const nativeServer = await createDevServer(options, {
192
+ hotUpdatedCJSFiles,
193
+ listenForHMR(cb) {
194
+ hmrListeners.push(cb)
195
+ },
196
+ getIndexBundle: getBundleCode,
197
+ indexJson: getIndexJsonReponse({ port, root }),
198
+ })
199
+
200
+ return {
201
+ nativeServer: nativeServer.instance,
202
+ viteServer,
203
+
204
+ async start() {
205
+ await Promise.all([viteServer.listen(), nativeServer.start()])
206
+
207
+ return {
208
+ closePromise: new Promise((res) => viteServer.httpServer?.on('close', res)),
209
+ }
210
+ },
211
+
212
+ stop: async () => {
213
+ await Promise.all([nativeServer.stop(), viteServer.close()])
214
+ },
215
+ }
216
+
217
+ async function getBundleCode() {
218
+ if (process.env.LOAD_TMP_BUNDLE) {
219
+ // for easier quick testing things:
220
+ const tmpBundle = join(process.cwd(), 'bundle.tmp.js')
221
+ if (await pathExists(tmpBundle)) {
222
+ // biome-ignore lint/suspicious/noConsoleLog: <explanation>
223
+ console.log(
224
+ '⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️ returning temp bundle ⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️',
225
+ tmpBundle
226
+ )
227
+ return await readFile(tmpBundle, 'utf-8')
228
+ }
229
+ }
230
+
231
+ if (isBuilding) {
232
+ const res = await isBuilding
233
+ return res
234
+ }
235
+
236
+ let done
237
+ isBuilding = new Promise((res) => {
238
+ done = res
239
+ })
240
+
241
+ const jsxRuntime = {
242
+ alias: 'virtual:react-jsx',
243
+ contents: await readFile(
244
+ require.resolve('@tamagui/react-native-prebuilt/jsx-runtime'),
245
+ 'utf-8'
246
+ ),
247
+ } as const
248
+
249
+ const virtualModules = {
250
+ 'react-native': {
251
+ alias: 'virtual:react-native',
252
+ contents: await readFile(
253
+ require.resolve('@tamagui/react-native-prebuilt'),
254
+ 'utf-8'
255
+ ),
256
+ },
257
+ react: {
258
+ alias: 'virtual:react',
259
+ contents: await readFile(
260
+ require.resolve('@tamagui/react-native-prebuilt/react'),
261
+ 'utf-8'
262
+ ),
263
+ },
264
+ 'react/jsx-runtime': jsxRuntime,
265
+ 'react/jsx-dev-runtime': jsxRuntime,
266
+ } as const
267
+
268
+ const swapRnPlugin = {
269
+ name: `swap-react-native`,
270
+ enforce: 'pre',
271
+
272
+ resolveId(id) {
273
+ if (id.startsWith('react-native/Libraries')) {
274
+ return `virtual:rn-internals:${id}`
275
+ }
276
+
277
+ for (const targetId in virtualModules) {
278
+ if (id === targetId || id.includes(`node_modules/${targetId}/`)) {
279
+ const info = virtualModules[targetId]
280
+ return info.alias
281
+ }
282
+ }
283
+ },
284
+
285
+ load(id) {
286
+ if (id.startsWith('virtual:rn-internals')) {
287
+ const idOut = id.replace('virtual:rn-internals:', '')
288
+ return `const val = __cachedModules["${idOut}"]
289
+ export const PressabilityDebugView = val.PressabilityDebugView
290
+ export default val ? val.default || val : val`
291
+ }
292
+
293
+ for (const targetId in virtualModules) {
294
+ const info = virtualModules[targetId as keyof typeof virtualModules]
295
+ if (id === info.alias) {
296
+ return info.contents
297
+ }
298
+ }
299
+ },
300
+ } as const
301
+
302
+ async function babelReanimated(input: string, filename: string) {
303
+ return await new Promise<string>((res, rej) => {
304
+ babel.transform(
305
+ input,
306
+ {
307
+ plugins: ['react-native-reanimated/plugin'],
308
+ filename,
309
+ },
310
+ (err: any, result) => {
311
+ if (!result || err) rej(err || 'no res')
312
+ res(result!.code!)
313
+ }
314
+ )
315
+ })
316
+ }
317
+
318
+ // build app
319
+ let buildConfig = {
320
+ plugins: [
321
+ swapRnPlugin,
322
+
323
+ {
324
+ name: 'reanimated',
325
+
326
+ async transform(code, id) {
327
+ if (code.includes('worklet')) {
328
+ const out = await babelReanimated(code, id)
329
+ return out
330
+ }
331
+ },
332
+ },
333
+
334
+ viteRNClientPlugin,
335
+
336
+ nativePlugin({
337
+ root: options.root,
338
+ port,
339
+ mode: 'build',
340
+ }),
341
+
342
+ viteReactPlugin({
343
+ tsDecorators: true,
344
+ mode: 'build',
345
+ }),
346
+ ],
347
+ appType: 'custom',
348
+ root,
349
+ clearScreen: false,
350
+
351
+ build: {
352
+ ssr: false,
353
+ minify: false,
354
+ commonjsOptions: {
355
+ transformMixedEsModules: true,
356
+ },
357
+ rollupOptions: {
358
+ treeshake: false,
359
+ preserveEntrySignatures: 'strict',
360
+ output: {
361
+ preserveModules: true,
362
+ format: 'cjs',
363
+ },
364
+ },
365
+ },
366
+
367
+ mode: 'development',
368
+ define: {
369
+ 'process.env.NODE_ENV': `"development"`,
370
+ },
371
+ } satisfies InlineConfig
372
+
373
+ if (options.buildConfig) {
374
+ buildConfig = mergeConfig(buildConfig, options.buildConfig) as any
375
+ }
376
+
377
+ // this fixes my swap-react-native plugin not being called pre 😳
378
+ await resolveConfig(buildConfig, 'build')
379
+
380
+ const buildOutput = await build(buildConfig)
381
+
382
+ if (!('output' in buildOutput)) {
383
+ throw `❌`
384
+ }
385
+
386
+ let appCode = buildOutput.output
387
+ // entry last
388
+ .sort((a, b) => (a['isEntry'] ? 1 : -1))
389
+ .map((outputModule) => {
390
+ if (outputModule.type == 'chunk') {
391
+ const importsMap = {}
392
+ for (const imp of outputModule.imports) {
393
+ const relativePath = relative(dirname(outputModule.fileName), imp)
394
+ importsMap[relativePath[0] === '.' ? relativePath : './' + relativePath] = imp
395
+ }
396
+
397
+ if (outputModule.isEntry) {
398
+ entryRoot = dirname(outputModule.fileName)
399
+ }
400
+
401
+ return `
402
+ ___modules___["${outputModule.fileName}"] = ((exports, module) => {
403
+ const require = createRequire(${JSON.stringify(importsMap, null, 2)})
404
+
405
+ ${outputModule.code}
406
+ })
407
+
408
+ ${
409
+ outputModule.isEntry
410
+ ? `
411
+ // run entry
412
+ const __require = createRequire({})
413
+ __require("react-native")
414
+ __require("${outputModule.fileName}")
415
+ `
416
+ : ''
417
+ }
418
+ `
419
+ }
420
+ })
421
+ .join('\n')
422
+
423
+ if (!appCode) {
424
+ throw `❌`
425
+ }
426
+
427
+ appCode = appCode
428
+ // this can be done in the individual file transform
429
+ .replaceAll('undefined.accept(() => {})', '')
430
+ .replaceAll('undefined.accept(function() {});', '') // swc
431
+
432
+ const out = (await readFile(templateFile, 'utf-8')) + appCode
433
+
434
+ done(out)
435
+ isBuilding = null
436
+
437
+ return out
438
+ }
439
+ }
440
+
441
+ function getIndexJsonReponse({ port, root }: { port: number | string; root }) {
442
+ return {
443
+ name: 'myapp',
444
+ slug: 'myapp',
445
+ scheme: 'myapp',
446
+ version: '1.0.0',
447
+ jsEngine: 'jsc',
448
+ orientation: 'portrait',
449
+ icon: './assets/icon.png',
450
+ userInterfaceStyle: 'light',
451
+ splash: {
452
+ image: './assets/splash.png',
453
+ resizeMode: 'contain',
454
+ backgroundColor: '#ffffff',
455
+ imageUrl: 'http://127.0.0.1:8081/assets/./assets/splash.png',
456
+ },
457
+ updates: { fallbackToCacheTimeout: 0 },
458
+ assetBundlePatterns: ['**/*'],
459
+ ios: { supportsTablet: true, bundleIdentifier: 'com.natew.myapp' },
460
+ android: {
461
+ package: 'com.tamagui.myapp',
462
+ adaptiveIcon: {
463
+ foregroundImage: './assets/adaptive-icon.png',
464
+ backgroundColor: '#FFFFFF',
465
+ foregroundImageUrl: 'http://127.0.0.1:8081/assets/./assets/adaptive-icon.png',
466
+ },
467
+ },
468
+ web: { favicon: './assets/favicon.png' },
469
+ extra: { eas: { projectId: '061b4470-78c7-4d6a-b850-8167fb0a3434' } },
470
+ _internal: {
471
+ isDebug: false,
472
+ projectRoot: root,
473
+ dynamicConfigPath: null,
474
+ staticConfigPath: join(root, 'app.json'),
475
+ packageJsonPath: join(root, 'package.json'),
476
+ },
477
+ sdkVersion: '47.0.0',
478
+ platforms: ['ios', 'android', 'web'],
479
+ iconUrl: `http://127.0.0.1:${port}/assets/./assets/icon.png`,
480
+ debuggerHost: `127.0.0.1:${port}`,
481
+ logUrl: `http://127.0.0.1:${port}/logs`,
482
+ developer: { tool: 'expo-cli', projectRoot: root },
483
+ packagerOpts: { dev: true },
484
+ mainModuleName: 'index',
485
+ __flipperHack: 'React Native packager is running',
486
+ hostUri: `127.0.0.1:${port}`,
487
+ bundleUrl: `http://127.0.0.1:${port}/index.bundle?platform=ios&dev=true&hot=false&lazy=true`,
488
+ id: '@anonymous/myapp-473c4543-3c36-4786-9db1-c66a62ac9b78',
489
+ }
490
+ }
@@ -0,0 +1,112 @@
1
+ import path from 'node:path'
2
+
3
+ import type { HmrOptions, Plugin, ResolvedConfig, UserConfig } from 'vite'
4
+
5
+ const process_env_NODE_ENV_RE = /(\bglobal(This)?\.)?\bprocess\.env\.NODE_ENV\b/g
6
+
7
+ const isObject = (x: any): x is Object => x && typeof x === 'object'
8
+
9
+ /**
10
+ * some values used by the client needs to be dynamically injected by the server
11
+ * @server-only
12
+ */
13
+ export function clientInjectionsPlugin(config: ResolvedConfig): Plugin {
14
+ let injectConfigValues: (code: string) => string
15
+
16
+ return {
17
+ name: 'vite:client-inject',
18
+
19
+ async buildStart() {
20
+ const resolvedServerHostname = '127.0.0.1'
21
+ const resolvedServerPort = config.server!.port! || 5173
22
+ const devBase = config.base || '/'
23
+
24
+ const serverHost = `${resolvedServerHostname}:${resolvedServerPort}${devBase}`
25
+
26
+ let hmrConfig = config.server!.hmr
27
+ hmrConfig = isObject(hmrConfig) ? (hmrConfig as HmrOptions) : undefined
28
+
29
+ const host = hmrConfig?.host || null
30
+ const protocol = hmrConfig?.protocol || null
31
+ const timeout = hmrConfig?.timeout || 30000
32
+ const overlay = hmrConfig?.overlay !== false
33
+ const isHmrServerSpecified = !!hmrConfig?.server
34
+
35
+ // hmr.clientPort -> hmr.port
36
+ // -> (24678 if middleware mode and HMR server is not specified) -> new URL(import.meta.url).port
37
+ let port = hmrConfig?.clientPort || hmrConfig?.port || null
38
+ if (config.server.middlewareMode && !isHmrServerSpecified) {
39
+ port ||= 24678
40
+ }
41
+
42
+ let directTarget = hmrConfig?.host || resolvedServerHostname
43
+ directTarget += `:${hmrConfig?.port || resolvedServerPort}`
44
+ directTarget += devBase
45
+
46
+ let hmrBase = devBase
47
+ if (hmrConfig?.path) {
48
+ hmrBase = path.posix.join(hmrBase, hmrConfig.path)
49
+ }
50
+
51
+ const serializedDefines = serializeDefine(config.define || {})
52
+
53
+ const modeReplacement = escapeReplacement(config.mode!)
54
+ const baseReplacement = escapeReplacement(devBase)
55
+ const definesReplacement = () => serializedDefines
56
+ const serverHostReplacement = escapeReplacement(serverHost)
57
+ const hmrProtocolReplacement = escapeReplacement(protocol)
58
+ const hmrHostnameReplacement = escapeReplacement(host)
59
+ const hmrPortReplacement = escapeReplacement(port)
60
+ const hmrDirectTargetReplacement = escapeReplacement(directTarget)
61
+ const hmrBaseReplacement = escapeReplacement(hmrBase)
62
+ const hmrTimeoutReplacement = escapeReplacement(timeout)
63
+ const hmrEnableOverlayReplacement = escapeReplacement(overlay)
64
+
65
+ injectConfigValues = (code: string) => {
66
+ return code
67
+ .replace(`__MODE__`, modeReplacement)
68
+ .replace(/__BASE__/g, baseReplacement)
69
+ .replace(`__DEFINES__`, definesReplacement)
70
+ .replace(`__SERVER_HOST__`, serverHostReplacement)
71
+ .replace(`__HMR_PROTOCOL__`, hmrProtocolReplacement)
72
+ .replace(`__HMR_HOSTNAME__`, hmrHostnameReplacement)
73
+ .replace(`__HMR_PORT__`, hmrPortReplacement)
74
+ .replace(`__HMR_DIRECT_TARGET__`, hmrDirectTargetReplacement)
75
+ .replace(`__HMR_BASE__`, hmrBaseReplacement)
76
+ .replace(`__HMR_TIMEOUT__`, hmrTimeoutReplacement)
77
+ .replace(`__HMR_ENABLE_OVERLAY__`, hmrEnableOverlayReplacement)
78
+ }
79
+ },
80
+
81
+ transform(code, id, options) {
82
+ if (id.includes('vite-native-client/dist/esm/client.')) {
83
+ return injectConfigValues(code)
84
+ } else if (!options?.ssr && code.includes('process.env.NODE_ENV')) {
85
+ // replace process.env.NODE_ENV instead of defining a global
86
+ // for it to avoid shimming a `process` object during dev,
87
+ // avoiding inconsistencies between dev and build
88
+ // return code.replace(
89
+ // process_env_NODE_ENV_RE,
90
+ // config.define?.['process.env.NODE_ENV'] ||
91
+ // JSON.stringify(process.env.NODE_ENV || config.mode)
92
+ // )
93
+ }
94
+ },
95
+ }
96
+ }
97
+
98
+ function escapeReplacement(value: string | number | boolean | null) {
99
+ const jsonValue = JSON.stringify(value)
100
+ return () => jsonValue
101
+ }
102
+
103
+ function serializeDefine(define: Record<string, any>): string {
104
+ let res = `{`
105
+ for (const key in define) {
106
+ const val = define[key]
107
+ res += `${JSON.stringify(key)}: ${
108
+ typeof val === 'string' ? `(${val})` : JSON.stringify(val)
109
+ }, `
110
+ }
111
+ return res + `}`
112
+ }