one 1.16.12 → 1.17.0

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 (157) hide show
  1. package/dist/cjs/babel-preset/index.cjs +154 -0
  2. package/dist/cjs/babel-preset/index.native.js +186 -0
  3. package/dist/cjs/babel-preset/index.native.js.map +1 -0
  4. package/dist/cjs/babel-preset/index.test.cjs +143 -0
  5. package/dist/cjs/babel-preset/index.test.native.js +165 -0
  6. package/dist/cjs/babel-preset/index.test.native.js.map +1 -0
  7. package/dist/cjs/babel-preset/integration.test.cjs +94 -0
  8. package/dist/cjs/babel-preset/integration.test.native.js +97 -0
  9. package/dist/cjs/babel-preset/integration.test.native.js.map +1 -0
  10. package/dist/cjs/cli/generateBundlerConfig.cjs +247 -0
  11. package/dist/cjs/cli/generateBundlerConfig.native.js +316 -0
  12. package/dist/cjs/cli/generateBundlerConfig.native.js.map +1 -0
  13. package/dist/cjs/cli/generateBundlerConfig.test.cjs +350 -0
  14. package/dist/cjs/cli/generateBundlerConfig.test.native.js +380 -0
  15. package/dist/cjs/cli/generateBundlerConfig.test.native.js.map +1 -0
  16. package/dist/cjs/cli/patch.cjs +19 -2
  17. package/dist/cjs/cli/patch.native.js +26 -2
  18. package/dist/cjs/cli/patch.native.js.map +1 -1
  19. package/dist/cjs/cli/patch.test.cjs +56 -0
  20. package/dist/cjs/cli/patch.test.native.js +65 -0
  21. package/dist/cjs/cli/patch.test.native.js.map +1 -0
  22. package/dist/cjs/cli.cjs +39 -2
  23. package/dist/cjs/cli.native.js +40 -2
  24. package/dist/cjs/cli.native.js.map +1 -1
  25. package/dist/cjs/metro-config/buildOneMetroResolverOverrides.cjs +102 -0
  26. package/dist/cjs/metro-config/buildOneMetroResolverOverrides.native.js +109 -0
  27. package/dist/cjs/metro-config/buildOneMetroResolverOverrides.native.js.map +1 -0
  28. package/dist/cjs/metro-config/getViteMetroPluginOptions.cjs +17 -150
  29. package/dist/cjs/metro-config/getViteMetroPluginOptions.integration.test.cjs +84 -0
  30. package/dist/cjs/metro-config/getViteMetroPluginOptions.integration.test.native.js +90 -0
  31. package/dist/cjs/metro-config/getViteMetroPluginOptions.integration.test.native.js.map +1 -0
  32. package/dist/cjs/metro-config/getViteMetroPluginOptions.native.js +17 -158
  33. package/dist/cjs/metro-config/getViteMetroPluginOptions.native.js.map +1 -1
  34. package/dist/cjs/metro-config/withOne.cjs +82 -0
  35. package/dist/cjs/metro-config/withOne.native.js +88 -0
  36. package/dist/cjs/metro-config/withOne.native.js.map +1 -0
  37. package/dist/cjs/metro-config/withOne.test.cjs +129 -0
  38. package/dist/cjs/metro-config/withOne.test.native.js +156 -0
  39. package/dist/cjs/metro-config/withOne.test.native.js.map +1 -0
  40. package/dist/cjs/vite/loadConfig.cjs +20 -1
  41. package/dist/cjs/vite/loadConfig.native.js +20 -1
  42. package/dist/cjs/vite/loadConfig.native.js.map +1 -1
  43. package/dist/cjs/vite/plugins/warmRoutesPlugin.cjs +13 -7
  44. package/dist/cjs/vite/plugins/warmRoutesPlugin.native.js +13 -7
  45. package/dist/cjs/vite/plugins/warmRoutesPlugin.native.js.map +1 -1
  46. package/dist/esm/babel-preset/index.mjs +116 -0
  47. package/dist/esm/babel-preset/index.mjs.map +1 -0
  48. package/dist/esm/babel-preset/index.native.js +145 -0
  49. package/dist/esm/babel-preset/index.native.js.map +1 -0
  50. package/dist/esm/babel-preset/index.test.mjs +120 -0
  51. package/dist/esm/babel-preset/index.test.mjs.map +1 -0
  52. package/dist/esm/babel-preset/index.test.native.js +139 -0
  53. package/dist/esm/babel-preset/index.test.native.js.map +1 -0
  54. package/dist/esm/babel-preset/integration.test.mjs +71 -0
  55. package/dist/esm/babel-preset/integration.test.mjs.map +1 -0
  56. package/dist/esm/babel-preset/integration.test.native.js +71 -0
  57. package/dist/esm/babel-preset/integration.test.native.js.map +1 -0
  58. package/dist/esm/cli/generateBundlerConfig.mjs +207 -0
  59. package/dist/esm/cli/generateBundlerConfig.mjs.map +1 -0
  60. package/dist/esm/cli/generateBundlerConfig.native.js +273 -0
  61. package/dist/esm/cli/generateBundlerConfig.native.js.map +1 -0
  62. package/dist/esm/cli/generateBundlerConfig.test.mjs +327 -0
  63. package/dist/esm/cli/generateBundlerConfig.test.mjs.map +1 -0
  64. package/dist/esm/cli/generateBundlerConfig.test.native.js +354 -0
  65. package/dist/esm/cli/generateBundlerConfig.test.native.js.map +1 -0
  66. package/dist/esm/cli/patch.mjs +19 -2
  67. package/dist/esm/cli/patch.mjs.map +1 -1
  68. package/dist/esm/cli/patch.native.js +26 -2
  69. package/dist/esm/cli/patch.native.js.map +1 -1
  70. package/dist/esm/cli/patch.test.mjs +57 -0
  71. package/dist/esm/cli/patch.test.mjs.map +1 -0
  72. package/dist/esm/cli/patch.test.native.js +63 -0
  73. package/dist/esm/cli/patch.test.native.js.map +1 -0
  74. package/dist/esm/cli.mjs +39 -2
  75. package/dist/esm/cli.mjs.map +1 -1
  76. package/dist/esm/cli.native.js +40 -2
  77. package/dist/esm/cli.native.js.map +1 -1
  78. package/dist/esm/metro-config/buildOneMetroResolverOverrides.mjs +66 -0
  79. package/dist/esm/metro-config/buildOneMetroResolverOverrides.mjs.map +1 -0
  80. package/dist/esm/metro-config/buildOneMetroResolverOverrides.native.js +70 -0
  81. package/dist/esm/metro-config/buildOneMetroResolverOverrides.native.js.map +1 -0
  82. package/dist/esm/metro-config/getViteMetroPluginOptions.integration.test.mjs +61 -0
  83. package/dist/esm/metro-config/getViteMetroPluginOptions.integration.test.mjs.map +1 -0
  84. package/dist/esm/metro-config/getViteMetroPluginOptions.integration.test.native.js +64 -0
  85. package/dist/esm/metro-config/getViteMetroPluginOptions.integration.test.native.js.map +1 -0
  86. package/dist/esm/metro-config/getViteMetroPluginOptions.mjs +17 -138
  87. package/dist/esm/metro-config/getViteMetroPluginOptions.mjs.map +1 -1
  88. package/dist/esm/metro-config/getViteMetroPluginOptions.native.js +17 -146
  89. package/dist/esm/metro-config/getViteMetroPluginOptions.native.js.map +1 -1
  90. package/dist/esm/metro-config/withOne.mjs +45 -0
  91. package/dist/esm/metro-config/withOne.mjs.map +1 -0
  92. package/dist/esm/metro-config/withOne.native.js +48 -0
  93. package/dist/esm/metro-config/withOne.native.js.map +1 -0
  94. package/dist/esm/metro-config/withOne.test.mjs +106 -0
  95. package/dist/esm/metro-config/withOne.test.mjs.map +1 -0
  96. package/dist/esm/metro-config/withOne.test.native.js +130 -0
  97. package/dist/esm/metro-config/withOne.test.native.js.map +1 -0
  98. package/dist/esm/vite/loadConfig.mjs +20 -1
  99. package/dist/esm/vite/loadConfig.mjs.map +1 -1
  100. package/dist/esm/vite/loadConfig.native.js +20 -1
  101. package/dist/esm/vite/loadConfig.native.js.map +1 -1
  102. package/dist/esm/vite/plugins/warmRoutesPlugin.mjs +13 -7
  103. package/dist/esm/vite/plugins/warmRoutesPlugin.mjs.map +1 -1
  104. package/dist/esm/vite/plugins/warmRoutesPlugin.native.js +13 -7
  105. package/dist/esm/vite/plugins/warmRoutesPlugin.native.js.map +1 -1
  106. package/package.json +20 -9
  107. package/src/babel-preset/index.test.ts +148 -0
  108. package/src/babel-preset/index.ts +250 -0
  109. package/src/babel-preset/integration.test.ts +91 -0
  110. package/src/cli/generateBundlerConfig.test.ts +343 -0
  111. package/src/cli/generateBundlerConfig.ts +339 -0
  112. package/src/cli/patch.test.ts +65 -0
  113. package/src/cli/patch.ts +30 -2
  114. package/src/cli.ts +31 -0
  115. package/src/metro-config/buildOneMetroResolverOverrides.ts +104 -0
  116. package/src/metro-config/getViteMetroPluginOptions.integration.test.ts +75 -0
  117. package/src/metro-config/getViteMetroPluginOptions.ts +15 -230
  118. package/src/metro-config/withOne.test.ts +120 -0
  119. package/src/metro-config/withOne.ts +112 -0
  120. package/src/vite/loadConfig.ts +22 -0
  121. package/src/vite/plugins/warmRoutesPlugin.ts +22 -6
  122. package/types/babel-preset/index.d.ts +68 -0
  123. package/types/babel-preset/index.d.ts.map +1 -0
  124. package/types/babel-preset/index.test.d.ts +2 -0
  125. package/types/babel-preset/index.test.d.ts.map +1 -0
  126. package/types/babel-preset/integration.test.d.ts +2 -0
  127. package/types/babel-preset/integration.test.d.ts.map +1 -0
  128. package/types/cli/generateBundlerConfig.d.ts +61 -0
  129. package/types/cli/generateBundlerConfig.d.ts.map +1 -0
  130. package/types/cli/generateBundlerConfig.test.d.ts +2 -0
  131. package/types/cli/generateBundlerConfig.test.d.ts.map +1 -0
  132. package/types/cli/patch.d.ts.map +1 -1
  133. package/types/cli/patch.test.d.ts +2 -0
  134. package/types/cli/patch.test.d.ts.map +1 -0
  135. package/types/metro-config/buildOneMetroResolverOverrides.d.ts +20 -0
  136. package/types/metro-config/buildOneMetroResolverOverrides.d.ts.map +1 -0
  137. package/types/metro-config/getViteMetroPluginOptions.d.ts +0 -5
  138. package/types/metro-config/getViteMetroPluginOptions.d.ts.map +1 -1
  139. package/types/metro-config/getViteMetroPluginOptions.integration.test.d.ts +2 -0
  140. package/types/metro-config/getViteMetroPluginOptions.integration.test.d.ts.map +1 -0
  141. package/types/metro-config/withOne.d.ts +44 -0
  142. package/types/metro-config/withOne.d.ts.map +1 -0
  143. package/types/metro-config/withOne.test.d.ts +2 -0
  144. package/types/metro-config/withOne.test.d.ts.map +1 -0
  145. package/types/vite/loadConfig.d.ts +1 -0
  146. package/types/vite/loadConfig.d.ts.map +1 -1
  147. package/types/vite/plugins/warmRoutesPlugin.d.ts.map +1 -1
  148. package/dist/cjs/metro-config/getViteMetroPluginOptions.test.cjs +0 -23
  149. package/dist/cjs/metro-config/getViteMetroPluginOptions.test.native.js +0 -26
  150. package/dist/cjs/metro-config/getViteMetroPluginOptions.test.native.js.map +0 -1
  151. package/dist/esm/metro-config/getViteMetroPluginOptions.test.mjs +0 -24
  152. package/dist/esm/metro-config/getViteMetroPluginOptions.test.mjs.map +0 -1
  153. package/dist/esm/metro-config/getViteMetroPluginOptions.test.native.js +0 -24
  154. package/dist/esm/metro-config/getViteMetroPluginOptions.test.native.js.map +0 -1
  155. package/src/metro-config/getViteMetroPluginOptions.test.ts +0 -34
  156. package/types/metro-config/getViteMetroPluginOptions.test.d.ts +0 -2
  157. package/types/metro-config/getViteMetroPluginOptions.test.d.ts.map +0 -1
@@ -0,0 +1,129 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __copyProps = (to, from, except, desc) => {
8
+ if (from && typeof from === "object" || typeof from === "function") {
9
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
10
+ get: () => from[key],
11
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
12
+ });
13
+ }
14
+ return to;
15
+ };
16
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
17
+ // If the importer is in node compatibility mode or this is not an ESM
18
+ // file that has been converted to a CommonJS file using a Babel-
19
+ // compatible transform (i.e. "__esModule" has not been set), then set
20
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
22
+ value: mod,
23
+ enumerable: true
24
+ }) : target, mod));
25
+ var import_node_path = __toESM(require("node:path"), 1);
26
+ var import_node_fs = __toESM(require("node:fs"), 1);
27
+ var import_vitest = require("vitest");
28
+ var import_withOne = require("./withOne.cjs");
29
+ const projectRoot = import_node_path.default.resolve(__dirname, "../../");
30
+ const tmpDirs = [];
31
+ function createOneFixtureProject() {
32
+ const workspaceRoot = import_node_path.default.resolve(__dirname, "../../../../");
33
+ const tmpDir = import_node_fs.default.mkdtempSync(import_node_path.default.join(workspaceRoot, ".tmp-with-one-"));
34
+ tmpDirs.push(tmpDir);
35
+ import_node_fs.default.writeFileSync(import_node_path.default.join(tmpDir, "package.json"), JSON.stringify({
36
+ name: "tmp-with-one",
37
+ private: true
38
+ }));
39
+ import_node_fs.default.writeFileSync(import_node_path.default.join(tmpDir, "tsconfig.json"), JSON.stringify({
40
+ compilerOptions: {
41
+ paths: {}
42
+ }
43
+ }));
44
+ import_node_fs.default.mkdirSync(import_node_path.default.join(tmpDir, "app"));
45
+ import_node_fs.default.writeFileSync(import_node_path.default.join(tmpDir, "app", "index.tsx"), "export default null\n");
46
+ import_node_fs.default.writeFileSync(import_node_path.default.join(tmpDir, "vite.config.ts"), `
47
+ const defaultConfigOverrides = (config) => ({
48
+ ...config,
49
+ watchFolders: [
50
+ ...(config.watchFolders || []),
51
+ ${JSON.stringify(import_node_path.default.join(tmpDir, "shared"))},
52
+ ],
53
+ resolver: {
54
+ ...config.resolver,
55
+ extraNodeModules: {
56
+ ...config.resolver?.extraNodeModules,
57
+ 'fixture-singleton': ${JSON.stringify(tmpDir)},
58
+ },
59
+ },
60
+ })
61
+
62
+ globalThis.__oneOptions = {
63
+ setupFile: {
64
+ native: './src/setup-native.ts',
65
+ },
66
+ native: {
67
+ bundler: 'metro',
68
+ bundlerOptions: {
69
+ argv: {
70
+ projectRoot: ${JSON.stringify(tmpDir)},
71
+ },
72
+ defaultConfigOverrides,
73
+ },
74
+ },
75
+ }
76
+ globalThis.__vxrnMetroOptions__ = {
77
+ argv: {
78
+ projectRoot: ${JSON.stringify(tmpDir)},
79
+ },
80
+ defaultConfigOverrides,
81
+ }
82
+
83
+ export default {
84
+ root: ${JSON.stringify(tmpDir)},
85
+ }
86
+ `);
87
+ return tmpDir;
88
+ }
89
+ (0, import_vitest.afterAll)(() => {
90
+ for (const tmpDir of tmpDirs) {
91
+ import_node_fs.default.rmSync(tmpDir, {
92
+ recursive: true,
93
+ force: true
94
+ });
95
+ }
96
+ });
97
+ (0, import_vitest.describe)("withOne", () => {
98
+ (0, import_vitest.it)("returns a config produced by the production native bundle pipeline", async () => {
99
+ const config = await (0, import_withOne.withOne)(projectRoot, {
100
+ loadViteConfig: false
101
+ });
102
+ (0, import_vitest.expect)(config).toBeTruthy();
103
+ (0, import_vitest.expect)(config.resolver).toBeTruthy();
104
+ (0, import_vitest.expect)(typeof config.resolver.resolveRequest).toBe("function");
105
+ (0, import_vitest.expect)(config.transformer).toBeTruthy();
106
+ (0, import_vitest.expect)(config.transformer.babelTransformerPath).toMatch(/vite-plugin-metro.*babel-transformer/);
107
+ });
108
+ (0, import_vitest.it)("orders sourceExts so .js wins over .mjs (the proven One fix)", async () => {
109
+ const config = await (0, import_withOne.withOne)(projectRoot, {
110
+ loadViteConfig: false
111
+ });
112
+ const exts = config.resolver.sourceExts;
113
+ (0, import_vitest.expect)(exts).toContain("mjs");
114
+ (0, import_vitest.expect)(exts).toContain("js");
115
+ (0, import_vitest.expect)(exts.indexOf("js")).toBeLessThan(exts.indexOf("mjs"));
116
+ });
117
+ (0, import_vitest.it)("accepts a project root as the first arg", async () => {
118
+ const config = await (0, import_withOne.withOne)(projectRoot, {
119
+ loadViteConfig: false
120
+ });
121
+ (0, import_vitest.expect)(config).toBeTruthy();
122
+ });
123
+ (0, import_vitest.it)("loads vite.config by default and applies the real native Metro options", async () => {
124
+ const fixtureRoot = createOneFixtureProject();
125
+ const config = await (0, import_withOne.withOne)(fixtureRoot);
126
+ (0, import_vitest.expect)(config.resolver.extraNodeModules["fixture-singleton"]).toBe(fixtureRoot);
127
+ (0, import_vitest.expect)(config.watchFolders).toContain(import_node_path.default.join(fixtureRoot, "shared"));
128
+ });
129
+ });
@@ -0,0 +1,156 @@
1
+ "use strict";
2
+
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
12
+ get: () => from[key],
13
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
14
+ });
15
+ }
16
+ return to;
17
+ };
18
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
19
+ // If the importer is in node compatibility mode or this is not an ESM
20
+ // file that has been converted to a CommonJS file using a Babel-
21
+ // compatible transform (i.e. "__esModule" has not been set), then set
22
+ // "default" to the CommonJS "module.exports" for node compatibility.
23
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
24
+ value: mod,
25
+ enumerable: true
26
+ }) : target, mod));
27
+ var import_path = __toESM(require("path"), 1);
28
+ var import_fs = __toESM(require("fs"), 1);
29
+ var import_vitest = require("vitest");
30
+ var import_withOne = require("./withOne.native.js");
31
+ function _type_of(obj) {
32
+ "@swc/helpers - typeof";
33
+
34
+ return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
35
+ }
36
+ var projectRoot = import_path.default.resolve(__dirname, "../../");
37
+ var tmpDirs = [];
38
+ function createOneFixtureProject() {
39
+ var workspaceRoot = import_path.default.resolve(__dirname, "../../../../");
40
+ var tmpDir = import_fs.default.mkdtempSync(import_path.default.join(workspaceRoot, ".tmp-with-one-"));
41
+ tmpDirs.push(tmpDir);
42
+ import_fs.default.writeFileSync(import_path.default.join(tmpDir, "package.json"), JSON.stringify({
43
+ name: "tmp-with-one",
44
+ private: true
45
+ }));
46
+ import_fs.default.writeFileSync(import_path.default.join(tmpDir, "tsconfig.json"), JSON.stringify({
47
+ compilerOptions: {
48
+ paths: {}
49
+ }
50
+ }));
51
+ import_fs.default.mkdirSync(import_path.default.join(tmpDir, "app"));
52
+ import_fs.default.writeFileSync(import_path.default.join(tmpDir, "app", "index.tsx"), "export default null\n");
53
+ import_fs.default.writeFileSync(import_path.default.join(tmpDir, "vite.config.ts"), `
54
+ const defaultConfigOverrides = (config) => ({
55
+ ...config,
56
+ watchFolders: [
57
+ ...(config.watchFolders || []),
58
+ ${JSON.stringify(import_path.default.join(tmpDir, "shared"))},
59
+ ],
60
+ resolver: {
61
+ ...config.resolver,
62
+ extraNodeModules: {
63
+ ...config.resolver?.extraNodeModules,
64
+ 'fixture-singleton': ${JSON.stringify(tmpDir)},
65
+ },
66
+ },
67
+ })
68
+
69
+ globalThis.__oneOptions = {
70
+ setupFile: {
71
+ native: './src/setup-native.ts',
72
+ },
73
+ native: {
74
+ bundler: 'metro',
75
+ bundlerOptions: {
76
+ argv: {
77
+ projectRoot: ${JSON.stringify(tmpDir)},
78
+ },
79
+ defaultConfigOverrides,
80
+ },
81
+ },
82
+ }
83
+ globalThis.__vxrnMetroOptions__ = {
84
+ argv: {
85
+ projectRoot: ${JSON.stringify(tmpDir)},
86
+ },
87
+ defaultConfigOverrides,
88
+ }
89
+
90
+ export default {
91
+ root: ${JSON.stringify(tmpDir)},
92
+ }
93
+ `);
94
+ return tmpDir;
95
+ }
96
+ (0, import_vitest.afterAll)(function () {
97
+ var _iteratorNormalCompletion = true,
98
+ _didIteratorError = false,
99
+ _iteratorError = void 0;
100
+ try {
101
+ for (var _iterator = tmpDirs[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
102
+ var tmpDir = _step.value;
103
+ import_fs.default.rmSync(tmpDir, {
104
+ recursive: true,
105
+ force: true
106
+ });
107
+ }
108
+ } catch (err) {
109
+ _didIteratorError = true;
110
+ _iteratorError = err;
111
+ } finally {
112
+ try {
113
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
114
+ _iterator.return();
115
+ }
116
+ } finally {
117
+ if (_didIteratorError) {
118
+ throw _iteratorError;
119
+ }
120
+ }
121
+ }
122
+ });
123
+ (0, import_vitest.describe)("withOne", function () {
124
+ (0, import_vitest.it)("returns a config produced by the production native bundle pipeline", async function () {
125
+ var config = await (0, import_withOne.withOne)(projectRoot, {
126
+ loadViteConfig: false
127
+ });
128
+ (0, import_vitest.expect)(config).toBeTruthy();
129
+ (0, import_vitest.expect)(config.resolver).toBeTruthy();
130
+ (0, import_vitest.expect)(_type_of(config.resolver.resolveRequest)).toBe("function");
131
+ (0, import_vitest.expect)(config.transformer).toBeTruthy();
132
+ (0, import_vitest.expect)(config.transformer.babelTransformerPath).toMatch(/vite-plugin-metro.*babel-transformer/);
133
+ });
134
+ (0, import_vitest.it)("orders sourceExts so .js wins over .mjs (the proven One fix)", async function () {
135
+ var config = await (0, import_withOne.withOne)(projectRoot, {
136
+ loadViteConfig: false
137
+ });
138
+ var exts = config.resolver.sourceExts;
139
+ (0, import_vitest.expect)(exts).toContain("mjs");
140
+ (0, import_vitest.expect)(exts).toContain("js");
141
+ (0, import_vitest.expect)(exts.indexOf("js")).toBeLessThan(exts.indexOf("mjs"));
142
+ });
143
+ (0, import_vitest.it)("accepts a project root as the first arg", async function () {
144
+ var config = await (0, import_withOne.withOne)(projectRoot, {
145
+ loadViteConfig: false
146
+ });
147
+ (0, import_vitest.expect)(config).toBeTruthy();
148
+ });
149
+ (0, import_vitest.it)("loads vite.config by default and applies the real native Metro options", async function () {
150
+ var fixtureRoot = createOneFixtureProject();
151
+ var config = await (0, import_withOne.withOne)(fixtureRoot);
152
+ (0, import_vitest.expect)(config.resolver.extraNodeModules["fixture-singleton"]).toBe(fixtureRoot);
153
+ (0, import_vitest.expect)(config.watchFolders).toContain(import_path.default.join(fixtureRoot, "shared"));
154
+ });
155
+ });
156
+ //# sourceMappingURL=withOne.test.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["import_path","__toESM","require","import_fs","import_vitest","import_withOne","_type_of","obj","Symbol","constructor","projectRoot","default","resolve","__dirname","tmpDirs","createOneFixtureProject","workspaceRoot","tmpDir","mkdtempSync","join","push","writeFileSync","JSON","stringify","name","private","compilerOptions","paths","mkdirSync","afterAll","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","next","done","value","rmSync","recursive","force","err","return","describe","it","config","withOne","loadViteConfig","expect","toBeTruthy","resolver","resolveRequest","toBe"],"sources":["../../../src/metro-config/withOne.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -39,10 +39,18 @@ function getUserOneOptions() {
39
39
  }
40
40
  async function loadUserOneOptions(command, silent = false) {
41
41
  const originalConsoleError = console.error;
42
+ const previousIsVxrnCli = process.env.IS_VXRN_CLI;
43
+ const previousOneOptions = globalThis["__oneOptions"];
44
+ const previousVxrnPluginConfig = globalThis["__vxrnPluginConfig__"];
45
+ const previousVxrnMetroOptions = globalThis["__vxrnMetroOptions__"];
42
46
  if (silent) {
43
47
  console.error = () => {};
44
48
  }
45
49
  try {
50
+ process.env.IS_VXRN_CLI = "true";
51
+ delete globalThis["__oneOptions"];
52
+ delete globalThis["__vxrnPluginConfig__"];
53
+ delete globalThis["__vxrnMetroOptions__"];
46
54
  const config = await (0, import_vite.loadConfigFromFile)({
47
55
  mode: command === "serve" ? "dev" : "prod",
48
56
  command
@@ -56,9 +64,20 @@ async function loadUserOneOptions(command, silent = false) {
56
64
  }
57
65
  return {
58
66
  config,
59
- oneOptions
67
+ oneOptions,
68
+ metroOptions: globalThis["__vxrnMetroOptions__"]
60
69
  };
70
+ } catch (error) {
71
+ globalThis["__oneOptions"] = previousOneOptions;
72
+ globalThis["__vxrnPluginConfig__"] = previousVxrnPluginConfig;
73
+ globalThis["__vxrnMetroOptions__"] = previousVxrnMetroOptions;
74
+ throw error;
61
75
  } finally {
76
+ if (previousIsVxrnCli === void 0) {
77
+ delete process.env.IS_VXRN_CLI;
78
+ } else {
79
+ process.env.IS_VXRN_CLI = previousIsVxrnCli;
80
+ }
62
81
  if (silent) {
63
82
  console.error = originalConsoleError;
64
83
  }
@@ -42,10 +42,18 @@ function getUserOneOptions() {
42
42
  async function loadUserOneOptions(command) {
43
43
  var silent = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;
44
44
  var originalConsoleError = console.error;
45
+ var previousIsVxrnCli = process.env.IS_VXRN_CLI;
46
+ var previousOneOptions = globalThis["__oneOptions"];
47
+ var previousVxrnPluginConfig = globalThis["__vxrnPluginConfig__"];
48
+ var previousVxrnMetroOptions = globalThis["__vxrnMetroOptions__"];
45
49
  if (silent) {
46
50
  console.error = function () {};
47
51
  }
48
52
  try {
53
+ process.env.IS_VXRN_CLI = "true";
54
+ delete globalThis["__oneOptions"];
55
+ delete globalThis["__vxrnPluginConfig__"];
56
+ delete globalThis["__vxrnMetroOptions__"];
49
57
  var config = await (0, import_vite.loadConfigFromFile)({
50
58
  mode: command === "serve" ? "dev" : "prod",
51
59
  command
@@ -59,9 +67,20 @@ async function loadUserOneOptions(command) {
59
67
  }
60
68
  return {
61
69
  config,
62
- oneOptions
70
+ oneOptions,
71
+ metroOptions: globalThis["__vxrnMetroOptions__"]
63
72
  };
73
+ } catch (error) {
74
+ globalThis["__oneOptions"] = previousOneOptions;
75
+ globalThis["__vxrnPluginConfig__"] = previousVxrnPluginConfig;
76
+ globalThis["__vxrnMetroOptions__"] = previousVxrnMetroOptions;
77
+ throw error;
64
78
  } finally {
79
+ if (previousIsVxrnCli === void 0) {
80
+ delete process.env.IS_VXRN_CLI;
81
+ } else {
82
+ process.env.IS_VXRN_CLI = previousIsVxrnCli;
83
+ }
65
84
  if (silent) {
66
85
  console.error = originalConsoleError;
67
86
  }
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","loadConfig_exports","__export","loadUserOneOptions","setOneOptions","module","exports","import_vite","require","import_polyfills_server","next","globalThis","__oneOptions","getUserOneOptions","Error","command","silent","arguments","length","originalConsoleError","console","error","config","loadConfigFromFile","mode","process","cwd","oneOptions"],"sources":["../../../src/vite/loadConfig.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,kBAAA;AAAAC,QAAA,CAAAD,kBAAA;EAAAE,kBAAA,EAAAA,CAAA,KAAAA,kBAAA;EAAAC,aAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAV,YAAmC,CAAAK,kBAAA;AACnC,IAAAM,WAAA,GAAAC,OAAA,OAAO;AAKA,IAAAC,uBAAuB,GAAyBD,OAAA;AACrD,SAAAJ,aAAWA,CAAAM,IAAA,EAAe;EAC5BC,UAAA,CAAAC,YAAA,GAAAF,IAAA;AAEA;AACE,SAAKG,iBAAWA,CAAA;EACd,KAAAF,UAAU,CAAAC,YAAA;IAAA,MACR,IAAAE,KAAA;EAAA;EAEJ,OAAAH,UAAA,CAAAC,YAAA;AACA;AACF,eAAAT,mBAAAY,OAAA;EAEA,IAAAC,MAAA,GAAsBC,SAAA,CAAAC,MAAA,GAAmB,KAAAD,SAA4B,QAAS,KAAO,IAAAA,SAAA;EAEnF,IAAAE,oBAAM,GAAAC,OAAuB,CAAAC,KAAQ;EACrC,IAAIL,MAAA,EAAQ;IACVI,OAAA,CAAQC,KAAA,GAAQ,YAAM,CAAC;EACzB;EAEA,IAAI;IACF,IAAAC,MAAM,SAAS,IAAAf,WAAM,CAAAgB,kBAAA;MACnBC,IAAA,EAAMT,OAAA,KAAY,UAAU,QAAQ;MACpCA;IACF,CAAC;IAED,IAAI,CAACO,MAAA,EAAQ;MACX,MAAM,IAAIR,KAAA,wBAAAW,OAAA,CAAAC,GAAA;IAAA;IAC4B,IACtCC,UAAA,GAAAd,iBAAA;IACF,KAAAc,UAAA;MAEA,MAAM,IAAAb,KAAA,2CAA+B;IAErC;IACE;MACFQ,MAAA;MAEAK;IAAO;EACL,UACA;IACF,IAAAX,MAAA;MACFI,OAAE,CAAAC,KAAA,GAAAF,oBAAA;IACA;EACE;AAAgB","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","loadConfig_exports","__export","loadUserOneOptions","setOneOptions","module","exports","import_vite","require","import_polyfills_server","next","globalThis","__oneOptions","getUserOneOptions","Error","command","silent","arguments","length","originalConsoleError","console","error","previousIsVxrnCli","process","env","IS_VXRN_CLI","previousOneOptions","previousVxrnPluginConfig","previousVxrnMetroOptions","config","loadConfigFromFile","mode","cwd","oneOptions","metroOptions"],"sources":["../../../src/vite/loadConfig.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,kBAAA;AAAAC,QAAA,CAAAD,kBAAA;EAAAE,kBAAA,EAAAA,CAAA,KAAAA,kBAAA;EAAAC,aAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAV,YAAmC,CAAAK,kBAAA;AACnC,IAAAM,WAAA,GAAAC,OAAA,OAAO;AAKA,IAAAC,uBAAuB,GAAyBD,OAAA;AACrD,SAAAJ,aAAWA,CAAAM,IAAA,EAAe;EAC5BC,UAAA,CAAAC,YAAA,GAAAF,IAAA;AAEA;AACE,SAAKG,iBAAWA,CAAA;EACd,KAAAF,UAAU,CAAAC,YAAA;IAAA,MACR,IAAAE,KAAA;EAAA;EAEJ,OAAAH,UAAA,CAAAC,YAAA;AACA;AACF,eAAAT,mBAAAY,OAAA;EAEA,IAAAC,MAAA,GAAsBC,SAAA,CAAAC,MAAA,GAAmB,KAAAD,SAA4B,QAAS,KAAO,IAAAA,SAAA;EAEnF,IAAAE,oBAAM,GAAAC,OAAuB,CAAAC,KAAQ;EACrC,IAAAC,iBAAM,GAAAC,OAAoB,CAAAC,GAAQ,CAAAC,WAAI;EACtC,IAAAC,kBAAM,GAAAf,UAAqB,eAAW;EACtC,IAAAgB,wBAAM,GAAAhB,UAA2B,uBAAW;EAC5C,IAAAiB,wBAAM,GAAAjB,UAA2B,uBAAW;EAE5C,IAAIK,MAAA,EAAQ;IACVI,OAAA,CAAQC,KAAA,GAAQ,YAAM,CAAC;EACzB;EAEA,IAAI;IACFE,OAAA,CAAQC,GAAA,CAAIC,WAAA,GAAc;IAC1B,OAAOd,UAAA,CAAW,cAAc;IAChC,OAAOA,UAAA,CAAW,sBAAsB;IACxC,OAAOA,UAAA,CAAW,sBAAsB;IAExC,IAAAkB,MAAM,SAAS,IAAAtB,WAAM,CAAAuB,kBAAA;MACnBC,IAAA,EAAMhB,OAAA,KAAY,UAAU,QAAQ;MACpCA;IACF,CAAC;IAED,IAAI,CAACc,MAAA,EAAQ;MACX,MAAM,IAAIf,KAAA,wBAAAS,OAAA,CAAAS,GAAA;IAAA;IAC4B,IACtCC,UAAA,GAAApB,iBAAA;IACF,KAAAoB,UAAA;MAEA,MAAM,IAAAnB,KAAA,2CAA+B;IAErC;IACE;MACFe,MAAA;MAEAI,UAAO;MACLC,YAAA,EAAAvB,UAAA;IAAA;EACA,SACAU,KAAA;IACFV,UAAA,mBAAAe,kBAAA;IACFf,UAAS,uBAAO,IAAAgB,wBAAA;IACdhB,UAAA,CAAW,sBAAkB,IAAAiB,wBAAA;IAC7B,MAAAP,KAAW;EACX;IACA,IAAAC,iBAAM;MACR,OAAEC,OAAA,CAAAC,GAAA,CAAAC,WAAA;IACA,OAAI;MACFF,OAAO,CAAAC,GAAA,CAAAC,WAAY,GAAAH,iBAAA;IACrB;IACE,IAAAN,MAAQ;MACVI,OAAA,CAAAC,KAAA,GAAAF,oBAAA;IAEA;EACE;AAAgB","ignoreList":[]}
@@ -83,24 +83,30 @@ function autoWarmPlugin(persistPath) {
83
83
  lastDepsCount = currentDeps.length;
84
84
  const depsToCache = currentDeps.filter(d => !userInclude.has(d) && !excludeSet.has(d));
85
85
  const allDeps = new Set(depsToCache);
86
- try {
87
- if ((0, import_node_fs.existsSync)(cacheFile)) {
88
- const existing = JSON.parse((0, import_node_fs.readFileSync)(cacheFile, "utf-8"));
86
+ let existingRaw;
87
+ if ((0, import_node_fs.existsSync)(cacheFile)) {
88
+ try {
89
+ existingRaw = (0, import_node_fs.readFileSync)(cacheFile, "utf-8");
90
+ const existing = JSON.parse(existingRaw);
89
91
  if (Array.isArray(existing.deps)) {
90
92
  for (const d of existing.deps) {
91
93
  if (!excludeSet.has(d)) allDeps.add(d);
92
94
  }
93
95
  }
96
+ } catch {
97
+ return;
94
98
  }
95
- } catch {}
99
+ }
96
100
  const sorted = [...allDeps].sort();
101
+ const nextRaw = JSON.stringify({
102
+ deps: sorted
103
+ }, null, 2);
104
+ if (existingRaw === nextRaw) return;
97
105
  const dir = (0, import_node_path.dirname)(cacheFile);
98
106
  if (!(0, import_node_fs.existsSync)(dir)) (0, import_node_fs.mkdirSync)(dir, {
99
107
  recursive: true
100
108
  });
101
- (0, import_node_fs.writeFileSync)(cacheFile, JSON.stringify({
102
- deps: sorted
103
- }, null, 2));
109
+ (0, import_node_fs.writeFileSync)(cacheFile, nextRaw);
104
110
  console.info(`[one] cached ${sorted.length} deps for next startup`);
105
111
  } catch {}
106
112
  }
@@ -97,9 +97,11 @@ function autoWarmPlugin(persistPath) {
97
97
  return !userInclude.has(d2) && !excludeSet.has(d2);
98
98
  });
99
99
  var allDeps = new Set(depsToCache);
100
- try {
101
- if ((0, import_fs.existsSync)(cacheFile)) {
102
- var existing = JSON.parse((0, import_fs.readFileSync)(cacheFile, "utf-8"));
100
+ var existingRaw;
101
+ if ((0, import_fs.existsSync)(cacheFile)) {
102
+ try {
103
+ existingRaw = (0, import_fs.readFileSync)(cacheFile, "utf-8");
104
+ var existing = JSON.parse(existingRaw);
103
105
  if (Array.isArray(existing.deps)) {
104
106
  var _iteratorNormalCompletion = true,
105
107
  _didIteratorError = false,
@@ -124,16 +126,20 @@ function autoWarmPlugin(persistPath) {
124
126
  }
125
127
  }
126
128
  }
129
+ } catch (unused) {
130
+ return;
127
131
  }
128
- } catch (unused) {}
132
+ }
129
133
  var sorted = [...allDeps].sort();
134
+ var nextRaw = JSON.stringify({
135
+ deps: sorted
136
+ }, null, 2);
137
+ if (existingRaw === nextRaw) return;
130
138
  var dir = (0, import_path.dirname)(cacheFile);
131
139
  if (!(0, import_fs.existsSync)(dir)) (0, import_fs.mkdirSync)(dir, {
132
140
  recursive: true
133
141
  });
134
- (0, import_fs.writeFileSync)(cacheFile, JSON.stringify({
135
- deps: sorted
136
- }, null, 2));
142
+ (0, import_fs.writeFileSync)(cacheFile, nextRaw);
137
143
  console.info(`[one] cached ${sorted.length} deps for next startup`);
138
144
  } catch (unused) {}
139
145
  }
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","warmRoutesPlugin_exports","__export","autoWarmPlugin","warmRoutesPlugin","module","exports","import_fs","require","import_path","WARM_DEPS_FILE","TRACKING_WINDOW","persistPath","cacheFile","cachedDeps","excludeSet","name","apply","config","volatileCache","join","process","cwd","existsSync","cached","JSON","parse","readFileSync","Array","isArray","deps","length","console","info","optimizeDeps","include","unused","configResolved","Set","exclude","size","conflicts","filter","d","has","configureServer","server","_server_httpServer","lastDepsCount","timer","userInclude","includes","snapshotDeps","_ref","_server_environments_client","_server_environments","optimizer","environments","client","depsOptimizer","_depsOptimizer","metadata","optimized","discovered","currentDeps","Object","keys","depsToCache","d2","allDeps","existing","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","add","err","return","sorted"],"sources":["../../../../src/vite/plugins/warmRoutesPlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","warmRoutesPlugin_exports","__export","autoWarmPlugin","warmRoutesPlugin","module","exports","import_fs","require","import_path","WARM_DEPS_FILE","TRACKING_WINDOW","persistPath","cacheFile","cachedDeps","excludeSet","name","apply","config","volatileCache","join","process","cwd","existsSync","cached","JSON","parse","readFileSync","Array","isArray","deps","length","console","info","optimizeDeps","include","unused","configResolved","Set","exclude","size","conflicts","filter","d","has","configureServer","server","_server_httpServer","lastDepsCount","timer","userInclude","includes","snapshotDeps","_ref","_server_environments_client","_server_environments","optimizer","environments","client","depsOptimizer","_depsOptimizer","metadata","optimized","discovered","currentDeps","Object","keys","depsToCache","d2","allDeps","existingRaw","existing","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","add","err","return","sorted","sort"],"sources":["../../../../src/vite/plugins/warmRoutesPlugin.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,116 @@
1
+ import module from "node:module";
2
+ import path from "node:path";
3
+ import mm from "micromatch";
4
+ import tsconfigPaths from "tsconfig-paths";
5
+ import { API_ROUTE_GLOB_PATTERN, ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS } from "../router/glob-patterns.mjs";
6
+ function oneBabelPreset(api, options = {}) {
7
+ const hasViteInjectedOnePlugins = typeof api?.caller === "function" ? api.caller(caller => !!caller?.oneViteMetroBabelConfig) : false;
8
+ if (!api?.caller && typeof api?.cache === "function") {
9
+ api.cache(true);
10
+ }
11
+ const projectRoot = path.resolve(options.projectRoot ?? (typeof api?.cwd === "function" ? api.cwd() : process.cwd()));
12
+ const presets = [];
13
+ if (options.includeExpoPreset !== false) {
14
+ const require2 = module.createRequire(projectRoot + "/");
15
+ try {
16
+ const expoPresetPath = require2.resolve("babel-preset-expo");
17
+ presets.push(require2(expoPresetPath));
18
+ } catch (e) {
19
+ throw new Error(`[one/babel-preset] Could not resolve 'babel-preset-expo' from ${projectRoot}. Install it as a project dependency (it ships with the Expo SDK). If you don't want the Expo base preset, pass { includeExpoPreset: false }.`);
20
+ }
21
+ }
22
+ return {
23
+ presets,
24
+ plugins: hasViteInjectedOnePlugins ? [] : buildOneBabelPlugins({
25
+ projectRoot,
26
+ relativeRouterRoot: options.routerRoot ?? "app",
27
+ ignoredRouteFiles: options.ignoredRouteFiles,
28
+ linking: options.linking,
29
+ setupFile: options.setupFile,
30
+ includeImportMetaEnv: options.includeImportMetaEnv
31
+ })
32
+ };
33
+ }
34
+ function buildOneBabelPlugins({
35
+ projectRoot,
36
+ relativeRouterRoot,
37
+ ignoredRouteFiles,
38
+ linking,
39
+ setupFile,
40
+ includeImportMetaEnv = true
41
+ }) {
42
+ const tsconfig = tsconfigPaths.loadConfig(projectRoot);
43
+ if (tsconfig.resultType === "failed") {
44
+ throw new Error("[one/babel-preset] tsconfig.json paths could not be loaded");
45
+ }
46
+ const require2 = module.createRequire(projectRoot + "/");
47
+ const metroEntryPath = require2.resolve("one/metro-entry", {
48
+ paths: [projectRoot]
49
+ });
50
+ const setupFileRelativeToMetroEntry = (() => {
51
+ if (!setupFile) return void 0;
52
+ const file = typeof setupFile === "string" ? setupFile : setupFile.native || setupFile.ios || setupFile.android;
53
+ if (!file) return void 0;
54
+ return path.relative(path.dirname(metroEntryPath), path.join(projectRoot, file));
55
+ })();
56
+ return [
57
+ // standalone Metro CLI (expo export, eas update) needs `import.meta.env.*` /
58
+ // `process.env.*` baked in. The Vite path passes `false` here and injects
59
+ // its own version with the user's `define` env via the server hook.
60
+ ...(includeImportMetaEnv ? [["@vxrn/vite-plugin-metro/babel-plugins/import-meta-env-plugin", {
61
+ env: buildStandaloneImportMetaEnv()
62
+ }]] : []), "one/babel-plugin-environment-guard", ["one/babel-plugin-remove-server-code", {
63
+ routerRoot: relativeRouterRoot
64
+ }], ["babel-plugin-module-resolver",
65
+ // "vite-tsconfig-paths" for Metro
66
+ {
67
+ alias: Object.fromEntries(Object.entries(tsconfig.paths).map(([k, v]) => {
68
+ const key = k.endsWith("/*") ? k.replace(/\/\*$/, "") : `${k}$`;
69
+ let value = v[0].replace(/\/\*$/, "");
70
+ if (!value.startsWith("./")) value = `./${value}`;
71
+ return [key, value];
72
+ }))
73
+ }], ["one/babel-plugin-one-router-metro", {
74
+ ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY: path.relative(path.dirname(metroEntryPath), path.join(projectRoot, relativeRouterRoot)),
75
+ ONE_ROUTER_ROOT_FOLDER_NAME: relativeRouterRoot,
76
+ ONE_ROUTER_REQUIRE_CONTEXT_REGEX_STRING: buildRouterRequireContextRegexString(ignoredRouteFiles),
77
+ ONE_ROUTER_LINKING_CONFIG: linking,
78
+ ONE_SETUP_FILE_NATIVE: setupFileRelativeToMetroEntry
79
+ }], "one/babel-plugin-inline-one-server-url"];
80
+ }
81
+ function buildStandaloneImportMetaEnv() {
82
+ const isProduction = process.env.NODE_ENV !== "development";
83
+ const env = {
84
+ MODE: isProduction ? "production" : "development",
85
+ BASE_URL: "/",
86
+ PROD: isProduction,
87
+ DEV: !isProduction,
88
+ SSR: false
89
+ };
90
+ for (const [key, value] of Object.entries(process.env)) {
91
+ if (key.startsWith("EXPO_PUBLIC_") || key.startsWith("ONE_") || key.startsWith("VITE_")) {
92
+ env[key] = value;
93
+ }
94
+ }
95
+ return env;
96
+ }
97
+ function normalizeReSource(source) {
98
+ return source.replace(/\[\\\\\/\]/g, "\\/").replace(/\[\^\\\\\/\]/g, "[^/]");
99
+ }
100
+ function buildRouterRequireContextRegexString(ignoredRouteFiles) {
101
+ const excludeRes = [...(ignoredRouteFiles || []).map(pattern => mm.makeRe(pattern)), ...ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS.map(pattern => mm.makeRe(pattern)), mm.makeRe(API_ROUTE_GLOB_PATTERN)];
102
+ const mustStartWith = String.raw`^(?:(?:^|\/|(?:(?:(?!(?:^|\/)\.).)*?)\/)(?!\.)(?=.)[^/]*?`;
103
+ const mustEndWith = String.raw`)$`;
104
+ const negatives = excludeRes.map((re, i) => {
105
+ const reSource = normalizeReSource(re.source);
106
+ if (!(reSource.startsWith(mustStartWith) && reSource.endsWith(mustEndWith))) {
107
+ const pattern = ignoredRouteFiles?.[i];
108
+ throw new Error(pattern ? `[one/metro] ignoredRouteFile pattern "${pattern}" is not supported. We cannot process the corresponding regex "${reSource}" for now.` : `Unsupported regex "${reSource}" in "ignoredRouteFiles".`);
109
+ }
110
+ const inner = reSource.slice(mustStartWith.length, reSource.length - mustEndWith.length);
111
+ return String.raw`(?:.*${inner})`;
112
+ });
113
+ return String.raw`^(?:\.\/)(?!${negatives.join("|")}$).*\.tsx?$`;
114
+ }
115
+ export { buildOneBabelPlugins, buildRouterRequireContextRegexString, oneBabelPreset as default };
116
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["module","path","mm","tsconfigPaths","API_ROUTE_GLOB_PATTERN","ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS","oneBabelPreset","api","options","hasViteInjectedOnePlugins","caller","oneViteMetroBabelConfig","cache","projectRoot","resolve","cwd","process","presets","includeExpoPreset","require2","createRequire","expoPresetPath","push","e","Error","plugins","buildOneBabelPlugins","relativeRouterRoot","routerRoot","ignoredRouteFiles","linking","setupFile","includeImportMetaEnv","tsconfig","loadConfig","resultType","metroEntryPath","paths","setupFileRelativeToMetroEntry","file","native","ios","android","relative","dirname","join","env","buildStandaloneImportMetaEnv","alias","Object","fromEntries","entries","map","k","v","key","endsWith","replace","value","startsWith","ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY","ONE_ROUTER_ROOT_FOLDER_NAME","ONE_ROUTER_REQUIRE_CONTEXT_REGEX_STRING","buildRouterRequireContextRegexString","ONE_ROUTER_LINKING_CONFIG","ONE_SETUP_FILE_NATIVE","isProduction","NODE_ENV","MODE","BASE_URL","PROD","DEV","SSR","normalizeReSource","source","excludeRes","pattern","makeRe","mustStartWith","String","raw","mustEndWith","negatives","re","i","reSource","inner","slice","length"],"sources":["../../../src/babel-preset/index.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}