@blumjs/router
Advanced tools
Comparing version 5.0.1 to 5.1.0
@@ -1,3 +0,3 @@ | ||
import M, { useEffect as De } from "react"; | ||
function wt(e, t) { | ||
import M, { useEffect as me } from "react"; | ||
function yt(e, t) { | ||
for (let n in e) | ||
@@ -13,15 +13,15 @@ t(e[n], n); | ||
} | ||
function N({ node: e = [], from: t, source: n, parent: r = t || n, to: a, target: s, child: o = a || s, scope: v = {}, meta: _ = {}, family: f = { type: "regular" }, regional: h } = {}) { | ||
let c = le(r), p = le(f.links), i = le(f.owners), u = []; | ||
k(e, (d) => d && D(u, d)); | ||
let l = { id: Vt(), seq: u, next: le(o), meta: _, scope: v, family: { type: f.type || "crosslink", links: p, owners: i } }; | ||
return k(p, (d) => D(he(d), l)), k(i, (d) => D(Se(d), l)), k(c, (d) => D(d.next, l)), h && H && qe(ee(H), [l]), l; | ||
function N({ node: e = [], from: t, source: n, parent: r = t || n, to: a, target: l, child: o = a || l, scope: v = {}, meta: _ = {}, family: f = { type: "regular" }, regional: h } = {}) { | ||
let c = le(r), p = le(f.links), i = le(f.owners), s = []; | ||
k(e, (d) => d && D(s, d)); | ||
let u = { id: kt(), seq: s, next: le(o), meta: _, scope: v, family: { type: f.type || "crosslink", links: p, owners: i } }; | ||
return k(p, (d) => D(Se(d), u)), k(i, (d) => D(ge(d), u)), k(c, (d) => D(d.next, u)), h && G && qe(ee(G), [u]), u; | ||
} | ||
function re(e, t, n) { | ||
let r, a = C, s = null, o = O; | ||
if (e.target && (t = e.params, n = e.defer, r = e.meta, a = "page" in e ? e.page : a, e.stack && (s = e.stack), o = I(e) || o, e = e.target), o && O && o !== O && (O = null), Array.isArray(e)) | ||
for (let u = 0; u < e.length; u++) | ||
B("pure", a, T(e[u]), s, t[u], o, r); | ||
let r, a = C, l = null, o = O; | ||
if (e.target && (t = e.params, n = e.defer, r = e.meta, a = "page" in e ? e.page : a, e.stack && (l = e.stack), o = I(e) || o, e = e.target), o && O && o !== O && (O = null), Array.isArray(e)) | ||
for (let s = 0; s < e.length; s++) | ||
B("pure", a, T(e[s]), l, t[s], o, r); | ||
else | ||
B("pure", a, T(e), s, t, o, r); | ||
B("pure", a, T(e), l, t, o, r); | ||
if (n && !ce) | ||
@@ -32,13 +32,13 @@ return; | ||
e: | ||
for (; h = jt(); ) { | ||
let { idx: u, stack: l, type: d } = h; | ||
f = l.node, C = c = l.page, O = I(l), c ? p = c.reg : O && (p = O.reg); | ||
let b = !!c, R = !!O, w = { fail: 0, scope: f.scope }; | ||
for (; h = zt(); ) { | ||
let { idx: s, stack: u, type: d } = h; | ||
f = u.node, C = c = u.page, O = I(u), c ? p = c.reg : O && (p = O.reg); | ||
let b = !!c, L = !!O, w = { fail: 0, scope: f.scope }; | ||
v = _ = 0; | ||
for (let m = u; m < f.seq.length && !v; m++) { | ||
for (let m = s; m < f.seq.length && !v; m++) { | ||
let y = f.seq[m]; | ||
if (y.order) { | ||
let { priority: S, barrierID: g } = y.order, E = g ? c ? `${c.fullID}_${g}` : g : 0; | ||
if (m !== u || d !== S) { | ||
g ? Re.has(E) || (Re.add(E), Ce(m, l, S, g)) : Ce(m, l, S); | ||
if (m !== s || d !== S) { | ||
g ? Re.has(E) || (Re.add(E), Ce(m, u, S, g)) : Ce(m, u, S); | ||
continue e; | ||
@@ -53,7 +53,7 @@ } | ||
case oe: | ||
g = ee(l); | ||
g = ee(u); | ||
break; | ||
case "a": | ||
case "b": | ||
g = l[E.from]; | ||
g = u[E.from]; | ||
break; | ||
@@ -66,18 +66,18 @@ case "value": | ||
if (b) { | ||
let A = pt(c, E.store.id); | ||
l.page = c = A, A ? p = A.reg : R ? (K(O, E.store, 0, 1, E.softRead), p = O.reg) : p = void 0; | ||
let R = dt(c, E.store.id); | ||
u.page = c = R, R ? p = R.reg : L ? (U(O, E.store, 0, 1, E.softRead), p = O.reg) : p = void 0; | ||
} else | ||
R && K(O, E.store, 0, 1, E.softRead); | ||
g = dt(p && p[E.store.id] || E.store); | ||
L && U(O, E.store, 0, 1, E.softRead); | ||
g = ft(p && p[E.store.id] || E.store); | ||
} | ||
switch (E.to) { | ||
case oe: | ||
l.value = g; | ||
u.value = g; | ||
break; | ||
case "a": | ||
case "b": | ||
l[E.to] = g; | ||
u[E.to] = g; | ||
break; | ||
case "store": | ||
Wt(c, O, f, E.target).current = g; | ||
qt(c, O, f, E.target).current = g; | ||
} | ||
@@ -89,5 +89,5 @@ break; | ||
if (S.fn) { | ||
de = L(f, "op") === "watch", pe = S.pure; | ||
let g = S.safe ? (0, S.fn)(ee(l), w.scope, l) : Ht(w, S.fn, l); | ||
S.filter ? _ = !g : l.value = g, de = i.isWatch, pe = i.isPure; | ||
de = A(f, "op") === "watch", pe = S.pure; | ||
let g = S.safe ? (0, S.fn)(ee(u), w.scope, u) : Wt(w, S.fn, u); | ||
S.filter ? _ = !g : u.value = g, de = i.isWatch, pe = i.isPure; | ||
} | ||
@@ -98,10 +98,10 @@ } | ||
if (!v) { | ||
let m = ee(l), y = I(l); | ||
let m = ee(u), y = I(u); | ||
if (k(f.next, (S) => { | ||
B("child", c, S, l, m, y); | ||
B("child", c, S, u, m, y); | ||
}), y) { | ||
L(f, "needFxCounter") && B("child", c, y.fxCount, l, m, y), L(f, "storeChange") && B("child", c, y.storeChange, l, m, y), L(f, "warnSerialize") && B("child", c, y.warnSerializeNode, l, m, y); | ||
A(f, "needFxCounter") && B("child", c, y.fxCount, u, m, y), A(f, "storeChange") && B("child", c, y.storeChange, u, m, y), A(f, "warnSerialize") && B("child", c, y.warnSerializeNode, u, m, y); | ||
let S = y.additionalLinks[f.id]; | ||
S && k(S, (g) => { | ||
B("child", c, g, l, m, y); | ||
B("child", c, g, u, m, y); | ||
}); | ||
@@ -113,7 +113,7 @@ } | ||
} | ||
function Et(e, t) { | ||
function wt(e, t) { | ||
let n, r, a = e; | ||
if (t) { | ||
let s = Rt(t); | ||
e.length === 0 ? (n = s.path, r = s.fullName) : (n = s.path.concat([e]), r = s.fullName.length === 0 ? e : s.fullName + "/" + e); | ||
let l = bt(t); | ||
e.length === 0 ? (n = l.path, r = l.fullName) : (n = l.path.concat([e]), r = l.fullName.length === 0 ? e : l.fullName + "/" + e); | ||
} else | ||
@@ -124,3 +124,3 @@ n = e.length === 0 ? [] : [e], r = e; | ||
function Z(e, ...t) { | ||
let n = ct(); | ||
let n = lt(); | ||
if (n) { | ||
@@ -133,3 +133,3 @@ let r = n.handlers[e]; | ||
function x(e, t) { | ||
let n = U({ or: t, and: typeof e == "string" ? { name: e } : e }), r = (o, ...v) => (ae(!L(r, "derived"), "call of derived event", "createEvent"), ae(!pe, "unit call from pure function", "operators like sample"), C ? ((_, f, h, c) => { | ||
let n = K({ or: t, and: typeof e == "string" ? { name: e } : e }), r = (o, ...v) => (ae(!A(r, "derived"), "call of derived event", "createEvent"), ae(!pe, "unit call from pure function", "operators like sample"), C ? ((_, f, h, c) => { | ||
let p = C, i = null; | ||
@@ -140,49 +140,49 @@ if (f) | ||
Ze(i); | ||
let u = _.create(h, c); | ||
return Ze(p), u; | ||
})(r, a, o, v) : r.create(o, v)), a = ct(), s = Object.assign(r, { graphite: N({ meta: ht("event", r, n), regional: 1 }), create: (o) => (re({ target: r, params: o, scope: O }), o), watch: (o) => mt(r, o), map: (o) => Ae(r, ne, o, [W()]), filter: (o) => Ae(r, "filter", o.fn ? o : o.fn, [W(We, 1)]), filterMap: (o) => Ae(r, "filterMap", o, [W(), F((v) => !q(v), 1)]), prepend(o) { | ||
let s = _.create(h, c); | ||
return Ze(p), s; | ||
})(r, a, o, v) : r.create(o, v)), a = lt(), l = Object.assign(r, { graphite: N({ meta: vt("event", r, n), regional: 1 }), create: (o) => (re({ target: r, params: o, scope: O }), o), watch: (o) => mt(r, o), map: (o) => Ae(r, ne, o, [H()]), filter: (o) => Ae(r, "filter", o.fn ? o : o.fn, [H(He, 1)]), filterMap: (o) => Ae(r, "filterMap", o, [H(), F((v) => !q(v), 1)]), prepend(o) { | ||
let v = x("* → " + r.shortName, { parent: P(r) }); | ||
return Z("eventPrepend", T(v)), Ke(v, r, [W()], "prepend", o), Ft(r, v), v; | ||
return Z("eventPrepend", T(v)), Ue(v, r, [H()], "prepend", o), Gt(r, v), v; | ||
} }); | ||
return n != null && n.domain && n.domain.hooks.event(s), s; | ||
return n != null && n.domain && n.domain.hooks.event(l), l; | ||
} | ||
function Ue(e, t, n, r) { | ||
return Tt(n, t, "first argument"), $(V(r), "second argument should be a function"), ae(!L(e, "derived"), `${t} in derived store`, `${t} in store created via createStore`), k(Array.isArray(n) ? n : [n], (a) => { | ||
e.off(a), me(e).set(a, vt(St(a, e, "on", It, r))); | ||
function Ke(e, t, n, r) { | ||
return Mt(n, t, "first argument"), $(V(r), "second argument should be a function"), ae(!A(e, "derived"), `${t} in derived store`, `${t} in store created via createStore`), k(Array.isArray(n) ? n : [n], (a) => { | ||
e.off(a), he(e).set(a, pt(ht(a, e, "on", Tt, r))); | ||
}), e; | ||
} | ||
function Pe(e, t) { | ||
let n = U(t), r = Pt(e), a = x({ named: "updates", derived: 1 }); | ||
let n = K(t), r = Bt(e), a = x({ named: "updates", derived: 1 }); | ||
Z("storeBase", r); | ||
let s = r.id, o = { subscribers: /* @__PURE__ */ new Map(), updates: a, defaultState: e, stateRef: r, getState() { | ||
let u, l = r; | ||
let l = r.id, o = { subscribers: /* @__PURE__ */ new Map(), updates: a, defaultState: e, stateRef: r, getState() { | ||
let s, u = r; | ||
if (C) { | ||
let d = C; | ||
for (; d && !d.reg[s]; ) | ||
for (; d && !d.reg[l]; ) | ||
d = P(d); | ||
d && (u = d); | ||
d && (s = d); | ||
} | ||
return !u && O && (K(O, r, 1), u = O), u && (l = u.reg[s]), dt(l); | ||
}, setState: (u) => re({ target: o, params: u, defer: 1, scope: O }), reset: (...u) => (k(u, (l) => Ue(o, ".reset", l, () => o.defaultState)), o), on: (u, l) => Ue(o, ".on", u, l), off(u) { | ||
let l = me(o).get(u); | ||
return l && (l(), me(o).delete(u)), o; | ||
}, map(u, l) { | ||
return !s && O && (U(O, r, 1), s = O), s && (u = s.reg[l]), ft(u); | ||
}, setState: (s) => re({ target: o, params: s, defer: 1, scope: O }), reset: (...s) => (k(s, (u) => Ke(o, ".reset", u, () => o.defaultState)), o), on: (s, u) => Ke(o, ".on", s, u), off(s) { | ||
let u = he(o).get(s); | ||
return u && (u(), he(o).delete(s)), o; | ||
}, map(s, u) { | ||
let d, b; | ||
j(u) && (d = u, u = u.fn), ae(q(l), "second argument of store.map", "updateFilter"); | ||
let R = o.getState(); | ||
q(R) || (b = u(R, l)); | ||
let w = Pe(b, { name: `${o.shortName} → *`, derived: 1, and: d }), m = St(o, w, ne, Qe, u); | ||
return zt(ve(w), { type: ne, fn: u, from: r }), ve(w).noInit = 1, Z("storeMap", r, m), w; | ||
}, watch(u, l) { | ||
if (!l || !ze(u)) { | ||
let d = mt(o, u); | ||
return Z("storeWatch", r, u) || u(o.getState()), d; | ||
j(s) && (d = s, s = s.fn), ae(q(u), "second argument of store.map", "updateFilter"); | ||
let L = o.getState(); | ||
q(L) || (b = s(L, u)); | ||
let w = Pe(b, { name: `${o.shortName} → *`, derived: 1, and: d }), m = ht(o, w, ne, Qe, s); | ||
return Pt(ve(w), { type: ne, fn: s, from: r }), ve(w).noInit = 1, Z("storeMap", r, m), w; | ||
}, watch(s, u) { | ||
if (!u || !ze(s)) { | ||
let d = mt(o, s); | ||
return Z("storeWatch", r, s) || s(o.getState()), d; | ||
} | ||
return $(V(l), "second argument should be a function"), u.watch((d) => l(o.getState(), d)); | ||
} }, v = ht("store", o, n), _ = o.defaultConfig.updateFilter; | ||
o.graphite = N({ scope: { state: r, fn: _ }, node: [F((u, l, d) => (d.scope && !d.scope.reg[r.id] && (d.b = 1), u)), Nt(r), F((u, l, { a: d, b }) => !q(u) && (u !== d || b), 1), _ && W(Qe, 1), ge({ from: oe, target: r })], child: a, meta: v, regional: 1 }); | ||
let f = L(o, "serialize"), h = L(o, "derived"), c = f === "ignore", p = !f || c ? 0 : f, i = L(o, "sid"); | ||
return $(V(u), "second argument should be a function"), s.watch((d) => u(o.getState(), d)); | ||
} }, v = vt("store", o, n), _ = o.defaultConfig.updateFilter; | ||
o.graphite = N({ scope: { state: r, fn: _ }, node: [F((s, u, d) => (d.scope && !d.scope.reg[r.id] && (d.b = 1), s)), $t(r), F((s, u, { a: d, b }) => !q(s) && (s !== d || b), 1), _ && H(Qe, 1), ye({ from: oe, target: r })], child: a, meta: v, regional: 1 }); | ||
let f = A(o, "serialize"), h = A(o, "derived"), c = f === "ignore", p = !f || c ? 0 : f, i = A(o, "sid"); | ||
return i && (c || te(o, "storeChange", 1), r.sid = i, p && (r.meta = { ...r == null ? void 0 : r.meta, serialize: p })), i || c || h || te(o, "warnSerialize", 1), $(h || !q(e), "current state can't be undefined, use null instead"), qe(o, [a]), n != null && n.domain && n.domain.hooks.store(o), h || (o.reinit = x(), o.reset(o.reinit)), o; | ||
} | ||
function Ot() { | ||
function Et() { | ||
let e = {}; | ||
@@ -195,46 +195,46 @@ return e.req = new Promise((t, n) => { | ||
function Y(e, t) { | ||
let n = U(V(e) ? { handler: e } : e, t), r = x(V(e) ? { handler: e } : e, t), a = T(r); | ||
let n = K(V(e) ? { handler: e } : e, t), r = x(V(e) ? { handler: e } : e, t), a = T(r); | ||
te(a, "op", r.kind = "effect"), r.use = (i) => ($(V(i), ".use argument should be a function"), h.scope.handler = i, r), r.use.getCurrent = () => h.scope.handler; | ||
let s = r.finally = x({ named: "finally", derived: 1 }), o = r.done = s.filterMap({ named: "done", fn({ status: i, params: u, result: l }) { | ||
let l = r.finally = x({ named: "finally", derived: 1 }), o = r.done = l.filterMap({ named: "done", fn({ status: i, params: s, result: u }) { | ||
if (i === "done") | ||
return { params: u, result: l }; | ||
} }), v = r.fail = s.filterMap({ named: "fail", fn({ status: i, params: u, error: l }) { | ||
return { params: s, result: u }; | ||
} }), v = r.fail = l.filterMap({ named: "fail", fn({ status: i, params: s, error: u }) { | ||
if (i === "fail") | ||
return { params: u, error: l }; | ||
} }), _ = r.doneData = o.map({ named: "doneData", fn: ({ result: i }) => i }), f = r.failData = v.map({ named: "failData", fn: ({ error: i }) => i }), h = N({ scope: { handlerId: L(a, "sid"), handler: r.defaultConfig.handler || (() => $(0, `no handler used in ${r.getType()}`)) }, node: [F((i, u, l) => { | ||
let d = u, b = d.handler; | ||
if (I(l)) { | ||
let R = I(l).handlers[d.handlerId]; | ||
R && (b = R); | ||
return { params: s, error: u }; | ||
} }), _ = r.doneData = o.map({ named: "doneData", fn: ({ result: i }) => i }), f = r.failData = v.map({ named: "failData", fn: ({ error: i }) => i }), h = N({ scope: { handlerId: A(a, "sid"), handler: r.defaultConfig.handler || (() => $(0, `no handler used in ${r.getType()}`)) }, node: [F((i, s, u) => { | ||
let d = s, b = d.handler; | ||
if (I(u)) { | ||
let L = I(u).handlers[d.handlerId]; | ||
L && (b = L); | ||
} | ||
return i.handler = b, i; | ||
}, 0, 1), F(({ params: i, req: u, handler: l, args: d = [i] }, b, R) => { | ||
let w = Ut(R), m = tt(i, u, 1, s, R, w), y = tt(i, u, 0, s, R, w), [S, g] = Kt(l, y, d); | ||
}, 0, 1), F(({ params: i, req: s, handler: u, args: d = [i] }, b, L) => { | ||
let w = Ut(L), m = tt(i, s, 1, l, L, w), y = tt(i, s, 0, l, L, w), [S, g] = Ft(u, y, d); | ||
S && (j(g) && V(g.then) ? g.then(m, y) : m(g)); | ||
}, 0, 1)], meta: { op: "fx", fx: "runner" } }); | ||
a.scope.runner = h, D(a.seq, F((i, { runner: u }, l) => { | ||
let d = P(l) ? { params: i, req: { rs(b) { | ||
a.scope.runner = h, D(a.seq, F((i, { runner: s }, u) => { | ||
let d = P(u) ? { params: i, req: { rs(b) { | ||
}, rj(b) { | ||
} } } : i; | ||
return l.meta || (l.meta = { fxID: Dt() }), re({ target: u, params: d, defer: 1, scope: I(l), meta: l.meta }), d.params; | ||
return u.meta || (u.meta = { fxID: Vt() }), re({ target: s, params: d, defer: 1, scope: I(u), meta: u.meta }), d.params; | ||
}, 0, 1)), r.create = (i) => { | ||
let u = Ot(), l = { params: i, req: u }; | ||
let s = Et(), u = { params: i, req: s }; | ||
if (O && !de) { | ||
let d = O; | ||
u.req.finally(() => { | ||
qt(d); | ||
s.req.finally(() => { | ||
jt(d); | ||
}).catch(() => { | ||
}); | ||
} | ||
return re({ target: r, params: l, scope: O }), u.req; | ||
return re({ target: r, params: u, scope: O }), s.req; | ||
}; | ||
let c = r.inFlight = Pe(0, { serialize: "ignore" }).on(r, (i) => i + 1).on(s, (i) => i - 1).map({ fn: (i) => i, named: "inFlight" }); | ||
te(s, "needFxCounter", "dec"), te(r, "needFxCounter", 1); | ||
let c = r.inFlight = Pe(0, { serialize: "ignore" }).on(r, (i) => i + 1).on(l, (i) => i - 1).map({ fn: (i) => i, named: "inFlight" }); | ||
te(l, "needFxCounter", "dec"), te(r, "needFxCounter", 1); | ||
let p = r.pending = c.map({ fn: (i) => i > 0, named: "pending" }); | ||
return qe(r, [s, o, v, _, f, p, c]), n != null && n.domain && n.domain.hooks.effect(r), r; | ||
return qe(r, [l, o, v, _, f, p, c]), n != null && n.domain && n.domain.hooks.effect(r), r; | ||
} | ||
let bt = typeof Symbol < "u" && Symbol.observable || "@@observable", ne = "map", oe = "stack", T = (e) => e.graphite || e, he = (e) => e.family.owners, Se = (e) => e.family.links, ve = (e) => e.stateRef, ee = (e) => e.value, me = (e) => e.subscribers, P = (e) => e.parent, I = (e) => e.scope, L = (e, t) => T(e).meta[t], te = (e, t, n) => T(e).meta[t] = n, Rt = (e) => e.compositeName, ze = (e) => (V(e) || j(e)) && "kind" in e; | ||
let Ot = typeof Symbol < "u" && Symbol.observable || "@@observable", ne = "map", oe = "stack", T = (e) => e.graphite || e, Se = (e) => e.family.owners, ge = (e) => e.family.links, ve = (e) => e.stateRef, ee = (e) => e.value, he = (e) => e.subscribers, P = (e) => e.parent, I = (e) => e.scope, A = (e, t) => T(e).meta[t], te = (e, t, n) => T(e).meta[t] = n, bt = (e) => e.compositeName, ze = (e) => (V(e) || j(e)) && "kind" in e; | ||
const ue = (e) => (t) => ze(t) && t.kind === e; | ||
let je = ue("store"), At = ue("event"), Ye = ue("effect"), ut = ue("domain"), Lt = ue("scope"); | ||
var xt = { __proto__: null, unit: ze, store: je, event: At, effect: Ye, domain: ut, scope: Lt, attached: (e) => Ye(e) && L(e, "attached") == 1 }; | ||
let je = ue("store"), Lt = ue("event"), Ye = ue("effect"), st = ue("domain"), Rt = ue("scope"); | ||
var At = { __proto__: null, unit: ze, store: je, event: Lt, effect: Ye, domain: st, scope: Rt, attached: (e) => Ye(e) && A(e, "attached") == 1 }; | ||
let fe = (e, t) => { | ||
@@ -248,21 +248,21 @@ let n = e.indexOf(t); | ||
}; | ||
let kt = _e(), lt = _e(), Vt = _e(), Dt = _e(), H = null, ct = () => H, Ct = (e) => (e && H && H.sidRoot && (e = `${H.sidRoot}|${e}`), e), qe = (e, t) => { | ||
let xt = _e(), ut = _e(), kt = _e(), Vt = _e(), G = null, lt = () => G, Dt = (e) => (e && G && G.sidRoot && (e = `${G.sidRoot}|${e}`), e), qe = (e, t) => { | ||
let n = T(e); | ||
k(t, (r) => { | ||
let a = T(r); | ||
n.family.type !== "domain" && (a.family.type = "crosslink"), D(he(a), n), D(Se(n), a); | ||
n.family.type !== "domain" && (a.family.type = "crosslink"), D(Se(a), n), D(ge(n), a); | ||
}); | ||
}, le = (e = []) => (Array.isArray(e) ? e : [e]).flat().map(T), j = (e) => typeof e == "object" && e !== null, V = (e) => typeof e == "function", q = (e) => e === void 0, Mt = (e) => $(j(e) || V(e), "expect first argument be an object"); | ||
}, le = (e = []) => (Array.isArray(e) ? e : [e]).flat().map(T), j = (e) => typeof e == "object" && e !== null, V = (e) => typeof e == "function", q = (e) => e === void 0, Ct = (e) => $(j(e) || V(e), "expect first argument be an object"); | ||
const Je = (e, t, n, r) => $(!(!j(e) && !V(e) || !("family" in e) && !("graphite" in e)), `${t}: expect ${n} to be a unit (store, event or effect)${r}`); | ||
let Tt = (e, t, n) => { | ||
let Mt = (e, t, n) => { | ||
Array.isArray(e) ? k(e, (r, a) => Je(r, t, `${a} item of ${n}`, "")) : Je(e, t, n, " or array of units"); | ||
}, Qe = (e, { fn: t }, { a: n }) => t(e, n), It = (e, { fn: t }, { a: n }) => t(n, e), We = (e, { fn: t }) => t(e); | ||
const ft = (e, t, n, r) => { | ||
let a = { id: lt(), type: e, data: t }; | ||
return n && (a.order = { priority: n }, r && (a.order.barrierID = ++$t)), a; | ||
}, Qe = (e, { fn: t }, { a: n }) => t(e, n), Tt = (e, { fn: t }, { a: n }) => t(n, e), He = (e, { fn: t }) => t(e); | ||
const ct = (e, t, n, r) => { | ||
let a = { id: ut(), type: e, data: t }; | ||
return n && (a.order = { priority: n }, r && (a.order.barrierID = ++It)), a; | ||
}; | ||
let $t = 0, ge = ({ from: e = "store", store: t, target: n, to: r = n ? "store" : oe, batch: a, priority: s }) => ft("mov", { from: e, store: t, to: r, target: n }, s, a), ie = ({ fn: e, batch: t, priority: n, safe: r = 0, filter: a = 0, pure: s = 0 }) => ft("compute", { fn: e, safe: r, filter: a, pure: s }, n, t), Ge = ({ fn: e }) => ie({ fn: e, priority: "effect" }), F = (e, t, n) => ie({ fn: e, safe: 1, filter: t, priority: n && "effect" }), Nt = (e, t, n) => ge({ store: e, to: t ? oe : "a", priority: n && "sampler", batch: 1 }), W = (e = We, t) => ie({ fn: e, pure: 1, filter: t }), Bt = { mov: ge, compute: ie, filter: ({ fn: e, pure: t }) => ie({ fn: e, filter: 1, pure: t }), run: Ge }, Pt = (e) => ({ id: lt(), current: e }), dt = ({ current: e }) => e, zt = (e, t) => { | ||
let It = 0, ye = ({ from: e = "store", store: t, target: n, to: r = n ? "store" : oe, batch: a, priority: l }) => ct("mov", { from: e, store: t, to: r, target: n }, l, a), ie = ({ fn: e, batch: t, priority: n, safe: r = 0, filter: a = 0, pure: l = 0 }) => ct("compute", { fn: e, safe: r, filter: a, pure: l }, n, t), We = ({ fn: e }) => ie({ fn: e, priority: "effect" }), F = (e, t, n) => ie({ fn: e, safe: 1, filter: t, priority: n && "effect" }), $t = (e, t, n) => ye({ store: e, to: t ? oe : "a", priority: n && "sampler", batch: 1 }), H = (e = He, t) => ie({ fn: e, pure: 1, filter: t }), Nt = { mov: ye, compute: ie, filter: ({ fn: e, pure: t }) => ie({ fn: e, filter: 1, pure: t }), run: We }, Bt = (e) => ({ id: ut(), current: e }), ft = ({ current: e }) => e, Pt = (e, t) => { | ||
e.before || (e.before = []), D(e.before, t); | ||
}, G = null; | ||
const He = (e, t) => { | ||
}, W = null; | ||
const Ge = (e, t) => { | ||
if (!e) | ||
@@ -273,3 +273,3 @@ return t; | ||
let n; | ||
return (e.v.type === t.v.type && e.v.id > t.v.id || Me(e.v.type) > Me(t.v.type)) && (n = e, e = t, t = n), n = He(e.r, t), e.r = e.l, e.l = n, e; | ||
return (e.v.type === t.v.type && e.v.id > t.v.id || Me(e.v.type) > Me(t.v.type)) && (n = e, e = t, t = n), n = Ge(e.r, t), e.r = e.l, e.l = n, e; | ||
}, Fe = []; | ||
@@ -279,3 +279,3 @@ let Xe = 0; | ||
D(Fe, { first: null, last: null, size: 0 }), Xe += 1; | ||
const jt = () => { | ||
const zt = () => { | ||
for (let e = 0; e < 6; e++) { | ||
@@ -286,4 +286,4 @@ let t = Fe[e]; | ||
t.size -= 1; | ||
let r = G.v; | ||
return G = He(G.l, G.r), r; | ||
let r = W.v; | ||
return W = Ge(W.l, W.r), r; | ||
} | ||
@@ -295,5 +295,5 @@ t.size === 1 && (t.last = null); | ||
} | ||
}, B = (e, t, n, r, a, s, o) => Ce(0, { a: null, b: null, node: n, parent: r, value: a, page: t, scope: s, meta: o }, e), Ce = (e, t, n, r = 0) => { | ||
let a = Me(n), s = Fe[a], o = { v: { idx: e, stack: t, type: n, id: r }, l: null, r: null }; | ||
a === 3 || a === 4 ? G = He(G, o) : (s.size === 0 ? s.first = o : s.last.r = o, s.last = o), s.size += 1; | ||
}, B = (e, t, n, r, a, l, o) => Ce(0, { a: null, b: null, node: n, parent: r, value: a, page: t, scope: l, meta: o }, e), Ce = (e, t, n, r = 0) => { | ||
let a = Me(n), l = Fe[a], o = { v: { idx: e, stack: t, type: n, id: r }, l: null, r: null }; | ||
a === 3 || a === 4 ? W = Ge(W, o) : (l.size === 0 ? l.first = o : l.last.r = o, l.last = o), l.size += 1; | ||
}, Me = (e) => { | ||
@@ -317,3 +317,3 @@ switch (e) { | ||
}, Re = /* @__PURE__ */ new Set(); | ||
let O, ce = 1, de = 0, pe = 0, C = null, qt = (e) => { | ||
let O, ce = 1, de = 0, pe = 0, C = null, jt = (e) => { | ||
O = e; | ||
@@ -323,3 +323,3 @@ }, Ze = (e) => { | ||
}; | ||
const pt = (e, t) => { | ||
const dt = (e, t) => { | ||
if (e) { | ||
@@ -333,10 +333,10 @@ for (; e && !e.reg[t]; ) | ||
}; | ||
let Wt = (e, t, n, r, a) => { | ||
let s = pt(e, r.id); | ||
return s ? s.reg[r.id] : t ? (K(t, r, a), t.reg[r.id]) : r; | ||
let qt = (e, t, n, r, a) => { | ||
let l = dt(e, r.id); | ||
return l ? l.reg[r.id] : t ? (U(t, r, a), t.reg[r.id]) : r; | ||
}; | ||
const Gt = (e) => e; | ||
let K = (e, t, n, r, a) => { | ||
var s; | ||
let o = e.reg, v = t.sid, _ = t == null || (s = t.meta) === null || s === void 0 ? void 0 : s.serialize; | ||
const Ht = (e) => e; | ||
let U = (e, t, n, r, a) => { | ||
var l; | ||
let o = e.reg, v = t.sid, _ = t == null || (l = t.meta) === null || l === void 0 ? void 0 : l.serialize; | ||
if (o[t.id]) | ||
@@ -346,3 +346,3 @@ return; | ||
if (v && v in e.sidValuesMap && !(v in e.sidIdMap)) | ||
f.current = (e.fromSerialize && _ !== "ignore" && (_ == null ? void 0 : _.read) || Gt)(e.sidValuesMap[v]); | ||
f.current = (e.fromSerialize && _ !== "ignore" && (_ == null ? void 0 : _.read) || Ht)(e.sidValuesMap[v]); | ||
else if (t.before && !a) { | ||
@@ -355,5 +355,5 @@ let h = 0, c = n || !t.noInit || r; | ||
if (i || p.fn) { | ||
i && K(e, i, n, r); | ||
let u = i && o[i.id].current; | ||
c && (f.current = p.fn ? p.fn(u) : u); | ||
i && U(e, i, n, r); | ||
let s = i && o[i.id].current; | ||
c && (f.current = p.fn ? p.fn(s) : s); | ||
} | ||
@@ -363,3 +363,3 @@ break; | ||
case "field": | ||
h || (h = 1, f.current = Array.isArray(f.current) ? [...f.current] : { ...f.current }), K(e, p.from, n, r), c && (f.current[p.field] = o[o[p.from.id].id].current); | ||
h || (h = 1, f.current = Array.isArray(f.current) ? [...f.current] : { ...f.current }), U(e, p.from, n, r), c && (f.current[p.field] = o[o[p.from.id].id].current); | ||
} | ||
@@ -370,3 +370,3 @@ }); | ||
}; | ||
const Ht = (e, t, n) => { | ||
const Wt = (e, t, n) => { | ||
try { | ||
@@ -378,15 +378,15 @@ return t(ee(n), e.scope, n); | ||
}; | ||
let U = (e, t = {}) => (j(e) && (U(e.or, t), wt(e, (n, r) => { | ||
let K = (e, t = {}) => (j(e) && (K(e.or, t), yt(e, (n, r) => { | ||
q(n) || r === "or" || r === "and" || (t[r] = n); | ||
}), U(e.and, t)), t); | ||
}), K(e.and, t)), t); | ||
const et = (e, t) => { | ||
fe(e.next, t), fe(he(e), t), fe(Se(e), t); | ||
fe(e.next, t), fe(Se(e), t), fe(ge(e), t); | ||
}, Te = (e, t, n) => { | ||
let r; | ||
e.next.length = 0, e.seq.length = 0, e.scope = null; | ||
let a = Se(e); | ||
let a = ge(e); | ||
for (; r = a.pop(); ) | ||
et(r, e), (t || n && L(e, "op") !== "sample" || r.family.type === "crosslink") && Te(r, t, L(r, "op") !== "on" && n); | ||
for (a = he(e); r = a.pop(); ) | ||
et(r, e), n && r.family.type === "crosslink" && Te(r, t, L(r, "op") !== "on" && n); | ||
et(r, e), (t || n && A(e, "op") !== "sample" || r.family.type === "crosslink") && Te(r, t, A(r, "op") !== "on" && n); | ||
for (a = Se(e); r = a.pop(); ) | ||
et(r, e), n && r.family.type === "crosslink" && Te(r, t, A(r, "op") !== "on" && n); | ||
}, X = (e) => e.clear(); | ||
@@ -396,4 +396,4 @@ let Ie = (e, { deep: t } = {}) => { | ||
if (e.ownerSet && e.ownerSet.delete(e), je(e)) | ||
X(me(e)); | ||
else if (ut(e)) { | ||
X(he(e)); | ||
else if (st(e)) { | ||
n = 1; | ||
@@ -404,10 +404,10 @@ let r = e.history; | ||
Te(T(e), !!t, n); | ||
}, vt = (e) => { | ||
}, pt = (e) => { | ||
let t = () => Ie(e); | ||
return t.unsubscribe = t, t; | ||
}, Ke = (e, t, n, r, a) => N({ node: n, parent: e, child: t, scope: { fn: a }, meta: { op: r }, family: { owners: [e, t], links: t }, regional: 1 }), mt = (e, t) => ($(V(t), ".watch argument should be a function"), vt(N({ scope: { fn: t }, node: [Ge({ fn: We })], parent: e, meta: { op: "watch" }, family: { owners: e }, regional: 1 }))), Ft = (e, t, n = "event") => { | ||
}, Ue = (e, t, n, r, a) => N({ node: n, parent: e, child: t, scope: { fn: a }, meta: { op: r }, family: { owners: [e, t], links: t }, regional: 1 }), mt = (e, t) => ($(V(t), ".watch argument should be a function"), pt(N({ scope: { fn: t }, node: [We({ fn: He })], parent: e, meta: { op: "watch" }, family: { owners: e }, regional: 1 }))), Gt = (e, t, n = "event") => { | ||
P(e) && P(e).hooks[n](t); | ||
}, ht = (e, t, n) => { | ||
let r = U(n), a = e === "domain", s = kt(), { sid: o = null, named: v = null, domain: _ = null, parent: f = _ } = r, h = v || r.name || (a ? "" : s), c = Et(h, f), p = { op: t.kind = e, name: t.shortName = h, sid: t.sid = Ct(o), named: v, unitId: t.id = s, serialize: r.serialize, derived: r.derived, config: r }; | ||
return t.parent = f, t.compositeName = c, t.defaultConfig = r, t.thru = (i) => (ae(0, "thru", "js pipe"), i(t)), t.getType = () => c.fullName, !a && (t.subscribe = (i) => (Mt(i), t.watch(V(i) ? i : (u) => i.next && i.next(u))), t[bt] = () => t), p; | ||
}, vt = (e, t, n) => { | ||
let r = K(n), a = e === "domain", l = xt(), { sid: o = null, named: v = null, domain: _ = null, parent: f = _ } = r, h = v || r.name || (a ? "" : l), c = wt(h, f), p = { op: t.kind = e, name: t.shortName = h, sid: t.sid = Dt(o), named: v, unitId: t.id = l, serialize: r.serialize, derived: r.derived, config: r }; | ||
return t.parent = f, t.compositeName = c, t.defaultConfig = r, t.thru = (i) => (ae(0, "thru", "js pipe"), i(t)), t.getType = () => c.fullName, !a && (t.subscribe = (i) => (Ct(i), t.watch(V(i) ? i : (s) => i.next && i.next(s))), t[Ot] = () => t), p; | ||
}; | ||
@@ -417,11 +417,11 @@ const Ae = (e, t, n, r) => { | ||
j(n) && (a = n, n = n.fn); | ||
let s = x({ name: `${e.shortName} → *`, derived: 1, and: a }); | ||
return Ke(e, s, r, t, n), s; | ||
}, St = (e, t, n, r, a) => { | ||
let s = ve(t), o = ge({ store: s, to: "a", priority: "read" }); | ||
let l = x({ name: `${e.shortName} → *`, derived: 1, and: a }); | ||
return Ue(e, l, r, t, n), l; | ||
}, ht = (e, t, n, r, a) => { | ||
let l = ve(t), o = ye({ store: l, to: "a", priority: "read" }); | ||
n === ne && (o.data.softRead = 1); | ||
let v = [o, W(r)]; | ||
return Z("storeOnMap", s, v, je(e) && ve(e)), Ke(e, t, v, n, a); | ||
let v = [o, H(r)]; | ||
return Z("storeOnMap", l, v, je(e) && ve(e)), Ue(e, t, v, n, a); | ||
}; | ||
let Kt = (e, t, n) => { | ||
let Ft = (e, t, n) => { | ||
try { | ||
@@ -435,20 +435,18 @@ return [1, e(...n)]; | ||
return t && D(t.activeEffects, n), n; | ||
}, tt = (e, t, n, r, a, s) => (o) => { | ||
s.ref && fe(s.ref.activeEffects, s), re({ target: [r, Yt], params: [n ? { status: "done", params: e, result: o } : { status: "fail", params: e, error: o }, { value: o, fn: n ? t.rs : t.rj }], defer: 1, page: a.page, scope: s.ref, meta: a.meta }); | ||
}, tt = (e, t, n, r, a, l) => (o) => { | ||
l.ref && fe(l.ref.activeEffects, l), re({ target: [r, Kt], params: [n ? { status: "done", params: e, result: o } : { status: "fail", params: e, error: o }, { value: o, fn: n ? t.rs : t.rj }], defer: 1, page: a.page, scope: l.ref, meta: a.meta }); | ||
}; | ||
const Yt = N({ node: [Ge({ fn: ({ fn: e, value: t }) => e(t) })], meta: { op: "fx", fx: "sidechain" } }), Sr = Y(() => { | ||
const Kt = N({ node: [We({ fn: ({ fn: e, value: t }) => e(t) })], meta: { op: "fx", fx: "sidechain" } }), _r = Y(() => { | ||
window.isBackFromBrowser = !1, window.history.back(); | ||
}), z = Y((e) => { | ||
const t = (o, v, _) => { | ||
const f = new CustomEvent("pushstate", { | ||
detail: { | ||
state: o, | ||
title: v, | ||
url: _ | ||
}, | ||
bubbles: !0, | ||
composed: !0 | ||
}); | ||
return window.dispatchEvent(f), history.pushState(o, v, _); | ||
}, { view: n, panel: r, modal: a, popout: s } = window.history.state ?? { | ||
}), Yt = (e, t, n) => { | ||
const r = new CustomEvent("pushstate", { | ||
detail: { | ||
state: e, | ||
title: t, | ||
url: n | ||
} | ||
}); | ||
return document.dispatchEvent(r), history.pushState(e, t, n); | ||
}, z = Y((e) => { | ||
const { view: t, panel: n, modal: r, popout: a } = window.history.state ?? { | ||
view: void 0, | ||
@@ -459,17 +457,17 @@ panel: void 0, | ||
}; | ||
t({ | ||
view: e.hasOwnProperty("view") ? e.view : n, | ||
panel: e.hasOwnProperty("panel") ? e.panel : r, | ||
modal: e.hasOwnProperty("modal") ? e.modal : a, | ||
popout: e.hasOwnProperty("popout") ? e.popout : s | ||
Yt({ | ||
view: e.hasOwnProperty("view") ? e.view : t, | ||
panel: e.hasOwnProperty("panel") ? e.panel : n, | ||
modal: e.hasOwnProperty("modal") ? e.modal : r, | ||
popout: e.hasOwnProperty("popout") ? e.popout : a | ||
}, ""); | ||
}), _r = Y((e) => { | ||
}), yr = Y((e) => { | ||
z({ view: e.view, panel: e.panel }); | ||
}), gr = Y((e) => { | ||
}), wr = Y((e) => { | ||
z({ panel: e }); | ||
}), yr = Y((e) => { | ||
}), Er = Y((e) => { | ||
z({ modal: e }); | ||
}), wr = Y((e) => { | ||
}), Or = Y((e) => { | ||
z({ popout: e }); | ||
}), Jt = x(), Qt = x(), $e = x(), Ne = x(), Be = x(), _t = x(), Xt = x(), Zt = Pe({ | ||
}), Jt = x(), Qt = x(), $e = x(), Ne = x(), Be = x(), St = x(), Xt = x(), Zt = Pe({ | ||
activeView: null, | ||
@@ -493,3 +491,3 @@ activePanel: null, | ||
activePopout: t | ||
})).on(_t, (e) => ({ | ||
})).on(St, (e) => ({ | ||
...e, | ||
@@ -515,3 +513,3 @@ isRouteInit: !0 | ||
} | ||
}, Le = {}, se = {}, rr = { | ||
}, xe = {}, se = {}, rr = { | ||
get exports() { | ||
@@ -523,3 +521,3 @@ return se; | ||
} | ||
}, xe = {}; | ||
}, ke = {}; | ||
/** | ||
@@ -537,3 +535,3 @@ * @license React | ||
if (nt) | ||
return xe; | ||
return ke; | ||
nt = 1; | ||
@@ -544,10 +542,10 @@ var e = M; | ||
} | ||
var n = typeof Object.is == "function" ? Object.is : t, r = e.useState, a = e.useEffect, s = e.useLayoutEffect, o = e.useDebugValue; | ||
var n = typeof Object.is == "function" ? Object.is : t, r = e.useState, a = e.useEffect, l = e.useLayoutEffect, o = e.useDebugValue; | ||
function v(c, p) { | ||
var i = p(), u = r({ inst: { value: i, getSnapshot: p } }), l = u[0].inst, d = u[1]; | ||
return s(function() { | ||
l.value = i, l.getSnapshot = p, _(l) && d({ inst: l }); | ||
var i = p(), s = r({ inst: { value: i, getSnapshot: p } }), u = s[0].inst, d = s[1]; | ||
return l(function() { | ||
u.value = i, u.getSnapshot = p, _(u) && d({ inst: u }); | ||
}, [c, i, p]), a(function() { | ||
return _(l) && d({ inst: l }), c(function() { | ||
_(l) && d({ inst: l }); | ||
return _(u) && d({ inst: u }), c(function() { | ||
_(u) && d({ inst: u }); | ||
}); | ||
@@ -570,5 +568,5 @@ }, [c]), o(i), i; | ||
var h = typeof window > "u" || typeof window.document > "u" || typeof window.document.createElement > "u" ? f : v; | ||
return xe.useSyncExternalStore = e.useSyncExternalStore !== void 0 ? e.useSyncExternalStore : h, xe; | ||
return ke.useSyncExternalStore = e.useSyncExternalStore !== void 0 ? e.useSyncExternalStore : h, ke; | ||
} | ||
var ke = {}; | ||
var Ve = {}; | ||
/** | ||
@@ -599,4 +597,4 @@ * @license React | ||
g !== "" && (m += "%s", y = y.concat([g])); | ||
var E = y.map(function(A) { | ||
return String(A); | ||
var E = y.map(function(R) { | ||
return String(R); | ||
}); | ||
@@ -609,3 +607,3 @@ E.unshift("Warning: " + m), Function.prototype.apply.call(console[w], console, E); | ||
} | ||
var s = typeof Object.is == "function" ? Object.is : a, o = e.useState, v = e.useEffect, _ = e.useLayoutEffect, f = e.useDebugValue, h = !1, c = !1; | ||
var l = typeof Object.is == "function" ? Object.is : a, o = e.useState, v = e.useEffect, _ = e.useLayoutEffect, f = e.useDebugValue, h = !1, c = !1; | ||
function p(w, m, y) { | ||
@@ -616,3 +614,3 @@ h || e.startTransition !== void 0 && (h = !0, n("You are using an outdated, pre-release alpha of React 18 that does not support useSyncExternalStore. The use-sync-external-store shim will not work correctly. Upgrade to a newer pre-release.")); | ||
var g = m(); | ||
s(S, g) || (n("The result of getSnapshot should be cached to avoid an infinite loop"), c = !0); | ||
l(S, g) || (n("The result of getSnapshot should be cached to avoid an infinite loop"), c = !0); | ||
} | ||
@@ -624,17 +622,17 @@ var E = o({ | ||
} | ||
}), A = E[0].inst, J = E[1]; | ||
}), R = E[0].inst, J = E[1]; | ||
return _(function() { | ||
A.value = S, A.getSnapshot = m, i(A) && J({ | ||
inst: A | ||
R.value = S, R.getSnapshot = m, i(R) && J({ | ||
inst: R | ||
}); | ||
}, [w, S, m]), v(function() { | ||
i(A) && J({ | ||
inst: A | ||
i(R) && J({ | ||
inst: R | ||
}); | ||
var ye = function() { | ||
i(A) && J({ | ||
inst: A | ||
var we = function() { | ||
i(R) && J({ | ||
inst: R | ||
}); | ||
}; | ||
return w(ye); | ||
return w(we); | ||
}, [w]), f(S), S; | ||
@@ -646,3 +644,3 @@ } | ||
var S = m(); | ||
return !s(y, S); | ||
return !l(y, S); | ||
} catch { | ||
@@ -652,8 +650,8 @@ return !0; | ||
} | ||
function u(w, m, y) { | ||
function s(w, m, y) { | ||
return m(); | ||
} | ||
var l = typeof window < "u" && typeof window.document < "u" && typeof window.document.createElement < "u", d = !l, b = d ? u : p, R = e.useSyncExternalStore !== void 0 ? e.useSyncExternalStore : b; | ||
ke.useSyncExternalStore = R, typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error()); | ||
}()), ke; | ||
var u = typeof window < "u" && typeof window.document < "u" && typeof window.document.createElement < "u", d = !u, b = d ? s : p, L = e.useSyncExternalStore !== void 0 ? e.useSyncExternalStore : b; | ||
Ve.useSyncExternalStore = L, typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error()); | ||
}()), Ve; | ||
} | ||
@@ -676,3 +674,3 @@ (function(e) { | ||
if (at) | ||
return Le; | ||
return xe; | ||
at = 1; | ||
@@ -683,15 +681,15 @@ var e = M, t = se; | ||
} | ||
var r = typeof Object.is == "function" ? Object.is : n, a = t.useSyncExternalStore, s = e.useRef, o = e.useEffect, v = e.useMemo, _ = e.useDebugValue; | ||
return Le.useSyncExternalStoreWithSelector = function(f, h, c, p, i) { | ||
var u = s(null); | ||
if (u.current === null) { | ||
var l = { hasValue: !1, value: null }; | ||
u.current = l; | ||
var r = typeof Object.is == "function" ? Object.is : n, a = t.useSyncExternalStore, l = e.useRef, o = e.useEffect, v = e.useMemo, _ = e.useDebugValue; | ||
return xe.useSyncExternalStoreWithSelector = function(f, h, c, p, i) { | ||
var s = l(null); | ||
if (s.current === null) { | ||
var u = { hasValue: !1, value: null }; | ||
s.current = u; | ||
} else | ||
l = u.current; | ||
u = v(function() { | ||
u = s.current; | ||
s = v(function() { | ||
function b(S) { | ||
if (!R) { | ||
if (R = !0, w = S, S = p(S), i !== void 0 && l.hasValue) { | ||
var g = l.value; | ||
if (!L) { | ||
if (L = !0, w = S, S = p(S), i !== void 0 && u.hasValue) { | ||
var g = u.value; | ||
if (i(g, S)) | ||
@@ -707,3 +705,3 @@ return m = g; | ||
} | ||
var R = !1, w, m, y = c === void 0 ? null : c; | ||
var L = !1, w, m, y = c === void 0 ? null : c; | ||
return [function() { | ||
@@ -715,9 +713,9 @@ return b(h()); | ||
}, [h, c, p, i]); | ||
var d = a(f, u[0], u[1]); | ||
var d = a(f, s[0], s[1]); | ||
return o(function() { | ||
l.hasValue = !0, l.value = d; | ||
u.hasValue = !0, u.value = d; | ||
}, [d]), _(d), d; | ||
}, Le; | ||
}, xe; | ||
} | ||
var Ve = {}; | ||
var De = {}; | ||
/** | ||
@@ -740,9 +738,9 @@ * @license React | ||
} | ||
var r = typeof Object.is == "function" ? Object.is : n, a = t.useSyncExternalStore, s = e.useRef, o = e.useEffect, v = e.useMemo, _ = e.useDebugValue; | ||
function f(h, c, p, i, u) { | ||
var l = s(null), d; | ||
l.current === null ? (d = { | ||
var r = typeof Object.is == "function" ? Object.is : n, a = t.useSyncExternalStore, l = e.useRef, o = e.useEffect, v = e.useMemo, _ = e.useDebugValue; | ||
function f(h, c, p, i, s) { | ||
var u = l(null), d; | ||
u.current === null ? (d = { | ||
hasValue: !1, | ||
value: null | ||
}, l.current = d) : d = l.current; | ||
}, u.current = d) : d = u.current; | ||
var b = v(function() { | ||
@@ -752,22 +750,22 @@ var y = !1, S, g, E = function(Q) { | ||
y = !0, S = Q; | ||
var we = i(Q); | ||
if (u !== void 0 && d.hasValue) { | ||
var Ee = d.value; | ||
if (u(Ee, we)) | ||
return g = Ee, Ee; | ||
var Ee = i(Q); | ||
if (s !== void 0 && d.hasValue) { | ||
var Oe = d.value; | ||
if (s(Oe, Ee)) | ||
return g = Oe, Oe; | ||
} | ||
return g = we, we; | ||
return g = Ee, Ee; | ||
} | ||
var yt = S, Oe = g; | ||
if (r(yt, Q)) | ||
return Oe; | ||
var be = i(Q); | ||
return u !== void 0 && u(Oe, be) ? Oe : (S = Q, g = be, be); | ||
}, A = p === void 0 ? null : p, J = function() { | ||
var _t = S, be = g; | ||
if (r(_t, Q)) | ||
return be; | ||
var Le = i(Q); | ||
return s !== void 0 && s(be, Le) ? be : (S = Q, g = Le, Le); | ||
}, R = p === void 0 ? null : p, J = function() { | ||
return E(c()); | ||
}, ye = A === null ? void 0 : function() { | ||
return E(A()); | ||
}, we = R === null ? void 0 : function() { | ||
return E(R()); | ||
}; | ||
return [J, ye]; | ||
}, [c, p, i, u]), R = b[0], w = b[1], m = a(h, R, w); | ||
return [J, we]; | ||
}, [c, p, i, s]), L = b[0], w = b[1], m = a(h, L, w); | ||
return o(function() { | ||
@@ -777,4 +775,4 @@ d.hasValue = !0, d.value = m; | ||
} | ||
Ve.useSyncExternalStoreWithSelector = f, typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error()); | ||
}()), Ve; | ||
De.useSyncExternalStoreWithSelector = f, typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error()); | ||
}()), De; | ||
} | ||
@@ -785,14 +783,14 @@ (function(e) { | ||
function ur(e, t, n, r) { | ||
let a = [Bt.run({ fn: (s) => t(s) })]; | ||
let a = [Nt.run({ fn: (l) => t(l) })]; | ||
if (r && a.unshift(r), n) { | ||
let s = N({ node: a }), o = e.graphite.id, v = n.additionalLinks, _ = v[o] || []; | ||
return v[o] = _, _.push(s), () => { | ||
let f = _.indexOf(s); | ||
f !== -1 && _.splice(f, 1), Ie(s); | ||
let l = N({ node: a }), o = e.graphite.id, v = n.additionalLinks, _ = v[o] || []; | ||
return v[o] = _, _.push(l), () => { | ||
let f = _.indexOf(l); | ||
f !== -1 && _.splice(f, 1), Ie(l); | ||
}; | ||
} | ||
{ | ||
let s = N({ node: a, parent: [e], family: { owners: e } }); | ||
let l = N({ node: a, parent: [e], family: { owners: e } }); | ||
return () => { | ||
Ie(s); | ||
Ie(l); | ||
}; | ||
@@ -802,3 +800,3 @@ } | ||
function lr(e, t) { | ||
xt.store(e) || gt("expect useStore argument to be a store"); | ||
At.store(e) || gt("expect useStore argument to be a store"); | ||
let n = M.useCallback((a) => ur(e, a, t), [e, t]), r = M.useCallback(() => pr(e, t), [e, t]); | ||
@@ -808,3 +806,3 @@ return dr(n, r, r); | ||
function cr(e) { | ||
let t = M.useContext(vr); | ||
let t = M.useContext(mr); | ||
return e && !t && gt("No scope found, consider adding <Provider> to app root"), t; | ||
@@ -819,4 +817,4 @@ } | ||
typeof window < "u" ? M.useLayoutEffect : M.useEffect; | ||
const { useSyncExternalStore: dr } = ar, pr = (e, t) => t ? t.getState(e) : e.getState(), vr = M.createContext(null), st = (e, t, n) => { | ||
De(() => { | ||
const { useSyncExternalStore: dr } = ar, pr = (e, t) => t ? t.getState(e) : e.getState(), mr = M.createContext(null), vr = (e, t, n) => { | ||
me(() => { | ||
const r = (a) => { | ||
@@ -827,7 +825,14 @@ a instanceof KeyboardEvent && a.key === n ? t(a) : n || t(a); | ||
}, [e, n, t]); | ||
}, Er = (e, ...t) => { | ||
const { activeView: n, activePanel: r, activeModal: a, activePopout: s, isRouteInit: o } = mr(); | ||
De(() => { | ||
o || (z(e), _t()); | ||
}, [o, e]), De(() => { | ||
}, hr = (e, t, n) => { | ||
me(() => { | ||
const r = (a) => { | ||
a instanceof KeyboardEvent && a.key === n ? t(a) : n || t(a); | ||
}; | ||
return document.addEventListener(e, r), () => document.removeEventListener(e, r); | ||
}, [e, n, t]); | ||
}, br = (e, ...t) => { | ||
const { activeView: n, activePanel: r, activeModal: a, activePopout: l, isRouteInit: o } = Sr(); | ||
me(() => { | ||
o || (z(e), St()); | ||
}, [o, e]), me(() => { | ||
o && z({ | ||
@@ -837,5 +842,5 @@ view: n, | ||
modal: a, | ||
popout: s | ||
popout: l | ||
}); | ||
}, [n, r, a, s, o]), st("popstate", async () => { | ||
}, [n, r, a, l, o]), vr("popstate", async () => { | ||
o && (await (async () => { | ||
@@ -848,3 +853,3 @@ const { view: _, panel: f, modal: h, popout: c } = window.history.state ?? { | ||
}; | ||
console.log("prevRoutes", _, f, h, c), console.log("storeRoutes", n, r, a, s); | ||
console.log("prevRoutes", _, f, h, c), console.log("storeRoutes", n, r, a, l); | ||
for (const p in t) | ||
@@ -855,3 +860,3 @@ if (!await t[p]({ | ||
modal: a, | ||
popout: s | ||
popout: l | ||
}, { view: _, panel: f, modal: h, popout: c })) | ||
@@ -861,4 +866,5 @@ return; | ||
})(), window.isBackFromBrowser = !0); | ||
}), st("pushstate", () => { | ||
const { view: v, panel: _, modal: f, popout: h } = window.history.state ?? { | ||
}), hr("pushstate", ({ detail: v }) => { | ||
console.log("push trigered", v); | ||
const { view: _, panel: f, modal: h, popout: c } = window.history.state ?? { | ||
view: void 0, | ||
@@ -869,5 +875,5 @@ panel: void 0, | ||
}; | ||
$e({ view: v, panel: _ }), Ne(f), Be(h); | ||
$e({ view: _, panel: f }), Ne(h), Be(c); | ||
}); | ||
}, mr = () => fr(Zt), Or = (e) => e, br = (e, t) => (n, r) => ["view", "panel", "modal", "popout"].some((s) => n[s] === e && n[s] !== r[s]) && window.isBackFromBrowser ? (t && t(n, r), z(n), !1) : !0; | ||
}, Sr = () => fr(Zt), Lr = (e) => e, Rr = (e, t) => (n, r) => ["view", "panel", "modal", "popout"].some((l) => n[l] === e && n[l] !== r[l]) && window.isBackFromBrowser ? (t && t(n, r), z(n), !1) : !0; | ||
export { | ||
@@ -878,12 +884,12 @@ Ne as _setActiveModal, | ||
Jt as _setActiveView, | ||
Sr as back, | ||
br as createDisableBackBrowserRouteMiddleware, | ||
Or as createRouteMiddleware, | ||
_r as back, | ||
Rr as createDisableBackBrowserRouteMiddleware, | ||
Lr as createRouteMiddleware, | ||
z as historyPush, | ||
yr as setActiveModal, | ||
gr as setActivePanel, | ||
wr as setActivePopout, | ||
_r as setActiveViewPanel, | ||
Er as useInitRouter, | ||
mr as useRouter | ||
Er as setActiveModal, | ||
wr as setActivePanel, | ||
Or as setActivePopout, | ||
yr as setActiveViewPanel, | ||
br as useInitRouter, | ||
Sr as useRouter | ||
}; |
export declare const useEventListener: <K extends keyof WindowEventMap>(eventListen: K, callback: (e: WindowEventMap[K]) => void, eventKey?: string) => void; | ||
export declare const useDocumentEventListener: <K extends keyof DocumentEventMap>(eventListen: K, callback: (e: DocumentEventMap[K]) => void, eventKey?: string) => void; |
{ | ||
"name": "@blumjs/router", | ||
"version": "5.0.1", | ||
"version": "5.1.0", | ||
"description": "", | ||
@@ -5,0 +5,0 @@ "exports": { |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
62405
1031