one 1.2.75 → 1.2.76
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/cli/build.cjs +22 -6
- package/dist/cjs/cli/build.js +20 -3
- package/dist/cjs/cli/build.js.map +1 -1
- package/dist/cjs/cli/build.native.js +144 -93
- package/dist/cjs/cli/build.native.js.map +1 -1
- package/dist/cjs/cli/buildPage.cjs +43 -11
- package/dist/cjs/cli/buildPage.js +37 -5
- package/dist/cjs/cli/buildPage.js.map +1 -1
- package/dist/cjs/cli/buildPage.native.js +64 -14
- package/dist/cjs/cli/buildPage.native.js.map +1 -1
- package/dist/cjs/createApp.cjs +8 -4
- package/dist/cjs/createApp.js +8 -4
- package/dist/cjs/createApp.js.map +1 -1
- package/dist/cjs/index.cjs +6 -0
- package/dist/cjs/index.js +6 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/index.native.js +6 -0
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/router/Route.js.map +1 -1
- package/dist/cjs/router/Route.native.js.map +1 -1
- package/dist/cjs/router/router.cjs +29 -4
- package/dist/cjs/router/router.js +19 -2
- package/dist/cjs/router/router.js.map +1 -1
- package/dist/cjs/router/router.native.js +8 -1
- package/dist/cjs/router/router.native.js.map +1 -1
- package/dist/cjs/server/oneServe.cjs +47 -8
- package/dist/cjs/server/oneServe.js +46 -9
- package/dist/cjs/server/oneServe.js.map +1 -1
- package/dist/cjs/server/oneServe.native.js +57 -10
- package/dist/cjs/server/oneServe.native.js.map +1 -1
- package/dist/cjs/useMatches.cjs +55 -0
- package/dist/cjs/useMatches.js +53 -0
- package/dist/cjs/useMatches.js.map +6 -0
- package/dist/cjs/useMatches.native.js +87 -0
- package/dist/cjs/useMatches.native.js.map +1 -0
- package/dist/cjs/useMatches.test.cjs +287 -0
- package/dist/cjs/useMatches.test.js +208 -0
- package/dist/cjs/useMatches.test.js.map +6 -0
- package/dist/cjs/useMatches.test.native.js +313 -0
- package/dist/cjs/useMatches.test.native.js.map +1 -0
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.cjs +51 -10
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.js +39 -12
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.js.map +1 -1
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js +95 -52
- package/dist/cjs/vite/plugins/fileSystemRouterPlugin.native.js.map +1 -1
- package/dist/esm/cli/build.js +20 -3
- package/dist/esm/cli/build.js.map +1 -1
- package/dist/esm/cli/build.mjs +22 -6
- package/dist/esm/cli/build.mjs.map +1 -1
- package/dist/esm/cli/build.native.js +144 -93
- package/dist/esm/cli/build.native.js.map +1 -1
- package/dist/esm/cli/buildPage.js +37 -5
- package/dist/esm/cli/buildPage.js.map +1 -1
- package/dist/esm/cli/buildPage.mjs +43 -11
- package/dist/esm/cli/buildPage.mjs.map +1 -1
- package/dist/esm/cli/buildPage.native.js +64 -14
- package/dist/esm/cli/buildPage.native.js.map +1 -1
- package/dist/esm/createApp.js +8 -3
- package/dist/esm/createApp.js.map +1 -1
- package/dist/esm/createApp.mjs +8 -4
- package/dist/esm/createApp.mjs.map +1 -1
- package/dist/esm/index.js +12 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.mjs +3 -2
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +3 -2
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/router/Route.js.map +1 -1
- package/dist/esm/router/Route.mjs.map +1 -1
- package/dist/esm/router/Route.native.js.map +1 -1
- package/dist/esm/router/router.js +19 -1
- package/dist/esm/router/router.js.map +1 -1
- package/dist/esm/router/router.mjs +28 -4
- package/dist/esm/router/router.mjs.map +1 -1
- package/dist/esm/router/router.native.js +7 -1
- package/dist/esm/router/router.native.js.map +1 -1
- package/dist/esm/server/oneServe.js +46 -9
- package/dist/esm/server/oneServe.js.map +1 -1
- package/dist/esm/server/oneServe.mjs +47 -8
- package/dist/esm/server/oneServe.mjs.map +1 -1
- package/dist/esm/server/oneServe.native.js +57 -10
- package/dist/esm/server/oneServe.native.js.map +1 -1
- package/dist/esm/useMatches.js +38 -0
- package/dist/esm/useMatches.js.map +6 -0
- package/dist/esm/useMatches.mjs +29 -0
- package/dist/esm/useMatches.mjs.map +1 -0
- package/dist/esm/useMatches.native.js +58 -0
- package/dist/esm/useMatches.native.js.map +1 -0
- package/dist/esm/useMatches.test.js +209 -0
- package/dist/esm/useMatches.test.js.map +6 -0
- package/dist/esm/useMatches.test.mjs +288 -0
- package/dist/esm/useMatches.test.mjs.map +1 -0
- package/dist/esm/useMatches.test.native.js +311 -0
- package/dist/esm/useMatches.test.native.js.map +1 -0
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.js +39 -12
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.js.map +1 -1
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs +51 -10
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.mjs.map +1 -1
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js +95 -52
- package/dist/esm/vite/plugins/fileSystemRouterPlugin.native.js.map +1 -1
- package/package.json +9 -9
- package/src/cli/build.ts +36 -2
- package/src/cli/buildPage.ts +52 -2
- package/src/createApp.tsx +8 -0
- package/src/index.ts +8 -1
- package/src/router/Route.tsx +2 -0
- package/src/router/router.ts +57 -0
- package/src/server/oneServe.ts +89 -9
- package/src/types.ts +5 -0
- package/src/useMatches.test.ts +317 -0
- package/src/useMatches.ts +125 -0
- package/src/vite/plugins/fileSystemRouterPlugin.tsx +75 -19
- package/src/vite/types.ts +20 -0
- package/types/cli/build.d.ts.map +1 -1
- package/types/cli/buildPage.d.ts.map +1 -1
- package/types/createApp.d.ts.map +1 -1
- package/types/index.d.ts +2 -1
- package/types/index.d.ts.map +1 -1
- package/types/router/Route.d.ts +2 -0
- package/types/router/Route.d.ts.map +1 -1
- package/types/router/router.d.ts +6 -0
- package/types/router/router.d.ts.map +1 -1
- package/types/server/oneServe.d.ts.map +1 -1
- package/types/types.d.ts +5 -0
- package/types/types.d.ts.map +1 -1
- package/types/useMatches.d.ts +75 -0
- package/types/useMatches.d.ts.map +1 -0
- package/types/useMatches.test.d.ts +2 -0
- package/types/useMatches.test.d.ts.map +1 -0
- package/types/vite/plugins/fileSystemRouterPlugin.d.ts.map +1 -1
- package/types/vite/types.d.ts +19 -0
- package/types/vite/types.d.ts.map +1 -1
- package/dist/cjs/createRouteConfig.cjs +0 -28
- package/dist/cjs/createRouteConfig.js +0 -23
- package/dist/cjs/createRouteConfig.js.map +0 -6
- package/dist/cjs/createRouteConfig.native.js +0 -31
- package/dist/cjs/createRouteConfig.native.js.map +0 -1
- package/dist/esm/createRouteConfig.js +0 -7
- package/dist/esm/createRouteConfig.js.map +0 -6
- package/dist/esm/createRouteConfig.mjs +0 -5
- package/dist/esm/createRouteConfig.mjs.map +0 -1
- package/dist/esm/createRouteConfig.native.js +0 -5
- package/dist/esm/createRouteConfig.native.js.map +0 -1
|
@@ -0,0 +1,313 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var import_vitest = require("vitest"),
|
|
4
|
+
import_useMatches = require("./useMatches.native.js");
|
|
5
|
+
(0, import_vitest.describe)("useMatches", function () {
|
|
6
|
+
(0, import_vitest.describe)("setClientMatches", function () {
|
|
7
|
+
(0, import_vitest.it)("should update client matches without errors", function () {
|
|
8
|
+
var matches = [{
|
|
9
|
+
routeId: "/_layout",
|
|
10
|
+
pathname: "/",
|
|
11
|
+
params: {},
|
|
12
|
+
loaderData: {
|
|
13
|
+
title: "Root"
|
|
14
|
+
}
|
|
15
|
+
}, {
|
|
16
|
+
routeId: "/page",
|
|
17
|
+
pathname: "/page",
|
|
18
|
+
params: {},
|
|
19
|
+
loaderData: {
|
|
20
|
+
content: "Page content"
|
|
21
|
+
}
|
|
22
|
+
}];
|
|
23
|
+
(0, import_vitest.expect)(function () {
|
|
24
|
+
return (0, import_useMatches.setClientMatches)(matches);
|
|
25
|
+
}).not.toThrow();
|
|
26
|
+
}), (0, import_vitest.it)("should accept empty matches array", function () {
|
|
27
|
+
(0, import_vitest.expect)(function () {
|
|
28
|
+
return (0, import_useMatches.setClientMatches)([]);
|
|
29
|
+
}).not.toThrow();
|
|
30
|
+
});
|
|
31
|
+
}), (0, import_vitest.describe)("type safety", function () {
|
|
32
|
+
(0, import_vitest.it)("should have correct RouteMatch type", function () {
|
|
33
|
+
var match = {
|
|
34
|
+
routeId: "test",
|
|
35
|
+
pathname: "/test",
|
|
36
|
+
params: {
|
|
37
|
+
id: "123"
|
|
38
|
+
},
|
|
39
|
+
loaderData: {
|
|
40
|
+
foo: "bar"
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
(0, import_vitest.expect)(match.routeId).toBe("test"), (0, import_vitest.expect)(match.pathname).toBe("/test"), (0, import_vitest.expect)(match.params.id).toBe("123"), (0, import_vitest.expect)(match.loaderData).toEqual({
|
|
44
|
+
foo: "bar"
|
|
45
|
+
});
|
|
46
|
+
}), (0, import_vitest.it)("should allow string[] params", function () {
|
|
47
|
+
var match = {
|
|
48
|
+
routeId: "test",
|
|
49
|
+
pathname: "/test",
|
|
50
|
+
params: {
|
|
51
|
+
slugs: ["a", "b", "c"]
|
|
52
|
+
},
|
|
53
|
+
loaderData: null
|
|
54
|
+
};
|
|
55
|
+
(0, import_vitest.expect)(match.params.slugs).toEqual(["a", "b", "c"]);
|
|
56
|
+
}), (0, import_vitest.it)("should allow undefined loaderData", function () {
|
|
57
|
+
var match = {
|
|
58
|
+
routeId: "test",
|
|
59
|
+
pathname: "/test",
|
|
60
|
+
params: {},
|
|
61
|
+
loaderData: void 0
|
|
62
|
+
};
|
|
63
|
+
(0, import_vitest.expect)(match.loaderData).toBeUndefined();
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
});
|
|
67
|
+
(0, import_vitest.describe)("RouteMatch ordering", function () {
|
|
68
|
+
(0, import_vitest.it)("matches should be ordered parent to child (root layout first)", function () {
|
|
69
|
+
var matches = [{
|
|
70
|
+
routeId: "/_layout",
|
|
71
|
+
pathname: "/",
|
|
72
|
+
params: {},
|
|
73
|
+
loaderData: {
|
|
74
|
+
level: "root"
|
|
75
|
+
}
|
|
76
|
+
}, {
|
|
77
|
+
routeId: "/docs/_layout",
|
|
78
|
+
pathname: "/docs",
|
|
79
|
+
params: {},
|
|
80
|
+
loaderData: {
|
|
81
|
+
level: "docs"
|
|
82
|
+
}
|
|
83
|
+
}, {
|
|
84
|
+
routeId: "/docs/intro",
|
|
85
|
+
pathname: "/docs/intro",
|
|
86
|
+
params: {},
|
|
87
|
+
loaderData: {
|
|
88
|
+
level: "page"
|
|
89
|
+
}
|
|
90
|
+
}];
|
|
91
|
+
(0, import_vitest.expect)(matches[0].routeId).toBe("/_layout"), (0, import_vitest.expect)(matches[0].loaderData.level).toBe("root"), (0, import_vitest.expect)(matches[1].routeId).toBe("/docs/_layout"), (0, import_vitest.expect)(matches[1].loaderData.level).toBe("docs"), (0, import_vitest.expect)(matches[2].routeId).toBe("/docs/intro"), (0, import_vitest.expect)(matches[2].loaderData.level).toBe("page");
|
|
92
|
+
}), (0, import_vitest.it)("last match should be the current page", function () {
|
|
93
|
+
var matches = [{
|
|
94
|
+
routeId: "/_layout",
|
|
95
|
+
pathname: "/",
|
|
96
|
+
params: {},
|
|
97
|
+
loaderData: {}
|
|
98
|
+
}, {
|
|
99
|
+
routeId: "/page",
|
|
100
|
+
pathname: "/page",
|
|
101
|
+
params: {
|
|
102
|
+
id: "123"
|
|
103
|
+
},
|
|
104
|
+
loaderData: {
|
|
105
|
+
title: "Page"
|
|
106
|
+
}
|
|
107
|
+
}],
|
|
108
|
+
pageMatch = matches[matches.length - 1];
|
|
109
|
+
(0, import_vitest.expect)(pageMatch.routeId).toBe("/page"), (0, import_vitest.expect)(pageMatch.loaderData.title).toBe("Page");
|
|
110
|
+
});
|
|
111
|
+
});
|
|
112
|
+
(0, import_vitest.describe)("setClientMatches reactivity", function () {
|
|
113
|
+
(0, import_vitest.it)("should notify listeners when matches change", function () {
|
|
114
|
+
var notifyCount = 0,
|
|
115
|
+
listener = function () {
|
|
116
|
+
notifyCount++;
|
|
117
|
+
},
|
|
118
|
+
matches1 = [{
|
|
119
|
+
routeId: "/page1",
|
|
120
|
+
pathname: "/page1",
|
|
121
|
+
params: {},
|
|
122
|
+
loaderData: {}
|
|
123
|
+
}],
|
|
124
|
+
matches2 = [{
|
|
125
|
+
routeId: "/page2",
|
|
126
|
+
pathname: "/page2",
|
|
127
|
+
params: {},
|
|
128
|
+
loaderData: {}
|
|
129
|
+
}];
|
|
130
|
+
(0, import_useMatches.setClientMatches)(matches1), (0, import_useMatches.setClientMatches)(matches2), (0, import_vitest.expect)(notifyCount).toBe(0);
|
|
131
|
+
}), (0, import_vitest.it)("should handle multiple sequential updates", function () {
|
|
132
|
+
var matches1 = [{
|
|
133
|
+
routeId: "/a",
|
|
134
|
+
pathname: "/a",
|
|
135
|
+
params: {},
|
|
136
|
+
loaderData: {
|
|
137
|
+
n: 1
|
|
138
|
+
}
|
|
139
|
+
}],
|
|
140
|
+
matches2 = [{
|
|
141
|
+
routeId: "/b",
|
|
142
|
+
pathname: "/b",
|
|
143
|
+
params: {},
|
|
144
|
+
loaderData: {
|
|
145
|
+
n: 2
|
|
146
|
+
}
|
|
147
|
+
}],
|
|
148
|
+
matches3 = [{
|
|
149
|
+
routeId: "/c",
|
|
150
|
+
pathname: "/c",
|
|
151
|
+
params: {},
|
|
152
|
+
loaderData: {
|
|
153
|
+
n: 3
|
|
154
|
+
}
|
|
155
|
+
}];
|
|
156
|
+
(0, import_vitest.expect)(function () {
|
|
157
|
+
(0, import_useMatches.setClientMatches)(matches1), (0, import_useMatches.setClientMatches)(matches2), (0, import_useMatches.setClientMatches)(matches3);
|
|
158
|
+
}).not.toThrow();
|
|
159
|
+
});
|
|
160
|
+
});
|
|
161
|
+
(0, import_vitest.describe)("RouteMatch with dynamic params", function () {
|
|
162
|
+
(0, import_vitest.it)("should handle single dynamic param", function () {
|
|
163
|
+
var match = {
|
|
164
|
+
routeId: "/users/[id]",
|
|
165
|
+
pathname: "/users/123",
|
|
166
|
+
params: {
|
|
167
|
+
id: "123"
|
|
168
|
+
},
|
|
169
|
+
loaderData: {
|
|
170
|
+
user: {
|
|
171
|
+
name: "John"
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
};
|
|
175
|
+
(0, import_vitest.expect)(match.params.id).toBe("123");
|
|
176
|
+
}), (0, import_vitest.it)("should handle multiple dynamic params", function () {
|
|
177
|
+
var match = {
|
|
178
|
+
routeId: "/users/[userId]/posts/[postId]",
|
|
179
|
+
pathname: "/users/123/posts/456",
|
|
180
|
+
params: {
|
|
181
|
+
userId: "123",
|
|
182
|
+
postId: "456"
|
|
183
|
+
},
|
|
184
|
+
loaderData: {
|
|
185
|
+
post: {
|
|
186
|
+
title: "Hello"
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
};
|
|
190
|
+
(0, import_vitest.expect)(match.params.userId).toBe("123"), (0, import_vitest.expect)(match.params.postId).toBe("456");
|
|
191
|
+
}), (0, import_vitest.it)("should handle catch-all params", function () {
|
|
192
|
+
var match = {
|
|
193
|
+
routeId: "/docs/[...slug]",
|
|
194
|
+
pathname: "/docs/getting-started/intro",
|
|
195
|
+
params: {
|
|
196
|
+
slug: ["getting-started", "intro"]
|
|
197
|
+
},
|
|
198
|
+
loaderData: {
|
|
199
|
+
doc: {
|
|
200
|
+
content: "Hello"
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
};
|
|
204
|
+
(0, import_vitest.expect)(match.params.slug).toEqual(["getting-started", "intro"]);
|
|
205
|
+
});
|
|
206
|
+
});
|
|
207
|
+
(0, import_vitest.describe)("RouteMatch loaderData scenarios", function () {
|
|
208
|
+
(0, import_vitest.it)("should handle complex nested loaderData", function () {
|
|
209
|
+
var match = {
|
|
210
|
+
routeId: "/dashboard",
|
|
211
|
+
pathname: "/dashboard",
|
|
212
|
+
params: {},
|
|
213
|
+
loaderData: {
|
|
214
|
+
user: {
|
|
215
|
+
id: 1,
|
|
216
|
+
profile: {
|
|
217
|
+
name: "John",
|
|
218
|
+
settings: {
|
|
219
|
+
theme: "dark",
|
|
220
|
+
notifications: !0
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
},
|
|
224
|
+
posts: [{
|
|
225
|
+
id: 1,
|
|
226
|
+
title: "Post 1"
|
|
227
|
+
}, {
|
|
228
|
+
id: 2,
|
|
229
|
+
title: "Post 2"
|
|
230
|
+
}]
|
|
231
|
+
}
|
|
232
|
+
},
|
|
233
|
+
data = match.loaderData;
|
|
234
|
+
(0, import_vitest.expect)(data.user.profile.settings.theme).toBe("dark"), (0, import_vitest.expect)(data.posts).toHaveLength(2);
|
|
235
|
+
}), (0, import_vitest.it)("should handle null loaderData", function () {
|
|
236
|
+
var match = {
|
|
237
|
+
routeId: "/empty",
|
|
238
|
+
pathname: "/empty",
|
|
239
|
+
params: {},
|
|
240
|
+
loaderData: null
|
|
241
|
+
};
|
|
242
|
+
(0, import_vitest.expect)(match.loaderData).toBeNull();
|
|
243
|
+
}), (0, import_vitest.it)("should handle array loaderData", function () {
|
|
244
|
+
var match = {
|
|
245
|
+
routeId: "/list",
|
|
246
|
+
pathname: "/list",
|
|
247
|
+
params: {},
|
|
248
|
+
loaderData: [1, 2, 3, 4, 5]
|
|
249
|
+
};
|
|
250
|
+
(0, import_vitest.expect)(match.loaderData).toEqual([1, 2, 3, 4, 5]);
|
|
251
|
+
}), (0, import_vitest.it)("should handle primitive loaderData", function () {
|
|
252
|
+
var match = {
|
|
253
|
+
routeId: "/count",
|
|
254
|
+
pathname: "/count",
|
|
255
|
+
params: {},
|
|
256
|
+
loaderData: 42
|
|
257
|
+
};
|
|
258
|
+
(0, import_vitest.expect)(match.loaderData).toBe(42);
|
|
259
|
+
});
|
|
260
|
+
});
|
|
261
|
+
(0, import_vitest.describe)("finding matches", function () {
|
|
262
|
+
var createMatches = function () {
|
|
263
|
+
return [{
|
|
264
|
+
routeId: "/_layout",
|
|
265
|
+
pathname: "/",
|
|
266
|
+
params: {},
|
|
267
|
+
loaderData: {
|
|
268
|
+
root: !0
|
|
269
|
+
}
|
|
270
|
+
}, {
|
|
271
|
+
routeId: "/docs/_layout",
|
|
272
|
+
pathname: "/docs",
|
|
273
|
+
params: {},
|
|
274
|
+
loaderData: {
|
|
275
|
+
navItems: ["intro", "guide"]
|
|
276
|
+
}
|
|
277
|
+
}, {
|
|
278
|
+
routeId: "/docs/[slug]",
|
|
279
|
+
pathname: "/docs/intro",
|
|
280
|
+
params: {
|
|
281
|
+
slug: "intro"
|
|
282
|
+
},
|
|
283
|
+
loaderData: {
|
|
284
|
+
title: "Introduction",
|
|
285
|
+
headings: ["h1", "h2"]
|
|
286
|
+
}
|
|
287
|
+
}];
|
|
288
|
+
};
|
|
289
|
+
(0, import_vitest.it)("should find match by exact routeId", function () {
|
|
290
|
+
var matches = createMatches(),
|
|
291
|
+
found = matches.find(function (m) {
|
|
292
|
+
return m.routeId === "/docs/_layout";
|
|
293
|
+
});
|
|
294
|
+
(0, import_vitest.expect)(found).toBeDefined(), (0, import_vitest.expect)(found.loaderData.navItems).toEqual(["intro", "guide"]);
|
|
295
|
+
}), (0, import_vitest.it)("should find match by routeId pattern", function () {
|
|
296
|
+
var matches = createMatches(),
|
|
297
|
+
found = matches.find(function (m) {
|
|
298
|
+
return m.routeId.includes("_layout");
|
|
299
|
+
});
|
|
300
|
+
(0, import_vitest.expect)(found).toBeDefined(), (0, import_vitest.expect)(found.routeId).toBe("/_layout");
|
|
301
|
+
}), (0, import_vitest.it)("should get page match (last in array)", function () {
|
|
302
|
+
var matches = createMatches(),
|
|
303
|
+
pageMatch = matches[matches.length - 1];
|
|
304
|
+
(0, import_vitest.expect)(pageMatch.routeId).toBe("/docs/[slug]"), (0, import_vitest.expect)(pageMatch.loaderData.title).toBe("Introduction");
|
|
305
|
+
}), (0, import_vitest.it)("should get layout match for a page", function () {
|
|
306
|
+
var matches = createMatches(),
|
|
307
|
+
layoutMatch = matches.find(function (m) {
|
|
308
|
+
return m.routeId.includes("/docs/") && m.routeId.includes("_layout");
|
|
309
|
+
});
|
|
310
|
+
(0, import_vitest.expect)(layoutMatch).toBeDefined(), (0, import_vitest.expect)(layoutMatch.loaderData.navItems).toBeDefined();
|
|
311
|
+
});
|
|
312
|
+
});
|
|
313
|
+
//# sourceMappingURL=useMatches.test.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["import_vitest","require","import_useMatches","describe","it","matches","routeId","pathname","params","loaderData","title","content","expect","setClientMatches","not","toThrow","match","id","foo","toBe","toEqual","slugs","toBeUndefined","level","pageMatch","length","notifyCount","listener","matches1","matches2","n","matches3","user","name","userId","postId","post"],"sources":["../../src/useMatches.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -92,22 +92,62 @@ function createFileSystemRouterPlugin(options) {
|
|
|
92
92
|
const routeFile = import_node_path.default.join(routerRoot, route.file);
|
|
93
93
|
runner.clearCache(), globalThis.__vxrnresetState?.();
|
|
94
94
|
const exported = routeFile === "" ? {} : await runner.import(routeFile);
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
95
|
+
async function runLoaderWithTracking(routeNode, loaderFn) {
|
|
96
|
+
const routeId = routeNode.contextKey;
|
|
97
|
+
if (!loaderFn) return {
|
|
98
|
+
loaderData: void 0,
|
|
99
|
+
routeId
|
|
100
|
+
};
|
|
101
|
+
try {
|
|
102
|
+
const tracked = await (0, import_trackLoaderDependencies.trackLoaderDependencies)(() => loaderFn(loaderProps)),
|
|
103
|
+
routePath = loaderProps?.path || "/";
|
|
104
|
+
for (const dep of tracked.dependencies) {
|
|
105
|
+
const absoluteDep = import_node_path.default.resolve(dep);
|
|
106
|
+
loaderFileDependencies.has(absoluteDep) || (loaderFileDependencies.set(absoluteDep, /* @__PURE__ */new Set()), server?.watcher.add(absoluteDep), debugLoaderDeps && console.info(` \u24F5 [loader-dep] watching: ${absoluteDep}`)), loaderFileDependencies.get(absoluteDep).add(routePath);
|
|
107
|
+
}
|
|
108
|
+
return {
|
|
109
|
+
loaderData: tracked.result,
|
|
110
|
+
routeId
|
|
111
|
+
};
|
|
112
|
+
} catch (err) {
|
|
113
|
+
if ((0, import_isResponse.isResponse)(err)) throw err;
|
|
114
|
+
return console.error(`[one] Error running loader for ${routeId}:`, err), {
|
|
115
|
+
loaderData: void 0,
|
|
116
|
+
routeId
|
|
117
|
+
};
|
|
103
118
|
}
|
|
104
119
|
}
|
|
120
|
+
const layoutRoutes = route.layouts || [],
|
|
121
|
+
pageRoute = {
|
|
122
|
+
contextKey: route.file,
|
|
123
|
+
file: route.file
|
|
124
|
+
},
|
|
125
|
+
layoutLoaderPromises = layoutRoutes.map(async layout => {
|
|
126
|
+
const layoutFile = import_node_path.default.join(routerRoot, layout.contextKey),
|
|
127
|
+
layoutExported = await runner.import(layoutFile);
|
|
128
|
+
return runLoaderWithTracking(layout, layoutExported.loader);
|
|
129
|
+
}),
|
|
130
|
+
pageLoaderPromise = runLoaderWithTracking(pageRoute, exported.loader),
|
|
131
|
+
[layoutResults, pageResult] = await Promise.all([Promise.all(layoutLoaderPromises), pageLoaderPromise]),
|
|
132
|
+
matches = [...layoutResults.map(result => ({
|
|
133
|
+
routeId: result.routeId,
|
|
134
|
+
pathname: loaderProps?.path || "/",
|
|
135
|
+
params: loaderProps?.params || {},
|
|
136
|
+
loaderData: result.loaderData
|
|
137
|
+
})), {
|
|
138
|
+
routeId: pageResult.routeId,
|
|
139
|
+
pathname: loaderProps?.path || "/",
|
|
140
|
+
params: loaderProps?.params || {},
|
|
141
|
+
loaderData: pageResult.loaderData
|
|
142
|
+
}],
|
|
143
|
+
loaderData = pageResult.loaderData;
|
|
105
144
|
eval("process.env.TAMAGUI_IS_SERVER = '1'");
|
|
106
145
|
const entry = await runner.import(import_virtualEntryConstants.virtualEntryId),
|
|
107
146
|
render = entry.default.render;
|
|
108
147
|
(0, import_one_server_only.setServerContext)({
|
|
109
148
|
loaderData,
|
|
110
|
-
loaderProps
|
|
149
|
+
loaderProps,
|
|
150
|
+
matches
|
|
111
151
|
}), import_constants2.LoaderDataCache[route.file] = loaderData;
|
|
112
152
|
const is404 = route.isNotFound || !exported.default,
|
|
113
153
|
html = await render({
|
|
@@ -115,7 +155,8 @@ function createFileSystemRouterPlugin(options) {
|
|
|
115
155
|
loaderData,
|
|
116
156
|
loaderProps,
|
|
117
157
|
path: loaderProps?.path || "/",
|
|
118
|
-
preloads
|
|
158
|
+
preloads,
|
|
159
|
+
matches
|
|
119
160
|
});
|
|
120
161
|
return is404 ? new Response(html, {
|
|
121
162
|
status: 404,
|
|
@@ -59,30 +59,57 @@ function createFileSystemRouterPlugin(options) {
|
|
|
59
59
|
const routeFile = import_node_path.default.join(routerRoot, route.file);
|
|
60
60
|
runner.clearCache(), globalThis.__vxrnresetState?.();
|
|
61
61
|
const exported = routeFile === "" ? {} : await runner.import(routeFile);
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
62
|
+
async function runLoaderWithTracking(routeNode, loaderFn) {
|
|
63
|
+
const routeId = routeNode.contextKey;
|
|
64
|
+
if (!loaderFn)
|
|
65
|
+
return { loaderData: void 0, routeId };
|
|
66
|
+
try {
|
|
67
|
+
const tracked = await (0, import_trackLoaderDependencies.trackLoaderDependencies)(() => loaderFn(loaderProps)), routePath = loaderProps?.path || "/";
|
|
68
|
+
for (const dep of tracked.dependencies) {
|
|
69
|
+
const absoluteDep = import_node_path.default.resolve(dep);
|
|
70
|
+
loaderFileDependencies.has(absoluteDep) || (loaderFileDependencies.set(absoluteDep, /* @__PURE__ */ new Set()), server?.watcher.add(absoluteDep), debugLoaderDeps && console.info(` \u24F5 [loader-dep] watching: ${absoluteDep}`)), loaderFileDependencies.get(absoluteDep).add(routePath);
|
|
71
|
+
}
|
|
72
|
+
return { loaderData: tracked.result, routeId };
|
|
73
|
+
} catch (err) {
|
|
74
|
+
if ((0, import_isResponse.isResponse)(err))
|
|
75
|
+
throw err;
|
|
76
|
+
return console.error(`[one] Error running loader for ${routeId}:`, err), { loaderData: void 0, routeId };
|
|
72
77
|
}
|
|
73
78
|
}
|
|
79
|
+
const layoutRoutes = route.layouts || [], pageRoute = { contextKey: route.file, file: route.file }, layoutLoaderPromises = layoutRoutes.map(async (layout) => {
|
|
80
|
+
const layoutFile = import_node_path.default.join(routerRoot, layout.contextKey), layoutExported = await runner.import(layoutFile);
|
|
81
|
+
return runLoaderWithTracking(layout, layoutExported.loader);
|
|
82
|
+
}), pageLoaderPromise = runLoaderWithTracking(pageRoute, exported.loader), [layoutResults, pageResult] = await Promise.all([
|
|
83
|
+
Promise.all(layoutLoaderPromises),
|
|
84
|
+
pageLoaderPromise
|
|
85
|
+
]), matches = [
|
|
86
|
+
...layoutResults.map((result) => ({
|
|
87
|
+
routeId: result.routeId,
|
|
88
|
+
pathname: loaderProps?.path || "/",
|
|
89
|
+
params: loaderProps?.params || {},
|
|
90
|
+
loaderData: result.loaderData
|
|
91
|
+
})),
|
|
92
|
+
{
|
|
93
|
+
routeId: pageResult.routeId,
|
|
94
|
+
pathname: loaderProps?.path || "/",
|
|
95
|
+
params: loaderProps?.params || {},
|
|
96
|
+
loaderData: pageResult.loaderData
|
|
97
|
+
}
|
|
98
|
+
], loaderData = pageResult.loaderData;
|
|
74
99
|
eval("process.env.TAMAGUI_IS_SERVER = '1'");
|
|
75
100
|
const entry = await runner.import(import_virtualEntryConstants.virtualEntryId), render = entry.default.render;
|
|
76
101
|
(0, import_one_server_only.setServerContext)({
|
|
77
102
|
loaderData,
|
|
78
|
-
loaderProps
|
|
103
|
+
loaderProps,
|
|
104
|
+
matches
|
|
79
105
|
}), import_constants2.LoaderDataCache[route.file] = loaderData;
|
|
80
106
|
const is404 = route.isNotFound || !exported.default, html = await render({
|
|
81
107
|
mode: route.type === "ssg" ? "ssg" : route.type === "ssr" ? "ssr" : "spa",
|
|
82
108
|
loaderData,
|
|
83
109
|
loaderProps,
|
|
84
110
|
path: loaderProps?.path || "/",
|
|
85
|
-
preloads
|
|
111
|
+
preloads,
|
|
112
|
+
matches
|
|
86
113
|
});
|
|
87
114
|
return is404 ? new Response(html, {
|
|
88
115
|
status: 404,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/vite/plugins/fileSystemRouterPlugin.tsx"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAiB,kCACjB,qBAAyB,wBACzB,0BAAyB,6BAEzB,cAAyC,iBAEzC,mBAAqC,4BACrC,6BAAoC,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": ["import_constants", "path", "route", "url", "loaderProps", "routeFile", "exported", "loaderData"]
|
|
6
6
|
}
|