@blumjs/router
Advanced tools
Comparing version 6.4.0 to 6.5.0
import { Routes } from "./types"; | ||
export declare const blumRouter: { | ||
subscribers: Subscriber[]; | ||
back(): void; | ||
historyPush(routes: Partial<Routes>): void; | ||
@@ -12,4 +11,2 @@ changeState(routes: BlumRouterEventMap["changestate"]): void; | ||
}; | ||
export declare const historyPush: (routes: Partial<Routes>) => void; | ||
export declare const back: () => void; | ||
export type BlumRouterEventMap = { | ||
@@ -16,0 +13,0 @@ changestate: Routes | null; |
@@ -1,4 +0,4 @@ | ||
import { back, blumRouter, historyPush } from "./blum-router"; | ||
import { setActiveModal, setActivePanel, setActivePopout, setActiveViewPanel, _setActiveModal, _setActivePanel, _setActivePopout, _setActiveView } from "./router"; | ||
import { blumRouter } from "./blum-router"; | ||
import { back, setActiveModal, setActivePanel, setActivePopout, setActiveViewPanel, _setActiveModal, _setActivePanel, _setActivePopout, _setActiveView } from "./router"; | ||
import { createDisableBackBrowserRouteMiddleware, createRouteMiddleware, useInitRouter, useRouter } from "./useRoutes"; | ||
export { useRouter, blumRouter, useInitRouter, createDisableBackBrowserRouteMiddleware, createRouteMiddleware, setActiveModal, setActiveViewPanel, setActivePanel, setActivePopout, back, _setActiveView, _setActivePanel, _setActiveModal, _setActivePopout, historyPush, }; | ||
export { useRouter, blumRouter, useInitRouter, createDisableBackBrowserRouteMiddleware, createRouteMiddleware, setActiveModal, setActiveViewPanel, setActivePanel, setActivePopout, back, _setActiveView, _setActivePanel, _setActiveModal, _setActivePopout, }; |
@@ -1,7 +0,4 @@ | ||
import P, { useEffect as tt } from "react"; | ||
const M = { | ||
import P, { useEffect as et } from "react"; | ||
const J = { | ||
subscribers: [], | ||
back() { | ||
window.isBackFromBrowser = !1, window.history.back(); | ||
}, | ||
historyPush(e) { | ||
@@ -40,7 +37,4 @@ const { view: t, panel: r, modal: n, popout: i } = window.history.state ?? { | ||
} | ||
}, rt = M.historyPush.bind(M), pr = M.back.bind(M), ue = { | ||
}, ce = { | ||
subscribers: [], | ||
back() { | ||
window.isBackFromBrowser = !1, window.history.back(); | ||
}, | ||
historyPush(e) { | ||
@@ -79,33 +73,33 @@ const { view: t, panel: r, modal: n, popout: i } = window.history.state ?? { | ||
} | ||
}, fe = ue.historyPush.bind(ue); | ||
ue.back.bind(ue); | ||
const vr = (e) => { | ||
fe({ view: e.view, panel: e.panel }); | ||
}, fr = () => { | ||
window.isBackFromBrowser = !1, window.history.back(); | ||
}, dr = (e) => { | ||
ce.historyPush({ view: e.view, panel: e.panel }); | ||
}, pr = (e) => { | ||
ce.historyPush({ panel: e }); | ||
}, vr = (e) => { | ||
ce.historyPush({ modal: e }); | ||
}, hr = (e) => { | ||
fe({ panel: e }); | ||
}, mr = (e) => { | ||
fe({ modal: e }); | ||
}, Sr = (e) => { | ||
fe({ popout: e }); | ||
ce.historyPush({ popout: e }); | ||
}; | ||
function Et(e, t) { | ||
function _t(e, t) { | ||
for (let r in e) | ||
t(e[r], r); | ||
} | ||
function A(e, t) { | ||
function k(e, t) { | ||
e.forEach(t); | ||
} | ||
function j(e, t) { | ||
function W(e, t) { | ||
if (!e) | ||
throw Error(t); | ||
} | ||
function B({ node: e = [], from: t, source: r, parent: n = t || r, to: i, target: s, child: o = i || s, scope: p = {}, meta: g = {}, family: c = { type: "regular" }, regional: S } = {}) { | ||
function M({ node: e = [], from: t, source: r, parent: n = t || r, to: i, target: s, child: o = i || s, scope: p = {}, meta: g = {}, family: c = { type: "regular" }, regional: S } = {}) { | ||
let l = ie(n), d = ie(c.links), f = ie(c.owners), a = []; | ||
A(e, (v) => v && T(a, v)); | ||
let u = { id: Vt(), seq: a, next: ie(o), meta: g, scope: p, family: { type: c.type || "crosslink", links: d, owners: f } }; | ||
return A(d, (v) => T(de(v), u)), A(f, (v) => T(pe(v), u)), A(l, (v) => T(v.next, u)), S && W && ut(J(W), [u]), u; | ||
k(e, (v) => v && T(a, v)); | ||
let u = { id: kt(), seq: a, next: ie(o), meta: g, scope: p, family: { type: c.type || "crosslink", links: d, owners: f } }; | ||
return k(d, (v) => T(fe(v), u)), k(f, (v) => T(de(v), u)), k(l, (v) => T(v.next, u)), S && z && at(Y(z), [u]), u; | ||
} | ||
function nt(e, t, r) { | ||
let n, i = V, s = null, o = b; | ||
if (e.target && (t = e.params, r = e.defer, n = e.meta, i = "page" in e ? e.page : i, e.stack && (s = e.stack), o = oe(e) || o, e = e.target), o && b && o !== b && (b = null), Array.isArray(e)) | ||
function tt(e, t, r) { | ||
let n, i = V, s = null, o = O; | ||
if (e.target && (t = e.params, r = e.defer, n = e.meta, i = "page" in e ? e.page : i, e.stack && (s = e.stack), o = oe(e) || o, e = e.target), o && O && o !== O && (O = null), Array.isArray(e)) | ||
for (let a = 0; a < e.length; a++) | ||
@@ -117,9 +111,9 @@ D("pure", i, C(e[a]), s, t[a], o, n); | ||
return; | ||
let p, g, c, S, l, d, f = { isRoot: ae, currentPage: V, scope: b, isWatch: Ee, isPure: se }; | ||
let p, g, c, S, l, d, f = { isRoot: ae, currentPage: V, scope: O, isWatch: we, isPure: se }; | ||
ae = 0; | ||
e: | ||
for (; S = zt(); ) { | ||
for (; S = Nt(); ) { | ||
let { idx: a, stack: u, type: v } = S; | ||
c = u.node, V = l = u.page, b = oe(u), l ? d = l.reg : b && (d = b.reg); | ||
let L = !!l, k = !!b, w = { fail: 0, scope: c.scope }; | ||
c = u.node, V = l = u.page, O = oe(u), l ? d = l.reg : O && (d = O.reg); | ||
let L = !!l, A = !!O, w = { fail: 0, scope: c.scope }; | ||
p = g = 0; | ||
@@ -131,6 +125,6 @@ for (let h = a; h < c.seq.length && !p; h++) { | ||
if (h !== a || v !== m) { | ||
y ? we.has(E) || (we.add(E), xe(h, u, m, y)) : xe(h, u, m); | ||
y ? _e.has(E) || (_e.add(E), ke(h, u, m, y)) : ke(h, u, m); | ||
continue e; | ||
} | ||
y && we.delete(E); | ||
y && _e.delete(E); | ||
} | ||
@@ -142,3 +136,3 @@ switch (_.type) { | ||
case X: | ||
y = J(u); | ||
y = Y(u); | ||
break; | ||
@@ -155,7 +149,7 @@ case "a": | ||
if (L) { | ||
let O = ft(l, E.store.id); | ||
u.page = l = O, O ? d = O.reg : k ? (H(b, E.store, 0, 1, E.softRead), d = b.reg) : d = void 0; | ||
let b = lt(l, E.store.id); | ||
u.page = l = b, b ? d = b.reg : A ? (G(O, E.store, 0, 1, E.softRead), d = O.reg) : d = void 0; | ||
} else | ||
k && H(b, E.store, 0, 1, E.softRead); | ||
y = ct(d && d[E.store.id] || E.store); | ||
A && G(O, E.store, 0, 1, E.softRead); | ||
y = ut(d && d[E.store.id] || E.store); | ||
} | ||
@@ -171,3 +165,3 @@ switch (E.to) { | ||
case "store": | ||
Wt(l, b, c, E.target).current = y; | ||
$t(l, O, c, E.target).current = y; | ||
} | ||
@@ -179,5 +173,5 @@ break; | ||
if (m.fn) { | ||
Ee = R(c, "op") === "watch", se = m.pure; | ||
let y = m.safe ? (0, m.fn)(J(u), w.scope, u) : Gt(w, m.fn, u); | ||
m.filter ? g = !y : u.value = y, Ee = f.isWatch, se = f.isPure; | ||
we = R(c, "op") === "watch", se = m.pure; | ||
let y = m.safe ? (0, m.fn)(Y(u), w.scope, u) : Wt(w, m.fn, u); | ||
m.filter ? g = !y : u.value = y, we = f.isWatch, se = f.isPure; | ||
} | ||
@@ -188,4 +182,4 @@ } | ||
if (!p) { | ||
let h = J(u), _ = oe(u); | ||
if (A(c.next, (m) => { | ||
let h = Y(u), _ = oe(u); | ||
if (k(c.next, (m) => { | ||
D("child", l, m, u, h, _); | ||
@@ -195,3 +189,3 @@ }), _) { | ||
let m = _.additionalLinks[c.id]; | ||
m && A(m, (y) => { | ||
m && k(m, (y) => { | ||
D("child", l, y, u, h, _); | ||
@@ -202,8 +196,8 @@ }); | ||
} | ||
ae = f.isRoot, V = f.currentPage, b = oe(f); | ||
ae = f.isRoot, V = f.currentPage, O = oe(f); | ||
} | ||
function bt(e, t) { | ||
function wt(e, t) { | ||
let r, n, i = e; | ||
if (t) { | ||
let s = Lt(t); | ||
let s = Ot(t); | ||
e.length === 0 ? (r = s.path, n = s.fullName) : (r = s.path.concat([e]), n = s.fullName.length === 0 ? e : s.fullName + "/" + e); | ||
@@ -214,4 +208,4 @@ } else | ||
} | ||
function Y(e, ...t) { | ||
let r = st(); | ||
function F(e, ...t) { | ||
let r = it(); | ||
if (r) { | ||
@@ -228,20 +222,20 @@ let n = r.handlers[e]; | ||
for (f = V; f && f.template !== c; ) | ||
f = G(f); | ||
qe(f); | ||
f = j(f); | ||
Ue(f); | ||
let a = g.create(S, l); | ||
return qe(d), a; | ||
})(n, i, o, p) : n.create(o, p)), i = st(), s = Object.assign(n, { graphite: B({ meta: vt("event", n, r), regional: 1 }), create: (o) => (nt({ target: n, params: o, scope: b }), o), watch: (o) => pt(n, o), map: (o) => be(n, Q, o, [N()]), filter: (o) => be(n, "filter", o.fn ? o : o.fn, [N(Be, 1)]), filterMap: (o) => be(n, "filterMap", o, [N(), Ae((p) => !$(p), 1)]), prepend(o) { | ||
let p = x("* → " + n.shortName, { parent: G(n) }); | ||
return Y("eventPrepend", C(p)), ze(p, n, [N()], "prepend", o), Ht(n, p), p; | ||
return Ue(d), a; | ||
})(n, i, o, p) : n.create(o, p)), i = it(), s = Object.assign(n, { graphite: M({ meta: dt("event", n, r), regional: 1 }), create: (o) => (tt({ target: n, params: o, scope: O }), o), watch: (o) => ft(n, o), map: (o) => Ee(n, Q, o, [N()]), filter: (o) => Ee(n, "filter", o.fn ? o : o.fn, [N(Me, 1)]), filterMap: (o) => Ee(n, "filterMap", o, [N(), Ae((p) => !B(p), 1)]), prepend(o) { | ||
let p = x("* → " + n.shortName, { parent: j(n) }); | ||
return F("eventPrepend", C(p)), $e(p, n, [N()], "prepend", o), jt(n, p), p; | ||
} }); | ||
return r != null && r.domain && r.domain.hooks.event(s), s; | ||
} | ||
function We(e, t, r, n) { | ||
return Tt(r, t, "first argument"), j(I(n), "second argument should be a function"), Z(!R(e, "derived"), `${t} in derived store`, `${t} in store created via createStore`), A(Array.isArray(r) ? r : [r], (i) => { | ||
e.off(i), ce(e).set(i, dt(ht(i, e, "on", Dt, n))); | ||
function ze(e, t, r, n) { | ||
return Pt(r, t, "first argument"), W(I(n), "second argument should be a function"), Z(!R(e, "derived"), `${t} in derived store`, `${t} in store created via createStore`), k(Array.isArray(r) ? r : [r], (i) => { | ||
e.off(i), le(e).set(i, ct(pt(i, e, "on", Ct, n))); | ||
}), e; | ||
} | ||
function ot(e, t) { | ||
let r = te(t), n = $t(e), i = x({ named: "updates", derived: 1 }); | ||
Y("storeBase", n); | ||
function rt(e, t) { | ||
let r = te(t), n = It(e), i = x({ named: "updates", derived: 1 }); | ||
F("storeBase", n); | ||
let s = n.id, o = { subscribers: /* @__PURE__ */ new Map(), updates: i, defaultState: e, stateRef: n, getState() { | ||
@@ -252,58 +246,58 @@ let a, u = n; | ||
for (; v && !v.reg[s]; ) | ||
v = G(v); | ||
v = j(v); | ||
v && (a = v); | ||
} | ||
return !a && b && (H(b, n, 1), a = b), a && (u = a.reg[s]), ct(u); | ||
}, setState: (a) => nt({ target: o, params: a, defer: 1, scope: b }), reset: (...a) => (A(a, (u) => We(o, ".reset", u, () => o.defaultState)), o), on: (a, u) => We(o, ".on", a, u), off(a) { | ||
let u = ce(o).get(a); | ||
return u && (u(), ce(o).delete(a)), o; | ||
return !a && O && (G(O, n, 1), a = O), a && (u = a.reg[s]), ut(u); | ||
}, setState: (a) => tt({ target: o, params: a, defer: 1, scope: O }), reset: (...a) => (k(a, (u) => ze(o, ".reset", u, () => o.defaultState)), o), on: (a, u) => ze(o, ".on", a, u), off(a) { | ||
let u = le(o).get(a); | ||
return u && (u(), le(o).delete(a)), o; | ||
}, map(a, u) { | ||
let v, L; | ||
K(a) && (v = a, a = a.fn), Z($(u), "second argument of store.map", "updateFilter"); | ||
let k = o.getState(); | ||
$(k) || (L = a(k, u)); | ||
let w = ot(L, { name: `${o.shortName} → *`, derived: 1, and: v }), h = ht(o, w, Q, Ke, a); | ||
return Nt(le(w), { type: Q, fn: a, from: n }), le(w).noInit = 1, Y("storeMap", n, h), w; | ||
H(a) && (v = a, a = a.fn), Z(B(u), "second argument of store.map", "updateFilter"); | ||
let A = o.getState(); | ||
B(A) || (L = a(A, u)); | ||
let w = rt(L, { name: `${o.shortName} → *`, derived: 1, and: v }), h = pt(o, w, Q, He, a); | ||
return Bt(ue(w), { type: Q, fn: a, from: n }), ue(w).noInit = 1, F("storeMap", n, h), w; | ||
}, watch(a, u) { | ||
if (!u || !Te(a)) { | ||
let v = pt(o, a); | ||
return Y("storeWatch", n, a) || a(o.getState()), v; | ||
if (!u || !Ce(a)) { | ||
let v = ft(o, a); | ||
return F("storeWatch", n, a) || a(o.getState()), v; | ||
} | ||
return j(I(u), "second argument should be a function"), a.watch((v) => u(o.getState(), v)); | ||
} }, p = vt("store", o, r), g = o.defaultConfig.updateFilter; | ||
o.graphite = B({ scope: { state: n, fn: g }, node: [Ae((a, u, v) => (v.scope && !v.scope.reg[n.id] && (v.b = 1), a)), Bt(n), Ae((a, u, { a: v, b: L }) => !$(a) && (a !== v || L), 1), g && N(Ke, 1), ve({ from: X, target: n })], child: i, meta: p, regional: 1 }); | ||
return W(I(u), "second argument should be a function"), a.watch((v) => u(o.getState(), v)); | ||
} }, p = dt("store", o, r), g = o.defaultConfig.updateFilter; | ||
o.graphite = M({ scope: { state: n, fn: g }, node: [Ae((a, u, v) => (v.scope && !v.scope.reg[n.id] && (v.b = 1), a)), Dt(n), Ae((a, u, { a: v, b: L }) => !B(a) && (a !== v || L), 1), g && N(He, 1), pe({ from: X, target: n })], child: i, meta: p, regional: 1 }); | ||
let c = R(o, "serialize"), S = R(o, "derived"), l = c === "ignore", d = !c || l ? 0 : c, f = R(o, "sid"); | ||
return f && (l || je(o, "storeChange", 1), n.sid = f, d && (n.meta = { ...n == null ? void 0 : n.meta, serialize: d })), f || l || S || je(o, "warnSerialize", 1), j(S || !$(e), "current state can't be undefined, use null instead"), ut(o, [i]), r != null && r.domain && r.domain.hooks.store(o), S || (o.reinit = x(), o.reset(o.reinit)), o; | ||
return f && (l || We(o, "storeChange", 1), n.sid = f, d && (n.meta = { ...n == null ? void 0 : n.meta, serialize: d })), f || l || S || We(o, "warnSerialize", 1), W(S || !B(e), "current state can't be undefined, use null instead"), at(o, [i]), r != null && r.domain && r.domain.hooks.store(o), S || (o.reinit = x(), o.reset(o.reinit)), o; | ||
} | ||
let Ot = typeof Symbol < "u" && Symbol.observable || "@@observable", Q = "map", X = "stack", C = (e) => e.graphite || e, de = (e) => e.family.owners, pe = (e) => e.family.links, le = (e) => e.stateRef, J = (e) => e.value, ce = (e) => e.subscribers, G = (e) => e.parent, oe = (e) => e.scope, R = (e, t) => C(e).meta[t], je = (e, t, r) => C(e).meta[t] = r, Lt = (e) => e.compositeName, Te = (e) => (I(e) || K(e)) && "kind" in e; | ||
const ne = (e) => (t) => Te(t) && t.kind === e; | ||
let De = ne("store"), Rt = ne("event"), Ge = ne("effect"), it = ne("domain"), kt = ne("scope"); | ||
var At = { __proto__: null, unit: Te, store: De, event: Rt, effect: Ge, domain: it, scope: kt, attached: (e) => Ge(e) && R(e, "attached") == 1 }; | ||
let _e = (e, t) => { | ||
let Et = typeof Symbol < "u" && Symbol.observable || "@@observable", Q = "map", X = "stack", C = (e) => e.graphite || e, fe = (e) => e.family.owners, de = (e) => e.family.links, ue = (e) => e.stateRef, Y = (e) => e.value, le = (e) => e.subscribers, j = (e) => e.parent, oe = (e) => e.scope, R = (e, t) => C(e).meta[t], We = (e, t, r) => C(e).meta[t] = r, Ot = (e) => e.compositeName, Ce = (e) => (I(e) || H(e)) && "kind" in e; | ||
const ne = (e) => (t) => Ce(t) && t.kind === e; | ||
let Te = ne("store"), bt = ne("event"), je = ne("effect"), nt = ne("domain"), Lt = ne("scope"); | ||
var Rt = { __proto__: null, unit: Ce, store: Te, event: bt, effect: je, domain: nt, scope: Lt, attached: (e) => je(e) && R(e, "attached") == 1 }; | ||
let ye = (e, t) => { | ||
let r = e.indexOf(t); | ||
r !== -1 && e.splice(r, 1); | ||
}, T = (e, t) => e.push(t), Z = (e, t, r) => !e && console.error(`${t} is deprecated${r ? `, use ${r} instead` : ""}`); | ||
const Me = () => { | ||
const De = () => { | ||
let e = 0; | ||
return () => "" + ++e; | ||
}; | ||
let xt = Me(), at = Me(), Vt = Me(), W = null, st = () => W, Pt = (e) => (e && W && W.sidRoot && (e = `${W.sidRoot}|${e}`), e), ut = (e, t) => { | ||
let At = De(), ot = De(), kt = De(), z = null, it = () => z, xt = (e) => (e && z && z.sidRoot && (e = `${z.sidRoot}|${e}`), e), at = (e, t) => { | ||
let r = C(e); | ||
A(t, (n) => { | ||
k(t, (n) => { | ||
let i = C(n); | ||
r.family.type !== "domain" && (i.family.type = "crosslink"), T(de(i), r), T(pe(r), i); | ||
r.family.type !== "domain" && (i.family.type = "crosslink"), T(fe(i), r), T(de(r), i); | ||
}); | ||
}, ie = (e = []) => (Array.isArray(e) ? e : [e]).flat().map(C), K = (e) => typeof e == "object" && e !== null, I = (e) => typeof e == "function", $ = (e) => e === void 0, Ct = (e) => j(K(e) || I(e), "expect first argument be an object"); | ||
const He = (e, t, r, n) => j(!(!K(e) && !I(e) || !("family" in e) && !("graphite" in e)), `${t}: expect ${r} to be a unit (store, event or effect)${n}`); | ||
let Tt = (e, t, r) => { | ||
Array.isArray(e) ? A(e, (n, i) => He(n, t, `${i} item of ${r}`, "")) : He(e, t, r, " or array of units"); | ||
}, Ke = (e, { fn: t }, { a: r }) => t(e, r), Dt = (e, { fn: t }, { a: r }) => t(r, e), Be = (e, { fn: t }) => t(e); | ||
const lt = (e, t, r, n) => { | ||
let i = { id: at(), type: e, data: t }; | ||
return r && (i.order = { priority: r }, n && (i.order.barrierID = ++Mt)), i; | ||
}, ie = (e = []) => (Array.isArray(e) ? e : [e]).flat().map(C), H = (e) => typeof e == "object" && e !== null, I = (e) => typeof e == "function", B = (e) => e === void 0, Vt = (e) => W(H(e) || I(e), "expect first argument be an object"); | ||
const Ge = (e, t, r, n) => W(!(!H(e) && !I(e) || !("family" in e) && !("graphite" in e)), `${t}: expect ${r} to be a unit (store, event or effect)${n}`); | ||
let Pt = (e, t, r) => { | ||
Array.isArray(e) ? k(e, (n, i) => Ge(n, t, `${i} item of ${r}`, "")) : Ge(e, t, r, " or array of units"); | ||
}, He = (e, { fn: t }, { a: r }) => t(e, r), Ct = (e, { fn: t }, { a: r }) => t(r, e), Me = (e, { fn: t }) => t(e); | ||
const st = (e, t, r, n) => { | ||
let i = { id: ot(), type: e, data: t }; | ||
return r && (i.order = { priority: r }, n && (i.order.barrierID = ++Tt)), i; | ||
}; | ||
let Mt = 0, ve = ({ from: e = "store", store: t, target: r, to: n = r ? "store" : X, batch: i, priority: s }) => lt("mov", { from: e, store: t, to: n, target: r }, s, i), ee = ({ fn: e, batch: t, priority: r, safe: n = 0, filter: i = 0, pure: s = 0 }) => lt("compute", { fn: e, safe: n, filter: i, pure: s }, r, t), Ie = ({ fn: e }) => ee({ fn: e, priority: "effect" }), Ae = (e, t, r) => ee({ fn: e, safe: 1, filter: t, priority: r && "effect" }), Bt = (e, t, r) => ve({ store: e, to: t ? X : "a", priority: r && "sampler", batch: 1 }), N = (e = Be, t) => ee({ fn: e, pure: 1, filter: t }), It = { mov: ve, compute: ee, filter: ({ fn: e, pure: t }) => ee({ fn: e, filter: 1, pure: t }), run: Ie }, $t = (e) => ({ id: at(), current: e }), ct = ({ current: e }) => e, Nt = (e, t) => { | ||
let Tt = 0, pe = ({ from: e = "store", store: t, target: r, to: n = r ? "store" : X, batch: i, priority: s }) => st("mov", { from: e, store: t, to: n, target: r }, s, i), ee = ({ fn: e, batch: t, priority: r, safe: n = 0, filter: i = 0, pure: s = 0 }) => st("compute", { fn: e, safe: n, filter: i, pure: s }, r, t), Ie = ({ fn: e }) => ee({ fn: e, priority: "effect" }), Ae = (e, t, r) => ee({ fn: e, safe: 1, filter: t, priority: r && "effect" }), Dt = (e, t, r) => pe({ store: e, to: t ? X : "a", priority: r && "sampler", batch: 1 }), N = (e = Me, t) => ee({ fn: e, pure: 1, filter: t }), Mt = { mov: pe, compute: ee, filter: ({ fn: e, pure: t }) => ee({ fn: e, filter: 1, pure: t }), run: Ie }, It = (e) => ({ id: ot(), current: e }), ut = ({ current: e }) => e, Bt = (e, t) => { | ||
e.before || (e.before = []), T(e.before, t); | ||
}, z = null; | ||
const $e = (e, t) => { | ||
}, $ = null; | ||
const Be = (e, t) => { | ||
if (!e) | ||
@@ -314,8 +308,8 @@ return t; | ||
let r; | ||
return (e.v.type === t.v.type && e.v.id > t.v.id || Ve(e.v.type) > Ve(t.v.type)) && (r = e, e = t, t = r), r = $e(e.r, t), e.r = e.l, e.l = r, e; | ||
return (e.v.type === t.v.type && e.v.id > t.v.id || xe(e.v.type) > xe(t.v.type)) && (r = e, e = t, t = r), r = Be(e.r, t), e.r = e.l, e.l = r, e; | ||
}, Ne = []; | ||
let Ue = 0; | ||
for (; Ue < 6; ) | ||
T(Ne, { first: null, last: null, size: 0 }), Ue += 1; | ||
const zt = () => { | ||
let Ke = 0; | ||
for (; Ke < 6; ) | ||
T(Ne, { first: null, last: null, size: 0 }), Ke += 1; | ||
const Nt = () => { | ||
for (let e = 0; e < 6; e++) { | ||
@@ -326,4 +320,4 @@ let t = Ne[e]; | ||
t.size -= 1; | ||
let n = z.v; | ||
return z = $e(z.l, z.r), n; | ||
let n = $.v; | ||
return $ = Be($.l, $.r), n; | ||
} | ||
@@ -335,6 +329,6 @@ t.size === 1 && (t.last = null); | ||
} | ||
}, D = (e, t, r, n, i, s, o) => xe(0, { a: null, b: null, node: r, parent: n, value: i, page: t, scope: s, meta: o }, e), xe = (e, t, r, n = 0) => { | ||
let i = Ve(r), s = Ne[i], o = { v: { idx: e, stack: t, type: r, id: n }, l: null, r: null }; | ||
i === 3 || i === 4 ? z = $e(z, o) : (s.size === 0 ? s.first = o : s.last.r = o, s.last = o), s.size += 1; | ||
}, Ve = (e) => { | ||
}, D = (e, t, r, n, i, s, o) => ke(0, { a: null, b: null, node: r, parent: n, value: i, page: t, scope: s, meta: o }, e), ke = (e, t, r, n = 0) => { | ||
let i = xe(r), s = Ne[i], o = { v: { idx: e, stack: t, type: r, id: n }, l: null, r: null }; | ||
i === 3 || i === 4 ? $ = Be($, o) : (s.size === 0 ? s.first = o : s.last.r = o, s.last = o), s.size += 1; | ||
}, xe = (e) => { | ||
switch (e) { | ||
@@ -356,10 +350,10 @@ case "child": | ||
} | ||
}, we = /* @__PURE__ */ new Set(); | ||
let b, ae = 1, Ee = 0, se = 0, V = null, qe = (e) => { | ||
}, _e = /* @__PURE__ */ new Set(); | ||
let O, ae = 1, we = 0, se = 0, V = null, Ue = (e) => { | ||
V = e; | ||
}; | ||
const ft = (e, t) => { | ||
const lt = (e, t) => { | ||
if (e) { | ||
for (; e && !e.reg[t]; ) | ||
e = G(e); | ||
e = j(e); | ||
if (e) | ||
@@ -370,8 +364,8 @@ return e; | ||
}; | ||
let Wt = (e, t, r, n, i) => { | ||
let s = ft(e, n.id); | ||
return s ? s.reg[n.id] : t ? (H(t, n, i), t.reg[n.id]) : n; | ||
let $t = (e, t, r, n, i) => { | ||
let s = lt(e, n.id); | ||
return s ? s.reg[n.id] : t ? (G(t, n, i), t.reg[n.id]) : n; | ||
}; | ||
const jt = (e) => e; | ||
let H = (e, t, r, n, i) => { | ||
const zt = (e) => e; | ||
let G = (e, t, r, n, i) => { | ||
var s; | ||
@@ -383,6 +377,6 @@ let o = e.reg, p = t.sid, g = t == null || (s = t.meta) === null || s === void 0 ? void 0 : s.serialize; | ||
if (p && p in e.sidValuesMap && !(p in e.sidIdMap)) | ||
c.current = (e.fromSerialize && g !== "ignore" && (g == null ? void 0 : g.read) || jt)(e.sidValuesMap[p]); | ||
c.current = (e.fromSerialize && g !== "ignore" && (g == null ? void 0 : g.read) || zt)(e.sidValuesMap[p]); | ||
else if (t.before && !i) { | ||
let S = 0, l = r || !t.noInit || n; | ||
A(t.before, (d) => { | ||
k(t.before, (d) => { | ||
switch (d.type) { | ||
@@ -392,3 +386,3 @@ case Q: { | ||
if (f || d.fn) { | ||
f && H(e, f, r, n); | ||
f && G(e, f, r, n); | ||
let a = f && o[f.id].current; | ||
@@ -400,3 +394,3 @@ l && (c.current = d.fn ? d.fn(a) : a); | ||
case "field": | ||
S || (S = 1, c.current = Array.isArray(c.current) ? [...c.current] : { ...c.current }), H(e, d.from, r, n), l && (c.current[d.field] = o[o[d.from.id].id].current); | ||
S || (S = 1, c.current = Array.isArray(c.current) ? [...c.current] : { ...c.current }), G(e, d.from, r, n), l && (c.current[d.field] = o[o[d.from.id].id].current); | ||
} | ||
@@ -407,5 +401,5 @@ }); | ||
}; | ||
const Gt = (e, t, r) => { | ||
const Wt = (e, t, r) => { | ||
try { | ||
return t(J(r), e.scope, r); | ||
return t(Y(r), e.scope, r); | ||
} catch (n) { | ||
@@ -415,48 +409,48 @@ console.error(n), e.fail = 1; | ||
}; | ||
let te = (e, t = {}) => (K(e) && (te(e.or, t), Et(e, (r, n) => { | ||
$(r) || n === "or" || n === "and" || (t[n] = r); | ||
let te = (e, t = {}) => (H(e) && (te(e.or, t), _t(e, (r, n) => { | ||
B(r) || n === "or" || n === "and" || (t[n] = r); | ||
}), te(e.and, t)), t); | ||
const Fe = (e, t) => { | ||
_e(e.next, t), _e(de(e), t), _e(pe(e), t); | ||
}, Pe = (e, t, r) => { | ||
const qe = (e, t) => { | ||
ye(e.next, t), ye(fe(e), t), ye(de(e), t); | ||
}, Ve = (e, t, r) => { | ||
let n; | ||
e.next.length = 0, e.seq.length = 0, e.scope = null; | ||
let i = pe(e); | ||
let i = de(e); | ||
for (; n = i.pop(); ) | ||
Fe(n, e), (t || r && R(e, "op") !== "sample" || n.family.type === "crosslink") && Pe(n, t, R(n, "op") !== "on" && r); | ||
for (i = de(e); n = i.pop(); ) | ||
Fe(n, e), r && n.family.type === "crosslink" && Pe(n, t, R(n, "op") !== "on" && r); | ||
}, F = (e) => e.clear(); | ||
let Ce = (e, { deep: t } = {}) => { | ||
qe(n, e), (t || r && R(e, "op") !== "sample" || n.family.type === "crosslink") && Ve(n, t, R(n, "op") !== "on" && r); | ||
for (i = fe(e); n = i.pop(); ) | ||
qe(n, e), r && n.family.type === "crosslink" && Ve(n, t, R(n, "op") !== "on" && r); | ||
}, q = (e) => e.clear(); | ||
let Pe = (e, { deep: t } = {}) => { | ||
let r = 0; | ||
if (e.ownerSet && e.ownerSet.delete(e), De(e)) | ||
F(ce(e)); | ||
else if (it(e)) { | ||
if (e.ownerSet && e.ownerSet.delete(e), Te(e)) | ||
q(le(e)); | ||
else if (nt(e)) { | ||
r = 1; | ||
let n = e.history; | ||
F(n.events), F(n.effects), F(n.stores), F(n.domains); | ||
q(n.events), q(n.effects), q(n.stores), q(n.domains); | ||
} | ||
Pe(C(e), !!t, r); | ||
}, dt = (e) => { | ||
let t = () => Ce(e); | ||
Ve(C(e), !!t, r); | ||
}, ct = (e) => { | ||
let t = () => Pe(e); | ||
return t.unsubscribe = t, t; | ||
}, ze = (e, t, r, n, i) => B({ node: r, parent: e, child: t, scope: { fn: i }, meta: { op: n }, family: { owners: [e, t], links: t }, regional: 1 }), pt = (e, t) => (j(I(t), ".watch argument should be a function"), dt(B({ scope: { fn: t }, node: [Ie({ fn: Be })], parent: e, meta: { op: "watch" }, family: { owners: e }, regional: 1 }))), Ht = (e, t, r = "event") => { | ||
G(e) && G(e).hooks[r](t); | ||
}, vt = (e, t, r) => { | ||
let n = te(r), i = e === "domain", s = xt(), { sid: o = null, named: p = null, domain: g = null, parent: c = g } = n, S = p || n.name || (i ? "" : s), l = bt(S, c), d = { op: t.kind = e, name: t.shortName = S, sid: t.sid = Pt(o), named: p, unitId: t.id = s, serialize: n.serialize, derived: n.derived, config: n }; | ||
return t.parent = c, t.compositeName = l, t.defaultConfig = n, t.thru = (f) => (Z(0, "thru", "js pipe"), f(t)), t.getType = () => l.fullName, !i && (t.subscribe = (f) => (Ct(f), t.watch(I(f) ? f : (a) => f.next && f.next(a))), t[Ot] = () => t), d; | ||
}, $e = (e, t, r, n, i) => M({ node: r, parent: e, child: t, scope: { fn: i }, meta: { op: n }, family: { owners: [e, t], links: t }, regional: 1 }), ft = (e, t) => (W(I(t), ".watch argument should be a function"), ct(M({ scope: { fn: t }, node: [Ie({ fn: Me })], parent: e, meta: { op: "watch" }, family: { owners: e }, regional: 1 }))), jt = (e, t, r = "event") => { | ||
j(e) && j(e).hooks[r](t); | ||
}, dt = (e, t, r) => { | ||
let n = te(r), i = e === "domain", s = At(), { sid: o = null, named: p = null, domain: g = null, parent: c = g } = n, S = p || n.name || (i ? "" : s), l = wt(S, c), d = { op: t.kind = e, name: t.shortName = S, sid: t.sid = xt(o), named: p, unitId: t.id = s, serialize: n.serialize, derived: n.derived, config: n }; | ||
return t.parent = c, t.compositeName = l, t.defaultConfig = n, t.thru = (f) => (Z(0, "thru", "js pipe"), f(t)), t.getType = () => l.fullName, !i && (t.subscribe = (f) => (Vt(f), t.watch(I(f) ? f : (a) => f.next && f.next(a))), t[Et] = () => t), d; | ||
}; | ||
const be = (e, t, r, n) => { | ||
const Ee = (e, t, r, n) => { | ||
let i; | ||
K(r) && (i = r, r = r.fn); | ||
H(r) && (i = r, r = r.fn); | ||
let s = x({ name: `${e.shortName} → *`, derived: 1, and: i }); | ||
return ze(e, s, n, t, r), s; | ||
}, ht = (e, t, r, n, i) => { | ||
let s = le(t), o = ve({ store: s, to: "a", priority: "read" }); | ||
return $e(e, s, n, t, r), s; | ||
}, pt = (e, t, r, n, i) => { | ||
let s = ue(t), o = pe({ store: s, to: "a", priority: "read" }); | ||
r === Q && (o.data.softRead = 1); | ||
let p = [o, N(n)]; | ||
return Y("storeOnMap", s, p, De(e) && le(e)), ze(e, t, p, r, i); | ||
return F("storeOnMap", s, p, Te(e) && ue(e)), $e(e, t, p, r, i); | ||
}; | ||
B({ node: [Ie({ fn: ({ fn: e, value: t }) => e(t) })], meta: { op: "fx", fx: "sidechain" } }); | ||
const Kt = x(), Ut = x(), mt = x(), St = x(), gt = x(), yt = x(), qt = x(), Ft = ot({ | ||
M({ node: [Ie({ fn: ({ fn: e, value: t }) => e(t) })], meta: { op: "fx", fx: "sidechain" } }); | ||
const Gt = x(), Ht = x(), vt = x(), ht = x(), mt = x(), St = x(), Kt = x(), Ut = rt({ | ||
activeView: null, | ||
@@ -468,36 +462,36 @@ activePanel: null, | ||
isBackHandled: !0 | ||
}).on(Kt, (e, t) => ({ | ||
}).on(Gt, (e, t) => ({ | ||
...e, | ||
activeView: t | ||
})).on(Ut, (e, t) => ({ | ||
})).on(Ht, (e, t) => ({ | ||
...e, | ||
activePanel: t | ||
})).on(St, (e, t) => ({ | ||
})).on(ht, (e, t) => ({ | ||
...e, | ||
activeModal: t | ||
})).on(gt, (e, t) => ({ | ||
})).on(mt, (e, t) => ({ | ||
...e, | ||
activePopout: t | ||
})).on(yt, (e) => ({ | ||
})).on(St, (e) => ({ | ||
...e, | ||
isRouteInit: !0 | ||
})).on(mt, (e, { view: t, panel: r }) => ({ | ||
})).on(vt, (e, { view: t, panel: r }) => ({ | ||
...e, | ||
activeView: t, | ||
activePanel: r | ||
})).on(qt, (e, t) => ({ | ||
})).on(Kt, (e, t) => ({ | ||
...e, | ||
isBackHandled: t | ||
})); | ||
function Yt(e) { | ||
function qt(e) { | ||
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e; | ||
} | ||
var Ye = {}, Jt = { | ||
var Fe = {}, Ft = { | ||
get exports() { | ||
return Ye; | ||
return Fe; | ||
}, | ||
set exports(e) { | ||
Ye = e; | ||
Fe = e; | ||
} | ||
}, Oe = {}, re = {}, Qt = { | ||
}, Oe = {}, re = {}, Yt = { | ||
get exports() { | ||
@@ -509,3 +503,3 @@ return re; | ||
} | ||
}, Le = {}; | ||
}, be = {}; | ||
/** | ||
@@ -520,7 +514,7 @@ * @license React | ||
*/ | ||
var Je; | ||
function Xt() { | ||
if (Je) | ||
return Le; | ||
Je = 1; | ||
var Ye; | ||
function Jt() { | ||
if (Ye) | ||
return be; | ||
Ye = 1; | ||
var e = P; | ||
@@ -555,5 +549,5 @@ function t(l, d) { | ||
var S = typeof window > "u" || typeof window.document > "u" || typeof window.document.createElement > "u" ? c : p; | ||
return Le.useSyncExternalStore = e.useSyncExternalStore !== void 0 ? e.useSyncExternalStore : S, Le; | ||
return be.useSyncExternalStore = e.useSyncExternalStore !== void 0 ? e.useSyncExternalStore : S, be; | ||
} | ||
var Re = {}; | ||
var Le = {}; | ||
/** | ||
@@ -568,5 +562,5 @@ * @license React | ||
*/ | ||
var Qe; | ||
function Zt() { | ||
return Qe || (Qe = 1, process.env.NODE_ENV !== "production" && function() { | ||
var Je; | ||
function Qt() { | ||
return Je || (Je = 1, process.env.NODE_ENV !== "production" && function() { | ||
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error()); | ||
@@ -585,4 +579,4 @@ var e = P, t = e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED; | ||
y !== "" && (h += "%s", _ = _.concat([y])); | ||
var E = _.map(function(O) { | ||
return String(O); | ||
var E = _.map(function(b) { | ||
return String(b); | ||
}); | ||
@@ -608,17 +602,17 @@ E.unshift("Warning: " + h), Function.prototype.apply.call(console[w], console, E); | ||
} | ||
}), O = E[0].inst, U = E[1]; | ||
}), b = E[0].inst, K = E[1]; | ||
return g(function() { | ||
O.value = m, O.getSnapshot = h, f(O) && U({ | ||
inst: O | ||
b.value = m, b.getSnapshot = h, f(b) && K({ | ||
inst: b | ||
}); | ||
}, [w, m, h]), p(function() { | ||
f(O) && U({ | ||
inst: O | ||
f(b) && K({ | ||
inst: b | ||
}); | ||
var he = function() { | ||
f(O) && U({ | ||
inst: O | ||
var ve = function() { | ||
f(b) && K({ | ||
inst: b | ||
}); | ||
}; | ||
return w(he); | ||
return w(ve); | ||
}, [w]), c(m), m; | ||
@@ -638,10 +632,10 @@ } | ||
} | ||
var u = typeof window < "u" && typeof window.document < "u" && typeof window.document.createElement < "u", v = !u, L = v ? a : d, k = e.useSyncExternalStore !== void 0 ? e.useSyncExternalStore : L; | ||
Re.useSyncExternalStore = k, typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error()); | ||
}()), Re; | ||
var u = typeof window < "u" && typeof window.document < "u" && typeof window.document.createElement < "u", v = !u, L = v ? a : d, A = e.useSyncExternalStore !== void 0 ? e.useSyncExternalStore : L; | ||
Le.useSyncExternalStore = A, typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error()); | ||
}()), Le; | ||
} | ||
(function(e) { | ||
process.env.NODE_ENV === "production" ? e.exports = Xt() : e.exports = Zt(); | ||
})(Qt); | ||
const er = /* @__PURE__ */ Yt(re); | ||
process.env.NODE_ENV === "production" ? e.exports = Jt() : e.exports = Qt(); | ||
})(Yt); | ||
const Xt = /* @__PURE__ */ qt(re); | ||
/** | ||
@@ -656,7 +650,7 @@ * @license React | ||
*/ | ||
var Xe; | ||
function tr() { | ||
if (Xe) | ||
var Qe; | ||
function Zt() { | ||
if (Qe) | ||
return Oe; | ||
Xe = 1; | ||
Qe = 1; | ||
var e = P, t = re; | ||
@@ -676,4 +670,4 @@ function r(c, S) { | ||
function L(m) { | ||
if (!k) { | ||
if (k = !0, w = m, m = d(m), f !== void 0 && u.hasValue) { | ||
if (!A) { | ||
if (A = !0, w = m, m = d(m), f !== void 0 && u.hasValue) { | ||
var y = u.value; | ||
@@ -690,3 +684,3 @@ if (f(y, m)) | ||
} | ||
var k = !1, w, h, _ = l === void 0 ? null : l; | ||
var A = !1, w, h, _ = l === void 0 ? null : l; | ||
return [function() { | ||
@@ -704,3 +698,3 @@ return L(S()); | ||
} | ||
var ke = {}; | ||
var Re = {}; | ||
/** | ||
@@ -715,5 +709,5 @@ * @license React | ||
*/ | ||
var Ze; | ||
function rr() { | ||
return Ze || (Ze = 1, process.env.NODE_ENV !== "production" && function() { | ||
var Xe; | ||
function er() { | ||
return Xe || (Xe = 1, process.env.NODE_ENV !== "production" && function() { | ||
typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(new Error()); | ||
@@ -732,25 +726,25 @@ var e = P, t = re; | ||
var L = p(function() { | ||
var _ = !1, m, y, E = function(q) { | ||
var _ = !1, m, y, E = function(U) { | ||
if (!_) { | ||
_ = !0, m = q; | ||
var me = f(q); | ||
_ = !0, m = U; | ||
var he = f(U); | ||
if (a !== void 0 && v.hasValue) { | ||
var Se = v.value; | ||
if (a(Se, me)) | ||
return y = Se, Se; | ||
var me = v.value; | ||
if (a(me, he)) | ||
return y = me, me; | ||
} | ||
return y = me, me; | ||
return y = he, he; | ||
} | ||
var wt = m, ge = y; | ||
if (n(wt, q)) | ||
return ge; | ||
var ye = f(q); | ||
return a !== void 0 && a(ge, ye) ? ge : (m = q, y = ye, ye); | ||
}, O = d === void 0 ? null : d, U = function() { | ||
var yt = m, Se = y; | ||
if (n(yt, U)) | ||
return Se; | ||
var ge = f(U); | ||
return a !== void 0 && a(Se, ge) ? Se : (m = U, y = ge, ge); | ||
}, b = d === void 0 ? null : d, K = function() { | ||
return E(l()); | ||
}, he = O === null ? void 0 : function() { | ||
return E(O()); | ||
}, ve = b === null ? void 0 : function() { | ||
return E(b()); | ||
}; | ||
return [U, he]; | ||
}, [l, d, f, a]), k = L[0], w = L[1], h = i(S, k, w); | ||
return [K, ve]; | ||
}, [l, d, f, a]), A = L[0], w = L[1], h = i(S, A, w); | ||
return o(function() { | ||
@@ -760,42 +754,42 @@ v.hasValue = !0, v.value = h; | ||
} | ||
ke.useSyncExternalStoreWithSelector = c, typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error()); | ||
}()), ke; | ||
Re.useSyncExternalStoreWithSelector = c, typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error()); | ||
}()), Re; | ||
} | ||
(function(e) { | ||
process.env.NODE_ENV === "production" ? e.exports = tr() : e.exports = rr(); | ||
})(Jt); | ||
function nr(e, t, r, n) { | ||
let i = [It.run({ fn: (s) => t(s) })]; | ||
process.env.NODE_ENV === "production" ? e.exports = Zt() : e.exports = er(); | ||
})(Ft); | ||
function tr(e, t, r, n) { | ||
let i = [Mt.run({ fn: (s) => t(s) })]; | ||
if (n && i.unshift(n), r) { | ||
let s = B({ node: i }), o = e.graphite.id, p = r.additionalLinks, g = p[o] || []; | ||
let s = M({ node: i }), o = e.graphite.id, p = r.additionalLinks, g = p[o] || []; | ||
return p[o] = g, g.push(s), () => { | ||
let c = g.indexOf(s); | ||
c !== -1 && g.splice(c, 1), Ce(s); | ||
c !== -1 && g.splice(c, 1), Pe(s); | ||
}; | ||
} | ||
{ | ||
let s = B({ node: i, parent: [e], family: { owners: e } }); | ||
let s = M({ node: i, parent: [e], family: { owners: e } }); | ||
return () => { | ||
Ce(s); | ||
Pe(s); | ||
}; | ||
} | ||
} | ||
function or(e, t) { | ||
At.store(e) || _t("expect useStore argument to be a store"); | ||
let r = P.useCallback((i) => nr(e, i, t), [e, t]), n = P.useCallback(() => ur(e, t), [e, t]); | ||
return sr(r, n, n); | ||
function rr(e, t) { | ||
Rt.store(e) || gt("expect useStore argument to be a store"); | ||
let r = P.useCallback((i) => tr(e, i, t), [e, t]), n = P.useCallback(() => ar(e, t), [e, t]); | ||
return ir(r, n, n); | ||
} | ||
function ir(e) { | ||
let t = P.useContext(lr); | ||
return e && !t && _t("No scope found, consider adding <Provider> to app root"), t; | ||
function nr(e) { | ||
let t = P.useContext(sr); | ||
return e && !t && gt("No scope found, consider adding <Provider> to app root"), t; | ||
} | ||
function ar(e, t) { | ||
return or(e, ir(t == null ? void 0 : t.forceScope)); | ||
function or(e, t) { | ||
return rr(e, nr(t == null ? void 0 : t.forceScope)); | ||
} | ||
let _t = (e) => { | ||
let gt = (e) => { | ||
throw Error(e); | ||
}; | ||
typeof window < "u" ? P.useLayoutEffect : P.useEffect; | ||
const { useSyncExternalStore: sr } = er, ur = (e, t) => t ? t.getState(e) : e.getState(), lr = P.createContext(null), cr = (e, t, r) => { | ||
tt(() => { | ||
const { useSyncExternalStore: ir } = Xt, ar = (e, t) => t ? t.getState(e) : e.getState(), sr = P.createContext(null), ur = (e, t, r) => { | ||
et(() => { | ||
const n = (i) => { | ||
@@ -806,12 +800,12 @@ i instanceof KeyboardEvent && i.key === r ? t(i) : r || t(i); | ||
}, [e, r, t]); | ||
}, et = (e, t, r) => { | ||
tt(() => (M.addEventListener(e, t, r), () => M.removeEventListener(r)), [e, r, t]); | ||
}, gr = (e, ...t) => { | ||
et("init", (p) => { | ||
console.log("[blum]: initialized", p), o || rt(e); | ||
}, Ze = (e, t, r) => { | ||
et(() => (J.addEventListener(e, t, r), () => J.removeEventListener(r)), [e, r, t]); | ||
}, mr = (e, ...t) => { | ||
Ze("init", (p) => { | ||
console.log("[blum]: initialized", p), o || J.historyPush(e); | ||
}, 1); | ||
const { activeView: r, activePanel: n, activeModal: i, activePopout: s, isRouteInit: o } = fr(); | ||
cr("popstate", async () => { | ||
const { activeView: r, activePanel: n, activeModal: i, activePopout: s, isRouteInit: o } = lr(); | ||
ur("popstate", async () => { | ||
o && (await (async () => { | ||
M.fireChangeStateEvent(); | ||
J.fireChangeStateEvent(); | ||
const { view: g, panel: c, modal: S, popout: l } = window.history.state ?? { | ||
@@ -833,25 +827,24 @@ view: void 0, | ||
})(), window.isBackFromBrowser = !0); | ||
}), et("changestate", (p) => { | ||
}), Ze("changestate", (p) => { | ||
if (console.log("[blum]: state changed", p), p) { | ||
const { view: g, panel: c, modal: S, popout: l } = p; | ||
g && c && mt({ view: g, panel: c }), St(S), gt(l), o || yt(); | ||
g && c && vt({ view: g, panel: c }), ht(S), mt(l), o || St(); | ||
} | ||
}, 2); | ||
}, fr = () => ar(Ft), yr = (e) => e, _r = (e, t) => (r, n) => ["view", "panel", "modal", "popout"].some((s) => r[s] === e && r[s] !== n[s]) && window.isBackFromBrowser ? (t && t(r, n), rt(r), !1) : !0; | ||
}, lr = () => or(Ut), Sr = (e) => e, gr = (e, t) => (r, n) => ["view", "panel", "modal", "popout"].some((s) => r[s] === e && r[s] !== n[s]) && window.isBackFromBrowser ? (t && t(r, n), J.historyPush(r), !1) : !0; | ||
export { | ||
St as _setActiveModal, | ||
Ut as _setActivePanel, | ||
gt as _setActivePopout, | ||
Kt as _setActiveView, | ||
pr as back, | ||
M as blumRouter, | ||
_r as createDisableBackBrowserRouteMiddleware, | ||
yr as createRouteMiddleware, | ||
rt as historyPush, | ||
mr as setActiveModal, | ||
hr as setActivePanel, | ||
Sr as setActivePopout, | ||
vr as setActiveViewPanel, | ||
gr as useInitRouter, | ||
fr as useRouter | ||
ht as _setActiveModal, | ||
Ht as _setActivePanel, | ||
mt as _setActivePopout, | ||
Gt as _setActiveView, | ||
fr as back, | ||
J as blumRouter, | ||
gr as createDisableBackBrowserRouteMiddleware, | ||
Sr as createRouteMiddleware, | ||
vr as setActiveModal, | ||
pr as setActivePanel, | ||
hr as setActivePopout, | ||
dr as setActiveViewPanel, | ||
mr as useInitRouter, | ||
lr as useRouter | ||
}; |
@@ -0,1 +1,2 @@ | ||
export declare const back: () => void; | ||
export declare const setActiveViewPanel: (routes: { | ||
@@ -2,0 +3,0 @@ view: string; |
{ | ||
"name": "@blumjs/router", | ||
"version": "6.4.0", | ||
"version": "6.5.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
60684
1020