Files
hive/frontend/node_modules/storybook/dist/router/index.js
anthonyrawlins e89f2f4b7b Add comprehensive development roadmap via GitHub Issues
Created 10 detailed GitHub issues covering:
- Project activation and management UI (#1-2)
- Worker node coordination and visualization (#3-4)
- Automated GitHub repository scanning (#5)
- Intelligent model-to-issue matching (#6)
- Multi-model task execution system (#7)
- N8N workflow integration (#8)
- Hive-Bzzz P2P bridge (#9)
- Peer assistance protocol (#10)

Each issue includes detailed specifications, acceptance criteria,
technical implementation notes, and dependency mapping.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-12 19:41:01 +10:00

2290 lines
59 KiB
JavaScript

var Sr = Object.create;
var Ae = Object.defineProperty;
var Dr = Object.getOwnPropertyDescriptor;
var Nr = Object.getOwnPropertyNames;
var Or = Object.getPrototypeOf, Pr = Object.prototype.hasOwnProperty;
var a = (e, t) => Ae(e, "name", { value: t, configurable: !0 }), re = /* @__PURE__ */ ((e) => typeof require < "u" ? require : typeof Proxy <
"u" ? new Proxy(e, {
get: (t, r) => (typeof require < "u" ? require : t)[r]
}) : e)(function(e) {
if (typeof require < "u") return require.apply(this, arguments);
throw Error('Dynamic require of "' + e + '" is not supported');
});
var T = (e, t) => () => (t || e((t = { exports: {} }).exports, t), t.exports);
var Cr = (e, t, r, o) => {
if (t && typeof t == "object" || typeof t == "function")
for (let n of Nr(t))
!Pr.call(e, n) && n !== r && Ae(e, n, { get: () => t[n], enumerable: !(o = Dr(t, n)) || o.enumerable });
return e;
};
var lt = (e, t, r) => (r = e != null ? Sr(Or(e)) : {}, Cr(
// If the importer is in node compatibility mode or this is not an ESM
// file that has been converted to a CommonJS file using a Babel-
// compatible transform (i.e. "__esModule" has not been set), then set
// "default" to the CommonJS "module.exports" for node compatibility.
t || !e || !e.__esModule ? Ae(r, "default", { value: e, enumerable: !0 }) : r,
e
));
// ../node_modules/memoizerific/memoizerific.js
var Tt = T((Mt, Me) => {
(function(e) {
if (typeof Mt == "object" && typeof Me < "u")
Me.exports = e();
else if (typeof define == "function" && define.amd)
define([], e);
else {
var t;
typeof window < "u" ? t = window : typeof global < "u" ? t = global : typeof self < "u" ? t = self : t = this, t.memoizerific = e();
}
})(function() {
var e, t, r;
return (/* @__PURE__ */ a(function o(n, i, s) {
function l(f, h) {
if (!i[f]) {
if (!n[f]) {
var m = typeof re == "function" && re;
if (!h && m) return m(f, !0);
if (u) return u(f, !0);
var x = new Error("Cannot find module '" + f + "'");
throw x.code = "MODULE_NOT_FOUND", x;
}
var y = i[f] = { exports: {} };
n[f][0].call(y.exports, function(d) {
var p = n[f][1][d];
return l(p || d);
}, y, y.exports, o, n, i, s);
}
return i[f].exports;
}
a(l, "s");
for (var u = typeof re == "function" && re, c = 0; c < s.length; c++) l(s[c]);
return l;
}, "e"))({ 1: [function(o, n, i) {
n.exports = function(s) {
if (typeof Map != "function" || s) {
var l = o("./similar");
return new l();
} else
return /* @__PURE__ */ new Map();
};
}, { "./similar": 2 }], 2: [function(o, n, i) {
function s() {
return this.list = [], this.lastItem = void 0, this.size = 0, this;
}
a(s, "Similar"), s.prototype.get = function(l) {
var u;
if (this.lastItem && this.isEqual(this.lastItem.key, l))
return this.lastItem.val;
if (u = this.indexOf(l), u >= 0)
return this.lastItem = this.list[u], this.list[u].val;
}, s.prototype.set = function(l, u) {
var c;
return this.lastItem && this.isEqual(this.lastItem.key, l) ? (this.lastItem.val = u, this) : (c = this.indexOf(l), c >= 0 ? (this.lastItem =
this.list[c], this.list[c].val = u, this) : (this.lastItem = { key: l, val: u }, this.list.push(this.lastItem), this.size++, this));
}, s.prototype.delete = function(l) {
var u;
if (this.lastItem && this.isEqual(this.lastItem.key, l) && (this.lastItem = void 0), u = this.indexOf(l), u >= 0)
return this.size--, this.list.splice(u, 1)[0];
}, s.prototype.has = function(l) {
var u;
return this.lastItem && this.isEqual(this.lastItem.key, l) ? !0 : (u = this.indexOf(l), u >= 0 ? (this.lastItem = this.list[u], !0) :
!1);
}, s.prototype.forEach = function(l, u) {
var c;
for (c = 0; c < this.size; c++)
l.call(u || this, this.list[c].val, this.list[c].key, this);
}, s.prototype.indexOf = function(l) {
var u;
for (u = 0; u < this.size; u++)
if (this.isEqual(this.list[u].key, l))
return u;
return -1;
}, s.prototype.isEqual = function(l, u) {
return l === u || l !== l && u !== u;
}, n.exports = s;
}, {}], 3: [function(o, n, i) {
var s = o("map-or-similar");
n.exports = function(f) {
var h = new s(!1), m = [];
return function(x) {
var y = /* @__PURE__ */ a(function() {
var d = h, p, v, g = arguments.length - 1, R = Array(g + 1), w = !0, S;
if ((y.numArgs || y.numArgs === 0) && y.numArgs !== g + 1)
throw new Error("Memoizerific functions should always be called with the same number of arguments");
for (S = 0; S < g; S++) {
if (R[S] = {
cacheItem: d,
arg: arguments[S]
}, d.has(arguments[S])) {
d = d.get(arguments[S]);
continue;
}
w = !1, p = new s(!1), d.set(arguments[S], p), d = p;
}
return w && (d.has(arguments[g]) ? v = d.get(arguments[g]) : w = !1), w || (v = x.apply(null, arguments), d.set(arguments[g], v)),
f > 0 && (R[g] = {
cacheItem: d,
arg: arguments[g]
}, w ? l(m, R) : m.push(R), m.length > f && u(m.shift())), y.wasMemoized = w, y.numArgs = g + 1, v;
}, "memoizerific");
return y.limit = f, y.wasMemoized = !1, y.cache = h, y.lru = m, y;
};
};
function l(f, h) {
var m = f.length, x = h.length, y, d, p;
for (d = 0; d < m; d++) {
for (y = !0, p = 0; p < x; p++)
if (!c(f[d][p].arg, h[p].arg)) {
y = !1;
break;
}
if (y)
break;
}
f.push(f.splice(d, 1)[0]);
}
a(l, "moveToMostRecentLru");
function u(f) {
var h = f.length, m = f[h - 1], x, y;
for (m.cacheItem.delete(m.arg), y = h - 2; y >= 0 && (m = f[y], x = m.cacheItem.get(m.arg), !x || !x.size); y--)
m.cacheItem.delete(m.arg);
}
a(u, "removeCachedResult");
function c(f, h) {
return f === h || f !== f && h !== h;
}
a(c, "isEqual");
}, { "map-or-similar": 1 }] }, {}, [3])(3);
});
});
// ../node_modules/picoquery/lib/string-util.js
var Ie = T((Te) => {
"use strict";
Object.defineProperty(Te, "__esModule", { value: !0 });
Te.encodeString = Ar;
var C = Array.from({ length: 256 }, (e, t) => "%" + ((t < 16 ? "0" : "") + t.toString(16)).toUpperCase()), _r = new Int8Array([
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
0,
0,
0,
0,
0,
1,
1,
1,
1,
0,
0,
1,
1,
0,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
0,
0,
0,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
0,
1,
0,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
0,
0,
1,
0
]);
function Ar(e) {
let t = e.length;
if (t === 0)
return "";
let r = "", o = 0, n = 0;
e: for (; n < t; n++) {
let i = e.charCodeAt(n);
for (; i < 128; ) {
if (_r[i] !== 1 && (o < n && (r += e.slice(o, n)), o = n + 1, r += C[i]), ++n === t)
break e;
i = e.charCodeAt(n);
}
if (o < n && (r += e.slice(o, n)), i < 2048) {
o = n + 1, r += C[192 | i >> 6] + C[128 | i & 63];
continue;
}
if (i < 55296 || i >= 57344) {
o = n + 1, r += C[224 | i >> 12] + C[128 | i >> 6 & 63] + C[128 | i & 63];
continue;
}
if (++n, n >= t)
throw new Error("URI malformed");
let s = e.charCodeAt(n) & 1023;
o = n + 1, i = 65536 + ((i & 1023) << 10 | s), r += C[240 | i >> 18] + C[128 | i >> 12 & 63] + C[128 | i >> 6 & 63] + C[128 | i & 63];
}
return o === 0 ? e : o < t ? r + e.slice(o) : r;
}
a(Ar, "encodeString");
});
// ../node_modules/picoquery/lib/shared.js
var ge = T((_) => {
"use strict";
Object.defineProperty(_, "__esModule", { value: !0 });
_.defaultOptions = _.defaultShouldSerializeObject = _.defaultValueSerializer = void 0;
var Be = Ie(), Lr = /* @__PURE__ */ a((e) => {
switch (typeof e) {
case "string":
return (0, Be.encodeString)(e);
case "bigint":
case "boolean":
return "" + e;
case "number":
if (Number.isFinite(e))
return e < 1e21 ? "" + e : (0, Be.encodeString)("" + e);
break;
}
return e instanceof Date ? (0, Be.encodeString)(e.toISOString()) : "";
}, "defaultValueSerializer");
_.defaultValueSerializer = Lr;
var Fr = /* @__PURE__ */ a((e) => e instanceof Date, "defaultShouldSerializeObject");
_.defaultShouldSerializeObject = Fr;
var It = /* @__PURE__ */ a((e) => e, "identityFunc");
_.defaultOptions = {
nesting: !0,
nestingSyntax: "dot",
arrayRepeat: !1,
arrayRepeatSyntax: "repeat",
delimiter: 38,
valueDeserializer: It,
valueSerializer: _.defaultValueSerializer,
keyDeserializer: It,
shouldSerializeObject: _.defaultShouldSerializeObject
};
});
// ../node_modules/picoquery/lib/object-util.js
var ze = T((ye) => {
"use strict";
Object.defineProperty(ye, "__esModule", { value: !0 });
ye.getDeepObject = Mr;
ye.stringifyObject = Bt;
var k = ge(), jr = Ie();
function Ur(e) {
return e === "__proto__" || e === "constructor" || e === "prototype";
}
a(Ur, "isPrototypeKey");
function Mr(e, t, r, o, n) {
if (Ur(t))
return e;
let i = e[t];
return typeof i == "object" && i !== null ? i : !o && (n || typeof r == "number" || typeof r == "string" && r * 0 === 0 && r.indexOf(".") ===
-1) ? e[t] = [] : e[t] = {};
}
a(Mr, "getDeepObject");
var Tr = 20, Ir = "[]", Br = "[", zr = "]", kr = ".";
function Bt(e, t, r = 0, o, n) {
let { nestingSyntax: i = k.defaultOptions.nestingSyntax, arrayRepeat: s = k.defaultOptions.arrayRepeat, arrayRepeatSyntax: l = k.defaultOptions.
arrayRepeatSyntax, nesting: u = k.defaultOptions.nesting, delimiter: c = k.defaultOptions.delimiter, valueSerializer: f = k.defaultOptions.
valueSerializer, shouldSerializeObject: h = k.defaultOptions.shouldSerializeObject } = t, m = typeof c == "number" ? String.fromCharCode(
c) : c, x = n === !0 && s, y = i === "dot" || i === "js" && !n;
if (r > Tr)
return "";
let d = "", p = !0, v = !1;
for (let g in e) {
let R = e[g], w;
o ? (w = o, x ? l === "bracket" && (w += Ir) : y ? (w += kr, w += g) : (w += Br, w += g, w += zr)) : w = g, p || (d += m), typeof R ==
"object" && R !== null && !h(R) ? (v = R.pop !== void 0, (u || s && v) && (d += Bt(R, t, r + 1, w, v))) : (d += (0, jr.encodeString)(w),
d += "=", d += f(R, g)), p && (p = !1);
}
return d;
}
a(Bt, "stringifyObject");
});
// ../node_modules/fast-decode-uri-component/index.js
var Wt = T((zo, Vt) => {
"use strict";
var zt = 12, Vr = 0, ke = [
// The first part of the table maps bytes to character to a transition.
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
2,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
3,
4,
4,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
5,
6,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
7,
8,
7,
7,
10,
9,
9,
9,
11,
4,
4,
4,
4,
4,
4,
4,
4,
4,
4,
4,
// The second part of the table maps a state to a new state when adding a
// transition.
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
12,
0,
0,
0,
0,
24,
36,
48,
60,
72,
84,
96,
0,
12,
12,
12,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
24,
0,
0,
0,
0,
0,
0,
0,
0,
0,
24,
24,
24,
0,
0,
0,
0,
0,
0,
0,
0,
0,
24,
24,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
48,
48,
48,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
48,
48,
0,
0,
0,
0,
0,
0,
0,
0,
0,
48,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
// The third part maps the current transition to a mask that needs to apply
// to the byte.
127,
63,
63,
63,
0,
31,
15,
15,
15,
7,
7,
7
];
function Wr(e) {
var t = e.indexOf("%");
if (t === -1) return e;
for (var r = e.length, o = "", n = 0, i = 0, s = t, l = zt; t > -1 && t < r; ) {
var u = kt(e[t + 1], 4), c = kt(e[t + 2], 0), f = u | c, h = ke[f];
if (l = ke[256 + l + h], i = i << 6 | f & ke[364 + h], l === zt)
o += e.slice(n, s), o += i <= 65535 ? String.fromCharCode(i) : String.fromCharCode(
55232 + (i >> 10),
56320 + (i & 1023)
), i = 0, n = t + 3, t = s = e.indexOf("%", n);
else {
if (l === Vr)
return null;
if (t += 3, t < r && e.charCodeAt(t) === 37) continue;
return null;
}
}
return o + e.slice(n);
}
a(Wr, "decodeURIComponent");
var Hr = {
0: 0,
1: 1,
2: 2,
3: 3,
4: 4,
5: 5,
6: 6,
7: 7,
8: 8,
9: 9,
a: 10,
A: 10,
b: 11,
B: 11,
c: 12,
C: 12,
d: 13,
D: 13,
e: 14,
E: 14,
f: 15,
F: 15
};
function kt(e, t) {
var r = Hr[e];
return r === void 0 ? 255 : r << t;
}
a(kt, "hexCodeToInt");
Vt.exports = Wr;
});
// ../node_modules/picoquery/lib/parse.js
var $t = T((M) => {
"use strict";
var Kr = M && M.__importDefault || function(e) {
return e && e.__esModule ? e : { default: e };
};
Object.defineProperty(M, "__esModule", { value: !0 });
M.numberValueDeserializer = M.numberKeyDeserializer = void 0;
M.parse = Jr;
var ve = ze(), V = ge(), Ht = Kr(Wt()), qr = /* @__PURE__ */ a((e) => {
let t = Number(e);
return Number.isNaN(t) ? e : t;
}, "numberKeyDeserializer");
M.numberKeyDeserializer = qr;
var $r = /* @__PURE__ */ a((e) => {
let t = Number(e);
return Number.isNaN(t) ? e : t;
}, "numberValueDeserializer");
M.numberValueDeserializer = $r;
var Kt = /\+/g, qt = /* @__PURE__ */ a(function() {
}, "Empty");
qt.prototype = /* @__PURE__ */ Object.create(null);
function Re(e, t, r, o, n) {
let i = e.substring(t, r);
return o && (i = i.replace(Kt, " ")), n && (i = (0, Ht.default)(i) || i), i;
}
a(Re, "computeKeySlice");
function Jr(e, t) {
let { valueDeserializer: r = V.defaultOptions.valueDeserializer, keyDeserializer: o = V.defaultOptions.keyDeserializer, arrayRepeatSyntax: n = V.
defaultOptions.arrayRepeatSyntax, nesting: i = V.defaultOptions.nesting, arrayRepeat: s = V.defaultOptions.arrayRepeat, nestingSyntax: l = V.
defaultOptions.nestingSyntax, delimiter: u = V.defaultOptions.delimiter } = t ?? {}, c = typeof u == "string" ? u.charCodeAt(0) : u, f = l ===
"js", h = new qt();
if (typeof e != "string")
return h;
let m = e.length, x = "", y = -1, d = -1, p = -1, v = h, g, R = "", w = "", S = !1, q = !1, F = !1, _e = !1, X = !1, G = !1, he = !1, j = 0,
Z = -1, ee = -1, st = -1;
for (let D = 0; D < m + 1; D++) {
if (j = D !== m ? e.charCodeAt(D) : c, j === c) {
if (he = d > y, he || (d = D), p !== d - 1 && (w = Re(e, p + 1, Z > -1 ? Z : d, F, S), R = o(w), g !== void 0 && (v = (0, ve.getDeepObject)(
v, g, R, f && X, f && G))), he || R !== "") {
he && (x = e.slice(d + 1, D), _e && (x = x.replace(Kt, " ")), q && (x = (0, Ht.default)(x) || x));
let te = r(x, R);
if (s) {
let pe = v[R];
pe === void 0 ? Z > -1 ? v[R] = [te] : v[R] = te : pe.pop ? pe.push(te) : v[R] = [pe, te];
} else
v[R] = te;
}
x = "", y = D, d = D, S = !1, q = !1, F = !1, _e = !1, X = !1, G = !1, Z = -1, p = D, v = h, g = void 0, R = "";
} else j === 93 ? (s && n === "bracket" && st === 91 && (Z = ee), i && (l === "index" || f) && d <= y && (p !== ee && (w = Re(e, p + 1,
D, F, S), R = o(w), g !== void 0 && (v = (0, ve.getDeepObject)(v, g, R, void 0, f)), g = R, F = !1, S = !1), p = D, G = !0, X = !1)) :
j === 46 ? i && (l === "dot" || f) && d <= y && (p !== ee && (w = Re(e, p + 1, D, F, S), R = o(w), g !== void 0 && (v = (0, ve.getDeepObject)(
v, g, R, f)), g = R, F = !1, S = !1), X = !0, G = !1, p = D) : j === 91 ? i && (l === "index" || f) && d <= y && (p !== ee && (w = Re(
e, p + 1, D, F, S), R = o(w), f && g !== void 0 && (v = (0, ve.getDeepObject)(v, g, R, f)), g = R, F = !1, S = !1, X = !1, G = !0), p =
D) : j === 61 ? d <= y ? d = D : q = !0 : j === 43 ? d > y ? _e = !0 : F = !0 : j === 37 && (d > y ? q = !0 : S = !0);
ee = D, st = j;
}
return h;
}
a(Jr, "parse");
});
// ../node_modules/picoquery/lib/stringify.js
var Jt = T((Ve) => {
"use strict";
Object.defineProperty(Ve, "__esModule", { value: !0 });
Ve.stringify = Qr;
var Yr = ze();
function Qr(e, t) {
if (e === null || typeof e != "object")
return "";
let r = t ?? {};
return (0, Yr.stringifyObject)(e, r);
}
a(Qr, "stringify");
});
// ../node_modules/picoquery/lib/main.js
var Yt = T((P) => {
"use strict";
var Xr = P && P.__createBinding || (Object.create ? function(e, t, r, o) {
o === void 0 && (o = r);
var n = Object.getOwnPropertyDescriptor(t, r);
(!n || ("get" in n ? !t.__esModule : n.writable || n.configurable)) && (n = { enumerable: !0, get: /* @__PURE__ */ a(function() {
return t[r];
}, "get") }), Object.defineProperty(e, o, n);
} : function(e, t, r, o) {
o === void 0 && (o = r), e[o] = t[r];
}), Gr = P && P.__exportStar || function(e, t) {
for (var r in e) r !== "default" && !Object.prototype.hasOwnProperty.call(t, r) && Xr(t, e, r);
};
Object.defineProperty(P, "__esModule", { value: !0 });
P.stringify = P.parse = void 0;
var Zr = $t();
Object.defineProperty(P, "parse", { enumerable: !0, get: /* @__PURE__ */ a(function() {
return Zr.parse;
}, "get") });
var en = Jt();
Object.defineProperty(P, "stringify", { enumerable: !0, get: /* @__PURE__ */ a(function() {
return en.stringify;
}, "get") });
Gr(ge(), P);
});
// src/router/utils.ts
import { once as tn } from "storybook/internal/client-logger";
// ../node_modules/es-toolkit/dist/function/noop.mjs
function ut() {
}
a(ut, "noop");
// ../node_modules/es-toolkit/dist/compat/_internal/getSymbols.mjs
function Le(e) {
return Object.getOwnPropertySymbols(e).filter((t) => Object.prototype.propertyIsEnumerable.call(e, t));
}
a(Le, "getSymbols");
// ../node_modules/es-toolkit/dist/compat/_internal/getTag.mjs
function Fe(e) {
return e == null ? e === void 0 ? "[object Undefined]" : "[object Null]" : Object.prototype.toString.call(e);
}
a(Fe, "getTag");
// ../node_modules/es-toolkit/dist/compat/_internal/tags.mjs
var ct = "[object RegExp]", ft = "[object String]", dt = "[object Number]", ht = "[object Boolean]", je = "[object Arguments]", pt = "[objec\
t Symbol]", mt = "[object Date]", gt = "[object Map]", yt = "[object Set]", vt = "[object Array]", Rt = "[object Function]", xt = "[object A\
rrayBuffer]", me = "[object Object]", bt = "[object Error]", Et = "[object DataView]", wt = "[object Uint8Array]", St = "[object Uint8Clampe\
dArray]", Dt = "[object Uint16Array]", Nt = "[object Uint32Array]", Ot = "[object BigUint64Array]", Pt = "[object Int8Array]", Ct = "[object\
Int16Array]", _t = "[object Int32Array]", At = "[object BigInt64Array]", Lt = "[object Float32Array]", Ft = "[object Float64Array]";
// ../node_modules/es-toolkit/dist/predicate/isPlainObject.mjs
function U(e) {
if (!e || typeof e != "object")
return !1;
let t = Object.getPrototypeOf(e);
return t === null || t === Object.prototype || Object.getPrototypeOf(t) === null ? Object.prototype.toString.call(e) === "[object Object]" :
!1;
}
a(U, "isPlainObject");
// ../node_modules/es-toolkit/dist/compat/util/eq.mjs
function jt(e, t) {
return e === t || Number.isNaN(e) && Number.isNaN(t);
}
a(jt, "eq");
// ../node_modules/es-toolkit/dist/predicate/isEqualWith.mjs
function Ut(e, t, r) {
return ne(e, t, void 0, void 0, void 0, void 0, r);
}
a(Ut, "isEqualWith");
function ne(e, t, r, o, n, i, s) {
let l = s(e, t, r, o, n, i);
if (l !== void 0)
return l;
if (typeof e == typeof t)
switch (typeof e) {
case "bigint":
case "string":
case "boolean":
case "symbol":
case "undefined":
return e === t;
case "number":
return e === t || Object.is(e, t);
case "function":
return e === t;
case "object":
return oe(e, t, i, s);
}
return oe(e, t, i, s);
}
a(ne, "isEqualWithImpl");
function oe(e, t, r, o) {
if (Object.is(e, t))
return !0;
let n = Fe(e), i = Fe(t);
if (n === je && (n = me), i === je && (i = me), n !== i)
return !1;
switch (n) {
case ft:
return e.toString() === t.toString();
case dt: {
let u = e.valueOf(), c = t.valueOf();
return jt(u, c);
}
case ht:
case mt:
case pt:
return Object.is(e.valueOf(), t.valueOf());
case ct:
return e.source === t.source && e.flags === t.flags;
case Rt:
return e === t;
}
r = r ?? /* @__PURE__ */ new Map();
let s = r.get(e), l = r.get(t);
if (s != null && l != null)
return s === t;
r.set(e, t), r.set(t, e);
try {
switch (n) {
case gt: {
if (e.size !== t.size)
return !1;
for (let [u, c] of e.entries())
if (!t.has(u) || !ne(c, t.get(u), u, e, t, r, o))
return !1;
return !0;
}
case yt: {
if (e.size !== t.size)
return !1;
let u = Array.from(e.values()), c = Array.from(t.values());
for (let f = 0; f < u.length; f++) {
let h = u[f], m = c.findIndex((x) => ne(h, x, void 0, e, t, r, o));
if (m === -1)
return !1;
c.splice(m, 1);
}
return !0;
}
case vt:
case wt:
case St:
case Dt:
case Nt:
case Ot:
case Pt:
case Ct:
case _t:
case At:
case Lt:
case Ft: {
if (typeof Buffer < "u" && Buffer.isBuffer(e) !== Buffer.isBuffer(t) || e.length !== t.length)
return !1;
for (let u = 0; u < e.length; u++)
if (!ne(e[u], t[u], u, e, t, r, o))
return !1;
return !0;
}
case xt:
return e.byteLength !== t.byteLength ? !1 : oe(new Uint8Array(e), new Uint8Array(t), r, o);
case Et:
return e.byteLength !== t.byteLength || e.byteOffset !== t.byteOffset ? !1 : oe(new Uint8Array(e), new Uint8Array(t), r, o);
case bt:
return e.name === t.name && e.message === t.message;
case me: {
if (!(oe(e.constructor, t.constructor, r, o) || U(e) && U(t)))
return !1;
let c = [...Object.keys(e), ...Le(e)], f = [...Object.keys(t), ...Le(t)];
if (c.length !== f.length)
return !1;
for (let h = 0; h < c.length; h++) {
let m = c[h], x = e[m];
if (!Object.hasOwn(t, m))
return !1;
let y = t[m];
if (!ne(x, y, m, e, t, r, o))
return !1;
}
return !0;
}
default:
return !1;
}
} finally {
r.delete(e), r.delete(t);
}
}
a(oe, "areObjectsEqual");
// ../node_modules/es-toolkit/dist/predicate/isEqual.mjs
function Ue(e, t) {
return Ut(e, t, ut);
}
a(Ue, "isEqual");
// src/router/utils.ts
var be = lt(Tt(), 1), ae = lt(Yt(), 1);
// ../node_modules/ts-dedent/esm/index.js
function Qt(e) {
for (var t = [], r = 1; r < arguments.length; r++)
t[r - 1] = arguments[r];
var o = Array.from(typeof e == "string" ? [e] : e);
o[o.length - 1] = o[o.length - 1].replace(/\r?\n([\t ]*)$/, "");
var n = o.reduce(function(l, u) {
var c = u.match(/\n([\t ]+|(?!\s).)/g);
return c ? l.concat(c.map(function(f) {
var h, m;
return (m = (h = f.match(/[\t ]/g)) === null || h === void 0 ? void 0 : h.length) !== null && m !== void 0 ? m : 0;
})) : l;
}, []);
if (n.length) {
var i = new RegExp(`
[ ]{` + Math.min.apply(Math, n) + "}", "g");
o = o.map(function(l) {
return l.replace(i, `
`);
});
}
o[0] = o[0].replace(/^\r?\n/, "");
var s = o[0];
return t.forEach(function(l, u) {
var c = s.match(/(?:^|\n)( *)$/), f = c ? c[1] : "", h = l;
typeof l == "string" && l.includes(`
`) && (h = String(l).split(`
`).map(function(m, x) {
return x === 0 ? m : "" + f + m;
}).join(`
`)), s += h + o[u + 1];
}), s;
}
a(Qt, "dedent");
// src/router/utils.ts
var rn = /\/([^/]+)\/(?:(.*)_)?([^/]+)?/, Gt = (0, be.default)(1e3)((e) => {
let t = {
viewMode: void 0,
storyId: void 0,
refId: void 0
};
if (e) {
let [, r, o, n] = e.toLowerCase().match(rn) || [];
r && Object.assign(t, {
viewMode: r,
storyId: n,
refId: o
});
}
return t;
}), xe = Symbol("Deeply equal"), We = /* @__PURE__ */ a((e, t) => {
if (typeof e != typeof t)
return t;
if (Ue(e, t))
return xe;
if (Array.isArray(e) && Array.isArray(t)) {
let r = t.reduce((o, n, i) => {
let s = We(e[i], n);
return s !== xe && (o[i] = s), o;
}, new Array(t.length));
return t.length >= e.length ? r : r.concat(new Array(e.length - t.length).fill(void 0));
}
return U(e) && U(t) ? Object.keys({ ...e, ...t }).reduce((r, o) => {
let n = We(e?.[o], t?.[o]);
return n === xe ? r : Object.assign(r, { [o]: n });
}, {}) : t;
}, "deepDiff"), Xt = /^[a-zA-Z0-9 _-]*$/, nn = /^-?[0-9]+(\.[0-9]+)?$/, Zt = /^#([a-f0-9]{3,4}|[a-f0-9]{6}|[a-f0-9]{8})$/i, er = /^(rgba?|hsla?)\(([0-9]{1,3}),\s?([0-9]{1,3})%?,\s?([0-9]{1,3})%?,?\s?([0-9](\.[0-9]{1,2})?)?\)$/i,
He = /* @__PURE__ */ a((e = "", t) => e === null || e === "" || !Xt.test(e) ? !1 : t == null || t instanceof Date || typeof t == "number" ||
typeof t == "boolean" ? !0 : typeof t == "string" ? Xt.test(t) || nn.test(t) || Zt.test(t) || er.test(t) : Array.isArray(t) ? t.every((r) => He(
e, r)) : U(t) ? Object.entries(t).every(([r, o]) => He(r, o)) : !1, "validateArgs"), Ke = /* @__PURE__ */ a((e) => e === void 0 ? "!undefine\
d" : e === null ? "!null" : typeof e == "string" ? Zt.test(e) ? `!hex(${e.slice(1)})` : er.test(e) ? `!${e.replace(/[\s%]/g, "")}` : e : typeof e ==
"boolean" ? `!${e}` : e instanceof Date ? `!date(${e.toISOString()})` : Array.isArray(e) ? e.map(Ke) : U(e) ? Object.entries(e).reduce(
(t, [r, o]) => Object.assign(t, { [r]: Ke(o) }),
{}
) : e, "encodeSpecialValues"), on = /* @__PURE__ */ a((e) => {
switch (e) {
case "%20":
return "+";
case "%5B":
return "[";
case "%5D":
return "]";
case "%2C":
return ",";
case "%3A":
return ":";
}
return e;
}, "decodeKnownQueryChar"), an = /%[0-9A-F]{2}/g, Zo = /* @__PURE__ */ a((e, t) => {
let r = We(e, t);
if (!r || r === xe)
return "";
let o = Object.entries(r).reduce((n, [i, s]) => He(i, s) ? Object.assign(n, { [i]: s }) : (tn.warn(Qt`
Omitted potentially unsafe URL args.
More info: https://storybook.js.org/docs/writing-stories/args#setting-args-through-the-url
`), n), {});
return (0, ae.stringify)(Ke(o), {
delimiter: ";",
// we don't actually create multiple query params
nesting: !0,
nestingSyntax: "js"
// encode objects using dot notation: obj.key=val
}).replace(an, on).split(";").map((n) => n.replace("=", ":")).join(";");
}, "buildArgsParam"), sn = (0, be.default)(1e3)((e) => e !== void 0 ? (0, ae.parse)(e) : {}), tr = /* @__PURE__ */ a((e) => sn(e.search ? e.
search.slice(1) : ""), "queryFromLocation"), ea = /* @__PURE__ */ a((e) => {
let t = (0, ae.stringify)(e);
return t ? "?" + t : "";
}, "stringifyQuery"), rr = (0, be.default)(1e3)((e, t, r = !0) => {
if (r) {
if (typeof t != "string")
throw new Error("startsWith only works with string targets");
return e && e.startsWith(t) ? { path: e } : null;
}
let o = typeof t == "string" && e === t, n = e && t && e.match(t);
return o || n ? { path: e } : null;
});
// src/router/router.tsx
import de, { useCallback as to } from "react";
import { global as ro } from "@storybook/global";
// ../node_modules/react-router-dom/dist/index.js
import * as E from "react";
// ../node_modules/react-router/dist/index.js
import * as b from "react";
// ../node_modules/@remix-run/router/dist/router.js
function ie() {
return ie = Object.assign ? Object.assign.bind() : function(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t];
for (var o in r)
Object.prototype.hasOwnProperty.call(r, o) && (e[o] = r[o]);
}
return e;
}, ie.apply(this, arguments);
}
a(ie, "_extends");
var A;
(function(e) {
e.Pop = "POP", e.Push = "PUSH", e.Replace = "REPLACE";
})(A || (A = {}));
var nr = "popstate";
function ir(e) {
e === void 0 && (e = {});
function t(o, n) {
let {
pathname: i,
search: s,
hash: l
} = o.location;
return $e(
"",
{
pathname: i,
search: s,
hash: l
},
// state defaults to `null` because `window.history.state` does
n.state && n.state.usr || null,
n.state && n.state.key || "default"
);
}
a(t, "createBrowserLocation");
function r(o, n) {
return typeof n == "string" ? n : I(n);
}
return a(r, "createBrowserHref"), un(t, r, null, e);
}
a(ir, "createBrowserHistory");
function N(e, t) {
if (e === !1 || e === null || typeof e > "u")
throw new Error(t);
}
a(N, "invariant");
function W(e, t) {
if (!e) {
typeof console < "u" && console.warn(t);
try {
throw new Error(t);
} catch {
}
}
}
a(W, "warning");
function ln() {
return Math.random().toString(36).substr(2, 8);
}
a(ln, "createKey");
function or(e, t) {
return {
usr: e.state,
key: e.key,
idx: t
};
}
a(or, "getHistoryState");
function $e(e, t, r, o) {
return r === void 0 && (r = null), ie({
pathname: typeof e == "string" ? e : e.pathname,
search: "",
hash: ""
}, typeof t == "string" ? H(t) : t, {
state: r,
// TODO: This could be cleaned up. push/replace should probably just take
// full Locations now and avoid the need to run through this flow at all
// But that's a pretty big refactor to the current test suite so going to
// keep as is for the time being and just let any incoming keys take precedence
key: t && t.key || o || ln()
});
}
a($e, "createLocation");
function I(e) {
let {
pathname: t = "/",
search: r = "",
hash: o = ""
} = e;
return r && r !== "?" && (t += r.charAt(0) === "?" ? r : "?" + r), o && o !== "#" && (t += o.charAt(0) === "#" ? o : "#" + o), t;
}
a(I, "createPath");
function H(e) {
let t = {};
if (e) {
let r = e.indexOf("#");
r >= 0 && (t.hash = e.substr(r), e = e.substr(0, r));
let o = e.indexOf("?");
o >= 0 && (t.search = e.substr(o), e = e.substr(0, o)), e && (t.pathname = e);
}
return t;
}
a(H, "parsePath");
function un(e, t, r, o) {
o === void 0 && (o = {});
let {
window: n = document.defaultView,
v5Compat: i = !1
} = o, s = n.history, l = A.Pop, u = null, c = f();
c == null && (c = 0, s.replaceState(ie({}, s.state, {
idx: c
}), ""));
function f() {
return (s.state || {
idx: null
}).idx;
}
a(f, "getIndex");
function h() {
l = A.Pop;
let p = f(), v = p == null ? null : p - c;
c = p, u && u({
action: l,
location: d.location,
delta: v
});
}
a(h, "handlePop");
function m(p, v) {
l = A.Push;
let g = $e(d.location, p, v);
r && r(g, p), c = f() + 1;
let R = or(g, c), w = d.createHref(g);
try {
s.pushState(R, "", w);
} catch (S) {
if (S instanceof DOMException && S.name === "DataCloneError")
throw S;
n.location.assign(w);
}
i && u && u({
action: l,
location: d.location,
delta: 1
});
}
a(m, "push");
function x(p, v) {
l = A.Replace;
let g = $e(d.location, p, v);
r && r(g, p), c = f();
let R = or(g, c), w = d.createHref(g);
s.replaceState(R, "", w), i && u && u({
action: l,
location: d.location,
delta: 0
});
}
a(x, "replace");
function y(p) {
let v = n.location.origin !== "null" ? n.location.origin : n.location.href, g = typeof p == "string" ? p : I(p);
return N(v, "No window.location.(origin|href) available to create URL for href: " + g), new URL(g, v);
}
a(y, "createURL");
let d = {
get action() {
return l;
},
get location() {
return e(n, s);
},
listen(p) {
if (u)
throw new Error("A history only accepts one active listener");
return n.addEventListener(nr, h), u = p, () => {
n.removeEventListener(nr, h), u = null;
};
},
createHref(p) {
return t(n, p);
},
createURL: y,
encodeLocation(p) {
let v = y(p);
return {
pathname: v.pathname,
search: v.search,
hash: v.hash
};
},
push: m,
replace: x,
go(p) {
return s.go(p);
}
};
return d;
}
a(un, "getUrlBasedHistory");
var ar;
(function(e) {
e.data = "data", e.deferred = "deferred", e.redirect = "redirect", e.error = "error";
})(ar || (ar = {}));
function K(e, t) {
if (t === "/") return e;
if (!e.toLowerCase().startsWith(t.toLowerCase()))
return null;
let r = t.endsWith("/") ? t.length - 1 : t.length, o = e.charAt(r);
return o && o !== "/" ? null : e.slice(r) || "/";
}
a(K, "stripBasename");
function Je(e, t) {
t === void 0 && (t = "/");
let {
pathname: r,
search: o = "",
hash: n = ""
} = typeof e == "string" ? H(e) : e;
return {
pathname: r ? r.startsWith("/") ? r : cn(r, t) : t,
search: fn(o),
hash: dn(n)
};
}
a(Je, "resolvePath");
function cn(e, t) {
let r = t.replace(/\/+$/, "").split("/");
return e.split("/").forEach((n) => {
n === ".." ? r.length > 1 && r.pop() : n !== "." && r.push(n);
}), r.length > 1 ? r.join("/") : "/";
}
a(cn, "resolvePathname");
function qe(e, t, r, o) {
return "Cannot include a '" + e + "' character in a manually specified " + ("`to." + t + "` field [" + JSON.stringify(o) + "]. Please sep\
arate it out to the ") + ("`to." + r + "` field. Alternatively you may provide the full path as ") + 'a string in <Link to="..."> and the ro\
uter will parse it for you.';
}
a(qe, "getInvalidPathError");
function Ye(e) {
return e.filter((t, r) => r === 0 || t.route.path && t.route.path.length > 0);
}
a(Ye, "getPathContributingMatches");
function Qe(e, t, r, o) {
o === void 0 && (o = !1);
let n;
typeof e == "string" ? n = H(e) : (n = ie({}, e), N(!n.pathname || !n.pathname.includes("?"), qe("?", "pathname", "search", n)), N(!n.pathname ||
!n.pathname.includes("#"), qe("#", "pathname", "hash", n)), N(!n.search || !n.search.includes("#"), qe("#", "search", "hash", n)));
let i = e === "" || n.pathname === "", s = i ? "/" : n.pathname, l;
if (o || s == null)
l = r;
else {
let h = t.length - 1;
if (s.startsWith("..")) {
let m = s.split("/");
for (; m[0] === ".."; )
m.shift(), h -= 1;
n.pathname = m.join("/");
}
l = h >= 0 ? t[h] : "/";
}
let u = Je(n, l), c = s && s !== "/" && s.endsWith("/"), f = (i || s === ".") && r.endsWith("/");
return !u.pathname.endsWith("/") && (c || f) && (u.pathname += "/"), u;
}
a(Qe, "resolveTo");
var se = /* @__PURE__ */ a((e) => e.join("/").replace(/\/\/+/g, "/"), "joinPaths");
var fn = /* @__PURE__ */ a((e) => !e || e === "?" ? "" : e.startsWith("?") ? e : "?" + e, "normalizeSearch"), dn = /* @__PURE__ */ a((e) => !e ||
e === "#" ? "" : e.startsWith("#") ? e : "#" + e, "normalizeHash");
var sr = ["post", "put", "patch", "delete"], na = new Set(sr), hn = ["get", ...sr], oa = new Set(hn);
var aa = Symbol("deferred");
// ../node_modules/react-router/dist/index.js
function Xe() {
return Xe = Object.assign ? Object.assign.bind() : function(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t];
for (var o in r)
Object.prototype.hasOwnProperty.call(r, o) && (e[o] = r[o]);
}
return e;
}, Xe.apply(this, arguments);
}
a(Xe, "_extends");
var $ = /* @__PURE__ */ b.createContext(null);
$.displayName = "DataRouter";
var J = /* @__PURE__ */ b.createContext(null);
J.displayName = "DataRouterState";
var xn = /* @__PURE__ */ b.createContext(null);
xn.displayName = "Await";
var O = /* @__PURE__ */ b.createContext(null);
O.displayName = "Navigation";
var le = /* @__PURE__ */ b.createContext(null);
le.displayName = "Location";
var B = /* @__PURE__ */ b.createContext({
outlet: null,
matches: [],
isDataRoute: !1
});
B.displayName = "Route";
var bn = /* @__PURE__ */ b.createContext(null);
bn.displayName = "RouteError";
function Ge(e, t) {
let {
relative: r
} = t === void 0 ? {} : t;
ue() || N(
!1,
// TODO: This error is probably because they somehow have 2 versions of the
// router loaded. We can help them understand how to avoid that.
"useHref() may be used only in the context of a <Router> component."
);
let {
basename: o,
navigator: n
} = b.useContext(O), {
hash: i,
pathname: s,
search: l
} = Y(e, {
relative: r
}), u = s;
return o !== "/" && (u = s === "/" ? o : se([o, s])), n.createHref({
pathname: u,
search: l,
hash: i
});
}
a(Ge, "useHref");
function ue() {
return b.useContext(le) != null;
}
a(ue, "useInRouterContext");
function L() {
return ue() || N(
!1,
// TODO: This error is probably because they somehow have 2 versions of the
// router loaded. We can help them understand how to avoid that.
"useLocation() may be used only in the context of a <Router> component."
), b.useContext(le).location;
}
a(L, "useLocation");
var dr = "You should call navigate() in a React.useEffect(), not when your component is first rendered.";
function hr(e) {
b.useContext(O).static || b.useLayoutEffect(e);
}
a(hr, "useIsomorphicLayoutEffect");
function ce() {
let {
isDataRoute: e
} = b.useContext(B);
return e ? Dn() : En();
}
a(ce, "useNavigate");
function En() {
ue() || N(
!1,
// TODO: This error is probably because they somehow have 2 versions of the
// router loaded. We can help them understand how to avoid that.
"useNavigate() may be used only in the context of a <Router> component."
);
let e = b.useContext($), {
basename: t,
navigator: r
} = b.useContext(O), {
matches: o
} = b.useContext(B), {
pathname: n
} = L(), i = JSON.stringify(Ye(o).map((u) => u.pathnameBase)), s = b.useRef(!1);
return hr(() => {
s.current = !0;
}), b.useCallback(function(u, c) {
if (c === void 0 && (c = {}), W(s.current, dr), !s.current) return;
if (typeof u == "number") {
r.go(u);
return;
}
let f = Qe(u, JSON.parse(i), n, c.relative === "path");
e == null && t !== "/" && (f.pathname = f.pathname === "/" ? t : se([t, f.pathname])), (c.replace ? r.replace : r.push)(f, c.state, c);
}, [t, r, i, n, e]);
}
a(En, "useNavigateUnstable");
function Y(e, t) {
let {
relative: r
} = t === void 0 ? {} : t, {
matches: o
} = b.useContext(B), {
pathname: n
} = L(), i = JSON.stringify(Ye(o).map((s) => s.pathnameBase));
return b.useMemo(() => Qe(e, JSON.parse(i), n, r === "path"), [e, i, n, r]);
}
a(Y, "useResolvedPath");
var pr = /* @__PURE__ */ function(e) {
return e.UseBlocker = "useBlocker", e.UseRevalidator = "useRevalidator", e.UseNavigateStable = "useNavigate", e;
}(pr || {}), fe = /* @__PURE__ */ function(e) {
return e.UseBlocker = "useBlocker", e.UseLoaderData = "useLoaderData", e.UseActionData = "useActionData", e.UseRouteError = "useRouteError",
e.UseNavigation = "useNavigation", e.UseRouteLoaderData = "useRouteLoaderData", e.UseMatches = "useMatches", e.UseRevalidator = "useRevali\
dator", e.UseNavigateStable = "useNavigate", e.UseRouteId = "useRouteId", e;
}(fe || {});
function Ze(e) {
return e + " must be used within a data router. See https://reactrouter.com/routers/picking-a-router.";
}
a(Ze, "getDataRouterConsoleError");
function wn(e) {
let t = b.useContext($);
return t || N(!1, Ze(e)), t;
}
a(wn, "useDataRouterContext");
function mr(e) {
let t = b.useContext(J);
return t || N(!1, Ze(e)), t;
}
a(mr, "useDataRouterState");
function Sn(e) {
let t = b.useContext(B);
return t || N(!1, Ze(e)), t;
}
a(Sn, "useRouteContext");
function gr(e) {
let t = Sn(e), r = t.matches[t.matches.length - 1];
return r.route.id || N(!1, e + ' can only be used on routes that contain a unique "id"'), r.route.id;
}
a(gr, "useCurrentRouteId");
function et() {
return gr(fe.UseRouteId);
}
a(et, "useRouteId");
function tt() {
return mr(fe.UseNavigation).navigation;
}
a(tt, "useNavigation");
function rt() {
let {
matches: e,
loaderData: t
} = mr(fe.UseMatches);
return b.useMemo(() => e.map((r) => {
let {
pathname: o,
params: n
} = r;
return {
id: r.route.id,
pathname: o,
params: n,
data: t[r.route.id],
handle: r.route.handle
};
}), [e, t]);
}
a(rt, "useMatches");
function Dn() {
let {
router: e
} = wn(pr.UseNavigateStable), t = gr(fe.UseNavigateStable), r = b.useRef(!1);
return hr(() => {
r.current = !0;
}), b.useCallback(function(n, i) {
i === void 0 && (i = {}), W(r.current, dr), r.current && (typeof n == "number" ? e.navigate(n) : e.navigate(n, Xe({
fromRouteId: t
}, i)));
}, [e, t]);
}
a(Dn, "useNavigateStable");
var Nn = "startTransition", fa = b[Nn];
function Q(e) {
let {
basename: t = "/",
children: r = null,
location: o,
navigationType: n = A.Pop,
navigator: i,
static: s = !1
} = e;
ue() && N(!1, "You cannot render a <Router> inside another <Router>. You should never have more than one in your app.");
let l = t.replace(/^\/*/, "/"), u = b.useMemo(() => ({
basename: l,
navigator: i,
static: s
}), [l, i, s]);
typeof o == "string" && (o = H(o));
let {
pathname: c = "/",
search: f = "",
hash: h = "",
state: m = null,
key: x = "default"
} = o, y = b.useMemo(() => {
let d = K(c, l);
return d == null ? null : {
location: {
pathname: d,
search: f,
hash: h,
state: m,
key: x
},
navigationType: n
};
}, [l, c, f, h, m, x, n]);
return W(y != null, '<Router basename="' + l + '"> is not able to match the URL ' + ('"' + c + f + h + '" because it does not start with t\
he ') + "basename, so the <Router> won't render anything."), y == null ? null : /* @__PURE__ */ b.createElement(O.Provider, {
value: u
}, /* @__PURE__ */ b.createElement(le.Provider, {
children: r,
value: y
}));
}
a(Q, "Router");
var da = new Promise(() => {
});
// ../node_modules/react-router-dom/dist/index.js
function z() {
return z = Object.assign ? Object.assign.bind() : function(e) {
for (var t = 1; t < arguments.length; t++) {
var r = arguments[t];
for (var o in r)
Object.prototype.hasOwnProperty.call(r, o) && (e[o] = r[o]);
}
return e;
}, z.apply(this, arguments);
}
a(z, "_extends");
function at(e, t) {
if (e == null) return {};
var r = {}, o = Object.keys(e), n, i;
for (i = 0; i < o.length; i++)
n = o[i], !(t.indexOf(n) >= 0) && (r[n] = e[n]);
return r;
}
a(at, "_objectWithoutPropertiesLoose");
var Se = "get", De = "application/x-www-form-urlencoded";
function Pe(e) {
return e != null && typeof e.tagName == "string";
}
a(Pe, "isHtmlElement");
function Cn(e) {
return Pe(e) && e.tagName.toLowerCase() === "button";
}
a(Cn, "isButtonElement");
function _n(e) {
return Pe(e) && e.tagName.toLowerCase() === "form";
}
a(_n, "isFormElement");
function An(e) {
return Pe(e) && e.tagName.toLowerCase() === "input";
}
a(An, "isInputElement");
function Ln(e) {
return !!(e.metaKey || e.altKey || e.ctrlKey || e.shiftKey);
}
a(Ln, "isModifiedEvent");
function Fn(e, t) {
return e.button === 0 && // Ignore everything but left clicks
(!t || t === "_self") && // Let browser handle "target=_blank" etc.
!Ln(e);
}
a(Fn, "shouldProcessLinkClick");
var Ee = null;
function jn() {
if (Ee === null)
try {
new FormData(
document.createElement("form"),
// @ts-expect-error if FormData supports the submitter parameter, this will throw
0
), Ee = !1;
} catch {
Ee = !0;
}
return Ee;
}
a(jn, "isFormDataSubmitterSupported");
var Un = /* @__PURE__ */ new Set(["application/x-www-form-urlencoded", "multipart/form-data", "text/plain"]);
function nt(e) {
return e != null && !Un.has(e) ? (W(!1, '"' + e + '" is not a valid `encType` for `<Form>`/`<fetcher.Form>` ' + ('and will default to "' +
De + '"')), null) : e;
}
a(nt, "getFormEncType");
function Mn(e, t) {
let r, o, n, i, s;
if (_n(e)) {
let l = e.getAttribute("action");
o = l ? K(l, t) : null, r = e.getAttribute("method") || Se, n = nt(e.getAttribute("enctype")) || De, i = new FormData(e);
} else if (Cn(e) || An(e) && (e.type === "submit" || e.type === "image")) {
let l = e.form;
if (l == null)
throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');
let u = e.getAttribute("formaction") || l.getAttribute("action");
if (o = u ? K(u, t) : null, r = e.getAttribute("formmethod") || l.getAttribute("method") || Se, n = nt(e.getAttribute("formenctype")) ||
nt(l.getAttribute("enctype")) || De, i = new FormData(l, e), !jn()) {
let {
name: c,
type: f,
value: h
} = e;
if (f === "image") {
let m = c ? c + "." : "";
i.append(m + "x", "0"), i.append(m + "y", "0");
} else c && i.append(c, h);
}
} else {
if (Pe(e))
throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');
r = Se, o = null, n = De, s = e;
}
return i && n === "text/plain" && (s = i, i = void 0), {
action: o,
method: r.toLowerCase(),
encType: n,
formData: i,
body: s
};
}
a(Mn, "getFormSubmissionInfo");
var Tn = ["onClick", "relative", "reloadDocument", "replace", "state", "target", "to", "preventScrollReset"], In = ["aria-current", "caseSen\
sitive", "className", "end", "style", "to", "children"], Bn = ["reloadDocument", "replace", "state", "method", "action", "onSubmit", "submit",
"relative", "preventScrollReset"];
var zn = "startTransition", Ne = E[zn];
function vr(e) {
let {
basename: t,
children: r,
future: o,
window: n
} = e, i = E.useRef();
i.current == null && (i.current = ir({
window: n,
v5Compat: !0
}));
let s = i.current, [l, u] = E.useState({
action: s.action,
location: s.location
}), {
v7_startTransition: c
} = o || {}, f = E.useCallback((h) => {
c && Ne ? Ne(() => u(h)) : u(h);
}, [u, c]);
return E.useLayoutEffect(() => s.listen(f), [s, f]), /* @__PURE__ */ E.createElement(Q, {
basename: t,
children: r,
location: l.location,
navigationType: l.action,
navigator: s
});
}
a(vr, "BrowserRouter");
function kn(e) {
let {
basename: t,
children: r,
future: o,
history: n
} = e, [i, s] = E.useState({
action: n.action,
location: n.location
}), {
v7_startTransition: l
} = o || {}, u = E.useCallback((c) => {
l && Ne ? Ne(() => s(c)) : s(c);
}, [s, l]);
return E.useLayoutEffect(() => n.listen(u), [n, u]), /* @__PURE__ */ E.createElement(Q, {
basename: t,
children: r,
location: i.location,
navigationType: i.action,
navigator: n
});
}
a(kn, "HistoryRouter");
kn.displayName = "unstable_HistoryRouter";
var Vn = typeof window < "u" && typeof window.document < "u" && typeof window.document.createElement < "u", Wn = /^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,
Ce = /* @__PURE__ */ E.forwardRef(/* @__PURE__ */ a(function(t, r) {
let {
onClick: o,
relative: n,
reloadDocument: i,
replace: s,
state: l,
target: u,
to: c,
preventScrollReset: f
} = t, h = at(t, Tn), {
basename: m
} = E.useContext(O), x, y = !1;
if (typeof c == "string" && Wn.test(c) && (x = c, Vn))
try {
let g = new URL(window.location.href), R = c.startsWith("//") ? new URL(g.protocol + c) : new URL(c), w = K(R.pathname, m);
R.origin === g.origin && w != null ? c = w + R.search + R.hash : y = !0;
} catch {
W(!1, '<Link to="' + c + '"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.');
}
let d = Ge(c, {
relative: n
}), p = Jn(c, {
replace: s,
state: l,
target: u,
preventScrollReset: f,
relative: n
});
function v(g) {
o && o(g), g.defaultPrevented || p(g);
}
return a(v, "handleClick"), // eslint-disable-next-line jsx-a11y/anchor-has-content
/* @__PURE__ */ E.createElement("a", z({}, h, {
href: x || d,
onClick: y || i ? o : v,
ref: r,
target: u
}));
}, "LinkWithRef"));
Ce.displayName = "Link";
var Hn = /* @__PURE__ */ E.forwardRef(/* @__PURE__ */ a(function(t, r) {
let {
"aria-current": o = "page",
caseSensitive: n = !1,
className: i = "",
end: s = !1,
style: l,
to: u,
children: c
} = t, f = at(t, In), h = Y(u, {
relative: f.relative
}), m = L(), x = E.useContext(J), {
navigator: y
} = E.useContext(O), d = y.encodeLocation ? y.encodeLocation(h).pathname : h.pathname, p = m.pathname, v = x && x.navigation && x.navigation.
location ? x.navigation.location.pathname : null;
n || (p = p.toLowerCase(), v = v ? v.toLowerCase() : null, d = d.toLowerCase());
let g = p === d || !s && p.startsWith(d) && p.charAt(d.length) === "/", R = v != null && (v === d || !s && v.startsWith(d) && v.charAt(d.length) ===
"/"), w = g ? o : void 0, S;
typeof i == "function" ? S = i({
isActive: g,
isPending: R
}) : S = [i, g ? "active" : null, R ? "pending" : null].filter(Boolean).join(" ");
let q = typeof l == "function" ? l({
isActive: g,
isPending: R
}) : l;
return /* @__PURE__ */ E.createElement(Ce, z({}, f, {
"aria-current": w,
className: S,
ref: r,
style: q,
to: u
}), typeof c == "function" ? c({
isActive: g,
isPending: R
}) : c);
}, "NavLinkWithRef"));
Hn.displayName = "NavLink";
var Kn = /* @__PURE__ */ E.forwardRef((e, t) => {
let r = Qn();
return /* @__PURE__ */ E.createElement(Rr, z({}, e, {
submit: r,
ref: t
}));
});
Kn.displayName = "Form";
var Rr = /* @__PURE__ */ E.forwardRef((e, t) => {
let {
reloadDocument: r,
replace: o,
state: n,
method: i = Se,
action: s,
onSubmit: l,
submit: u,
relative: c,
preventScrollReset: f
} = e, h = at(e, Bn), m = i.toLowerCase() === "get" ? "get" : "post", x = Xn(s, {
relative: c
});
return /* @__PURE__ */ E.createElement("form", z({
ref: t,
method: m,
action: x,
onSubmit: r ? l : /* @__PURE__ */ a((d) => {
if (l && l(d), d.defaultPrevented) return;
d.preventDefault();
let p = d.nativeEvent.submitter, v = p?.getAttribute("formmethod") || i;
u(p || d.currentTarget, {
method: v,
replace: o,
state: n,
relative: c,
preventScrollReset: f
});
}, "submitHandler")
}, h));
});
Rr.displayName = "FormImpl";
function qn(e) {
let {
getKey: t,
storageKey: r
} = e;
return Gn({
getKey: t,
storageKey: r
}), null;
}
a(qn, "ScrollRestoration");
qn.displayName = "ScrollRestoration";
var Oe;
(function(e) {
e.UseScrollRestoration = "useScrollRestoration", e.UseSubmit = "useSubmit", e.UseSubmitFetcher = "useSubmitFetcher", e.UseFetcher = "useFe\
tcher";
})(Oe || (Oe = {}));
var ot;
(function(e) {
e.UseFetchers = "useFetchers", e.UseScrollRestoration = "useScrollRestoration";
})(ot || (ot = {}));
function xr(e) {
return e + " must be used within a data router. See https://reactrouter.com/routers/picking-a-router.";
}
a(xr, "getDataRouterConsoleError");
function br(e) {
let t = E.useContext($);
return t || N(!1, xr(e)), t;
}
a(br, "useDataRouterContext");
function $n(e) {
let t = E.useContext(J);
return t || N(!1, xr(e)), t;
}
a($n, "useDataRouterState");
function Jn(e, t) {
let {
target: r,
replace: o,
state: n,
preventScrollReset: i,
relative: s
} = t === void 0 ? {} : t, l = ce(), u = L(), c = Y(e, {
relative: s
});
return E.useCallback((f) => {
if (Fn(f, r)) {
f.preventDefault();
let h = o !== void 0 ? o : I(u) === I(c);
l(e, {
replace: h,
state: n,
preventScrollReset: i,
relative: s
});
}
}, [u, l, c, o, n, r, e, i, s]);
}
a(Jn, "useLinkClickHandler");
function Yn() {
if (typeof document > "u")
throw new Error("You are calling submit during the server render. Try calling submit within a `useEffect` or callback instead.");
}
a(Yn, "validateClientSideSubmission");
function Qn() {
let {
router: e
} = br(Oe.UseSubmit), {
basename: t
} = E.useContext(O), r = et();
return E.useCallback(function(o, n) {
n === void 0 && (n = {}), Yn();
let {
action: i,
method: s,
encType: l,
formData: u,
body: c
} = Mn(o, t);
e.navigate(n.action || i, {
preventScrollReset: n.preventScrollReset,
formData: u,
body: c,
formMethod: n.method || s,
formEncType: n.encType || l,
replace: n.replace,
state: n.state,
fromRouteId: r
});
}, [e, t, r]);
}
a(Qn, "useSubmit");
function Xn(e, t) {
let {
relative: r
} = t === void 0 ? {} : t, {
basename: o
} = E.useContext(O), n = E.useContext(B);
n || N(!1, "useFormAction must be used inside a RouteContext");
let [i] = n.matches.slice(-1), s = z({}, Y(e || ".", {
relative: r
})), l = L();
if (e == null && (s.search = l.search, i.route.index)) {
let u = new URLSearchParams(s.search);
u.delete("index"), s.search = u.toString() ? "?" + u.toString() : "";
}
return (!e || e === ".") && i.route.index && (s.search = s.search ? s.search.replace(/^\?/, "?index&") : "?index"), o !== "/" && (s.pathname =
s.pathname === "/" ? o : se([o, s.pathname])), I(s);
}
a(Xn, "useFormAction");
var yr = "react-router-scroll-positions", we = {};
function Gn(e) {
let {
getKey: t,
storageKey: r
} = e === void 0 ? {} : e, {
router: o
} = br(Oe.UseScrollRestoration), {
restoreScrollPosition: n,
preventScrollReset: i
} = $n(ot.UseScrollRestoration), {
basename: s
} = E.useContext(O), l = L(), u = rt(), c = tt();
E.useEffect(() => (window.history.scrollRestoration = "manual", () => {
window.history.scrollRestoration = "auto";
}), []), Zn(E.useCallback(() => {
if (c.state === "idle") {
let f = (t ? t(l, u) : null) || l.key;
we[f] = window.scrollY;
}
sessionStorage.setItem(r || yr, JSON.stringify(we)), window.history.scrollRestoration = "auto";
}, [r, t, c.state, l, u])), typeof document < "u" && (E.useLayoutEffect(() => {
try {
let f = sessionStorage.getItem(r || yr);
f && (we = JSON.parse(f));
} catch {
}
}, [r]), E.useLayoutEffect(() => {
let f = t && s !== "/" ? (m, x) => t(
// Strip the basename to match useLocation()
z({}, m, {
pathname: K(m.pathname, s) || m.pathname
}),
x
) : t, h = o?.enableScrollRestoration(we, () => window.scrollY, f);
return () => h && h();
}, [o, s, t]), E.useLayoutEffect(() => {
if (n !== !1) {
if (typeof n == "number") {
window.scrollTo(0, n);
return;
}
if (l.hash) {
let f = document.getElementById(decodeURIComponent(l.hash.slice(1)));
if (f) {
f.scrollIntoView();
return;
}
}
i !== !0 && window.scrollTo(0, 0);
}
}, [l, n, i]));
}
a(Gn, "useScrollRestoration");
function Zn(e, t) {
let {
capture: r
} = t || {};
E.useEffect(() => {
let o = r != null ? {
capture: r
} : void 0;
return window.addEventListener("pagehide", e, o), () => {
window.removeEventListener("pagehide", e, o);
};
}, [e, r]);
}
a(Zn, "usePageHide");
// src/router/router.tsx
var { document: it } = ro, no = /* @__PURE__ */ a(() => `${it.location.pathname}?`, "getBase"), Ja = /* @__PURE__ */ a(() => {
let e = ce();
return to((t, { plain: r, ...o } = {}) => {
if (typeof t == "string" && t.startsWith("#")) {
t === "#" ? e(it.location.search) : it.location.hash = t;
return;
}
if (typeof t == "string") {
let n = r ? t : `?path=${t}`;
return e(n, o);
}
if (typeof t == "number")
return e(t);
}, []);
}, "useNavigate"), oo = /* @__PURE__ */ a(({ to: e, children: t, ...r }) => /* @__PURE__ */ de.createElement(Ce, { to: `${no()}path=${e}`, ...r },
t), "Link");
oo.displayName = "QueryLink";
var Er = /* @__PURE__ */ a(({ children: e }) => {
let t = L(), { path: r, singleStory: o } = tr(t), { viewMode: n, storyId: i, refId: s } = Gt(r);
return /* @__PURE__ */ de.createElement(de.Fragment, null, e({
path: r || "/",
location: t,
viewMode: n,
storyId: i,
refId: s,
singleStory: o === "true"
}));
}, "Location");
Er.displayName = "QueryLocation";
function wr({
children: e,
path: t,
startsWith: r = !1
}) {
return /* @__PURE__ */ de.createElement(Er, null, ({ path: o, ...n }) => e({
match: rr(o, t, r),
...n
}));
}
a(wr, "Match");
wr.displayName = "QueryMatch";
function ao(e) {
let { children: t, ...r } = e;
return r.startsWith === void 0 && (r.startsWith = !1), /* @__PURE__ */ de.createElement(wr, { ...r }, ({ match: n }) => n ? t : null);
}
a(ao, "Route");
ao.displayName = "Route";
var Ya = /* @__PURE__ */ a((...e) => vr(...e), "LocationProvider"), Qa = /* @__PURE__ */ a((...e) => Q(...e), "BaseLocationProvider");
export {
Qa as BaseLocationProvider,
xe as DEEPLY_EQUAL,
oo as Link,
Er as Location,
Ya as LocationProvider,
wr as Match,
ao as Route,
Zo as buildArgsParam,
We as deepDiff,
rr as getMatch,
Gt as parsePath,
tr as queryFromLocation,
ea as stringifyQuery,
Ja as useNavigate
};