@studiolambda/router 0.1.1 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/matcher-C4dv_pr6.cjs +2 -0
- package/dist/{matcher-CTRKcf7I.cjs.map → matcher-C4dv_pr6.cjs.map} +1 -1
- package/dist/{matcher-ehhvtyaT.js → matcher-CQObVRFk.js} +2 -1
- package/dist/{matcher-ehhvtyaT.js.map → matcher-CQObVRFk.js.map} +1 -1
- package/dist/router.cjs +1 -1
- package/dist/router.js +1 -1
- package/dist/router_react.cjs +2 -2
- package/dist/router_react.cjs.map +1 -1
- package/dist/router_react.js +233 -154
- package/dist/router_react.js.map +1 -1
- package/dist/src/react/components/NotFound.d.ts +5 -2
- package/dist/src/react/components/Router.d.ts +1 -1
- package/dist/src/react/context/NavigationContext.d.ts +1 -1
- package/dist/src/react/context/NavigationSignalContext.d.ts +6 -1
- package/dist/src/react/context/NavigationTypeContext.d.ts +6 -1
- package/dist/src/react/context/ParamsContext.d.ts +10 -0
- package/dist/src/react/context/PathnameContext.d.ts +5 -4
- package/dist/src/react/context/TransitionContext.d.ts +0 -6
- package/dist/src/react/context/UrlContext.d.ts +12 -0
- package/dist/src/react/createRouter.d.ts +5 -0
- package/dist/src/react/extractPathname.d.ts +1 -2
- package/dist/src/react/hooks/useBack.d.ts +7 -1
- package/dist/src/react/hooks/useForward.d.ts +8 -1
- package/dist/src/react/hooks/useNavigate.d.ts +15 -0
- package/dist/src/react/hooks/useNavigation.d.ts +10 -0
- package/dist/src/react/hooks/useNavigationEvents.d.ts +18 -0
- package/dist/src/react/hooks/useNavigationHandlers.d.ts +9 -0
- package/dist/src/react/hooks/useNavigationSignal.d.ts +15 -0
- package/dist/src/react/hooks/useNavigationType.d.ts +18 -0
- package/dist/src/react/hooks/useNextMatch.d.ts +11 -0
- package/dist/src/react/hooks/useParams.d.ts +1 -0
- package/dist/src/react/hooks/usePathname.d.ts +1 -0
- package/dist/src/react/hooks/usePrefetch.d.ts +57 -0
- package/dist/src/react/hooks/useSearchParams.d.ts +9 -5
- package/dist/src/react/index.d.ts +2 -1
- package/dist/src/react/navigation/createMemoryNavigation.d.ts +5 -1
- package/package.json +1 -1
- package/dist/matcher-CTRKcf7I.cjs +0 -2
- package/dist/src/react/context/PropsContext.d.ts +0 -10
package/dist/router_react.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as e } from "./matcher-
|
|
1
|
+
import { t as e } from "./matcher-CQObVRFk.js";
|
|
2
2
|
import { jsx as t } from "react/jsx-runtime";
|
|
3
3
|
import { Suspense as n, createContext as r, use as i, useEffect as a, useEffectEvent as o, useRef as s, useState as c, useTransition as l } from "react";
|
|
4
4
|
//#region \0rolldown/runtime.js
|
|
@@ -28,12 +28,12 @@ var p = /* @__PURE__ */ u(((e) => {
|
|
|
28
28
|
})();
|
|
29
29
|
})), h = (/* @__PURE__ */ u(((e, t) => {
|
|
30
30
|
process.env.NODE_ENV === "production" ? t.exports = p() : t.exports = m();
|
|
31
|
-
})))(), g = r(
|
|
31
|
+
})))(), g = r(null), _ = r(null), v = r(void 0), y = r(void 0);
|
|
32
32
|
//#endregion
|
|
33
33
|
//#region src/react/components/NotFound.tsx
|
|
34
34
|
function b() {
|
|
35
35
|
let e = (0, h.c)(1), n;
|
|
36
|
-
return e[0] === Symbol.for("react.memo_cache_sentinel") ? (n = /* @__PURE__ */ t("
|
|
36
|
+
return e[0] === Symbol.for("react.memo_cache_sentinel") ? (n = /* @__PURE__ */ t("h1", { children: "Not Found" }), e[0] = n) : n = e[0], n;
|
|
37
37
|
}
|
|
38
38
|
//#endregion
|
|
39
39
|
//#region src/react/context/TransitionContext.ts
|
|
@@ -106,33 +106,34 @@ function T(e, t) {
|
|
|
106
106
|
}
|
|
107
107
|
//#endregion
|
|
108
108
|
//#region src/react/context/PathnameContext.ts
|
|
109
|
-
var E = r(
|
|
109
|
+
var E = r(null), D = r(null);
|
|
110
110
|
//#endregion
|
|
111
111
|
//#region src/react/extractPathname.ts
|
|
112
|
-
function
|
|
113
|
-
return e ? new URL(e, "http://localhost").pathname
|
|
112
|
+
function O(e) {
|
|
113
|
+
return e == null ? "/" : new URL(e, "http://localhost").pathname;
|
|
114
114
|
}
|
|
115
115
|
//#endregion
|
|
116
116
|
//#region src/react/components/Router.tsx
|
|
117
|
-
function
|
|
118
|
-
let r = (0, h.c)(
|
|
117
|
+
function k(e) {
|
|
118
|
+
let r = (0, h.c)(47), a = i(_), s = e.navigation ?? a ?? (typeof window < "u" ? window.navigation : void 0);
|
|
119
119
|
if (s == null) throw Error("Router requires a navigation prop, NavigationContext provider, or browser Navigation API support. Use createMemoryNavigation() for SSR or non-browser environments.");
|
|
120
120
|
let u = e.matcher ?? i(C), d = l(), p = e.transition ?? d, m;
|
|
121
121
|
r[0] === u ? m = r[1] : (m = { matcher: u }, r[0] = u, r[1] = m);
|
|
122
|
-
let
|
|
123
|
-
r[2] !== s.currentEntry?.url || r[3] !==
|
|
122
|
+
let k = w(m), A = e.notFound ?? b, j;
|
|
123
|
+
r[2] !== s.currentEntry?.url || r[3] !== k || r[4] !== A ? (j = function() {
|
|
124
124
|
let e = s.currentEntry?.url ?? null;
|
|
125
125
|
return {
|
|
126
|
-
match:
|
|
126
|
+
match: k(e, A),
|
|
127
127
|
signal: null,
|
|
128
128
|
navigationType: null,
|
|
129
|
-
pathname:
|
|
129
|
+
pathname: O(e),
|
|
130
|
+
url: e
|
|
130
131
|
};
|
|
131
|
-
}, r[2] = s.currentEntry?.url, r[3] =
|
|
132
|
-
let [
|
|
133
|
-
r[6] !==
|
|
132
|
+
}, r[2] = s.currentEntry?.url, r[3] = k, r[4] = A, r[5] = j) : j = r[5];
|
|
133
|
+
let [M, N] = c(j), { createPrecommitHandler: P, createHandler: F } = S(p), I;
|
|
134
|
+
r[6] !== F || r[7] !== P || r[8] !== k || r[9] !== A ? (I = function(e) {
|
|
134
135
|
if (!e.canIntercept || e.hashChange || e.downloadRequest !== null) return;
|
|
135
|
-
let t =
|
|
136
|
+
let t = k(e.destination.url, A);
|
|
136
137
|
if (e.formData !== null && t.handler.formHandler !== void 0) {
|
|
137
138
|
e.intercept({
|
|
138
139
|
scroll: t.handler.scroll,
|
|
@@ -143,16 +144,17 @@ function O(e) {
|
|
|
143
144
|
});
|
|
144
145
|
return;
|
|
145
146
|
}
|
|
146
|
-
let n =
|
|
147
|
+
let n = P({
|
|
147
148
|
prefetch: t.handler.prefetch,
|
|
148
149
|
params: t.params,
|
|
149
150
|
url: new URL(e.destination.url)
|
|
150
|
-
}), r =
|
|
151
|
-
|
|
151
|
+
}), r = F(function() {
|
|
152
|
+
N({
|
|
152
153
|
match: t,
|
|
153
154
|
signal: e.signal,
|
|
154
155
|
navigationType: e.navigationType,
|
|
155
|
-
pathname:
|
|
156
|
+
pathname: O(e.destination.url),
|
|
157
|
+
url: e.destination.url
|
|
156
158
|
});
|
|
157
159
|
});
|
|
158
160
|
e.intercept({
|
|
@@ -161,86 +163,106 @@ function O(e) {
|
|
|
161
163
|
scroll: t.handler.scroll,
|
|
162
164
|
focusReset: t.handler.focusReset
|
|
163
165
|
});
|
|
164
|
-
}, r[6] =
|
|
165
|
-
let
|
|
166
|
-
r[11] !==
|
|
167
|
-
onNavigate:
|
|
166
|
+
}, r[6] = F, r[7] = P, r[8] = k, r[9] = A, r[10] = I) : I = r[10];
|
|
167
|
+
let L = o(I), R;
|
|
168
|
+
r[11] !== L || r[12] !== e.onNavigateError || r[13] !== e.onNavigateSuccess ? (R = {
|
|
169
|
+
onNavigate: L,
|
|
168
170
|
onNavigateSuccess: e.onNavigateSuccess,
|
|
169
171
|
onNavigateError: e.onNavigateError
|
|
170
|
-
}, r[11] =
|
|
171
|
-
let
|
|
172
|
-
r[15] ===
|
|
173
|
-
let V;
|
|
174
|
-
r[17] !== z || r[18] !== B ? (V = /* @__PURE__ */ t(f, {
|
|
175
|
-
value: z,
|
|
176
|
-
children: B
|
|
177
|
-
}), r[17] = z, r[18] = B, r[19] = V) : V = r[19];
|
|
172
|
+
}, r[11] = L, r[12] = e.onNavigateError, r[13] = e.onNavigateSuccess, r[14] = R) : R = r[14], T(s, R);
|
|
173
|
+
let z = M.match.handler.component, B = M.match.handler.middlewares, V;
|
|
174
|
+
r[15] === z ? V = r[16] : (V = /* @__PURE__ */ t(z, {}), r[15] = z, r[16] = V);
|
|
178
175
|
let H;
|
|
179
|
-
r[
|
|
180
|
-
|
|
176
|
+
r[17] !== B || r[18] !== V ? (H = /* @__PURE__ */ t(f, {
|
|
177
|
+
value: B,
|
|
181
178
|
children: V
|
|
182
|
-
}), r[
|
|
179
|
+
}), r[17] = B, r[18] = V, r[19] = H) : H = r[19];
|
|
183
180
|
let U;
|
|
184
|
-
r[
|
|
185
|
-
|
|
181
|
+
r[20] !== e.fallback || r[21] !== H ? (U = /* @__PURE__ */ t(n, {
|
|
182
|
+
fallback: e.fallback,
|
|
186
183
|
children: H
|
|
187
|
-
}), r[
|
|
184
|
+
}), r[20] = e.fallback, r[21] = H, r[22] = U) : U = r[22];
|
|
188
185
|
let W;
|
|
189
|
-
r[
|
|
190
|
-
value:
|
|
186
|
+
r[23] !== M.match.params || r[24] !== U ? (W = /* @__PURE__ */ t(g, {
|
|
187
|
+
value: M.match.params,
|
|
191
188
|
children: U
|
|
192
|
-
}), r[
|
|
189
|
+
}), r[23] = M.match.params, r[24] = U, r[25] = W) : W = r[25];
|
|
193
190
|
let G;
|
|
194
|
-
r[
|
|
195
|
-
value:
|
|
191
|
+
r[26] !== M.url || r[27] !== W ? (G = /* @__PURE__ */ t(D, {
|
|
192
|
+
value: M.url,
|
|
196
193
|
children: W
|
|
197
|
-
}), r[
|
|
194
|
+
}), r[26] = M.url, r[27] = W, r[28] = G) : G = r[28];
|
|
198
195
|
let K;
|
|
199
|
-
r[
|
|
200
|
-
value:
|
|
196
|
+
r[29] !== M.pathname || r[30] !== G ? (K = /* @__PURE__ */ t(E, {
|
|
197
|
+
value: M.pathname,
|
|
201
198
|
children: G
|
|
202
|
-
}), r[
|
|
199
|
+
}), r[29] = M.pathname, r[30] = G, r[31] = K) : K = r[31];
|
|
203
200
|
let q;
|
|
204
|
-
r[
|
|
205
|
-
value:
|
|
201
|
+
r[32] !== M.signal || r[33] !== K ? (q = /* @__PURE__ */ t(v, {
|
|
202
|
+
value: M.signal,
|
|
206
203
|
children: K
|
|
207
|
-
}), r[
|
|
204
|
+
}), r[32] = M.signal, r[33] = K, r[34] = q) : q = r[34];
|
|
208
205
|
let J;
|
|
209
|
-
r[
|
|
210
|
-
value:
|
|
206
|
+
r[35] !== M.navigationType || r[36] !== q ? (J = /* @__PURE__ */ t(y, {
|
|
207
|
+
value: M.navigationType,
|
|
211
208
|
children: q
|
|
212
|
-
}), r[
|
|
209
|
+
}), r[35] = M.navigationType, r[36] = q, r[37] = J) : J = r[37];
|
|
213
210
|
let Y;
|
|
214
|
-
|
|
215
|
-
value:
|
|
211
|
+
r[38] !== u || r[39] !== J ? (Y = /* @__PURE__ */ t(C, {
|
|
212
|
+
value: u,
|
|
216
213
|
children: J
|
|
217
|
-
}), r[
|
|
214
|
+
}), r[38] = u, r[39] = J, r[40] = Y) : Y = r[40];
|
|
215
|
+
let X;
|
|
216
|
+
r[41] !== s || r[42] !== Y ? (X = /* @__PURE__ */ t(_, {
|
|
217
|
+
value: s,
|
|
218
|
+
children: Y
|
|
219
|
+
}), r[41] = s, r[42] = Y, r[43] = X) : X = r[43];
|
|
220
|
+
let Z;
|
|
221
|
+
return r[44] !== X || r[45] !== p ? (Z = /* @__PURE__ */ t(x, {
|
|
222
|
+
value: p,
|
|
223
|
+
children: X
|
|
224
|
+
}), r[44] = X, r[45] = p, r[46] = Z) : Z = r[46], Z;
|
|
218
225
|
}
|
|
219
226
|
//#endregion
|
|
220
227
|
//#region src/react/hooks/useActiveLinkProps.ts
|
|
221
|
-
function
|
|
222
|
-
let n =
|
|
228
|
+
function A(e, t) {
|
|
229
|
+
let n = i(E);
|
|
230
|
+
if (n === null) return {
|
|
231
|
+
isActive: !1,
|
|
232
|
+
props: {
|
|
233
|
+
"data-active": void 0,
|
|
234
|
+
"aria-current": void 0
|
|
235
|
+
}
|
|
236
|
+
};
|
|
237
|
+
let r = j(e, n, t?.exact ?? !0);
|
|
223
238
|
return {
|
|
224
|
-
isActive:
|
|
239
|
+
isActive: r,
|
|
225
240
|
props: {
|
|
226
|
-
"data-active":
|
|
227
|
-
"aria-current":
|
|
241
|
+
"data-active": r || void 0,
|
|
242
|
+
"aria-current": r ? "page" : void 0
|
|
228
243
|
}
|
|
229
244
|
};
|
|
230
245
|
}
|
|
231
|
-
function
|
|
246
|
+
function j(e, t, n) {
|
|
232
247
|
if (e === void 0) return !1;
|
|
233
|
-
let r =
|
|
248
|
+
let r = O(e);
|
|
234
249
|
return n ? r === t : t === r || t.startsWith(r + "/");
|
|
235
250
|
}
|
|
236
251
|
//#endregion
|
|
237
252
|
//#region src/react/hooks/usePrefetch.ts
|
|
238
|
-
|
|
253
|
+
var M = /* @__PURE__ */ new WeakMap();
|
|
254
|
+
function N(e) {
|
|
255
|
+
M.delete(e);
|
|
256
|
+
}
|
|
257
|
+
function P(e) {
|
|
239
258
|
let t = e?.matcher ?? i(C);
|
|
240
259
|
return function(e) {
|
|
241
260
|
let n = new URL(e, "http://localhost"), r = t.match(n.pathname);
|
|
242
261
|
if (r?.handler.prefetch === void 0) return;
|
|
243
|
-
let i =
|
|
262
|
+
let i = M.get(t);
|
|
263
|
+
if (i === void 0 && (i = /* @__PURE__ */ new Set(), M.set(t, i)), i.has(n.pathname)) return;
|
|
264
|
+
i.add(n.pathname);
|
|
265
|
+
let a = {
|
|
244
266
|
params: r.params,
|
|
245
267
|
url: n,
|
|
246
268
|
controller: {
|
|
@@ -248,13 +270,13 @@ function j(e) {
|
|
|
248
270
|
addHandler() {}
|
|
249
271
|
}
|
|
250
272
|
};
|
|
251
|
-
return r.handler.prefetch(
|
|
273
|
+
return r.handler.prefetch(a);
|
|
252
274
|
};
|
|
253
275
|
}
|
|
254
276
|
//#endregion
|
|
255
277
|
//#region src/react/hooks/usePrefetchEffect.ts
|
|
256
|
-
function
|
|
257
|
-
let { href: n, on: r, once: i = !0, matcher: s } = t, c =
|
|
278
|
+
function F(e, t) {
|
|
279
|
+
let { href: n, on: r, once: i = !0, matcher: s } = t, c = P({ matcher: s }), l = o(function(e, t) {
|
|
258
280
|
for (let t of e) t.isIntersecting && n !== void 0 && c(n);
|
|
259
281
|
i && t.disconnect();
|
|
260
282
|
}), u = o(function() {
|
|
@@ -283,18 +305,18 @@ function M(e, t) {
|
|
|
283
305
|
}
|
|
284
306
|
//#endregion
|
|
285
307
|
//#region src/react/components/Link.tsx
|
|
286
|
-
function
|
|
308
|
+
function I(e) {
|
|
287
309
|
let n = (0, h.c)(23), r, i, a, o, c, l, u;
|
|
288
310
|
n[0] === e ? (r = n[1], i = n[2], a = n[3], o = n[4], c = n[5], l = n[6], u = n[7]) : ({prefetch: o, once: l, href: i, matcher: a, className: r, activeExact: u, ...c} = e, n[0] = e, n[1] = r, n[2] = i, n[3] = a, n[4] = o, n[5] = c, n[6] = l, n[7] = u);
|
|
289
311
|
let d = l === void 0 ? !0 : l, f = u === void 0 ? !0 : u, p = s(null), m;
|
|
290
312
|
n[8] === f ? m = n[9] : (m = { exact: f }, n[8] = f, n[9] = m);
|
|
291
|
-
let { isActive: g, props: _ } =
|
|
313
|
+
let { isActive: g, props: _ } = A(i, m), v;
|
|
292
314
|
n[10] !== i || n[11] !== a || n[12] !== d || n[13] !== o ? (v = {
|
|
293
315
|
href: i,
|
|
294
316
|
on: o,
|
|
295
317
|
once: d,
|
|
296
318
|
matcher: a
|
|
297
|
-
}, n[10] = i, n[11] = a, n[12] = d, n[13] = o, n[14] = v) : v = n[14],
|
|
319
|
+
}, n[10] = i, n[11] = a, n[12] = d, n[13] = o, n[14] = v) : v = n[14], F(p, v);
|
|
298
320
|
let y;
|
|
299
321
|
n[15] !== r || n[16] !== g ? (y = typeof r == "function" ? r({ isActive: g }) : r, n[15] = r, n[16] = g, n[17] = y) : y = n[17];
|
|
300
322
|
let b = y, x;
|
|
@@ -308,198 +330,255 @@ function N(e) {
|
|
|
308
330
|
}
|
|
309
331
|
//#endregion
|
|
310
332
|
//#region src/react/hooks/useNavigation.ts
|
|
311
|
-
function
|
|
333
|
+
function L() {
|
|
312
334
|
let e = i(_);
|
|
313
335
|
if (e === null) throw Error("useNavigation requires a <Router> or <NavigationContext> provider");
|
|
314
336
|
return e;
|
|
315
337
|
}
|
|
316
338
|
//#endregion
|
|
317
339
|
//#region src/react/hooks/useNavigate.ts
|
|
318
|
-
function
|
|
319
|
-
let e =
|
|
340
|
+
function R() {
|
|
341
|
+
let e = L();
|
|
320
342
|
return function(t, n) {
|
|
321
343
|
return e.navigate(t, n);
|
|
322
344
|
};
|
|
323
345
|
}
|
|
324
346
|
//#endregion
|
|
325
347
|
//#region src/react/hooks/useNavigationSignal.ts
|
|
326
|
-
function
|
|
327
|
-
|
|
348
|
+
function z() {
|
|
349
|
+
let e = i(v);
|
|
350
|
+
if (e === void 0) throw Error("useNavigationSignal requires a <Router> or <NavigationSignalContext> provider");
|
|
351
|
+
return e;
|
|
328
352
|
}
|
|
329
353
|
//#endregion
|
|
330
354
|
//#region src/react/hooks/useNavigationType.ts
|
|
331
|
-
function
|
|
332
|
-
|
|
355
|
+
function B() {
|
|
356
|
+
let e = i(y);
|
|
357
|
+
if (e === void 0) throw Error("useNavigationType requires a <Router> or <NavigationTypeContext> provider");
|
|
358
|
+
return e;
|
|
333
359
|
}
|
|
334
360
|
//#endregion
|
|
335
361
|
//#region src/react/hooks/useParams.ts
|
|
336
|
-
function
|
|
337
|
-
|
|
362
|
+
function V() {
|
|
363
|
+
let e = i(g);
|
|
364
|
+
if (e === null) throw Error("useParams requires a <Router> or <ParamsContext> provider");
|
|
365
|
+
return e;
|
|
338
366
|
}
|
|
339
367
|
//#endregion
|
|
340
368
|
//#region src/react/hooks/useIsPending.ts
|
|
341
|
-
function
|
|
369
|
+
function H() {
|
|
342
370
|
let e = i(x);
|
|
343
371
|
if (e === null) throw Error("useIsPending requires a <Router> or <TransitionContext> provider");
|
|
344
372
|
return e[0];
|
|
345
373
|
}
|
|
346
374
|
//#endregion
|
|
347
375
|
//#region src/react/hooks/usePathname.ts
|
|
348
|
-
function
|
|
349
|
-
|
|
376
|
+
function U() {
|
|
377
|
+
let e = i(E);
|
|
378
|
+
if (e === null) throw Error("usePathname requires a <Router> or <PathnameContext> provider");
|
|
379
|
+
return e;
|
|
350
380
|
}
|
|
351
381
|
//#endregion
|
|
352
382
|
//#region src/react/hooks/useSearchParams.ts
|
|
353
|
-
function
|
|
354
|
-
let e =
|
|
355
|
-
function r(
|
|
356
|
-
let
|
|
357
|
-
return e.navigate(s, { history:
|
|
383
|
+
function W() {
|
|
384
|
+
let e = L(), t = i(D), n = t ? new URL(t, "http://localhost").searchParams : new URLSearchParams();
|
|
385
|
+
function r(n, r) {
|
|
386
|
+
let i = new URL(t ?? "/", "http://localhost"), a = typeof n == "function" ? n(i.searchParams) : n, o = (a instanceof URLSearchParams ? a : new URLSearchParams(a)).toString(), s = i.pathname + (o ? "?" + o : "") + i.hash;
|
|
387
|
+
return e.navigate(s, { history: r?.history ?? "replace" });
|
|
358
388
|
}
|
|
359
389
|
return [n, r];
|
|
360
390
|
}
|
|
361
391
|
//#endregion
|
|
362
392
|
//#region src/react/hooks/useBack.ts
|
|
363
|
-
function
|
|
364
|
-
let e =
|
|
365
|
-
function
|
|
393
|
+
function G() {
|
|
394
|
+
let e = L(), [t, n] = c(e.canGoBack);
|
|
395
|
+
a(function() {
|
|
396
|
+
function t() {
|
|
397
|
+
n(e.canGoBack);
|
|
398
|
+
}
|
|
399
|
+
return e.addEventListener("currententrychange", t), function() {
|
|
400
|
+
e.removeEventListener("currententrychange", t);
|
|
401
|
+
};
|
|
402
|
+
}, [e]);
|
|
403
|
+
function r(t) {
|
|
366
404
|
return e.back(t);
|
|
367
405
|
}
|
|
368
406
|
return {
|
|
369
|
-
back:
|
|
370
|
-
canGoBack:
|
|
407
|
+
back: r,
|
|
408
|
+
canGoBack: t
|
|
371
409
|
};
|
|
372
410
|
}
|
|
373
411
|
//#endregion
|
|
374
412
|
//#region src/react/hooks/useForward.ts
|
|
375
|
-
function
|
|
376
|
-
let e =
|
|
377
|
-
function
|
|
413
|
+
function K() {
|
|
414
|
+
let e = L(), [t, n] = c(e.canGoForward);
|
|
415
|
+
a(function() {
|
|
416
|
+
function t() {
|
|
417
|
+
n(e.canGoForward);
|
|
418
|
+
}
|
|
419
|
+
return e.addEventListener("currententrychange", t), function() {
|
|
420
|
+
e.removeEventListener("currententrychange", t);
|
|
421
|
+
};
|
|
422
|
+
}, [e]);
|
|
423
|
+
function r(t) {
|
|
378
424
|
return e.forward(t);
|
|
379
425
|
}
|
|
380
426
|
return {
|
|
381
|
-
forward:
|
|
382
|
-
canGoForward:
|
|
427
|
+
forward: r,
|
|
428
|
+
canGoForward: t
|
|
383
429
|
};
|
|
384
430
|
}
|
|
385
431
|
//#endregion
|
|
386
432
|
//#region src/react/navigation/createMemoryNavigation.ts
|
|
387
|
-
function
|
|
388
|
-
let t = { url: e.url }
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
433
|
+
function q(e) {
|
|
434
|
+
let t = { url: e.url }, n = t, r = {
|
|
435
|
+
committed: Promise.resolve(n),
|
|
436
|
+
finished: Promise.resolve(n)
|
|
437
|
+
};
|
|
438
|
+
function i() {}
|
|
439
|
+
function a() {}
|
|
440
|
+
function o() {
|
|
441
|
+
return r;
|
|
442
|
+
}
|
|
443
|
+
function s() {
|
|
444
|
+
return r;
|
|
396
445
|
}
|
|
397
|
-
function
|
|
398
|
-
return
|
|
446
|
+
function c() {
|
|
447
|
+
return r;
|
|
448
|
+
}
|
|
449
|
+
function l() {
|
|
450
|
+
return r;
|
|
451
|
+
}
|
|
452
|
+
function u() {}
|
|
453
|
+
function d() {
|
|
454
|
+
return [n];
|
|
399
455
|
}
|
|
400
456
|
return {
|
|
401
457
|
currentEntry: t,
|
|
402
458
|
canGoBack: !1,
|
|
403
459
|
canGoForward: !1,
|
|
404
460
|
transition: null,
|
|
405
|
-
addEventListener:
|
|
406
|
-
removeEventListener:
|
|
407
|
-
navigate:
|
|
408
|
-
|
|
461
|
+
addEventListener: i,
|
|
462
|
+
removeEventListener: a,
|
|
463
|
+
navigate: o,
|
|
464
|
+
back: s,
|
|
465
|
+
forward: c,
|
|
466
|
+
traverseTo: l,
|
|
467
|
+
updateCurrentEntry: u,
|
|
468
|
+
entries: d
|
|
409
469
|
};
|
|
410
470
|
}
|
|
411
471
|
//#endregion
|
|
412
472
|
//#region src/react/createRouter.ts
|
|
413
|
-
function
|
|
473
|
+
function J(e, t) {
|
|
414
474
|
return e === "" && t === "" ? "" : e === "" ? t : t === "" || t === "/" ? e : (e.endsWith("/") ? e.slice(0, -1) : e) + (t.startsWith("/") ? t : "/" + t);
|
|
415
475
|
}
|
|
416
|
-
function
|
|
476
|
+
function Y(e) {
|
|
417
477
|
if (e.length !== 0) return e.length === 1 ? e[0] : async function(t) {
|
|
418
478
|
for (let n of e) await n(t);
|
|
419
479
|
};
|
|
420
480
|
}
|
|
421
|
-
function
|
|
481
|
+
function X() {
|
|
422
482
|
return null;
|
|
423
483
|
}
|
|
424
|
-
function
|
|
425
|
-
return function(
|
|
426
|
-
let
|
|
427
|
-
path:
|
|
484
|
+
function Z(e, t, n) {
|
|
485
|
+
return function(r) {
|
|
486
|
+
let i = {
|
|
487
|
+
path: r,
|
|
428
488
|
middlewares: [],
|
|
429
489
|
prefetches: [],
|
|
430
490
|
scroll: void 0,
|
|
431
491
|
focusReset: void 0,
|
|
432
492
|
formHandler: void 0
|
|
433
|
-
};
|
|
434
|
-
function
|
|
435
|
-
|
|
493
|
+
}, a = !1;
|
|
494
|
+
function o(e) {
|
|
495
|
+
if (a) throw Error(`cannot call .${e}() on a route builder that has already been consumed by .render(), .redirect(), or .group()`);
|
|
496
|
+
}
|
|
497
|
+
function s() {
|
|
498
|
+
let e = J(t.prefix, i.path ?? "");
|
|
436
499
|
if (e === "") throw Error("cannot register a route without a path or group prefix");
|
|
437
500
|
return e;
|
|
438
501
|
}
|
|
439
|
-
function
|
|
440
|
-
let e = [...t.middlewares, ...
|
|
502
|
+
function c() {
|
|
503
|
+
let e = [...t.middlewares, ...i.middlewares];
|
|
441
504
|
return e.length > 0 ? e : void 0;
|
|
442
505
|
}
|
|
443
|
-
function
|
|
444
|
-
return
|
|
506
|
+
function l() {
|
|
507
|
+
return Y([...t.prefetches, ...i.prefetches]);
|
|
445
508
|
}
|
|
446
|
-
let
|
|
509
|
+
let u = {
|
|
447
510
|
middleware(e) {
|
|
448
|
-
return
|
|
511
|
+
return o("middleware"), i.middlewares.push(...e), u;
|
|
449
512
|
},
|
|
450
513
|
prefetch(e) {
|
|
451
|
-
return
|
|
514
|
+
return o("prefetch"), i.prefetches.push(e), u;
|
|
452
515
|
},
|
|
453
516
|
scroll(e) {
|
|
454
|
-
return
|
|
517
|
+
return o("scroll"), i.scroll = e, u;
|
|
455
518
|
},
|
|
456
519
|
focusReset(e) {
|
|
457
|
-
return
|
|
520
|
+
return o("focusReset"), i.focusReset = e, u;
|
|
458
521
|
},
|
|
459
522
|
formHandler(e) {
|
|
460
|
-
return
|
|
523
|
+
return o("formHandler"), i.formHandler = e, u;
|
|
461
524
|
},
|
|
462
525
|
render(t) {
|
|
463
|
-
|
|
526
|
+
o("render"), a = !0;
|
|
527
|
+
let n = s(), r = {
|
|
464
528
|
component: t,
|
|
465
|
-
middlewares:
|
|
466
|
-
prefetch:
|
|
467
|
-
scroll:
|
|
468
|
-
focusReset:
|
|
469
|
-
formHandler:
|
|
529
|
+
middlewares: c(),
|
|
530
|
+
prefetch: l(),
|
|
531
|
+
scroll: i.scroll,
|
|
532
|
+
focusReset: i.focusReset,
|
|
533
|
+
formHandler: i.formHandler
|
|
470
534
|
};
|
|
471
|
-
e.register(n,
|
|
535
|
+
e.register(n, r);
|
|
472
536
|
},
|
|
473
537
|
redirect(t) {
|
|
474
|
-
|
|
475
|
-
|
|
538
|
+
o("redirect"), a = !0;
|
|
539
|
+
let r = s();
|
|
540
|
+
typeof t == "string" && n.set(r, t);
|
|
541
|
+
let i = {
|
|
542
|
+
component: X,
|
|
476
543
|
prefetch: function(e) {
|
|
477
544
|
let n = typeof t == "function" ? t(e) : t;
|
|
478
545
|
e.controller.redirect(n);
|
|
479
546
|
}
|
|
480
547
|
};
|
|
481
|
-
e.register(
|
|
548
|
+
e.register(r, i);
|
|
482
549
|
},
|
|
483
550
|
group() {
|
|
484
|
-
return
|
|
485
|
-
prefix:
|
|
486
|
-
middlewares: [...t.middlewares, ...
|
|
487
|
-
prefetches: [...t.prefetches, ...
|
|
488
|
-
});
|
|
551
|
+
return o("group"), a = !0, Z(e, {
|
|
552
|
+
prefix: J(t.prefix, i.path ?? ""),
|
|
553
|
+
middlewares: [...t.middlewares, ...i.middlewares],
|
|
554
|
+
prefetches: [...t.prefetches, ...i.prefetches]
|
|
555
|
+
}, n);
|
|
489
556
|
}
|
|
490
557
|
};
|
|
491
|
-
return
|
|
558
|
+
return u;
|
|
492
559
|
};
|
|
493
560
|
}
|
|
494
|
-
function
|
|
495
|
-
let
|
|
496
|
-
|
|
561
|
+
function Q(e) {
|
|
562
|
+
for (let [t] of e) {
|
|
563
|
+
let n = /* @__PURE__ */ new Set(), r = t;
|
|
564
|
+
for (; e.has(r);) {
|
|
565
|
+
if (n.has(r)) {
|
|
566
|
+
let e = [...n, r].join(" -> ");
|
|
567
|
+
throw Error(`redirect cycle detected: ${e}`);
|
|
568
|
+
}
|
|
569
|
+
n.add(r), r = e.get(r);
|
|
570
|
+
}
|
|
571
|
+
}
|
|
572
|
+
}
|
|
573
|
+
function $(t) {
|
|
574
|
+
let n = e(), r = /* @__PURE__ */ new Map();
|
|
575
|
+
return t(Z(n, {
|
|
497
576
|
prefix: "",
|
|
498
577
|
middlewares: [],
|
|
499
578
|
prefetches: []
|
|
500
|
-
})), n;
|
|
579
|
+
}, r)), Q(r), n;
|
|
501
580
|
}
|
|
502
581
|
//#endregion
|
|
503
|
-
export {
|
|
582
|
+
export { I as Link, C as MatcherContext, f as Middlewares, _ as NavigationContext, v as NavigationSignalContext, y as NavigationTypeContext, b as NotFound, g as ParamsContext, E as PathnameContext, k as Router, x as TransitionContext, D as UrlContext, N as clearPrefetchCache, q as createMemoryNavigation, $ as createRouter, O as extractPathname, A as useActiveLinkProps, G as useBack, K as useForward, H as useIsPending, R as useNavigate, L as useNavigation, T as useNavigationEvents, S as useNavigationHandlers, z as useNavigationSignal, B as useNavigationType, w as useNextMatch, V as useParams, U as usePathname, P as usePrefetch, F as usePrefetchEffect, W as useSearchParams };
|
|
504
583
|
|
|
505
584
|
//# sourceMappingURL=router_react.js.map
|