vxrn 1.2.57 → 1.2.60

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 (57) hide show
  1. package/dist/config/getOptimizeDeps.js +3 -1
  2. package/dist/config/getOptimizeDeps.js.map +1 -1
  3. package/dist/config/getOptimizeDeps.mjs +5 -1
  4. package/dist/config/getOptimizeDeps.mjs.map +1 -1
  5. package/dist/config/getOptimizeDeps.native.js +5 -1
  6. package/dist/config/getOptimizeDeps.native.js.map +1 -1
  7. package/dist/config/getOptionsFilled.native.js +1 -1
  8. package/dist/config/getOptionsFilled.native.js.map +1 -1
  9. package/dist/config/mergeUserConfig.native.js +1 -1
  10. package/dist/config/mergeUserConfig.native.js.map +1 -1
  11. package/dist/exports/build.js +1 -1
  12. package/dist/exports/build.js.map +1 -1
  13. package/dist/exports/build.mjs +3 -1
  14. package/dist/exports/build.mjs.map +1 -1
  15. package/dist/exports/build.native.js +3 -1
  16. package/dist/exports/build.native.js.map +1 -1
  17. package/dist/exports/dev.native.js +1 -2
  18. package/dist/exports/dev.native.js.map +1 -1
  19. package/dist/utils/filterViteServerResolvedUrls.js +10 -3
  20. package/dist/utils/filterViteServerResolvedUrls.js.map +1 -1
  21. package/dist/utils/filterViteServerResolvedUrls.mjs +7 -3
  22. package/dist/utils/filterViteServerResolvedUrls.mjs.map +1 -1
  23. package/dist/utils/filterViteServerResolvedUrls.native.js +41 -4
  24. package/dist/utils/filterViteServerResolvedUrls.native.js.map +1 -1
  25. package/dist/utils/swapPrebuiltReactModules.js +66 -53
  26. package/dist/utils/swapPrebuiltReactModules.js.map +1 -1
  27. package/dist/utils/swapPrebuiltReactModules.mjs +63 -50
  28. package/dist/utils/swapPrebuiltReactModules.mjs.map +1 -1
  29. package/dist/utils/swapPrebuiltReactModules.native.js +19 -7
  30. package/dist/utils/swapPrebuiltReactModules.native.js.map +1 -1
  31. package/package.json +16 -17
  32. package/src/cli.ts +0 -0
  33. package/src/config/getOptimizeDeps.ts +2 -0
  34. package/src/exports/build.ts +1 -1
  35. package/src/index.ts +0 -0
  36. package/src/utils/filterViteServerResolvedUrls.ts +18 -3
  37. package/src/utils/swapPrebuiltReactModules.ts +103 -82
  38. package/types/config/getOptimizeDeps.d.ts +3 -0
  39. package/types/config/getOptimizeDeps.d.ts.map +1 -1
  40. package/types/exports/build.d.ts.map +1 -1
  41. package/types/utils/filterViteServerResolvedUrls.d.ts.map +1 -1
  42. package/types/utils/swapPrebuiltReactModules.d.ts.map +1 -1
  43. package/dist/stubs/config-default-stub.js +0 -7
  44. package/dist/stubs/config-default-stub.js.map +0 -6
  45. package/dist/stubs/config-default-stub.mjs +0 -4
  46. package/dist/stubs/config-default-stub.mjs.map +0 -1
  47. package/dist/stubs/config-default-stub.native.js +0 -6
  48. package/dist/stubs/config-default-stub.native.js.map +0 -1
  49. package/dist/stubs/moti-stub.js +0 -8
  50. package/dist/stubs/moti-stub.js.map +0 -6
  51. package/dist/stubs/moti-stub.mjs +0 -5
  52. package/dist/stubs/moti-stub.mjs.map +0 -1
  53. package/dist/stubs/moti-stub.native.js +0 -9
  54. package/dist/stubs/moti-stub.native.js.map +0 -1
  55. package/types/stubs/config-default-stub.d.ts.map +0 -1
  56. package/types/stubs/moti-stub.d.ts.map +0 -1
  57. /package/types/utils/{filterPluginsforNative.d.ts → filterPluginsForNative.d.ts} +0 -0
@@ -4,6 +4,7 @@ import FSExtra from "fs-extra";
4
4
  import { readFile } from "node:fs/promises";
5
5
  import { join } from "node:path";
6
6
  import { isNativeEnvironment } from "./environmentUtils";
7
+ let prebuildPromise = null;
7
8
  const getPrebuilds = (cacheDir, mode) => ({
8
9
  reactJSX: join(cacheDir, `react-jsx-runtime${mode === "prod" ? ".production" : ""}.js`),
9
10
  react: join(cacheDir, `react${mode === "prod" ? ".production" : ""}.js`),
@@ -17,66 +18,78 @@ const getPrebuilds = (cacheDir, mode) => ({
17
18
  )
18
19
  }), allExist = async (paths) => (await Promise.all(paths.map((p) => FSExtra.pathExists(p)))).every(Boolean);
19
20
  async function prebuildReactNativeModules(cacheDir, internal = { mode: "dev" }) {
20
- const prebuilds = getPrebuilds(cacheDir, internal.mode);
21
- if (internal.mode !== "prod" && // Do not use cached prebuilds while building for production, since the performance gain is little (build time is already slower anyway) and can avoid potential issues.
22
- await allExist(Object.values(prebuilds)))
21
+ if (prebuildPromise) {
22
+ await prebuildPromise;
23
23
  return;
24
- internal.mode !== "prod" ? console.info(`
24
+ }
25
+ const prebuilds = getPrebuilds(cacheDir, internal.mode);
26
+ let resolveLock;
27
+ prebuildPromise = new Promise((resolve) => {
28
+ resolveLock = resolve;
29
+ });
30
+ try {
31
+ if (internal.mode !== "prod" && // Do not use cached prebuilds while building for production, since the performance gain is little (build time is already slower anyway) and can avoid potential issues.
32
+ await allExist(Object.values(prebuilds)))
33
+ return;
34
+ internal.mode !== "prod" ? console.info(`
25
35
  \u2776 Pre-building react-native (one time cost)...
26
36
  `) : console.info(`
27
37
  \u2776 Pre-building react-native for production...
28
38
  `);
29
- const buildOptions = internal.mode === "prod" ? {
30
- define: {
31
- __DEV__: "false",
32
- "process.env.NODE_ENV": '"production"'
33
- }
34
- } : {};
35
- let enableExperimentalReactNativeWithReact19Support = !1;
36
- const reactPackageJsonPath = resolvePath("react/package.json"), reactPackageJsonContents = await readFile(reactPackageJsonPath, "utf8"), reactPackageJson = JSON.parse(reactPackageJsonContents), reactNativePackageJsonPath = resolvePath("react/package.json"), reactNativePackageJsonContents = await readFile(
37
- reactNativePackageJsonPath,
38
- "utf8"
39
- ), reactNativePackageJson = JSON.parse(reactNativePackageJsonContents), reactVersion = reactPackageJson?.version, reactNativeVersion = reactNativePackageJson?.version;
40
- reactVersion?.startsWith("19") && Number.parseFloat(reactNativeVersion) < 0.78 && (console.info(
41
- `\u{1F9EA} React ${reactVersion} detected. Enabling experimental React 19 support for React Native.`
42
- ), enableExperimentalReactNativeWithReact19Support = !0), await Promise.all([
43
- buildReactNative(
44
- {
45
- entryPoints: [resolvePath("react-native")],
46
- outfile: prebuilds.reactNativeIos,
39
+ const buildOptions = internal.mode === "prod" ? {
40
+ define: {
41
+ __DEV__: "false",
42
+ "process.env.NODE_ENV": '"production"'
43
+ }
44
+ } : {};
45
+ let enableExperimentalReactNativeWithReact19Support = !1;
46
+ const reactPackageJsonPath = resolvePath("react/package.json"), reactPackageJsonContents = await readFile(reactPackageJsonPath, "utf8"), reactPackageJson = JSON.parse(reactPackageJsonContents), reactNativePackageJsonPath = resolvePath("react/package.json"), reactNativePackageJsonContents = await readFile(
47
+ reactNativePackageJsonPath,
48
+ "utf8"
49
+ ), reactNativePackageJson = JSON.parse(reactNativePackageJsonContents), reactVersion = reactPackageJson?.version, reactNativeVersion = reactNativePackageJson?.version;
50
+ reactVersion?.startsWith("19") && Number.parseFloat(reactNativeVersion) < 0.78 && (console.info(
51
+ `\u{1F9EA} React ${reactVersion} detected. Enabling experimental React 19 support for React Native.`
52
+ ), enableExperimentalReactNativeWithReact19Support = !0), await Promise.all([
53
+ buildReactNative(
54
+ {
55
+ entryPoints: [resolvePath("react-native")],
56
+ outfile: prebuilds.reactNativeIos,
57
+ ...buildOptions
58
+ },
59
+ { platform: "ios", enableExperimentalReactNativeWithReact19Support }
60
+ ).catch((err) => {
61
+ throw console.error("Error pre-building react-native for iOS"), err;
62
+ }),
63
+ buildReactNative(
64
+ {
65
+ entryPoints: [resolvePath("react-native")],
66
+ outfile: prebuilds.reactNativeAndroid,
67
+ ...buildOptions
68
+ },
69
+ { platform: "android", enableExperimentalReactNativeWithReact19Support }
70
+ ).catch((err) => {
71
+ throw console.error("Error pre-building react-native for Android"), err;
72
+ }),
73
+ buildReact({
74
+ entryPoints: [resolvePath("react")],
75
+ outfile: prebuilds.react,
47
76
  ...buildOptions
48
- },
49
- { platform: "ios", enableExperimentalReactNativeWithReact19Support }
50
- ).catch((err) => {
51
- throw console.error("Error pre-building react-native for iOS"), err;
52
- }),
53
- buildReactNative(
54
- {
55
- entryPoints: [resolvePath("react-native")],
56
- outfile: prebuilds.reactNativeAndroid,
77
+ }).catch((err) => {
78
+ throw console.error("Error pre-building react"), err;
79
+ }),
80
+ buildReactJSX({
81
+ entryPoints: [
82
+ internal.mode === "dev" ? resolvePath("react/jsx-dev-runtime") : resolvePath("react/jsx-runtime")
83
+ ],
84
+ outfile: prebuilds.reactJSX,
57
85
  ...buildOptions
58
- },
59
- { platform: "android", enableExperimentalReactNativeWithReact19Support }
60
- ).catch((err) => {
61
- throw console.error("Error pre-building react-native for Android"), err;
62
- }),
63
- buildReact({
64
- entryPoints: [resolvePath("react")],
65
- outfile: prebuilds.react,
66
- ...buildOptions
67
- }).catch((err) => {
68
- throw console.error("Error pre-building react"), err;
69
- }),
70
- buildReactJSX({
71
- entryPoints: [
72
- internal.mode === "dev" ? resolvePath("react/jsx-dev-runtime") : resolvePath("react/jsx-runtime")
73
- ],
74
- outfile: prebuilds.reactJSX,
75
- ...buildOptions
76
- }).catch((err) => {
77
- throw console.error("Error pre-building react/jsx-runtime"), err;
78
- })
79
- ]);
86
+ }).catch((err) => {
87
+ throw console.error("Error pre-building react/jsx-runtime"), err;
88
+ })
89
+ ]);
90
+ } finally {
91
+ resolveLock(), prebuildPromise = null;
92
+ }
80
93
  }
81
94
  async function swapPrebuiltReactModules(cacheDir, internal) {
82
95
  let prebuilds = getPrebuilds(cacheDir, internal.mode), cached = null;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/utils/swapPrebuiltReactModules.ts"],
4
- "mappings": "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",
4
+ "mappings": "AAAA,SAAS,YAAY,eAAe,wBAAwB;AAC5D,SAAS,mBAAmB;AAC5B,OAAO,aAAa;AACpB,SAAS,gBAAgB;AACzB,SAAS,YAAY;AAErB,SAAS,2BAA2B;AAGpC,IAAI,kBAAwC;AAK5C,MAAM,eAAe,CAAC,UAAkB,UAAU;AAAA,EAChD,UAAU,KAAK,UAAU,oBAAoB,SAAS,SAAS,gBAAgB,EAAE,KAAK;AAAA,EACtF,OAAO,KAAK,UAAU,QAAQ,SAAS,SAAS,gBAAgB,EAAE,KAAK;AAAA,EACvE,gBAAgB;AAAA,IACd;AAAA,IACA,eAAe,SAAS,SAAS,gBAAgB,EAAE;AAAA,EACrD;AAAA,EACA,oBAAoB;AAAA,IAClB;AAAA,IACA,eAAe,SAAS,SAAS,gBAAgB,EAAE;AAAA,EACrD;AACF,IAEM,WAAW,OAAO,WACd,MAAM,QAAQ,IAAI,MAAM,IAAI,CAAC,MAAM,QAAQ,WAAW,CAAC,CAAC,CAAC,GAAG,MAAM,OAAO;AAGnF,eAAsB,2BACpB,UACA,WAAsC,EAAE,MAAM,MAAM,GACpD;AAEA,MAAI,iBAAiB;AACnB,UAAM;AACN;AAAA,EACF;AAEA,QAAM,YAAY,aAAa,UAAU,SAAS,IAAI;AAGtD,MAAI;AACJ,oBAAkB,IAAI,QAAQ,CAAC,YAAY;AACzC,kBAAc;AAAA,EAChB,CAAC;AAED,MAAI;AACF,QACE,SAAS,SAAS;AAAA,IACjB,MAAM,SAAS,OAAO,OAAO,SAAS,CAAC;AAExC;AAGF,IAAI,SAAS,SAAS,SACpB,QAAQ,KAAK;AAAA;AAAA,CAAqD,IAElE,QAAQ,KAAK;AAAA;AAAA,CAAoD;AAInE,UAAM,eACJ,SAAS,SAAS,SACd;AAAA,MACE,QAAQ;AAAA,QACN,SAAS;AAAA,QACT,wBAAwB;AAAA,MAC1B;AAAA,IACF,IACA,CAAC;AAEP,QAAI,kDAAkD;AACtD,UAAM,uBAAuB,YAAY,oBAAoB,GACvD,2BAA2B,MAAM,SAAS,sBAAsB,MAAM,GACtE,mBAAmB,KAAK,MAAM,wBAAwB,GACtD,6BAA6B,YAAY,oBAAoB,GAC7D,iCAAiC,MAAM;AAAA,MAC3C;AAAA,MACA;AAAA,IACF,GACM,yBAAyB,KAAK,MAAM,8BAA8B,GAElE,eAAe,kBAAkB,SACjC,qBAAqB,wBAAwB;AACnD,IAAI,cAAc,WAAW,IAAI,KAAK,OAAO,WAAW,kBAAkB,IAAI,SAC5E,QAAQ;AAAA,MACN,mBAAY,YAAY;AAAA,IAC1B,GACA,kDAAkD,KAGpD,MAAM,QAAQ,IAAI;AAAA,MAChB;AAAA,QACE;AAAA,UACE,aAAa,CAAC,YAAY,cAAc,CAAC;AAAA,UACzC,SAAS,UAAU;AAAA,UACnB,GAAG;AAAA,QACL;AAAA,QACA,EAAE,UAAU,OAAO,gDAAgD;AAAA,MACrE,EAAE,MAAM,CAAC,QAAQ;AACf,sBAAQ,MAAM,yCAAyC,GACjD;AAAA,MACR,CAAC;AAAA,MACD;AAAA,QACE;AAAA,UACE,aAAa,CAAC,YAAY,cAAc,CAAC;AAAA,UACzC,SAAS,UAAU;AAAA,UACnB,GAAG;AAAA,QACL;AAAA,QACA,EAAE,UAAU,WAAW,gDAAgD;AAAA,MACzE,EAAE,MAAM,CAAC,QAAQ;AACf,sBAAQ,MAAM,6CAA6C,GACrD;AAAA,MACR,CAAC;AAAA,MACD,WAAW;AAAA,QACT,aAAa,CAAC,YAAY,OAAO,CAAC;AAAA,QAClC,SAAS,UAAU;AAAA,QACnB,GAAG;AAAA,MACL,CAAC,EAAE,MAAM,CAAC,QAAQ;AAChB,sBAAQ,MAAM,0BAA0B,GAClC;AAAA,MACR,CAAC;AAAA,MACD,cAAc;AAAA,QACZ,aAAa;AAAA,UACX,SAAS,SAAS,QACd,YAAY,uBAAuB,IACnC,YAAY,mBAAmB;AAAA,QACrC;AAAA,QACA,SAAS,UAAU;AAAA,QACnB,GAAG;AAAA,MACL,CAAC,EAAE,MAAM,CAAC,QAAQ;AAChB,sBAAQ,MAAM,sCAAsC,GAC9C;AAAA,MACR,CAAC;AAAA,IACH,CAAC;AAAA,EACH,UAAE;AAEA,gBAAa,GACb,kBAAkB;AAAA,EACpB;AACF;AAEA,eAAsB,yBACpB,UACA,UACiB;AACjB,MAAI,YAAY,aAAa,UAAU,SAAS,IAAI,GAEhD,SAUA;AAEJ,QAAM,cAAc,MAAM;AACxB,YAAQ,SAAS,UAAU;AAAA,MACzB,KAAK;AACH,eAAO,UAAU;AAAA,MACnB,KAAK;AACH,eAAO,UAAU;AAAA,MACnB;AACE,cAAM,IAAI,MAAM,yBAAyB,SAAS,QAAQ,EAAE;AAAA,IAChE;AAAA,EACF,GAAG,GA0BG,iBAAiB,OAxBG,YAAY;AACpC,QAAI,OAAQ,QAAO;AAEnB,UAAM,aAAa;AAAA,MACjB,OAAO,UAAU;AAAA,MACjB,UAAU,MAAM,SAAS,UAAU,UAAU,OAAO;AAAA,IACtD;AAEA,oBAAS;AAAA,MACP,gBAAgB;AAAA,QACd,OAAO;AAAA,QACP,UAAU,MAAM,SAAS,YAAY,OAAO;AAAA,MAC9C;AAAA,MACA,OAAO;AAAA,QACL,OAAO,UAAU;AAAA,QACjB,UAAU,MAAM,SAAS,UAAU,OAAO,OAAO;AAAA,MACnD;AAAA,MACA,qBAAqB;AAAA,MACrB,yBAAyB;AAAA,IAC3B,GAEO;AAAA,EACT,GAE+C,GAEzC,qBAAqB,OAAO,KAAK,cAAc,EAAE,OAAO,CAAC,KAAK,QAAQ;AAC1E,UAAM,MAAM,eAAe,GAAG;AAC9B,eAAI,IAAI,KAAK,IAAI,IAAI,UACd;AAAA,EACT,GAAG,CAAC,CAAC;AAEL,SAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IAET,MAAM,UAAU,IAAI,WAAW,SAAS;AAItC,UAAI,UAAS,QAER,oBAAoB,KAAK,WAAW,GAIzC;AAAA,YAAI,OAAO;AACT,iBAAO;AAGT,YAAI,GAAG,WAAW,eAAe;AAC/B,iBAAI,OAAO,8BACT,SAEK,wBAAwB,EAAE;AAInC,YACE,GAAG,WAAW,4BAA4B,KAC1C,GAAG,SAAS,8CAA8C;AAE1D,iBAAO,wBAAwB,GAAG,QAAQ,+CAA+C,cAAc,CAAC;AAG1G,mBAAW,YAAY;AACrB,cAAI,OAAO,YAAY,GAAG,SAAS,iBAAiB,QAAQ,GAAG;AAE7D,mBADa,eAAe,QAAQ,EACxB;AAAA;AAAA,IAGlB;AAAA,IAEA,MAAM,KAAK,IAAI;AACb,UAAI,GAAG,WAAW,sBAAsB,GAAG;AACzC,cAAM,QAAQ,GAAG,QAAQ,yBAAyB,EAAE;AAEpD,YAAI,MAAM;AAEV,eAAI,GAAG,SAAS,aAAa,IAG3B,OAAO,mCAAmC,KAAK,oFAG/C,OAAO,uDAAuD,KAAK,QAGrE,OAAO;AAAA,GAEP,OAAO;AAAA;AAAA;AAAA,WAKP,OAAO,oCAAoC,KAAK,EAC7C;AAAA,UACC,CAAC,eACC,gBAAgB,UAAU,aAAa,UAAU,qBAAqB,UAAU;AAAA,QACpF,EACC,KAAK;AAAA,CAAI,GAEZ,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,WAWA;AAAA,MACT;AAEA,UAAI,MAAM;AACR,eAAO,mBAAmB,EAAE;AAAA,IAEhC;AAAA,EACF;AACF;AAKA,SAAS,oCAIP,YACU;AACV,SAAO,2CAA2C,UAAU,KAAK,CAAC;AACpE;AAMA,MAAM,6CAA6C;AAAA,EACjD,kEAAkE;AAAA,IAChE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA,uEAAuE;AAAA,IACrE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA,yDAAyD;AAAA,IACvD;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA,sDAAsD;AAAA,IACpD;AAAA,IACA;AAAA,EACF;AAAA,EACA,mDAAmD;AAAA,IACjD;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;",
5
5
  "names": []
6
6
  }
@@ -4,6 +4,7 @@ import FSExtra from "fs-extra";
4
4
  import { readFile } from "node:fs/promises";
5
5
  import { join } from "node:path";
6
6
  import { isNativeEnvironment } from "./environmentUtils.mjs";
7
+ let prebuildPromise = null;
7
8
  const getPrebuilds = (cacheDir, mode) => ({
8
9
  reactJSX: join(cacheDir, `react-jsx-runtime${mode === "prod" ? ".production" : ""}.js`),
9
10
  react: join(cacheDir, `react${mode === "prod" ? ".production" : ""}.js`),
@@ -14,61 +15,73 @@ const getPrebuilds = (cacheDir, mode) => ({
14
15
  async function prebuildReactNativeModules(cacheDir, internal = {
15
16
  mode: "dev"
16
17
  }) {
18
+ if (prebuildPromise) {
19
+ await prebuildPromise;
20
+ return;
21
+ }
17
22
  const prebuilds = getPrebuilds(cacheDir, internal.mode);
18
- if (internal.mode !== "prod" && (
19
- // Do not use cached prebuilds while building for production, since the performance gain is little (build time is already slower anyway) and can avoid potential issues.
20
- await allExist(Object.values(prebuilds)))) return;
21
- internal.mode !== "prod" ? console.info(`
23
+ let resolveLock;
24
+ prebuildPromise = new Promise(resolve => {
25
+ resolveLock = resolve;
26
+ });
27
+ try {
28
+ if (internal.mode !== "prod" && (
29
+ // Do not use cached prebuilds while building for production, since the performance gain is little (build time is already slower anyway) and can avoid potential issues.
30
+ await allExist(Object.values(prebuilds)))) return;
31
+ internal.mode !== "prod" ? console.info(`
22
32
  \u2776 Pre-building react-native (one time cost)...
23
33
  `) : console.info(`
24
34
  \u2776 Pre-building react-native for production...
25
35
  `);
26
- const buildOptions = internal.mode === "prod" ? {
27
- define: {
28
- __DEV__: "false",
29
- "process.env.NODE_ENV": '"production"'
30
- }
31
- } : {};
32
- let enableExperimentalReactNativeWithReact19Support = !1;
33
- const reactPackageJsonPath = resolvePath("react/package.json"),
34
- reactPackageJsonContents = await readFile(reactPackageJsonPath, "utf8"),
35
- reactPackageJson = JSON.parse(reactPackageJsonContents),
36
- reactNativePackageJsonPath = resolvePath("react/package.json"),
37
- reactNativePackageJsonContents = await readFile(reactNativePackageJsonPath, "utf8"),
38
- reactNativePackageJson = JSON.parse(reactNativePackageJsonContents),
39
- reactVersion = reactPackageJson?.version,
40
- reactNativeVersion = reactNativePackageJson?.version;
41
- reactVersion?.startsWith("19") && Number.parseFloat(reactNativeVersion) < 0.78 && (console.info(`\u{1F9EA} React ${reactVersion} detected. Enabling experimental React 19 support for React Native.`), enableExperimentalReactNativeWithReact19Support = !0), await Promise.all([buildReactNative({
42
- entryPoints: [resolvePath("react-native")],
43
- outfile: prebuilds.reactNativeIos,
44
- ...buildOptions
45
- }, {
46
- platform: "ios",
47
- enableExperimentalReactNativeWithReact19Support
48
- }).catch(err => {
49
- throw console.error("Error pre-building react-native for iOS"), err;
50
- }), buildReactNative({
51
- entryPoints: [resolvePath("react-native")],
52
- outfile: prebuilds.reactNativeAndroid,
53
- ...buildOptions
54
- }, {
55
- platform: "android",
56
- enableExperimentalReactNativeWithReact19Support
57
- }).catch(err => {
58
- throw console.error("Error pre-building react-native for Android"), err;
59
- }), buildReact({
60
- entryPoints: [resolvePath("react")],
61
- outfile: prebuilds.react,
62
- ...buildOptions
63
- }).catch(err => {
64
- throw console.error("Error pre-building react"), err;
65
- }), buildReactJSX({
66
- entryPoints: [internal.mode === "dev" ? resolvePath("react/jsx-dev-runtime") : resolvePath("react/jsx-runtime")],
67
- outfile: prebuilds.reactJSX,
68
- ...buildOptions
69
- }).catch(err => {
70
- throw console.error("Error pre-building react/jsx-runtime"), err;
71
- })]);
36
+ const buildOptions = internal.mode === "prod" ? {
37
+ define: {
38
+ __DEV__: "false",
39
+ "process.env.NODE_ENV": '"production"'
40
+ }
41
+ } : {};
42
+ let enableExperimentalReactNativeWithReact19Support = !1;
43
+ const reactPackageJsonPath = resolvePath("react/package.json"),
44
+ reactPackageJsonContents = await readFile(reactPackageJsonPath, "utf8"),
45
+ reactPackageJson = JSON.parse(reactPackageJsonContents),
46
+ reactNativePackageJsonPath = resolvePath("react/package.json"),
47
+ reactNativePackageJsonContents = await readFile(reactNativePackageJsonPath, "utf8"),
48
+ reactNativePackageJson = JSON.parse(reactNativePackageJsonContents),
49
+ reactVersion = reactPackageJson?.version,
50
+ reactNativeVersion = reactNativePackageJson?.version;
51
+ reactVersion?.startsWith("19") && Number.parseFloat(reactNativeVersion) < 0.78 && (console.info(`\u{1F9EA} React ${reactVersion} detected. Enabling experimental React 19 support for React Native.`), enableExperimentalReactNativeWithReact19Support = !0), await Promise.all([buildReactNative({
52
+ entryPoints: [resolvePath("react-native")],
53
+ outfile: prebuilds.reactNativeIos,
54
+ ...buildOptions
55
+ }, {
56
+ platform: "ios",
57
+ enableExperimentalReactNativeWithReact19Support
58
+ }).catch(err => {
59
+ throw console.error("Error pre-building react-native for iOS"), err;
60
+ }), buildReactNative({
61
+ entryPoints: [resolvePath("react-native")],
62
+ outfile: prebuilds.reactNativeAndroid,
63
+ ...buildOptions
64
+ }, {
65
+ platform: "android",
66
+ enableExperimentalReactNativeWithReact19Support
67
+ }).catch(err => {
68
+ throw console.error("Error pre-building react-native for Android"), err;
69
+ }), buildReact({
70
+ entryPoints: [resolvePath("react")],
71
+ outfile: prebuilds.react,
72
+ ...buildOptions
73
+ }).catch(err => {
74
+ throw console.error("Error pre-building react"), err;
75
+ }), buildReactJSX({
76
+ entryPoints: [internal.mode === "dev" ? resolvePath("react/jsx-dev-runtime") : resolvePath("react/jsx-runtime")],
77
+ outfile: prebuilds.reactJSX,
78
+ ...buildOptions
79
+ }).catch(err => {
80
+ throw console.error("Error pre-building react/jsx-runtime"), err;
81
+ })]);
82
+ } finally {
83
+ resolveLock(), prebuildPromise = null;
84
+ }
72
85
  }
73
86
  async function swapPrebuiltReactModules(cacheDir, internal) {
74
87
  let prebuilds = getPrebuilds(cacheDir, internal.mode),
@@ -1 +1 @@
1
- {"version":3,"names":["buildReact","buildReactJSX","buildReactNative","resolvePath","FSExtra","readFile","join","isNativeEnvironment","getPrebuilds","cacheDir","mode","reactJSX","react","reactNativeIos","reactNativeAndroid","allExist","paths","Promise","all","map","p","pathExists","every","Boolean","prebuildReactNativeModules","internal","prebuilds","Object","values","console","info","buildOptions","define","__DEV__","enableExperimentalReactNativeWithReact19Support","reactPackageJsonPath","reactPackageJsonContents","reactPackageJson","JSON","parse","reactNativePackageJsonPath","reactNativePackageJsonContents","reactNativePackageJson","reactVersion","version","reactNativeVersion","startsWith","Number","parseFloat","entryPoints","outfile","platform","catch","err","error","swapPrebuiltReactModules","cached","rnPrebuilt","Error","virtualModules","jsxRuntime","alias","contents","cachedIdToContents","keys","reduce","acc","key","cur","name","enforce","resolveId","id","_importer","options","scan","environment","includes","replace","targetId","load","idOut","out","getReactNativeInternalModuleExports","exportName","modulePath","KNOWN_REACT_NATIVE_INTERNAL_MODULE_EXPORTS"],"sources":["../../src/utils/swapPrebuiltReactModules.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,UAAA,EAAYC,aAAA,EAAeC,gBAAA,QAAwB;AAC5D,SAASC,WAAA,QAAmB;AAC5B,OAAOC,OAAA,MAAa;AACpB,SAASC,QAAA,QAAgB;AACzB,SAASC,IAAA,QAAY;AAErB,SAASC,mBAAA,QAA2B;AAKpC,MAAMC,YAAA,GAAeA,CAACC,QAAA,EAAkBC,IAAA,MAAU;IAChDC,QAAA,EAAUL,IAAA,CAAKG,QAAA,EAAU,oBAAoBC,IAAA,KAAS,SAAS,gBAAgB,EAAE,KAAK;IACtFE,KAAA,EAAON,IAAA,CAAKG,QAAA,EAAU,QAAQC,IAAA,KAAS,SAAS,gBAAgB,EAAE,KAAK;IACvEG,cAAA,EAAgBP,IAAA,CACdG,QAAA,EACA,eAAeC,IAAA,KAAS,SAAS,gBAAgB,EAAE,SACrD;IACAI,kBAAA,EAAoBR,IAAA,CAClBG,QAAA,EACA,eAAeC,IAAA,KAAS,SAAS,gBAAgB,EAAE,aACrD;EACF;EAEMK,QAAA,GAAW,MAAOC,KAAA,KACd,MAAMC,OAAA,CAAQC,GAAA,CAAIF,KAAA,CAAMG,GAAA,CAAKC,CAAA,IAAMhB,OAAA,CAAQiB,UAAA,CAAWD,CAAC,CAAC,CAAC,GAAGE,KAAA,CAAMC,OAAO;AAGnF,eAAsBC,2BACpBf,QAAA,EACAgB,QAAA,GAAsC;EAAEf,IAAA,EAAM;AAAM,GACpD;EACA,MAAMgB,SAAA,GAAYlB,YAAA,CAAaC,QAAA,EAAUgB,QAAA,CAASf,IAAI;EAEtD,IACEe,QAAA,CAASf,IAAA,KAAS;EAAA;EACjB,MAAMK,QAAA,CAASY,MAAA,CAAOC,MAAA,CAAOF,SAAS,CAAC,IAExC;EAGED,QAAA,CAASf,IAAA,KAAS,SACpBmB,OAAA,CAAQC,IAAA,CAAK;AAAA;AAAA,CAAqD,IAElED,OAAA,CAAQC,IAAA,CAAK;AAAA;AAAA,CAAoD;EAInE,MAAMC,YAAA,GACJN,QAAA,CAASf,IAAA,KAAS,SACd;IACEsB,MAAA,EAAQ;MACNC,OAAA,EAAS;MACT,wBAAwB;IAC1B;EACF,IACA,CAAC;EAEP,IAAIC,+CAAA,GAAkD;EACtD,MAAMC,oBAAA,GAAuBhC,WAAA,CAAY,oBAAoB;IACvDiC,wBAAA,GAA2B,MAAM/B,QAAA,CAAS8B,oBAAA,EAAsB,MAAM;IACtEE,gBAAA,GAAmBC,IAAA,CAAKC,KAAA,CAAMH,wBAAwB;IACtDI,0BAAA,GAA6BrC,WAAA,CAAY,oBAAoB;IAC7DsC,8BAAA,GAAiC,MAAMpC,QAAA,CAC3CmC,0BAAA,EACA,MACF;IACME,sBAAA,GAAyBJ,IAAA,CAAKC,KAAA,CAAME,8BAA8B;IAElEE,YAAA,GAAeN,gBAAA,EAAkBO,OAAA;IACjCC,kBAAA,GAAqBH,sBAAA,EAAwBE,OAAA;EAC/CD,YAAA,EAAcG,UAAA,CAAW,IAAI,KAAKC,MAAA,CAAOC,UAAA,CAAWH,kBAAkB,IAAI,SAC5EhB,OAAA,CAAQC,IAAA,CACN,mBAAYa,YAAY,qEAC1B,GACAT,+CAAA,GAAkD,KAGpD,MAAMjB,OAAA,CAAQC,GAAA,CAAI,CAChBhB,gBAAA,CACE;IACE+C,WAAA,EAAa,CAAC9C,WAAA,CAAY,cAAc,CAAC;IACzC+C,OAAA,EAASxB,SAAA,CAAUb,cAAA;IACnB,GAAGkB;EACL,GACA;IAAEoB,QAAA,EAAU;IAAOjB;EAAgD,CACrE,EAAEkB,KAAA,CAAOC,GAAA,IAAQ;IACf,MAAAxB,OAAA,CAAQyB,KAAA,CAAM,yCAAyC,GACjDD,GAAA;EACR,CAAC,GACDnD,gBAAA,CACE;IACE+C,WAAA,EAAa,CAAC9C,WAAA,CAAY,cAAc,CAAC;IACzC+C,OAAA,EAASxB,SAAA,CAAUZ,kBAAA;IACnB,GAAGiB;EACL,GACA;IAAEoB,QAAA,EAAU;IAAWjB;EAAgD,CACzE,EAAEkB,KAAA,CAAOC,GAAA,IAAQ;IACf,MAAAxB,OAAA,CAAQyB,KAAA,CAAM,6CAA6C,GACrDD,GAAA;EACR,CAAC,GACDrD,UAAA,CAAW;IACTiD,WAAA,EAAa,CAAC9C,WAAA,CAAY,OAAO,CAAC;IAClC+C,OAAA,EAASxB,SAAA,CAAUd,KAAA;IACnB,GAAGmB;EACL,CAAC,EAAEqB,KAAA,CAAOC,GAAA,IAAQ;IAChB,MAAAxB,OAAA,CAAQyB,KAAA,CAAM,0BAA0B,GAClCD,GAAA;EACR,CAAC,GACDpD,aAAA,CAAc;IACZgD,WAAA,EAAa,CACXxB,QAAA,CAASf,IAAA,KAAS,QACdP,WAAA,CAAY,uBAAuB,IACnCA,WAAA,CAAY,mBAAmB,EACrC;IACA+C,OAAA,EAASxB,SAAA,CAAUf,QAAA;IACnB,GAAGoB;EACL,CAAC,EAAEqB,KAAA,CAAOC,GAAA,IAAQ;IAChB,MAAAxB,OAAA,CAAQyB,KAAA,CAAM,sCAAsC,GAC9CD,GAAA;EACR,CAAC,EACF;AACH;AAEA,eAAsBE,yBACpB9C,QAAA,EACAgB,QAAA,EACiB;EACjB,IAAIC,SAAA,GAAYlB,YAAA,CAAaC,QAAA,EAAUgB,QAAA,CAASf,IAAI;IAEhD8C,MAAA,GAUA;EAEJ,MAAMC,UAAA,IAAc,MAAM;MACxB,QAAQhC,QAAA,CAAS0B,QAAA;QACf,KAAK;UACH,OAAOzB,SAAA,CAAUb,cAAA;QACnB,KAAK;UACH,OAAOa,SAAA,CAAUZ,kBAAA;QACnB;UACE,MAAM,IAAI4C,KAAA,CAAM,yBAAyBjC,QAAA,CAAS0B,QAAQ,EAAE;MAChE;IACF,GAAG;IA0BGQ,cAAA,GAAiB,OAxBG,YAAY;MACpC,IAAIH,MAAA,EAAQ,OAAOA,MAAA;MAEnB,MAAMI,UAAA,GAAa;QACjBC,KAAA,EAAOnC,SAAA,CAAUf,QAAA;QACjBmD,QAAA,EAAU,MAAMzD,QAAA,CAASqB,SAAA,CAAUf,QAAA,EAAU,OAAO;MACtD;MAEA,OAAA6C,MAAA,GAAS;QACP,gBAAgB;UACdK,KAAA,EAAOJ,UAAA;UACPK,QAAA,EAAU,MAAMzD,QAAA,CAASoD,UAAA,EAAY,OAAO;QAC9C;QACA7C,KAAA,EAAO;UACLiD,KAAA,EAAOnC,SAAA,CAAUd,KAAA;UACjBkD,QAAA,EAAU,MAAMzD,QAAA,CAASqB,SAAA,CAAUd,KAAA,EAAO,OAAO;QACnD;QACA,qBAAqBgD,UAAA;QACrB,yBAAyBA;MAC3B,GAEOJ,MAAA;IACT,GAE+C;IAEzCO,kBAAA,GAAqBpC,MAAA,CAAOqC,IAAA,CAAKL,cAAc,EAAEM,MAAA,CAAO,CAACC,GAAA,EAAKC,GAAA,KAAQ;MAC1E,MAAMC,GAAA,GAAMT,cAAA,CAAeQ,GAAG;MAC9B,OAAAD,GAAA,CAAIE,GAAA,CAAIP,KAAK,IAAIO,GAAA,CAAIN,QAAA,EACdI,GAAA;IACT,GAAG,CAAC,CAAC;EAEL,OAAO;IACLG,IAAA,EAAM;IACNC,OAAA,EAAS;IAET,MAAMC,UAAUC,EAAA,EAAIC,SAAA,EAAWC,OAAA,EAAS;MAItC,IAAI,CAAAA,OAAA,EAASC,IAAA,IAERpE,mBAAA,CAAoB,KAAKqE,WAAW,GAIzC;QAAA,IAAIJ,EAAA,KAAO,oBACT,OAAOf,UAAA;QAGT,IAAIe,EAAA,CAAG1B,UAAA,CAAW,eAAe,GAC/B,OAAI0B,EAAA,KAAO,8BACT,SAEK,wBAAwBA,EAAE;QAInC,IACEA,EAAA,CAAG1B,UAAA,CAAW,4BAA4B,KAC1C0B,EAAA,CAAGK,QAAA,CAAS,8CAA8C,GAE1D,OAAO,wBAAwBL,EAAA,CAAGM,OAAA,CAAQ,+CAA+C,cAAc,CAAC;QAG1G,WAAWC,QAAA,IAAYpB,cAAA,EACrB,IAAIa,EAAA,KAAOO,QAAA,IAAYP,EAAA,CAAGK,QAAA,CAAS,iBAAiBE,QAAQ,GAAG,GAE7D,OADapB,cAAA,CAAeoB,QAAQ,EACxBlB,KAAA;MAAA;IAGlB;IAEA,MAAMmB,KAAKR,EAAA,EAAI;MACb,IAAIA,EAAA,CAAG1B,UAAA,CAAW,sBAAsB,GAAG;QACzC,MAAMmC,KAAA,GAAQT,EAAA,CAAGM,OAAA,CAAQ,yBAAyB,EAAE;QAEpD,IAAII,GAAA,GAAM;QAEV,OAAIV,EAAA,CAAGK,QAAA,CAAS,aAAa,IAG3BK,GAAA,IAAO,mCAAmCD,KAAK,oFAG/CC,GAAA,IAAO,uDAAuDD,KAAK,QAGrEC,GAAA,IAAO;AAAA,GAEPA,GAAA,IAAO;AAAA;AAAA;AAAA,WAKPA,GAAA,IAAOC,mCAAA,CAAoCF,KAAK,EAC7C9D,GAAA,CACEiE,UAAA,IACC,gBAAgBA,UAAU,aAAaA,UAAU,qBAAqBA,UAAU,EACpF,EACC9E,IAAA,CAAK;AAAA,CAAI,GAEZ4E,GAAA,IAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,WAWAA,GAAA;MACT;MAEA,IAAIV,EAAA,IAAMT,kBAAA,EACR,OAAOA,kBAAA,CAAmBS,EAAE;IAEhC;EACF;AACF;AAKA,SAASW,oCAIPE,UAAA,EACU;EACV,OAAOC,0CAAA,CAA2CD,UAAU,KAAK,EAAC;AACpE;AAMA,MAAMC,0CAAA,GAA6C;EACjD,kEAAkE,CAChE,4BACA,OACA,8BACA,+BACF;EACA,uEAAuE,CACrE,4BACA,0BACA,YACA,MACF;EACA,yDAAyD,CACvD,yBACA,aACA,aACF;EACA,sDAAsD,CACpD,0BACA,iBACF;EACA,mDAAmD,CACjD,aACA,8BACA;AAEJ","ignoreList":[]}
1
+ {"version":3,"names":["buildReact","buildReactJSX","buildReactNative","resolvePath","FSExtra","readFile","join","isNativeEnvironment","prebuildPromise","getPrebuilds","cacheDir","mode","reactJSX","react","reactNativeIos","reactNativeAndroid","allExist","paths","Promise","all","map","p","pathExists","every","Boolean","prebuildReactNativeModules","internal","prebuilds","resolveLock","resolve","Object","values","console","info","buildOptions","define","__DEV__","enableExperimentalReactNativeWithReact19Support","reactPackageJsonPath","reactPackageJsonContents","reactPackageJson","JSON","parse","reactNativePackageJsonPath","reactNativePackageJsonContents","reactNativePackageJson","reactVersion","version","reactNativeVersion","startsWith","Number","parseFloat","entryPoints","outfile","platform","catch","err","error","swapPrebuiltReactModules","cached","rnPrebuilt","Error","virtualModules","jsxRuntime","alias","contents","cachedIdToContents","keys","reduce","acc","key","cur","name","enforce","resolveId","id","_importer","options","scan","environment","includes","replace","targetId","load","idOut","out","getReactNativeInternalModuleExports","exportName","modulePath","KNOWN_REACT_NATIVE_INTERNAL_MODULE_EXPORTS"],"sources":["../../src/utils/swapPrebuiltReactModules.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -4,7 +4,8 @@ import FSExtra from "fs-extra";
4
4
  import { readFile } from "fs/promises";
5
5
  import { join } from "path";
6
6
  import { isNativeEnvironment } from "./environmentUtils.native.js";
7
- var getPrebuilds = function (cacheDir, mode) {
7
+ var prebuildPromise = null,
8
+ getPrebuilds = function (cacheDir, mode) {
8
9
  return {
9
10
  reactJSX: join(cacheDir, `react-jsx-runtime${mode === "prod" ? ".production" : ""}.js`),
10
11
  react: join(cacheDir, `react${mode === "prod" ? ".production" : ""}.js`),
@@ -19,12 +20,21 @@ var getPrebuilds = function (cacheDir, mode) {
19
20
  };
20
21
  async function prebuildReactNativeModules(cacheDir) {
21
22
  var internal = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
22
- mode: "dev"
23
- },
24
- prebuilds = getPrebuilds(cacheDir, internal.mode);
25
- if (!(internal.mode !== "prod" && (
26
- // Do not use cached prebuilds while building for production, since the performance gain is little (build time is already slower anyway) and can avoid potential issues.
27
- await allExist(Object.values(prebuilds))))) {
23
+ mode: "dev"
24
+ };
25
+ if (prebuildPromise) {
26
+ await prebuildPromise;
27
+ return;
28
+ }
29
+ var prebuilds = getPrebuilds(cacheDir, internal.mode),
30
+ resolveLock;
31
+ prebuildPromise = new Promise(function (resolve) {
32
+ resolveLock = resolve;
33
+ });
34
+ try {
35
+ if (internal.mode !== "prod" && (
36
+ // Do not use cached prebuilds while building for production, since the performance gain is little (build time is already slower anyway) and can avoid potential issues.
37
+ await allExist(Object.values(prebuilds)))) return;
28
38
  internal.mode !== "prod" ? console.info(`
29
39
  \u2776 Pre-building react-native (one time cost)...
30
40
  `) : console.info(`
@@ -76,6 +86,8 @@ async function prebuildReactNativeModules(cacheDir) {
76
86
  }).catch(function (err) {
77
87
  throw console.error("Error pre-building react/jsx-runtime"), err;
78
88
  })]);
89
+ } finally {
90
+ resolveLock(), prebuildPromise = null;
79
91
  }
80
92
  }
81
93
  async function swapPrebuiltReactModules(cacheDir, internal) {
@@ -1 +1 @@
1
- {"version":3,"names":["buildReact","buildReactJSX","buildReactNative","resolvePath","FSExtra","readFile","join","isNativeEnvironment","getPrebuilds","cacheDir","mode","reactJSX","react","reactNativeIos","reactNativeAndroid","allExist","paths","Promise","all","map","p","pathExists","every","Boolean","prebuildReactNativeModules","internal","arguments","length","prebuilds","Object","values","console","info","buildOptions","define","__DEV__","enableExperimentalReactNativeWithReact19Support","reactPackageJsonPath","reactPackageJsonContents","reactPackageJson","JSON","parse","reactNativePackageJsonPath","reactNativePackageJsonContents","reactNativePackageJson","reactVersion","version","reactNativeVersion","startsWith","Number","parseFloat","entryPoints","outfile","platform","catch","err","error","swapPrebuiltReactModules","cached","rnPrebuilt","Error","getVirtualModules","jsxRuntime","alias","contents","virtualModules","cachedIdToContents","keys","reduce","acc","key","cur","name","enforce","resolveId","id","_importer","options","scan","environment","includes","replace","targetId","load","idOut","out","getReactNativeInternalModuleExports","exportName","modulePath","KNOWN_REACT_NATIVE_INTERNAL_MODULE_EXPORTS"],"sources":["../../src/utils/swapPrebuiltReactModules.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["buildReact","buildReactJSX","buildReactNative","resolvePath","FSExtra","readFile","join","isNativeEnvironment","prebuildPromise","getPrebuilds","cacheDir","mode","reactJSX","react","reactNativeIos","reactNativeAndroid","allExist","paths","Promise","all","map","p","pathExists","every","Boolean","prebuildReactNativeModules","internal","arguments","length","prebuilds","resolveLock","resolve","Object","values","console","info","buildOptions","define","__DEV__","enableExperimentalReactNativeWithReact19Support","reactPackageJsonPath","reactPackageJsonContents","reactPackageJson","JSON","parse","reactNativePackageJsonPath","reactNativePackageJsonContents","reactNativePackageJson","reactVersion","version","reactNativeVersion","startsWith","Number","parseFloat","entryPoints","outfile","platform","catch","err","error","swapPrebuiltReactModules","cached","rnPrebuilt","Error","getVirtualModules","jsxRuntime","alias","contents","virtualModules","cachedIdToContents","keys","reduce","acc","key","cur","name","enforce","resolveId","id","_importer","options","scan","environment","includes","replace","targetId","load","idOut","out","getReactNativeInternalModuleExports","exportName","modulePath","KNOWN_REACT_NATIVE_INTERNAL_MODULE_EXPORTS"],"sources":["../../src/utils/swapPrebuiltReactModules.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vxrn",
3
- "version": "1.2.57",
3
+ "version": "1.2.60",
4
4
  "sideEffects": false,
5
5
  "type": "module",
6
6
  "exports": {
@@ -55,8 +55,8 @@
55
55
  ],
56
56
  "scripts": {
57
57
  "build": "tamagui-build",
58
- "watch": "yarn build --watch",
59
- "check": "yarn depcheck",
58
+ "watch": "bun run build --watch",
59
+ "check": "depcheck",
60
60
  "clean": "tamagui-build clean",
61
61
  "clean:build": "tamagui-build clean:build"
62
62
  },
@@ -65,17 +65,17 @@
65
65
  "@hono/node-server": "^1.19.6",
66
66
  "@react-native/dev-middleware": "^0.83.0",
67
67
  "@rollup/plugin-node-resolve": "^15.3.1",
68
- "@vxrn/compiler": "1.2.57",
69
- "@vxrn/debug": "1.2.57",
70
- "@vxrn/query-string": "1.2.57",
71
- "@vxrn/react-native-prebuilt": "1.2.57",
72
- "@vxrn/resolve": "1.2.57",
73
- "@vxrn/safe-area": "1.2.57",
74
- "@vxrn/url-parse": "1.2.57",
75
- "@vxrn/utils": "1.2.57",
76
- "@vxrn/vendor": "1.2.57",
77
- "@vxrn/vite-flow": "1.2.57",
78
- "@vxrn/vite-plugin-metro": "1.2.57",
68
+ "@vxrn/compiler": "1.2.60",
69
+ "@vxrn/debug": "1.2.60",
70
+ "@vxrn/query-string": "1.2.60",
71
+ "@vxrn/react-native-prebuilt": "1.2.60",
72
+ "@vxrn/resolve": "1.2.60",
73
+ "@vxrn/safe-area": "1.2.60",
74
+ "@vxrn/url-parse": "1.2.60",
75
+ "@vxrn/utils": "1.2.60",
76
+ "@vxrn/vendor": "1.2.60",
77
+ "@vxrn/vite-flow": "1.2.60",
78
+ "@vxrn/vite-plugin-metro": "1.2.60",
79
79
  "citty": "^0.1.6",
80
80
  "dotenv": "^17.2.1",
81
81
  "dotenv-expand": "^12.0.2",
@@ -86,7 +86,6 @@
86
86
  "fs-extra": "^11.2.0",
87
87
  "get-port-please": "^3.1.2",
88
88
  "hono": "^4.10.7",
89
- "ip": "^2.0.1",
90
89
  "lightningcss": "^1.30.1",
91
90
  "perfect-debounce": "^1.0.0",
92
91
  "picocolors": "^1.0.0",
@@ -94,7 +93,7 @@
94
93
  "qrcode-terminal": "^0.12.0",
95
94
  "rollup": "^4.29.1",
96
95
  "semver": "^7.6.3",
97
- "vite": "^7.1.12",
96
+ "vite": "7.1.12",
98
97
  "vite-bundle-analyzer": "^1.2.3",
99
98
  "ws": "^8.18.0"
100
99
  },
@@ -112,4 +111,4 @@
112
111
  "publishConfig": {
113
112
  "access": "public"
114
113
  }
115
- }
114
+ }
package/src/cli.ts CHANGED
File without changes
@@ -143,6 +143,8 @@ export function getOptimizeDeps(mode: 'build' | 'serve') {
143
143
  holdUntilCrawlEnd: false,
144
144
  esbuildOptions: {
145
145
  resolveExtensions: webExtensions,
146
+ // Some packages ship JSX in .js files (e.g., react-native-css-interop/dist/doctor.js)
147
+ loader: { '.js': 'jsx' },
146
148
  },
147
149
  } satisfies UserConfig['optimizeDeps'],
148
150
  }
@@ -50,7 +50,7 @@ export const build = async (optionsIn: VXRNOptions, buildArgs: BuildArgs = {}) =
50
50
 
51
51
  const [{ serverEnv }, options, userViteConfig] = await Promise.all([
52
52
  loadEnv('production'),
53
- fillOptions(optionsIn),
53
+ fillOptions(optionsIn, { mode: 'prod' }),
54
54
  loadConfigFromFile({
55
55
  command: 'build',
56
56
  mode: 'prod',
package/src/index.ts CHANGED
File without changes
@@ -1,6 +1,19 @@
1
- import ip from 'ip'
1
+ import { networkInterfaces } from 'node:os'
2
2
  import type { ResolvedServerUrls } from 'vite'
3
3
 
4
+ function getLocalIpAddress(): string | undefined {
5
+ const nets = networkInterfaces()
6
+ for (const name of Object.keys(nets)) {
7
+ for (const net of nets[name] ?? []) {
8
+ // Skip internal and non-IPv4 addresses
9
+ if (!net.internal && net.family === 'IPv4') {
10
+ return net.address
11
+ }
12
+ }
13
+ }
14
+ return undefined
15
+ }
16
+
4
17
  /**
5
18
  * Filter out non-useful URLs from Vite server resolved URLs.
6
19
  */
@@ -15,8 +28,10 @@ export function filterViteServerResolvedUrls(
15
28
  let network = urls.network
16
29
 
17
30
  // TODO: We might need to preserve both if connected to WiFi and Ethernet at the same time.
18
- const ipAddress = ip.address()
19
- network = network.filter((url) => url.includes(ipAddress))
31
+ const ipAddress = getLocalIpAddress()
32
+ if (ipAddress) {
33
+ network = network.filter((url) => url.includes(ipAddress))
34
+ }
20
35
 
21
36
  return { local, network }
22
37
  }