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
|
@@ -67,39 +67,81 @@ function createFileSystemRouterPlugin(options) {
|
|
|
67
67
|
_globalThis,
|
|
68
68
|
routeFile = path.join(routerRoot, route.file);
|
|
69
69
|
runner.clearCache(), (_globalThis___vxrnresetState = (_globalThis = globalThis).__vxrnresetState) === null || _globalThis___vxrnresetState === void 0 || _globalThis___vxrnresetState.call(_globalThis);
|
|
70
|
-
var exported = routeFile === "" ? {} : await runner.import(routeFile)
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
var routePath = loaderProps?.path || "/",
|
|
78
|
-
_iteratorNormalCompletion = !0,
|
|
79
|
-
_didIteratorError = !1,
|
|
80
|
-
_iteratorError = void 0;
|
|
70
|
+
var exported = routeFile === "" ? {} : await runner.import(routeFile);
|
|
71
|
+
async function runLoaderWithTracking(routeNode, loaderFn) {
|
|
72
|
+
var routeId = routeNode.contextKey;
|
|
73
|
+
if (!loaderFn) return {
|
|
74
|
+
loaderData: void 0,
|
|
75
|
+
routeId
|
|
76
|
+
};
|
|
81
77
|
try {
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
} finally {
|
|
78
|
+
var tracked = await trackLoaderDependencies(function () {
|
|
79
|
+
return loaderFn(loaderProps);
|
|
80
|
+
}),
|
|
81
|
+
routePath = loaderProps?.path || "/",
|
|
82
|
+
_iteratorNormalCompletion = !0,
|
|
83
|
+
_didIteratorError = !1,
|
|
84
|
+
_iteratorError = void 0;
|
|
90
85
|
try {
|
|
91
|
-
|
|
86
|
+
for (var _iterator = tracked.dependencies[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
|
|
87
|
+
var dep = _step.value,
|
|
88
|
+
absoluteDep = path.resolve(dep);
|
|
89
|
+
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);
|
|
90
|
+
}
|
|
91
|
+
} catch (err) {
|
|
92
|
+
_didIteratorError = !0, _iteratorError = err;
|
|
92
93
|
} finally {
|
|
93
|
-
|
|
94
|
+
try {
|
|
95
|
+
!_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
|
|
96
|
+
} finally {
|
|
97
|
+
if (_didIteratorError) throw _iteratorError;
|
|
98
|
+
}
|
|
94
99
|
}
|
|
100
|
+
return {
|
|
101
|
+
loaderData: tracked.result,
|
|
102
|
+
routeId
|
|
103
|
+
};
|
|
104
|
+
} catch (err) {
|
|
105
|
+
if (isResponse(err)) throw err;
|
|
106
|
+
return console.error(`[one] Error running loader for ${routeId}:`, err), {
|
|
107
|
+
loaderData: void 0,
|
|
108
|
+
routeId
|
|
109
|
+
};
|
|
95
110
|
}
|
|
96
111
|
}
|
|
112
|
+
var layoutRoutes = route.layouts || [],
|
|
113
|
+
pageRoute = {
|
|
114
|
+
contextKey: route.file,
|
|
115
|
+
file: route.file
|
|
116
|
+
},
|
|
117
|
+
layoutLoaderPromises = layoutRoutes.map(async function (layout) {
|
|
118
|
+
var layoutFile = path.join(routerRoot, layout.contextKey),
|
|
119
|
+
layoutExported = await runner.import(layoutFile);
|
|
120
|
+
return runLoaderWithTracking(layout, layoutExported.loader);
|
|
121
|
+
}),
|
|
122
|
+
pageLoaderPromise = runLoaderWithTracking(pageRoute, exported.loader),
|
|
123
|
+
[layoutResults, pageResult] = await Promise.all([Promise.all(layoutLoaderPromises), pageLoaderPromise]),
|
|
124
|
+
matches = [...layoutResults.map(function (result) {
|
|
125
|
+
return {
|
|
126
|
+
routeId: result.routeId,
|
|
127
|
+
pathname: loaderProps?.path || "/",
|
|
128
|
+
params: loaderProps?.params || {},
|
|
129
|
+
loaderData: result.loaderData
|
|
130
|
+
};
|
|
131
|
+
}), {
|
|
132
|
+
routeId: pageResult.routeId,
|
|
133
|
+
pathname: loaderProps?.path || "/",
|
|
134
|
+
params: loaderProps?.params || {},
|
|
135
|
+
loaderData: pageResult.loaderData
|
|
136
|
+
}],
|
|
137
|
+
loaderData = pageResult.loaderData;
|
|
97
138
|
eval("process.env.TAMAGUI_IS_SERVER = '1'");
|
|
98
139
|
var entry = await runner.import(virtualEntryId),
|
|
99
140
|
render = entry.default.render;
|
|
100
141
|
setServerContext({
|
|
101
142
|
loaderData,
|
|
102
|
-
loaderProps
|
|
143
|
+
loaderProps,
|
|
144
|
+
matches
|
|
103
145
|
}), LoaderDataCache[route.file] = loaderData;
|
|
104
146
|
var is404 = route.isNotFound || !exported.default,
|
|
105
147
|
html = await render({
|
|
@@ -107,7 +149,8 @@ function createFileSystemRouterPlugin(options) {
|
|
|
107
149
|
loaderData,
|
|
108
150
|
loaderProps,
|
|
109
151
|
path: loaderProps?.path || "/",
|
|
110
|
-
preloads
|
|
152
|
+
preloads,
|
|
153
|
+
matches
|
|
111
154
|
});
|
|
112
155
|
return is404 ? new Response(html, {
|
|
113
156
|
status: 404,
|
|
@@ -161,27 +204,27 @@ ${stack}
|
|
|
161
204
|
var exported2 = await runner.import(routeFile2),
|
|
162
205
|
loaderData2;
|
|
163
206
|
if (exported2.loader) {
|
|
164
|
-
var
|
|
207
|
+
var tracked = await trackLoaderDependencies(function () {
|
|
165
208
|
return exported2.loader(loaderProps2);
|
|
166
209
|
});
|
|
167
|
-
loaderData2 =
|
|
168
|
-
var
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
210
|
+
loaderData2 = tracked.result;
|
|
211
|
+
var routePath = loaderProps2?.path || "/",
|
|
212
|
+
_iteratorNormalCompletion = !0,
|
|
213
|
+
_didIteratorError = !1,
|
|
214
|
+
_iteratorError = void 0;
|
|
172
215
|
try {
|
|
173
|
-
for (var
|
|
174
|
-
var
|
|
175
|
-
|
|
176
|
-
loaderFileDependencies.has(
|
|
216
|
+
for (var _iterator = tracked.dependencies[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
|
|
217
|
+
var dep = _step.value,
|
|
218
|
+
absoluteDep = path.resolve(dep);
|
|
219
|
+
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);
|
|
177
220
|
}
|
|
178
221
|
} catch (err) {
|
|
179
|
-
|
|
222
|
+
_didIteratorError = !0, _iteratorError = err;
|
|
180
223
|
} finally {
|
|
181
224
|
try {
|
|
182
|
-
!
|
|
225
|
+
!_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
|
|
183
226
|
} finally {
|
|
184
|
-
if (
|
|
227
|
+
if (_didIteratorError) throw _iteratorError;
|
|
185
228
|
}
|
|
186
229
|
}
|
|
187
230
|
}
|
|
@@ -307,12 +350,12 @@ ${stack}
|
|
|
307
350
|
redirects = (_options_web = options.web) === null || _options_web === void 0 ? void 0 : _options_web.redirects;
|
|
308
351
|
if (redirects) {
|
|
309
352
|
var url2 = new URL(req.url || "", `http://${req.headers.host}`),
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
353
|
+
_iteratorNormalCompletion = !0,
|
|
354
|
+
_didIteratorError = !1,
|
|
355
|
+
_iteratorError = void 0;
|
|
313
356
|
try {
|
|
314
357
|
for (var _loop = function () {
|
|
315
|
-
var redirect =
|
|
358
|
+
var redirect = _step.value,
|
|
316
359
|
regexStr = `^${redirect.source.replace(/:\w+/g, "([^/]+)")}$`,
|
|
317
360
|
match = url2.pathname.match(new RegExp(regexStr));
|
|
318
361
|
if (match) {
|
|
@@ -326,17 +369,17 @@ ${stack}
|
|
|
326
369
|
v: void 0
|
|
327
370
|
};
|
|
328
371
|
}
|
|
329
|
-
},
|
|
372
|
+
}, _iterator = redirects[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
|
|
330
373
|
var _ret = _loop();
|
|
331
374
|
if (_type_of(_ret) === "object") return _ret.v;
|
|
332
375
|
}
|
|
333
376
|
} catch (err) {
|
|
334
|
-
|
|
377
|
+
_didIteratorError = !0, _iteratorError = err;
|
|
335
378
|
} finally {
|
|
336
379
|
try {
|
|
337
|
-
!
|
|
380
|
+
!_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
|
|
338
381
|
} finally {
|
|
339
|
-
if (
|
|
382
|
+
if (_didIteratorError) throw _iteratorError;
|
|
340
383
|
}
|
|
341
384
|
}
|
|
342
385
|
}
|
|
@@ -352,21 +395,21 @@ ${stack}
|
|
|
352
395
|
if (reply.headers.forEach(function (value, key) {
|
|
353
396
|
if (key === "set-cookie") {
|
|
354
397
|
var cookies = value.split(", "),
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
398
|
+
_iteratorNormalCompletion2 = !0,
|
|
399
|
+
_didIteratorError2 = !1,
|
|
400
|
+
_iteratorError2 = void 0;
|
|
358
401
|
try {
|
|
359
|
-
for (var
|
|
360
|
-
var cookie =
|
|
402
|
+
for (var _iterator2 = cookies[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = !0) {
|
|
403
|
+
var cookie = _step2.value;
|
|
361
404
|
res.appendHeader("Set-Cookie", cookie);
|
|
362
405
|
}
|
|
363
406
|
} catch (err) {
|
|
364
|
-
|
|
407
|
+
_didIteratorError2 = !0, _iteratorError2 = err;
|
|
365
408
|
} finally {
|
|
366
409
|
try {
|
|
367
|
-
!
|
|
410
|
+
!_iteratorNormalCompletion2 && _iterator2.return != null && _iterator2.return();
|
|
368
411
|
} finally {
|
|
369
|
-
if (
|
|
412
|
+
if (_didIteratorError2) throw _iteratorError2;
|
|
370
413
|
}
|
|
371
414
|
}
|
|
372
415
|
} else res.setHeader(key, value);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["path","Readable","debounce","createServerModuleRunner","getSpaHeaderElements","createHandleRequest","getRouterRootFromOneOptions","isResponse","isStatusRedirect","promiseWithResolvers","trackLoaderDependencies","LoaderDataCache","replaceLoader","setServerContext","virtalEntryIdClient","virtualEntryId","_instanceof","left","right","Symbol","hasInstance","_type_of","obj","constructor","debugRouter","process","env","ONE_DEBUG_ROUTER","debugLoaderDeps","ONE_DEBUG_LOADER_DEPS","USE_SERVER_ENV","createFileSystemRouterPlugin","options","preloads","runner","server","loaderFileDependencies","Map","handleRequest","createRequestHandler","renderPromise","routerRoot","handlePage","param","route","url","loaderProps","console","info","type","isNotFound","file","slice","serverContext","mode","promise","resolve","resolveRender","_globalThis___vxrnresetState","_globalThis","routeFile","join","clearCache","globalThis","__vxrnresetState","call","exported","import","loaderData","loader","tracked","result","routePath","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","dependencies","iterator","_step","next","done","dep","value","absoluteDep","has","set","Set","watcher","add","get","err","return","eval","entry","render","default","is404","html","Response","status","headers","error","href","title","pathname","message","Error","stack","isDuplicateReactError","test","subMessage","handleLoader","param2","request","route2","url2","loaderProps2","_this","routeFile2","transformedJS","transformRequest","code","exported2","loaderData2","tracked2","routePath2","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_iterator2","_step2","dep2","absoluteDep2","platform","searchParams","environment","environments","nativeTransformedJS","JSON","stringify","handleAPI","loadMiddleware","contextKey","name","enforce","apply","config","userConfig","_ref","_options_optimization","setting","optimization","autoEntriesScanning","manifest","pageRoutes","routesAndLayouts","flatMap","_route_layouts","split","filter","x","startsWith","length","layouts","layout","optimizeDeps","entries","configureServer","serverIn","ssr","appDir","cwd","fileWatcherChangeListener","changedPath","absolutePath","addListener","loaderDepChangeListener","routePaths","size","hot","send","event","data","on","middlewares","use","req","res","_options_web","redirects","web","URL","host","_loop","redirect","regexStr","source","replace","match","RegExp","destination","params","forEach","index","writeHead","permanent","Location","end","v","_ret"],"sources":["../../../../src/vite/plugins/fileSystemRouterPlugin.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["path","Readable","debounce","createServerModuleRunner","getSpaHeaderElements","createHandleRequest","getRouterRootFromOneOptions","isResponse","isStatusRedirect","promiseWithResolvers","trackLoaderDependencies","LoaderDataCache","replaceLoader","setServerContext","virtalEntryIdClient","virtualEntryId","_instanceof","left","right","Symbol","hasInstance","_type_of","obj","constructor","debugRouter","process","env","ONE_DEBUG_ROUTER","debugLoaderDeps","ONE_DEBUG_LOADER_DEPS","USE_SERVER_ENV","createFileSystemRouterPlugin","options","preloads","runner","server","loaderFileDependencies","Map","handleRequest","createRequestHandler","renderPromise","routerRoot","handlePage","param","route","url","loaderProps","console","info","type","isNotFound","file","slice","serverContext","mode","promise","resolve","resolveRender","_globalThis___vxrnresetState","_globalThis","routeFile","join","clearCache","globalThis","__vxrnresetState","call","exported","import","runLoaderWithTracking","routeNode","loaderFn","routeId","contextKey","loaderData","tracked","routePath","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","dependencies","iterator","_step","next","done","dep","value","absoluteDep","has","set","Set","watcher","add","get","err","return","result","error","layoutRoutes","layouts","pageRoute","layoutLoaderPromises","map","layout","layoutFile","layoutExported","loader","pageLoaderPromise","layoutResults","pageResult","Promise","all","matches","pathname","params","eval","entry","render","default","is404","html","Response","status","headers","href","title","message","Error","stack","isDuplicateReactError","test","subMessage","handleLoader","param2","request","route2","url2","loaderProps2","_this","routeFile2","transformedJS","transformRequest","code","exported2","loaderData2","platform","searchParams","environment","environments","nativeTransformedJS","JSON","stringify","handleAPI","loadMiddleware","name","enforce","apply","config","userConfig","_ref","_options_optimization","setting","optimization","autoEntriesScanning","manifest","pageRoutes","routesAndLayouts","flatMap","_route_layouts","split","filter","x","startsWith","length","optimizeDeps","entries","configureServer","serverIn","ssr","appDir","cwd","fileWatcherChangeListener","changedPath","absolutePath","addListener","loaderDepChangeListener","routePaths","size","hot","send","event","data","on","middlewares","use","req","res","_options_web","redirects","web","URL","host","_loop"],"sources":["../../../../src/vite/plugins/fileSystemRouterPlugin.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "one",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.76",
|
|
4
4
|
"license": "BSD-3-Clause",
|
|
5
5
|
"sideEffects": [
|
|
6
6
|
"setup.mjs",
|
|
@@ -139,17 +139,17 @@
|
|
|
139
139
|
"@react-navigation/routers": "~7.5.1",
|
|
140
140
|
"@swc/core": "^1.14.0",
|
|
141
141
|
"@ungap/structured-clone": "^1.2.0",
|
|
142
|
-
"@vxrn/color-scheme": "1.2.
|
|
143
|
-
"@vxrn/compiler": "1.2.
|
|
144
|
-
"@vxrn/resolve": "1.2.
|
|
145
|
-
"@vxrn/tslib-lite": "1.2.
|
|
146
|
-
"@vxrn/use-isomorphic-layout-effect": "1.2.
|
|
147
|
-
"@vxrn/vite-plugin-metro": "1.2.
|
|
142
|
+
"@vxrn/color-scheme": "1.2.76",
|
|
143
|
+
"@vxrn/compiler": "1.2.76",
|
|
144
|
+
"@vxrn/resolve": "1.2.76",
|
|
145
|
+
"@vxrn/tslib-lite": "1.2.76",
|
|
146
|
+
"@vxrn/use-isomorphic-layout-effect": "1.2.76",
|
|
147
|
+
"@vxrn/vite-plugin-metro": "1.2.76",
|
|
148
148
|
"babel-dead-code-elimination": "1.0.10",
|
|
149
149
|
"babel-plugin-module-resolver": "^5.0.2",
|
|
150
150
|
"citty": "^0.1.6",
|
|
151
151
|
"core-js": "^3.38.1",
|
|
152
|
-
"create-vxrn": "1.2.
|
|
152
|
+
"create-vxrn": "1.2.76",
|
|
153
153
|
"escape-string-regexp": "^5.0.0",
|
|
154
154
|
"expo-linking": "~8.0.8",
|
|
155
155
|
"expo-modules-core": "~3.0.24",
|
|
@@ -177,7 +177,7 @@
|
|
|
177
177
|
"vite": "^7.1.12",
|
|
178
178
|
"vite-plugin-barrel": "^0.4.1",
|
|
179
179
|
"vite-tsconfig-paths": "^5.1.4",
|
|
180
|
-
"vxrn": "1.2.
|
|
180
|
+
"vxrn": "1.2.76",
|
|
181
181
|
"ws": "^8.18.0",
|
|
182
182
|
"xxhashjs": "^0.2.2"
|
|
183
183
|
},
|
package/src/cli/build.ts
CHANGED
|
@@ -261,6 +261,22 @@ export async function build(args: {
|
|
|
261
261
|
|
|
262
262
|
const outputEntries = [...vxrnOutput.serverOutput.entries()]
|
|
263
263
|
|
|
264
|
+
// build a map of layout contextKey -> server output fileName
|
|
265
|
+
// this is used to run layout loaders in production
|
|
266
|
+
const layoutServerPaths = new Map<string, string>()
|
|
267
|
+
for (const [, output] of outputEntries) {
|
|
268
|
+
if (output.type === 'asset') continue
|
|
269
|
+
const id = output.facadeModuleId || ''
|
|
270
|
+
const file = Path.basename(id)
|
|
271
|
+
// layout files start with _layout
|
|
272
|
+
if (file.startsWith('_layout') && id.includes(`/${routerRoot}/`)) {
|
|
273
|
+
// contextKey format is "./_layout.tsx" or "./subdir/_layout.tsx"
|
|
274
|
+
const relativePath = relative(process.cwd(), id).replace(`${routerRoot}/`, '')
|
|
275
|
+
const contextKey = `./${relativePath}`
|
|
276
|
+
layoutServerPaths.set(contextKey, output.fileName)
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
|
|
264
280
|
for (const [index, output] of outputEntries) {
|
|
265
281
|
if (output.type === 'asset') {
|
|
266
282
|
assets.push(output)
|
|
@@ -318,6 +334,16 @@ export async function build(args: {
|
|
|
318
334
|
|
|
319
335
|
foundRoute.loaderServerPath = output.fileName
|
|
320
336
|
|
|
337
|
+
// attach layout server paths for running layout loaders in production
|
|
338
|
+
if (foundRoute.layouts) {
|
|
339
|
+
for (const layout of foundRoute.layouts) {
|
|
340
|
+
const serverPath = layoutServerPaths.get(layout.contextKey)
|
|
341
|
+
if (serverPath) {
|
|
342
|
+
layout.loaderServerPath = serverPath
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
|
|
321
347
|
function collectImports(
|
|
322
348
|
{ imports = [], css }: ClientManifestEntry,
|
|
323
349
|
{ type = 'js' }: { type?: 'js' | 'css' } = {}
|
|
@@ -637,10 +663,18 @@ export async function build(args: {
|
|
|
637
663
|
}
|
|
638
664
|
|
|
639
665
|
function createBuildManifestRoute(route: RouteInfo) {
|
|
640
|
-
// remove layouts
|
|
641
|
-
//
|
|
666
|
+
// remove the full layouts (they're huge with all children), but keep minimal info
|
|
667
|
+
// needed for running layout loaders in production
|
|
642
668
|
const { layouts, ...built } = route
|
|
643
669
|
|
|
670
|
+
// keep simplified layout info for loader execution
|
|
671
|
+
if (layouts?.length) {
|
|
672
|
+
;(built as any).layouts = layouts.map((layout) => ({
|
|
673
|
+
contextKey: layout.contextKey,
|
|
674
|
+
loaderServerPath: (layout as any).loaderServerPath,
|
|
675
|
+
}))
|
|
676
|
+
}
|
|
677
|
+
|
|
644
678
|
// swap out for the built middleware path
|
|
645
679
|
const buildInfo = builtRoutes.find((x) => x.routeFile === route.file)
|
|
646
680
|
if (built.middlewares && buildInfo?.middlewares) {
|
package/src/cli/buildPage.ts
CHANGED
|
@@ -145,10 +145,52 @@ prefetchCSS()
|
|
|
145
145
|
)
|
|
146
146
|
|
|
147
147
|
const exported = await import(toAbsolute(serverJsPath))
|
|
148
|
+
const loaderProps: LoaderProps = { path, params }
|
|
149
|
+
|
|
150
|
+
// Build matches array for useMatches() hook
|
|
151
|
+
const matches: One.RouteMatch[] = []
|
|
152
|
+
|
|
153
|
+
// Run layout loaders in parallel
|
|
154
|
+
if (foundRoute.layouts?.length) {
|
|
155
|
+
const layoutResults = await Promise.all(
|
|
156
|
+
foundRoute.layouts.map(async (layout) => {
|
|
157
|
+
try {
|
|
158
|
+
const layoutServerPath = layout.loaderServerPath
|
|
159
|
+
if (!layoutServerPath) {
|
|
160
|
+
return { contextKey: layout.contextKey, loaderData: undefined }
|
|
161
|
+
}
|
|
162
|
+
const layoutExported = await import(
|
|
163
|
+
toAbsolute(join('./', 'dist/server', layoutServerPath))
|
|
164
|
+
)
|
|
165
|
+
const layoutLoaderData = await layoutExported?.loader?.(loaderProps)
|
|
166
|
+
return { contextKey: layout.contextKey, loaderData: layoutLoaderData }
|
|
167
|
+
} catch (err) {
|
|
168
|
+
if (isResponse(err)) {
|
|
169
|
+
throw err
|
|
170
|
+
}
|
|
171
|
+
console.warn(
|
|
172
|
+
`[one] Warning: layout loader failed for ${layout.contextKey}:`,
|
|
173
|
+
err
|
|
174
|
+
)
|
|
175
|
+
return { contextKey: layout.contextKey, loaderData: undefined }
|
|
176
|
+
}
|
|
177
|
+
})
|
|
178
|
+
)
|
|
179
|
+
|
|
180
|
+
for (const result of layoutResults) {
|
|
181
|
+
matches.push({
|
|
182
|
+
routeId: result.contextKey,
|
|
183
|
+
pathname: path,
|
|
184
|
+
params: params || {},
|
|
185
|
+
loaderData: result.loaderData,
|
|
186
|
+
})
|
|
187
|
+
}
|
|
188
|
+
}
|
|
148
189
|
|
|
190
|
+
// Run page loader
|
|
149
191
|
if (exported.loader) {
|
|
150
192
|
try {
|
|
151
|
-
loaderData = (await exported.loader?.(
|
|
193
|
+
loaderData = (await exported.loader?.(loaderProps)) ?? null
|
|
152
194
|
} catch (err) {
|
|
153
195
|
// Handle thrown responses (e.g., redirect) - skip loader data generation for this page
|
|
154
196
|
// The redirect will happen at runtime instead
|
|
@@ -177,9 +219,16 @@ if (typeof document === 'undefined') globalThis.document = {}
|
|
|
177
219
|
}
|
|
178
220
|
}
|
|
179
221
|
|
|
222
|
+
// Add page match
|
|
223
|
+
matches.push({
|
|
224
|
+
routeId: foundRoute.file,
|
|
225
|
+
pathname: path,
|
|
226
|
+
params: params || {},
|
|
227
|
+
loaderData,
|
|
228
|
+
})
|
|
229
|
+
|
|
180
230
|
// ssr, we basically skip at build-time and just compile it the js we need
|
|
181
231
|
if (foundRoute.type !== 'ssr') {
|
|
182
|
-
const loaderProps: LoaderProps = { path, params }
|
|
183
232
|
// importing resetState causes issues :/
|
|
184
233
|
globalThis['__vxrnresetState']?.()
|
|
185
234
|
|
|
@@ -200,6 +249,7 @@ if (typeof document === 'undefined') globalThis.document = {}
|
|
|
200
249
|
cssContents: allCSSContents,
|
|
201
250
|
mode: 'ssg',
|
|
202
251
|
routePreloads,
|
|
252
|
+
matches,
|
|
203
253
|
})
|
|
204
254
|
|
|
205
255
|
// Apply after-LCP script loading if enabled
|
package/src/createApp.tsx
CHANGED
|
@@ -5,6 +5,7 @@ import { AppRegistry } from 'react-native'
|
|
|
5
5
|
import { resolveClientLoader } from './clientLoaderResolver'
|
|
6
6
|
import { Root } from './Root'
|
|
7
7
|
import { render } from './render'
|
|
8
|
+
import { initClientMatches } from './router/router'
|
|
8
9
|
import { registerPreloadedRoute } from './router/useViteRoutes'
|
|
9
10
|
import type { RenderAppProps } from './types'
|
|
10
11
|
import { getServerHeadInsertions } from './useServerHeadInsertion'
|
|
@@ -49,6 +50,7 @@ export function createApp(options: CreateAppProps) {
|
|
|
49
50
|
mode,
|
|
50
51
|
loaderServerData,
|
|
51
52
|
routePreloads,
|
|
53
|
+
matches,
|
|
52
54
|
} = props
|
|
53
55
|
|
|
54
56
|
setServerContext({
|
|
@@ -59,6 +61,7 @@ export function createApp(options: CreateAppProps) {
|
|
|
59
61
|
css,
|
|
60
62
|
cssContents,
|
|
61
63
|
routePreloads,
|
|
64
|
+
matches,
|
|
62
65
|
})
|
|
63
66
|
|
|
64
67
|
let renderId: string | undefined
|
|
@@ -148,6 +151,11 @@ export function createApp(options: CreateAppProps) {
|
|
|
148
151
|
const serverContext = getServerContext() || {}
|
|
149
152
|
const routePreloads = serverContext.routePreloads
|
|
150
153
|
|
|
154
|
+
// initialize client matches from server context for useMatches hook
|
|
155
|
+
if (serverContext.matches) {
|
|
156
|
+
initClientMatches(serverContext.matches)
|
|
157
|
+
}
|
|
158
|
+
|
|
151
159
|
// Wait for setup file to complete first (if provided)
|
|
152
160
|
// This ensures setup code (error handlers, analytics, etc.) runs before the app
|
|
153
161
|
const setupComplete = options.setupPromise || Promise.resolve()
|
package/src/index.ts
CHANGED
|
@@ -47,7 +47,7 @@ export * from '@vxrn/color-scheme'
|
|
|
47
47
|
// TODO breaking due to react-native-gesture-handler
|
|
48
48
|
// export { Drawer } from './layouts/Drawer'
|
|
49
49
|
// export { Unmatched } from './fallbackViews/Unmatched'
|
|
50
|
-
export { SafeAreaView } from 'react-native-safe-area-context'
|
|
50
|
+
export { SafeAreaView, useSafeAreaInsets } from 'react-native-safe-area-context'
|
|
51
51
|
export { onClientLoaderResolve } from './clientLoaderResolver'
|
|
52
52
|
|
|
53
53
|
// middleware
|
|
@@ -128,6 +128,13 @@ export {
|
|
|
128
128
|
useLoaderState,
|
|
129
129
|
type LoaderTimingEntry,
|
|
130
130
|
} from './useLoader'
|
|
131
|
+
export {
|
|
132
|
+
useMatches,
|
|
133
|
+
useMatch,
|
|
134
|
+
usePageMatch,
|
|
135
|
+
setClientMatches,
|
|
136
|
+
type RouteMatch,
|
|
137
|
+
} from './useMatches'
|
|
131
138
|
export {
|
|
132
139
|
type ServerHeadInsertionCallback,
|
|
133
140
|
useServerHeadInsertion,
|
package/src/router/Route.tsx
CHANGED
|
@@ -77,6 +77,8 @@ export type RouteNode = {
|
|
|
77
77
|
layouts?: RouteNode[]
|
|
78
78
|
/** Parent middlewares */
|
|
79
79
|
middlewares?: RouteNode[]
|
|
80
|
+
/** Server-side path to the compiled loader module (set during build) */
|
|
81
|
+
loaderServerPath?: string
|
|
80
82
|
}
|
|
81
83
|
|
|
82
84
|
export const RouteParamsContext = createContext<
|
package/src/router/router.ts
CHANGED
|
@@ -48,6 +48,8 @@ import { sortRoutes } from './sortRoutes'
|
|
|
48
48
|
import { getQualifiedRouteComponent } from './useScreens'
|
|
49
49
|
import { preloadRouteModules } from './useViteRoutes'
|
|
50
50
|
import { getNavigateAction } from './utils/getNavigateAction'
|
|
51
|
+
import { setClientMatches } from '../useMatches'
|
|
52
|
+
import type { RouteMatch } from '../useMatches'
|
|
51
53
|
|
|
52
54
|
// Module-scoped variables
|
|
53
55
|
export let routeNode: RouteNode | null = null
|
|
@@ -125,6 +127,9 @@ const rootStateSubscribers = new Set<OneRouter.RootStateListener>()
|
|
|
125
127
|
const loadingStateSubscribers = new Set<OneRouter.LoadingStateListener>()
|
|
126
128
|
const storeSubscribers = new Set<() => void>()
|
|
127
129
|
|
|
130
|
+
// current matches for useMatches hook (cached on client)
|
|
131
|
+
let currentMatches: RouteMatch[] = []
|
|
132
|
+
|
|
128
133
|
// Validation state tracking
|
|
129
134
|
export type ValidationState = {
|
|
130
135
|
status: 'idle' | 'validating' | 'error' | 'valid'
|
|
@@ -760,6 +765,47 @@ function normalizeLoaderPath(href: string): string {
|
|
|
760
765
|
return url.pathname.replace(/\/index$/, '').replace(/\/$/, '') || '/'
|
|
761
766
|
}
|
|
762
767
|
|
|
768
|
+
/**
|
|
769
|
+
* Build matches array for client-side navigation.
|
|
770
|
+
* Preserves layout matches (cached from SSR) and updates page match with fresh data.
|
|
771
|
+
*
|
|
772
|
+
* Strategy: Since layouts don't re-run on client navigation, we keep all layout matches
|
|
773
|
+
* from the current cached matches and only update the page match.
|
|
774
|
+
*/
|
|
775
|
+
function buildClientMatches(
|
|
776
|
+
href: string,
|
|
777
|
+
matchingNode: RouteNode | null,
|
|
778
|
+
params: Record<string, string | string[]>,
|
|
779
|
+
loaderData: unknown
|
|
780
|
+
): RouteMatch[] {
|
|
781
|
+
const pathname = extractPathnameFromHref(href)
|
|
782
|
+
const routeId = matchingNode?.contextKey || pathname
|
|
783
|
+
|
|
784
|
+
// preserve all layout matches (those with _layout in routeId) from current state
|
|
785
|
+
// since layout loaders don't re-run on client navigation
|
|
786
|
+
const layoutMatches = currentMatches.filter((m) => m.routeId.includes('_layout'))
|
|
787
|
+
|
|
788
|
+
// create the new page match with fresh loader data
|
|
789
|
+
const pageMatch: RouteMatch = {
|
|
790
|
+
routeId,
|
|
791
|
+
pathname,
|
|
792
|
+
params,
|
|
793
|
+
loaderData,
|
|
794
|
+
}
|
|
795
|
+
|
|
796
|
+
// return layouts + new page match
|
|
797
|
+
return [...layoutMatches, pageMatch]
|
|
798
|
+
}
|
|
799
|
+
|
|
800
|
+
/**
|
|
801
|
+
* Initialize client matches from server context during hydration.
|
|
802
|
+
* Called from createApp when hydrating.
|
|
803
|
+
*/
|
|
804
|
+
export function initClientMatches(matches: RouteMatch[]) {
|
|
805
|
+
currentMatches = matches
|
|
806
|
+
setClientMatches(matches)
|
|
807
|
+
}
|
|
808
|
+
|
|
763
809
|
export async function linkTo(
|
|
764
810
|
href: string,
|
|
765
811
|
event?: string,
|
|
@@ -911,6 +957,17 @@ export async function linkTo(
|
|
|
911
957
|
}
|
|
912
958
|
}
|
|
913
959
|
|
|
960
|
+
// Update client matches for useMatches hook
|
|
961
|
+
// This runs after preload so loaderData is available
|
|
962
|
+
if (process.env.TAMAGUI_TARGET !== 'native') {
|
|
963
|
+
const normalizedPath = normalizeLoaderPath(href)
|
|
964
|
+
const loaderData = preloadedLoaderData[normalizedPath]
|
|
965
|
+
const params = extractParamsFromState(state)
|
|
966
|
+
const newMatches = buildClientMatches(href, matchingRouteNode, params, loaderData)
|
|
967
|
+
currentMatches = newMatches
|
|
968
|
+
setClientMatches(newMatches)
|
|
969
|
+
}
|
|
970
|
+
|
|
914
971
|
const rootState = navigationRef.getRootState()
|
|
915
972
|
|
|
916
973
|
const hash = href.indexOf('#')
|