@umijs/core 4.0.7 → 4.0.8

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 (49) hide show
  1. package/compiled/dotenv-expand/LICENSE +24 -0
  2. package/compiled/dotenv-expand/index.js +1 -0
  3. package/compiled/dotenv-expand/lib/main.d.ts +29 -0
  4. package/compiled/dotenv-expand/package.json +1 -0
  5. package/dist/config/config.d.ts +0 -0
  6. package/dist/config/config.js +197 -184
  7. package/dist/config/utils.d.ts +0 -0
  8. package/dist/config/utils.js +36 -11
  9. package/dist/constants.d.ts +0 -0
  10. package/dist/constants.js +44 -11
  11. package/dist/index.d.ts +0 -0
  12. package/dist/index.js +46 -24
  13. package/dist/route/defineRoutes.d.ts +0 -0
  14. package/dist/route/defineRoutes.js +52 -28
  15. package/dist/route/route.d.ts +0 -0
  16. package/dist/route/route.js +20 -22
  17. package/dist/route/routeUtils.d.ts +0 -0
  18. package/dist/route/routeUtils.js +40 -20
  19. package/dist/route/routesConfig.d.ts +0 -0
  20. package/dist/route/routesConfig.js +120 -75
  21. package/dist/route/routesConvention.d.ts +0 -0
  22. package/dist/route/routesConvention.js +89 -67
  23. package/dist/route/utils.d.ts +0 -0
  24. package/dist/route/utils.js +48 -23
  25. package/dist/service/command.d.ts +0 -0
  26. package/dist/service/command.js +39 -15
  27. package/dist/service/env.d.ts +0 -0
  28. package/dist/service/env.js +44 -18
  29. package/dist/service/generatePlugin.d.ts +0 -0
  30. package/dist/service/generatePlugin.js +98 -77
  31. package/dist/service/generator.d.ts +0 -0
  32. package/dist/service/generator.js +50 -12
  33. package/dist/service/hook.d.ts +0 -0
  34. package/dist/service/hook.js +41 -17
  35. package/dist/service/path.d.ts +0 -0
  36. package/dist/service/path.js +51 -29
  37. package/dist/service/plugin.d.ts +0 -0
  38. package/dist/service/plugin.js +137 -140
  39. package/dist/service/pluginAPI.d.ts +0 -0
  40. package/dist/service/pluginAPI.js +183 -161
  41. package/dist/service/service.d.ts +0 -0
  42. package/dist/service/service.js +385 -420
  43. package/dist/service/servicePlugin.d.ts +0 -0
  44. package/dist/service/servicePlugin.js +37 -13
  45. package/dist/service/utils.d.ts +0 -0
  46. package/dist/service/utils.js +32 -8
  47. package/dist/types.d.ts +0 -0
  48. package/dist/types.js +77 -42
  49. package/package.json +6 -5
@@ -1,31 +1,55 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.defineRoutes = void 0;
4
- const utils_1 = require("./utils");
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: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+
19
+ // defineRoutes.ts
20
+ var defineRoutes_exports = {};
21
+ __export(defineRoutes_exports, {
22
+ defineRoutes: () => defineRoutes
23
+ });
24
+ module.exports = __toCommonJS(defineRoutes_exports);
25
+ var import_utils = require("./utils");
5
26
  function defineRoutes(callback) {
6
- const routes = Object.create(null);
7
- const parentRoutes = [];
8
- const defineRoute = (opts) => {
9
- opts.options = opts.options || {};
10
- const parentRoute = parentRoutes.length > 0 ? parentRoutes[parentRoutes.length - 1] : null;
11
- const parentId = parentRoute === null || parentRoute === void 0 ? void 0 : parentRoute.id;
12
- const parentAbsPath = parentRoute === null || parentRoute === void 0 ? void 0 : parentRoute.absPath;
13
- const absPath = [parentAbsPath, opts.path].join('/');
14
- const route = {
15
- path: opts.path || '/',
16
- id: (0, utils_1.createRouteId)(opts.file),
17
- parentId,
18
- file: opts.file,
19
- absPath,
20
- };
21
- routes[route.id] = route;
22
- if (opts.children) {
23
- parentRoutes.push(route);
24
- opts.children();
25
- parentRoutes.pop();
26
- }
27
+ const routes = /* @__PURE__ */ Object.create(null);
28
+ const parentRoutes = [];
29
+ const defineRoute = (opts) => {
30
+ opts.options = opts.options || {};
31
+ const parentRoute = parentRoutes.length > 0 ? parentRoutes[parentRoutes.length - 1] : null;
32
+ const parentId = parentRoute == null ? void 0 : parentRoute.id;
33
+ const parentAbsPath = parentRoute == null ? void 0 : parentRoute.absPath;
34
+ const absPath = [parentAbsPath, opts.path].join("/");
35
+ const route = {
36
+ path: opts.path || "/",
37
+ id: (0, import_utils.createRouteId)(opts.file),
38
+ parentId,
39
+ file: opts.file,
40
+ absPath
27
41
  };
28
- callback(defineRoute);
29
- return routes;
42
+ routes[route.id] = route;
43
+ if (opts.children) {
44
+ parentRoutes.push(route);
45
+ opts.children();
46
+ parentRoutes.pop();
47
+ }
48
+ };
49
+ callback(defineRoute);
50
+ return routes;
30
51
  }
31
- exports.defineRoutes = defineRoutes;
52
+ // Annotate the CommonJS export names for ESM import in node:
53
+ 0 && (module.exports = {
54
+ defineRoutes
55
+ });
File without changes
@@ -1,23 +1,21 @@
1
- "use strict";
2
- // TODO
3
- // [x] convention route
4
- // config route
5
- // programming route
6
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
- if (k2 === undefined) k2 = k;
8
- var desc = Object.getOwnPropertyDescriptor(m, k);
9
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
10
- desc = { enumerable: true, get: function() { return m[k]; } };
11
- }
12
- Object.defineProperty(o, k2, desc);
13
- }) : (function(o, m, k, k2) {
14
- if (k2 === undefined) k2 = k;
15
- o[k2] = m[k];
16
- }));
17
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
18
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __copyProps = (to, from, except, desc) => {
6
+ if (from && typeof from === "object" || typeof from === "function") {
7
+ for (let key of __getOwnPropNames(from))
8
+ if (!__hasOwnProp.call(to, key) && key !== except)
9
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
10
+ }
11
+ return to;
19
12
  };
20
- Object.defineProperty(exports, "__esModule", { value: true });
21
- __exportStar(require("./routesConfig"), exports);
22
- __exportStar(require("./routesConvention"), exports);
23
- __exportStar(require("./routeUtils"), exports);
13
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+
16
+ // route.ts
17
+ var route_exports = {};
18
+ module.exports = __toCommonJS(route_exports);
19
+ __reExport(route_exports, require("./routesConfig"), module.exports);
20
+ __reExport(route_exports, require("./routesConvention"), module.exports);
21
+ __reExport(route_exports, require("./routeUtils"), module.exports);
File without changes
@@ -1,24 +1,44 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addParentRoute = void 0;
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: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+
19
+ // routeUtils.ts
20
+ var routeUtils_exports = {};
21
+ __export(routeUtils_exports, {
22
+ addParentRoute: () => addParentRoute
23
+ });
24
+ module.exports = __toCommonJS(routeUtils_exports);
4
25
  function addParentRoute(opts) {
5
- if (opts.addToAll) {
6
- for (const id of Object.keys(opts.routes)) {
7
- if (opts.routes[id].parentId === undefined &&
8
- (!opts.test || opts.test(opts.routes[id]))) {
9
- opts.routes[id].parentId = opts.target.id;
10
- }
11
- }
26
+ if (opts.addToAll) {
27
+ for (const id of Object.keys(opts.routes)) {
28
+ if (opts.routes[id].parentId === void 0 && (!opts.test || opts.test(opts.routes[id]))) {
29
+ opts.routes[id].parentId = opts.target.id;
30
+ }
12
31
  }
13
- else if (opts.id) {
14
- if (!opts.test || opts.test(opts.routes[opts.id])) {
15
- opts.routes[opts.id].parentId = opts.target.id;
16
- }
32
+ } else if (opts.id) {
33
+ if (!opts.test || opts.test(opts.routes[opts.id])) {
34
+ opts.routes[opts.id].parentId = opts.target.id;
17
35
  }
18
- else {
19
- throw new Error(`addParentRoute failed, opts.addToAll or opts.id must be supplied.`);
20
- }
21
- // add new route
22
- opts.routes[opts.target.id] = opts.target;
36
+ } else {
37
+ throw new Error(`addParentRoute failed, opts.addToAll or opts.id must be supplied.`);
38
+ }
39
+ opts.routes[opts.target.id] = opts.target;
23
40
  }
24
- exports.addParentRoute = addParentRoute;
41
+ // Annotate the CommonJS export names for ESM import in node:
42
+ 0 && (module.exports = {
43
+ addParentRoute
44
+ });
File without changes
@@ -1,83 +1,128 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __defProps = Object.defineProperties;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
+ var __getProtoOf = Object.getPrototypeOf;
9
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
10
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
11
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
12
+ var __spreadValues = (a, b) => {
13
+ for (var prop in b || (b = {}))
14
+ if (__hasOwnProp.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ if (__getOwnPropSymbols)
17
+ for (var prop of __getOwnPropSymbols(b)) {
18
+ if (__propIsEnum.call(b, prop))
19
+ __defNormalProp(a, prop, b[prop]);
20
+ }
21
+ return a;
22
+ };
23
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
24
+ var __objRest = (source, exclude) => {
25
+ var target = {};
26
+ for (var prop in source)
27
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
28
+ target[prop] = source[prop];
29
+ if (source != null && __getOwnPropSymbols)
30
+ for (var prop of __getOwnPropSymbols(source)) {
31
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
32
+ target[prop] = source[prop];
33
+ }
34
+ return target;
35
+ };
36
+ var __export = (target, all) => {
37
+ for (var name in all)
38
+ __defProp(target, name, { get: all[name], enumerable: true });
4
39
  };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getConfigRoutes = void 0;
7
- const assert_1 = __importDefault(require("assert"));
40
+ var __copyProps = (to, from, except, desc) => {
41
+ if (from && typeof from === "object" || typeof from === "function") {
42
+ for (let key of __getOwnPropNames(from))
43
+ if (!__hasOwnProp.call(to, key) && key !== except)
44
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
45
+ }
46
+ return to;
47
+ };
48
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
49
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
50
+
51
+ // routesConfig.ts
52
+ var routesConfig_exports = {};
53
+ __export(routesConfig_exports, {
54
+ getConfigRoutes: () => getConfigRoutes
55
+ });
56
+ module.exports = __toCommonJS(routesConfig_exports);
57
+ var import_assert = __toESM(require("assert"));
8
58
  function getConfigRoutes(opts) {
9
- const memo = { ret: {}, id: 1 };
10
- transformRoutes({
11
- routes: opts.routes,
12
- parentId: undefined,
13
- memo,
14
- onResolveComponent: opts.onResolveComponent,
15
- });
16
- return memo.ret;
59
+ const memo = { ret: {}, id: 1 };
60
+ transformRoutes({
61
+ routes: opts.routes,
62
+ parentId: void 0,
63
+ memo,
64
+ onResolveComponent: opts.onResolveComponent
65
+ });
66
+ return memo.ret;
17
67
  }
18
- exports.getConfigRoutes = getConfigRoutes;
19
68
  function transformRoutes(opts) {
20
- opts.routes.forEach((route) => {
21
- transformRoute({
22
- route,
23
- parentId: opts.parentId,
24
- memo: opts.memo,
25
- onResolveComponent: opts.onResolveComponent,
26
- });
69
+ opts.routes.forEach((route) => {
70
+ transformRoute({
71
+ route,
72
+ parentId: opts.parentId,
73
+ memo: opts.memo,
74
+ onResolveComponent: opts.onResolveComponent
27
75
  });
76
+ });
28
77
  }
29
78
  function transformRoute(opts) {
30
- (0, assert_1.default)(!opts.route.children, 'children is not allowed in route props, use routes instead.');
31
- const id = String(opts.memo.id++);
32
- const { routes, component, wrappers, ...routeProps } = opts.route;
33
- let absPath = opts.route.path;
34
- if ((absPath === null || absPath === void 0 ? void 0 : absPath.charAt(0)) !== '/') {
35
- const parentAbsPath = opts.parentId
36
- ? opts.memo.ret[opts.parentId].absPath.replace(/\/+$/, '/') // to remove '/'s on the tail
37
- : '/';
38
- absPath = parentAbsPath + absPath;
39
- }
40
- opts.memo.ret[id] = {
41
- ...routeProps,
42
- path: opts.route.path,
43
- ...(component
44
- ? {
45
- file: opts.onResolveComponent
46
- ? opts.onResolveComponent(component)
47
- : component,
48
- }
49
- : {}),
50
- parentId: opts.parentId,
51
- id,
52
- };
53
- if (absPath) {
54
- opts.memo.ret[id].absPath = absPath;
55
- }
56
- if (wrappers === null || wrappers === void 0 ? void 0 : wrappers.length) {
57
- let parentId = opts.parentId;
58
- let path = opts.route.path;
59
- wrappers.forEach((wrapper) => {
60
- const { id } = transformRoute({
61
- route: { path, component: wrapper, isWrapper: true },
62
- parentId,
63
- memo: opts.memo,
64
- onResolveComponent: opts.onResolveComponent,
65
- });
66
- parentId = id;
67
- path = '';
68
- });
69
- opts.memo.ret[id].parentId = parentId;
70
- opts.memo.ret[id].path = path;
71
- // wrapper 处理后 真实 path 为空, 存储原 path 为 originPath 方便 layout 渲染
72
- opts.memo.ret[id].originPath = opts.route.path;
73
- }
74
- if (opts.route.routes) {
75
- transformRoutes({
76
- routes: opts.route.routes,
77
- parentId: id,
78
- memo: opts.memo,
79
- onResolveComponent: opts.onResolveComponent,
80
- });
81
- }
82
- return { id };
79
+ (0, import_assert.default)(!opts.route.children, "children is not allowed in route props, use routes instead.");
80
+ const id = String(opts.memo.id++);
81
+ const _a = opts.route, { routes, component, wrappers } = _a, routeProps = __objRest(_a, ["routes", "component", "wrappers"]);
82
+ let absPath = opts.route.path;
83
+ if ((absPath == null ? void 0 : absPath.charAt(0)) !== "/") {
84
+ const parentAbsPath = opts.parentId ? opts.memo.ret[opts.parentId].absPath.replace(/\/+$/, "/") : "/";
85
+ absPath = parentAbsPath + absPath;
86
+ }
87
+ opts.memo.ret[id] = __spreadProps(__spreadValues(__spreadProps(__spreadValues({}, routeProps), {
88
+ path: opts.route.path
89
+ }), component ? {
90
+ file: opts.onResolveComponent ? opts.onResolveComponent(component) : component
91
+ } : {}), {
92
+ parentId: opts.parentId,
93
+ id
94
+ });
95
+ if (absPath) {
96
+ opts.memo.ret[id].absPath = absPath;
97
+ }
98
+ if (wrappers == null ? void 0 : wrappers.length) {
99
+ let parentId = opts.parentId;
100
+ let path = opts.route.path;
101
+ wrappers.forEach((wrapper) => {
102
+ const { id: id2 } = transformRoute({
103
+ route: { path, component: wrapper, isWrapper: true },
104
+ parentId,
105
+ memo: opts.memo,
106
+ onResolveComponent: opts.onResolveComponent
107
+ });
108
+ parentId = id2;
109
+ path = "";
110
+ });
111
+ opts.memo.ret[id].parentId = parentId;
112
+ opts.memo.ret[id].path = path;
113
+ opts.memo.ret[id].originPath = opts.route.path;
114
+ }
115
+ if (opts.route.routes) {
116
+ transformRoutes({
117
+ routes: opts.route.routes,
118
+ parentId: id,
119
+ memo: opts.memo,
120
+ onResolveComponent: opts.onResolveComponent
121
+ });
122
+ }
123
+ return { id };
83
124
  }
125
+ // Annotate the CommonJS export names for ESM import in node:
126
+ 0 && (module.exports = {
127
+ getConfigRoutes
128
+ });
File without changes
@@ -1,77 +1,99 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getConventionRoutes = void 0;
4
- const utils_1 = require("@umijs/utils");
5
- const fs_1 = require("fs");
6
- const path_1 = require("path");
7
- const defineRoutes_1 = require("./defineRoutes");
8
- const utils_2 = require("./utils");
9
- // opts.base: path of pages
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
9
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
10
+ var __spreadValues = (a, b) => {
11
+ for (var prop in b || (b = {}))
12
+ if (__hasOwnProp.call(b, prop))
13
+ __defNormalProp(a, prop, b[prop]);
14
+ if (__getOwnPropSymbols)
15
+ for (var prop of __getOwnPropSymbols(b)) {
16
+ if (__propIsEnum.call(b, prop))
17
+ __defNormalProp(a, prop, b[prop]);
18
+ }
19
+ return a;
20
+ };
21
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
22
+ var __export = (target, all) => {
23
+ for (var name in all)
24
+ __defProp(target, name, { get: all[name], enumerable: true });
25
+ };
26
+ var __copyProps = (to, from, except, desc) => {
27
+ if (from && typeof from === "object" || typeof from === "function") {
28
+ for (let key of __getOwnPropNames(from))
29
+ if (!__hasOwnProp.call(to, key) && key !== except)
30
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
31
+ }
32
+ return to;
33
+ };
34
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
35
+
36
+ // routesConvention.ts
37
+ var routesConvention_exports = {};
38
+ __export(routesConvention_exports, {
39
+ getConventionRoutes: () => getConventionRoutes
40
+ });
41
+ module.exports = __toCommonJS(routesConvention_exports);
42
+ var import_utils = require("@umijs/utils");
43
+ var import_fs = require("fs");
44
+ var import_path = require("path");
45
+ var import_defineRoutes = require("./defineRoutes");
46
+ var import_utils2 = require("./utils");
10
47
  function getConventionRoutes(opts) {
11
- const files = {};
12
- if (!((0, fs_1.existsSync)(opts.base) && (0, fs_1.statSync)(opts.base).isDirectory())) {
13
- return {};
48
+ const files = {};
49
+ if (!((0, import_fs.existsSync)(opts.base) && (0, import_fs.statSync)(opts.base).isDirectory())) {
50
+ return {};
51
+ }
52
+ visitFiles({
53
+ dir: opts.base,
54
+ visitor: (file) => {
55
+ const routeId = (0, import_utils2.createRouteId)(file);
56
+ if ((0, import_utils2.isRouteModuleFile)({ file: (0, import_utils.winPath)(file), exclude: opts.exclude })) {
57
+ files[routeId] = (0, import_utils.winPath)(file);
58
+ }
14
59
  }
15
- visitFiles({
16
- dir: opts.base,
17
- visitor: (file) => {
18
- const routeId = (0, utils_2.createRouteId)(file);
19
- if ((0, utils_2.isRouteModuleFile)({ file: (0, utils_1.winPath)(file), exclude: opts.exclude })) {
20
- files[routeId] = (0, utils_1.winPath)(file);
21
- }
22
- },
23
- });
24
- const routeIds = Object.keys(files).sort(utils_2.byLongestFirst);
25
- function defineNestedRoutes(defineRoute, parentId) {
26
- const childRouteIds = routeIds.filter((id) => (0, utils_2.findParentRouteId)(routeIds, id) === parentId);
27
- for (let routeId of childRouteIds) {
28
- let routePath = createRoutePath(parentId ? routeId.slice(parentId.length + 1) : routeId);
29
- defineRoute({
30
- path: routePath,
31
- file: `${opts.prefix || ''}${files[routeId]}`,
32
- children() {
33
- defineNestedRoutes(defineRoute, routeId);
34
- },
35
- });
60
+ });
61
+ const routeIds = Object.keys(files).sort(import_utils2.byLongestFirst);
62
+ function defineNestedRoutes(defineRoute, parentId) {
63
+ const childRouteIds = routeIds.filter((id) => (0, import_utils2.findParentRouteId)(routeIds, id) === parentId);
64
+ for (let routeId of childRouteIds) {
65
+ let routePath = createRoutePath(parentId ? routeId.slice(parentId.length + 1) : routeId);
66
+ defineRoute({
67
+ path: routePath,
68
+ file: `${opts.prefix || ""}${files[routeId]}`,
69
+ children() {
70
+ defineNestedRoutes(defineRoute, routeId);
36
71
  }
72
+ });
37
73
  }
38
- return (0, defineRoutes_1.defineRoutes)(defineNestedRoutes);
74
+ }
75
+ return (0, import_defineRoutes.defineRoutes)(defineNestedRoutes);
39
76
  }
40
- exports.getConventionRoutes = getConventionRoutes;
41
77
  function visitFiles(opts) {
42
- opts.baseDir = opts.baseDir || opts.dir;
43
- for (let filename of (0, fs_1.readdirSync)(opts.dir)) {
44
- let file = (0, path_1.resolve)(opts.dir, filename);
45
- let stat = (0, fs_1.lstatSync)(file);
46
- if (stat.isDirectory()) {
47
- visitFiles({ ...opts, dir: file });
48
- }
49
- else if (stat.isFile() &&
50
- ['.tsx', '.ts', '.js', '.jsx', '.md', '.mdx', '.vue'].includes((0, path_1.extname)(file))) {
51
- opts.visitor((0, path_1.relative)(opts.baseDir, file));
52
- }
78
+ opts.baseDir = opts.baseDir || opts.dir;
79
+ for (let filename of (0, import_fs.readdirSync)(opts.dir)) {
80
+ let file = (0, import_path.resolve)(opts.dir, filename);
81
+ let stat = (0, import_fs.lstatSync)(file);
82
+ if (stat.isDirectory()) {
83
+ visitFiles(__spreadProps(__spreadValues({}, opts), { dir: file }));
84
+ } else if (stat.isFile() && [".tsx", ".ts", ".js", ".jsx", ".md", ".mdx", ".vue"].includes((0, import_path.extname)(file))) {
85
+ opts.visitor((0, import_path.relative)(opts.baseDir, file));
53
86
  }
87
+ }
54
88
  }
55
89
  function createRoutePath(routeId) {
56
- let path = routeId
57
- // routes/$ -> routes/*
58
- // routes/nested/$.tsx (with a "routes/nested.tsx" layout)
59
- .replace(/^\$$/, '*')
60
- // routes/docs.$ -> routes/docs/*
61
- // routes/docs/$ -> routes/docs/*
62
- .replace(/(\/|\.)\$$/, '/*')
63
- // routes/$user -> routes/:user
64
- .replace(/\$/g, ':')
65
- // routes/not.nested -> routes/not/nested
66
- .replace(/\./g, '/');
67
- // /index/index -> ''
68
- path = /\b\/?index\/index$/.test(path) ? path.replace(/\/?index$/, '') : path;
69
- // /(?<!:)\/?\bindex$/
70
- // e/index true
71
- // index true
72
- // e/:index false
73
- // e/index -> e index -> '' e/:index -> e/:index
74
- path = /\b\/?(?<!:)index$/.test(path) ? path.replace(/\/?index$/, '') : path;
75
- path = /\b\/?README$/.test(path) ? path.replace(/\/?README$/, '') : path;
76
- return path;
90
+ let path = routeId.replace(/^\$$/, "*").replace(/(\/|\.)\$$/, "/*").replace(/\$/g, ":").replace(/\./g, "/");
91
+ path = /\b\/?index\/index$/.test(path) ? path.replace(/\/?index$/, "") : path;
92
+ path = /\b\/?(?<!:)index$/.test(path) ? path.replace(/\/?index$/, "") : path;
93
+ path = /\b\/?README$/.test(path) ? path.replace(/\/?README$/, "") : path;
94
+ return path;
77
95
  }
96
+ // Annotate the CommonJS export names for ESM import in node:
97
+ 0 && (module.exports = {
98
+ getConventionRoutes
99
+ });
File without changes