vxrn 0.1.28 → 0.1.30

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