vxrn 1.2.67 → 1.2.69

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 (127) hide show
  1. package/dist/plugins/autoPreBundleDepsForSsrPlugin.js +54 -0
  2. package/dist/plugins/autoPreBundleDepsForSsrPlugin.js.map +6 -0
  3. package/dist/plugins/autoPreBundleDepsForSsrPlugin.mjs +49 -0
  4. package/dist/plugins/autoPreBundleDepsForSsrPlugin.mjs.map +1 -0
  5. package/dist/plugins/autoPreBundleDepsForSsrPlugin.native.js +45 -0
  6. package/dist/plugins/autoPreBundleDepsForSsrPlugin.native.js.map +6 -0
  7. package/dist/plugins/babelReanimated.js +53 -0
  8. package/dist/plugins/babelReanimated.js.map +6 -0
  9. package/dist/plugins/babelReanimated.mjs +28 -0
  10. package/dist/plugins/babelReanimated.mjs.map +1 -0
  11. package/dist/plugins/babelReanimated.native.js +53 -0
  12. package/dist/plugins/babelReanimated.native.js.map +6 -0
  13. package/dist/serve/vercel.js +16 -0
  14. package/dist/serve/vercel.js.map +6 -0
  15. package/dist/serve/vercel.mjs +14 -0
  16. package/dist/serve/vercel.mjs.map +1 -0
  17. package/dist/serve/vercel.native.js +16 -0
  18. package/dist/serve/vercel.native.js.map +6 -0
  19. package/dist/utils/depPatches.js +266 -0
  20. package/dist/utils/depPatches.js.map +6 -0
  21. package/dist/utils/depPatches.mjs +219 -0
  22. package/dist/utils/depPatches.mjs.map +1 -0
  23. package/dist/utils/depPatches.native.js +264 -0
  24. package/dist/utils/depPatches.native.js.map +6 -0
  25. package/dist/utils/fork/vite/build.js +285 -0
  26. package/dist/utils/fork/vite/build.js.map +6 -0
  27. package/dist/utils/fork/vite/build.mjs +257 -0
  28. package/dist/utils/fork/vite/build.mjs.map +1 -0
  29. package/dist/utils/fork/vite/build.native.js +339 -0
  30. package/dist/utils/fork/vite/build.native.js.map +6 -0
  31. package/dist/utils/fork/vite/constants.js +31 -0
  32. package/dist/utils/fork/vite/constants.js.map +6 -0
  33. package/dist/utils/fork/vite/constants.mjs +3 -0
  34. package/dist/utils/fork/vite/constants.mjs.map +1 -0
  35. package/dist/utils/fork/vite/constants.native.js +31 -0
  36. package/dist/utils/fork/vite/constants.native.js.map +6 -0
  37. package/dist/utils/fork/vite/plugins.js +7 -0
  38. package/dist/utils/fork/vite/plugins.js.map +6 -0
  39. package/dist/utils/fork/vite/plugins.mjs +5 -0
  40. package/dist/utils/fork/vite/plugins.mjs.map +1 -0
  41. package/dist/utils/fork/vite/plugins.native.js +7 -0
  42. package/dist/utils/fork/vite/plugins.native.js.map +6 -0
  43. package/dist/utils/fork/vite/typeUtils.js +1 -0
  44. package/dist/utils/fork/vite/typeUtils.js.map +6 -0
  45. package/dist/utils/fork/vite/typeUtils.mjs +2 -0
  46. package/dist/utils/fork/vite/typeUtils.mjs.map +1 -0
  47. package/dist/utils/fork/vite/typeUtils.native.js +1 -0
  48. package/dist/utils/fork/vite/typeUtils.native.js.map +6 -0
  49. package/dist/utils/fork/vite/utils.js +12 -0
  50. package/dist/utils/fork/vite/utils.js.map +6 -0
  51. package/dist/utils/fork/vite/utils.mjs +9 -0
  52. package/dist/utils/fork/vite/utils.mjs.map +1 -0
  53. package/dist/utils/fork/vite/utils.native.js +12 -0
  54. package/dist/utils/fork/vite/utils.native.js.map +6 -0
  55. package/dist/utils/getBaseViteConfig.js +88 -0
  56. package/dist/utils/getBaseViteConfig.js.map +6 -0
  57. package/dist/utils/getBaseViteConfig.mjs +67 -0
  58. package/dist/utils/getBaseViteConfig.mjs.map +1 -0
  59. package/dist/utils/getBaseViteConfig.native.js +92 -0
  60. package/dist/utils/getBaseViteConfig.native.js.map +6 -0
  61. package/dist/utils/getOptimizeDeps.js +164 -0
  62. package/dist/utils/getOptimizeDeps.js.map +6 -0
  63. package/dist/utils/getOptimizeDeps.mjs +24 -0
  64. package/dist/utils/getOptimizeDeps.mjs.map +1 -0
  65. package/dist/utils/getOptimizeDeps.native.js +169 -0
  66. package/dist/utils/getOptimizeDeps.native.js.map +6 -0
  67. package/dist/utils/getOptionsFilled.js +64 -0
  68. package/dist/utils/getOptionsFilled.js.map +6 -0
  69. package/dist/utils/getOptionsFilled.mjs +75 -0
  70. package/dist/utils/getOptionsFilled.mjs.map +1 -0
  71. package/dist/utils/getOptionsFilled.native.js +74 -0
  72. package/dist/utils/getOptionsFilled.native.js.map +6 -0
  73. package/dist/utils/getReactNativeConfig.js +191 -0
  74. package/dist/utils/getReactNativeConfig.js.map +6 -0
  75. package/dist/utils/getReactNativeConfig.mjs +177 -0
  76. package/dist/utils/getReactNativeConfig.mjs.map +1 -0
  77. package/dist/utils/getReactNativeConfig.native.js +209 -0
  78. package/dist/utils/getReactNativeConfig.native.js.map +6 -0
  79. package/dist/utils/getViteServerConfig.js +106 -0
  80. package/dist/utils/getViteServerConfig.js.map +6 -0
  81. package/dist/utils/getViteServerConfig.mjs +101 -0
  82. package/dist/utils/getViteServerConfig.mjs.map +1 -0
  83. package/dist/utils/getViteServerConfig.native.js +105 -0
  84. package/dist/utils/getViteServerConfig.native.js.map +6 -0
  85. package/dist/utils/mergeUserConfig.js +46 -0
  86. package/dist/utils/mergeUserConfig.js.map +6 -0
  87. package/dist/utils/mergeUserConfig.mjs +21 -0
  88. package/dist/utils/mergeUserConfig.mjs.map +1 -0
  89. package/dist/utils/mergeUserConfig.native.js +48 -0
  90. package/dist/utils/mergeUserConfig.native.js.map +6 -0
  91. package/dist/utils/prependMiddleware.js +7 -0
  92. package/dist/utils/prependMiddleware.js.map +6 -0
  93. package/dist/utils/prependMiddleware.mjs +5 -0
  94. package/dist/utils/prependMiddleware.mjs.map +1 -0
  95. package/dist/utils/prependMiddleware.native.js +7 -0
  96. package/dist/utils/prependMiddleware.native.js.map +6 -0
  97. package/dist/utils/readVXRNConfig.js +32 -0
  98. package/dist/utils/readVXRNConfig.js.map +6 -0
  99. package/dist/utils/readVXRNConfig.mjs +29 -0
  100. package/dist/utils/readVXRNConfig.mjs.map +1 -0
  101. package/dist/utils/readVXRNConfig.native.js +34 -0
  102. package/dist/utils/readVXRNConfig.native.js.map +6 -0
  103. package/dist/utils/scanDepsToPreBundleForSsr.js +94 -0
  104. package/dist/utils/scanDepsToPreBundleForSsr.js.map +6 -0
  105. package/dist/utils/scanDepsToPreBundleForSsr.mjs +65 -0
  106. package/dist/utils/scanDepsToPreBundleForSsr.mjs.map +1 -0
  107. package/dist/utils/scanDepsToPreBundleForSsr.native.js +99 -0
  108. package/dist/utils/scanDepsToPreBundleForSsr.native.js.map +6 -0
  109. package/package.json +12 -12
  110. package/types/plugins/autoPreBundleDepsForSsrPlugin.d.ts.map +1 -0
  111. package/types/plugins/babelReanimated.d.ts.map +1 -0
  112. package/types/serve/vercel.d.ts.map +1 -0
  113. package/types/utils/depPatches.d.ts.map +1 -0
  114. package/types/utils/fork/vite/build.d.ts.map +1 -0
  115. package/types/utils/fork/vite/constants.d.ts.map +1 -0
  116. package/types/utils/fork/vite/plugins.d.ts.map +1 -0
  117. package/types/utils/fork/vite/typeUtils.d.ts.map +1 -0
  118. package/types/utils/fork/vite/utils.d.ts.map +1 -0
  119. package/types/utils/getBaseViteConfig.d.ts.map +1 -0
  120. package/types/utils/getOptimizeDeps.d.ts.map +1 -0
  121. package/types/utils/getOptionsFilled.d.ts.map +1 -0
  122. package/types/utils/getReactNativeConfig.d.ts.map +1 -0
  123. package/types/utils/getViteServerConfig.d.ts.map +1 -0
  124. package/types/utils/mergeUserConfig.d.ts.map +1 -0
  125. package/types/utils/prependMiddleware.d.ts.map +1 -0
  126. package/types/utils/readVXRNConfig.d.ts.map +1 -0
  127. package/types/utils/scanDepsToPreBundleForSsr.d.ts.map +1 -0
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/utils/getReactNativeConfig.ts"],
4
+ "mappings": "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",
5
+ "names": []
6
+ }
@@ -0,0 +1,177 @@
1
+ import nodeResolve from "@rollup/plugin-node-resolve";
2
+ import viteNativeSWC, { swcTransform } from "@vxrn/vite-native-swc";
3
+ import { stat } from "node:fs/promises";
4
+ import { dirname, join } from "node:path";
5
+ import { resolveConfig, transformWithEsbuild } from "vite";
6
+ import { DEFAULT_ASSET_EXTS } from "../constants/defaults.mjs";
7
+ import { getBabelReanimatedPlugin } from "../plugins/babelReanimated.mjs";
8
+ import { nativeClientInjectPlugin } from "../plugins/clientInjectPlugin.mjs";
9
+ import { reactNativeCommonJsPlugin } from "../plugins/reactNativeCommonJsPlugin.mjs";
10
+ import { reactNativeDevAssetPlugin } from "../plugins/reactNativeDevAssetPlugin.mjs";
11
+ import { dedupe } from "./getBaseViteConfig.mjs";
12
+ import { getOptimizeDeps } from "./getOptimizeDeps.mjs";
13
+ import { swapPrebuiltReactModules } from "./swapPrebuiltReactModules.mjs";
14
+ const IGNORE_ROLLUP_LOGS_RE = /vite-native-client\/dist\/esm\/client|node_modules\/\.vxrn\/react-native|react-native-prebuilt\/vendor|one\/dist/;
15
+ async function getReactNativeConfig(options, internal = {
16
+ mode: "dev"
17
+ }) {
18
+ const {
19
+ root,
20
+ server: {
21
+ port
22
+ }
23
+ } = options,
24
+ {
25
+ optimizeDeps
26
+ } = getOptimizeDeps("build"),
27
+ {
28
+ mode
29
+ } = internal,
30
+ serverUrl = process.env.ONE_SERVER_URL || options.server.url;
31
+ let nativeBuildConfig = {
32
+ plugins: [...(globalThis.__vxrnAddNativePlugins || []), ...(mode === "dev" ? [nativeClientInjectPlugin()] : []),
33
+ // vite doesnt support importing from a directory but its so common in react native
34
+ // so lets make it work, and node resolve theoretically fixes but you have to pass in moduleDirs
35
+ // but we need this to work anywhere including in normal source files
36
+ {
37
+ name: "node-dir-imports",
38
+ enforce: "pre",
39
+ async resolveId(importee, importer) {
40
+ if (!importer || !importee.startsWith("./")) return null;
41
+ if (!importer?.includes("node_modules")) try {
42
+ const resolved = join(dirname(importer), importee);
43
+ if ((await stat(resolved)).isDirectory()) for (const ext of ["ts", "tsx", "mjs", "js"]) try {
44
+ const withExt = join(resolved, `index.${ext}`);
45
+ return await stat(withExt), withExt;
46
+ } catch {}
47
+ } catch {}
48
+ }
49
+ }, nodeResolve(), swapPrebuiltReactModules(options.cacheDir, {
50
+ // TODO: a better way to pass the mode (dev/prod) to PrebuiltReactModules
51
+ mode: internal.mode
52
+ }), reactNativeDevAssetPlugin({
53
+ projectRoot: options.root,
54
+ mode: internal.mode,
55
+ assetsDest: internal.assetsDest,
56
+ assetExts: DEFAULT_ASSET_EXTS
57
+ }), getBabelReanimatedPlugin(), reactNativeCommonJsPlugin({
58
+ root,
59
+ port,
60
+ mode: "build"
61
+ }),
62
+ // Avoid "failed to read input source map: failed to parse inline source map url" errors on certain packages, such as react-native-reanimated.
63
+ {
64
+ name: "remove-inline-source-maps",
65
+ transform: {
66
+ order: "pre",
67
+ async handler(code, id) {
68
+ if (!id.includes("react-native-reanimated")) return null;
69
+ const inlineSourceMapIndex = code.lastIndexOf("//# sourceMappingURL=");
70
+ return inlineSourceMapIndex >= 0 ? code.slice(0, inlineSourceMapIndex).trimEnd() : null;
71
+ }
72
+ }
73
+ }, viteNativeSWC({
74
+ tsDecorators: !0,
75
+ mode: "build",
76
+ production: mode === "prod"
77
+ }),
78
+ // TODO i think this probably should be a swc plugin (has to be wasm-rust unfortuantely)
79
+ // but luckily not too bad because its pretty simple: if export type, export let object
80
+ // and a basic check for if any other export exists that is already there
81
+ {
82
+ name: "one-node-module-transforms",
83
+ transform: {
84
+ order: "pre",
85
+ async handler(code, id) {
86
+ const isNodeModule = id.includes("node_modules");
87
+ if (isNodeModule && /\.tsx?$/.test(id)) {
88
+ const typeExportsMatch = code.match(/^\s*export\s+type\s+([^\s]+)/gi),
89
+ output = await swcTransform(id, code, {
90
+ mode: mode === "dev" ? "serve" : "build"
91
+ });
92
+ if (!output) return null;
93
+ let codeOut = output.code;
94
+ if (typeExportsMatch) for (const typeExport of Array.from(typeExportsMatch)) {
95
+ const [_export, _type, name] = typeExport.split(/\s+/);
96
+ if (!new RegExp(`export (const|let|class|function) ${name}\\s+`).test(codeOut)) {
97
+ const fakeExport = `export let ${name} = {};`;
98
+ codeOut += `
99
+ ${fakeExport}
100
+ `;
101
+ }
102
+ }
103
+ return {
104
+ code: codeOut,
105
+ map: output.map
106
+ };
107
+ }
108
+ if (isNodeModule && (id.includes("node_modules/expo-") || id.includes("node_modules/@expo/"))) return transformWithEsbuild(code, id, {
109
+ loader: "jsx",
110
+ jsx: "automatic"
111
+ });
112
+ }
113
+ }
114
+ }].filter(Boolean),
115
+ appType: "custom",
116
+ root,
117
+ clearScreen: !1,
118
+ optimizeDeps: {
119
+ ...optimizeDeps,
120
+ esbuildOptions: {
121
+ jsx: "automatic"
122
+ }
123
+ },
124
+ resolve: {
125
+ dedupe
126
+ },
127
+ mode: mode === "dev" ? "development" : "production",
128
+ define: {
129
+ "process.env.NODE_ENV": mode === "dev" ? '"development"' : '"production"',
130
+ "process.env.ONE_SERVER_URL": JSON.stringify(serverUrl)
131
+ },
132
+ build: {
133
+ ssr: !1,
134
+ minify: !1,
135
+ commonjsOptions: {
136
+ transformMixedEsModules: !0,
137
+ ignore(id) {
138
+ return id === "react/jsx-runtime" || id === "react/jsx-dev-runtime";
139
+ }
140
+ },
141
+ rollupOptions: {
142
+ input: options.entries.native,
143
+ treeshake: !1,
144
+ preserveEntrySignatures: "strict",
145
+ output: {
146
+ preserveModules: !0,
147
+ format: "cjs"
148
+ },
149
+ onwarn(message, warn) {
150
+ if (!process.env.DEBUG?.startsWith("vxrn") && (message.code === "MODULE_LEVEL_DIRECTIVE" || message.code === "INVALID_ANNOTATION" || message.code === "MISSING_EXPORT" || message.code === "SOURCEMAP_ERROR")) {
151
+ warnAboutSuppressingLogsOnce();
152
+ return;
153
+ }
154
+ warn(message);
155
+ },
156
+ onLog(level, log, handler) {
157
+ if (!process.env.DEBUG?.startsWith("vxrn") && IGNORE_ROLLUP_LOGS_RE.test(log.message)) {
158
+ warnAboutSuppressingLogsOnce();
159
+ return;
160
+ }
161
+ handler(level, log);
162
+ }
163
+ }
164
+ }
165
+ };
166
+ return resolvedConfig = await resolveConfig(nativeBuildConfig, "build"), nativeBuildConfig;
167
+ }
168
+ let resolvedConfig = null;
169
+ function getReactNativeResolvedConfig() {
170
+ return resolvedConfig;
171
+ }
172
+ let didWarnSuppressingLogs = !1;
173
+ function warnAboutSuppressingLogsOnce() {
174
+ didWarnSuppressingLogs || (didWarnSuppressingLogs = !0);
175
+ }
176
+ export { getReactNativeConfig, getReactNativeResolvedConfig };
177
+ //# sourceMappingURL=getReactNativeConfig.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["nodeResolve","viteNativeSWC","swcTransform","stat","dirname","join","resolveConfig","transformWithEsbuild","DEFAULT_ASSET_EXTS","getBabelReanimatedPlugin","nativeClientInjectPlugin","reactNativeCommonJsPlugin","reactNativeDevAssetPlugin","dedupe","getOptimizeDeps","swapPrebuiltReactModules","IGNORE_ROLLUP_LOGS_RE","getReactNativeConfig","options","internal","mode","root","server","port","optimizeDeps","serverUrl","process","env","ONE_SERVER_URL","url","nativeBuildConfig","plugins","globalThis","__vxrnAddNativePlugins","name","enforce","resolveId","importee","importer","startsWith","includes","resolved","isDirectory","ext","withExt","cacheDir","projectRoot","assetsDest","assetExts","transform","order","handler","code","id","inlineSourceMapIndex","lastIndexOf","slice","trimEnd","tsDecorators","production","isNodeModule","test","typeExportsMatch","match","output","codeOut","typeExport","Array","from","_export","_type","split","RegExp","fakeExport","map","loader","jsx","filter","Boolean","appType","clearScreen","esbuildOptions","resolve","define","JSON","stringify","build","ssr","minify","commonjsOptions","transformMixedEsModules","ignore","rollupOptions","input","entries","native","treeshake","preserveEntrySignatures","preserveModules","format","onwarn","message","warn","DEBUG","warnAboutSuppressingLogsOnce","onLog","level","log","resolvedConfig","getReactNativeResolvedConfig","didWarnSuppressingLogs"],"sources":["../../src/utils/getReactNativeConfig.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,209 @@
1
+ import nodeResolve from "@rollup/plugin-node-resolve";
2
+ import viteNativeSWC, { swcTransform } from "@vxrn/vite-native-swc";
3
+ import { stat } from "node:fs/promises";
4
+ import { dirname, join } from "node:path";
5
+ import { resolveConfig, transformWithEsbuild } from "vite";
6
+ import { DEFAULT_ASSET_EXTS } from "../constants/defaults";
7
+ import { getBabelReanimatedPlugin } from "../plugins/babelReanimated";
8
+ import { nativeClientInjectPlugin } from "../plugins/clientInjectPlugin";
9
+ import { reactNativeCommonJsPlugin } from "../plugins/reactNativeCommonJsPlugin";
10
+ import { reactNativeDevAssetPlugin } from "../plugins/reactNativeDevAssetPlugin";
11
+ import { dedupe } from "./getBaseViteConfig";
12
+ import { getOptimizeDeps } from "./getOptimizeDeps";
13
+ import { swapPrebuiltReactModules } from "./swapPrebuiltReactModules";
14
+ var IGNORE_ROLLUP_LOGS_RE = /vite-native-client\/dist\/esm\/client|node_modules\/\.vxrn\/react-native|react-native-prebuilt\/vendor|one\/dist/;
15
+ async function getReactNativeConfig(options) {
16
+ var internal = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {
17
+ mode: "dev"
18
+ }, { root, server: { port } } = options, { optimizeDeps } = getOptimizeDeps("build"), { mode } = internal, serverUrl = process.env.ONE_SERVER_URL || options.server.url, nativeBuildConfig = {
19
+ plugins: [
20
+ ...globalThis.__vxrnAddNativePlugins || [],
21
+ ...mode === "dev" ? [
22
+ nativeClientInjectPlugin()
23
+ ] : [],
24
+ // vite doesnt support importing from a directory but its so common in react native
25
+ // so lets make it work, and node resolve theoretically fixes but you have to pass in moduleDirs
26
+ // but we need this to work anywhere including in normal source files
27
+ {
28
+ name: "node-dir-imports",
29
+ enforce: "pre",
30
+ async resolveId(importee, importer) {
31
+ if (!importer || !importee.startsWith("./"))
32
+ return null;
33
+ if (!importer?.includes("node_modules"))
34
+ try {
35
+ var resolved = join(dirname(importer), importee);
36
+ if ((await stat(resolved)).isDirectory())
37
+ for (var _i = 0, _iter = [
38
+ "ts",
39
+ "tsx",
40
+ "mjs",
41
+ "js"
42
+ ]; _i < _iter.length; _i++) {
43
+ var ext = _iter[_i];
44
+ try {
45
+ var withExt = join(resolved, `index.${ext}`);
46
+ return await stat(withExt), withExt;
47
+ } catch {
48
+ }
49
+ }
50
+ } catch {
51
+ }
52
+ }
53
+ },
54
+ // not a dir keep going
55
+ nodeResolve(),
56
+ swapPrebuiltReactModules(options.cacheDir, {
57
+ // TODO: a better way to pass the mode (dev/prod) to PrebuiltReactModules
58
+ mode: internal.mode
59
+ }),
60
+ reactNativeDevAssetPlugin({
61
+ projectRoot: options.root,
62
+ mode: internal.mode,
63
+ assetsDest: internal.assetsDest,
64
+ assetExts: DEFAULT_ASSET_EXTS
65
+ }),
66
+ getBabelReanimatedPlugin(),
67
+ reactNativeCommonJsPlugin({
68
+ root,
69
+ port,
70
+ mode: "build"
71
+ }),
72
+ // Avoid "failed to read input source map: failed to parse inline source map url" errors on certain packages, such as react-native-reanimated.
73
+ {
74
+ name: "remove-inline-source-maps",
75
+ transform: {
76
+ order: "pre",
77
+ async handler(code, id) {
78
+ if (!id.includes("react-native-reanimated"))
79
+ return null;
80
+ var inlineSourceMapIndex = code.lastIndexOf("//# sourceMappingURL=");
81
+ return inlineSourceMapIndex >= 0 ? code.slice(0, inlineSourceMapIndex).trimEnd() : null;
82
+ }
83
+ }
84
+ },
85
+ viteNativeSWC({
86
+ tsDecorators: !0,
87
+ mode: "build",
88
+ production: mode === "prod"
89
+ }),
90
+ // TODO i think this probably should be a swc plugin (has to be wasm-rust unfortuantely)
91
+ // but luckily not too bad because its pretty simple: if export type, export let object
92
+ // and a basic check for if any other export exists that is already there
93
+ {
94
+ name: "one-node-module-transforms",
95
+ transform: {
96
+ order: "pre",
97
+ async handler(code, id) {
98
+ var isNodeModule = id.includes("node_modules");
99
+ if (isNodeModule && /\.tsx?$/.test(id)) {
100
+ var typeExportsMatch = code.match(/^\s*export\s+type\s+([^\s]+)/gi), output = await swcTransform(id, code, {
101
+ mode: mode === "dev" ? "serve" : "build"
102
+ });
103
+ if (!output) return null;
104
+ var codeOut = output.code;
105
+ if (typeExportsMatch) {
106
+ var _iteratorNormalCompletion = !0, _didIteratorError = !1, _iteratorError = void 0;
107
+ try {
108
+ for (var _iterator = Array.from(typeExportsMatch)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
109
+ var typeExport = _step.value, [_export, _type, name] = typeExport.split(/\s+/), alreadyExported = new RegExp(`export (const|let|class|function) ${name}\\s+`).test(codeOut);
110
+ if (!alreadyExported) {
111
+ var fakeExport = `export let ${name} = {};`;
112
+ codeOut += `
113
+ ${fakeExport}
114
+ `;
115
+ }
116
+ }
117
+ } catch (err) {
118
+ _didIteratorError = !0, _iteratorError = err;
119
+ } finally {
120
+ try {
121
+ !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
122
+ } finally {
123
+ if (_didIteratorError)
124
+ throw _iteratorError;
125
+ }
126
+ }
127
+ }
128
+ return {
129
+ code: codeOut,
130
+ map: output.map
131
+ };
132
+ }
133
+ if (isNodeModule && (id.includes("node_modules/expo-") || id.includes("node_modules/@expo/")))
134
+ return transformWithEsbuild(code, id, {
135
+ loader: "jsx",
136
+ jsx: "automatic"
137
+ });
138
+ }
139
+ }
140
+ }
141
+ ].filter(Boolean),
142
+ appType: "custom",
143
+ root,
144
+ clearScreen: !1,
145
+ optimizeDeps: {
146
+ ...optimizeDeps,
147
+ esbuildOptions: {
148
+ jsx: "automatic"
149
+ }
150
+ },
151
+ resolve: {
152
+ dedupe
153
+ },
154
+ mode: mode === "dev" ? "development" : "production",
155
+ define: {
156
+ "process.env.NODE_ENV": mode === "dev" ? '"development"' : '"production"',
157
+ "process.env.ONE_SERVER_URL": JSON.stringify(serverUrl)
158
+ },
159
+ build: {
160
+ ssr: !1,
161
+ minify: !1,
162
+ commonjsOptions: {
163
+ transformMixedEsModules: !0,
164
+ ignore(id) {
165
+ return id === "react/jsx-runtime" || id === "react/jsx-dev-runtime";
166
+ }
167
+ },
168
+ rollupOptions: {
169
+ input: options.entries.native,
170
+ treeshake: !1,
171
+ preserveEntrySignatures: "strict",
172
+ output: {
173
+ preserveModules: !0,
174
+ format: "cjs"
175
+ },
176
+ onwarn(message, warn) {
177
+ var _process_env_DEBUG;
178
+ if (!(!((_process_env_DEBUG = process.env.DEBUG) === null || _process_env_DEBUG === void 0) && _process_env_DEBUG.startsWith("vxrn")) && (message.code === "MODULE_LEVEL_DIRECTIVE" || message.code === "INVALID_ANNOTATION" || message.code === "MISSING_EXPORT" || message.code === "SOURCEMAP_ERROR")) {
179
+ warnAboutSuppressingLogsOnce();
180
+ return;
181
+ }
182
+ warn(message);
183
+ },
184
+ onLog(level, log, handler) {
185
+ var _process_env_DEBUG;
186
+ if (!(!((_process_env_DEBUG = process.env.DEBUG) === null || _process_env_DEBUG === void 0) && _process_env_DEBUG.startsWith("vxrn")) && IGNORE_ROLLUP_LOGS_RE.test(log.message)) {
187
+ warnAboutSuppressingLogsOnce();
188
+ return;
189
+ }
190
+ handler(level, log);
191
+ }
192
+ }
193
+ }
194
+ };
195
+ return resolvedConfig = await resolveConfig(nativeBuildConfig, "build"), nativeBuildConfig;
196
+ }
197
+ var resolvedConfig = null;
198
+ function getReactNativeResolvedConfig() {
199
+ return resolvedConfig;
200
+ }
201
+ var didWarnSuppressingLogs = !1;
202
+ function warnAboutSuppressingLogsOnce() {
203
+ didWarnSuppressingLogs || (didWarnSuppressingLogs = !0);
204
+ }
205
+ export {
206
+ getReactNativeConfig,
207
+ getReactNativeResolvedConfig
208
+ };
209
+ //# sourceMappingURL=getReactNativeConfig.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/utils/Users/n8/one2/packages/vxrn/src/utils/getReactNativeConfig.ts"],
4
+ "mappings": "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",
5
+ "names": ["nodeResolve", "viteNativeSWC", "swcTransform", "stat", "dirname", "join", "resolveConfig", "transformWithEsbuild", "DEFAULT_ASSET_EXTS", "getBabelReanimatedPlugin", "nativeClientInjectPlugin", "reactNativeCommonJsPlugin", "reactNativeDevAssetPlugin", "dedupe", "getOptimizeDeps", "swapPrebuiltReactModules", "IGNORE_ROLLUP_LOGS_RE", "getReactNativeConfig", "options", "internal", "mode", "root", "server", "port", "optimizeDeps", "serverUrl", "process", "env", "ONE_SERVER_URL", "url", "nativeBuildConfig", "plugins", "globalThis", "__vxrnAddNativePlugins", "name", "enforce", "resolveId", "importee", "importer", "startsWith", "includes", "resolved", "isDirectory", "ext", "withExt", "cacheDir", "projectRoot", "assetsDest", "assetExts", "transform", "order", "handler", "code", "id", "inlineSourceMapIndex", "lastIndexOf", "slice", "trimEnd", "tsDecorators", "production", "isNodeModule", "test", "typeExportsMatch", "match", "output", "codeOut", "Array", "from", "typeExport", "_export", "_type", "split", "alreadyExported", "RegExp", "fakeExport", "map", "loader", "jsx", "filter", "Boolean", "appType", "clearScreen", "esbuildOptions", "resolve", "define", "JSON", "stringify", "build", "ssr", "minify", "commonjsOptions", "transformMixedEsModules", "ignore", "rollupOptions", "input", "entries", "native", "treeshake", "preserveEntrySignatures", "preserveModules", "format", "onwarn", "message", "warn", "DEBUG", "warnAboutSuppressingLogsOnce", "onLog", "level", "log", "resolvedConfig", "getReactNativeResolvedConfig", "didWarnSuppressingLogs"]
6
+ }
@@ -0,0 +1,106 @@
1
+ import { loadConfigFromFile, mergeConfig } from "vite";
2
+ import mkcert from "vite-plugin-mkcert";
3
+ import { webExtensions } from "../constants";
4
+ import { DEFAULT_ASSET_EXTS } from "../constants/defaults";
5
+ import { getServerConfigPlugin } from "../plugins/clientInjectPlugin";
6
+ import { expoManifestRequestHandlerPlugin } from "../plugins/expoManifestRequestHandlerPlugin";
7
+ import { reactNativeDevAssetPlugin } from "../plugins/reactNativeDevAssetPlugin";
8
+ import { reactNativeHMRPlugin } from "../plugins/reactNativeHMRPlugin";
9
+ import { getBaseViteConfig } from "./getBaseViteConfig";
10
+ import { getOptimizeDeps } from "./getOptimizeDeps";
11
+ import { mergeUserConfig } from "./mergeUserConfig";
12
+ import { createReactNativeDevServerPlugin } from "../plugins/reactNativeDevServer";
13
+ async function getViteServerConfig(config) {
14
+ const { root, server } = config, { optimizeDeps } = getOptimizeDeps("serve"), { config: userViteConfig } = await loadConfigFromFile({
15
+ mode: config.mode === "development" ? "dev" : "prod",
16
+ command: "serve"
17
+ }) ?? {};
18
+ let serverConfig = mergeConfig(
19
+ getBaseViteConfig({
20
+ mode: config.mode,
21
+ projectRoot: root
22
+ }),
23
+ {
24
+ root,
25
+ appType: "custom",
26
+ clearScreen: !1,
27
+ publicDir: "public",
28
+ plugins: [
29
+ createReactNativeDevServerPlugin(config),
30
+ getServerConfigPlugin(),
31
+ server.https ? mkcert() : null,
32
+ // temp fix
33
+ // avoid logging the optimizeDeps we add that aren't in the app:
34
+ // likely we need a whole better solution to optimize deps
35
+ {
36
+ name: "avoid-optimize-logs",
37
+ configureServer() {
38
+ const ogWarn = console.warn;
39
+ console.warn = (...args) => {
40
+ if (!(typeof args[0] == "string" && args[0].startsWith("Failed to resolve dependency:")))
41
+ return ogWarn(...args);
42
+ };
43
+ }
44
+ },
45
+ reactNativeHMRPlugin({
46
+ ...config,
47
+ assetExts: DEFAULT_ASSET_EXTS
48
+ }),
49
+ expoManifestRequestHandlerPlugin({
50
+ projectRoot: root,
51
+ port: server.port
52
+ }),
53
+ reactNativeDevAssetPlugin({
54
+ projectRoot: root,
55
+ assetExts: DEFAULT_ASSET_EXTS
56
+ }),
57
+ // TODO very hacky/arbitrary
58
+ {
59
+ name: "process-env-ssr",
60
+ transform(code, id, options) {
61
+ if (!id.includes("node_modules") && code.includes("process.env.TAMAGUI_IS_SERVER"))
62
+ return code.replaceAll("process.env.TAMAGUI_IS_SERVER", `${!!options?.ssr}`);
63
+ }
64
+ }
65
+ ],
66
+ // needs to be web-only
67
+ // resolve: {
68
+ // alias: {
69
+ // // this is a relatively safe one as it should be 100% api surface compat that fixes ssr
70
+ // 'react-native-svg': requireResolve('@tamagui/react-native-svg'),
71
+ // },
72
+ // },
73
+ ssr: {
74
+ optimizeDeps
75
+ },
76
+ environments: {
77
+ client: {
78
+ dev: {
79
+ optimizeDeps: {
80
+ include: ["react-native-screens"],
81
+ esbuildOptions: {
82
+ resolveExtensions: webExtensions
83
+ }
84
+ }
85
+ }
86
+ }
87
+ },
88
+ server: {
89
+ hmr: {
90
+ path: "/__vxrnhmr"
91
+ },
92
+ cors: !0,
93
+ host: server.host,
94
+ port: server.port
95
+ }
96
+ }
97
+ );
98
+ const rerouteNoExternalConfig = userViteConfig?.ssr?.noExternal === !0;
99
+ return rerouteNoExternalConfig && delete userViteConfig.ssr.noExternal, serverConfig = mergeUserConfig(optimizeDeps, serverConfig, userViteConfig), rerouteNoExternalConfig && (serverConfig.ssr.noExternal = !0), process.env.DEBUG && console.debug("merged config:", JSON.stringify(serverConfig, null, 2), `
100
+ ----
101
+ `), serverConfig;
102
+ }
103
+ export {
104
+ getViteServerConfig
105
+ };
106
+ //# sourceMappingURL=getViteServerConfig.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/utils/getViteServerConfig.ts"],
4
+ "mappings": "AAAA,SAAS,oBAAoB,mBAAuD;AACpF,OAAO,YAAY;AACnB,SAAS,qBAAqB;AAC9B,SAAS,0BAA0B;AACnC,SAAS,6BAA6B;AACtC,SAAS,wCAAwC;AACjD,SAAS,iCAAiC;AAC1C,SAAS,4BAA4B;AACrC,SAAS,yBAAyB;AAClC,SAAS,uBAAuB;AAEhC,SAAS,uBAAuB;AAChC,SAAS,wCAAwC;AAEjD,eAAsB,oBAAoB,QAA2B;AACnE,QAAM,EAAE,MAAM,OAAO,IAAI,QACnB,EAAE,aAAa,IAAI,gBAAgB,OAAO,GAC1C,EAAE,QAAQ,eAAe,IAC5B,MAAM,mBAAmB;AAAA,IACxB,MAAM,OAAO,SAAS,gBAAgB,QAAQ;AAAA,IAC9C,SAAS;AAAA,EACX,CAAC,KAAM,CAAC;AAGV,MAAI,eAA2B;AAAA,IAC7B,kBAAkB;AAAA,MAChB,MAAM,OAAO;AAAA,MACb,aAAa;AAAA,IACf,CAAC;AAAA,IAED;AAAA,MACE;AAAA,MACA,SAAS;AAAA,MACT,aAAa;AAAA,MACb,WAAW;AAAA,MACX,SAAS;AAAA,QACP,iCAAiC,MAAM;AAAA,QAEvC,sBAAsB;AAAA,QAEtB,OAAO,QAAQ,OAAO,IAAI;AAAA;AAAA;AAAA;AAAA,QAK1B;AAAA,UACE,MAAM;AAAA,UAEN,kBAAkB;AAChB,kBAAM,SAAS,QAAQ;AACvB,oBAAQ,OAAO,IAAI,SAAgB;AACjC,kBACE,SAAO,KAAK,CAAC,KAAM,YACnB,KAAK,CAAC,EAAE,WAAW,+BAA+B;AAIpD,uBAAO,OAAO,GAAG,IAAI;AAAA,YACvB;AAAA,UACF;AAAA,QACF;AAAA,QAEA,qBAAqB;AAAA,UACnB,GAAG;AAAA,UACH,WAAW;AAAA,QACb,CAAC;AAAA,QAED,iCAAiC;AAAA,UAC/B,aAAa;AAAA,UACb,MAAM,OAAO;AAAA,QACf,CAAC;AAAA,QAED,0BAA0B;AAAA,UACxB,aAAa;AAAA,UACb,WAAW;AAAA,QACb,CAAC;AAAA;AAAA,QAGD;AAAA,UACE,MAAM;AAAA,UACN,UAAU,MAAM,IAAI,SAAS;AAC3B,gBAAI,IAAG,SAAS,cAAc,KAC1B,KAAK,SAAS,+BAA+B;AAC/C,qBAAO,KAAK,WAAW,iCAAiC,GAAG,CAAC,CAAC,SAAS,GAAG,EAAE;AAAA,UAE/E;AAAA,QACF;AAAA,MACF;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAUA,KAAK;AAAA,QACH;AAAA,MACF;AAAA,MAEA,cAAc;AAAA,QACZ,QAAQ;AAAA,UACN,KAAK;AAAA,YACH,cAAc;AAAA,cACZ,SAAS,CAAC,sBAAsB;AAAA,cAChC,gBAAgB;AAAA,gBACd,mBAAmB;AAAA,cACrB;AAAA,YACF;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,MAEA,QAAQ;AAAA,QACN,KAAK;AAAA,UACH,MAAM;AAAA,QACR;AAAA,QACA,MAAM;AAAA,QACN,MAAM,OAAO;AAAA,QACb,MAAM,OAAO;AAAA,MACf;AAAA,IACF;AAAA,EACF;AAEA,QAAM,0BAA0B,gBAAgB,KAAK,eAAe;AACpE,SAAI,2BACF,OAAO,eAAe,IAAK,YAG7B,eAAe,gBAAgB,cAAc,cAAc,cAAc,GAErE,4BACF,aAAa,IAAK,aAAa,KAI7B,QAAQ,IAAI,SAEd,QAAQ,MAAM,kBAAkB,KAAK,UAAU,cAAc,MAAM,CAAC,GAAG;AAAA;AAAA,CAAU,GAG5E;AACT;",
5
+ "names": []
6
+ }
@@ -0,0 +1,101 @@
1
+ import { loadConfigFromFile, mergeConfig } from "vite";
2
+ import mkcert from "vite-plugin-mkcert";
3
+ import { webExtensions } from "../constants.mjs";
4
+ import { DEFAULT_ASSET_EXTS } from "../constants/defaults.mjs";
5
+ import { getServerConfigPlugin } from "../plugins/clientInjectPlugin.mjs";
6
+ import { expoManifestRequestHandlerPlugin } from "../plugins/expoManifestRequestHandlerPlugin.mjs";
7
+ import { reactNativeDevAssetPlugin } from "../plugins/reactNativeDevAssetPlugin.mjs";
8
+ import { reactNativeHMRPlugin } from "../plugins/reactNativeHMRPlugin.mjs";
9
+ import { getBaseViteConfig } from "./getBaseViteConfig.mjs";
10
+ import { getOptimizeDeps } from "./getOptimizeDeps.mjs";
11
+ import { mergeUserConfig } from "./mergeUserConfig.mjs";
12
+ import { createReactNativeDevServerPlugin } from "../plugins/reactNativeDevServer.mjs";
13
+ async function getViteServerConfig(config) {
14
+ const {
15
+ root,
16
+ server
17
+ } = config,
18
+ {
19
+ optimizeDeps
20
+ } = getOptimizeDeps("serve"),
21
+ {
22
+ config: userViteConfig
23
+ } = (await loadConfigFromFile({
24
+ mode: config.mode === "development" ? "dev" : "prod",
25
+ command: "serve"
26
+ })) ?? {};
27
+ let serverConfig = mergeConfig(getBaseViteConfig({
28
+ mode: config.mode,
29
+ projectRoot: root
30
+ }), {
31
+ root,
32
+ appType: "custom",
33
+ clearScreen: !1,
34
+ publicDir: "public",
35
+ plugins: [createReactNativeDevServerPlugin(config), getServerConfigPlugin(), server.https ? mkcert() : null,
36
+ // temp fix
37
+ // avoid logging the optimizeDeps we add that aren't in the app:
38
+ // likely we need a whole better solution to optimize deps
39
+ {
40
+ name: "avoid-optimize-logs",
41
+ configureServer() {
42
+ const ogWarn = console.warn;
43
+ console.warn = (...args) => {
44
+ if (!(typeof args[0] == "string" && args[0].startsWith("Failed to resolve dependency:"))) return ogWarn(...args);
45
+ };
46
+ }
47
+ }, reactNativeHMRPlugin({
48
+ ...config,
49
+ assetExts: DEFAULT_ASSET_EXTS
50
+ }), expoManifestRequestHandlerPlugin({
51
+ projectRoot: root,
52
+ port: server.port
53
+ }), reactNativeDevAssetPlugin({
54
+ projectRoot: root,
55
+ assetExts: DEFAULT_ASSET_EXTS
56
+ }),
57
+ // TODO very hacky/arbitrary
58
+ {
59
+ name: "process-env-ssr",
60
+ transform(code, id, options) {
61
+ if (!id.includes("node_modules") && code.includes("process.env.TAMAGUI_IS_SERVER")) return code.replaceAll("process.env.TAMAGUI_IS_SERVER", `${!!options?.ssr}`);
62
+ }
63
+ }],
64
+ // needs to be web-only
65
+ // resolve: {
66
+ // alias: {
67
+ // // this is a relatively safe one as it should be 100% api surface compat that fixes ssr
68
+ // 'react-native-svg': requireResolve('@tamagui/react-native-svg'),
69
+ // },
70
+ // },
71
+ ssr: {
72
+ optimizeDeps
73
+ },
74
+ environments: {
75
+ client: {
76
+ dev: {
77
+ optimizeDeps: {
78
+ include: ["react-native-screens"],
79
+ esbuildOptions: {
80
+ resolveExtensions: webExtensions
81
+ }
82
+ }
83
+ }
84
+ }
85
+ },
86
+ server: {
87
+ hmr: {
88
+ path: "/__vxrnhmr"
89
+ },
90
+ cors: !0,
91
+ host: server.host,
92
+ port: server.port
93
+ }
94
+ });
95
+ const rerouteNoExternalConfig = userViteConfig?.ssr?.noExternal === !0;
96
+ return rerouteNoExternalConfig && delete userViteConfig.ssr.noExternal, serverConfig = mergeUserConfig(optimizeDeps, serverConfig, userViteConfig), rerouteNoExternalConfig && (serverConfig.ssr.noExternal = !0), process.env.DEBUG && console.debug("merged config:", JSON.stringify(serverConfig, null, 2), `
97
+ ----
98
+ `), serverConfig;
99
+ }
100
+ export { getViteServerConfig };
101
+ //# sourceMappingURL=getViteServerConfig.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["loadConfigFromFile","mergeConfig","mkcert","webExtensions","DEFAULT_ASSET_EXTS","getServerConfigPlugin","expoManifestRequestHandlerPlugin","reactNativeDevAssetPlugin","reactNativeHMRPlugin","getBaseViteConfig","getOptimizeDeps","mergeUserConfig","createReactNativeDevServerPlugin","getViteServerConfig","config","root","server","optimizeDeps","userViteConfig","mode","command","serverConfig","projectRoot","appType","clearScreen","publicDir","plugins","https","name","configureServer","ogWarn","console","warn","args","startsWith","assetExts","port","transform","code","id","options","includes","replaceAll","ssr","environments","client","dev","include","esbuildOptions","resolveExtensions","hmr","path","cors","host","rerouteNoExternalConfig","noExternal","process","env","DEBUG","debug","JSON","stringify"],"sources":["../../src/utils/getViteServerConfig.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}