vxrn 0.1.20 → 0.1.21

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 (173) hide show
  1. package/dist/cjs/cli.js +77 -3
  2. package/dist/cjs/cli.js.map +2 -2
  3. package/dist/cjs/cli.native.js +268 -2
  4. package/dist/cjs/cli.native.js.map +2 -2
  5. package/dist/cjs/constants.js +21 -0
  6. package/dist/cjs/constants.js.map +6 -0
  7. package/dist/cjs/constants.native.js +26 -0
  8. package/dist/cjs/constants.native.js.map +6 -0
  9. package/dist/cjs/dispose.js +28 -0
  10. package/dist/cjs/dispose.js.map +6 -0
  11. package/dist/cjs/dispose.native.js +36 -0
  12. package/dist/cjs/dispose.native.js.map +6 -0
  13. package/dist/cjs/exports/build.js +145 -0
  14. package/dist/cjs/exports/build.js.map +6 -0
  15. package/dist/cjs/exports/build.native.js +409 -0
  16. package/dist/cjs/exports/build.native.js.map +6 -0
  17. package/dist/cjs/exports/checkPatches.js +62 -0
  18. package/dist/cjs/exports/checkPatches.js.map +6 -0
  19. package/dist/cjs/exports/checkPatches.native.js +289 -0
  20. package/dist/cjs/exports/checkPatches.native.js.map +6 -0
  21. package/dist/cjs/exports/dev.js +568 -0
  22. package/dist/cjs/exports/dev.js.map +6 -0
  23. package/dist/cjs/exports/dev.native.js +1111 -0
  24. package/dist/cjs/exports/dev.native.js.map +6 -0
  25. package/dist/cjs/exports/serve.js +55 -0
  26. package/dist/cjs/exports/serve.js.map +6 -0
  27. package/dist/cjs/exports/serve.native.js +236 -0
  28. package/dist/cjs/exports/serve.native.js.map +6 -0
  29. package/dist/cjs/index.js +2 -3
  30. package/dist/cjs/index.js.map +1 -1
  31. package/dist/cjs/index.native.js +3 -5
  32. package/dist/cjs/index.native.js.map +1 -1
  33. package/dist/cjs/plugins/clientInjectPlugin.js +66 -0
  34. package/dist/cjs/plugins/clientInjectPlugin.js.map +6 -0
  35. package/dist/cjs/plugins/clientInjectPlugin.native.js +190 -0
  36. package/dist/cjs/plugins/clientInjectPlugin.native.js.map +6 -0
  37. package/dist/cjs/plugins/reactNativeCommonJsPlugin.js +89 -0
  38. package/dist/cjs/plugins/reactNativeCommonJsPlugin.js.map +6 -0
  39. package/dist/cjs/plugins/reactNativeCommonJsPlugin.native.js +346 -0
  40. package/dist/cjs/plugins/reactNativeCommonJsPlugin.native.js.map +6 -0
  41. package/dist/cjs/utils/checkPatches.js +62 -0
  42. package/dist/cjs/utils/checkPatches.js.map +6 -0
  43. package/dist/cjs/utils/checkPatches.native.js +289 -0
  44. package/dist/cjs/utils/checkPatches.native.js.map +6 -0
  45. package/dist/cjs/utils/dispose.js +28 -0
  46. package/dist/cjs/utils/dispose.js.map +6 -0
  47. package/dist/cjs/utils/dispose.native.js +36 -0
  48. package/dist/cjs/utils/dispose.native.js.map +6 -0
  49. package/dist/cjs/utils/getBaseViteConfig.js +2 -2
  50. package/dist/cjs/utils/getBaseViteConfig.js.map +1 -1
  51. package/dist/cjs/utils/getBaseViteConfig.native.js +2 -2
  52. package/dist/cjs/utils/getBaseViteConfig.native.js.map +1 -1
  53. package/dist/cjs/utils/patches.js +62 -0
  54. package/dist/cjs/utils/patches.js.map +6 -0
  55. package/dist/cjs/utils/patches.native.js +289 -0
  56. package/dist/cjs/utils/patches.native.js.map +6 -0
  57. package/dist/cjs/utils/prerender.js +1 -0
  58. package/dist/cjs/utils/prerender.js.map +6 -0
  59. package/dist/cjs/utils/prerender.native.js +2 -0
  60. package/dist/cjs/utils/prerender.native.js.map +6 -0
  61. package/dist/cjs/vendor/createExpoServer.js +34 -0
  62. package/dist/cjs/vendor/createExpoServer.js.map +6 -0
  63. package/dist/cjs/vendor/createExpoServer.native.js +42 -0
  64. package/dist/cjs/vendor/createExpoServer.native.js.map +6 -0
  65. package/dist/esm/cli.js +58 -3
  66. package/dist/esm/cli.js.map +2 -2
  67. package/dist/esm/cli.mjs +81 -9
  68. package/dist/esm/cli.native.js +249 -3
  69. package/dist/esm/cli.native.js.map +2 -2
  70. package/dist/esm/constants.js +5 -0
  71. package/dist/esm/constants.js.map +6 -0
  72. package/dist/esm/constants.mjs +2 -0
  73. package/dist/esm/constants.native.js +5 -0
  74. package/dist/esm/constants.native.js.map +6 -0
  75. package/dist/esm/dispose.js +12 -0
  76. package/dist/esm/dispose.js.map +6 -0
  77. package/dist/esm/dispose.mjs +8 -0
  78. package/dist/esm/dispose.native.js +14 -0
  79. package/dist/esm/dispose.native.js.map +6 -0
  80. package/dist/esm/exports/build.js +128 -0
  81. package/dist/esm/exports/build.js.map +6 -0
  82. package/dist/esm/exports/build.mjs +119 -0
  83. package/dist/esm/exports/build.native.js +385 -0
  84. package/dist/esm/exports/build.native.js.map +6 -0
  85. package/dist/esm/exports/checkPatches.js +40 -0
  86. package/dist/esm/exports/checkPatches.js.map +6 -0
  87. package/dist/esm/exports/checkPatches.mjs +31 -0
  88. package/dist/esm/exports/checkPatches.native.js +262 -0
  89. package/dist/esm/exports/checkPatches.native.js.map +6 -0
  90. package/dist/esm/exports/dev.js +581 -0
  91. package/dist/esm/exports/dev.js.map +6 -0
  92. package/dist/esm/exports/dev.mjs +543 -0
  93. package/dist/esm/exports/dev.native.js +1102 -0
  94. package/dist/esm/exports/dev.native.js.map +6 -0
  95. package/dist/esm/exports/serve.js +33 -0
  96. package/dist/esm/exports/serve.js.map +6 -0
  97. package/dist/esm/exports/serve.mjs +38 -0
  98. package/dist/esm/exports/serve.native.js +209 -0
  99. package/dist/esm/exports/serve.native.js.map +6 -0
  100. package/dist/esm/index.js +3 -5
  101. package/dist/esm/index.js.map +1 -1
  102. package/dist/esm/index.mjs +3 -4
  103. package/dist/esm/index.native.js +3 -5
  104. package/dist/esm/index.native.js.map +2 -2
  105. package/dist/esm/plugins/clientInjectPlugin.js +42 -0
  106. package/dist/esm/plugins/clientInjectPlugin.js.map +6 -0
  107. package/dist/esm/plugins/clientInjectPlugin.mjs +56 -0
  108. package/dist/esm/plugins/clientInjectPlugin.native.js +161 -0
  109. package/dist/esm/plugins/clientInjectPlugin.native.js.map +6 -0
  110. package/dist/esm/plugins/reactNativeCommonJsPlugin.js +75 -0
  111. package/dist/esm/plugins/reactNativeCommonJsPlugin.js.map +6 -0
  112. package/dist/esm/plugins/reactNativeCommonJsPlugin.mjs +55 -0
  113. package/dist/esm/plugins/reactNativeCommonJsPlugin.native.js +327 -0
  114. package/dist/esm/plugins/reactNativeCommonJsPlugin.native.js.map +6 -0
  115. package/dist/esm/utils/checkPatches.js +40 -0
  116. package/dist/esm/utils/checkPatches.js.map +6 -0
  117. package/dist/esm/utils/checkPatches.mjs +31 -0
  118. package/dist/esm/utils/checkPatches.native.js +262 -0
  119. package/dist/esm/utils/checkPatches.native.js.map +6 -0
  120. package/dist/esm/utils/dispose.js +12 -0
  121. package/dist/esm/utils/dispose.js.map +6 -0
  122. package/dist/esm/utils/dispose.mjs +8 -0
  123. package/dist/esm/utils/dispose.native.js +14 -0
  124. package/dist/esm/utils/dispose.native.js.map +6 -0
  125. package/dist/esm/utils/getBaseViteConfig.js +1 -1
  126. package/dist/esm/utils/getBaseViteConfig.mjs +1 -1
  127. package/dist/esm/utils/getBaseViteConfig.native.js +1 -1
  128. package/dist/esm/utils/patches.js +40 -0
  129. package/dist/esm/utils/patches.js.map +6 -0
  130. package/dist/esm/utils/patches.mjs +31 -0
  131. package/dist/esm/utils/patches.native.js +262 -0
  132. package/dist/esm/utils/patches.native.js.map +6 -0
  133. package/dist/esm/utils/prerender.js +1 -0
  134. package/dist/esm/utils/prerender.js.map +6 -0
  135. package/dist/esm/utils/prerender.mjs +0 -0
  136. package/dist/esm/utils/prerender.native.js +1 -0
  137. package/dist/esm/utils/prerender.native.js.map +6 -0
  138. package/dist/esm/vendor/createExpoServer.js +20 -0
  139. package/dist/esm/vendor/createExpoServer.js.map +6 -0
  140. package/dist/esm/vendor/createExpoServer.mjs +17 -0
  141. package/dist/esm/vendor/createExpoServer.native.js +22 -0
  142. package/dist/esm/vendor/createExpoServer.native.js.map +6 -0
  143. package/package.json +8 -7
  144. package/src/cli.ts +78 -2
  145. package/src/{build.ts → exports/build.ts} +5 -4
  146. package/src/{createDevServer.ts → exports/dev.ts} +13 -63
  147. package/src/exports/serve.ts +51 -0
  148. package/src/index.ts +3 -3
  149. package/src/{dev → plugins}/clientInjectPlugin.ts +1 -12
  150. package/src/{nativePlugin.ts → plugins/reactNativeCommonJsPlugin.ts} +3 -26
  151. package/src/utils/getBaseViteConfig.ts +1 -1
  152. package/src/utils/patches.ts +54 -0
  153. package/types/build.d.ts +4 -4
  154. package/types/constants.d.ts +2 -0
  155. package/types/dispose.d.ts +3 -0
  156. package/types/exports/build.d.ts +4 -0
  157. package/types/exports/dev.d.ts +13 -0
  158. package/types/exports/serve.d.ts +3 -0
  159. package/types/index.d.ts +2 -3
  160. package/types/plugins/clientInjectPlugin.d.ts +7 -0
  161. package/types/plugins/reactNativeCommonJsPlugin.d.ts +7 -0
  162. package/types/utils/checkPatches.d.ts +3 -0
  163. package/types/utils/dispose.d.ts +3 -0
  164. package/types/utils/patches.d.ts +3 -0
  165. package/types/utils/prerender.d.ts +1 -0
  166. package/types/vendor/createExpoServer.d.ts +4 -0
  167. package/src/commands/cli-build.ts +0 -25
  168. package/src/commands/cli-dev.ts +0 -47
  169. package/src/commands/index.ts +0 -10
  170. package/src/dev/createDevServer.ts +0 -234
  171. /package/src/{utils/constants.ts → constants.ts} +0 -0
  172. /package/src/{utils.ts → utils/dispose.ts} +0 -0
  173. /package/src/{createExpoServer.ts → vendor/createExpoServer.ts} +0 -0
@@ -0,0 +1,568 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf, __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: !0 });
9
+ }, __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from == "object" || typeof from == "function")
11
+ for (let key of __getOwnPropNames(from))
12
+ !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
13
+ return to;
14
+ };
15
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
16
+ // If the importer is in node compatibility mode or this is not an ESM
17
+ // file that has been converted to a CommonJS file using a Babel-
18
+ // compatible transform (i.e. "__esModule" has not been set), then set
19
+ // "default" to the CommonJS "module.exports" for node compatibility.
20
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: !0 }) : target,
21
+ mod
22
+ )), __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
23
+ var dev_exports = {};
24
+ __export(dev_exports, {
25
+ bindKeypressInput: () => bindKeypressInput,
26
+ dev: () => dev,
27
+ resolveFile: () => resolveFile
28
+ });
29
+ module.exports = __toCommonJS(dev_exports);
30
+ var import_node = __toESM(require("crossws/adapters/node"), 1), import_h3 = require("h3"), import_h3_proxy = require("h3-proxy"), import_promises = require("node:fs/promises"), import_node_http = require("node:http"), import_node_path = require("node:path"), import_node_readline = __toESM(require("node:readline"), 1), import_ws = require("ws"), babel = __toESM(require("@babel/core"), 1), import_react_native_prebuilt = require("@vxrn/react-native-prebuilt"), import_vite_native_swc = __toESM(require("@vxrn/vite-native-swc"), 1), import_es_module_lexer = require("es-module-lexer"), import_fs_extra = __toESM(require("fs-extra"), 1), import_vite = require("vite"), import_vite_flow = __toESM(require("@vxrn/vite-flow"), 1), import_import_meta_resolve = require("import-meta-resolve"), import_clientBundleTreeShakePlugin = require("../plugins/clientBundleTreeShakePlugin"), import_clientInjectPlugin = require("../plugins/clientInjectPlugin"), import_reactNativeCommonJsPlugin = require("../plugins/reactNativeCommonJsPlugin"), import_getBaseViteConfig = require("../utils/getBaseViteConfig"), import_getOptionsFilled = require("../utils/getOptionsFilled"), import_getVitePath = require("../utils/getVitePath"), import_patches = require("../utils/patches"), import_createExpoServer = require("../vendor/createExpoServer");
31
+ const import_meta = {}, resolveFile = (path) => {
32
+ try {
33
+ return (0, import_import_meta_resolve.resolve)(path, import_meta.url).replace("file://", "");
34
+ } catch {
35
+ return require.resolve(path);
36
+ }
37
+ }, nativeExtensions = [
38
+ ".native.tsx",
39
+ ".native.jsx",
40
+ ".native.js",
41
+ ".tsx",
42
+ ".ts",
43
+ ".js",
44
+ ".css",
45
+ ".json"
46
+ ], extensions = [
47
+ ".web.tsx",
48
+ ".tsx",
49
+ ".web.ts",
50
+ ".ts",
51
+ ".web.jsx",
52
+ ".jsx",
53
+ ".web.js",
54
+ ".js",
55
+ ".css",
56
+ ".json"
57
+ ], { ensureDir, pathExists, pathExistsSync } = import_fs_extra.default, dev = async (optionsIn) => {
58
+ const options = await (0, import_getOptionsFilled.getOptionsFilled)(optionsIn), { host, port, root, cacheDir } = options;
59
+ bindKeypressInput();
60
+ let entryRoot = "";
61
+ (0, import_patches.checkPatches)(options).catch((err) => {
62
+ console.error(`
63
+ \u{1F97A} couldn't patch`, err);
64
+ }), await ensureDir(cacheDir);
65
+ const prebuilds = {
66
+ reactJSX: (0, import_node_path.join)(cacheDir, "react-jsx-runtime.js"),
67
+ react: (0, import_node_path.join)(cacheDir, "react.js"),
68
+ reactNative: (0, import_node_path.join)(cacheDir, "react-native.js")
69
+ };
70
+ await pathExists(prebuilds.reactNative) || (console.info("Pre-building react, react-native react/jsx-runtime (one time cost)..."), await Promise.all([
71
+ (0, import_react_native_prebuilt.buildReactNative)({
72
+ entryPoints: [resolveFile("react-native")],
73
+ outfile: prebuilds.reactNative
74
+ }),
75
+ (0, import_react_native_prebuilt.buildReact)({
76
+ entryPoints: [resolveFile("react")],
77
+ outfile: prebuilds.react
78
+ }),
79
+ (0, import_react_native_prebuilt.buildReactJSX)({
80
+ entryPoints: [resolveFile("react/jsx-dev-runtime")],
81
+ outfile: prebuilds.reactJSX
82
+ })
83
+ ]));
84
+ const viteFlow = options.flow ? (0, import_vite_flow.default)(options.flow) : null, templateFile = resolveFile("vxrn/react-native-template.js"), hotUpdatedCJSFiles = /* @__PURE__ */ new Map(), jsxRuntime = {
85
+ // alias: 'virtual:react-jsx',
86
+ alias: prebuilds.reactJSX,
87
+ contents: await (0, import_promises.readFile)(prebuilds.reactJSX, "utf-8")
88
+ }, virtualModules = {
89
+ "react-native": {
90
+ // alias: 'virtual:react-native',
91
+ alias: prebuilds.reactNative,
92
+ contents: await (0, import_promises.readFile)(prebuilds.reactNative, "utf-8")
93
+ },
94
+ react: {
95
+ // alias: 'virtual:react',
96
+ alias: prebuilds.react,
97
+ contents: await (0, import_promises.readFile)(prebuilds.react, "utf-8")
98
+ },
99
+ "react/jsx-runtime": jsxRuntime,
100
+ "react/jsx-dev-runtime": jsxRuntime
101
+ }, swapRnPlugin = {
102
+ name: "swap-react-native",
103
+ enforce: "pre",
104
+ resolveId(id, importer = "") {
105
+ if (id.startsWith("react-native/Libraries"))
106
+ return `virtual:rn-internals:${id}`;
107
+ if (id === "react-native-web")
108
+ return prebuilds.reactNative;
109
+ for (const targetId in virtualModules)
110
+ if (id === targetId || id.includes(`node_modules/${targetId}/`))
111
+ return virtualModules[targetId].alias;
112
+ if (id[0] === ".") {
113
+ const absolutePath = (0, import_node_path.resolve)((0, import_node_path.dirname)(importer), id), nativePath = absolutePath.replace(/(.m?js)/, ".native.js");
114
+ if (nativePath === id)
115
+ return;
116
+ try {
117
+ const directoryPath = absolutePath + "/index.native.js", directoryNonNativePath = absolutePath + "/index.js";
118
+ if (pathExistsSync(directoryPath))
119
+ return directoryPath;
120
+ if (pathExistsSync(directoryNonNativePath))
121
+ return directoryNonNativePath;
122
+ if (pathExistsSync(nativePath))
123
+ return nativePath;
124
+ } catch (err) {
125
+ console.warn("error probably fine", err);
126
+ }
127
+ }
128
+ },
129
+ load(id) {
130
+ if (id.startsWith("virtual:rn-internals"))
131
+ return `const ___val = __cachedModules["${id.replace("virtual:rn-internals:", "")}"]
132
+ const ___defaultVal = ___val ? ___val.default || ___val : ___val
133
+ export default ___defaultVal`;
134
+ for (const targetId in virtualModules) {
135
+ const info = virtualModules[targetId];
136
+ if (id === info.alias)
137
+ return info.contents;
138
+ }
139
+ }
140
+ }, depsToOptimize = ["react", "react-dom", "@react-native/normalize-color"], reactNativeHMRPlugin = {
141
+ name: "client-transform",
142
+ async handleHotUpdate({ read, modules, file }) {
143
+ try {
144
+ if (!isWithin(root, file))
145
+ return;
146
+ const [module2] = modules;
147
+ if (!module2)
148
+ return;
149
+ const id = module2?.url || file.replace(root, ""), code = await read();
150
+ if (code.startsWith("'use strict';") || !code)
151
+ return;
152
+ let source = code;
153
+ source = (await (0, import_vite_native_swc.transformForBuild)(id, source))?.code || "";
154
+ const importsMap = {}, [imports] = (0, import_es_module_lexer.parse)(source);
155
+ let accumulatedSliceOffset = 0;
156
+ for (const specifier of imports) {
157
+ const { n: importName, s: start } = specifier;
158
+ if (importName) {
159
+ const id2 = await (0, import_getVitePath.getVitePath)(entryRoot, file, importName);
160
+ if (!id2) {
161
+ console.warn("???");
162
+ continue;
163
+ }
164
+ importsMap[id2] = id2.replace(/^(\.\.\/)+/, "");
165
+ const len = importName.length, extraLen = id2.length - len;
166
+ source = source.slice(0, start + accumulatedSliceOffset) + id2 + source.slice(start + accumulatedSliceOffset + len), accumulatedSliceOffset += extraLen;
167
+ }
168
+ }
169
+ if (source = (await (0, import_vite_native_swc.swcTransform)(id, source, {
170
+ mode: "serve-cjs"
171
+ }))?.code || "", !source)
172
+ throw "\u274C no source";
173
+ importsMap.currentPath = id;
174
+ const hotUpdateSource = `exports = ((exports) => {
175
+ const require = createRequire(${JSON.stringify(importsMap, null, 2)})
176
+ ${source.replace("import.meta.hot.accept(() => {})", "").replaceAll(/import.meta.glob\(.*\)/gi, "globalThis['__importMetaGlobbed'] || {}")};
177
+ return exports })({})`;
178
+ process.env.DEBUG && console.info("Sending hot update", hotUpdateSource), hotUpdatedCJSFiles.set(id, hotUpdateSource);
179
+ } catch (err) {
180
+ console.error("Error processing hmr update:", err);
181
+ }
182
+ }
183
+ };
184
+ let serverConfig = (0, import_vite.mergeConfig)(
185
+ (0, import_getBaseViteConfig.getBaseViteConfig)({
186
+ mode: "development"
187
+ }),
188
+ {
189
+ root,
190
+ clearScreen: !1,
191
+ plugins: [
192
+ reactNativeHMRPlugin,
193
+ (0, import_clientBundleTreeShakePlugin.clientBundleTreeShakePlugin)({})
194
+ ],
195
+ optimizeDeps: {
196
+ include: depsToOptimize,
197
+ exclude: Object.values(virtualModules).map((v) => v.alias),
198
+ force: !0,
199
+ esbuildOptions: {
200
+ resolveExtensions: extensions
201
+ }
202
+ },
203
+ server: {
204
+ hmr: {
205
+ path: "/__vxrnhmr"
206
+ },
207
+ cors: !0,
208
+ host
209
+ }
210
+ }
211
+ );
212
+ options.webConfig && (serverConfig = (0, import_vite.mergeConfig)(serverConfig, options.webConfig));
213
+ const resolvedConfig = await (0, import_vite.resolveConfig)(serverConfig, "serve"), viteRNClientPlugin = (0, import_clientInjectPlugin.clientInjectionsPlugin)(resolvedConfig);
214
+ serverConfig = {
215
+ ...serverConfig,
216
+ plugins: [...serverConfig.plugins]
217
+ };
218
+ const viteServer = await (0, import_vite.createServer)(serverConfig);
219
+ viteServer.watcher.addListener("change", async (path) => {
220
+ const id = path.replace(process.cwd(), "");
221
+ if (!(!id.endsWith("tsx") && !id.endsWith("jsx")))
222
+ try {
223
+ viteServer.transformRequest(id);
224
+ } catch (err) {
225
+ console.info("err", err);
226
+ }
227
+ });
228
+ let isBuilding = null;
229
+ await viteServer.listen();
230
+ const vitePort = viteServer.config.server.port;
231
+ console.info("vite running on", vitePort);
232
+ const router = (0, import_h3.createRouter)(), app = (0, import_h3.createApp)({
233
+ onError: (error) => {
234
+ console.error(error);
235
+ },
236
+ onRequest: (event) => {
237
+ console.info(" \u2192", event.path);
238
+ }
239
+ });
240
+ (0, import_createExpoServer.createExpoServer)(root, app), router.get(
241
+ "/file",
242
+ (0, import_h3.defineEventHandler)((e) => {
243
+ const query = (0, import_h3.getQuery)(e);
244
+ if (typeof query.file == "string") {
245
+ const source = hotUpdatedCJSFiles.get(query.file);
246
+ return new Response(source, {
247
+ headers: {
248
+ "content-type": "text/javascript"
249
+ }
250
+ });
251
+ }
252
+ })
253
+ ), router.get(
254
+ "/index.bundle",
255
+ (0, import_h3.defineEventHandler)(async (e) => new Response(await getBundleCode(), {
256
+ headers: {
257
+ "content-type": "text/javascript"
258
+ }
259
+ }))
260
+ ), router.get(
261
+ "/status",
262
+ (0, import_h3.defineEventHandler)(() => "packager-status:running")
263
+ ), app.use(router), app.use(
264
+ (0, import_h3.defineEventHandler)(async ({ node: { req } }) => {
265
+ if (req.headers["user-agent"]?.match(/Expo|React/) && (req.url === "/" || req.url?.startsWith("/?platform=")))
266
+ return getIndexJsonResponse({ port, root });
267
+ })
268
+ );
269
+ const { handleUpgrade } = (0, import_node.default)(app.websocket);
270
+ if (vitePort) {
271
+ const clients = /* @__PURE__ */ new Set(), socket = new import_ws.WebSocket(`ws://localhost:${vitePort}/__vxrnhmr`, "vite-hmr");
272
+ console.info("connecting to vite..."), socket.on("open", () => {
273
+ console.info("...connected to vite!");
274
+ }), socket.on("message", (msg) => {
275
+ const message = msg.toString();
276
+ console.info(clients.size, "message", message);
277
+ for (const listener of [...clients])
278
+ listener.send(message);
279
+ }), socket.on("error", (err) => {
280
+ console.info("err", err);
281
+ }), app.use(
282
+ "/__vxrnhmr",
283
+ (0, import_h3.defineWebSocketHandler)({
284
+ open(peer) {
285
+ console.debug("[hmr:web] open", peer), clients.add(peer);
286
+ },
287
+ message(peer, message) {
288
+ socket.send(message.rawData);
289
+ },
290
+ close(peer, event) {
291
+ console.info("[hmr:web] close", peer, event), clients.delete(peer);
292
+ },
293
+ error(peer, error) {
294
+ console.error("[hmr:web] error", peer, error);
295
+ }
296
+ })
297
+ );
298
+ }
299
+ app.use(
300
+ "/__hmr",
301
+ (0, import_h3.defineWebSocketHandler)({
302
+ open(peer) {
303
+ console.debug("[hmr] open", peer);
304
+ },
305
+ message(peer, message) {
306
+ console.info("[hmr] message", peer, message), message.text().includes("ping") && peer.send("pong");
307
+ },
308
+ close(peer, event) {
309
+ console.info("[hmr] close", peer, event);
310
+ },
311
+ error(peer, error) {
312
+ console.error("[hmr] error", peer, error);
313
+ }
314
+ })
315
+ ), app.use(
316
+ "/__client",
317
+ (0, import_h3.defineWebSocketHandler)({
318
+ open(peer) {
319
+ console.info("[client] open", peer);
320
+ },
321
+ message(peer, messageRaw) {
322
+ const message = JSON.parse(messageRaw.text());
323
+ switch (message.type) {
324
+ case "client-log": {
325
+ console.info(`\u{1FAB5} [${message.level}]`, ...message.data);
326
+ return;
327
+ }
328
+ default:
329
+ console.warn("[client] Unknown message type", message);
330
+ }
331
+ },
332
+ close(peer, event) {
333
+ console.info("[client] close", peer, event);
334
+ },
335
+ error(peer, error) {
336
+ console.error("[client] error", peer, error);
337
+ }
338
+ })
339
+ );
340
+ const proxyEventHandler = (0, import_h3_proxy.createProxyEventHandler)({
341
+ target: `http://127.0.0.1:${vitePort}`,
342
+ enableLogger: !!process.env.DEBUG
343
+ });
344
+ app.use((0, import_h3.eventHandler)(proxyEventHandler));
345
+ const server = (0, import_node_http.createServer)((0, import_h3.toNodeListener)(app));
346
+ return server.on("upgrade", handleUpgrade), {
347
+ server,
348
+ viteServer,
349
+ async start() {
350
+ return server.listen(port), console.info(`Server running on http://localhost:${port}`), {
351
+ closePromise: new Promise((res) => viteServer.httpServer?.on("close", res))
352
+ };
353
+ },
354
+ stop: async () => {
355
+ await Promise.all([server.close(), viteServer.close()]);
356
+ }
357
+ };
358
+ async function getBundleCode() {
359
+ if (process.env.LOAD_TMP_BUNDLE) {
360
+ const tmpBundle = (0, import_node_path.join)(process.cwd(), "bundle.tmp.js");
361
+ if (await pathExists(tmpBundle))
362
+ return console.info("\u26A0\uFE0F\u26A0\uFE0F\u26A0\uFE0F\u26A0\uFE0F\u26A0\uFE0F\u26A0\uFE0F\u26A0\uFE0F\u26A0\uFE0F\u26A0\uFE0F\u26A0\uFE0F\u26A0\uFE0F\u26A0\uFE0F returning temp bundle \u26A0\uFE0F\u26A0\uFE0F\u26A0\uFE0F\u26A0\uFE0F\u26A0\uFE0F\u26A0\uFE0F\u26A0\uFE0F\u26A0\uFE0F\u26A0\uFE0F\u26A0\uFE0F", tmpBundle), await (0, import_promises.readFile)(tmpBundle, "utf-8");
363
+ }
364
+ if (isBuilding)
365
+ return await isBuilding;
366
+ let done;
367
+ isBuilding = new Promise((res) => {
368
+ done = res;
369
+ });
370
+ async function babelReanimated(input, filename) {
371
+ return await new Promise((res, rej) => {
372
+ babel.transform(
373
+ input,
374
+ {
375
+ plugins: ["react-native-reanimated/plugin"],
376
+ filename
377
+ },
378
+ (err, result) => {
379
+ (!result || err) && rej(err || "no res"), res(result.code);
380
+ }
381
+ );
382
+ });
383
+ }
384
+ let buildConfig = {
385
+ plugins: [
386
+ viteFlow,
387
+ swapRnPlugin,
388
+ {
389
+ name: "reanimated",
390
+ async transform(code, id) {
391
+ if (code.includes("worklet"))
392
+ return await babelReanimated(code, id);
393
+ }
394
+ },
395
+ (0, import_clientBundleTreeShakePlugin.clientBundleTreeShakePlugin)({}),
396
+ viteRNClientPlugin,
397
+ (0, import_reactNativeCommonJsPlugin.reactNativeCommonJsPlugin)({
398
+ root,
399
+ port,
400
+ mode: "build"
401
+ }),
402
+ (0, import_vite_native_swc.default)({
403
+ tsDecorators: !0,
404
+ mode: "build"
405
+ }),
406
+ {
407
+ name: "treat-js-files-as-jsx",
408
+ async transform(code, id) {
409
+ return id.match(/expo-status-bar/) ? (0, import_vite.transformWithEsbuild)(code, id, {
410
+ loader: "jsx",
411
+ jsx: "automatic"
412
+ }) : null;
413
+ }
414
+ }
415
+ ].filter(Boolean),
416
+ appType: "custom",
417
+ root,
418
+ clearScreen: !1,
419
+ optimizeDeps: {
420
+ include: depsToOptimize,
421
+ esbuildOptions: {
422
+ jsx: "automatic"
423
+ }
424
+ },
425
+ resolve: {
426
+ extensions: nativeExtensions
427
+ },
428
+ mode: "development",
429
+ define: {
430
+ "process.env.NODE_ENV": '"development"'
431
+ },
432
+ build: {
433
+ ssr: !1,
434
+ minify: !1,
435
+ commonjsOptions: {
436
+ transformMixedEsModules: !0
437
+ },
438
+ rollupOptions: {
439
+ treeshake: !1,
440
+ preserveEntrySignatures: "strict",
441
+ output: {
442
+ preserveModules: !0,
443
+ format: "cjs"
444
+ }
445
+ }
446
+ }
447
+ };
448
+ options.buildConfig && (buildConfig = (0, import_vite.mergeConfig)(buildConfig, options.buildConfig)), await (0, import_vite.resolveConfig)(buildConfig, "build");
449
+ const buildOutput = await (0, import_vite.build)(buildConfig);
450
+ if (!("output" in buildOutput))
451
+ throw "\u274C";
452
+ let appCode = buildOutput.output.sort((a, b) => a.isEntry ? 1 : -1).map((outputModule) => {
453
+ if (outputModule.type == "chunk") {
454
+ const importsMap = {
455
+ currentPath: outputModule.fileName
456
+ };
457
+ for (const imp of outputModule.imports) {
458
+ const relativePath = (0, import_node_path.relative)((0, import_node_path.dirname)(outputModule.fileName), imp);
459
+ importsMap[relativePath[0] === "." ? relativePath : "./" + relativePath] = imp;
460
+ }
461
+ return outputModule.isEntry && (entryRoot = (0, import_node_path.dirname)(outputModule.fileName)), `
462
+ ___modules___["${outputModule.fileName}"] = ((exports, module) => {
463
+ const require = createRequire(${JSON.stringify(importsMap, null, 2)})
464
+
465
+ ${outputModule.code}
466
+ })
467
+
468
+ ${outputModule.isEntry ? `
469
+ // run entry
470
+ const __require = createRequire({})
471
+ __require("react-native-web")
472
+ __require("${outputModule.fileName}")
473
+ ` : ""}
474
+ `;
475
+ }
476
+ }).join(`
477
+ `);
478
+ if (!appCode)
479
+ throw "\u274C";
480
+ appCode = appCode.replaceAll("undefined.accept(() => {})", "").replaceAll("undefined.accept(function() {});", "").replaceAll("(void 0).accept(() => {})", "").replaceAll("(void 0).accept(function() {});", "").replaceAll('dist/esm/index.mjs"', 'dist/esm/index.js"');
481
+ const appRootParent = (0, import_node_path.join)(root, "..", ".."), out = (await (0, import_promises.readFile)(templateFile, "utf-8")).replace("_virtual/virtual_react-native.js", (0, import_node_path.relative)(appRootParent, prebuilds.reactNative)).replace("_virtual/virtual_react.js", (0, import_node_path.relative)(appRootParent, prebuilds.react)).replaceAll("_virtual/virtual_react-jsx.js", (0, import_node_path.relative)(appRootParent, prebuilds.reactJSX)) + appCode;
482
+ return done(out), isBuilding = null, out;
483
+ }
484
+ };
485
+ function getIndexJsonResponse({ port, root }) {
486
+ return {
487
+ name: "myapp",
488
+ slug: "myapp",
489
+ scheme: "myapp",
490
+ version: "1.0.0",
491
+ jsEngine: "jsc",
492
+ orientation: "portrait",
493
+ icon: "./assets/icon.png",
494
+ userInterfaceStyle: "light",
495
+ splash: {
496
+ image: "./assets/splash.png",
497
+ resizeMode: "contain",
498
+ backgroundColor: "#ffffff",
499
+ imageUrl: "http://127.0.0.1:8081/assets/./assets/splash.png"
500
+ },
501
+ updates: { fallbackToCacheTimeout: 0 },
502
+ assetBundlePatterns: ["**/*"],
503
+ ios: { supportsTablet: !0, bundleIdentifier: "com.natew.myapp" },
504
+ android: {
505
+ package: "com.tamagui.myapp",
506
+ adaptiveIcon: {
507
+ foregroundImage: "./assets/adaptive-icon.png",
508
+ backgroundColor: "#FFFFFF",
509
+ foregroundImageUrl: "http://127.0.0.1:8081/assets/./assets/adaptive-icon.png"
510
+ }
511
+ },
512
+ web: { favicon: "./assets/favicon.png" },
513
+ extra: { eas: { projectId: "061b4470-78c7-4d6a-b850-8167fb0a3434" } },
514
+ _internal: {
515
+ isDebug: !1,
516
+ projectRoot: root,
517
+ dynamicConfigPath: null,
518
+ staticConfigPath: (0, import_node_path.join)(root, "app.json"),
519
+ packageJsonPath: (0, import_node_path.join)(root, "package.json")
520
+ },
521
+ sdkVersion: "50.0.0",
522
+ platforms: ["ios", "android", "web"],
523
+ iconUrl: `http://127.0.0.1:${port}/assets/./assets/icon.png`,
524
+ debuggerHost: `127.0.0.1:${port}`,
525
+ logUrl: `http://127.0.0.1:${port}/logs`,
526
+ developer: { tool: "expo-cli", projectRoot: root },
527
+ packagerOpts: { dev: !0 },
528
+ mainModuleName: "index",
529
+ __flipperHack: "React Native packager is running",
530
+ hostUri: `127.0.0.1:${port}`,
531
+ bundleUrl: `http://127.0.0.1:${port}/index.bundle?platform=ios&dev=true&hot=false&lazy=true`,
532
+ id: "@anonymous/myapp-473c4543-3c36-4786-9db1-c66a62ac9b78"
533
+ };
534
+ }
535
+ function bindKeypressInput() {
536
+ if (!process.stdin.setRawMode) {
537
+ console.warn({
538
+ msg: "Interactive mode is not supported in this environment"
539
+ });
540
+ return;
541
+ }
542
+ import_node_readline.default.emitKeypressEvents(process.stdin), process.stdin.setRawMode(!0), process.stdin.on("keypress", (_key, data) => {
543
+ const { ctrl, name } = data;
544
+ if (ctrl === !0)
545
+ switch (name) {
546
+ case "c":
547
+ process.exit();
548
+ case "z":
549
+ process.emit("SIGTSTP", "SIGTSTP");
550
+ break;
551
+ }
552
+ else
553
+ switch (name) {
554
+ case "r":
555
+ break;
556
+ case "d":
557
+ break;
558
+ case "c":
559
+ process.stdout.write("\x1B[2J\x1B[0;0H");
560
+ break;
561
+ }
562
+ });
563
+ }
564
+ function isWithin(outer, inner) {
565
+ const rel = (0, import_node_path.relative)(outer, inner);
566
+ return !rel.startsWith("../") && rel !== "..";
567
+ }
568
+ //# sourceMappingURL=dev.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/exports/dev.ts"],
4
+ "mappings": "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",
5
+ "names": ["importMetaResolve", "FSExtra", "createViteFlow", "module", "id", "wsAdapter", "nodeCreateServer", "viteReactPlugin", "readline"]
6
+ }