@blumjs/router
Advanced tools
Comparing version 1.1.2 to 2.0.0
@@ -1,3 +0,4 @@ | ||
import { back, historyPush, setActiveModal, setActivePanel, setActivePopout, setActiveView, setRoutes, _setActiveModal, _setActivePopout } from "./router"; | ||
import { back, historyPush, setRoutes, _setActiveModal, _setActivePanel, _setActivePopout, _setActiveView } from "./router"; | ||
import { createDisableBackBrowserRouteMiddleware, createRouteMiddleware, useInitRouter, useRouter } from "./useRoutes"; | ||
export { useRouter, useInitRouter, createDisableBackBrowserRouteMiddleware, createRouteMiddleware, setActiveModal, setActiveView, setActivePanel, setActivePopout, back, _setActiveModal, _setActivePopout, setRoutes, historyPush, }; | ||
import { setActiveModal, setActivePanel, setActivePopout, setActiveView } from "./virtual-router"; | ||
export { useRouter, useInitRouter, createDisableBackBrowserRouteMiddleware, createRouteMiddleware, setActiveModal, setActiveView, setActivePanel, setActivePopout, back, _setActiveView, _setActivePanel, _setActiveModal, _setActivePopout, setRoutes, historyPush, }; |
@@ -1,3 +0,3 @@ | ||
import T, { useEffect as ke } from "react"; | ||
function Ot(e, t) { | ||
import T, { useEffect as Ve } from "react"; | ||
function At(e, t) { | ||
for (let n in e) | ||
@@ -9,72 +9,72 @@ t(e[n], n); | ||
} | ||
function $(e, t) { | ||
function P(e, t) { | ||
if (!e) | ||
throw Error(t); | ||
} | ||
function N({ node: e = [], from: t, source: n, parent: r = t || n, to: a, target: u, child: o = a || u, scope: m = {}, meta: y = {}, family: d = { type: "regular" }, regional: S } = {}) { | ||
let c = ue(r), p = ue(d.links), i = ue(d.owners), l = []; | ||
k(e, (f) => f && D(l, f)); | ||
let s = { id: Mt(), seq: l, next: ue(o), meta: y, scope: m, family: { type: d.type || "crosslink", links: p, owners: i } }; | ||
return k(p, (f) => D(me(f), s)), k(i, (f) => D(ve(f), s)), k(c, (f) => D(f.next, s)), S && G && Be(X(G), [s]), s; | ||
function $({ node: e = [], from: t, source: n, parent: r = t || n, to: u, target: s, child: a = u || s, scope: m = {}, meta: g = {}, family: p = { type: "regular" }, regional: S } = {}) { | ||
let c = le(r), d = le(p.links), o = le(p.owners), i = []; | ||
k(e, (f) => f && M(i, f)); | ||
let l = { id: Pt(), seq: i, next: le(a), meta: g, scope: m, family: { type: p.type || "crosslink", links: d, owners: o } }; | ||
return k(d, (f) => M(me(f), l)), k(o, (f) => M(he(f), l)), k(c, (f) => M(f.next, l)), S && W && je(X(W), [l]), l; | ||
} | ||
function ee(e, t, n) { | ||
let r, a = M, u = null, o = O; | ||
if (e.target && (t = e.params, n = e.defer, r = e.meta, a = "page" in e ? e.page : a, e.stack && (u = e.stack), o = I(e) || o, e = e.target), o && O && o !== O && (O = null), Array.isArray(e)) | ||
for (let l = 0; l < e.length; l++) | ||
P("pure", a, C(e[l]), u, t[l], o, r); | ||
let r, u = D, s = null, a = O; | ||
if (e.target && (t = e.params, n = e.defer, r = e.meta, u = "page" in e ? e.page : u, e.stack && (s = e.stack), a = I(e) || a, e = e.target), a && O && a !== O && (O = null), Array.isArray(e)) | ||
for (let i = 0; i < e.length; i++) | ||
B("pure", u, C(e[i]), s, t[i], a, r); | ||
else | ||
P("pure", a, C(e), u, t, o, r); | ||
if (n && !le) | ||
B("pure", u, C(e), s, t, a, r); | ||
if (n && !ue) | ||
return; | ||
let m, y, d, S, c, p, i = { isRoot: le, currentPage: M, scope: O, isWatch: ce, isPure: fe }; | ||
le = 0; | ||
let m, g, p, S, c, d, o = { isRoot: ue, currentPage: D, scope: O, isWatch: ce, isPure: fe }; | ||
ue = 0; | ||
e: | ||
for (; S = Wt(); ) { | ||
let { idx: l, stack: s, type: f } = S; | ||
d = s.node, M = c = s.page, O = I(s), c ? p = c.reg : O && (p = O.reg); | ||
let b = !!c, R = !!O, w = { fail: 0, scope: d.scope }; | ||
m = y = 0; | ||
for (let v = l; v < d.seq.length && !m; v++) { | ||
let _ = d.seq[v]; | ||
if (_.order) { | ||
let { priority: h, barrierID: g } = _.order, E = g ? c ? `${c.fullID}_${g}` : g : 0; | ||
if (v !== l || f !== h) { | ||
g ? Oe.has(E) || (Oe.add(E), Ve(v, s, h, g)) : Ve(v, s, h); | ||
for (; S = Kt(); ) { | ||
let { idx: i, stack: l, type: f } = S; | ||
p = l.node, D = c = l.page, O = I(l), c ? d = c.reg : O && (d = O.reg); | ||
let b = !!c, R = !!O, w = { fail: 0, scope: p.scope }; | ||
m = g = 0; | ||
for (let v = i; v < p.seq.length && !m; v++) { | ||
let y = p.seq[v]; | ||
if (y.order) { | ||
let { priority: h, barrierID: _ } = y.order, E = _ ? c ? `${c.fullID}_${_}` : _ : 0; | ||
if (v !== i || f !== h) { | ||
_ ? be.has(E) || (be.add(E), Me(v, l, h, _)) : Me(v, l, h); | ||
continue e; | ||
} | ||
g && Oe.delete(E); | ||
_ && be.delete(E); | ||
} | ||
switch (_.type) { | ||
switch (y.type) { | ||
case "mov": { | ||
let g, E = _.data; | ||
let _, E = y.data; | ||
switch (E.from) { | ||
case re: | ||
g = X(s); | ||
_ = X(l); | ||
break; | ||
case "a": | ||
case "b": | ||
g = s[E.from]; | ||
_ = l[E.from]; | ||
break; | ||
case "value": | ||
g = E.store; | ||
_ = E.store; | ||
break; | ||
case "store": | ||
if (p && !p[E.store.id]) | ||
if (d && !d[E.store.id]) | ||
if (b) { | ||
let L = ct(c, E.store.id); | ||
s.page = c = L, L ? p = L.reg : R ? (F(O, E.store, 0, 1, E.softRead), p = O.reg) : p = void 0; | ||
let L = pt(c, E.store.id); | ||
l.page = c = L, L ? d = L.reg : R ? (F(O, E.store, 0, 1, E.softRead), d = O.reg) : d = void 0; | ||
} else | ||
R && F(O, E.store, 0, 1, E.softRead); | ||
g = st(p && p[E.store.id] || E.store); | ||
_ = dt(d && d[E.store.id] || E.store); | ||
} | ||
switch (E.to) { | ||
case re: | ||
s.value = g; | ||
l.value = _; | ||
break; | ||
case "a": | ||
case "b": | ||
s[E.to] = g; | ||
l[E.to] = _; | ||
break; | ||
case "store": | ||
Ht(c, O, d, E.target).current = g; | ||
Yt(c, O, p, E.target).current = _; | ||
} | ||
@@ -84,20 +84,20 @@ break; | ||
case "compute": | ||
let h = _.data; | ||
let h = y.data; | ||
if (h.fn) { | ||
ce = x(d, "op") === "watch", fe = h.pure; | ||
let g = h.safe ? (0, h.fn)(X(s), w.scope, s) : Kt(w, h.fn, s); | ||
h.filter ? y = !g : s.value = g, ce = i.isWatch, fe = i.isPure; | ||
ce = x(p, "op") === "watch", fe = h.pure; | ||
let _ = h.safe ? (0, h.fn)(X(l), w.scope, l) : Qt(w, h.fn, l); | ||
h.filter ? g = !_ : l.value = _, ce = o.isWatch, fe = o.isPure; | ||
} | ||
} | ||
m = w.fail || y; | ||
m = w.fail || g; | ||
} | ||
if (!m) { | ||
let v = X(s), _ = I(s); | ||
if (k(d.next, (h) => { | ||
P("child", c, h, s, v, _); | ||
}), _) { | ||
x(d, "needFxCounter") && P("child", c, _.fxCount, s, v, _), x(d, "storeChange") && P("child", c, _.storeChange, s, v, _), x(d, "warnSerialize") && P("child", c, _.warnSerializeNode, s, v, _); | ||
let h = _.additionalLinks[d.id]; | ||
h && k(h, (g) => { | ||
P("child", c, g, s, v, _); | ||
let v = X(l), y = I(l); | ||
if (k(p.next, (h) => { | ||
B("child", c, h, l, v, y); | ||
}), y) { | ||
x(p, "needFxCounter") && B("child", c, y.fxCount, l, v, y), x(p, "storeChange") && B("child", c, y.storeChange, l, v, y), x(p, "warnSerialize") && B("child", c, y.warnSerializeNode, l, v, y); | ||
let h = y.additionalLinks[p.id]; | ||
h && k(h, (_) => { | ||
B("child", c, _, l, v, y); | ||
}); | ||
@@ -107,15 +107,15 @@ } | ||
} | ||
le = i.isRoot, M = i.currentPage, O = I(i); | ||
ue = o.isRoot, D = o.currentPage, O = I(o); | ||
} | ||
function bt(e, t) { | ||
let n, r, a = e; | ||
function xt(e, t) { | ||
let n, r, u = e; | ||
if (t) { | ||
let u = xt(t); | ||
e.length === 0 ? (n = u.path, r = u.fullName) : (n = u.path.concat([e]), r = u.fullName.length === 0 ? e : u.fullName + "/" + e); | ||
let s = Mt(t); | ||
e.length === 0 ? (n = s.path, r = s.fullName) : (n = s.path.concat([e]), r = s.fullName.length === 0 ? e : s.fullName + "/" + e); | ||
} else | ||
n = e.length === 0 ? [] : [e], r = e; | ||
return { shortName: a, fullName: r, path: n }; | ||
return { shortName: u, fullName: r, path: n }; | ||
} | ||
function Q(e, ...t) { | ||
let n = ut(); | ||
let n = ct(); | ||
if (n) { | ||
@@ -128,55 +128,55 @@ let r = n.handlers[e]; | ||
function A(e, t) { | ||
let n = K({ or: t, and: typeof e == "string" ? { name: e } : e }), r = (o, ...m) => (ne(!x(r, "derived"), "call of derived event", "createEvent"), ne(!fe, "unit call from pure function", "operators like sample"), M ? ((y, d, S, c) => { | ||
let p = M, i = null; | ||
if (d) | ||
for (i = M; i && i.template !== d; ) | ||
i = B(i); | ||
Je(i); | ||
let l = y.create(S, c); | ||
return Je(p), l; | ||
})(r, a, o, m) : r.create(o, m)), a = ut(), u = Object.assign(r, { graphite: N({ meta: pt("event", r, n), regional: 1 }), create: (o) => (ee({ target: r, params: o, scope: O }), o), watch: (o) => dt(r, o), map: (o) => be(r, te, o, [q()]), filter: (o) => be(r, "filter", o.fn ? o : o.fn, [q(ze, 1)]), filterMap: (o) => be(r, "filterMap", o, [q(), H((m) => !j(m), 1)]), prepend(o) { | ||
let m = A("* → " + r.shortName, { parent: B(r) }); | ||
return Q("eventPrepend", C(m)), Ge(m, r, [q()], "prepend", o), Ut(r, m), m; | ||
let n = K({ or: t, and: typeof e == "string" ? { name: e } : e }), r = (a, ...m) => (ne(!x(r, "derived"), "call of derived event", "createEvent"), ne(!fe, "unit call from pure function", "operators like sample"), D ? ((g, p, S, c) => { | ||
let d = D, o = null; | ||
if (p) | ||
for (o = D; o && o.template !== p; ) | ||
o = N(o); | ||
Xe(o); | ||
let i = g.create(S, c); | ||
return Xe(d), i; | ||
})(r, u, a, m) : r.create(a, m)), u = ct(), s = Object.assign(r, { graphite: $({ meta: ht("event", r, n), regional: 1 }), create: (a) => (ee({ target: r, params: a, scope: O }), a), watch: (a) => mt(r, a), map: (a) => Re(r, te, a, [q()]), filter: (a) => Re(r, "filter", a.fn ? a : a.fn, [q(qe, 1)]), filterMap: (a) => Re(r, "filterMap", a, [q(), G((m) => !j(m), 1)]), prepend(a) { | ||
let m = A("* → " + r.shortName, { parent: N(r) }); | ||
return Q("eventPrepend", C(m)), Fe(m, r, [q()], "prepend", a), Xt(r, m), m; | ||
} }); | ||
return n != null && n.domain && n.domain.hooks.event(u), u; | ||
return n != null && n.domain && n.domain.hooks.event(s), s; | ||
} | ||
function He(e, t, n, r) { | ||
return $t(n, t, "first argument"), $(V(r), "second argument should be a function"), ne(!x(e, "derived"), `${t} in derived store`, `${t} in store created via createStore`), k(Array.isArray(n) ? n : [n], (a) => { | ||
e.off(a), pe(e).set(a, ft(mt(a, e, "on", Nt, r))); | ||
function Ke(e, t, n, r) { | ||
return zt(n, t, "first argument"), P(V(r), "second argument should be a function"), ne(!x(e, "derived"), `${t} in derived store`, `${t} in store created via createStore`), k(Array.isArray(n) ? n : [n], (u) => { | ||
e.off(u), pe(e).set(u, vt(St(u, e, "on", jt, r))); | ||
}), e; | ||
} | ||
function $e(e, t) { | ||
let n = K(t), r = jt(e), a = A({ named: "updates", derived: 1 }); | ||
function ve(e, t) { | ||
let n = K(t), r = Gt(e), u = A({ named: "updates", derived: 1 }); | ||
Q("storeBase", r); | ||
let u = r.id, o = { subscribers: /* @__PURE__ */ new Map(), updates: a, defaultState: e, stateRef: r, getState() { | ||
let l, s = r; | ||
if (M) { | ||
let f = M; | ||
for (; f && !f.reg[u]; ) | ||
f = B(f); | ||
f && (l = f); | ||
let s = r.id, a = { subscribers: /* @__PURE__ */ new Map(), updates: u, defaultState: e, stateRef: r, getState() { | ||
let i, l = r; | ||
if (D) { | ||
let f = D; | ||
for (; f && !f.reg[s]; ) | ||
f = N(f); | ||
f && (i = f); | ||
} | ||
return !l && O && (F(O, r, 1), l = O), l && (s = l.reg[u]), st(s); | ||
}, setState: (l) => ee({ target: o, params: l, defer: 1, scope: O }), reset: (...l) => (k(l, (s) => He(o, ".reset", s, () => o.defaultState)), o), on: (l, s) => He(o, ".on", l, s), off(l) { | ||
let s = pe(o).get(l); | ||
return s && (s(), pe(o).delete(l)), o; | ||
}, map(l, s) { | ||
return !i && O && (F(O, r, 1), i = O), i && (l = i.reg[s]), dt(l); | ||
}, setState: (i) => ee({ target: a, params: i, defer: 1, scope: O }), reset: (...i) => (k(i, (l) => Ke(a, ".reset", l, () => a.defaultState)), a), on: (i, l) => Ke(a, ".on", i, l), off(i) { | ||
let l = pe(a).get(i); | ||
return l && (l(), pe(a).delete(i)), a; | ||
}, map(i, l) { | ||
let f, b; | ||
z(l) && (f = l, l = l.fn), ne(j(s), "second argument of store.map", "updateFilter"); | ||
let R = o.getState(); | ||
j(R) || (b = l(R, s)); | ||
let w = $e(b, { name: `${o.shortName} → *`, derived: 1, and: f }), v = mt(o, w, te, Ue, l); | ||
return qt(de(w), { type: te, fn: l, from: r }), de(w).noInit = 1, Q("storeMap", r, v), w; | ||
}, watch(l, s) { | ||
if (!s || !Ne(l)) { | ||
let f = dt(o, l); | ||
return Q("storeWatch", r, l) || l(o.getState()), f; | ||
z(i) && (f = i, i = i.fn), ne(j(l), "second argument of store.map", "updateFilter"); | ||
let R = a.getState(); | ||
j(R) || (b = i(R, l)); | ||
let w = ve(b, { name: `${a.shortName} → *`, derived: 1, and: f }), v = St(a, w, te, Je, i); | ||
return Ft(de(w), { type: te, fn: i, from: r }), de(w).noInit = 1, Q("storeMap", r, v), w; | ||
}, watch(i, l) { | ||
if (!l || !Ne(i)) { | ||
let f = mt(a, i); | ||
return Q("storeWatch", r, i) || i(a.getState()), f; | ||
} | ||
return $(V(s), "second argument should be a function"), l.watch((f) => s(o.getState(), f)); | ||
} }, m = pt("store", o, n), y = o.defaultConfig.updateFilter; | ||
o.graphite = N({ scope: { state: r, fn: y }, node: [H((l, s, f) => (f.scope && !f.scope.reg[r.id] && (f.b = 1), l)), Bt(r), H((l, s, { a: f, b }) => !j(l) && (l !== f || b), 1), y && q(Ue, 1), Se({ from: re, target: r })], child: a, meta: m, regional: 1 }); | ||
let d = x(o, "serialize"), S = x(o, "derived"), c = d === "ignore", p = !d || c ? 0 : d, i = x(o, "sid"); | ||
return i && (c || Z(o, "storeChange", 1), r.sid = i, p && (r.meta = { ...r == null ? void 0 : r.meta, serialize: p })), i || c || S || Z(o, "warnSerialize", 1), $(S || !j(e), "current state can't be undefined, use null instead"), Be(o, [a]), n != null && n.domain && n.domain.hooks.store(o), S || (o.reinit = A(), o.reset(o.reinit)), o; | ||
return P(V(l), "second argument should be a function"), i.watch((f) => l(a.getState(), f)); | ||
} }, m = ht("store", a, n), g = a.defaultConfig.updateFilter; | ||
a.graphite = $({ scope: { state: r, fn: g }, node: [G((i, l, f) => (f.scope && !f.scope.reg[r.id] && (f.b = 1), i)), Ht(r), G((i, l, { a: f, b }) => !j(i) && (i !== f || b), 1), g && q(Je, 1), _e({ from: re, target: r })], child: u, meta: m, regional: 1 }); | ||
let p = x(a, "serialize"), S = x(a, "derived"), c = p === "ignore", d = !p || c ? 0 : p, o = x(a, "sid"); | ||
return o && (c || Z(a, "storeChange", 1), r.sid = o, d && (r.meta = { ...r == null ? void 0 : r.meta, serialize: d })), o || c || S || Z(a, "warnSerialize", 1), P(S || !j(e), "current state can't be undefined, use null instead"), je(a, [u]), n != null && n.domain && n.domain.hooks.store(a), S || (a.reinit = A(), a.reset(a.reinit)), a; | ||
} | ||
function Rt() { | ||
function kt() { | ||
let e = {}; | ||
@@ -188,74 +188,74 @@ return e.req = new Promise((t, n) => { | ||
} | ||
function ot(e, t) { | ||
let n = K(V(e) ? { handler: e } : e, t), r = A(V(e) ? { handler: e } : e, t), a = C(r); | ||
Z(a, "op", r.kind = "effect"), r.use = (i) => ($(V(i), ".use argument should be a function"), S.scope.handler = i, r), r.use.getCurrent = () => S.scope.handler; | ||
let u = r.finally = A({ named: "finally", derived: 1 }), o = r.done = u.filterMap({ named: "done", fn({ status: i, params: l, result: s }) { | ||
if (i === "done") | ||
return { params: l, result: s }; | ||
} }), m = r.fail = u.filterMap({ named: "fail", fn({ status: i, params: l, error: s }) { | ||
if (i === "fail") | ||
return { params: l, error: s }; | ||
} }), y = r.doneData = o.map({ named: "doneData", fn: ({ result: i }) => i }), d = r.failData = m.map({ named: "failData", fn: ({ error: i }) => i }), S = N({ scope: { handlerId: x(a, "sid"), handler: r.defaultConfig.handler || (() => $(0, `no handler used in ${r.getType()}`)) }, node: [H((i, l, s) => { | ||
let f = l, b = f.handler; | ||
if (I(s)) { | ||
let R = I(s).handlers[f.handlerId]; | ||
function lt(e, t) { | ||
let n = K(V(e) ? { handler: e } : e, t), r = A(V(e) ? { handler: e } : e, t), u = C(r); | ||
Z(u, "op", r.kind = "effect"), r.use = (o) => (P(V(o), ".use argument should be a function"), S.scope.handler = o, r), r.use.getCurrent = () => S.scope.handler; | ||
let s = r.finally = A({ named: "finally", derived: 1 }), a = r.done = s.filterMap({ named: "done", fn({ status: o, params: i, result: l }) { | ||
if (o === "done") | ||
return { params: i, result: l }; | ||
} }), m = r.fail = s.filterMap({ named: "fail", fn({ status: o, params: i, error: l }) { | ||
if (o === "fail") | ||
return { params: i, error: l }; | ||
} }), g = r.doneData = a.map({ named: "doneData", fn: ({ result: o }) => o }), p = r.failData = m.map({ named: "failData", fn: ({ error: o }) => o }), S = $({ scope: { handlerId: x(u, "sid"), handler: r.defaultConfig.handler || (() => P(0, `no handler used in ${r.getType()}`)) }, node: [G((o, i, l) => { | ||
let f = i, b = f.handler; | ||
if (I(l)) { | ||
let R = I(l).handlers[f.handlerId]; | ||
R && (b = R); | ||
} | ||
return i.handler = b, i; | ||
}, 0, 1), H(({ params: i, req: l, handler: s, args: f = [i] }, b, R) => { | ||
let w = Jt(R), v = Xe(i, l, 1, u, R, w), _ = Xe(i, l, 0, u, R, w), [h, g] = Yt(s, _, f); | ||
h && (z(g) && V(g.then) ? g.then(v, _) : v(g)); | ||
return o.handler = b, o; | ||
}, 0, 1), G(({ params: o, req: i, handler: l, args: f = [o] }, b, R) => { | ||
let w = er(R), v = et(o, i, 1, s, R, w), y = et(o, i, 0, s, R, w), [h, _] = Zt(l, y, f); | ||
h && (z(_) && V(_.then) ? _.then(v, y) : v(_)); | ||
}, 0, 1)], meta: { op: "fx", fx: "runner" } }); | ||
a.scope.runner = S, D(a.seq, H((i, { runner: l }, s) => { | ||
let f = B(s) ? { params: i, req: { rs(b) { | ||
u.scope.runner = S, M(u.seq, G((o, { runner: i }, l) => { | ||
let f = N(l) ? { params: o, req: { rs(b) { | ||
}, rj(b) { | ||
} } } : i; | ||
return s.meta || (s.meta = { fxID: Tt() }), ee({ target: l, params: f, defer: 1, scope: I(s), meta: s.meta }), f.params; | ||
}, 0, 1)), r.create = (i) => { | ||
let l = Rt(), s = { params: i, req: l }; | ||
} } } : o; | ||
return l.meta || (l.meta = { fxID: $t() }), ee({ target: i, params: f, defer: 1, scope: I(l), meta: l.meta }), f.params; | ||
}, 0, 1)), r.create = (o) => { | ||
let i = kt(), l = { params: o, req: i }; | ||
if (O && !ce) { | ||
let f = O; | ||
l.req.finally(() => { | ||
Gt(f); | ||
i.req.finally(() => { | ||
Ut(f); | ||
}).catch(() => { | ||
}); | ||
} | ||
return ee({ target: r, params: s, scope: O }), l.req; | ||
return ee({ target: r, params: l, scope: O }), i.req; | ||
}; | ||
let c = r.inFlight = $e(0, { serialize: "ignore" }).on(r, (i) => i + 1).on(u, (i) => i - 1).map({ fn: (i) => i, named: "inFlight" }); | ||
Z(u, "needFxCounter", "dec"), Z(r, "needFxCounter", 1); | ||
let p = r.pending = c.map({ fn: (i) => i > 0, named: "pending" }); | ||
return Be(r, [u, o, m, y, d, p, c]), n != null && n.domain && n.domain.hooks.effect(r), r; | ||
let c = r.inFlight = ve(0, { serialize: "ignore" }).on(r, (o) => o + 1).on(s, (o) => o - 1).map({ fn: (o) => o, named: "inFlight" }); | ||
Z(s, "needFxCounter", "dec"), Z(r, "needFxCounter", 1); | ||
let d = r.pending = c.map({ fn: (o) => o > 0, named: "pending" }); | ||
return je(r, [s, a, m, g, p, d, c]), n != null && n.domain && n.domain.hooks.effect(r), r; | ||
} | ||
let Lt = typeof Symbol < "u" && Symbol.observable || "@@observable", te = "map", re = "stack", C = (e) => e.graphite || e, me = (e) => e.family.owners, ve = (e) => e.family.links, de = (e) => e.stateRef, X = (e) => e.value, pe = (e) => e.subscribers, B = (e) => e.parent, I = (e) => e.scope, x = (e, t) => C(e).meta[t], Z = (e, t, n) => C(e).meta[t] = n, xt = (e) => e.compositeName, Ne = (e) => (V(e) || z(e)) && "kind" in e; | ||
let Vt = typeof Symbol < "u" && Symbol.observable || "@@observable", te = "map", re = "stack", C = (e) => e.graphite || e, me = (e) => e.family.owners, he = (e) => e.family.links, de = (e) => e.stateRef, X = (e) => e.value, pe = (e) => e.subscribers, N = (e) => e.parent, I = (e) => e.scope, x = (e, t) => C(e).meta[t], Z = (e, t, n) => C(e).meta[t] = n, Mt = (e) => e.compositeName, Ne = (e) => (V(e) || z(e)) && "kind" in e; | ||
const ie = (e) => (t) => Ne(t) && t.kind === e; | ||
let Pe = ie("store"), At = ie("event"), Fe = ie("effect"), at = ie("domain"), kt = ie("scope"); | ||
var Vt = { __proto__: null, unit: Ne, store: Pe, event: At, effect: Fe, domain: at, scope: kt, attached: (e) => Fe(e) && x(e, "attached") == 1 }; | ||
let ze = ie("store"), Dt = ie("event"), Ue = ie("effect"), ut = ie("domain"), Tt = ie("scope"); | ||
var Ct = { __proto__: null, unit: Ne, store: ze, event: Dt, effect: Ue, domain: ut, scope: Tt, attached: (e) => Ue(e) && x(e, "attached") == 1 }; | ||
let se = (e, t) => { | ||
let n = e.indexOf(t); | ||
n !== -1 && e.splice(n, 1); | ||
}, D = (e, t) => e.push(t), ne = (e, t, n) => !e && console.error(`${t} is deprecated${n ? `, use ${n} instead` : ""}`); | ||
const he = () => { | ||
}, M = (e, t) => e.push(t), ne = (e, t, n) => !e && console.error(`${t} is deprecated${n ? `, use ${n} instead` : ""}`); | ||
const Se = () => { | ||
let e = 0; | ||
return () => "" + ++e; | ||
}; | ||
let Dt = he(), it = he(), Mt = he(), Tt = he(), G = null, ut = () => G, Ct = (e) => (e && G && G.sidRoot && (e = `${G.sidRoot}|${e}`), e), Be = (e, t) => { | ||
let It = Se(), st = Se(), Pt = Se(), $t = Se(), W = null, ct = () => W, Bt = (e) => (e && W && W.sidRoot && (e = `${W.sidRoot}|${e}`), e), je = (e, t) => { | ||
let n = C(e); | ||
k(t, (r) => { | ||
let a = C(r); | ||
n.family.type !== "domain" && (a.family.type = "crosslink"), D(me(a), n), D(ve(n), a); | ||
let u = C(r); | ||
n.family.type !== "domain" && (u.family.type = "crosslink"), M(me(u), n), M(he(n), u); | ||
}); | ||
}, ue = (e = []) => (Array.isArray(e) ? e : [e]).flat().map(C), z = (e) => typeof e == "object" && e !== null, V = (e) => typeof e == "function", j = (e) => e === void 0, It = (e) => $(z(e) || V(e), "expect first argument be an object"); | ||
const Ke = (e, t, n, r) => $(!(!z(e) && !V(e) || !("family" in e) && !("graphite" in e)), `${t}: expect ${n} to be a unit (store, event or effect)${r}`); | ||
let $t = (e, t, n) => { | ||
Array.isArray(e) ? k(e, (r, a) => Ke(r, t, `${a} item of ${n}`, "")) : Ke(e, t, n, " or array of units"); | ||
}, Ue = (e, { fn: t }, { a: n }) => t(e, n), Nt = (e, { fn: t }, { a: n }) => t(n, e), ze = (e, { fn: t }) => t(e); | ||
const lt = (e, t, n, r) => { | ||
let a = { id: it(), type: e, data: t }; | ||
return n && (a.order = { priority: n }, r && (a.order.barrierID = ++Pt)), a; | ||
}, le = (e = []) => (Array.isArray(e) ? e : [e]).flat().map(C), z = (e) => typeof e == "object" && e !== null, V = (e) => typeof e == "function", j = (e) => e === void 0, Nt = (e) => P(z(e) || V(e), "expect first argument be an object"); | ||
const Ye = (e, t, n, r) => P(!(!z(e) && !V(e) || !("family" in e) && !("graphite" in e)), `${t}: expect ${n} to be a unit (store, event or effect)${r}`); | ||
let zt = (e, t, n) => { | ||
Array.isArray(e) ? k(e, (r, u) => Ye(r, t, `${u} item of ${n}`, "")) : Ye(e, t, n, " or array of units"); | ||
}, Je = (e, { fn: t }, { a: n }) => t(e, n), jt = (e, { fn: t }, { a: n }) => t(n, e), qe = (e, { fn: t }) => t(e); | ||
const ft = (e, t, n, r) => { | ||
let u = { id: st(), type: e, data: t }; | ||
return n && (u.order = { priority: n }, r && (u.order.barrierID = ++qt)), u; | ||
}; | ||
let Pt = 0, Se = ({ from: e = "store", store: t, target: n, to: r = n ? "store" : re, batch: a, priority: u }) => lt("mov", { from: e, store: t, to: r, target: n }, u, a), oe = ({ fn: e, batch: t, priority: n, safe: r = 0, filter: a = 0, pure: u = 0 }) => lt("compute", { fn: e, safe: r, filter: a, pure: u }, n, t), je = ({ fn: e }) => oe({ fn: e, priority: "effect" }), H = (e, t, n) => oe({ fn: e, safe: 1, filter: t, priority: n && "effect" }), Bt = (e, t, n) => Se({ store: e, to: t ? re : "a", priority: n && "sampler", batch: 1 }), q = (e = ze, t) => oe({ fn: e, pure: 1, filter: t }), zt = { mov: Se, compute: oe, filter: ({ fn: e, pure: t }) => oe({ fn: e, filter: 1, pure: t }), run: je }, jt = (e) => ({ id: it(), current: e }), st = ({ current: e }) => e, qt = (e, t) => { | ||
e.before || (e.before = []), D(e.before, t); | ||
}, W = null; | ||
const qe = (e, t) => { | ||
let qt = 0, _e = ({ from: e = "store", store: t, target: n, to: r = n ? "store" : re, batch: u, priority: s }) => ft("mov", { from: e, store: t, to: r, target: n }, s, u), ae = ({ fn: e, batch: t, priority: n, safe: r = 0, filter: u = 0, pure: s = 0 }) => ft("compute", { fn: e, safe: r, filter: u, pure: s }, n, t), He = ({ fn: e }) => ae({ fn: e, priority: "effect" }), G = (e, t, n) => ae({ fn: e, safe: 1, filter: t, priority: n && "effect" }), Ht = (e, t, n) => _e({ store: e, to: t ? re : "a", priority: n && "sampler", batch: 1 }), q = (e = qe, t) => ae({ fn: e, pure: 1, filter: t }), Wt = { mov: _e, compute: ae, filter: ({ fn: e, pure: t }) => ae({ fn: e, filter: 1, pure: t }), run: He }, Gt = (e) => ({ id: st(), current: e }), dt = ({ current: e }) => e, Ft = (e, t) => { | ||
e.before || (e.before = []), M(e.before, t); | ||
}, H = null; | ||
const We = (e, t) => { | ||
if (!e) | ||
@@ -266,15 +266,15 @@ return t; | ||
let n; | ||
return (e.v.type === t.v.type && e.v.id > t.v.id || De(e.v.type) > De(t.v.type)) && (n = e, e = t, t = n), n = qe(e.r, t), e.r = e.l, e.l = n, e; | ||
}, We = []; | ||
let Ye = 0; | ||
for (; Ye < 6; ) | ||
D(We, { first: null, last: null, size: 0 }), Ye += 1; | ||
const Wt = () => { | ||
return (e.v.type === t.v.type && e.v.id > t.v.id || De(e.v.type) > De(t.v.type)) && (n = e, e = t, t = n), n = We(e.r, t), e.r = e.l, e.l = n, e; | ||
}, Ge = []; | ||
let Qe = 0; | ||
for (; Qe < 6; ) | ||
M(Ge, { first: null, last: null, size: 0 }), Qe += 1; | ||
const Kt = () => { | ||
for (let e = 0; e < 6; e++) { | ||
let t = We[e]; | ||
let t = Ge[e]; | ||
if (t.size > 0) { | ||
if (e === 3 || e === 4) { | ||
t.size -= 1; | ||
let r = W.v; | ||
return W = qe(W.l, W.r), r; | ||
let r = H.v; | ||
return H = We(H.l, H.r), r; | ||
} | ||
@@ -286,5 +286,5 @@ t.size === 1 && (t.last = null); | ||
} | ||
}, P = (e, t, n, r, a, u, o) => Ve(0, { a: null, b: null, node: n, parent: r, value: a, page: t, scope: u, meta: o }, e), Ve = (e, t, n, r = 0) => { | ||
let a = De(n), u = We[a], o = { v: { idx: e, stack: t, type: n, id: r }, l: null, r: null }; | ||
a === 3 || a === 4 ? W = qe(W, o) : (u.size === 0 ? u.first = o : u.last.r = o, u.last = o), u.size += 1; | ||
}, B = (e, t, n, r, u, s, a) => Me(0, { a: null, b: null, node: n, parent: r, value: u, page: t, scope: s, meta: a }, e), Me = (e, t, n, r = 0) => { | ||
let u = De(n), s = Ge[u], a = { v: { idx: e, stack: t, type: n, id: r }, l: null, r: null }; | ||
u === 3 || u === 4 ? H = We(H, a) : (s.size === 0 ? s.first = a : s.last.r = a, s.last = a), s.size += 1; | ||
}, De = (e) => { | ||
@@ -307,12 +307,12 @@ switch (e) { | ||
} | ||
}, Oe = /* @__PURE__ */ new Set(); | ||
let O, le = 1, ce = 0, fe = 0, M = null, Gt = (e) => { | ||
}, be = /* @__PURE__ */ new Set(); | ||
let O, ue = 1, ce = 0, fe = 0, D = null, Ut = (e) => { | ||
O = e; | ||
}, Je = (e) => { | ||
M = e; | ||
}, Xe = (e) => { | ||
D = e; | ||
}; | ||
const ct = (e, t) => { | ||
const pt = (e, t) => { | ||
if (e) { | ||
for (; e && !e.reg[t]; ) | ||
e = B(e); | ||
e = N(e); | ||
if (e) | ||
@@ -323,25 +323,25 @@ return e; | ||
}; | ||
let Ht = (e, t, n, r, a) => { | ||
let u = ct(e, r.id); | ||
return u ? u.reg[r.id] : t ? (F(t, r, a), t.reg[r.id]) : r; | ||
let Yt = (e, t, n, r, u) => { | ||
let s = pt(e, r.id); | ||
return s ? s.reg[r.id] : t ? (F(t, r, u), t.reg[r.id]) : r; | ||
}; | ||
const Ft = (e) => e; | ||
let F = (e, t, n, r, a) => { | ||
var u; | ||
let o = e.reg, m = t.sid, y = t == null || (u = t.meta) === null || u === void 0 ? void 0 : u.serialize; | ||
if (o[t.id]) | ||
const Jt = (e) => e; | ||
let F = (e, t, n, r, u) => { | ||
var s; | ||
let a = e.reg, m = t.sid, g = t == null || (s = t.meta) === null || s === void 0 ? void 0 : s.serialize; | ||
if (a[t.id]) | ||
return; | ||
let d = { id: t.id, current: t.current, meta: t.meta }; | ||
let p = { id: t.id, current: t.current, meta: t.meta }; | ||
if (m && m in e.sidValuesMap && !(m in e.sidIdMap)) | ||
d.current = (e.fromSerialize && y !== "ignore" && (y == null ? void 0 : y.read) || Ft)(e.sidValuesMap[m]); | ||
else if (t.before && !a) { | ||
p.current = (e.fromSerialize && g !== "ignore" && (g == null ? void 0 : g.read) || Jt)(e.sidValuesMap[m]); | ||
else if (t.before && !u) { | ||
let S = 0, c = n || !t.noInit || r; | ||
k(t.before, (p) => { | ||
switch (p.type) { | ||
k(t.before, (d) => { | ||
switch (d.type) { | ||
case te: { | ||
let i = p.from; | ||
if (i || p.fn) { | ||
i && F(e, i, n, r); | ||
let l = i && o[i.id].current; | ||
c && (d.current = p.fn ? p.fn(l) : l); | ||
let o = d.from; | ||
if (o || d.fn) { | ||
o && F(e, o, n, r); | ||
let i = o && a[o.id].current; | ||
c && (p.current = d.fn ? d.fn(i) : i); | ||
} | ||
@@ -351,9 +351,9 @@ break; | ||
case "field": | ||
S || (S = 1, d.current = Array.isArray(d.current) ? [...d.current] : { ...d.current }), F(e, p.from, n, r), c && (d.current[p.field] = o[o[p.from.id].id].current); | ||
S || (S = 1, p.current = Array.isArray(p.current) ? [...p.current] : { ...p.current }), F(e, d.from, n, r), c && (p.current[d.field] = a[a[d.from.id].id].current); | ||
} | ||
}); | ||
} | ||
m && (e.sidIdMap[m] = t.id), o[t.id] = d; | ||
m && (e.sidIdMap[m] = t.id), a[t.id] = p; | ||
}; | ||
const Kt = (e, t, n) => { | ||
const Qt = (e, t, n) => { | ||
try { | ||
@@ -365,21 +365,21 @@ return t(X(n), e.scope, n); | ||
}; | ||
let K = (e, t = {}) => (z(e) && (K(e.or, t), Ot(e, (n, r) => { | ||
let K = (e, t = {}) => (z(e) && (K(e.or, t), At(e, (n, r) => { | ||
j(n) || r === "or" || r === "and" || (t[r] = n); | ||
}), K(e.and, t)), t); | ||
const Qe = (e, t) => { | ||
se(e.next, t), se(me(e), t), se(ve(e), t); | ||
}, Me = (e, t, n) => { | ||
const Ze = (e, t) => { | ||
se(e.next, t), se(me(e), t), se(he(e), t); | ||
}, Te = (e, t, n) => { | ||
let r; | ||
e.next.length = 0, e.seq.length = 0, e.scope = null; | ||
let a = ve(e); | ||
for (; r = a.pop(); ) | ||
Qe(r, e), (t || n && x(e, "op") !== "sample" || r.family.type === "crosslink") && Me(r, t, x(r, "op") !== "on" && n); | ||
for (a = me(e); r = a.pop(); ) | ||
Qe(r, e), n && r.family.type === "crosslink" && Me(r, t, x(r, "op") !== "on" && n); | ||
let u = he(e); | ||
for (; r = u.pop(); ) | ||
Ze(r, e), (t || n && x(e, "op") !== "sample" || r.family.type === "crosslink") && Te(r, t, x(r, "op") !== "on" && n); | ||
for (u = me(e); r = u.pop(); ) | ||
Ze(r, e), n && r.family.type === "crosslink" && Te(r, t, x(r, "op") !== "on" && n); | ||
}, J = (e) => e.clear(); | ||
let Te = (e, { deep: t } = {}) => { | ||
let Ce = (e, { deep: t } = {}) => { | ||
let n = 0; | ||
if (e.ownerSet && e.ownerSet.delete(e), Pe(e)) | ||
if (e.ownerSet && e.ownerSet.delete(e), ze(e)) | ||
J(pe(e)); | ||
else if (at(e)) { | ||
else if (ut(e)) { | ||
n = 1; | ||
@@ -389,24 +389,24 @@ let r = e.history; | ||
} | ||
Me(C(e), !!t, n); | ||
}, ft = (e) => { | ||
let t = () => Te(e); | ||
Te(C(e), !!t, n); | ||
}, vt = (e) => { | ||
let t = () => Ce(e); | ||
return t.unsubscribe = t, t; | ||
}, Ge = (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 }), dt = (e, t) => ($(V(t), ".watch argument should be a function"), ft(N({ scope: { fn: t }, node: [je({ fn: ze })], parent: e, meta: { op: "watch" }, family: { owners: e }, regional: 1 }))), Ut = (e, t, n = "event") => { | ||
B(e) && B(e).hooks[n](t); | ||
}, pt = (e, t, n) => { | ||
let r = K(n), a = e === "domain", u = Dt(), { sid: o = null, named: m = null, domain: y = null, parent: d = y } = r, S = m || r.name || (a ? "" : u), c = bt(S, d), p = { op: t.kind = e, name: t.shortName = S, sid: t.sid = Ct(o), named: m, unitId: t.id = u, serialize: r.serialize, derived: r.derived, config: r }; | ||
return t.parent = d, t.compositeName = c, t.defaultConfig = r, t.thru = (i) => (ne(0, "thru", "js pipe"), i(t)), t.getType = () => c.fullName, !a && (t.subscribe = (i) => (It(i), t.watch(V(i) ? i : (l) => i.next && i.next(l))), t[Lt] = () => t), p; | ||
}, Fe = (e, t, n, r, u) => $({ node: n, parent: e, child: t, scope: { fn: u }, meta: { op: r }, family: { owners: [e, t], links: t }, regional: 1 }), mt = (e, t) => (P(V(t), ".watch argument should be a function"), vt($({ scope: { fn: t }, node: [He({ fn: qe })], parent: e, meta: { op: "watch" }, family: { owners: e }, regional: 1 }))), Xt = (e, t, n = "event") => { | ||
N(e) && N(e).hooks[n](t); | ||
}, ht = (e, t, n) => { | ||
let r = K(n), u = e === "domain", s = It(), { sid: a = null, named: m = null, domain: g = null, parent: p = g } = r, S = m || r.name || (u ? "" : s), c = xt(S, p), d = { op: t.kind = e, name: t.shortName = S, sid: t.sid = Bt(a), named: m, unitId: t.id = s, serialize: r.serialize, derived: r.derived, config: r }; | ||
return t.parent = p, t.compositeName = c, t.defaultConfig = r, t.thru = (o) => (ne(0, "thru", "js pipe"), o(t)), t.getType = () => c.fullName, !u && (t.subscribe = (o) => (Nt(o), t.watch(V(o) ? o : (i) => o.next && o.next(i))), t[Vt] = () => t), d; | ||
}; | ||
const be = (e, t, n, r) => { | ||
let a; | ||
z(n) && (a = n, n = n.fn); | ||
let u = A({ name: `${e.shortName} → *`, derived: 1, and: a }); | ||
return Ge(e, u, r, t, n), u; | ||
}, mt = (e, t, n, r, a) => { | ||
let u = de(t), o = Se({ store: u, to: "a", priority: "read" }); | ||
n === te && (o.data.softRead = 1); | ||
let m = [o, q(r)]; | ||
return Q("storeOnMap", u, m, Pe(e) && de(e)), Ge(e, t, m, n, a); | ||
const Re = (e, t, n, r) => { | ||
let u; | ||
z(n) && (u = n, n = n.fn); | ||
let s = A({ name: `${e.shortName} → *`, derived: 1, and: u }); | ||
return Fe(e, s, r, t, n), s; | ||
}, St = (e, t, n, r, u) => { | ||
let s = de(t), a = _e({ store: s, to: "a", priority: "read" }); | ||
n === te && (a.data.softRead = 1); | ||
let m = [a, q(r)]; | ||
return Q("storeOnMap", s, m, ze(e) && de(e)), Fe(e, t, m, n, u); | ||
}; | ||
let Yt = (e, t, n) => { | ||
let Zt = (e, t, n) => { | ||
try { | ||
@@ -417,13 +417,13 @@ return [1, e(...n)]; | ||
} | ||
}, Jt = (e) => { | ||
}, er = (e) => { | ||
let t = I(e), n = { ref: t }; | ||
return t && D(t.activeEffects, n), n; | ||
}, Xe = (e, t, n, r, a, u) => (o) => { | ||
u.ref && se(u.ref.activeEffects, u), ee({ target: [r, Qt], 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: u.ref, meta: a.meta }); | ||
return t && M(t.activeEffects, n), n; | ||
}, et = (e, t, n, r, u, s) => (a) => { | ||
s.ref && se(s.ref.activeEffects, s), ee({ target: [r, tr], params: [n ? { status: "done", params: e, result: a } : { status: "fail", params: e, error: a }, { value: a, fn: n ? t.rs : t.rj }], defer: 1, page: u.page, scope: s.ref, meta: u.meta }); | ||
}; | ||
const Qt = N({ node: [je({ fn: ({ fn: e, value: t }) => e(t) })], meta: { op: "fx", fx: "sidechain" } }), gr = ot(() => { | ||
const tr = $({ node: [He({ fn: ({ fn: e, value: t }) => e(t) })], meta: { op: "fx", fx: "sidechain" } }), Er = lt(() => { | ||
window.isBackFromBrowser = !1, window.history.back(); | ||
}), vt = ot((e) => { | ||
}), _t = lt((e) => { | ||
window.history.pushState(e, ""); | ||
}), Ce = A(), Ie = A(), ht = A(), St = A(), gt = A(), yt = A(), Xt = A(), _t = A(), Zt = $e({ | ||
}), Ie = A(), Pe = A(), $e = A(), Be = A(), rr = A(), gt = A(), tt = A(), nr = ve({ | ||
activeView: null, | ||
@@ -433,25 +433,20 @@ activePanel: null, | ||
activePopout: null, | ||
isRouteInit: !1 | ||
}).on(Ce, (e, t) => ({ | ||
isRouteInit: !1, | ||
isBackHandled: !0 | ||
}).on(Ie, (e, t) => ({ | ||
...e, | ||
activeView: t | ||
})).on(Ie, (e, t) => ({ | ||
})).on(Pe, (e, t) => ({ | ||
...e, | ||
activePanel: t | ||
})).on(ht, (e, t) => ({ | ||
})).on($e, (e, t) => ({ | ||
...e, | ||
activeModal: t | ||
})).on(gt, (e, t) => ({ | ||
})).on(Be, (e, t) => ({ | ||
...e, | ||
activeModal: t | ||
})).on(St, (e, t) => ({ | ||
...e, | ||
activePopout: t | ||
})).on(yt, (e, t) => ({ | ||
})).on(gt, (e) => ({ | ||
...e, | ||
activePopout: t | ||
})).on(_t, (e) => ({ | ||
...e, | ||
isRouteInit: !0 | ||
})).on(Xt, (e, t) => ({ | ||
})).on(rr, (e, t) => ({ | ||
...e, | ||
@@ -463,20 +458,20 @@ activeView: t.hasOwnProperty("view") ? t.view : e.activeView, | ||
})); | ||
function er(e) { | ||
function ar(e) { | ||
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e; | ||
} | ||
var Ze = {}, tr = { | ||
var rt = {}, or = { | ||
get exports() { | ||
return Ze; | ||
return rt; | ||
}, | ||
set exports(e) { | ||
Ze = e; | ||
rt = e; | ||
} | ||
}, Re = {}, ae = {}, rr = { | ||
}, Le = {}, oe = {}, ir = { | ||
get exports() { | ||
return ae; | ||
return oe; | ||
}, | ||
set exports(e) { | ||
ae = e; | ||
oe = e; | ||
} | ||
}, Le = {}; | ||
}, Ae = {}; | ||
/** | ||
@@ -491,28 +486,28 @@ * @license React | ||
*/ | ||
var et; | ||
function nr() { | ||
if (et) | ||
return Le; | ||
et = 1; | ||
var nt; | ||
function lr() { | ||
if (nt) | ||
return Ae; | ||
nt = 1; | ||
var e = T; | ||
function t(c, p) { | ||
return c === p && (c !== 0 || 1 / c === 1 / p) || c !== c && p !== p; | ||
function t(c, d) { | ||
return c === d && (c !== 0 || 1 / c === 1 / d) || c !== c && d !== d; | ||
} | ||
var n = typeof Object.is == "function" ? Object.is : t, r = e.useState, a = e.useEffect, u = e.useLayoutEffect, o = e.useDebugValue; | ||
function m(c, p) { | ||
var i = p(), l = r({ inst: { value: i, getSnapshot: p } }), s = l[0].inst, f = l[1]; | ||
return u(function() { | ||
s.value = i, s.getSnapshot = p, y(s) && f({ inst: s }); | ||
}, [c, i, p]), a(function() { | ||
return y(s) && f({ inst: s }), c(function() { | ||
y(s) && f({ inst: s }); | ||
var n = typeof Object.is == "function" ? Object.is : t, r = e.useState, u = e.useEffect, s = e.useLayoutEffect, a = e.useDebugValue; | ||
function m(c, d) { | ||
var o = d(), i = r({ inst: { value: o, getSnapshot: d } }), l = i[0].inst, f = i[1]; | ||
return s(function() { | ||
l.value = o, l.getSnapshot = d, g(l) && f({ inst: l }); | ||
}, [c, o, d]), u(function() { | ||
return g(l) && f({ inst: l }), c(function() { | ||
g(l) && f({ inst: l }); | ||
}); | ||
}, [c]), o(i), i; | ||
}, [c]), a(o), o; | ||
} | ||
function y(c) { | ||
var p = c.getSnapshot; | ||
function g(c) { | ||
var d = c.getSnapshot; | ||
c = c.value; | ||
try { | ||
var i = p(); | ||
return !n(c, i); | ||
var o = d(); | ||
return !n(c, o); | ||
} catch { | ||
@@ -522,7 +517,7 @@ return !0; | ||
} | ||
function d(c, p) { | ||
return p(); | ||
function p(c, d) { | ||
return d(); | ||
} | ||
var S = typeof window > "u" || typeof window.document > "u" || typeof window.document.createElement > "u" ? d : m; | ||
return Le.useSyncExternalStore = e.useSyncExternalStore !== void 0 ? e.useSyncExternalStore : S, Le; | ||
var S = typeof window > "u" || typeof window.document > "u" || typeof window.document.createElement > "u" ? p : m; | ||
return Ae.useSyncExternalStore = e.useSyncExternalStore !== void 0 ? e.useSyncExternalStore : S, Ae; | ||
} | ||
@@ -539,5 +534,5 @@ var xe = {}; | ||
*/ | ||
var tt; | ||
function or() { | ||
return tt || (tt = 1, process.env.NODE_ENV !== "production" && function() { | ||
var at; | ||
function ur() { | ||
return at || (at = 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()); | ||
@@ -547,12 +542,12 @@ var e = T, t = e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED; | ||
{ | ||
for (var v = arguments.length, _ = new Array(v > 1 ? v - 1 : 0), h = 1; h < v; h++) | ||
_[h - 1] = arguments[h]; | ||
r("error", w, _); | ||
for (var v = arguments.length, y = new Array(v > 1 ? v - 1 : 0), h = 1; h < v; h++) | ||
y[h - 1] = arguments[h]; | ||
r("error", w, y); | ||
} | ||
} | ||
function r(w, v, _) { | ||
function r(w, v, y) { | ||
{ | ||
var h = t.ReactDebugCurrentFrame, g = h.getStackAddendum(); | ||
g !== "" && (v += "%s", _ = _.concat([g])); | ||
var E = _.map(function(L) { | ||
var h = t.ReactDebugCurrentFrame, _ = h.getStackAddendum(); | ||
_ !== "" && (v += "%s", y = y.concat([_])); | ||
var E = y.map(function(L) { | ||
return String(L); | ||
@@ -563,14 +558,14 @@ }); | ||
} | ||
function a(w, v) { | ||
function u(w, v) { | ||
return w === v && (w !== 0 || 1 / w === 1 / v) || w !== w && v !== v; | ||
} | ||
var u = typeof Object.is == "function" ? Object.is : a, o = e.useState, m = e.useEffect, y = e.useLayoutEffect, d = e.useDebugValue, S = !1, c = !1; | ||
function p(w, v, _) { | ||
var s = typeof Object.is == "function" ? Object.is : u, a = e.useState, m = e.useEffect, g = e.useLayoutEffect, p = e.useDebugValue, S = !1, c = !1; | ||
function d(w, v, y) { | ||
S || e.startTransition !== void 0 && (S = !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 h = v(); | ||
if (!c) { | ||
var g = v(); | ||
u(h, g) || (n("The result of getSnapshot should be cached to avoid an infinite loop"), c = !0); | ||
var _ = v(); | ||
s(h, _) || (n("The result of getSnapshot should be cached to avoid an infinite loop"), c = !0); | ||
} | ||
var E = o({ | ||
var E = a({ | ||
inst: { | ||
@@ -581,12 +576,12 @@ value: h, | ||
}), L = E[0].inst, U = E[1]; | ||
return y(function() { | ||
L.value = h, L.getSnapshot = v, i(L) && U({ | ||
return g(function() { | ||
L.value = h, L.getSnapshot = v, o(L) && U({ | ||
inst: L | ||
}); | ||
}, [w, h, v]), m(function() { | ||
i(L) && U({ | ||
o(L) && U({ | ||
inst: L | ||
}); | ||
var ge = function() { | ||
i(L) && U({ | ||
o(L) && U({ | ||
inst: L | ||
@@ -596,9 +591,9 @@ }); | ||
return w(ge); | ||
}, [w]), d(h), h; | ||
}, [w]), p(h), h; | ||
} | ||
function i(w) { | ||
var v = w.getSnapshot, _ = w.value; | ||
function o(w) { | ||
var v = w.getSnapshot, y = w.value; | ||
try { | ||
var h = v(); | ||
return !u(_, h); | ||
return !s(y, h); | ||
} catch { | ||
@@ -608,6 +603,6 @@ return !0; | ||
} | ||
function l(w, v, _) { | ||
function i(w, v, y) { | ||
return v(); | ||
} | ||
var s = typeof window < "u" && typeof window.document < "u" && typeof window.document.createElement < "u", f = !s, b = f ? l : p, R = e.useSyncExternalStore !== void 0 ? e.useSyncExternalStore : b; | ||
var l = typeof window < "u" && typeof window.document < "u" && typeof window.document.createElement < "u", f = !l, b = f ? i : d, R = e.useSyncExternalStore !== void 0 ? e.useSyncExternalStore : b; | ||
xe.useSyncExternalStore = R, typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error()); | ||
@@ -617,5 +612,5 @@ }()), xe; | ||
(function(e) { | ||
process.env.NODE_ENV === "production" ? e.exports = nr() : e.exports = or(); | ||
})(rr); | ||
const ar = /* @__PURE__ */ er(ae); | ||
process.env.NODE_ENV === "production" ? e.exports = lr() : e.exports = ur(); | ||
})(ir); | ||
const sr = /* @__PURE__ */ ar(oe); | ||
/** | ||
@@ -630,48 +625,48 @@ * @license React | ||
*/ | ||
var rt; | ||
function ir() { | ||
if (rt) | ||
return Re; | ||
rt = 1; | ||
var e = T, t = ae; | ||
function n(d, S) { | ||
return d === S && (d !== 0 || 1 / d === 1 / S) || d !== d && S !== S; | ||
var ot; | ||
function cr() { | ||
if (ot) | ||
return Le; | ||
ot = 1; | ||
var e = T, t = oe; | ||
function n(p, S) { | ||
return p === S && (p !== 0 || 1 / p === 1 / S) || p !== p && S !== S; | ||
} | ||
var r = typeof Object.is == "function" ? Object.is : n, a = t.useSyncExternalStore, u = e.useRef, o = e.useEffect, m = e.useMemo, y = e.useDebugValue; | ||
return Re.useSyncExternalStoreWithSelector = function(d, S, c, p, i) { | ||
var l = u(null); | ||
if (l.current === null) { | ||
var s = { hasValue: !1, value: null }; | ||
l.current = s; | ||
var r = typeof Object.is == "function" ? Object.is : n, u = t.useSyncExternalStore, s = e.useRef, a = e.useEffect, m = e.useMemo, g = e.useDebugValue; | ||
return Le.useSyncExternalStoreWithSelector = function(p, S, c, d, o) { | ||
var i = s(null); | ||
if (i.current === null) { | ||
var l = { hasValue: !1, value: null }; | ||
i.current = l; | ||
} else | ||
s = l.current; | ||
l = m(function() { | ||
l = i.current; | ||
i = m(function() { | ||
function b(h) { | ||
if (!R) { | ||
if (R = !0, w = h, h = p(h), i !== void 0 && s.hasValue) { | ||
var g = s.value; | ||
if (i(g, h)) | ||
return v = g; | ||
if (R = !0, w = h, h = d(h), o !== void 0 && l.hasValue) { | ||
var _ = l.value; | ||
if (o(_, h)) | ||
return v = _; | ||
} | ||
return v = h; | ||
} | ||
if (g = v, r(w, h)) | ||
return g; | ||
var E = p(h); | ||
return i !== void 0 && i(g, E) ? g : (w = h, v = E); | ||
if (_ = v, r(w, h)) | ||
return _; | ||
var E = d(h); | ||
return o !== void 0 && o(_, E) ? _ : (w = h, v = E); | ||
} | ||
var R = !1, w, v, _ = c === void 0 ? null : c; | ||
var R = !1, w, v, y = c === void 0 ? null : c; | ||
return [function() { | ||
return b(S()); | ||
}, _ === null ? void 0 : function() { | ||
return b(_()); | ||
}, y === null ? void 0 : function() { | ||
return b(y()); | ||
}]; | ||
}, [S, c, p, i]); | ||
var f = a(d, l[0], l[1]); | ||
return o(function() { | ||
s.hasValue = !0, s.value = f; | ||
}, [f]), y(f), f; | ||
}, Re; | ||
}, [S, c, d, o]); | ||
var f = u(p, i[0], i[1]); | ||
return a(function() { | ||
l.hasValue = !0, l.value = f; | ||
}, [f]), g(f), f; | ||
}, Le; | ||
} | ||
var Ae = {}; | ||
var ke = {}; | ||
/** | ||
@@ -686,35 +681,35 @@ * @license React | ||
*/ | ||
var nt; | ||
function ur() { | ||
return nt || (nt = 1, process.env.NODE_ENV !== "production" && function() { | ||
var it; | ||
function fr() { | ||
return it || (it = 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()); | ||
var e = T, t = ae; | ||
var e = T, t = oe; | ||
function n(S, c) { | ||
return S === c && (S !== 0 || 1 / S === 1 / c) || S !== S && c !== c; | ||
} | ||
var r = typeof Object.is == "function" ? Object.is : n, a = t.useSyncExternalStore, u = e.useRef, o = e.useEffect, m = e.useMemo, y = e.useDebugValue; | ||
function d(S, c, p, i, l) { | ||
var s = u(null), f; | ||
s.current === null ? (f = { | ||
var r = typeof Object.is == "function" ? Object.is : n, u = t.useSyncExternalStore, s = e.useRef, a = e.useEffect, m = e.useMemo, g = e.useDebugValue; | ||
function p(S, c, d, o, i) { | ||
var l = s(null), f; | ||
l.current === null ? (f = { | ||
hasValue: !1, | ||
value: null | ||
}, s.current = f) : f = s.current; | ||
}, l.current = f) : f = l.current; | ||
var b = m(function() { | ||
var _ = !1, h, g, E = function(Y) { | ||
if (!_) { | ||
_ = !0, h = Y; | ||
var ye = i(Y); | ||
if (l !== void 0 && f.hasValue) { | ||
var _e = f.value; | ||
if (l(_e, ye)) | ||
return g = _e, _e; | ||
var y = !1, h, _, E = function(Y) { | ||
if (!y) { | ||
y = !0, h = Y; | ||
var ye = o(Y); | ||
if (i !== void 0 && f.hasValue) { | ||
var we = f.value; | ||
if (i(we, ye)) | ||
return _ = we, we; | ||
} | ||
return g = ye, ye; | ||
return _ = ye, ye; | ||
} | ||
var Et = h, we = g; | ||
if (r(Et, Y)) | ||
return we; | ||
var Ee = i(Y); | ||
return l !== void 0 && l(we, Ee) ? we : (h = Y, g = Ee, Ee); | ||
}, L = p === void 0 ? null : p, U = function() { | ||
var Lt = h, Ee = _; | ||
if (r(Lt, Y)) | ||
return Ee; | ||
var Oe = o(Y); | ||
return i !== void 0 && i(Ee, Oe) ? Ee : (h = Y, _ = Oe, Oe); | ||
}, L = d === void 0 ? null : d, U = function() { | ||
return E(c()); | ||
@@ -725,40 +720,40 @@ }, ge = L === null ? void 0 : function() { | ||
return [U, ge]; | ||
}, [c, p, i, l]), R = b[0], w = b[1], v = a(S, R, w); | ||
return o(function() { | ||
}, [c, d, o, i]), R = b[0], w = b[1], v = u(S, R, w); | ||
return a(function() { | ||
f.hasValue = !0, f.value = v; | ||
}, [v]), y(v), v; | ||
}, [v]), g(v), v; | ||
} | ||
Ae.useSyncExternalStoreWithSelector = d, typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error()); | ||
}()), Ae; | ||
ke.useSyncExternalStoreWithSelector = p, typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ < "u" && typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop == "function" && __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(new Error()); | ||
}()), ke; | ||
} | ||
(function(e) { | ||
process.env.NODE_ENV === "production" ? e.exports = ir() : e.exports = ur(); | ||
})(tr); | ||
function lr(e, t, n, r) { | ||
let a = [zt.run({ fn: (u) => t(u) })]; | ||
if (r && a.unshift(r), n) { | ||
let u = N({ node: a }), o = e.graphite.id, m = n.additionalLinks, y = m[o] || []; | ||
return m[o] = y, y.push(u), () => { | ||
let d = y.indexOf(u); | ||
d !== -1 && y.splice(d, 1), Te(u); | ||
process.env.NODE_ENV === "production" ? e.exports = cr() : e.exports = fr(); | ||
})(or); | ||
function dr(e, t, n, r) { | ||
let u = [Wt.run({ fn: (s) => t(s) })]; | ||
if (r && u.unshift(r), n) { | ||
let s = $({ node: u }), a = e.graphite.id, m = n.additionalLinks, g = m[a] || []; | ||
return m[a] = g, g.push(s), () => { | ||
let p = g.indexOf(s); | ||
p !== -1 && g.splice(p, 1), Ce(s); | ||
}; | ||
} | ||
{ | ||
let u = N({ node: a, parent: [e], family: { owners: e } }); | ||
let s = $({ node: u, parent: [e], family: { owners: e } }); | ||
return () => { | ||
Te(u); | ||
Ce(s); | ||
}; | ||
} | ||
} | ||
function sr(e, t) { | ||
Vt.store(e) || wt("expect useStore argument to be a store"); | ||
let n = T.useCallback((a) => lr(e, a, t), [e, t]), r = T.useCallback(() => pr(e, t), [e, t]); | ||
return dr(n, r, r); | ||
function pr(e, t) { | ||
Ct.store(e) || wt("expect useStore argument to be a store"); | ||
let n = T.useCallback((u) => dr(e, u, t), [e, t]), r = T.useCallback(() => hr(e, t), [e, t]); | ||
return mr(n, r, r); | ||
} | ||
function cr(e) { | ||
let t = T.useContext(mr); | ||
function vr(e) { | ||
let t = T.useContext(Sr); | ||
return e && !t && wt("No scope found, consider adding <Provider> to app root"), t; | ||
} | ||
function fr(e, t) { | ||
return sr(e, cr(t == null ? void 0 : t.forceScope)); | ||
function yt(e, t) { | ||
return pr(e, vr(t == null ? void 0 : t.forceScope)); | ||
} | ||
@@ -769,15 +764,34 @@ let wt = (e) => { | ||
typeof window < "u" ? T.useLayoutEffect : T.useEffect; | ||
const { useSyncExternalStore: dr } = ar, pr = (e, t) => t ? t.getState(e) : e.getState(), mr = T.createContext(null), vr = (e, t, n) => { | ||
ke(() => { | ||
const r = (a) => { | ||
a instanceof KeyboardEvent && a.key === n ? t(a) : n || t(a); | ||
const { useSyncExternalStore: mr } = sr, hr = (e, t) => t ? t.getState(e) : e.getState(), Sr = T.createContext(null), _r = (e, t, n) => { | ||
Ve(() => { | ||
const r = (u) => { | ||
u instanceof KeyboardEvent && u.key === n ? t(u) : n || t(u); | ||
}; | ||
return window.addEventListener(e, r), () => window.removeEventListener(e, r); | ||
}, [e, n, t]); | ||
}, yr = (e, ...t) => { | ||
const { activeView: n, activePanel: r, activeModal: a, activePopout: u, isRouteInit: o } = hr(); | ||
ke(() => { | ||
o || (Ce(e.view), Ie(e.panel), e.modal && ht(e.modal), e.popout && St(e.popout), _t()); | ||
}, [o, e.view, e.panel, e.modal, e.popout]), ke(() => { | ||
const m = window.history.state ?? { | ||
}, Et = A(), Ot = A(), bt = A(), Rt = A(), gr = ve({ | ||
virtualView: null, | ||
virtualPanel: null, | ||
virtualModal: null, | ||
virtualPopout: null | ||
}).on(Et, (e, t) => ({ | ||
...e, | ||
virtualView: t | ||
})).on(Ot, (e, t) => ({ | ||
...e, | ||
virtualPanel: t | ||
})).on(bt, (e, t) => ({ | ||
...e, | ||
virtualModal: t | ||
})).on(Rt, (e, t) => ({ | ||
...e, | ||
virtualPopout: t | ||
})), Or = (e, ...t) => { | ||
const { activeView: n, activePanel: r, activeModal: u, activePopout: s, isRouteInit: a, isBackHandled: m } = yr(); | ||
Ve(() => { | ||
a || (Et(e.view), Ot(e.panel), e.modal && bt(e.modal), e.popout && Rt(e.popout), gt()); | ||
}, [a, e.view, e.panel, e.modal, e.popout]); | ||
const { virtualView: g, virtualPanel: p, virtualModal: S, virtualPopout: c } = yt(gr); | ||
Ve(() => { | ||
const d = window.history.state ?? { | ||
view: void 0, | ||
@@ -788,11 +802,19 @@ panel: void 0, | ||
}; | ||
o && (m.view !== n || m.panel !== r || m.modal !== a || m.popout !== u) && vt({ | ||
a && m && (d.view !== g || d.panel !== p || d.modal !== S || d.popout !== c) && (Ie(g), Pe(p), $e(S), Be(c), _t({ | ||
view: n, | ||
panel: r, | ||
modal: a, | ||
popout: u | ||
}); | ||
}, [n, r, a, u, o]), vr("popstate", async () => { | ||
o && (await (async () => { | ||
const { view: y, panel: d, modal: S, popout: c } = window.history.state ?? { | ||
modal: u, | ||
popout: s | ||
})); | ||
}, [ | ||
g, | ||
p, | ||
S, | ||
c, | ||
a, | ||
m | ||
]), _r("popstate", async () => { | ||
a && (await (async () => { | ||
tt(!1); | ||
const { view: o, panel: i, modal: l, popout: f } = window.history.state ?? { | ||
view: void 0, | ||
@@ -803,29 +825,31 @@ panel: void 0, | ||
}; | ||
console.log("prevRoutes", y, d, S, c), console.log("storeRoutes", n, r, a, u); | ||
for (const p in t) | ||
if (!await t[p]({ | ||
console.log("prevRoutes", o, i, l, f), console.log("storeRoutes", n, r, u, s); | ||
for (const b in t) | ||
if (!await t[b]({ | ||
view: n, | ||
panel: r, | ||
modal: a, | ||
popout: u | ||
}, { view: y, panel: d, modal: S, popout: c })) | ||
modal: u, | ||
popout: s | ||
}, { view: o, panel: i, modal: l, popout: f })) | ||
return; | ||
Ce(y), Ie(d), gt(S), yt(c); | ||
Ie(o), Pe(i), $e(l), Be(f), tt(!0); | ||
})(), window.isBackFromBrowser = !0); | ||
}); | ||
}, hr = () => fr(Zt), _r = (e) => e, wr = (e, t) => (n, r) => ["view", "panel", "modal", "popout"].some((u) => n[u] === e && n[u] !== r[u]) && window.isBackFromBrowser ? (t && t(n, r), vt(n), !1) : !0; | ||
}, yr = () => yt(nr), br = (e) => e, Rr = (e, t) => (n, r) => ["view", "panel", "modal", "popout"].some((s) => n[s] === e && n[s] !== r[s]) && window.isBackFromBrowser ? (t && t(n, r), _t(n), !1) : !0; | ||
export { | ||
gt as _setActiveModal, | ||
yt as _setActivePopout, | ||
gr as back, | ||
wr as createDisableBackBrowserRouteMiddleware, | ||
_r as createRouteMiddleware, | ||
vt as historyPush, | ||
ht as setActiveModal, | ||
Ie as setActivePanel, | ||
St as setActivePopout, | ||
Ce as setActiveView, | ||
Xt as setRoutes, | ||
yr as useInitRouter, | ||
hr as useRouter | ||
$e as _setActiveModal, | ||
Pe as _setActivePanel, | ||
Be as _setActivePopout, | ||
Ie as _setActiveView, | ||
Er as back, | ||
Rr as createDisableBackBrowserRouteMiddleware, | ||
br as createRouteMiddleware, | ||
_t as historyPush, | ||
bt as setActiveModal, | ||
Ot as setActivePanel, | ||
Rt as setActivePopout, | ||
Et as setActiveView, | ||
rr as setRoutes, | ||
Or as useInitRouter, | ||
yr as useRouter | ||
}; |
import { SetRoutes } from "src/types"; | ||
export declare const setActiveView: import("effector").Event<string>; | ||
export declare const setActivePanel: import("effector").Event<string>; | ||
export declare const setActiveModal: import("effector").Event<string>; | ||
export declare const setActivePopout: import("effector").Event<string>; | ||
export declare const _setActiveView: import("effector").Event<string>; | ||
export declare const _setActivePanel: import("effector").Event<string>; | ||
export declare const _setActiveModal: import("effector").Event<string | null>; | ||
@@ -10,1 +8,2 @@ export declare const _setActivePopout: import("effector").Event<string | null>; | ||
export declare const initRoute: import("effector").Event<void>; | ||
export declare const setBackHandled: import("effector").Event<boolean>; |
@@ -7,4 +7,5 @@ type Store = { | ||
isRouteInit: boolean; | ||
isBackHandled: boolean; | ||
}; | ||
export declare const $router: import("effector").Store<Store>; | ||
export {}; |
@@ -9,4 +9,5 @@ import { InitRouteOptions, RouteMiddleware, Routes } from "./types"; | ||
isRouteInit: boolean; | ||
isBackHandled: boolean; | ||
}; | ||
export declare const createRouteMiddleware: (callback: RouteMiddleware) => RouteMiddleware; | ||
export declare const createDisableBackBrowserRouteMiddleware: (route: string, callback?: ((storeRoutes: Routes, prevRoutes: Routes) => void | Promise<void>) | undefined) => (storeRoutes: Routes, prevRoutes: Routes) => boolean; |
{ | ||
"name": "@blumjs/router", | ||
"version": "1.1.2", | ||
"version": "2.0.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
62072
16
1025