one 1.1.511 → 1.1.513
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.
- package/dist/cjs/babel-plugins/one-router-metro.cjs +4 -2
- package/dist/cjs/babel-plugins/one-router-metro.js +10 -2
- package/dist/cjs/babel-plugins/one-router-metro.js.map +1 -1
- package/dist/cjs/babel-plugins/one-router-metro.native.js +4 -2
- package/dist/cjs/babel-plugins/one-router-metro.native.js.map +2 -2
- package/dist/cjs/metro-config/getViteMetroPluginOptions.cjs +39 -13
- package/dist/cjs/metro-config/getViteMetroPluginOptions.js +42 -15
- package/dist/cjs/metro-config/getViteMetroPluginOptions.js.map +2 -2
- package/dist/cjs/metro-config/getViteMetroPluginOptions.native.js +43 -19
- package/dist/cjs/metro-config/getViteMetroPluginOptions.native.js.map +2 -2
- package/dist/cjs/router/glob-patterns.cjs +32 -0
- package/dist/cjs/router/glob-patterns.js +28 -0
- package/dist/cjs/router/glob-patterns.js.map +6 -0
- package/dist/cjs/router/glob-patterns.native.js +38 -0
- package/dist/cjs/router/glob-patterns.native.js.map +6 -0
- package/dist/cjs/typed-routes/generateRouteTypes.cjs +8 -2
- package/dist/cjs/typed-routes/generateRouteTypes.js +8 -3
- package/dist/cjs/typed-routes/generateRouteTypes.js.map +2 -2
- package/dist/cjs/typed-routes/generateRouteTypes.native.js +8 -3
- package/dist/cjs/typed-routes/generateRouteTypes.native.js.map +2 -2
- package/dist/cjs/vite/one.cjs +4 -3
- package/dist/cjs/vite/one.js +4 -3
- package/dist/cjs/vite/one.js.map +1 -1
- package/dist/cjs/vite/one.native.js +5 -4
- package/dist/cjs/vite/one.native.js.map +2 -2
- package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.cjs +2 -2
- package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.js +2 -2
- package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.js.map +1 -1
- package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.native.js +6 -2
- package/dist/cjs/vite/plugins/generateFileSystemRouteTypesPlugin.native.js.map +2 -2
- package/dist/cjs/vite/plugins/virtualEntryPlugin.cjs +8 -7
- package/dist/cjs/vite/plugins/virtualEntryPlugin.js +9 -6
- package/dist/cjs/vite/plugins/virtualEntryPlugin.js.map +1 -1
- package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js +22 -6
- package/dist/cjs/vite/plugins/virtualEntryPlugin.native.js.map +2 -2
- package/dist/esm/babel-plugins/one-router-metro.js +10 -2
- package/dist/esm/babel-plugins/one-router-metro.js.map +1 -1
- package/dist/esm/babel-plugins/one-router-metro.mjs +4 -2
- package/dist/esm/babel-plugins/one-router-metro.mjs.map +1 -1
- package/dist/esm/babel-plugins/one-router-metro.native.js +4 -2
- package/dist/esm/babel-plugins/one-router-metro.native.js.map +1 -1
- package/dist/esm/metro-config/getViteMetroPluginOptions.js +46 -14
- package/dist/esm/metro-config/getViteMetroPluginOptions.js.map +1 -1
- package/dist/esm/metro-config/getViteMetroPluginOptions.mjs +38 -12
- package/dist/esm/metro-config/getViteMetroPluginOptions.mjs.map +1 -1
- package/dist/esm/metro-config/getViteMetroPluginOptions.native.js +45 -17
- package/dist/esm/metro-config/getViteMetroPluginOptions.native.js.map +1 -1
- package/dist/esm/router/glob-patterns.js +12 -0
- package/dist/esm/router/glob-patterns.js.map +6 -0
- package/dist/esm/router/glob-patterns.mjs +6 -0
- package/dist/esm/router/glob-patterns.mjs.map +1 -0
- package/dist/esm/router/glob-patterns.native.js +6 -0
- package/dist/esm/router/glob-patterns.native.js.map +1 -0
- package/dist/esm/typed-routes/generateRouteTypes.js +8 -2
- package/dist/esm/typed-routes/generateRouteTypes.js.map +1 -1
- package/dist/esm/typed-routes/generateRouteTypes.mjs +8 -2
- package/dist/esm/typed-routes/generateRouteTypes.mjs.map +1 -1
- package/dist/esm/typed-routes/generateRouteTypes.native.js +8 -3
- package/dist/esm/typed-routes/generateRouteTypes.native.js.map +1 -1
- package/dist/esm/vite/one.js +4 -3
- package/dist/esm/vite/one.js.map +1 -1
- package/dist/esm/vite/one.mjs +4 -3
- package/dist/esm/vite/one.mjs.map +1 -1
- package/dist/esm/vite/one.native.js +5 -4
- package/dist/esm/vite/one.native.js.map +1 -1
- package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.js +2 -2
- package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.js.map +1 -1
- package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.mjs +2 -2
- package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.native.js +6 -2
- package/dist/esm/vite/plugins/generateFileSystemRouteTypesPlugin.native.js.map +1 -1
- package/dist/esm/vite/plugins/virtualEntryPlugin.js +14 -5
- package/dist/esm/vite/plugins/virtualEntryPlugin.js.map +1 -1
- package/dist/esm/vite/plugins/virtualEntryPlugin.mjs +7 -6
- package/dist/esm/vite/plugins/virtualEntryPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/virtualEntryPlugin.native.js +15 -6
- package/dist/esm/vite/plugins/virtualEntryPlugin.native.js.map +1 -1
- package/metro-entry-ctx.js +1 -2
- package/package.json +10 -10
- package/src/babel-plugins/one-router-metro.ts +13 -1
- package/src/metro-config/getViteMetroPluginOptions.ts +80 -13
- package/src/router/glob-patterns.ts +16 -0
- package/src/typed-routes/generateRouteTypes.ts +13 -2
- package/src/vite/one.ts +2 -1
- package/src/vite/plugins/generateFileSystemRouteTypesPlugin.tsx +2 -2
- package/src/vite/plugins/virtualEntryPlugin.ts +22 -7
- package/src/vite/types.ts +11 -0
- package/types/babel-plugins/one-router-metro.d.ts +1 -0
- package/types/babel-plugins/one-router-metro.d.ts.map +1 -1
- package/types/metro-config/getViteMetroPluginOptions.d.ts +2 -1
- package/types/metro-config/getViteMetroPluginOptions.d.ts.map +1 -1
- package/types/router/glob-patterns.d.ts +11 -0
- package/types/router/glob-patterns.d.ts.map +1 -0
- package/types/typed-routes/generateRouteTypes.d.ts +1 -1
- package/types/typed-routes/generateRouteTypes.d.ts.map +1 -1
- package/types/vite/one.d.ts.map +1 -1
- package/types/vite/plugins/virtualEntryPlugin.d.ts +3 -0
- package/types/vite/plugins/virtualEntryPlugin.d.ts.map +1 -1
- package/types/vite/types.d.ts +11 -0
- package/types/vite/types.d.ts.map +1 -1
@@ -41,17 +41,19 @@ function oneRouterMetroPlugin(_, options) {
|
|
41
41
|
}
|
42
42
|
const {
|
43
43
|
ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY,
|
44
|
-
ONE_ROUTER_ROOT_FOLDER_NAME
|
44
|
+
ONE_ROUTER_ROOT_FOLDER_NAME,
|
45
|
+
ONE_ROUTER_REQUIRE_CONTEXT_REGEX_STRING
|
45
46
|
} = options;
|
46
47
|
if (!ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY) throw new Error("[one/babel-plugin-one-router-metro] Must provide option: ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY");
|
47
48
|
if (!ONE_ROUTER_ROOT_FOLDER_NAME) throw new Error("[one/babel-plugin-one-router-metro] Must provide option: ONE_ROUTER_ROOT_FOLDER_NAME");
|
49
|
+
if (!ONE_ROUTER_REQUIRE_CONTEXT_REGEX_STRING) throw new Error("[one/babel-plugin-one-router-metro] Must provide option: ONE_ROUTER_REQUIRE_CONTEXT_REGEX_STRING");
|
48
50
|
return {
|
49
51
|
name: "one-router-metro",
|
50
52
|
visitor: {
|
51
53
|
MemberExpression(path, state) {
|
52
54
|
if (path.get("object").matchesPattern("process.env")) {
|
53
55
|
const key = path.toComputedKey();
|
54
|
-
t.isStringLiteral(key) && !isFirstInAssign(path) && (key.value.startsWith("ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY") ? path.replaceWith(t.stringLiteral(ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY)) : key.value.startsWith("ONE_ROUTER_ROOT_FOLDER_NAME")
|
56
|
+
t.isStringLiteral(key) && !isFirstInAssign(path) && (key.value.startsWith("ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY") ? path.replaceWith(t.stringLiteral(ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY)) : key.value.startsWith("ONE_ROUTER_ROOT_FOLDER_NAME") ? path.replaceWith(t.stringLiteral(ONE_ROUTER_ROOT_FOLDER_NAME)) : key.value.startsWith("ONE_ROUTER_REQUIRE_CONTEXT_REGEX") && path.replaceWith(t.regExpLiteral(ONE_ROUTER_REQUIRE_CONTEXT_REGEX_STRING)));
|
55
57
|
}
|
56
58
|
}
|
57
59
|
}
|
@@ -30,7 +30,11 @@ function oneRouterMetroPlugin(_, options) {
|
|
30
30
|
function isFirstInAssign(path) {
|
31
31
|
return t.isAssignmentExpression(path.parent) && path.parent.left === path.node;
|
32
32
|
}
|
33
|
-
const {
|
33
|
+
const {
|
34
|
+
ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY,
|
35
|
+
ONE_ROUTER_ROOT_FOLDER_NAME,
|
36
|
+
ONE_ROUTER_REQUIRE_CONTEXT_REGEX_STRING
|
37
|
+
} = options;
|
34
38
|
if (!ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY)
|
35
39
|
throw new Error(
|
36
40
|
"[one/babel-plugin-one-router-metro] Must provide option: ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY"
|
@@ -39,13 +43,17 @@ function oneRouterMetroPlugin(_, options) {
|
|
39
43
|
throw new Error(
|
40
44
|
"[one/babel-plugin-one-router-metro] Must provide option: ONE_ROUTER_ROOT_FOLDER_NAME"
|
41
45
|
);
|
46
|
+
if (!ONE_ROUTER_REQUIRE_CONTEXT_REGEX_STRING)
|
47
|
+
throw new Error(
|
48
|
+
"[one/babel-plugin-one-router-metro] Must provide option: ONE_ROUTER_REQUIRE_CONTEXT_REGEX_STRING"
|
49
|
+
);
|
42
50
|
return {
|
43
51
|
name: "one-router-metro",
|
44
52
|
visitor: {
|
45
53
|
MemberExpression(path, state) {
|
46
54
|
if (path.get("object").matchesPattern("process.env")) {
|
47
55
|
const key = path.toComputedKey();
|
48
|
-
t.isStringLiteral(key) && !isFirstInAssign(path) && (key.value.startsWith("ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY") ? path.replaceWith(t.stringLiteral(ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY)) : key.value.startsWith("ONE_ROUTER_ROOT_FOLDER_NAME")
|
56
|
+
t.isStringLiteral(key) && !isFirstInAssign(path) && (key.value.startsWith("ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY") ? path.replaceWith(t.stringLiteral(ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY)) : key.value.startsWith("ONE_ROUTER_ROOT_FOLDER_NAME") ? path.replaceWith(t.stringLiteral(ONE_ROUTER_ROOT_FOLDER_NAME)) : key.value.startsWith("ONE_ROUTER_REQUIRE_CONTEXT_REGEX") && path.replaceWith(t.regExpLiteral(ONE_ROUTER_REQUIRE_CONTEXT_REGEX_STRING)));
|
49
57
|
}
|
50
58
|
}
|
51
59
|
}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../src/babel-plugins/one-router-metro.ts"],
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,QAAmB;
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,QAAmB;AAQnB,SAAS,qBAAqB,GAAQ,SAAwB;AAC5D,WAAS,gBAAgB,MAAoC;AAC3D,WAAO,EAAE,uBAAuB,KAAK,MAAM,KAAK,KAAK,OAAO,SAAS,KAAK;AAAA,EAC5E;AAEA,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,EACF,IAAI;AAEJ,MAAI,CAAC;AACH,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAEF,MAAI,CAAC;AACH,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAEF,MAAI,CAAC;AACH,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAGF,SAAO;AAAA,IACL,MAAM;AAAA,IACN,SAAS;AAAA,MACP,iBAAiB,MAAW,OAAY;AACtC,YAAI,KAAK,IAAI,QAAQ,EAAE,eAAe,aAAa,GAAG;AACpD,gBAAM,MAAM,KAAK,cAAc;AAC/B,UAAI,EAAE,gBAAgB,GAAG,KAAK,CAAC,gBAAgB,IAAI,MAC7C,IAAI,MAAM,WAAW,uCAAuC,IAC9D,KAAK,YAAY,EAAE,cAAc,qCAAqC,CAAC,IAC9D,IAAI,MAAM,WAAW,6BAA6B,IAC3D,KAAK,YAAY,EAAE,cAAc,2BAA2B,CAAC,IACpD,IAAI,MAAM,WAAW,kCAAkC,KAChE,KAAK,YAAY,EAAE,cAAc,uCAAuC,CAAC;AAAA,QAG/E;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;AAEA,IAAO,2BAAQ;",
|
5
5
|
"names": []
|
6
6
|
}
|
@@ -31,18 +31,20 @@ function oneRouterMetroPlugin(_, options) {
|
|
31
31
|
function isFirstInAssign(path) {
|
32
32
|
return t.isAssignmentExpression(path.parent) && path.parent.left === path.node;
|
33
33
|
}
|
34
|
-
var { ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY, ONE_ROUTER_ROOT_FOLDER_NAME } = options;
|
34
|
+
var { ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY, ONE_ROUTER_ROOT_FOLDER_NAME, ONE_ROUTER_REQUIRE_CONTEXT_REGEX_STRING } = options;
|
35
35
|
if (!ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY)
|
36
36
|
throw new Error("[one/babel-plugin-one-router-metro] Must provide option: ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY");
|
37
37
|
if (!ONE_ROUTER_ROOT_FOLDER_NAME)
|
38
38
|
throw new Error("[one/babel-plugin-one-router-metro] Must provide option: ONE_ROUTER_ROOT_FOLDER_NAME");
|
39
|
+
if (!ONE_ROUTER_REQUIRE_CONTEXT_REGEX_STRING)
|
40
|
+
throw new Error("[one/babel-plugin-one-router-metro] Must provide option: ONE_ROUTER_REQUIRE_CONTEXT_REGEX_STRING");
|
39
41
|
return {
|
40
42
|
name: "one-router-metro",
|
41
43
|
visitor: {
|
42
44
|
MemberExpression(path, state) {
|
43
45
|
if (path.get("object").matchesPattern("process.env")) {
|
44
46
|
var key = path.toComputedKey();
|
45
|
-
t.isStringLiteral(key) && !isFirstInAssign(path) && (key.value.startsWith("ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY") ? path.replaceWith(t.stringLiteral(ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY)) : key.value.startsWith("ONE_ROUTER_ROOT_FOLDER_NAME")
|
47
|
+
t.isStringLiteral(key) && !isFirstInAssign(path) && (key.value.startsWith("ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY") ? path.replaceWith(t.stringLiteral(ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY)) : key.value.startsWith("ONE_ROUTER_ROOT_FOLDER_NAME") ? path.replaceWith(t.stringLiteral(ONE_ROUTER_ROOT_FOLDER_NAME)) : key.value.startsWith("ONE_ROUTER_REQUIRE_CONTEXT_REGEX") && path.replaceWith(t.regExpLiteral(ONE_ROUTER_REQUIRE_CONTEXT_REGEX_STRING)));
|
46
48
|
}
|
47
49
|
}
|
48
50
|
}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../src/babel-plugins/one-router-metro.ts"],
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;AACA;;;;;QAAmB;
|
5
|
-
"names": ["oneRouterMetroPlugin", "_", "options", "isFirstInAssign", "path", "t", "isAssignmentExpression", "parent", "left", "node", "ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY", "ONE_ROUTER_ROOT_FOLDER_NAME", "Error", "name", "visitor", "MemberExpression", "state", "get", "matchesPattern", "key", "toComputedKey", "isStringLiteral", "value", "startsWith", "replaceWith", "stringLiteral"]
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;AACA;;;;;QAAmB;AAQnB,SAASA,qBAAqBC,GAAQC,SAAsB;AAC1D,WAASC,gBAAgBC,MAAkC;AACzD,WAAOC,EAAEC,uBAAuBF,KAAKG,MAAM,KAAKH,KAAKG,OAAOC,SAASJ,KAAKK;EAC5E;AAEA,MAAM,EACJC,uCACAC,6BACAC,wCAAuC,IACrCV;AAEJ,MAAI,CAACQ;AACH,UAAM,IAAIG,MACR,gGAAgG;AAGpG,MAAI,CAACF;AACH,UAAM,IAAIE,MACR,sFAAsF;AAG1F,MAAI,CAACD;AACH,UAAM,IAAIC,MACR,kGAAkG;AAItG,SAAO;IACLC,MAAM;IACNC,SAAS;MACPC,iBAAiBZ,MAAWa,OAAU;AACpC,YAAIb,KAAKc,IAAI,QAAA,EAAUC,eAAe,aAAA,GAAgB;AACpD,cAAMC,MAAMhB,KAAKiB,cAAa;AAC9B,UAAIhB,EAAEiB,gBAAgBF,GAAAA,KAAQ,CAACjB,gBAAgBC,IAAAA,MACzCgB,IAAIG,MAAMC,WAAW,uCAAA,IACvBpB,KAAKqB,YAAYpB,EAAEqB,cAAchB,qCAAAA,CAAAA,IACxBU,IAAIG,MAAMC,WAAW,6BAAA,IAC9BpB,KAAKqB,YAAYpB,EAAEqB,cAAcf,2BAAAA,CAAAA,IACxBS,IAAIG,MAAMC,WAAW,kCAAA,KAC9BpB,KAAKqB,YAAYpB,EAAEsB,cAAcf,uCAAAA,CAAAA;QAGvC;MACF;IACF;EACF;AACF;AAEA,IAAA,2BAAeZ;",
|
5
|
+
"names": ["oneRouterMetroPlugin", "_", "options", "isFirstInAssign", "path", "t", "isAssignmentExpression", "parent", "left", "node", "ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY", "ONE_ROUTER_ROOT_FOLDER_NAME", "ONE_ROUTER_REQUIRE_CONTEXT_REGEX_STRING", "Error", "name", "visitor", "MemberExpression", "state", "get", "matchesPattern", "key", "toComputedKey", "isStringLiteral", "value", "startsWith", "replaceWith", "stringLiteral", "regExpLiteral"]
|
6
6
|
}
|
@@ -36,10 +36,13 @@ __export(getViteMetroPluginOptions_exports, {
|
|
36
36
|
module.exports = __toCommonJS(getViteMetroPluginOptions_exports);
|
37
37
|
var import_node_module = __toESM(require("node:module"), 1),
|
38
38
|
import_node_path = __toESM(require("node:path"), 1),
|
39
|
-
import_tsconfig_paths = __toESM(require("tsconfig-paths"), 1)
|
39
|
+
import_tsconfig_paths = __toESM(require("tsconfig-paths"), 1),
|
40
|
+
import_micromatch = __toESM(require("micromatch"), 1),
|
41
|
+
import_glob_patterns = require("../router/glob-patterns.cjs");
|
40
42
|
function getViteMetroPluginOptions({
|
41
43
|
projectRoot,
|
42
|
-
relativeRouterRoot
|
44
|
+
relativeRouterRoot,
|
45
|
+
ignoredRouteFiles
|
43
46
|
}) {
|
44
47
|
const tsconfigPathsConfigLoadResult = import_tsconfig_paths.default.loadConfig(projectRoot);
|
45
48
|
if (tsconfigPathsConfigLoadResult.resultType === "failed") throw new Error("tsconfigPathsConfigLoadResult.resultType is not success");
|
@@ -49,22 +52,43 @@ function getViteMetroPluginOptions({
|
|
49
52
|
}),
|
50
53
|
metroEntryPath = require2.resolve("one/metro-entry", {
|
51
54
|
paths: [projectRoot]
|
52
|
-
})
|
55
|
+
}),
|
56
|
+
routerRequireContextRegexString = (() => {
|
57
|
+
const excludeRes = [...(ignoredRouteFiles || []).map(pattern => import_micromatch.default.makeRe(pattern)), ...import_glob_patterns.ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS.map(pattern => import_micromatch.default.makeRe(pattern)), import_micromatch.default.makeRe(import_glob_patterns.API_ROUTE_GLOB_PATTERN)],
|
58
|
+
supportedRegexMustStartWith = String.raw`^(?:(?:^|\/|(?:(?:(?!(?:^|\/)\.).)*?)\/)(?!\.)(?=.)[^/]*?`,
|
59
|
+
supportedRegexMustEndWith = String.raw`)$`,
|
60
|
+
negativeLookaheadGroups = excludeRes.map((re, i) => {
|
61
|
+
const reSource = re.source;
|
62
|
+
if (!(reSource.startsWith(supportedRegexMustStartWith) && reSource.endsWith(supportedRegexMustEndWith))) {
|
63
|
+
const ignoredRouteFile = ignoredRouteFiles?.[i];
|
64
|
+
throw ignoredRouteFile ? new Error(`[one/metro] ignoredRouteFile pattern "${ignoredRouteFile}" is not supported. We cannot process the corresponding regex "${reSource}" for now.`) : new Error(`Unsupported regex "${reSource}" in "ignoredRouteFiles".`);
|
65
|
+
}
|
66
|
+
const rePart = reSource.slice(supportedRegexMustStartWith.length, reSource.length - supportedRegexMustEndWith.length);
|
67
|
+
return String.raw`(?:.*${rePart})`;
|
68
|
+
});
|
69
|
+
return String.raw`^(?:\.\/)(?!${negativeLookaheadGroups.join("|")}$).*\.tsx?$`;
|
70
|
+
})();
|
53
71
|
return {
|
54
72
|
defaultConfigOverrides: defaultConfig => ({
|
55
73
|
...defaultConfig,
|
56
74
|
resolver: {
|
57
75
|
...defaultConfig?.resolver,
|
58
76
|
extraNodeModules: {
|
59
|
-
...defaultConfig?.resolver?.extraNodeModules
|
77
|
+
...defaultConfig?.resolver?.extraNodeModules
|
60
78
|
// "vite-tsconfig-paths" for Metro
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
79
|
+
// Commenting out since we are using babel-plugin-module-resolver alias instead
|
80
|
+
// ...Object.fromEntries(
|
81
|
+
// Object.entries(tsconfigPathsConfigLoadResult.paths)
|
82
|
+
// .map(([k, v]) => {
|
83
|
+
// if (k.endsWith('/*') && v[0]?.endsWith('/*')) {
|
84
|
+
// const key = k.replace(/\/\*$/, '')
|
85
|
+
// let value = v[0].replace(/\/\*$/, '')
|
86
|
+
// value = path.join(tsconfigPathsConfigLoadResult.absoluteBaseUrl, value)
|
87
|
+
// return [key, value]
|
88
|
+
// }
|
89
|
+
// })
|
90
|
+
// .filter((i): i is NonNullable<typeof i> => !!i)
|
91
|
+
// ),
|
68
92
|
},
|
69
93
|
nodeModulesPaths: tsconfigPathsConfigLoadResult.absoluteBaseUrl ? [
|
70
94
|
// "vite-tsconfig-paths" for Metro
|
@@ -81,15 +105,17 @@ function getViteMetroPluginOptions({
|
|
81
105
|
babelConfig: {
|
82
106
|
plugins: [["babel-plugin-module-resolver", {
|
83
107
|
alias: {
|
108
|
+
// "vite-tsconfig-paths" for Metro
|
84
109
|
...Object.fromEntries(Object.entries(tsconfigPathsConfigLoadResult.paths).map(([k, v]) => {
|
85
|
-
const key = k.replace(/\/\*$/, "")
|
110
|
+
const key = k.endsWith("/*") ? k.replace(/\/\*$/, "") : `${k}$`;
|
86
111
|
let value = v[0].replace(/\/\*$/, "");
|
87
112
|
return value.startsWith("./") || (value = `./${value}`), [key, value];
|
88
113
|
}))
|
89
114
|
}
|
90
115
|
}], ["one/babel-plugin-one-router-metro", {
|
91
116
|
ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY: import_node_path.default.relative(import_node_path.default.dirname(metroEntryPath), import_node_path.default.join(projectRoot, relativeRouterRoot)),
|
92
|
-
ONE_ROUTER_ROOT_FOLDER_NAME: relativeRouterRoot
|
117
|
+
ONE_ROUTER_ROOT_FOLDER_NAME: relativeRouterRoot,
|
118
|
+
ONE_ROUTER_REQUIRE_CONTEXT_REGEX_STRING: routerRequireContextRegexString
|
93
119
|
}]]
|
94
120
|
}
|
95
121
|
};
|
@@ -25,10 +25,11 @@ __export(getViteMetroPluginOptions_exports, {
|
|
25
25
|
getViteMetroPluginOptions: () => getViteMetroPluginOptions
|
26
26
|
});
|
27
27
|
module.exports = __toCommonJS(getViteMetroPluginOptions_exports);
|
28
|
-
var import_node_module = __toESM(require("node:module"), 1), import_node_path = __toESM(require("node:path"), 1), import_tsconfig_paths = __toESM(require("tsconfig-paths"), 1);
|
28
|
+
var import_node_module = __toESM(require("node:module"), 1), import_node_path = __toESM(require("node:path"), 1), import_tsconfig_paths = __toESM(require("tsconfig-paths"), 1), import_micromatch = __toESM(require("micromatch"), 1), import_glob_patterns = require("../router/glob-patterns");
|
29
29
|
function getViteMetroPluginOptions({
|
30
30
|
projectRoot,
|
31
|
-
relativeRouterRoot
|
31
|
+
relativeRouterRoot,
|
32
|
+
ignoredRouteFiles
|
32
33
|
}) {
|
33
34
|
const tsconfigPathsConfigLoadResult = import_tsconfig_paths.default.loadConfig(projectRoot);
|
34
35
|
if (tsconfigPathsConfigLoadResult.resultType === "failed")
|
@@ -37,24 +38,48 @@ function getViteMetroPluginOptions({
|
|
37
38
|
paths: [projectRoot]
|
38
39
|
}), metroEntryPath = require2.resolve("one/metro-entry", {
|
39
40
|
paths: [projectRoot]
|
40
|
-
})
|
41
|
+
}), routerRequireContextRegexString = (() => {
|
42
|
+
const excludeRes = [
|
43
|
+
...(ignoredRouteFiles || []).map((pattern) => import_micromatch.default.makeRe(pattern)),
|
44
|
+
...import_glob_patterns.ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS.map((pattern) => import_micromatch.default.makeRe(pattern)),
|
45
|
+
import_micromatch.default.makeRe(import_glob_patterns.API_ROUTE_GLOB_PATTERN)
|
46
|
+
], supportedRegexMustStartWith = String.raw`^(?:(?:^|\/|(?:(?:(?!(?:^|\/)\.).)*?)\/)(?!\.)(?=.)[^/]*?`, supportedRegexMustEndWith = String.raw`)$`, negativeLookaheadGroups = excludeRes.map((re, i) => {
|
47
|
+
const reSource = re.source;
|
48
|
+
if (!(reSource.startsWith(supportedRegexMustStartWith) && reSource.endsWith(supportedRegexMustEndWith))) {
|
49
|
+
const ignoredRouteFile = ignoredRouteFiles?.[i];
|
50
|
+
throw ignoredRouteFile ? new Error(
|
51
|
+
`[one/metro] ignoredRouteFile pattern "${ignoredRouteFile}" is not supported. We cannot process the corresponding regex "${reSource}" for now.`
|
52
|
+
) : new Error(`Unsupported regex "${reSource}" in "ignoredRouteFiles".`);
|
53
|
+
}
|
54
|
+
const rePart = reSource.slice(
|
55
|
+
supportedRegexMustStartWith.length,
|
56
|
+
reSource.length - supportedRegexMustEndWith.length
|
57
|
+
);
|
58
|
+
return String.raw`(?:.*${rePart})`;
|
59
|
+
});
|
60
|
+
return String.raw`^(?:\.\/)(?!${negativeLookaheadGroups.join("|")}$).*\.tsx?$`;
|
61
|
+
})();
|
41
62
|
return {
|
42
63
|
defaultConfigOverrides: (defaultConfig) => ({
|
43
64
|
...defaultConfig,
|
44
65
|
resolver: {
|
45
66
|
...defaultConfig?.resolver,
|
46
67
|
extraNodeModules: {
|
47
|
-
...defaultConfig?.resolver?.extraNodeModules
|
68
|
+
...defaultConfig?.resolver?.extraNodeModules
|
48
69
|
// "vite-tsconfig-paths" for Metro
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
70
|
+
// Commenting out since we are using babel-plugin-module-resolver alias instead
|
71
|
+
// ...Object.fromEntries(
|
72
|
+
// Object.entries(tsconfigPathsConfigLoadResult.paths)
|
73
|
+
// .map(([k, v]) => {
|
74
|
+
// if (k.endsWith('/*') && v[0]?.endsWith('/*')) {
|
75
|
+
// const key = k.replace(/\/\*$/, '')
|
76
|
+
// let value = v[0].replace(/\/\*$/, '')
|
77
|
+
// value = path.join(tsconfigPathsConfigLoadResult.absoluteBaseUrl, value)
|
78
|
+
// return [key, value]
|
79
|
+
// }
|
80
|
+
// })
|
81
|
+
// .filter((i): i is NonNullable<typeof i> => !!i)
|
82
|
+
// ),
|
58
83
|
},
|
59
84
|
nodeModulesPaths: tsconfigPathsConfigLoadResult.absoluteBaseUrl ? [
|
60
85
|
// "vite-tsconfig-paths" for Metro
|
@@ -78,9 +103,10 @@ function getViteMetroPluginOptions({
|
|
78
103
|
"babel-plugin-module-resolver",
|
79
104
|
{
|
80
105
|
alias: {
|
106
|
+
// "vite-tsconfig-paths" for Metro
|
81
107
|
...Object.fromEntries(
|
82
108
|
Object.entries(tsconfigPathsConfigLoadResult.paths).map(([k, v]) => {
|
83
|
-
const key = k.replace(/\/\*$/, "")
|
109
|
+
const key = k.endsWith("/*") ? k.replace(/\/\*$/, "") : `${k}$`;
|
84
110
|
let value = v[0].replace(/\/\*$/, "");
|
85
111
|
return value.startsWith("./") || (value = `./${value}`), [key, value];
|
86
112
|
})
|
@@ -95,7 +121,8 @@ function getViteMetroPluginOptions({
|
|
95
121
|
import_node_path.default.dirname(metroEntryPath),
|
96
122
|
import_node_path.default.join(projectRoot, relativeRouterRoot)
|
97
123
|
),
|
98
|
-
ONE_ROUTER_ROOT_FOLDER_NAME: relativeRouterRoot
|
124
|
+
ONE_ROUTER_ROOT_FOLDER_NAME: relativeRouterRoot,
|
125
|
+
ONE_ROUTER_REQUIRE_CONTEXT_REGEX_STRING: routerRequireContextRegexString
|
99
126
|
}
|
100
127
|
]
|
101
128
|
]
|
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../src/metro-config/getViteMetroPluginOptions.ts"],
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,yBAAmB,oCACnB,mBAAiB,kCACjB,wBAA0B;
|
5
|
-
"names": ["tsconfigPaths", "require", "module", "path"]
|
4
|
+
"mappings": "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",
|
5
|
+
"names": ["tsconfigPaths", "require", "module", "mm", "path"]
|
6
6
|
}
|
@@ -26,9 +26,9 @@ __export(getViteMetroPluginOptions_exports, {
|
|
26
26
|
getViteMetroPluginOptions: () => getViteMetroPluginOptions
|
27
27
|
});
|
28
28
|
module.exports = __toCommonJS(getViteMetroPluginOptions_exports);
|
29
|
-
var import_node_module = __toESM(require("node:module"), 1), import_node_path = __toESM(require("node:path"), 1), import_tsconfig_paths = __toESM(require("tsconfig-paths"), 1);
|
29
|
+
var import_node_module = __toESM(require("node:module"), 1), import_node_path = __toESM(require("node:path"), 1), import_tsconfig_paths = __toESM(require("tsconfig-paths"), 1), import_micromatch = __toESM(require("micromatch"), 1), import_glob_patterns = require("../router/glob-patterns");
|
30
30
|
function getViteMetroPluginOptions(param) {
|
31
|
-
var { projectRoot, relativeRouterRoot } = param, tsconfigPathsConfigLoadResult = import_tsconfig_paths.default.loadConfig(projectRoot);
|
31
|
+
var { projectRoot, relativeRouterRoot, ignoredRouteFiles } = param, tsconfigPathsConfigLoadResult = import_tsconfig_paths.default.loadConfig(projectRoot);
|
32
32
|
if (tsconfigPathsConfigLoadResult.resultType === "failed")
|
33
33
|
throw new Error("tsconfigPathsConfigLoadResult.resultType is not success");
|
34
34
|
var require2 = import_node_module.default.createRequire(projectRoot), emptyPath = require2.resolve("@vxrn/vite-plugin-metro/empty", {
|
@@ -39,7 +39,26 @@ function getViteMetroPluginOptions(param) {
|
|
39
39
|
paths: [
|
40
40
|
projectRoot
|
41
41
|
]
|
42
|
-
})
|
42
|
+
}), routerRequireContextRegexString = function() {
|
43
|
+
var excludeRes = [
|
44
|
+
...(ignoredRouteFiles || []).map(function(pattern) {
|
45
|
+
return import_micromatch.default.makeRe(pattern);
|
46
|
+
}),
|
47
|
+
...import_glob_patterns.ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS.map(function(pattern) {
|
48
|
+
return import_micromatch.default.makeRe(pattern);
|
49
|
+
}),
|
50
|
+
import_micromatch.default.makeRe(import_glob_patterns.API_ROUTE_GLOB_PATTERN)
|
51
|
+
], supportedRegexMustStartWith = String.raw`^(?:(?:^|\/|(?:(?:(?!(?:^|\/)\.).)*?)\/)(?!\.)(?=.)[^/]*?`, supportedRegexMustEndWith = String.raw`)$`, negativeLookaheadGroups = excludeRes.map(function(re, i) {
|
52
|
+
var reSource = re.source;
|
53
|
+
if (!(reSource.startsWith(supportedRegexMustStartWith) && reSource.endsWith(supportedRegexMustEndWith))) {
|
54
|
+
var ignoredRouteFile = ignoredRouteFiles == null ? void 0 : ignoredRouteFiles[i];
|
55
|
+
throw ignoredRouteFile ? new Error(`[one/metro] ignoredRouteFile pattern "${ignoredRouteFile}" is not supported. We cannot process the corresponding regex "${reSource}" for now.`) : new Error(`Unsupported regex "${reSource}" in "ignoredRouteFiles".`);
|
56
|
+
}
|
57
|
+
var rePart = reSource.slice(supportedRegexMustStartWith.length, reSource.length - supportedRegexMustEndWith.length);
|
58
|
+
return String.raw`(?:.*${rePart})`;
|
59
|
+
});
|
60
|
+
return String.raw`^(?:\.\/)(?!${negativeLookaheadGroups.join("|")}$).*\.tsx?$`;
|
61
|
+
}();
|
43
62
|
return {
|
44
63
|
defaultConfigOverrides: function(defaultConfig) {
|
45
64
|
var _defaultConfig_resolver, _defaultConfig_resolver1, _defaultConfig_resolver2;
|
@@ -48,21 +67,22 @@ function getViteMetroPluginOptions(param) {
|
|
48
67
|
resolver: {
|
49
68
|
...defaultConfig == null ? void 0 : defaultConfig.resolver,
|
50
69
|
extraNodeModules: {
|
51
|
-
...defaultConfig == null || (_defaultConfig_resolver = defaultConfig.resolver) === null || _defaultConfig_resolver === void 0 ? void 0 : _defaultConfig_resolver.extraNodeModules
|
52
|
-
// "vite-tsconfig-paths" for Metro
|
53
|
-
...Object.fromEntries(Object.entries(tsconfigPathsConfigLoadResult.paths).map(function(param2) {
|
54
|
-
var [k, v] = param2, _v_;
|
55
|
-
if (k.endsWith("/*") && (!((_v_ = v[0]) === null || _v_ === void 0) && _v_.endsWith("/*"))) {
|
56
|
-
var key = k.replace(/\/\*$/, ""), value = v[0].replace(/\/\*$/, "");
|
57
|
-
return value = import_node_path.default.join(tsconfigPathsConfigLoadResult.absoluteBaseUrl, value), [
|
58
|
-
key,
|
59
|
-
value
|
60
|
-
];
|
61
|
-
}
|
62
|
-
}).filter(function(i) {
|
63
|
-
return !!i;
|
64
|
-
}))
|
70
|
+
...defaultConfig == null || (_defaultConfig_resolver = defaultConfig.resolver) === null || _defaultConfig_resolver === void 0 ? void 0 : _defaultConfig_resolver.extraNodeModules
|
65
71
|
},
|
72
|
+
// "vite-tsconfig-paths" for Metro
|
73
|
+
// Commenting out since we are using babel-plugin-module-resolver alias instead
|
74
|
+
// ...Object.fromEntries(
|
75
|
+
// Object.entries(tsconfigPathsConfigLoadResult.paths)
|
76
|
+
// .map(([k, v]) => {
|
77
|
+
// if (k.endsWith('/*') && v[0]?.endsWith('/*')) {
|
78
|
+
// const key = k.replace(/\/\*$/, '')
|
79
|
+
// let value = v[0].replace(/\/\*$/, '')
|
80
|
+
// value = path.join(tsconfigPathsConfigLoadResult.absoluteBaseUrl, value)
|
81
|
+
// return [key, value]
|
82
|
+
// }
|
83
|
+
// })
|
84
|
+
// .filter((i): i is NonNullable<typeof i> => !!i)
|
85
|
+
// ),
|
66
86
|
nodeModulesPaths: tsconfigPathsConfigLoadResult.absoluteBaseUrl ? [
|
67
87
|
// "vite-tsconfig-paths" for Metro
|
68
88
|
tsconfigPathsConfigLoadResult.absoluteBaseUrl,
|
@@ -92,8 +112,11 @@ function getViteMetroPluginOptions(param) {
|
|
92
112
|
"babel-plugin-module-resolver",
|
93
113
|
{
|
94
114
|
alias: {
|
115
|
+
// "vite-tsconfig-paths" for Metro
|
95
116
|
...Object.fromEntries(Object.entries(tsconfigPathsConfigLoadResult.paths).map(function(param2) {
|
96
|
-
var [k, v] = param2, key =
|
117
|
+
var [k, v] = param2, key = function() {
|
118
|
+
return k.endsWith("/*") ? k.replace(/\/\*$/, "") : `${k}$`;
|
119
|
+
}(), value = v[0].replace(/\/\*$/, "");
|
97
120
|
return value.startsWith("./") || (value = `./${value}`), [
|
98
121
|
key,
|
99
122
|
value
|
@@ -106,7 +129,8 @@ function getViteMetroPluginOptions(param) {
|
|
106
129
|
"one/babel-plugin-one-router-metro",
|
107
130
|
{
|
108
131
|
ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY: import_node_path.default.relative(import_node_path.default.dirname(metroEntryPath), import_node_path.default.join(projectRoot, relativeRouterRoot)),
|
109
|
-
ONE_ROUTER_ROOT_FOLDER_NAME: relativeRouterRoot
|
132
|
+
ONE_ROUTER_ROOT_FOLDER_NAME: relativeRouterRoot,
|
133
|
+
ONE_ROUTER_REQUIRE_CONTEXT_REGEX_STRING: routerRequireContextRegexString
|
110
134
|
}
|
111
135
|
]
|
112
136
|
]
|
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../src/metro-config/getViteMetroPluginOptions.ts"],
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;AACA;;;;;yBAAmB,oCACnB,mBAAiB,kCACjB,wBAA0B;
|
5
|
-
"names": ["getViteMetroPluginOptions", "projectRoot", "relativeRouterRoot", "tsconfigPathsConfigLoadResult", "tsconfigPaths", "loadConfig", "resultType", "Error", "require", "module", "createRequire", "emptyPath", "resolve", "paths", "metroEntryPath", "
|
4
|
+
"mappings": "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",
|
5
|
+
"names": ["getViteMetroPluginOptions", "projectRoot", "relativeRouterRoot", "ignoredRouteFiles", "tsconfigPathsConfigLoadResult", "tsconfigPaths", "loadConfig", "resultType", "Error", "require", "module", "createRequire", "emptyPath", "resolve", "paths", "metroEntryPath", "routerRequireContextRegexString", "excludeRes", "map", "pattern", "mm", "makeRe", "ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS", "API_ROUTE_GLOB_PATTERN", "supportedRegexMustStartWith", "String", "raw", "supportedRegexMustEndWith", "negativeLookaheadGroups", "re", "i", "reSource", "source", "startsWith", "endsWith", "ignoredRouteFile", "rePart", "slice", "length", "join", "defaultConfigOverrides", "defaultConfig", "resolver", "extraNodeModules", "nodeModulesPaths", "absoluteBaseUrl", "resolveRequest", "context", "moduleName", "platform", "console", "warn", "type", "filePath", "test", "defaultResolveRequest", "res", "babelConfig", "plugins", "alias", "Object", "fromEntries", "entries", "param", "k", "v", "key", "replace", "value", "ONE_ROUTER_APP_ROOT_RELATIVE_TO_ENTRY", "path", "relative", "dirname", "ONE_ROUTER_ROOT_FOLDER_NAME", "ONE_ROUTER_REQUIRE_CONTEXT_REGEX_STRING"]
|
6
6
|
}
|
@@ -0,0 +1,32 @@
|
|
1
|
+
var __defProp = Object.defineProperty;
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
5
|
+
var __export = (target, all) => {
|
6
|
+
for (var name in all) __defProp(target, name, {
|
7
|
+
get: all[name],
|
8
|
+
enumerable: !0
|
9
|
+
});
|
10
|
+
},
|
11
|
+
__copyProps = (to, from, except, desc) => {
|
12
|
+
if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
|
13
|
+
get: () => from[key],
|
14
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
15
|
+
});
|
16
|
+
return to;
|
17
|
+
};
|
18
|
+
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
19
|
+
value: !0
|
20
|
+
}), mod);
|
21
|
+
var glob_patterns_exports = {};
|
22
|
+
__export(glob_patterns_exports, {
|
23
|
+
API_ROUTE_GLOB_PATTERN: () => API_ROUTE_GLOB_PATTERN,
|
24
|
+
ROUTE_GLOB_PATTERN: () => ROUTE_GLOB_PATTERN,
|
25
|
+
ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS: () => ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS,
|
26
|
+
ROUTE_WEB_EXCLUSION_GLOB_PATTERNS: () => ROUTE_WEB_EXCLUSION_GLOB_PATTERNS
|
27
|
+
});
|
28
|
+
module.exports = __toCommonJS(glob_patterns_exports);
|
29
|
+
const ROUTE_GLOB_PATTERN = "**/*.{ts,tsx}",
|
30
|
+
API_ROUTE_GLOB_PATTERN = "**/*+api.{ts,tsx}",
|
31
|
+
ROUTE_WEB_EXCLUSION_GLOB_PATTERNS = ["**/*.native.{ts,tsx}", "**/*.ios.{ts,tsx}", "**/*.android.{ts,tsx}"],
|
32
|
+
ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS = ["**/*.web.{ts,tsx}"];
|
@@ -0,0 +1,28 @@
|
|
1
|
+
var __defProp = Object.defineProperty;
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
5
|
+
var __export = (target, all) => {
|
6
|
+
for (var name in all)
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: !0 });
|
8
|
+
}, __copyProps = (to, from, except, desc) => {
|
9
|
+
if (from && typeof from == "object" || typeof from == "function")
|
10
|
+
for (let key of __getOwnPropNames(from))
|
11
|
+
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
12
|
+
return to;
|
13
|
+
};
|
14
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
15
|
+
var glob_patterns_exports = {};
|
16
|
+
__export(glob_patterns_exports, {
|
17
|
+
API_ROUTE_GLOB_PATTERN: () => API_ROUTE_GLOB_PATTERN,
|
18
|
+
ROUTE_GLOB_PATTERN: () => ROUTE_GLOB_PATTERN,
|
19
|
+
ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS: () => ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS,
|
20
|
+
ROUTE_WEB_EXCLUSION_GLOB_PATTERNS: () => ROUTE_WEB_EXCLUSION_GLOB_PATTERNS
|
21
|
+
});
|
22
|
+
module.exports = __toCommonJS(glob_patterns_exports);
|
23
|
+
const ROUTE_GLOB_PATTERN = "**/*.{ts,tsx}", API_ROUTE_GLOB_PATTERN = "**/*+api.{ts,tsx}", ROUTE_WEB_EXCLUSION_GLOB_PATTERNS = [
|
24
|
+
"**/*.native.{ts,tsx}",
|
25
|
+
"**/*.ios.{ts,tsx}",
|
26
|
+
"**/*.android.{ts,tsx}"
|
27
|
+
], ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS = ["**/*.web.{ts,tsx}"];
|
28
|
+
//# sourceMappingURL=glob-patterns.js.map
|
@@ -0,0 +1,38 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __defProp = Object.defineProperty;
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
6
|
+
var __export = (target, all) => {
|
7
|
+
for (var name in all)
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: !0 });
|
9
|
+
}, __copyProps = (to, from, except, desc) => {
|
10
|
+
if (from && typeof from == "object" || typeof from == "function")
|
11
|
+
for (let key of __getOwnPropNames(from))
|
12
|
+
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
13
|
+
return to;
|
14
|
+
};
|
15
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
16
|
+
var glob_patterns_exports = {};
|
17
|
+
__export(glob_patterns_exports, {
|
18
|
+
API_ROUTE_GLOB_PATTERN: () => API_ROUTE_GLOB_PATTERN,
|
19
|
+
ROUTE_GLOB_PATTERN: () => ROUTE_GLOB_PATTERN,
|
20
|
+
ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS: () => ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS,
|
21
|
+
ROUTE_WEB_EXCLUSION_GLOB_PATTERNS: () => ROUTE_WEB_EXCLUSION_GLOB_PATTERNS
|
22
|
+
});
|
23
|
+
module.exports = __toCommonJS(glob_patterns_exports);
|
24
|
+
var ROUTE_GLOB_PATTERN = "**/*.{ts,tsx}", API_ROUTE_GLOB_PATTERN = "**/*+api.{ts,tsx}", ROUTE_WEB_EXCLUSION_GLOB_PATTERNS = [
|
25
|
+
"**/*.native.{ts,tsx}",
|
26
|
+
"**/*.ios.{ts,tsx}",
|
27
|
+
"**/*.android.{ts,tsx}"
|
28
|
+
], ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS = [
|
29
|
+
"**/*.web.{ts,tsx}"
|
30
|
+
];
|
31
|
+
// Annotate the CommonJS export names for ESM import in node:
|
32
|
+
0 && (module.exports = {
|
33
|
+
API_ROUTE_GLOB_PATTERN,
|
34
|
+
ROUTE_GLOB_PATTERN,
|
35
|
+
ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS,
|
36
|
+
ROUTE_WEB_EXCLUSION_GLOB_PATTERNS
|
37
|
+
});
|
38
|
+
//# sourceMappingURL=glob-patterns.js.map
|
@@ -0,0 +1,6 @@
|
|
1
|
+
{
|
2
|
+
"version": 3,
|
3
|
+
"sources": ["../../../src/router/glob-patterns.ts"],
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;AAAA;;;;;;;;AAAO,IAAMA,qBAAqB,iBACrBC,yBAAyB,qBAKzBC,oCAAoC;EAC/C;EACA;EACA;GAMWC,uCAAuC;EAAC;;",
|
5
|
+
"names": ["ROUTE_GLOB_PATTERN", "API_ROUTE_GLOB_PATTERN", "ROUTE_WEB_EXCLUSION_GLOB_PATTERNS", "ROUTE_NATIVE_EXCLUSION_GLOB_PATTERNS"]
|
6
|
+
}
|
@@ -37,11 +37,17 @@ module.exports = __toCommonJS(generateRouteTypes_exports);
|
|
37
37
|
var import_fs_extra = __toESM(require("fs-extra"), 1),
|
38
38
|
import_promises = require("node:fs/promises"),
|
39
39
|
import_node_path = require("node:path"),
|
40
|
+
import_micromatch = __toESM(require("micromatch"), 1),
|
40
41
|
import_useViteRoutes = require("../router/useViteRoutes.cjs"),
|
41
42
|
import_globDir = require("../utils/globDir.cjs"),
|
42
43
|
import_getTypedRoutesDeclarationFile = require("./getTypedRoutesDeclarationFile.cjs");
|
43
|
-
async function generateRouteTypes(outFile, routerRoot) {
|
44
|
-
|
44
|
+
async function generateRouteTypes(outFile, routerRoot, ignoredRouteFiles) {
|
45
|
+
let routePaths = (0, import_globDir.globDir)(routerRoot);
|
46
|
+
ignoredRouteFiles && ignoredRouteFiles.length > 0 && (routePaths = import_micromatch.default.not(routePaths, ignoredRouteFiles, {
|
47
|
+
// The path starts with './', such as './foo/bar/baz.test.tsx', and ignoredRouteFiles is like ['**/*.test.*'], so we need matchBase here.
|
48
|
+
matchBase: !0
|
49
|
+
}));
|
50
|
+
const routes = routePaths.reduce((acc, cur) => (acc[cur] = {}, acc), {}),
|
45
51
|
context = (0, import_useViteRoutes.globbedRoutesToRouteContext)(routes, routerRoot),
|
46
52
|
declarations = (0, import_getTypedRoutesDeclarationFile.getTypedRoutesDeclarationFile)(context);
|
47
53
|
await import_fs_extra.default.ensureDir((0, import_node_path.dirname)(outFile)), await (0, import_promises.writeFile)(outFile, declarations);
|
@@ -25,9 +25,14 @@ __export(generateRouteTypes_exports, {
|
|
25
25
|
generateRouteTypes: () => generateRouteTypes
|
26
26
|
});
|
27
27
|
module.exports = __toCommonJS(generateRouteTypes_exports);
|
28
|
-
var import_fs_extra = __toESM(require("fs-extra"), 1), import_promises = require("node:fs/promises"), import_node_path = require("node:path"), import_useViteRoutes = require("../router/useViteRoutes"), import_globDir = require("../utils/globDir"), import_getTypedRoutesDeclarationFile = require("./getTypedRoutesDeclarationFile");
|
29
|
-
async function generateRouteTypes(outFile, routerRoot) {
|
30
|
-
|
28
|
+
var import_fs_extra = __toESM(require("fs-extra"), 1), import_promises = require("node:fs/promises"), import_node_path = require("node:path"), import_micromatch = __toESM(require("micromatch"), 1), import_useViteRoutes = require("../router/useViteRoutes"), import_globDir = require("../utils/globDir"), import_getTypedRoutesDeclarationFile = require("./getTypedRoutesDeclarationFile");
|
29
|
+
async function generateRouteTypes(outFile, routerRoot, ignoredRouteFiles) {
|
30
|
+
let routePaths = (0, import_globDir.globDir)(routerRoot);
|
31
|
+
ignoredRouteFiles && ignoredRouteFiles.length > 0 && (routePaths = import_micromatch.default.not(routePaths, ignoredRouteFiles, {
|
32
|
+
// The path starts with './', such as './foo/bar/baz.test.tsx', and ignoredRouteFiles is like ['**/*.test.*'], so we need matchBase here.
|
33
|
+
matchBase: !0
|
34
|
+
}));
|
35
|
+
const routes = routePaths.reduce((acc, cur) => (acc[cur] = {}, acc), {}), context = (0, import_useViteRoutes.globbedRoutesToRouteContext)(routes, routerRoot), declarations = (0, import_getTypedRoutesDeclarationFile.getTypedRoutesDeclarationFile)(context);
|
31
36
|
await import_fs_extra.default.ensureDir((0, import_node_path.dirname)(outFile)), await (0, import_promises.writeFile)(outFile, declarations);
|
32
37
|
}
|
33
38
|
//# sourceMappingURL=generateRouteTypes.js.map
|