@expofp/floorplan
Version:
Interactive floor plan library for expos and events
1,733 lines • 80.1 kB
JavaScript
(function() {
try {
var e = typeof window < "u" ? window : typeof global < "u" ? global : typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : {};
e.SENTRY_RELEASE = { id: "3.7.8" };
var t = new e.Error().stack;
t && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[t] = "ffb3159f-ded6-4685-b05b-83e4c202ad8a", e._sentryDebugIdIdentifier = "sentry-dbid-ffb3159f-ded6-4685-b05b-83e4c202ad8a");
} catch {}
})();
import { r as e } from "./rolldown-runtime-YBAZwyzS.js";
import { t } from "./react-Di3Pmpio.js";
import { t as n } from "./jsx-runtime-C8yjdFgZ.js";
import { t as r } from "./react-dom-xeogvqlp.js";
//#region ../../node_modules/.pnpm/react-virtuoso@4.18.7_react-dom@19.2.7_react@19.2.7__react@19.2.7/node_modules/react-virtuoso/dist/index.mjs
var i = n(), a = /* @__PURE__ */ e(t(), 1), o = /* @__PURE__ */ e(r(), 1), s = 0, c = 1, l = 2, u = 4;
function d(e) {
return () => e;
}
function f(e) {
e();
}
function p(e, t) {
return (n) => e(t(n));
}
function m(e, t) {
return () => e(t);
}
function h(e, t) {
return (n) => e(t, n);
}
function g(e) {
return e !== void 0;
}
function _(...e) {
return () => {
e.map(f);
};
}
function v() {}
function y(e, t) {
return t(e), e;
}
function b(e, t) {
return t(e);
}
function x(...e) {
return e;
}
function S(e, t) {
return e(c, t);
}
function C(e, t) {
e(s, t);
}
function w(e) {
e(l);
}
function T(e) {
return e(u);
}
function E(e, t) {
return S(e, h(t, s));
}
function D(e, t) {
let n = e(c, (e) => {
n(), t(e);
});
return n;
}
function O(e) {
let t, n;
return (r) => (i) => {
t = i, n && clearTimeout(n), n = setTimeout(() => {
r(t);
}, e);
};
}
function k(e, t) {
return e === t;
}
function A(e = k) {
let t;
return (n) => (r) => {
e(t, r) || (t = r, n(r));
};
}
function j(e) {
return (t) => (n) => {
e(n) && t(n);
};
}
function M(e) {
return (t) => p(t, e);
}
function ee(e) {
return (t) => () => {
t(e);
};
}
function N(e, ...t) {
let n = re(...t);
return ((t, r) => {
switch (t) {
case l:
w(e);
return;
case c: return S(e, n(r));
}
});
}
function P(e, t) {
return (n) => (r) => {
n(t = e(t, r));
};
}
function te(e) {
return (t) => (n) => {
e > 0 ? e-- : t(n);
};
}
function ne(e) {
let t = null, n;
return (r) => (i) => {
t = i, !n && (n = setTimeout(() => {
n = void 0, r(t);
}, e));
};
}
function F(...e) {
let t = Array(e.length), n = 0, r = null, i = 2 ** e.length - 1;
return e.forEach((e, a) => {
let o = 2 ** a;
S(e, (e) => {
let s = n;
n |= o, t[a] = e, s !== i && n === i && r && (r(), r = null);
});
}), (e) => (a) => {
let o = () => {
e([a].concat(t));
};
n === i ? o() : r = o;
};
}
function re(...e) {
return (t) => e.reduceRight(b, t);
}
function ie(e) {
let t, n, r = () => t == null ? void 0 : t();
return function(i, a) {
switch (i) {
case c: return a ? n === a ? void 0 : (r(), n = a, t = S(e, a), t) : (r(), v);
case l:
r(), n = null;
return;
}
};
}
function I(e) {
let t = e, n = R();
return ((e, r) => {
switch (e) {
case s:
t = r;
break;
case c:
r(t);
break;
case u: return t;
}
return n(e, r);
});
}
function L(e, t) {
return y(I(t), (t) => E(e, t));
}
function R() {
let e = [];
return ((t, n) => {
switch (t) {
case s:
e.slice().forEach((e) => {
e(n);
});
return;
case l:
e.splice(0, e.length);
return;
case c: return e.push(n), () => {
let t = e.indexOf(n);
t > -1 && e.splice(t, 1);
};
}
});
}
function z(e) {
return y(R(), (t) => E(e, t));
}
function B(e, t = [], { singleton: n } = { singleton: !0 }) {
return {
constructor: e,
dependencies: t,
id: ae(),
singleton: n
};
}
var ae = () => Symbol();
function oe(e) {
let t = /* @__PURE__ */ new Map(), n = ({ constructor: e, dependencies: r, id: i, singleton: a }) => {
if (a && t.has(i)) return t.get(i);
let o = e(r.map((e) => n(e)));
return a && t.set(i, o), o;
};
return n(e);
}
function V(...e) {
let t = R(), n = Array(e.length), r = 0, i = 2 ** e.length - 1;
return e.forEach((e, a) => {
let o = 2 ** a;
S(e, (e) => {
n[a] = e, r |= o, r === i && C(t, n);
});
}), function(e, a) {
switch (e) {
case l:
w(t);
return;
case c: return r === i && a(n), S(t, a);
}
};
}
function H(e, t = k) {
return N(e, A(t));
}
function se(...e) {
return function(t, n) {
switch (t) {
case l: return;
case c: return _(...e.map((e) => S(e, n)));
}
};
}
var U = {
DEBUG: 0,
INFO: 1,
WARN: 2,
ERROR: 3
}, ce = {
[U.DEBUG]: "debug",
[U.ERROR]: "error",
[U.INFO]: "log",
[U.WARN]: "warn"
}, le = () => typeof globalThis > "u" ? window : globalThis, W = B(() => {
let e = I(U.ERROR);
return {
log: I((t, n, r = U.INFO) => {
var i;
r >= ((i = le().VIRTUOSO_LOG_LEVEL) == null ? T(e) : i) && console[ce[r]]("%creact-virtuoso: %c%s %o", "color: #0253b3; font-weight: bold", "color: initial", t, n);
}),
logLevel: e
};
}, [], { singleton: !0 }), ue = /* @__PURE__ */ new WeakMap();
function de(e) {
return "self" in e ? e.document.documentElement : e;
}
function fe(e) {
let t = de(e), n = ue.get(t);
if (n !== void 0) return n;
let r = t.ownerDocument.defaultView.getComputedStyle(t).direction === "rtl";
return ue.set(t, r), r;
}
function pe(e) {
ue.delete(de(e));
}
function me(e, t) {
return fe(e) ? -t : t;
}
var he = me;
function ge(e, t) {
return me(e, t);
}
function _e(e, t, n) {
return ve(e, t, n).callbackRef;
}
function ve(e, t, n) {
let r = a.useRef(null), i = (e) => {}, o = a.useMemo(() => typeof ResizeObserver < "u" ? new ResizeObserver((t) => {
let r = () => {
let n = t[0].target;
n.offsetParent !== null && e(n);
};
n ? r() : requestAnimationFrame(r);
}) : null, [e, n]);
return i = (e) => {
e && t ? (o == null || o.observe(e), r.current = e) : (r.current && (o == null || o.unobserve(r.current)), r.current = null);
}, {
callbackRef: i,
ref: r
};
}
function ye(e, t, n, r, i, o, s, c, l) {
return ve(a.useCallback((n) => {
let a = be(n.children, t, c ? "offsetWidth" : "offsetHeight", i), l = n.parentElement;
for (; l.dataset.virtuosoScroller === void 0;) l = l.parentElement;
let u = l.lastElementChild.dataset.viewportType === "window", d;
u && (d = l.ownerDocument.defaultView);
let f = s ? c ? s.scrollWidth : s.scrollHeight : u ? c ? d.document.documentElement.scrollWidth : d.document.documentElement.scrollHeight : c ? l.scrollWidth : l.scrollHeight, p = s ? c ? s.offsetWidth : s.offsetHeight : u ? c ? d.innerWidth : d.innerHeight : c ? l.offsetWidth : l.offsetHeight, m = s ? c ? he(s, s.scrollLeft) : s.scrollTop : u ? c ? he(d, d.scrollX || d.document.documentElement.scrollLeft) : d.scrollY || d.document.documentElement.scrollTop : c ? he(l, l.scrollLeft) : l.scrollTop;
r({
scrollHeight: f,
scrollTop: Math.max(m, 0),
viewportHeight: p
}), o == null || o(c ? xe("column-gap", getComputedStyle(n).columnGap, i) : xe("row-gap", getComputedStyle(n).rowGap, i)), a !== null && e(a);
}, [
e,
t,
i,
o,
s,
r,
c
]), n, l);
}
function be(e, t, n, r) {
let i = e.length;
if (i === 0) return null;
let a = [];
for (let o = 0; o < i; o++) {
let i = e.item(o);
if (i.dataset.index === void 0) continue;
let s = parseInt(i.dataset.index), c = parseFloat(i.dataset.knownSize), l = t(i, n);
if (l === 0 && r("Zero-sized element, this should not happen", { child: i }, U.ERROR), l === c) continue;
let u = a[a.length - 1];
a.length === 0 || u.size !== l || u.endIndex !== s - 1 ? a.push({
endIndex: s,
size: l,
startIndex: s
}) : a[a.length - 1].endIndex++;
}
return a;
}
function xe(e, t, n) {
return t !== "normal" && (t == null ? void 0 : t.endsWith("px")) !== !0 && n(`${e} was not resolved to pixel value correctly`, t, U.WARN), t === "normal" ? 0 : parseInt(t == null ? "0" : t, 10);
}
function Se(e, t, n) {
let r = a.useRef(null), i = a.useCallback((n) => {
if (!(n != null && n.offsetParent)) return;
let i = n.getBoundingClientRect(), a = i.width, o, c;
if (t) {
let e = t.getBoundingClientRect(), n = i.top - e.top;
c = e.height - Math.max(0, n), o = n + t.scrollTop;
} else {
let e = s.current.ownerDocument.defaultView;
c = e.innerHeight - Math.max(0, i.top), o = i.top + e.scrollY;
}
r.current = {
listHeight: i.height,
offsetTop: o,
visibleHeight: c,
visibleWidth: a
}, e(r.current);
}, [e, t]), { callbackRef: o, ref: s } = ve(i, !0, n), c = a.useCallback(() => {
i(s.current);
}, [i, s]);
return a.useEffect(() => {
var e;
if (t) {
t.addEventListener("scroll", c);
let e = new ResizeObserver(() => {
requestAnimationFrame(c);
});
return e.observe(t), () => {
t.removeEventListener("scroll", c), e.unobserve(t);
};
}
let n = (e = s.current) == null ? void 0 : e.ownerDocument.defaultView;
return n == null || n.addEventListener("scroll", c), n == null || n.addEventListener("resize", c), () => {
n == null || n.removeEventListener("scroll", c), n == null || n.removeEventListener("resize", c);
};
}, [
c,
t,
s
]), o;
}
var G = B(() => {
let e = R(), t = R(), n = I(0), r = R(), i = I(0), a = R(), o = R(), s = I(0), c = I(0), l = I(0), u = I(0), d = R(), f = R(), p = I(!1), m = I(!1), h = I(!1);
return E(N(e, M(({ scrollTop: e }) => e)), t), E(N(e, M(({ scrollHeight: e }) => e)), o), E(t, i), {
deviation: n,
fixedFooterHeight: l,
fixedHeaderHeight: c,
footerHeight: u,
headerHeight: s,
horizontalDirection: m,
scrollBy: f,
scrollContainerState: e,
scrollHeight: o,
scrollingInProgress: p,
scrollTo: d,
scrollTop: t,
skipAnimationFrameInResizeObserver: h,
smoothScrollTargetReached: r,
statefulScrollTop: i,
viewportHeight: a
};
}, [], { singleton: !0 }), Ce = { lvl: 0 };
function we(e, t) {
let n = e.length;
if (n === 0) return [];
let { index: r, value: i } = t(e[0]), a = [];
for (let o = 1; o < n; o++) {
let { index: n, value: s } = t(e[o]);
a.push({
end: n - 1,
start: r,
value: i
}), r = n, i = s;
}
return a.push({
end: Infinity,
start: r,
value: i
}), a;
}
function K(e) {
return e === Ce;
}
function Te(e, t) {
if (!K(e)) return t === e.k ? e.v : t < e.k ? Te(e.l, t) : Te(e.r, t);
}
function Ee(e, t, n = "k") {
if (K(e)) return [-Infinity, void 0];
if (Number(e[n]) === t) return [e.k, e.v];
if (Number(e[n]) < t) {
let r = Ee(e.r, t, n);
return r[0] === -Infinity ? [e.k, e.v] : r;
}
return Ee(e.l, t, n);
}
function q(e, t, n) {
return K(e) ? Ie(t, n, 1) : t === e.k ? J(e, {
k: t,
v: n
}) : t < e.k ? Le(J(e, { l: q(e.l, t, n) })) : Le(J(e, { r: q(e.r, t, n) }));
}
function De() {
return Ce;
}
function Oe(e, t, n) {
if (K(e)) return [];
let r = Ee(e, t)[0];
return Be(je(e, r, n));
}
function ke(e, t) {
if (K(e)) return Ce;
let { k: n, l: r, r: i } = e;
if (t === n) {
if (K(r)) return i;
if (K(i)) return r;
let [t, n] = Fe(r);
return Me(J(e, {
k: t,
l: Ne(r),
v: n
}));
}
return Me(t < n ? J(e, { l: ke(r, t) }) : J(e, { r: ke(i, t) }));
}
function Ae(e) {
return K(e) ? [] : [
...Ae(e.l),
{
k: e.k,
v: e.v
},
...Ae(e.r)
];
}
function je(e, t, n) {
if (K(e)) return [];
let { k: r, l: i, r: a, v: o } = e, s = [];
return r > t && (s = s.concat(je(i, t, n))), r >= t && r <= n && s.push({
k: r,
v: o
}), r <= n && (s = s.concat(je(a, t, n))), s;
}
function Me(e) {
let { l: t, lvl: n, r } = e;
if (r.lvl >= n - 1 && t.lvl >= n - 1) return e;
if (n > r.lvl + 1) {
if (Pe(t)) return Re(J(e, { lvl: n - 1 }));
if (!K(t) && !K(t.r)) return J(t.r, {
l: J(t, { r: t.r.l }),
lvl: n,
r: J(e, {
l: t.r.r,
lvl: n - 1
})
});
throw Error("Unexpected empty nodes");
}
if (Pe(e)) return ze(J(e, { lvl: n - 1 }));
if (!K(r) && !K(r.l)) {
let t = r.l, i = Pe(t) ? r.lvl - 1 : r.lvl;
return J(t, {
l: J(e, {
lvl: n - 1,
r: t.l
}),
lvl: t.lvl + 1,
r: ze(J(r, {
l: t.r,
lvl: i
}))
});
}
throw Error("Unexpected empty nodes");
}
function J(e, t) {
return Ie(t.k === void 0 ? e.k : t.k, t.v === void 0 ? e.v : t.v, t.lvl === void 0 ? e.lvl : t.lvl, t.l === void 0 ? e.l : t.l, t.r === void 0 ? e.r : t.r);
}
function Ne(e) {
return K(e.r) ? e.l : Me(J(e, { r: Ne(e.r) }));
}
function Pe(e) {
return K(e) || e.lvl > e.r.lvl;
}
function Fe(e) {
return K(e.r) ? [e.k, e.v] : Fe(e.r);
}
function Ie(e, t, n, r = Ce, i = Ce) {
return {
k: e,
l: r,
lvl: n,
r: i,
v: t
};
}
function Le(e) {
return ze(Re(e));
}
function Re(e) {
let { l: t } = e;
return !K(t) && t.lvl === e.lvl ? J(t, { r: J(e, { l: t.r }) }) : e;
}
function ze(e) {
let { lvl: t, r: n } = e;
return !K(n) && !K(n.r) && n.lvl === t && n.r.lvl === t ? J(n, {
l: J(e, { r: n.l }),
lvl: t + 1
}) : e;
}
function Be(e) {
return we(e, ({ k: e, v: t }) => ({
index: e,
value: t
}));
}
function Ve(e, t) {
return !!(e && e.startIndex === t.startIndex && e.endIndex === t.endIndex);
}
function He(e, t) {
return !!(e && e[0] === t[0] && e[1] === t[1]);
}
var Ue = B(() => ({ recalcInProgress: I(!1) }), [], { singleton: !0 });
function We(e, t, n) {
return e[Ge(e, t, n)];
}
function Ge(e, t, n, r = 0) {
let i = e.length - 1;
for (; r <= i;) {
let a = Math.floor((r + i) / 2), o = e[a], s = n(o, t);
if (s === 0) return a;
if (s === -1) {
if (i - r < 2) return a - 1;
i = a - 1;
} else {
if (i === r) return a;
r = a + 1;
}
}
throw Error(`Failed binary finding record in array - ${e.join(",")}, searched for ${t}`);
}
function Ke(e, t, n, r) {
let i = Ge(e, t, r), a = Ge(e, n, r, i);
return e.slice(i, a + 1);
}
function qe(e, t) {
return Math.round(e.getBoundingClientRect()[t]);
}
function Je(e) {
return !K(e.groupOffsetTree);
}
function Ye({ index: e }, t) {
return t === e ? 0 : t < e ? -1 : 1;
}
function Xe() {
return {
groupIndices: [],
groupOffsetTree: De(),
lastIndex: 0,
lastOffset: 0,
lastSize: 0,
offsetTree: [],
sizeTree: De()
};
}
function Ze(e, t) {
let n = K(e) ? 0 : Infinity;
for (let r of t) {
let { endIndex: t, size: i, startIndex: a } = r;
if (n = Math.min(n, a), K(e)) {
e = q(e, 0, i);
continue;
}
let o = Oe(e, a - 1, t + 1);
if (o.some(lt(r))) continue;
let s = !1, c = !1;
for (let { end: n, start: r, value: a } of o) s ? (t >= r || i === a) && (e = ke(e, r)) : (c = a !== i, s = !0), n > t && t >= r && a !== i && (e = q(e, t + 1, a));
c && (e = q(e, a, i));
}
return [e, n];
}
function Qe(e) {
return typeof e.groupIndex < "u";
}
function $e({ offset: e }, t) {
return t === e ? 0 : t < e ? -1 : 1;
}
function et(e, t, n) {
if (t.length === 0) return 0;
let { index: r, offset: i, size: a } = We(t, e, Ye), o = e - r, s = a * o + (o - 1) * n + i;
return s > 0 ? s + n : s;
}
function tt(e, t) {
if (!Je(t)) return e;
let n = 0;
for (; t.groupIndices[n] <= e + n;) n++;
return e + n;
}
function nt(e, t, n) {
if (Qe(e)) return t.groupIndices[e.groupIndex] + 1;
let r = tt(e.index === "LAST" ? n : e.index, t);
return r = Math.max(0, r, Math.min(n, r)), r;
}
function rt(e, t, n, r = 0) {
return r > 0 && (t = Math.max(t, We(e, r, Ye).offset)), we(Ke(e, t, n, $e), ct);
}
function it(e, [t, n, r, i]) {
t.length > 0 && r("received item sizes", t, U.DEBUG);
let a = e.sizeTree, o = a, s = 0;
if (n.length > 0 && K(a) && t.length === 2) {
let e = t[0].size, r = t[1].size;
o = n.reduce((t, n) => q(q(t, n, e), n + 1, r), o);
} else [o, s] = Ze(o, t);
if (o === a) return e;
let { lastIndex: c, lastOffset: l, lastSize: u, offsetTree: d } = st(e.offsetTree, s, o, i);
return {
groupIndices: n,
groupOffsetTree: n.reduce((e, t) => q(e, t, et(t, d, i)), De()),
lastIndex: c,
lastOffset: l,
lastSize: u,
offsetTree: d,
sizeTree: o
};
}
function at(e) {
return Ae(e).map(({ k: e, v: t }, n, r) => {
let i = r[n + 1];
return {
endIndex: i === void 0 ? Infinity : i.k - 1,
size: t,
startIndex: e
};
});
}
function ot(e, t) {
let n = 0, r = 0;
for (; n < e;) n += t[r + 1] - t[r] - 1, r++;
return r - (n === e ? 0 : 1);
}
function st(e, t, n, r) {
let i = e, a = 0, o = 0, s = 0, c = 0;
if (t !== 0) {
c = Ge(i, t - 1, Ye), s = i[c].offset;
let e = Ee(n, t - 1);
a = e[0], o = e[1], i.length && i[c].size === Ee(n, t)[1] && --c, i = i.slice(0, c + 1);
} else i = [];
for (let { start: e, value: c } of Oe(n, t, Infinity)) {
let t = e - a, n = t * o + s + t * r;
i.push({
index: e,
offset: n,
size: c
}), a = e, s = n, o = c;
}
return {
lastIndex: a,
lastOffset: s,
lastSize: o,
offsetTree: i
};
}
function ct(e) {
return {
index: e.index,
value: e
};
}
function lt(e) {
let { endIndex: t, size: n, startIndex: r } = e;
return (e) => e.start === r && (e.end === t || e.end === Infinity) && e.value === n;
}
var ut = {
offsetHeight: "height",
offsetWidth: "width"
}, dt = B(([{ log: e }, { recalcInProgress: t }]) => {
let n = R(), r = R(), i = L(r, 0), a = R(), o = R(), s = I(0), c = I([]), l = I(void 0), u = I(void 0), d = I(void 0), f = I(void 0), p = I((e, t) => qe(e, ut[t])), m = I(void 0), h = I(0), g = Xe(), _ = L(N(n, F(c, e, h), P(it, g), A()), g), v = L(N(c, A(), P((e, t) => ({
current: t,
prev: e.current
}), {
current: [],
prev: []
}), M(({ prev: e }) => e)), []);
E(N(c, j((e) => e.length > 0), F(_, h), M(([e, t, n]) => {
let r = e.reduce((e, r, i) => q(e, r, et(r, t.offsetTree, n) || i), De());
return {
...t,
groupIndices: e,
groupOffsetTree: r
};
})), _), E(N(r, F(_), j(([e, { lastIndex: t }]) => e < t), M(([e, { lastIndex: t, lastSize: n }]) => [{
endIndex: t,
size: n,
startIndex: e
}])), n), E(l, u);
let y = L(N(l, M((e) => e === void 0)), !0);
E(N(u, j((e) => e !== void 0 && K(T(_).sizeTree)), M((e) => {
let t = T(d), n = T(c).length > 0;
return t !== void 0 && t !== 0 ? n ? [{
endIndex: 0,
size: t,
startIndex: 0
}, {
endIndex: 1,
size: e,
startIndex: 1
}] : [] : [{
endIndex: 0,
size: e,
startIndex: 0
}];
})), n), E(N(f, j((e) => e !== void 0 && e.length > 0 && K(T(_).sizeTree)), M((e) => {
let t = [], n = e[0], r = 0;
for (let i = 1; i < e.length; i++) {
let a = e[i];
a !== n && (t.push({
endIndex: i - 1,
size: n,
startIndex: r
}), n = a, r = i);
}
return t.push({
endIndex: e.length - 1,
size: n,
startIndex: r
}), t;
})), n), E(N(c, F(d, u), j(([, e, t]) => e !== void 0 && t !== void 0), M(([e, t, n]) => {
let r = [];
for (let i = 0; i < e.length; i++) {
let a = e[i], o = e[i + 1];
r.push({
startIndex: a,
endIndex: a,
size: t
}), o !== void 0 && r.push({
startIndex: a + 1,
endIndex: o - 1,
size: n
});
}
return r;
})), n);
let b = z(N(n, F(_), P(({ sizes: e }, [t, n]) => ({
changed: n !== e,
sizes: n
}), {
changed: !1,
sizes: g
}), M((e) => e.changed)));
S(N(s, P((e, t) => ({
diff: e.prev - t,
prev: t
}), {
diff: 0,
prev: 0
}), M((e) => e.diff)), (e) => {
let { groupIndices: n } = T(_);
if (e > 0) C(t, !0), C(a, e + ot(e, n));
else if (e < 0) {
let t = T(v);
t.length > 0 && (e -= ot(-e, t)), C(o, e);
}
}), S(N(s, F(e)), ([e, t]) => {
e < 0 && t("`firstItemIndex` prop should not be set to less than zero. If you don't know the total count, just use a very high value", { firstItemIndex: s }, U.ERROR);
});
let x = z(a);
E(N(a, F(_), M(([e, t]) => {
let n = t.groupIndices.length > 0, r = [], i = t.lastSize;
if (n) {
let n = Te(t.sizeTree, 0), a = 0, o = 0;
for (; a < e;) {
let e = t.groupIndices[o], s = t.groupIndices.length === o + 1 ? Infinity : t.groupIndices[o + 1] - e - 1;
r.push({
endIndex: e,
size: n,
startIndex: e
}), r.push({
endIndex: e + 1 + s - 1,
size: i,
startIndex: e + 1
}), o++, a += s + 1;
}
let s = Ae(t.sizeTree);
return a !== e && s.shift(), s.reduce((t, { k: n, v: r }) => {
let i = t.ranges;
return t.prevSize !== 0 && (i = [...t.ranges, {
endIndex: n + e - 1,
size: t.prevSize,
startIndex: t.prevIndex
}]), {
prevIndex: n + e,
prevSize: r,
ranges: i
};
}, {
prevIndex: e,
prevSize: 0,
ranges: r
}).ranges;
}
return Ae(t.sizeTree).reduce((t, { k: n, v: r }) => ({
prevIndex: n + e,
prevSize: r,
ranges: [...t.ranges, {
endIndex: n + e - 1,
size: t.prevSize,
startIndex: t.prevIndex
}]
}), {
prevIndex: 0,
prevSize: i,
ranges: []
}).ranges;
})), n);
let w = z(N(o, F(_, h), M(([e, { offsetTree: t }, n]) => et(-e, t, n))));
return E(N(o, F(_, h), M(([e, t, n]) => {
if (t.groupIndices.length > 0) {
if (K(t.sizeTree)) return t;
let r = De(), i = T(v), a = 0, o = 0, s = 0;
for (; a < -e;) {
s = i[o];
let e = i[o + 1] - s - 1;
o++, a += e + 1;
}
if (r = Ae(t.sizeTree).reduce((t, { k: n, v: r }) => q(t, Math.max(0, n + e), r), r), a !== -e) {
let n = Te(t.sizeTree, s);
r = q(r, 0, n);
let i = Ee(t.sizeTree, -e + 1)[1];
r = q(r, 1, i);
}
return {
...t,
sizeTree: r,
...st(t.offsetTree, 0, r, n)
};
}
let r = Ae(t.sizeTree).reduce((t, { k: n, v: r }) => q(t, Math.max(0, n + e), r), De());
return {
...t,
sizeTree: r,
...st(t.offsetTree, 0, r, n)
};
})), _), {
beforeUnshiftWith: x,
data: m,
defaultItemSize: u,
firstItemIndex: s,
fixedItemSize: l,
fixedGroupSize: d,
gap: h,
groupIndices: c,
heightEstimates: f,
itemSize: p,
listRefresh: b,
shiftWith: o,
shiftWithOffset: w,
sizeRanges: n,
sizes: _,
statefulTotalCount: i,
totalCount: r,
trackItemSizes: y,
unshiftWith: a
};
}, x(W, Ue), { singleton: !0 });
function ft(e) {
return e.reduce((e, t) => (e.groupIndices.push(e.totalCount), e.totalCount += t + 1, e), {
groupIndices: [],
totalCount: 0
});
}
var pt = B(([{ groupIndices: e, sizes: t, totalCount: n }, { headerHeight: r, scrollTop: i }]) => {
let a = R(), o = R(), s = z(N(a, M(ft)));
return E(N(s, M((e) => e.totalCount)), n), E(N(s, M((e) => e.groupIndices)), e), E(N(V(i, t, r), j(([e, t]) => Je(t)), M(([e, t, n]) => Ee(t.groupOffsetTree, Math.max(e - n, 0), "v")[0]), A(), M((e) => [e])), o), {
groupCounts: a,
topItemsIndexes: o
};
}, x(dt, G)), mt = B(([{ log: e }]) => {
let t = I(!1), n = z(N(t, j((e) => e), A()));
return S(t, (t) => {
t && T(e)("props updated", {}, U.DEBUG);
}), {
didMount: n,
propsReady: t
};
}, x(W), { singleton: !0 }), ht = typeof document < "u" && "scrollBehavior" in document.documentElement.style;
function gt(e) {
let t = typeof e == "number" ? { index: e } : e;
return t.align || (t.align = "start"), (!t.behavior || !ht) && (t.behavior = "auto"), t.offset === void 0 && (t.offset = 0), t;
}
var _t = B(([{ gap: e, listRefresh: t, sizes: n, totalCount: r }, { fixedFooterHeight: i, fixedHeaderHeight: a, footerHeight: o, headerHeight: s, scrollingInProgress: c, scrollTo: l, smoothScrollTargetReached: u, viewportHeight: d }, { log: f }]) => {
let p = R(), m = R(), h = I(0), g = null, _ = null, v = null;
function y() {
g !== null && (g(), g = null), v !== null && (v(), v = null), _ && (clearTimeout(_), _ = null), C(c, !1);
}
return E(N(p, F(n, d, r, h, s, o, f), F(e, a, i), M(([[e, n, r, i, a, o, s, l], d, f, h]) => {
let b = gt(e), { align: x, behavior: w, offset: T } = b, E = i - 1, O = nt(b, n, E), k = et(O, n.offsetTree, d) + o;
x === "end" ? (k += f + Ee(n.sizeTree, O)[1] - r + h, O === E && (k += s)) : x === "center" ? k += (f + Ee(n.sizeTree, O)[1] - r + h) / 2 : k -= a, T !== void 0 && T !== 0 && (k += T);
let A = (t) => {
y(), t ? (l("retrying to scroll to", { location: e }, U.DEBUG), C(p, e)) : (C(m, !0), l("list did not change, scroll successful", {}, U.DEBUG));
};
if (y(), w === "smooth") {
let e = !1;
v = S(t, (t) => {
e = e || t;
}), g = D(u, () => {
A(e);
});
} else g = D(N(t, vt(150)), A);
return _ = setTimeout(() => {
y();
}, 1200), C(c, !0), l("scrolling from index to", {
behavior: w,
index: O,
top: k
}, U.DEBUG), {
behavior: w,
top: k
};
})), l), {
scrollTargetReached: m,
scrollToIndex: p,
topListHeight: h
};
}, x(dt, G, W), { singleton: !0 });
function vt(e) {
return (t) => {
let n = setTimeout(() => {
t(!1);
}, e);
return (e) => {
e && (t(!0), clearTimeout(n));
};
};
}
function yt(e, t) {
e === 0 ? t() : requestAnimationFrame(() => {
yt(e - 1, t);
});
}
function bt(e, t) {
let n = t - 1;
return typeof e == "number" ? e : e.index === "LAST" ? n : e.index;
}
var xt = B(([{ defaultItemSize: e, listRefresh: t, sizes: n }, { scrollTop: r }, { scrollTargetReached: i, scrollToIndex: a }, { didMount: o }]) => {
let s = I(!0), c = I(0), l = I(!0);
return E(N(o, F(c), j(([e, t]) => t !== 0), ee(!1)), s), E(N(o, F(c), j(([e, t]) => t !== 0), ee(!1)), l), S(N(V(t, o), F(s, n, e, l), j(([[, e], t, { sizeTree: n }, r, i]) => e && (!K(n) || g(r)) && !t && !i), F(c)), ([, e]) => {
D(i, () => {
C(l, !0);
}), yt(4, () => {
D(r, () => {
C(s, !0);
}), C(a, e);
});
}), {
initialItemFinalLocationReached: l,
initialTopMostItemIndex: c,
scrolledToInitialItem: s
};
}, x(dt, G, _t, mt), { singleton: !0 });
function St(e, t) {
return Math.abs(e - t) < 1.01;
}
var Ct = "up", wt = "down", Tt = "none", Et = {
atBottom: !1,
notAtBottomBecause: "NOT_SHOWING_LAST_ITEM",
state: {
offsetBottom: 0,
scrollHeight: 0,
scrollTop: 0,
viewportHeight: 0
}
}, Dt = 0, Ot = B(([{ footerHeight: e, headerHeight: t, scrollBy: n, scrollContainerState: r, scrollTop: i, viewportHeight: a }]) => {
let o = I(!1), s = I(!0), c = R(), l = R(), u = I(4), d = I(Dt), f = L(N(se(N(H(i), te(1), ee(!0)), N(H(i), te(1), ee(!1), O(100))), A()), !1), p = L(N(se(N(n, ee(!0)), N(n, ee(!1), O(200))), A()), !1);
E(N(V(H(i), H(d)), M(([e, t]) => e <= t), A()), s), E(N(s, ne(50)), l);
let m = z(N(V(r, H(a), H(t), H(e), H(u)), P((e, [{ scrollHeight: t, scrollTop: n }, r, i, a, o]) => {
let s = n + r - t > -o, c = {
scrollHeight: t,
scrollTop: n,
viewportHeight: r
};
if (s) {
let t, r;
return n > e.state.scrollTop ? (t = "SCROLLED_DOWN", r = e.state.scrollTop - n) : (t = "SIZE_DECREASED", r = e.state.scrollTop - n || e.scrollTopDelta), {
atBottom: !0,
atBottomBecause: t,
scrollTopDelta: r,
state: c
};
}
let l;
return l = c.scrollHeight > e.state.scrollHeight ? "SIZE_INCREASED" : r < e.state.viewportHeight ? "VIEWPORT_HEIGHT_DECREASING" : n < e.state.scrollTop ? "SCROLLING_UPWARDS" : "NOT_FULLY_SCROLLED_TO_LAST_ITEM_BOTTOM", {
atBottom: !1,
notAtBottomBecause: l,
state: c
};
}, Et), A((e, t) => e !== void 0 && e.atBottom === t.atBottom))), h = L(N(r, P((e, { scrollHeight: t, scrollTop: n, viewportHeight: r }) => {
if (!St(e.scrollHeight, t)) {
let i = t - (n + r) < 1;
return e.scrollTop !== n && i ? {
changed: !0,
jump: e.scrollTop - n,
scrollHeight: t,
scrollTop: n
} : {
changed: !0,
jump: 0,
scrollHeight: t,
scrollTop: n
};
}
return {
changed: !1,
jump: 0,
scrollHeight: t,
scrollTop: n
};
}, {
changed: !1,
jump: 0,
scrollHeight: 0,
scrollTop: 0
}), j((e) => e.changed), M((e) => e.jump)), 0);
E(N(m, M((e) => e.atBottom)), o), E(N(o, ne(50)), c);
let g = I(wt);
E(N(r, M(({ scrollTop: e }) => e), A(), P((e, t) => T(p) ? {
direction: e.direction,
prevScrollTop: t
} : {
direction: t < e.prevScrollTop ? Ct : wt,
prevScrollTop: t
}, {
direction: wt,
prevScrollTop: 0
}), M((e) => e.direction)), g), E(N(r, ne(50), ee(Tt)), g);
let _ = I(0);
return E(N(f, j((e) => !e), ee(0)), _), E(N(i, ne(100), F(f), j(([e, t]) => t), P(([e, t], [n]) => [t, n], [0, 0]), M(([e, t]) => t - e)), _), {
atBottomState: m,
atBottomStateChange: c,
atBottomThreshold: u,
atTopStateChange: l,
atTopThreshold: d,
isAtBottom: o,
isAtTop: s,
isScrolling: f,
lastJumpDueToItemResize: h,
scrollDirection: g,
scrollVelocity: _
};
}, x(G)), kt = "top", At = "bottom", jt = "none";
function Mt(e, t, n) {
return typeof e == "number" ? n === Ct && t === kt || n === wt && t === At ? e : 0 : n === Ct ? t === kt ? e.main : e.reverse : t === At ? e.main : e.reverse;
}
function Nt(e, t) {
var n;
return typeof e == "number" ? e : (n = e[t]) == null ? 0 : n;
}
var Pt = B(([{ deviation: e, fixedHeaderHeight: t, headerHeight: n, scrollTop: r, viewportHeight: i }]) => {
let a = R(), o = I(0), s = I(0), c = I(0);
return {
increaseViewportBy: s,
listBoundary: a,
overscan: c,
topListHeight: o,
visibleRange: L(N(V(H(r), H(i), H(n), H(a, He), H(c), H(o), H(t), H(e), H(s)), M(([e, t, n, [r, i], a, o, s, c, l]) => {
let u = e - c, d = o + s, f = Math.max(n - u, 0), p = jt, m = Nt(l, kt), h = Nt(l, At);
return r -= c, r += n + s, i += n + s, i -= c, r > e + d - m && (p = Ct), i < e - f + t + h && (p = wt), p === jt ? null : [Math.max(u - n - Mt(a, kt, p) - m, 0), u - f - s + t + Mt(a, At, p) + h];
}), j((e) => e !== null), A(He)), [0, 0])
};
}, x(G), { singleton: !0 });
function Ft(e, t, n) {
if (Je(t)) {
let r = tt(e, t);
return [{
index: Ee(t.groupOffsetTree, r)[0],
offset: 0,
size: 0
}, {
data: n == null ? void 0 : n[0],
index: r,
offset: 0,
size: 0
}];
}
return [{
data: n == null ? void 0 : n[0],
index: e,
offset: 0,
size: 0
}];
}
var It = {
bottom: 0,
firstItemIndex: 0,
items: [],
offsetBottom: 0,
offsetTop: 0,
top: 0,
topItems: [],
topListHeight: 0,
totalCount: 0
};
function Lt(e, t, n, r, i, a) {
let { lastIndex: o, lastOffset: s, lastSize: c } = i, l = 0, u = 0;
if (e.length > 0) {
l = e[0].offset;
let t = e[e.length - 1];
u = t.offset + t.size;
}
let d = n - o, f = s + d * c + (d - 1) * r, p = l, m = f - u;
return {
bottom: u,
firstItemIndex: a,
items: zt(e, i, a),
offsetBottom: m,
offsetTop: l,
top: p,
topItems: zt(t, i, a),
topListHeight: t.reduce((e, t) => t.size + e, 0),
totalCount: n
};
}
function Rt(e, t, n, r, i, a) {
let o = 0;
if (n.groupIndices.length > 0) for (let t of n.groupIndices) {
if (t - o >= e) break;
o++;
}
let s = e + o, c = bt(t, s);
return Lt(Array.from({ length: s }).map((e, t) => ({
data: a[t + c],
index: t + c,
offset: 0,
size: 0
})), [], s, i, n, r);
}
function zt(e, t, n) {
if (e.length === 0) return [];
if (!Je(t)) return e.map((e) => ({
...e,
index: e.index + n,
originalIndex: e.index
}));
let r = e[0].index, i = e[e.length - 1].index, a = [], o = Oe(t.groupOffsetTree, r, i), s, c = 0;
for (let r of e) {
(!s || s.end < r.index) && (s = o.shift(), c = t.groupIndices.indexOf(s.start));
let e;
e = r.index === s.start ? {
index: c,
type: "group"
} : {
groupIndex: c,
index: r.index - (c + 1) + n
}, a.push({
...e,
data: r.data,
offset: r.offset,
originalIndex: r.index,
size: r.size
});
}
return a;
}
function Bt(e, t) {
var n;
return e === void 0 ? 0 : typeof e == "number" ? e : (n = e[t]) == null ? 0 : n;
}
var Vt = B(([{ data: e, firstItemIndex: t, gap: n, sizes: r, totalCount: i }, a, { listBoundary: o, topListHeight: s, visibleRange: c }, { initialTopMostItemIndex: l, scrolledToInitialItem: u }, { topListHeight: d }, f, { didMount: p }, { recalcInProgress: m }]) => {
let h = I([]), _ = I(0), v = R(), b = I(0);
E(a.topItemsIndexes, h);
let x = L(N(V(p, m, H(c, He), H(i), H(r), H(l), u, H(h), H(t), H(n), H(b), e), j(([e, t, , n, , , , , , , , r]) => {
let i = r !== void 0 && r.length !== n;
return e && !t && !i;
}), M(([, , [e, t], n, r, i, a, o, s, c, l, u]) => {
let d = r, { offsetTree: f, sizeTree: p } = d, m = T(_);
if (n === 0) return {
...It,
totalCount: n
};
if (e === 0 && t === 0) return m === 0 ? {
...It,
totalCount: n
} : Rt(m, i, r, s, c, u || []);
if (K(p)) return m > 0 ? null : Lt(Ft(bt(i, n), d, u), [], n, c, d, s);
let h = [];
if (o.length > 0) {
let e = o[0], t = o[o.length - 1], n = 0;
for (let r of Oe(p, e, t)) {
let i = r.value, a = Math.max(r.start, e), o = Math.min(r.end, t);
for (let e = a; e <= o; e++) h.push({
data: u == null ? void 0 : u[e],
index: e,
offset: n,
size: i
}), n += i;
}
}
if (!a) return Lt([], h, n, c, d, s);
let g = o.length > 0 ? o[o.length - 1] + 1 : 0, v = rt(f, e, t, g);
if (v.length === 0) return null;
let b = n - 1, x = y([], (n) => {
for (let r of v) {
let i = r.value, a = i.offset, o = r.start, s = i.size;
if (i.offset < e) {
o += Math.floor((e - i.offset + c) / (s + c));
let t = o - r.start;
a += t * s + t * c;
}
o < g && (a += (g - o) * s, o = g);
let l = Math.min(r.end, b);
for (let e = o; e <= l && !(a >= t); e++) n.push({
data: u == null ? void 0 : u[e],
index: e,
offset: a,
size: s
}), a += s + c;
}
}), S = Bt(l, kt), C = Bt(l, At);
if (x.length > 0 && (S > 0 || C > 0)) {
let e = x[0], t = x[x.length - 1];
if (S > 0 && e.index > g) {
let t = Math.min(S, e.index - g), n = [], r = e.offset;
for (let i = e.index - 1; i >= e.index - t; i--) {
var w, E;
let t = (w = (E = Oe(p, i, i)[0]) == null ? void 0 : E.value) == null ? e.size : w;
r -= t + c, n.unshift({
data: u == null ? void 0 : u[i],
index: i,
offset: r,
size: t
});
}
x.unshift(...n);
}
if (C > 0 && t.index < b) {
let e = Math.min(C, b - t.index), n = t.offset + t.size + c;
for (let r = t.index + 1; r <= t.index + e; r++) {
var D, O;
let e = (D = (O = Oe(p, r, r)[0]) == null ? void 0 : O.value) == null ? t.size : D;
x.push({
data: u == null ? void 0 : u[r],
index: r,
offset: n,
size: e
}), n += e + c;
}
}
}
return Lt(x, h, n, c, d, s);
}), j((e) => e !== null), A()), It);
E(N(e, j(g), M((e) => e == null ? void 0 : e.length)), i), E(N(x, M((e) => e.topListHeight)), d), E(d, s), E(N(x, M((e) => [e.top, e.bottom])), o), E(N(x, M((e) => e.items)), v);
let S = z(N(x, j(({ items: e }) => e.length > 0), F(i, e), j(([{ items: e }, t]) => e[e.length - 1].originalIndex === t - 1), M(([, e, t]) => [e - 1, t]), A(He), M(([e]) => e))), C = z(N(x, ne(200), j(({ items: e, topItems: t }) => e.length > 0 && e[0].originalIndex === t.length), M(({ items: e }) => e[0].index), A()));
return {
endReached: S,
initialItemCount: _,
itemsRendered: v,
listState: x,
minOverscanItemCount: b,
rangeChanged: z(N(x, j(({ items: e }) => e.length > 0), M(({ items: e }) => {
let t = 0, n = e.length - 1;
for (; e[t].type === "group" && t < n;) t++;
for (; e[n].type === "group" && n > t;) n--;
return {
endIndex: e[n].index,
startIndex: e[t].index
};
}), A(Ve))),
startReached: C,
topItemsIndexes: h,
...f
};
}, x(dt, pt, Pt, xt, _t, Ot, mt, Ue), { singleton: !0 }), Ht = B(([{ fixedFooterHeight: e, fixedHeaderHeight: t, footerHeight: n, headerHeight: r }, { listState: i }]) => {
let a = R(), o = L(N(V(n, e, r, t, i), M(([e, t, n, r, i]) => e + t + n + r + i.offsetBottom + i.bottom)), 0);
return E(H(o), a), {
totalListHeight: o,
totalListHeightChanged: a
};
}, x(G, Vt), { singleton: !0 }), Ut = B(([{ viewportHeight: e }, { totalListHeight: t }]) => {
let n = I(!1);
return {
alignToBottom: n,
paddingTopAddition: L(N(V(n, e, t), j(([e]) => e), M(([, e, t]) => Math.max(0, e - t)), ne(0), A()), 0)
};
}, x(G, Ht), { singleton: !0 }), Wt = B(() => ({ context: I(null) })), Gt = ({ itemBottom: e, itemTop: t, locationParams: { align: n, behavior: r, ...i }, viewportBottom: a, viewportTop: o }) => t < o ? {
...i,
align: n == null ? "start" : n,
...r === void 0 ? {} : { behavior: r }
} : e > a ? {
...i,
align: n == null ? "end" : n,
...r === void 0 ? {} : { behavior: r }
} : null, Kt = B(([{ gap: e, sizes: t, totalCount: n }, { fixedFooterHeight: r, fixedHeaderHeight: i, headerHeight: a, scrollingInProgress: o, scrollTop: s, viewportHeight: c }, { scrollToIndex: l }]) => {
let u = R();
return E(N(u, F(t, c, n, a, i, r, s), F(e), M(([[e, t, n, r, i, a, s, c], l]) => {
let { calculateViewLocation: u = Gt, done: d, ...f } = e, p = nt(e, t, r - 1), m = et(p, t.offsetTree, l) + i + a, h = m + Ee(t.sizeTree, p)[1], g = c + a, _ = u({
itemBottom: h,
itemTop: m,
locationParams: f,
viewportBottom: c + n - s,
viewportTop: g
});
return _ === null ? d == null || d() : d && D(N(o, j((e) => !e), te(T(o) ? 1 : 2)), d), _;
}), j((e) => e !== null)), l), { scrollIntoView: u };
}, x(dt, G, _t, Vt, W), { singleton: !0 });
function qt(e) {
return e === !1 ? !1 : e === "smooth" ? "smooth" : "auto";
}
var Jt = (e, t) => typeof e == "function" ? qt(e(t)) : t && qt(e), Yt = B(([{ listRefresh: e, totalCount: t, fixedItemSize: n, data: r }, { atBottomState: i, isAtBottom: a }, { scrollToIndex: o }, { scrolledToInitialItem: s }, { didMount: c, propsReady: l }, { log: u }, { scrollingInProgress: d }, { context: f }, { scrollIntoView: p }]) => {
let m = I(!1), h = R(), g = null;
function _(e) {
C(o, {
align: "end",
behavior: e,
index: "LAST"
});
}
S(N(V(N(H(t), te(1)), c), F(H(m), a, s, d), M(([[e, t], n, r, i, a]) => {
let o = t && i, s = "auto";
return o && (s = Jt(n, r || a), o = o && s !== !1), {
followOutputBehavior: s,
shouldFollow: o,
totalCount: e
};
}), j(({ shouldFollow: e }) => e)), ({ followOutputBehavior: t, totalCount: r }) => {
g !== null && (g(), g = null), T(n) === void 0 ? g = D(e, () => {
T(u)("following output to ", { totalCount: r }, U.DEBUG), _(t), g = null;
}) : requestAnimationFrame(() => {
T(u)("following output to ", { totalCount: r }, U.DEBUG), _(t);
});
});
function v(e) {
let t = D(i, (t) => {
e && !t.atBottom && t.notAtBottomBecause === "SIZE_INCREASED" && g === null && (T(u)("scrolling to bottom due to increased size", {}, U.DEBUG), _("auto"));
});
setTimeout(t, 100);
}
S(N(V(H(m), t, l), j(([e, , t]) => e !== !1 && t), P(({ value: e }, [, t]) => ({
refreshed: e === t,
value: t
}), {
refreshed: !1,
value: 0
}), j(({ refreshed: e }) => e), F(m, t)), ([, e]) => {
T(s) && v(e !== !1);
}), S(h, () => {
v(T(m) !== !1);
}), S(V(H(m), i), ([e, t]) => {
e !== !1 && !t.atBottom && t.notAtBottomBecause === "VIEWPORT_HEIGHT_DECREASING" && _("auto");
});
let y = I(null), b = R();
return E(se(N(H(r), M((e) => {
var t;
return (t = e == null ? void 0 : e.length) == null ? 0 : t;
})), N(H(t))), b), S(N(V(N(b, te(1)), c), F(H(y), s, d, f), M(([[e, t], n, r, i, a]) => t && r && (n == null ? void 0 : n({
context: a,
totalCount: e,
scrollingInProgress: i
}))), j((e) => !!e), ne(0)), (t) => {
g !== null && (g(), g = null), T(n) === void 0 ? g = D(e, () => {
T(u)("scrolling into view", {}), C(p, t), g = null;
}) : requestAnimationFrame(() => {
T(u)("scrolling into view", {}), C(p, t);
});
}), {
autoscrollToBottom: h,
followOutput: m,
scrollIntoViewOnChange: y
};
}, x(dt, Ot, _t, xt, mt, W, G, Wt, Kt)), Xt = B(([{ data: e, firstItemIndex: t, gap: n, sizes: r }, { initialTopMostItemIndex: i }, { initialItemCount: a, listState: o }, { didMount: s }]) => (E(N(s, F(a), j(([, e]) => e !== 0), F(i, r, t, n, e), M(([[, e], t, n, r, i, a = []]) => Rt(e, t, n, r, i, a))), o), {}), x(dt, xt, Vt, mt), { singleton: !0 }), Zt = B(([{ didMount: e }, { scrollTo: t }, { listState: n }]) => {
let r = I(0);
return S(N(e, F(r), j(([, e]) => e !== 0), M(([, e]) => ({ top: e }))), (e) => {
D(N(n, te(1), j((e) => e.items.length > 1)), () => {
requestAnimationFrame(() => {
C(t, e);
});
});
}), { initialScrollTop: r };
}, x(mt, G, Vt), { singleton: !0 }), Qt = B(([{ scrollVelocity: e }]) => {
let t = I(!1), n = R(), r = I(!1);
return E(N(e, F(r, t, n), j(([e, t]) => t !== !1 && t !== void 0), M(([e, t, n, r]) => {
let { enter: i, exit: a } = t;
if (n) {
if (a(e, r)) return !1;
} else if (i(e, r)) return !0;
return n;
}), A()), t), S(N(V(t, e, n), F(r)), ([[e, t, n], r]) => {
e && r !== !1 && r !== void 0 && r.change && r.change(t, n);
}), {
isSeeking: t,
scrollSeekConfiguration: r,
scrollSeekRangeChanged: n,
scrollVelocity: e
};
}, x(Ot), { singleton: !0 }), $t = B(([{ scrollContainerState: e, scrollTo: t }]) => {
let n = R(), r = R(), i = R(), a = I(!1), o = I(void 0);
return E(N(V(n, r), M(([{ scrollTop: e, viewportHeight: t }, { offsetTop: n, listHeight: r }]) => ({
scrollHeight: r,
scrollTop: Math.max(0, e - n),
viewportHeight: t
}))), e), E(N(t, F(r), M(([e, { offsetTop: t }]) => ({
...e,
top: e.top + t
}))), i), {
customScrollParent: o,
useWindowScroll: a,
windowScrollContainerState: n,
windowScrollTo: i,
windowViewportRect: r
};
}, x(G)), en = B(([{ sizeRanges: e, sizes: t }, { headerHeight: n, scrollTop: r }, { initialTopMostItemIndex: i }, { didMount: a }, { useWindowScroll: o, windowScrollContainerState: s, windowViewportRect: c }]) => {
let l = R(), u = I(void 0), d = I(null), f = I(null);
return E(s, d), E(c, f), S(N(l, F(t, r, o, d, f, n)), ([e, t, n, r, i, a, o]) => {
let s = at(t.sizeTree);
r && i !== null && a !== null && (n = i.scrollTop - a.offsetTop), n -= o, e({
ranges: s,
scrollTop: n
});
}), E(N(u, j(g), M(tn)), i), E(N(a, F(u), j(([, e]) => e !== void 0), A(), M(([, e]) => e.ranges)), e), {
getState: l,
restoreStateFrom: u
};
}, x(dt, G, xt, mt, $t));
function tn(e) {
return {
align: "start",
index: 0,
offset: e.scrollTop
};
}
var nn = B(([{ topItemsIndexes: e }]) => {
let t = I(0);
return E(N(t, j((e) => e >= 0), M((e) => Array.from({ length: e }).map((e, t) => t))), e), { topItemCount: t };
}, x(Vt));
function rn(e) {
let t = !1, n;
return (() => (t || (t = !0, n = e()), n));
}
var an = rn(() => /iP(ad|od|hone)/i.test(navigator.userAgent) && /WebKit/i.test(navigator.userAgent)), on = B(([{ data: e, defaultItemSize: t, firstItemIndex: n, fixedItemSize: r, fixedGroupSize: i, gap: a, groupIndices: o, heightEstimates: s, itemSize: c, sizeRanges: l, sizes: u, statefulTotalCount: d, totalCount: f, trackItemSizes: p }, { initialItemFinalLocationReached: m, initialTopMostItemIndex: h, scrolledToInitialItem: g }, _, v, y, b, { scrollToIndex: x }, S, { topItemCount: C }, { groupCounts: w }, T]) => {
let { listState: D, minOverscanItemCount: O, topItemsIndexes: k, rangeChanged: A, ...j } = b;
return E(A, T.scrollSeekRangeChanged), E(N(T.windowViewportRect, M((e) => e.visibleHeight)), _.viewportHeight), {
data: e,
defaultItemHeight: t,
firstItemIndex: n,
fixedItemHeight: r,
fixedGroupHeight: i,
gap: a,
groupCounts: w,
heightEstimates: s,
initialItemFinalLocationReached: m,
initialTopMostItemIndex: h,
scrolledToInitialItem: g,
sizeRanges: l,
topItemCount: C,
topItemsIndexes: k,
totalCount: f,
...y,
groupIndices: o,
itemSize: c,
listState: D,
minOverscanItemCount: O,
scrollToIndex: x,
statefulTotalCount: d,
trackItemSizes: p,
rangeChanged: A,
...j,
...T,
..._,
sizes: u,
...v
};
}, x(dt, xt, G, en, Yt, Vt, _t, B(([{ deviation: e, scrollBy: t, scrollingInProgress: n, scrollTop: r }, { isAtBottom: i, isScrolling: a, lastJumpDueToItemResize: o, scrollDirection: s }, { listState: c }, { beforeUnshiftWith: l, gap: u, shiftWithOffset: d, sizes: f }, { log: p }, { recalcInProgress: m }]) => {
let h = z(N(c, F(o), P(([, e, t, n], [{ bottom: r, items: i, offsetBottom: a, totalCount: o }, s]) => {
let c = r + a, l = 0;
return t === o && e.length > 0 && i.length > 0 && (i[0].originalIndex === 0 && e[0].originalIndex === 0 || (l = c - n, l !== 0 && (l += s))), [
l,
i,
o,
c
];
}, [
0,
[],
0,
0
]), j(([e]) => e !== 0), F(r, s, n, i, p, m), j(([, e, t, n, , , r]) => !r && !n && e !== 0 && t === Ct), M(([[e], , , , , t]) => (t("Upward scrolling compensation", { amount: e }, U.DEBUG), e))));
function g(n) {
n > 0 ? (C(t, {
behavior: "auto",
top: -n
}), C(e, 0)) : (C(e, 0), C(t, {
behavior: "auto",
top: -n
}));
}
return S(N(h, F(e, a)), ([t, n, r]) => {
r && an() ? C(e, n - t) : g(-t);
}), S(N(V(L(a, !1), e, m), j(([e, t, n]) => !e && !n && t !== 0), M(([e, t]) => t), ne(1)), g), E(N(d, M((e) => ({ top: -e }))), t), S(N(l, F(f, u), M(([e, { groupIndices: t, lastSize: n, sizeTree: r }, i]) => {
function a(e) {
return e * (n + i);
}
if (t.length === 0) return a(e);
let o = 0, s = Te(r, 0), c = 0, l = 0;
for (; c < e;) {
c++, o += s;
let n = t.length === l + 1 ? Infinity : t[l + 1] - t[l] - 1;
c + n > e && (o -= s, n = e - c + 1), c += n, o += a(n), l++;
}
return o;
})), (n) => {
C(e, n), requestAnimationFrame(() => {
C(t, { top: n }), requestAnimationFrame(() => {
C(e, 0), C(m, !1);
});
});
}), { deviation: e };
}, x(G, Ot, Vt, dt, W, Ue)), nn, pt, B(([e, t, n, r, i, a, o, s, c, l, u]) => ({
...e,
...t,
...n,
...r,
...i,
...a,
...o,
...s,
...c,
...l,
...u
}), x(Pt, Xt, mt, Qt, Ht, Zt, Ut, $t, Kt, W, Wt))));
function sn(e, t) {
let n = {}, r = {}, i = 0, a = e.length;
for (; i < a;) r[e[i]] = 1, i += 1;
for (let e in t) Object.hasOwn(r, e) || (n[e] = t[e]);
return n;
}
var cn = typeof document < "u" ? a.useLayoutEffect : a.useEffect;
function ln(e, t, n) {
let r = Object.keys(t.required || {}), o = Object.keys(t.optional || {}), s = Object.keys(t.methods || {}), c = Object.keys(t.events || {}), l = a.createContext({});
function u(e, n) {
e.propsReady !== void 0 && C(e.propsReady, !1);
for (let i of r) {
let r = e[t.required[i]];
C(r, n[i]);
}
for (let r of o) if (r in n) {
let i = e[t.optional[r]];
C(i, n[r]);
}
e.propsReady !== void 0 && C(e.propsReady, !0);
}
function f(e) {
return s.reduce((n, r) => (n[r] = (n) => {
let i = e[t.methods[r]];
C(i, n);
}, n), {});
}
function p(e) {
return c.reduce((n, r) => (n[r] = ie(e[t.events[r]]), n), {});
}
return {
Component: a.forwardRef(function(t, s) {
let { children: h, ...g } = t, [_] = a.useState(() => y(oe(e), (e) => {
u(e, g);
})), [v] = a.useState(m(p, _));
cn(() => {
for (let e of c) e in g && S(v[e], g[e]);
return () => {
Object.values(v).map(w);
};
}, [
g,
v,
_
]), cn(() => {
u(_, g);
}), a.useImperativeHandle(s, d(f(_)));
let b = n;
return /* @__PURE__ */ (0, i.jsx)(l.Provider, {
value: _,
children: n === void 0 ? h : /* @__PURE__ */ (0, i.jsx)(b, {
...sn([
...r,
...o,
...c
], g),
children: h
})
});
}),
useEmitter: (e, t) => {
let n = a.useContext(l)[e];
cn(() => S(n, t), [t, n]);
},
useEmitterValue: (e) => {
let t = a.useContext(l)[e], n = a.useCallback((e) => S(t, e), [t]);
return a.useSyncExternalStore(n, () => T(t), () => T(t));
},
usePublisher: (e) => {
let t = a.useContext(l);
return a.useCallback((n) => {
C(t[e], n);
}, [t, e]);
}
};
}
var un = a.createContext(void 0), dn = a.createContext(void 0), fn = "-webkit-sticky", pn = "sticky", mn = rn(() => {
if (typeof document > "u") return pn;
let e = document.createElement("div");
return e.style.position = fn, e.style.position === fn ? fn : pn;
}), hn = typeof document < "u" ? a.useLayoutEffect : a.useEffect;
function gn(e) {
return "self" in e;
}
function _n(e) {
return "body" in e;
}
function vn(e, t, n, r = v, i, s) {
let c = a.useRef(null), l = a.useRef(null), u = a.useRef(null), d = a.useCallback((n) => {
let r, i, a, c = n.target;
if (_n(c) || gn(c)) {
let e = gn(c) ? c : c.defaultView;
a = s === !0 ? he(e, e.scrollX) : e.scrollY, r = s === !0 ? e.document.documentElement.scrollWidth : e.document.documentElement.scrollHeight, i = s === !0 ? e.innerWidth : e.innerHeight;
} else a = s === !0 ? he(c, c.scrollLeft) : c.scrollTop, r = s === !0 ? c.scrollWidth : c.scrollHeight, i = s === !0 ? c.offsetWidth : c.offsetHeight;
let d = () => {
e({
scrollHeight: r,
scrollTop: Math.max(a, 0),
viewportHeight: i
});
};
n.suppressFlushSync === !0 ? d() : o.flushSync(d), l.current !== null && (a === l.current || a <= 0 || a === r - i) && (l.current = null, t(!0), u.current && (clearTimeout(u.current), u.current = null));
}, [
e,
t,
s
]);
a.useEffect(() => {
let e = i || c.current;
return pe(e), r(i || c.current), d({
suppressFlushSync: !0,
target: e
}), e.addEventListener("scroll", d, { passive: !0 }), () => {
pe(e), r(null), e.removeEventListener("scroll", d);
};
}, [
c,
d,
n,
r,
i
]);
function f(n) {
let r = c.current;
if (!r || (s === !0 ? "offsetWidth" in r && r.offsetWidth === 0 : "offsetHeight" in r && r.offsetHeight === 0)) return;
let i = n.behavior === "smooth", a, o, d;
gn(r) ? (o = Math.max(qe(r.document.documentElement, s === !0 ? "width" : "height"), s === !0 ? r.document.documentElement.scrollWidth : r.document.documentElement.scrollHeight), a = s === !0 ? r.innerWidth : r.innerHeight, d = s === !0 ? he(r, r.scrollX) : r.scrollY) : (o = r[s === !0 ? "scrollWidth" : "scrollHeight"], a = qe(r, s === !0 ? "width" : "height"), d = s === !0 ? he(r, r.scrollLeft) : r.scrollTop);
let f = o - a;
if (n.top === void 0) {
r.scrollTo(n);
return;
}
let p = Math.ceil(Math.max(Math.min(f, n.top), 0));
if (n.top = p, St(a, o) || p === d) {
e({
scrollHeight: o,
scrollTop: d,
viewportHeight: a
}), i && t(!0);
return;
}
i ? (l.current = p, u.current && clearTimeout(u.current), u.current = setTimeout(() => {
u.current = null, l.current = null, t(!0);
}, 1e3)) : l.current = null, s === !0 && (n = {
...n.behavior === void 0 ? {} : { behavior: n.behavior },
left: ge(r, p)
}), r.scrollTo(n);
}
function p(e) {
s === !0 && (e = {
...e.behavior === void 0 ? {} : { behavior: e.behavior },
...e.top === void 0 ? {} : { left: ge(c.current, e.top) }
}), c.current.scrollBy(e);
}
return {
scrollByCallback: p,
scrollerRef: c,
scrollToCallback: f
};
}
function yn(e) {
return e;
}
var bn = /* @__PURE__ */ B(([e, t]) => ({
...e,
...t
}), x(on, /* @__P