vxrn 0.1.97 → 0.1.99

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 (184) hide show
  1. package/dist/cjs/exports/build.js.map +1 -1
  2. package/dist/cjs/exports/build.native.js.map +1 -1
  3. package/dist/cjs/exports/dev.js +1 -1
  4. package/dist/cjs/exports/dev.js.map +1 -1
  5. package/dist/cjs/exports/dev.native.js +4 -4
  6. package/dist/cjs/exports/dev.native.js.map +1 -1
  7. package/dist/cjs/index.js +1 -0
  8. package/dist/cjs/index.js.map +1 -1
  9. package/dist/cjs/index.native.js +2 -0
  10. package/dist/cjs/index.native.js.map +1 -1
  11. package/dist/cjs/plugins/clientInjectPlugin.js +3 -3
  12. package/dist/cjs/plugins/clientInjectPlugin.js.map +1 -1
  13. package/dist/cjs/plugins/clientInjectPlugin.native.js +3 -3
  14. package/dist/cjs/plugins/clientInjectPlugin.native.js.map +2 -2
  15. package/dist/cjs/plugins/reactNativeCommonJsPlugin.js +116 -48
  16. package/dist/cjs/plugins/reactNativeCommonJsPlugin.js.map +1 -1
  17. package/dist/cjs/plugins/reactNativeCommonJsPlugin.native.js +208 -147
  18. package/dist/cjs/plugins/reactNativeCommonJsPlugin.native.js.map +2 -2
  19. package/dist/cjs/plugins/reactNativeHMRPlugin.js +2 -0
  20. package/dist/cjs/plugins/reactNativeHMRPlugin.js.map +1 -1
  21. package/dist/cjs/plugins/reactNativeHMRPlugin.native.js +111 -107
  22. package/dist/cjs/plugins/reactNativeHMRPlugin.native.js.map +1 -1
  23. package/dist/cjs/{exports/isWithin.js → utils/environmentUtils.js} +19 -9
  24. package/dist/cjs/utils/environmentUtils.js.map +6 -0
  25. package/dist/cjs/utils/environmentUtils.native.js +43 -0
  26. package/dist/cjs/utils/environmentUtils.native.js.map +6 -0
  27. package/dist/cjs/utils/getOptimizeDeps.js +3 -2
  28. package/dist/cjs/utils/getOptimizeDeps.js.map +1 -1
  29. package/dist/cjs/utils/getOptimizeDeps.native.js +3 -2
  30. package/dist/cjs/utils/getOptimizeDeps.native.js.map +1 -1
  31. package/dist/cjs/utils/getReactNativeBundle.js +1 -1
  32. package/dist/cjs/utils/getReactNativeBundle.js.map +1 -1
  33. package/dist/cjs/utils/getReactNativeBundle.native.js +8 -3
  34. package/dist/cjs/utils/getReactNativeBundle.native.js.map +2 -2
  35. package/dist/esm/exports/build.js.map +1 -1
  36. package/dist/esm/exports/build.native.js.map +1 -1
  37. package/dist/esm/exports/dev.js +1 -1
  38. package/dist/esm/exports/dev.js.map +1 -1
  39. package/dist/esm/exports/dev.mjs +1 -1
  40. package/dist/esm/exports/dev.native.js +4 -4
  41. package/dist/esm/exports/dev.native.js.map +1 -1
  42. package/dist/esm/index.js +1 -0
  43. package/dist/esm/index.js.map +1 -1
  44. package/dist/esm/index.mjs +1 -0
  45. package/dist/esm/index.native.js +1 -0
  46. package/dist/esm/index.native.js.map +1 -1
  47. package/dist/esm/plugins/clientInjectPlugin.js +3 -2
  48. package/dist/esm/plugins/clientInjectPlugin.js.map +1 -1
  49. package/dist/esm/plugins/clientInjectPlugin.mjs +3 -2
  50. package/dist/esm/plugins/clientInjectPlugin.native.js +3 -2
  51. package/dist/esm/plugins/clientInjectPlugin.native.js.map +2 -2
  52. package/dist/esm/plugins/reactNativeCommonJsPlugin.js +117 -48
  53. package/dist/esm/plugins/reactNativeCommonJsPlugin.js.map +1 -1
  54. package/dist/esm/plugins/reactNativeCommonJsPlugin.mjs +107 -41
  55. package/dist/esm/plugins/reactNativeCommonJsPlugin.native.js +209 -147
  56. package/dist/esm/plugins/reactNativeCommonJsPlugin.native.js.map +2 -2
  57. package/dist/esm/plugins/reactNativeHMRPlugin.js +2 -0
  58. package/dist/esm/plugins/reactNativeHMRPlugin.js.map +1 -1
  59. package/dist/esm/plugins/reactNativeHMRPlugin.mjs +2 -0
  60. package/dist/esm/plugins/reactNativeHMRPlugin.native.js +111 -107
  61. package/dist/esm/plugins/reactNativeHMRPlugin.native.js.map +1 -1
  62. package/dist/esm/utils/environmentUtils.js +19 -0
  63. package/dist/esm/utils/environmentUtils.js.map +6 -0
  64. package/dist/esm/utils/environmentUtils.mjs +13 -0
  65. package/dist/esm/utils/environmentUtils.native.js +19 -0
  66. package/dist/esm/utils/environmentUtils.native.js.map +6 -0
  67. package/dist/esm/utils/getOptimizeDeps.js +3 -2
  68. package/dist/esm/utils/getOptimizeDeps.js.map +1 -1
  69. package/dist/esm/utils/getOptimizeDeps.mjs +1 -1
  70. package/dist/esm/utils/getOptimizeDeps.native.js +3 -2
  71. package/dist/esm/utils/getOptimizeDeps.native.js.map +1 -1
  72. package/dist/esm/utils/getReactNativeBundle.js +6 -2
  73. package/dist/esm/utils/getReactNativeBundle.js.map +1 -1
  74. package/dist/esm/utils/getReactNativeBundle.mjs +3 -2
  75. package/dist/esm/utils/getReactNativeBundle.native.js +9 -4
  76. package/dist/esm/utils/getReactNativeBundle.native.js.map +2 -2
  77. package/package.json +5 -5
  78. package/src/exports/build.ts +0 -1
  79. package/src/exports/dev.ts +4 -2
  80. package/src/index.ts +2 -0
  81. package/src/plugins/clientInjectPlugin.ts +6 -3
  82. package/src/plugins/reactNativeCommonJsPlugin.ts +159 -146
  83. package/src/plugins/reactNativeHMRPlugin.ts +4 -1
  84. package/src/utils/environmentUtils.ts +17 -0
  85. package/src/utils/getOptimizeDeps.ts +3 -2
  86. package/src/utils/getReactNativeBundle.ts +11 -2
  87. package/types/index.d.ts +1 -0
  88. package/types/plugins/reactNativeCommonJsPlugin.d.ts +1 -1
  89. package/types/plugins/reactNativeHMRPlugin.d.ts +1 -5
  90. package/types/utils/environmentUtils.d.ts +6 -0
  91. package/dist/cjs/exports/bindKeypressInput.js +0 -58
  92. package/dist/cjs/exports/bindKeypressInput.js.map +0 -6
  93. package/dist/cjs/exports/bindKeypressInput.native.js +0 -63
  94. package/dist/cjs/exports/bindKeypressInput.native.js.map +0 -6
  95. package/dist/cjs/exports/coerceToArray.js +0 -23
  96. package/dist/cjs/exports/coerceToArray.js.map +0 -6
  97. package/dist/cjs/exports/connectedNativeClients.js +0 -21
  98. package/dist/cjs/exports/connectedNativeClients.js.map +0 -6
  99. package/dist/cjs/exports/empty.js +0 -1
  100. package/dist/cjs/exports/empty.js.map +0 -6
  101. package/dist/cjs/exports/empty.native.js +0 -2
  102. package/dist/cjs/exports/empty.native.js.map +0 -6
  103. package/dist/cjs/exports/entryRoot.js +0 -69
  104. package/dist/cjs/exports/entryRoot.js.map +0 -6
  105. package/dist/cjs/exports/getIndexJsonResponse.js +0 -71
  106. package/dist/cjs/exports/getIndexJsonResponse.js.map +0 -6
  107. package/dist/cjs/exports/getIndexJsonResponse.native.js +0 -99
  108. package/dist/cjs/exports/getIndexJsonResponse.native.js.map +0 -6
  109. package/dist/cjs/exports/getReactNativeBundle.js +0 -160
  110. package/dist/cjs/exports/getReactNativeBundle.js.map +0 -6
  111. package/dist/cjs/exports/getViteServerConfig.js +0 -77
  112. package/dist/cjs/exports/getViteServerConfig.js.map +0 -6
  113. package/dist/cjs/exports/getViteServerConfig.native.js +0 -253
  114. package/dist/cjs/exports/getViteServerConfig.native.js.map +0 -6
  115. package/dist/cjs/exports/hotUpdateCache.js +0 -21
  116. package/dist/cjs/exports/hotUpdateCache.js.map +0 -6
  117. package/dist/cjs/exports/isBuildingNativeBundle.js +0 -21
  118. package/dist/cjs/exports/isBuildingNativeBundle.js.map +0 -6
  119. package/dist/cjs/exports/isWithin.js.map +0 -6
  120. package/dist/cjs/exports/reactNativeHMRPlugin.js +0 -69
  121. package/dist/cjs/exports/reactNativeHMRPlugin.js.map +0 -6
  122. package/dist/cjs/exports/swapPrebuiltReactModules.js +0 -100
  123. package/dist/cjs/exports/swapPrebuiltReactModules.js.map +0 -6
  124. package/dist/cjs/exports/uniq.js +0 -23
  125. package/dist/cjs/exports/uniq.js.map +0 -6
  126. package/dist/cjs/utils/getHtml.js +0 -49
  127. package/dist/cjs/utils/getHtml.js.map +0 -6
  128. package/dist/cjs/utils/getHtml.native.js +0 -76
  129. package/dist/cjs/utils/getHtml.native.js.map +0 -6
  130. package/dist/esm/exports/bindKeypressInput.js +0 -34
  131. package/dist/esm/exports/bindKeypressInput.js.map +0 -6
  132. package/dist/esm/exports/bindKeypressInput.mjs +0 -31
  133. package/dist/esm/exports/bindKeypressInput.native.js +0 -34
  134. package/dist/esm/exports/bindKeypressInput.native.js.map +0 -6
  135. package/dist/esm/exports/coerceToArray.js +0 -7
  136. package/dist/esm/exports/coerceToArray.js.map +0 -6
  137. package/dist/esm/exports/coerceToArray.mjs +0 -4
  138. package/dist/esm/exports/connectedNativeClients.js +0 -5
  139. package/dist/esm/exports/connectedNativeClients.js.map +0 -6
  140. package/dist/esm/exports/connectedNativeClients.mjs +0 -2
  141. package/dist/esm/exports/empty.js +0 -1
  142. package/dist/esm/exports/empty.js.map +0 -6
  143. package/dist/esm/exports/empty.mjs +0 -0
  144. package/dist/esm/exports/empty.native.js +0 -1
  145. package/dist/esm/exports/empty.native.js.map +0 -6
  146. package/dist/esm/exports/entryRoot.js +0 -58
  147. package/dist/esm/exports/entryRoot.js.map +0 -6
  148. package/dist/esm/exports/entryRoot.mjs +0 -62
  149. package/dist/esm/exports/getIndexJsonResponse.js +0 -55
  150. package/dist/esm/exports/getIndexJsonResponse.js.map +0 -6
  151. package/dist/esm/exports/getIndexJsonResponse.mjs +0 -71
  152. package/dist/esm/exports/getIndexJsonResponse.native.js +0 -78
  153. package/dist/esm/exports/getIndexJsonResponse.native.js.map +0 -6
  154. package/dist/esm/exports/getReactNativeBundle.js +0 -146
  155. package/dist/esm/exports/getReactNativeBundle.js.map +0 -6
  156. package/dist/esm/exports/getReactNativeBundle.mjs +0 -136
  157. package/dist/esm/exports/getViteServerConfig.js +0 -64
  158. package/dist/esm/exports/getViteServerConfig.js.map +0 -6
  159. package/dist/esm/exports/getViteServerConfig.mjs +0 -44
  160. package/dist/esm/exports/getViteServerConfig.native.js +0 -235
  161. package/dist/esm/exports/getViteServerConfig.native.js.map +0 -6
  162. package/dist/esm/exports/hotUpdateCache.js +0 -5
  163. package/dist/esm/exports/hotUpdateCache.js.map +0 -6
  164. package/dist/esm/exports/hotUpdateCache.mjs +0 -2
  165. package/dist/esm/exports/isBuildingNativeBundle.js +0 -5
  166. package/dist/esm/exports/isBuildingNativeBundle.js.map +0 -6
  167. package/dist/esm/exports/isBuildingNativeBundle.mjs +0 -2
  168. package/dist/esm/exports/isWithin.js +0 -9
  169. package/dist/esm/exports/isWithin.js.map +0 -6
  170. package/dist/esm/exports/isWithin.mjs +0 -6
  171. package/dist/esm/exports/reactNativeHMRPlugin.js +0 -58
  172. package/dist/esm/exports/reactNativeHMRPlugin.js.map +0 -6
  173. package/dist/esm/exports/reactNativeHMRPlugin.mjs +0 -62
  174. package/dist/esm/exports/swapPrebuiltReactModules.js +0 -87
  175. package/dist/esm/exports/swapPrebuiltReactModules.js.map +0 -6
  176. package/dist/esm/exports/swapPrebuiltReactModules.mjs +0 -73
  177. package/dist/esm/exports/uniq.js +0 -7
  178. package/dist/esm/exports/uniq.js.map +0 -6
  179. package/dist/esm/exports/uniq.mjs +0 -4
  180. package/dist/esm/utils/getHtml.js +0 -33
  181. package/dist/esm/utils/getHtml.js.map +0 -6
  182. package/dist/esm/utils/getHtml.mjs +0 -23
  183. package/dist/esm/utils/getHtml.native.js +0 -55
  184. package/dist/esm/utils/getHtml.native.js.map +0 -6
@@ -1,2 +0,0 @@
1
- const hotUpdateCache = /* @__PURE__ */new Map();
2
- export { hotUpdateCache };
@@ -1,5 +0,0 @@
1
- let isBuildingNativeBundle = null;
2
- export {
3
- isBuildingNativeBundle
4
- };
5
- //# sourceMappingURL=isBuildingNativeBundle.js.map
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/exports/isBuildingNativeBundle.ts"],
4
- "mappings": "AAEO,IAAI,yBAAiD;",
5
- "names": []
6
- }
@@ -1,2 +0,0 @@
1
- let isBuildingNativeBundle = null;
2
- export { isBuildingNativeBundle };
@@ -1,9 +0,0 @@
1
- import { relative } from "node:path";
2
- function isWithin(outer, inner) {
3
- const rel = relative(outer, inner);
4
- return !rel.startsWith("../") && rel !== "..";
5
- }
6
- export {
7
- isWithin
8
- };
9
- //# sourceMappingURL=isWithin.js.map
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/exports/isWithin.ts"],
4
- "mappings": "AAAA,SAAS,gBAAgB;AAElB,SAAS,SAAS,OAAe,OAAe;AACrD,QAAM,MAAM,SAAS,OAAO,KAAK;AACjC,SAAO,CAAC,IAAI,WAAW,KAAK,KAAK,QAAQ;AAC3C;",
5
- "names": []
6
- }
@@ -1,6 +0,0 @@
1
- import { relative } from "node:path";
2
- function isWithin(outer, inner) {
3
- const rel = relative(outer, inner);
4
- return !rel.startsWith("../") && rel !== "..";
5
- }
6
- export { isWithin };
@@ -1,58 +0,0 @@
1
- import { swcTransform, transformForBuild } from "@vxrn/vite-native-swc";
2
- import { parse } from "es-module-lexer";
3
- import { getVitePath } from "../utils/getVitePath";
4
- import { connectedNativeClients } from "../utils/connectedNativeClients";
5
- import { hotUpdateCache } from "./hotUpdateCache";
6
- import { isWithin } from "../utils/isWithin";
7
- let entryRoot = "";
8
- function reactNativeHMRPlugin({ root }) {
9
- return {
10
- name: "client-transform",
11
- async handleHotUpdate({ read, modules, file }) {
12
- try {
13
- if (!isWithin(root, file) || !connectedNativeClients)
14
- return;
15
- const [module] = modules;
16
- if (!module)
17
- return;
18
- const id = module?.url || file.replace(root, ""), code = await read();
19
- if (code.startsWith("'use strict';") || !code)
20
- return;
21
- let source = code;
22
- source = (await transformForBuild(id, source))?.code || "";
23
- const importsMap = {}, [imports] = parse(source);
24
- let accumulatedSliceOffset = 0;
25
- for (const specifier of imports) {
26
- const { n: importName, s: start } = specifier;
27
- if (importName) {
28
- const id2 = await getVitePath(entryRoot, file, importName);
29
- if (!id2) {
30
- console.warn("???");
31
- continue;
32
- }
33
- importsMap[id2] = id2.replace(/^(\.\.\/)+/, "");
34
- const len = importName.length, extraLen = id2.length - len;
35
- source = source.slice(0, start + accumulatedSliceOffset) + id2 + source.slice(start + accumulatedSliceOffset + len), accumulatedSliceOffset += extraLen;
36
- }
37
- }
38
- if (source = (await swcTransform(id, source, {
39
- mode: "serve-cjs"
40
- }))?.code || "", !source)
41
- throw "\u274C no source";
42
- importsMap.currentPath = id;
43
- const hotUpdateSource = `exports = ((exports) => {
44
- const require = createRequire(${JSON.stringify(importsMap, null, 2)})
45
- ${source.replace("import.meta.hot.accept(() => {})", "").replaceAll(/import.meta.glob\(.*\)/gi, "globalThis['__importMetaGlobbed'] || {}")};
46
- return exports })({})`;
47
- process.env.DEBUG && console.info("Sending hot update", hotUpdateSource), hotUpdateCache.set(id, hotUpdateSource);
48
- } catch (err) {
49
- console.error("Error processing hmr update:", err);
50
- }
51
- }
52
- };
53
- }
54
- export {
55
- entryRoot,
56
- reactNativeHMRPlugin
57
- };
58
- //# sourceMappingURL=reactNativeHMRPlugin.js.map
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/exports/reactNativeHMRPlugin.ts"],
4
- "mappings": "AAAA,SAAS,cAAc,yBAAyB;AAChD,SAAS,aAAa;AAEtB,SAAS,mBAAmB;AAC5B,SAAS,8BAA8B;AACvC,SAAS,sBAAsB;AAC/B,SAAS,gBAAgB;AAGlB,IAAI,YAAY;AAEhB,SAAS,qBAAqB,EAAE,KAAK,GAAqB;AAC/D,SAAO;AAAA,IACL,MAAM;AAAA,IAEN,MAAM,gBAAgB,EAAE,MAAM,SAAS,KAAK,GAAG;AAC7C,UAAI;AAIF,YAHI,CAAC,SAAS,MAAM,IAAI,KAGpB,CAAC;AACH;AAGF,cAAM,CAAC,MAAM,IAAI;AACjB,YAAI,CAAC;AAAQ;AAEb,cAAM,KAAK,QAAQ,OAAO,KAAK,QAAQ,MAAM,EAAE,GAEzC,OAAO,MAAM,KAAK;AAKxB,YAFI,KAAK,WAAW,eAAe,KAE/B,CAAC;AACH;AAGF,YAAI,SAAS;AAGb,kBAAU,MAAM,kBAAkB,IAAI,MAAM,IAAI,QAAQ;AAExD,cAAM,aAAa,CAAC,GAId,CAAC,OAAO,IAAI,MAAM,MAAM;AAE9B,YAAI,yBAAyB;AAE7B,mBAAW,aAAa,SAAS;AAC/B,gBAAM,EAAE,GAAG,YAAY,GAAG,MAAM,IAAI;AAEpC,cAAI,YAAY;AACd,kBAAMA,MAAK,MAAM,YAAY,WAAW,MAAM,UAAU;AACxD,gBAAI,CAACA,KAAI;AACP,sBAAQ,KAAK,KAAK;AAClB;AAAA,YACF;AAEA,uBAAWA,GAAE,IAAIA,IAAG,QAAQ,cAAc,EAAE;AAG5C,kBAAM,MAAM,WAAW,QACjB,WAAWA,IAAG,SAAS;AAC7B,qBACE,OAAO,MAAM,GAAG,QAAQ,sBAAsB,IAC9CA,MACA,OAAO,MAAM,QAAQ,yBAAyB,GAAG,GACnD,0BAA0B;AAAA,UAC5B;AAAA,QACF;AAUA,YAPA,UAEI,MAAM,aAAa,IAAI,QAAQ;AAAA,UAC7B,MAAM;AAAA,QACR,CAAC,IACA,QAAQ,IAET,CAAC;AACH,gBAAM;AAGR,mBAAW,cAAiB;AAE5B,cAAM,kBAAkB;AAAA,0CACU,KAAK,UAAU,YAAY,MAAM,CAAC,CAAC;AAAA,YACjE,OACC,QAAQ,oCAAoC,EAAE,EAE9C,WAAW,4BAA4B,yCAAyC,CAAC;AAAA;AAGtF,QAAI,QAAQ,IAAI,SACd,QAAQ,KAAK,sBAAsB,eAAe,GAGpD,eAAe,IAAI,IAAI,eAAe;AAAA,MACxC,SAAS,KAAK;AACZ,gBAAQ,MAAM,gCAAgC,GAAG;AAAA,MACnD;AAAA,IACF;AAAA,EACF;AACF;",
5
- "names": ["id"]
6
- }
@@ -1,62 +0,0 @@
1
- import { swcTransform, transformForBuild } from "@vxrn/vite-native-swc";
2
- import { parse } from "es-module-lexer";
3
- import { getVitePath } from "../utils/getVitePath.mjs";
4
- import { connectedNativeClients } from "../utils/connectedNativeClients.mjs";
5
- import { hotUpdateCache } from "./hotUpdateCache.mjs";
6
- import { isWithin } from "../utils/isWithin.mjs";
7
- let entryRoot = "";
8
- function reactNativeHMRPlugin({
9
- root
10
- }) {
11
- return {
12
- name: "client-transform",
13
- async handleHotUpdate({
14
- read,
15
- modules,
16
- file
17
- }) {
18
- try {
19
- if (!isWithin(root, file) || !connectedNativeClients) return;
20
- const [module] = modules;
21
- if (!module) return;
22
- const id = module?.url || file.replace(root, ""),
23
- code = await read();
24
- if (code.startsWith("'use strict';") || !code) return;
25
- let source = code;
26
- source = (await transformForBuild(id, source))?.code || "";
27
- const importsMap = {},
28
- [imports] = parse(source);
29
- let accumulatedSliceOffset = 0;
30
- for (const specifier of imports) {
31
- const {
32
- n: importName,
33
- s: start
34
- } = specifier;
35
- if (importName) {
36
- const id2 = await getVitePath(entryRoot, file, importName);
37
- if (!id2) {
38
- console.warn("???");
39
- continue;
40
- }
41
- importsMap[id2] = id2.replace(/^(\.\.\/)+/, "");
42
- const len = importName.length,
43
- extraLen = id2.length - len;
44
- source = source.slice(0, start + accumulatedSliceOffset) + id2 + source.slice(start + accumulatedSliceOffset + len), accumulatedSliceOffset += extraLen;
45
- }
46
- }
47
- if (source = (await swcTransform(id, source, {
48
- mode: "serve-cjs"
49
- }))?.code || "", !source) throw "\u274C no source";
50
- importsMap.currentPath = id;
51
- const hotUpdateSource = `exports = ((exports) => {
52
- const require = createRequire(${JSON.stringify(importsMap, null, 2)})
53
- ${source.replace("import.meta.hot.accept(() => {})", "").replaceAll(/import.meta.glob\(.*\)/gi, "globalThis['__importMetaGlobbed'] || {}")};
54
- return exports })({})`;
55
- process.env.DEBUG && console.info("Sending hot update", hotUpdateSource), hotUpdateCache.set(id, hotUpdateSource);
56
- } catch (err) {
57
- console.error("Error processing hmr update:", err);
58
- }
59
- }
60
- };
61
- }
62
- export { entryRoot, reactNativeHMRPlugin };
@@ -1,87 +0,0 @@
1
- import { readFile } from "node:fs/promises";
2
- import { dirname, join, resolve } from "node:path";
3
- import { buildReact, buildReactJSX, buildReactNative } from "@vxrn/react-native-prebuilt";
4
- import { resolveFile, isBuildingNativeBundle } from "./dev";
5
- async function swapPrebuiltReactModules(cacheDir) {
6
- const prebuilds = {
7
- reactJSX: join(cacheDir, "react-jsx-runtime.js"),
8
- react: join(cacheDir, "react.js"),
9
- reactNative: join(cacheDir, "react-native.js")
10
- };
11
- await pathExists(prebuilds.reactNative) || (console.info("Pre-building react, react-native react/jsx-runtime (one time cost)..."), await Promise.all([
12
- buildReactNative({
13
- entryPoints: [resolveFile("react-native")],
14
- outfile: prebuilds.reactNative
15
- }),
16
- buildReact({
17
- entryPoints: [resolveFile("react")],
18
- outfile: prebuilds.react
19
- }),
20
- buildReactJSX({
21
- entryPoints: [resolveFile("react/jsx-dev-runtime")],
22
- outfile: prebuilds.reactJSX
23
- })
24
- ]));
25
- const jsxRuntime = {
26
- // alias: 'virtual:react-jsx',
27
- alias: prebuilds.reactJSX,
28
- contents: await readFile(prebuilds.reactJSX, "utf-8")
29
- }, virtualModules = {
30
- "react-native": {
31
- // alias: 'virtual:react-native',
32
- alias: prebuilds.reactNative,
33
- contents: await readFile(prebuilds.reactNative, "utf-8")
34
- },
35
- react: {
36
- // alias: 'virtual:react',
37
- alias: prebuilds.react,
38
- contents: await readFile(prebuilds.react, "utf-8")
39
- },
40
- "react/jsx-runtime": jsxRuntime,
41
- "react/jsx-dev-runtime": jsxRuntime
42
- };
43
- return {
44
- name: "swap-react-native",
45
- enforce: "pre",
46
- resolveId(id, importer = "") {
47
- if (id.startsWith("react-native/Libraries"))
48
- return `virtual:rn-internals:${id}`;
49
- if (id === "react-native-web")
50
- return prebuilds.reactNative;
51
- for (const targetId in virtualModules)
52
- if (id === targetId || id.includes(`node_modules/${targetId}/`))
53
- return virtualModules[targetId].alias;
54
- if (isBuildingNativeBundle && id[0] === ".") {
55
- const absolutePath = resolve(dirname(importer), id), nativePath = absolutePath.replace(/(.m?js)/, ".native.js");
56
- if (nativePath === id)
57
- return;
58
- try {
59
- const directoryPath = absolutePath + "/index.native.js", directoryNonNativePath = absolutePath + "/index.js";
60
- if (pathExistsSync(directoryPath))
61
- return directoryPath;
62
- if (pathExistsSync(directoryNonNativePath))
63
- return directoryNonNativePath;
64
- if (pathExistsSync(nativePath))
65
- return nativePath;
66
- } catch (err) {
67
- console.warn("error probably fine", err);
68
- }
69
- }
70
- },
71
- load(id) {
72
- if (id.startsWith("virtual:rn-internals"))
73
- return `const ___val = __cachedModules["${id.replace("virtual:rn-internals:", "")}"]
74
- const ___defaultVal = ___val ? ___val.default || ___val : ___val
75
- export default ___defaultVal`;
76
- for (const targetId in virtualModules) {
77
- const info = virtualModules[targetId];
78
- if (id === info.alias)
79
- return info.contents;
80
- }
81
- }
82
- };
83
- }
84
- export {
85
- swapPrebuiltReactModules
86
- };
87
- //# sourceMappingURL=swapPrebuiltReactModules.js.map
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/exports/swapPrebuiltReactModules.ts"],
4
- "mappings": "AAAA,SAAS,gBAAgB;AACzB,SAAS,SAAS,MAAM,eAAe;AACvC,SAAS,YAAY,eAAe,wBAAwB;AAE5D,SAAS,aAAa,8BAA8B;AAKpD,eAAsB,yBAAyB,UAAkB;AAC/D,QAAM,YAAY;AAAA,IAChB,UAAU,KAAK,UAAU,sBAAsB;AAAA,IAC/C,OAAO,KAAK,UAAU,UAAU;AAAA,IAChC,aAAa,KAAK,UAAU,iBAAiB;AAAA,EAC/C;AAEA,EAAM,MAAM,WAAW,UAAU,WAAW,MAC1C,QAAQ,KAAK,uEAAuE,GACpF,MAAM,QAAQ,IAAI;AAAA,IAChB,iBAAiB;AAAA,MACf,aAAa,CAAC,YAAY,cAAc,CAAC;AAAA,MACzC,SAAS,UAAU;AAAA,IACrB,CAAC;AAAA,IACD,WAAW;AAAA,MACT,aAAa,CAAC,YAAY,OAAO,CAAC;AAAA,MAClC,SAAS,UAAU;AAAA,IACrB,CAAC;AAAA,IACD,cAAc;AAAA,MACZ,aAAa,CAAC,YAAY,uBAAuB,CAAC;AAAA,MAClD,SAAS,UAAU;AAAA,IACrB,CAAC;AAAA,EACH,CAAC;AAIH,QAAM,aAAa;AAAA;AAAA,IAEjB,OAAO,UAAU;AAAA,IACjB,UAAU,MAAM,SAAS,UAAU,UAAU,OAAO;AAAA,EACtD,GAEM,iBAAiB;AAAA,IACrB,gBAAgB;AAAA;AAAA,MAEd,OAAO,UAAU;AAAA,MACjB,UAAU,MAAM,SAAS,UAAU,aAAa,OAAO;AAAA,IACzD;AAAA,IACA,OAAO;AAAA;AAAA,MAEL,OAAO,UAAU;AAAA,MACjB,UAAU,MAAM,SAAS,UAAU,OAAO,OAAO;AAAA,IACnD;AAAA,IACA,qBAAqB;AAAA,IACrB,yBAAyB;AAAA,EAC3B;AAEA,SAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,IAET,UAAU,IAAI,WAAW,IAAI;AAC3B,UAAI,GAAG,WAAW,wBAAwB;AACxC,eAAO,wBAAwB,EAAE;AAInC,UAAI,OAAO;AACT,eAAO,UAAU;AAGnB,iBAAW,YAAY;AACrB,YAAI,OAAO,YAAY,GAAG,SAAS,gBAAgB,QAAQ,GAAG;AAG5D,iBAFa,eAAe,QAAQ,EAExB;AAQhB,UAAI,0BACE,GAAG,CAAC,MAAM,KAAK;AACjB,cAAM,eAAe,QAAQ,QAAQ,QAAQ,GAAG,EAAE,GAC5C,aAAa,aAAa,QAAQ,WAAW,YAAY;AAC/D,YAAI,eAAe;AAAI;AACvB,YAAI;AACF,gBAAM,gBAAgB,eAAe,oBAC/B,yBAAyB,eAAe;AAC9C,cAAI,eAAe,aAAa;AAC9B,mBAAO;AAET,cAAI,eAAe,sBAAsB;AACvC,mBAAO;AAET,cAAI,eAAe,UAAU;AAC3B,mBAAO;AAAA,QAEX,SAAS,KAAK;AACZ,kBAAQ,KAAK,uBAAuB,GAAG;AAAA,QACzC;AAAA,MACF;AAAA,IAEJ;AAAA,IAEA,KAAK,IAAI;AACP,UAAI,GAAG,WAAW,sBAAsB;AAKtC,eAHU,mCADI,GAAG,QAAQ,yBAAyB,EAAE,CACF;AAAA;AAAA;AAMpD,iBAAW,YAAY,gBAAgB;AACrC,cAAM,OAAO,eAAe,QAAuC;AACnE,YAAI,OAAO,KAAK;AACd,iBAAO,KAAK;AAAA,MAEhB;AAAA,IACF;AAAA,EACF;AACF;",
5
- "names": []
6
- }
@@ -1,73 +0,0 @@
1
- import { readFile } from "node:fs/promises";
2
- import { dirname, join, resolve } from "node:path";
3
- import { buildReact, buildReactJSX, buildReactNative } from "@vxrn/react-native-prebuilt";
4
- import { resolveFile, isBuildingNativeBundle } from "./dev.mjs";
5
- async function swapPrebuiltReactModules(cacheDir) {
6
- const prebuilds = {
7
- reactJSX: join(cacheDir, "react-jsx-runtime.js"),
8
- react: join(cacheDir, "react.js"),
9
- reactNative: join(cacheDir, "react-native.js")
10
- };
11
- (await pathExists(prebuilds.reactNative)) || (console.info("Pre-building react, react-native react/jsx-runtime (one time cost)..."), await Promise.all([buildReactNative({
12
- entryPoints: [resolveFile("react-native")],
13
- outfile: prebuilds.reactNative
14
- }), buildReact({
15
- entryPoints: [resolveFile("react")],
16
- outfile: prebuilds.react
17
- }), buildReactJSX({
18
- entryPoints: [resolveFile("react/jsx-dev-runtime")],
19
- outfile: prebuilds.reactJSX
20
- })]));
21
- const jsxRuntime = {
22
- // alias: 'virtual:react-jsx',
23
- alias: prebuilds.reactJSX,
24
- contents: await readFile(prebuilds.reactJSX, "utf-8")
25
- },
26
- virtualModules = {
27
- "react-native": {
28
- // alias: 'virtual:react-native',
29
- alias: prebuilds.reactNative,
30
- contents: await readFile(prebuilds.reactNative, "utf-8")
31
- },
32
- react: {
33
- // alias: 'virtual:react',
34
- alias: prebuilds.react,
35
- contents: await readFile(prebuilds.react, "utf-8")
36
- },
37
- "react/jsx-runtime": jsxRuntime,
38
- "react/jsx-dev-runtime": jsxRuntime
39
- };
40
- return {
41
- name: "swap-react-native",
42
- enforce: "pre",
43
- resolveId(id, importer = "") {
44
- if (id.startsWith("react-native/Libraries")) return `virtual:rn-internals:${id}`;
45
- if (id === "react-native-web") return prebuilds.reactNative;
46
- for (const targetId in virtualModules) if (id === targetId || id.includes(`node_modules/${targetId}/`)) return virtualModules[targetId].alias;
47
- if (isBuildingNativeBundle && id[0] === ".") {
48
- const absolutePath = resolve(dirname(importer), id),
49
- nativePath = absolutePath.replace(/(.m?js)/, ".native.js");
50
- if (nativePath === id) return;
51
- try {
52
- const directoryPath = absolutePath + "/index.native.js",
53
- directoryNonNativePath = absolutePath + "/index.js";
54
- if (pathExistsSync(directoryPath)) return directoryPath;
55
- if (pathExistsSync(directoryNonNativePath)) return directoryNonNativePath;
56
- if (pathExistsSync(nativePath)) return nativePath;
57
- } catch (err) {
58
- console.warn("error probably fine", err);
59
- }
60
- }
61
- },
62
- load(id) {
63
- if (id.startsWith("virtual:rn-internals")) return `const ___val = __cachedModules["${id.replace("virtual:rn-internals:", "")}"]
64
- const ___defaultVal = ___val ? ___val.default || ___val : ___val
65
- export default ___defaultVal`;
66
- for (const targetId in virtualModules) {
67
- const info = virtualModules[targetId];
68
- if (id === info.alias) return info.contents;
69
- }
70
- }
71
- };
72
- }
73
- export { swapPrebuiltReactModules };
@@ -1,7 +0,0 @@
1
- function uniq(a) {
2
- return [...new Set(a)];
3
- }
4
- export {
5
- uniq
6
- };
7
- //# sourceMappingURL=uniq.js.map
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/exports/uniq.ts"],
4
- "mappings": "AAAO,SAAS,KAAK,GAAU;AAC7B,SAAO,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;AACvB;",
5
- "names": []
6
- }
@@ -1,4 +0,0 @@
1
- function uniq(a) {
2
- return [...new Set(a)];
3
- }
4
- export { uniq };
@@ -1,33 +0,0 @@
1
- function getHtml({
2
- template,
3
- loaderData,
4
- loaderProps,
5
- appHtml,
6
- headHtml,
7
- css,
8
- preloads
9
- }) {
10
- if (!template.includes("<!--ssr-outlet-->"))
11
- throw new Error("No <!--ssr-outlet--> found in html to inject SSR contents");
12
- if (!template.includes("<!--head-outlet-->"))
13
- throw new Error("No <!--head-outlet--> found in html to inject SSR contents");
14
- const loaderDataJS = `globalThis['__vxrnLoaderData__']=${JSON.stringify(loaderData)}`, loaderPropsJS = `globalThis['__vxrnLoaderProps__']=${JSON.stringify(loaderProps || null)}`, loaderDataString = `
15
- <script>
16
- ${loaderDataJS};
17
- ${loaderPropsJS};
18
- </script>`;
19
- return template.replace(/\s*<!--ssr-outlet-->\s*/, appHtml).replace(
20
- "<!--head-outlet-->",
21
- [
22
- headHtml,
23
- `<style>${css}</style>
24
- `,
25
- ...preloads.map((src) => `<link rel="modulepreload" href="${src}" />`)
26
- ].join(`
27
- `)
28
- ).replace("</body>", loaderDataString);
29
- }
30
- export {
31
- getHtml
32
- };
33
- //# sourceMappingURL=getHtml.js.map
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/utils/getHtml.ts"],
4
- "mappings": "AACO,SAAS,QAAQ;AAAA,EACtB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAQG;AACD,MAAI,CAAC,SAAS,SAAS,mBAAmB;AACxC,UAAM,IAAI,MAAM,2DAA2D;AAE7E,MAAI,CAAC,SAAS,SAAS,oBAAoB;AACzC,UAAM,IAAI,MAAM,4DAA4D;AAG9E,QAAM,eAAe,oCAAoC,KAAK,UAAU,UAAU,CAAC,IAC7E,gBAAgB,qCAAqC,KAAK,UAAU,eAAe,IAAI,CAAC,IACxF,mBAAmB;AAAA;AAAA,MACrB,YAAY;AAAA,MACZ,aAAa;AAAA;AAGjB,SAAO,SACJ,QAAQ,2BAA2B,OAAO,EAC1C;AAAA,IACC;AAAA,IACA;AAAA,MACE;AAAA,MACA,UAAU,GAAG;AAAA;AAAA,MACb,GAAG,SAAS,IAAI,CAAC,QAAQ,mCAAmC,GAAG,MAAM;AAAA,IACvE,EAAE,KAAK;AAAA,GAAM;AAAA,EACf,EACC,QAAQ,WAAW,gBAAgB;AACxC;",
5
- "names": []
6
- }
@@ -1,23 +0,0 @@
1
- function getHtml({
2
- template,
3
- loaderData,
4
- loaderProps,
5
- appHtml,
6
- headHtml,
7
- css,
8
- preloads
9
- }) {
10
- if (!template.includes("<!--ssr-outlet-->")) throw new Error("No <!--ssr-outlet--> found in html to inject SSR contents");
11
- if (!template.includes("<!--head-outlet-->")) throw new Error("No <!--head-outlet--> found in html to inject SSR contents");
12
- const loaderDataJS = `globalThis['__vxrnLoaderData__']=${JSON.stringify(loaderData)}`,
13
- loaderPropsJS = `globalThis['__vxrnLoaderProps__']=${JSON.stringify(loaderProps || null)}`,
14
- loaderDataString = `
15
- <script>
16
- ${loaderDataJS};
17
- ${loaderPropsJS};
18
- </script>`;
19
- return template.replace(/\s*<!--ssr-outlet-->\s*/, appHtml).replace("<!--head-outlet-->", [headHtml, `<style>${css}</style>
20
- `, ...preloads.map(src => `<link rel="modulepreload" href="${src}" />`)].join(`
21
- `)).replace("</body>", loaderDataString);
22
- }
23
- export { getHtml };
@@ -1,55 +0,0 @@
1
- function _array_like_to_array(arr, len) {
2
- (len == null || len > arr.length) && (len = arr.length);
3
- for (var i = 0, arr2 = new Array(len); i < len; i++)
4
- arr2[i] = arr[i];
5
- return arr2;
6
- }
7
- function _array_without_holes(arr) {
8
- if (Array.isArray(arr))
9
- return _array_like_to_array(arr);
10
- }
11
- function _iterable_to_array(iter) {
12
- if (typeof Symbol < "u" && iter[Symbol.iterator] != null || iter["@@iterator"] != null)
13
- return Array.from(iter);
14
- }
15
- function _non_iterable_spread() {
16
- throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
17
- }
18
- function _to_consumable_array(arr) {
19
- return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
20
- }
21
- function _unsupported_iterable_to_array(o, minLen) {
22
- if (o) {
23
- if (typeof o == "string")
24
- return _array_like_to_array(o, minLen);
25
- var n = Object.prototype.toString.call(o).slice(8, -1);
26
- if (n === "Object" && o.constructor && (n = o.constructor.name), n === "Map" || n === "Set")
27
- return Array.from(n);
28
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))
29
- return _array_like_to_array(o, minLen);
30
- }
31
- }
32
- function getHtml(param) {
33
- var template = param.template, loaderData = param.loaderData, loaderProps = param.loaderProps, appHtml = param.appHtml, headHtml = param.headHtml, css = param.css, preloads = param.preloads;
34
- if (!template.includes("<!--ssr-outlet-->"))
35
- throw new Error("No <!--ssr-outlet--> found in html to inject SSR contents");
36
- if (!template.includes("<!--head-outlet-->"))
37
- throw new Error("No <!--head-outlet--> found in html to inject SSR contents");
38
- var loaderDataJS = "globalThis['__vxrnLoaderData__']=".concat(JSON.stringify(loaderData)), loaderPropsJS = "globalThis['__vxrnLoaderProps__']=".concat(JSON.stringify(loaderProps || null)), loaderDataString = `
39
- <script>
40
- `.concat(loaderDataJS, `;
41
- `).concat(loaderPropsJS, `;
42
- </script>`);
43
- return template.replace(/\s*<!--ssr-outlet-->\s*/, appHtml).replace("<!--head-outlet-->", [
44
- headHtml,
45
- "<style>".concat(css, `</style>
46
- `)
47
- ].concat(_to_consumable_array(preloads.map(function(src) {
48
- return '<link rel="modulepreload" href="'.concat(src, '" />');
49
- }))).join(`
50
- `)).replace("</body>", loaderDataString);
51
- }
52
- export {
53
- getHtml
54
- };
55
- //# sourceMappingURL=getHtml.js.map
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../src/utils/Users/n8/vxrn/packages/vxrn/src/utils/getHtml.ts"],
4
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACO,SAASA,QAAQ,OAgBvB;MAfCC,WADsB,MACtBA,UACAC,aAFsB,MAEtBA,YACAC,cAHsB,MAGtBA,aACAC,UAJsB,MAItBA,SACAC,WALsB,MAKtBA,UACAC,MANsB,MAMtBA,KACAC,WAPsB,MAOtBA;AAUA,MAAI,CAACN,SAASO,SAAU,mBAAA;AACtB,UAAM,IAAIC,MAAO,2DAAA;AAEnB,MAAI,CAACR,SAASO,SAAU,oBAAA;AACtB,UAAM,IAAIC,MAAO,4DAAA;AAGnB,MAAMC,eAAgB,oCAA8D,OAA3BC,KAAKC,UAAUV,UAAAA,CAAAA,GAClEW,gBAAiB,qCAAwE,OAApCF,KAAKC,UAAUT,eAAe,IAAA,CAAA,GACnFW,mBAAoB;;MAEtBD,OADAH,cAAa;KAAA,EACC,OAAdG,eAAc;YAAA;AAGlB,SAAOZ,SACJc,QAAQ,2BAA2BX,OAAAA,EACnCW,QACE,sBACD;IACEV;IACC,UAAa,OAAJC,KAAI;CAAA;IAFhB,OAGE,qBAAGC,SAASS,IAAI,SAACC,KAAAA;WAAS,mCAAsC,OAAJA,KAAI,MAAA;OAChEC,KAAK;GAAA,CAAA,EAERH,QAAQ,WAAWD,gBAAAA;AACxB;",
5
- "names": ["getHtml", "template", "loaderData", "loaderProps", "appHtml", "headHtml", "css", "preloads", "includes", "Error", "loaderDataJS", "JSON", "stringify", "loaderPropsJS", "loaderDataString", "replace", "map", "src", "join"]
6
- }