@konstructio/ui
Version:
A set of reusable and customizable React components built for konstruct.io
1,180 lines • 70.8 kB
JavaScript
import * as j from "react";
function I(e, o) {
return typeof e == "function" ? e(o) : e;
}
function $(e, o) {
return (t) => {
o.setState((n) => ({
...n,
[e]: I(t, n[e])
}));
};
}
function L(e) {
return e instanceof Function;
}
function Se(e) {
return Array.isArray(e) && e.every((o) => typeof o == "number");
}
function me(e, o) {
const t = [], n = (r) => {
r.forEach((i) => {
t.push(i);
const l = o(i);
l != null && l.length && n(l);
});
};
return n(e), t;
}
function m(e, o, t) {
let n = [], r;
return (i) => {
let l;
t.key && t.debug && (l = Date.now());
const s = e(i);
if (!(s.length !== n.length || s.some((d, S) => n[S] !== d)))
return r;
n = s;
let g;
if (t.key && t.debug && (g = Date.now()), r = o(...s), t == null || t.onChange == null || t.onChange(r), t.key && t.debug && t != null && t.debug()) {
const d = Math.round((Date.now() - l) * 100) / 100, S = Math.round((Date.now() - g) * 100) / 100, f = S / 16, a = (c, p) => {
for (c = String(c); c.length < p; )
c = " " + c;
return c;
};
console.info(`%c⏱ ${a(S, 5)} /${a(d, 5)} ms`, `
font-size: .6rem;
font-weight: bold;
color: hsl(${Math.max(0, Math.min(120 - 120 * f, 120))}deg 100% 31%);`, t?.key);
}
return r;
};
}
function C(e, o, t, n) {
return {
debug: () => {
var r;
return (r = e?.debugAll) != null ? r : e[o];
},
key: process.env.NODE_ENV === "development" && t,
onChange: n
};
}
function Ce(e, o, t, n) {
const r = () => {
var l;
return (l = i.getValue()) != null ? l : e.options.renderFallbackValue;
}, i = {
id: `${o.id}_${t.id}`,
row: o,
column: t,
getValue: () => o.getValue(n),
renderValue: r,
getContext: m(() => [e, t, o, i], (l, s, u, g) => ({
table: l,
column: s,
row: u,
cell: g,
getValue: g.getValue,
renderValue: g.renderValue
}), C(e.options, "debugCells", "cell.getContext"))
};
return e._features.forEach((l) => {
l.createCell == null || l.createCell(i, t, o, e);
}, {}), i;
}
function Re(e, o, t, n) {
var r, i;
const s = {
...e._getDefaultColumnDef(),
...o
}, u = s.accessorKey;
let g = (r = (i = s.id) != null ? i : u ? typeof String.prototype.replaceAll == "function" ? u.replaceAll(".", "_") : u.replace(/\./g, "_") : void 0) != null ? r : typeof s.header == "string" ? s.header : void 0, d;
if (s.accessorFn ? d = s.accessorFn : u && (u.includes(".") ? d = (f) => {
let a = f;
for (const p of u.split(".")) {
var c;
a = (c = a) == null ? void 0 : c[p], process.env.NODE_ENV !== "production" && a === void 0 && console.warn(`"${p}" in deeply nested key "${u}" returned undefined.`);
}
return a;
} : d = (f) => f[s.accessorKey]), !g)
throw process.env.NODE_ENV !== "production" ? new Error(s.accessorFn ? "Columns require an id when using an accessorFn" : "Columns require an id when using a non-string header") : new Error();
let S = {
id: `${String(g)}`,
accessorFn: d,
parent: n,
depth: t,
columnDef: s,
columns: [],
getFlatColumns: m(() => [!0], () => {
var f;
return [S, ...(f = S.columns) == null ? void 0 : f.flatMap((a) => a.getFlatColumns())];
}, C(e.options, "debugColumns", "column.getFlatColumns")),
getLeafColumns: m(() => [e._getOrderColumnsFn()], (f) => {
var a;
if ((a = S.columns) != null && a.length) {
let c = S.columns.flatMap((p) => p.getLeafColumns());
return f(c);
}
return [S];
}, C(e.options, "debugColumns", "column.getLeafColumns"))
};
for (const f of e._features)
f.createColumn == null || f.createColumn(S, e);
return S;
}
const _ = "debugHeaders";
function ne(e, o, t) {
var n;
let i = {
id: (n = t.id) != null ? n : o.id,
column: o,
index: t.index,
isPlaceholder: !!t.isPlaceholder,
placeholderId: t.placeholderId,
depth: t.depth,
subHeaders: [],
colSpan: 0,
rowSpan: 0,
headerGroup: null,
getLeafHeaders: () => {
const l = [], s = (u) => {
u.subHeaders && u.subHeaders.length && u.subHeaders.map(s), l.push(u);
};
return s(i), l;
},
getContext: () => ({
table: e,
header: i,
column: o
})
};
return e._features.forEach((l) => {
l.createHeader == null || l.createHeader(i, e);
}), i;
}
const we = {
createTable: (e) => {
e.getHeaderGroups = m(() => [e.getAllColumns(), e.getVisibleLeafColumns(), e.getState().columnPinning.left, e.getState().columnPinning.right], (o, t, n, r) => {
var i, l;
const s = (i = n?.map((S) => t.find((f) => f.id === S)).filter(Boolean)) != null ? i : [], u = (l = r?.map((S) => t.find((f) => f.id === S)).filter(Boolean)) != null ? l : [], g = t.filter((S) => !(n != null && n.includes(S.id)) && !(r != null && r.includes(S.id)));
return H(o, [...s, ...g, ...u], e);
}, C(e.options, _, "getHeaderGroups")), e.getCenterHeaderGroups = m(() => [e.getAllColumns(), e.getVisibleLeafColumns(), e.getState().columnPinning.left, e.getState().columnPinning.right], (o, t, n, r) => (t = t.filter((i) => !(n != null && n.includes(i.id)) && !(r != null && r.includes(i.id))), H(o, t, e, "center")), C(e.options, _, "getCenterHeaderGroups")), e.getLeftHeaderGroups = m(() => [e.getAllColumns(), e.getVisibleLeafColumns(), e.getState().columnPinning.left], (o, t, n) => {
var r;
const i = (r = n?.map((l) => t.find((s) => s.id === l)).filter(Boolean)) != null ? r : [];
return H(o, i, e, "left");
}, C(e.options, _, "getLeftHeaderGroups")), e.getRightHeaderGroups = m(() => [e.getAllColumns(), e.getVisibleLeafColumns(), e.getState().columnPinning.right], (o, t, n) => {
var r;
const i = (r = n?.map((l) => t.find((s) => s.id === l)).filter(Boolean)) != null ? r : [];
return H(o, i, e, "right");
}, C(e.options, _, "getRightHeaderGroups")), e.getFooterGroups = m(() => [e.getHeaderGroups()], (o) => [...o].reverse(), C(e.options, _, "getFooterGroups")), e.getLeftFooterGroups = m(() => [e.getLeftHeaderGroups()], (o) => [...o].reverse(), C(e.options, _, "getLeftFooterGroups")), e.getCenterFooterGroups = m(() => [e.getCenterHeaderGroups()], (o) => [...o].reverse(), C(e.options, _, "getCenterFooterGroups")), e.getRightFooterGroups = m(() => [e.getRightHeaderGroups()], (o) => [...o].reverse(), C(e.options, _, "getRightFooterGroups")), e.getFlatHeaders = m(() => [e.getHeaderGroups()], (o) => o.map((t) => t.headers).flat(), C(e.options, _, "getFlatHeaders")), e.getLeftFlatHeaders = m(() => [e.getLeftHeaderGroups()], (o) => o.map((t) => t.headers).flat(), C(e.options, _, "getLeftFlatHeaders")), e.getCenterFlatHeaders = m(() => [e.getCenterHeaderGroups()], (o) => o.map((t) => t.headers).flat(), C(e.options, _, "getCenterFlatHeaders")), e.getRightFlatHeaders = m(() => [e.getRightHeaderGroups()], (o) => o.map((t) => t.headers).flat(), C(e.options, _, "getRightFlatHeaders")), e.getCenterLeafHeaders = m(() => [e.getCenterFlatHeaders()], (o) => o.filter((t) => {
var n;
return !((n = t.subHeaders) != null && n.length);
}), C(e.options, _, "getCenterLeafHeaders")), e.getLeftLeafHeaders = m(() => [e.getLeftFlatHeaders()], (o) => o.filter((t) => {
var n;
return !((n = t.subHeaders) != null && n.length);
}), C(e.options, _, "getLeftLeafHeaders")), e.getRightLeafHeaders = m(() => [e.getRightFlatHeaders()], (o) => o.filter((t) => {
var n;
return !((n = t.subHeaders) != null && n.length);
}), C(e.options, _, "getRightLeafHeaders")), e.getLeafHeaders = m(() => [e.getLeftHeaderGroups(), e.getCenterHeaderGroups(), e.getRightHeaderGroups()], (o, t, n) => {
var r, i, l, s, u, g;
return [...(r = (i = o[0]) == null ? void 0 : i.headers) != null ? r : [], ...(l = (s = t[0]) == null ? void 0 : s.headers) != null ? l : [], ...(u = (g = n[0]) == null ? void 0 : g.headers) != null ? u : []].map((d) => d.getLeafHeaders()).flat();
}, C(e.options, _, "getLeafHeaders"));
}
};
function H(e, o, t, n) {
var r, i;
let l = 0;
const s = function(f, a) {
a === void 0 && (a = 1), l = Math.max(l, a), f.filter((c) => c.getIsVisible()).forEach((c) => {
var p;
(p = c.columns) != null && p.length && s(c.columns, a + 1);
}, 0);
};
s(e);
let u = [];
const g = (f, a) => {
const c = {
depth: a,
id: [n, `${a}`].filter(Boolean).join("_"),
headers: []
}, p = [];
f.forEach((w) => {
const R = [...p].reverse()[0], v = w.column.depth === c.depth;
let h, M = !1;
if (v && w.column.parent ? h = w.column.parent : (h = w.column, M = !0), R && R?.column === h)
R.subHeaders.push(w);
else {
const F = ne(t, h, {
id: [n, a, h.id, w?.id].filter(Boolean).join("_"),
isPlaceholder: M,
placeholderId: M ? `${p.filter((y) => y.column === h).length}` : void 0,
depth: a,
index: p.length
});
F.subHeaders.push(w), p.push(F);
}
c.headers.push(w), w.headerGroup = c;
}), u.push(c), a > 0 && g(p, a - 1);
}, d = o.map((f, a) => ne(t, f, {
depth: l,
index: a
}));
g(d, l - 1), u.reverse();
const S = (f) => f.filter((c) => c.column.getIsVisible()).map((c) => {
let p = 0, w = 0, R = [0];
c.subHeaders && c.subHeaders.length ? (R = [], S(c.subHeaders).forEach((h) => {
let {
colSpan: M,
rowSpan: F
} = h;
p += M, R.push(F);
})) : p = 1;
const v = Math.min(...R);
return w = w + v, c.colSpan = p, c.rowSpan = w, {
colSpan: p,
rowSpan: w
};
});
return S((r = (i = u[0]) == null ? void 0 : i.headers) != null ? r : []), u;
}
const ve = (e, o, t, n, r, i, l) => {
let s = {
id: o,
index: n,
original: t,
depth: r,
parentId: l,
_valuesCache: {},
_uniqueValuesCache: {},
getValue: (u) => {
if (s._valuesCache.hasOwnProperty(u))
return s._valuesCache[u];
const g = e.getColumn(u);
if (g != null && g.accessorFn)
return s._valuesCache[u] = g.accessorFn(s.original, n), s._valuesCache[u];
},
getUniqueValues: (u) => {
if (s._uniqueValuesCache.hasOwnProperty(u))
return s._uniqueValuesCache[u];
const g = e.getColumn(u);
if (g != null && g.accessorFn)
return g.columnDef.getUniqueValues ? (s._uniqueValuesCache[u] = g.columnDef.getUniqueValues(s.original, n), s._uniqueValuesCache[u]) : (s._uniqueValuesCache[u] = [s.getValue(u)], s._uniqueValuesCache[u]);
},
renderValue: (u) => {
var g;
return (g = s.getValue(u)) != null ? g : e.options.renderFallbackValue;
},
subRows: [],
getLeafRows: () => me(s.subRows, (u) => u.subRows),
getParentRow: () => s.parentId ? e.getRow(s.parentId, !0) : void 0,
getParentRows: () => {
let u = [], g = s;
for (; ; ) {
const d = g.getParentRow();
if (!d) break;
u.push(d), g = d;
}
return u.reverse();
},
getAllCells: m(() => [e.getAllLeafColumns()], (u) => u.map((g) => Ce(e, s, g, g.id)), C(e.options, "debugRows", "getAllCells")),
_getAllCellsByColumnId: m(() => [s.getAllCells()], (u) => u.reduce((g, d) => (g[d.column.id] = d, g), {}), C(e.options, "debugRows", "getAllCellsByColumnId"))
};
for (let u = 0; u < e._features.length; u++) {
const g = e._features[u];
g == null || g.createRow == null || g.createRow(s, e);
}
return s;
}, he = {
createColumn: (e, o) => {
e._getFacetedRowModel = o.options.getFacetedRowModel && o.options.getFacetedRowModel(o, e.id), e.getFacetedRowModel = () => e._getFacetedRowModel ? e._getFacetedRowModel() : o.getPreFilteredRowModel(), e._getFacetedUniqueValues = o.options.getFacetedUniqueValues && o.options.getFacetedUniqueValues(o, e.id), e.getFacetedUniqueValues = () => e._getFacetedUniqueValues ? e._getFacetedUniqueValues() : /* @__PURE__ */ new Map(), e._getFacetedMinMaxValues = o.options.getFacetedMinMaxValues && o.options.getFacetedMinMaxValues(o, e.id), e.getFacetedMinMaxValues = () => {
if (e._getFacetedMinMaxValues)
return e._getFacetedMinMaxValues();
};
}
}, re = (e, o, t) => {
var n, r;
const i = t == null || (n = t.toString()) == null ? void 0 : n.toLowerCase();
return !!(!((r = e.getValue(o)) == null || (r = r.toString()) == null || (r = r.toLowerCase()) == null) && r.includes(i));
};
re.autoRemove = (e) => V(e);
const ie = (e, o, t) => {
var n;
return !!(!((n = e.getValue(o)) == null || (n = n.toString()) == null) && n.includes(t));
};
ie.autoRemove = (e) => V(e);
const le = (e, o, t) => {
var n;
return ((n = e.getValue(o)) == null || (n = n.toString()) == null ? void 0 : n.toLowerCase()) === t?.toLowerCase();
};
le.autoRemove = (e) => V(e);
const se = (e, o, t) => {
var n;
return (n = e.getValue(o)) == null ? void 0 : n.includes(t);
};
se.autoRemove = (e) => V(e);
const ue = (e, o, t) => !t.some((n) => {
var r;
return !((r = e.getValue(o)) != null && r.includes(n));
});
ue.autoRemove = (e) => V(e) || !(e != null && e.length);
const ge = (e, o, t) => t.some((n) => {
var r;
return (r = e.getValue(o)) == null ? void 0 : r.includes(n);
});
ge.autoRemove = (e) => V(e) || !(e != null && e.length);
const ae = (e, o, t) => e.getValue(o) === t;
ae.autoRemove = (e) => V(e);
const de = (e, o, t) => e.getValue(o) == t;
de.autoRemove = (e) => V(e);
const W = (e, o, t) => {
let [n, r] = t;
const i = e.getValue(o);
return i >= n && i <= r;
};
W.resolveFilterValue = (e) => {
let [o, t] = e, n = typeof o != "number" ? parseFloat(o) : o, r = typeof t != "number" ? parseFloat(t) : t, i = o === null || Number.isNaN(n) ? -1 / 0 : n, l = t === null || Number.isNaN(r) ? 1 / 0 : r;
if (i > l) {
const s = i;
i = l, l = s;
}
return [i, l];
};
W.autoRemove = (e) => V(e) || V(e[0]) && V(e[1]);
const P = {
includesString: re,
includesStringSensitive: ie,
equalsString: le,
arrIncludes: se,
arrIncludesAll: ue,
arrIncludesSome: ge,
equals: ae,
weakEquals: de,
inNumberRange: W
};
function V(e) {
return e == null || e === "";
}
const _e = {
getDefaultColumnDef: () => ({
filterFn: "auto"
}),
getInitialState: (e) => ({
columnFilters: [],
...e
}),
getDefaultOptions: (e) => ({
onColumnFiltersChange: $("columnFilters", e),
filterFromLeafRows: !1,
maxLeafRowFilterDepth: 100
}),
createColumn: (e, o) => {
e.getAutoFilterFn = () => {
const t = o.getCoreRowModel().flatRows[0], n = t?.getValue(e.id);
return typeof n == "string" ? P.includesString : typeof n == "number" ? P.inNumberRange : typeof n == "boolean" || n !== null && typeof n == "object" ? P.equals : Array.isArray(n) ? P.arrIncludes : P.weakEquals;
}, e.getFilterFn = () => {
var t, n;
return L(e.columnDef.filterFn) ? e.columnDef.filterFn : e.columnDef.filterFn === "auto" ? e.getAutoFilterFn() : (
// @ts-ignore
(t = (n = o.options.filterFns) == null ? void 0 : n[e.columnDef.filterFn]) != null ? t : P[e.columnDef.filterFn]
);
}, e.getCanFilter = () => {
var t, n, r;
return ((t = e.columnDef.enableColumnFilter) != null ? t : !0) && ((n = o.options.enableColumnFilters) != null ? n : !0) && ((r = o.options.enableFilters) != null ? r : !0) && !!e.accessorFn;
}, e.getIsFiltered = () => e.getFilterIndex() > -1, e.getFilterValue = () => {
var t;
return (t = o.getState().columnFilters) == null || (t = t.find((n) => n.id === e.id)) == null ? void 0 : t.value;
}, e.getFilterIndex = () => {
var t, n;
return (t = (n = o.getState().columnFilters) == null ? void 0 : n.findIndex((r) => r.id === e.id)) != null ? t : -1;
}, e.setFilterValue = (t) => {
o.setColumnFilters((n) => {
const r = e.getFilterFn(), i = n?.find((d) => d.id === e.id), l = I(t, i ? i.value : void 0);
if (oe(r, l, e)) {
var s;
return (s = n?.filter((d) => d.id !== e.id)) != null ? s : [];
}
const u = {
id: e.id,
value: l
};
if (i) {
var g;
return (g = n?.map((d) => d.id === e.id ? u : d)) != null ? g : [];
}
return n != null && n.length ? [...n, u] : [u];
});
};
},
createRow: (e, o) => {
e.columnFilters = {}, e.columnFiltersMeta = {};
},
createTable: (e) => {
e.setColumnFilters = (o) => {
const t = e.getAllLeafColumns(), n = (r) => {
var i;
return (i = I(o, r)) == null ? void 0 : i.filter((l) => {
const s = t.find((u) => u.id === l.id);
if (s) {
const u = s.getFilterFn();
if (oe(u, l.value, s))
return !1;
}
return !0;
});
};
e.options.onColumnFiltersChange == null || e.options.onColumnFiltersChange(n);
}, e.resetColumnFilters = (o) => {
var t, n;
e.setColumnFilters(o ? [] : (t = (n = e.initialState) == null ? void 0 : n.columnFilters) != null ? t : []);
}, e.getPreFilteredRowModel = () => e.getCoreRowModel(), e.getFilteredRowModel = () => (!e._getFilteredRowModel && e.options.getFilteredRowModel && (e._getFilteredRowModel = e.options.getFilteredRowModel(e)), e.options.manualFiltering || !e._getFilteredRowModel ? e.getPreFilteredRowModel() : e._getFilteredRowModel());
}
};
function oe(e, o, t) {
return (e && e.autoRemove ? e.autoRemove(o, t) : !1) || typeof o > "u" || typeof o == "string" && !o;
}
const Fe = (e, o, t) => t.reduce((n, r) => {
const i = r.getValue(e);
return n + (typeof i == "number" ? i : 0);
}, 0), $e = (e, o, t) => {
let n;
return t.forEach((r) => {
const i = r.getValue(e);
i != null && (n > i || n === void 0 && i >= i) && (n = i);
}), n;
}, Ve = (e, o, t) => {
let n;
return t.forEach((r) => {
const i = r.getValue(e);
i != null && (n < i || n === void 0 && i >= i) && (n = i);
}), n;
}, Me = (e, o, t) => {
let n, r;
return t.forEach((i) => {
const l = i.getValue(e);
l != null && (n === void 0 ? l >= l && (n = r = l) : (n > l && (n = l), r < l && (r = l)));
}), [n, r];
}, Pe = (e, o) => {
let t = 0, n = 0;
if (o.forEach((r) => {
let i = r.getValue(e);
i != null && (i = +i) >= i && (++t, n += i);
}), t) return n / t;
}, Ie = (e, o) => {
if (!o.length)
return;
const t = o.map((i) => i.getValue(e));
if (!Se(t))
return;
if (t.length === 1)
return t[0];
const n = Math.floor(t.length / 2), r = t.sort((i, l) => i - l);
return t.length % 2 !== 0 ? r[n] : (r[n - 1] + r[n]) / 2;
}, xe = (e, o) => Array.from(new Set(o.map((t) => t.getValue(e))).values()), ye = (e, o) => new Set(o.map((t) => t.getValue(e))).size, De = (e, o) => o.length, z = {
sum: Fe,
min: $e,
max: Ve,
extent: Me,
mean: Pe,
median: Ie,
unique: xe,
uniqueCount: ye,
count: De
}, Ee = {
getDefaultColumnDef: () => ({
aggregatedCell: (e) => {
var o, t;
return (o = (t = e.getValue()) == null || t.toString == null ? void 0 : t.toString()) != null ? o : null;
},
aggregationFn: "auto"
}),
getInitialState: (e) => ({
grouping: [],
...e
}),
getDefaultOptions: (e) => ({
onGroupingChange: $("grouping", e),
groupedColumnMode: "reorder"
}),
createColumn: (e, o) => {
e.toggleGrouping = () => {
o.setGrouping((t) => t != null && t.includes(e.id) ? t.filter((n) => n !== e.id) : [...t ?? [], e.id]);
}, e.getCanGroup = () => {
var t, n;
return ((t = e.columnDef.enableGrouping) != null ? t : !0) && ((n = o.options.enableGrouping) != null ? n : !0) && (!!e.accessorFn || !!e.columnDef.getGroupingValue);
}, e.getIsGrouped = () => {
var t;
return (t = o.getState().grouping) == null ? void 0 : t.includes(e.id);
}, e.getGroupedIndex = () => {
var t;
return (t = o.getState().grouping) == null ? void 0 : t.indexOf(e.id);
}, e.getToggleGroupingHandler = () => {
const t = e.getCanGroup();
return () => {
t && e.toggleGrouping();
};
}, e.getAutoAggregationFn = () => {
const t = o.getCoreRowModel().flatRows[0], n = t?.getValue(e.id);
if (typeof n == "number")
return z.sum;
if (Object.prototype.toString.call(n) === "[object Date]")
return z.extent;
}, e.getAggregationFn = () => {
var t, n;
if (!e)
throw new Error();
return L(e.columnDef.aggregationFn) ? e.columnDef.aggregationFn : e.columnDef.aggregationFn === "auto" ? e.getAutoAggregationFn() : (t = (n = o.options.aggregationFns) == null ? void 0 : n[e.columnDef.aggregationFn]) != null ? t : z[e.columnDef.aggregationFn];
};
},
createTable: (e) => {
e.setGrouping = (o) => e.options.onGroupingChange == null ? void 0 : e.options.onGroupingChange(o), e.resetGrouping = (o) => {
var t, n;
e.setGrouping(o ? [] : (t = (n = e.initialState) == null ? void 0 : n.grouping) != null ? t : []);
}, e.getPreGroupedRowModel = () => e.getFilteredRowModel(), e.getGroupedRowModel = () => (!e._getGroupedRowModel && e.options.getGroupedRowModel && (e._getGroupedRowModel = e.options.getGroupedRowModel(e)), e.options.manualGrouping || !e._getGroupedRowModel ? e.getPreGroupedRowModel() : e._getGroupedRowModel());
},
createRow: (e, o) => {
e.getIsGrouped = () => !!e.groupingColumnId, e.getGroupingValue = (t) => {
if (e._groupingValuesCache.hasOwnProperty(t))
return e._groupingValuesCache[t];
const n = o.getColumn(t);
return n != null && n.columnDef.getGroupingValue ? (e._groupingValuesCache[t] = n.columnDef.getGroupingValue(e.original), e._groupingValuesCache[t]) : e.getValue(t);
}, e._groupingValuesCache = {};
},
createCell: (e, o, t, n) => {
e.getIsGrouped = () => o.getIsGrouped() && o.id === t.groupingColumnId, e.getIsPlaceholder = () => !e.getIsGrouped() && o.getIsGrouped(), e.getIsAggregated = () => {
var r;
return !e.getIsGrouped() && !e.getIsPlaceholder() && !!((r = t.subRows) != null && r.length);
};
}
};
function He(e, o, t) {
if (!(o != null && o.length) || !t)
return e;
const n = e.filter((i) => !o.includes(i.id));
return t === "remove" ? n : [...o.map((i) => e.find((l) => l.id === i)).filter(Boolean), ...n];
}
const Ge = {
getInitialState: (e) => ({
columnOrder: [],
...e
}),
getDefaultOptions: (e) => ({
onColumnOrderChange: $("columnOrder", e)
}),
createColumn: (e, o) => {
e.getIndex = m((t) => [E(o, t)], (t) => t.findIndex((n) => n.id === e.id), C(o.options, "debugColumns", "getIndex")), e.getIsFirstColumn = (t) => {
var n;
return ((n = E(o, t)[0]) == null ? void 0 : n.id) === e.id;
}, e.getIsLastColumn = (t) => {
var n;
const r = E(o, t);
return ((n = r[r.length - 1]) == null ? void 0 : n.id) === e.id;
};
},
createTable: (e) => {
e.setColumnOrder = (o) => e.options.onColumnOrderChange == null ? void 0 : e.options.onColumnOrderChange(o), e.resetColumnOrder = (o) => {
var t;
e.setColumnOrder(o ? [] : (t = e.initialState.columnOrder) != null ? t : []);
}, e._getOrderColumnsFn = m(() => [e.getState().columnOrder, e.getState().grouping, e.options.groupedColumnMode], (o, t, n) => (r) => {
let i = [];
if (!(o != null && o.length))
i = r;
else {
const l = [...o], s = [...r];
for (; s.length && l.length; ) {
const u = l.shift(), g = s.findIndex((d) => d.id === u);
g > -1 && i.push(s.splice(g, 1)[0]);
}
i = [...i, ...s];
}
return He(i, t, n);
}, C(e.options, "debugTable", "_getOrderColumnsFn"));
}
}, O = () => ({
left: [],
right: []
}), Ae = {
getInitialState: (e) => ({
columnPinning: O(),
...e
}),
getDefaultOptions: (e) => ({
onColumnPinningChange: $("columnPinning", e)
}),
createColumn: (e, o) => {
e.pin = (t) => {
const n = e.getLeafColumns().map((r) => r.id).filter(Boolean);
o.setColumnPinning((r) => {
var i, l;
if (t === "right") {
var s, u;
return {
left: ((s = r?.left) != null ? s : []).filter((S) => !(n != null && n.includes(S))),
right: [...((u = r?.right) != null ? u : []).filter((S) => !(n != null && n.includes(S))), ...n]
};
}
if (t === "left") {
var g, d;
return {
left: [...((g = r?.left) != null ? g : []).filter((S) => !(n != null && n.includes(S))), ...n],
right: ((d = r?.right) != null ? d : []).filter((S) => !(n != null && n.includes(S)))
};
}
return {
left: ((i = r?.left) != null ? i : []).filter((S) => !(n != null && n.includes(S))),
right: ((l = r?.right) != null ? l : []).filter((S) => !(n != null && n.includes(S)))
};
});
}, e.getCanPin = () => e.getLeafColumns().some((n) => {
var r, i, l;
return ((r = n.columnDef.enablePinning) != null ? r : !0) && ((i = (l = o.options.enableColumnPinning) != null ? l : o.options.enablePinning) != null ? i : !0);
}), e.getIsPinned = () => {
const t = e.getLeafColumns().map((s) => s.id), {
left: n,
right: r
} = o.getState().columnPinning, i = t.some((s) => n?.includes(s)), l = t.some((s) => r?.includes(s));
return i ? "left" : l ? "right" : !1;
}, e.getPinnedIndex = () => {
var t, n;
const r = e.getIsPinned();
return r ? (t = (n = o.getState().columnPinning) == null || (n = n[r]) == null ? void 0 : n.indexOf(e.id)) != null ? t : -1 : 0;
};
},
createRow: (e, o) => {
e.getCenterVisibleCells = m(() => [e._getAllVisibleCells(), o.getState().columnPinning.left, o.getState().columnPinning.right], (t, n, r) => {
const i = [...n ?? [], ...r ?? []];
return t.filter((l) => !i.includes(l.column.id));
}, C(o.options, "debugRows", "getCenterVisibleCells")), e.getLeftVisibleCells = m(() => [e._getAllVisibleCells(), o.getState().columnPinning.left], (t, n) => (n ?? []).map((i) => t.find((l) => l.column.id === i)).filter(Boolean).map((i) => ({
...i,
position: "left"
})), C(o.options, "debugRows", "getLeftVisibleCells")), e.getRightVisibleCells = m(() => [e._getAllVisibleCells(), o.getState().columnPinning.right], (t, n) => (n ?? []).map((i) => t.find((l) => l.column.id === i)).filter(Boolean).map((i) => ({
...i,
position: "right"
})), C(o.options, "debugRows", "getRightVisibleCells"));
},
createTable: (e) => {
e.setColumnPinning = (o) => e.options.onColumnPinningChange == null ? void 0 : e.options.onColumnPinningChange(o), e.resetColumnPinning = (o) => {
var t, n;
return e.setColumnPinning(o ? O() : (t = (n = e.initialState) == null ? void 0 : n.columnPinning) != null ? t : O());
}, e.getIsSomeColumnsPinned = (o) => {
var t;
const n = e.getState().columnPinning;
if (!o) {
var r, i;
return !!((r = n.left) != null && r.length || (i = n.right) != null && i.length);
}
return !!((t = n[o]) != null && t.length);
}, e.getLeftLeafColumns = m(() => [e.getAllLeafColumns(), e.getState().columnPinning.left], (o, t) => (t ?? []).map((n) => o.find((r) => r.id === n)).filter(Boolean), C(e.options, "debugColumns", "getLeftLeafColumns")), e.getRightLeafColumns = m(() => [e.getAllLeafColumns(), e.getState().columnPinning.right], (o, t) => (t ?? []).map((n) => o.find((r) => r.id === n)).filter(Boolean), C(e.options, "debugColumns", "getRightLeafColumns")), e.getCenterLeafColumns = m(() => [e.getAllLeafColumns(), e.getState().columnPinning.left, e.getState().columnPinning.right], (o, t, n) => {
const r = [...t ?? [], ...n ?? []];
return o.filter((i) => !r.includes(i.id));
}, C(e.options, "debugColumns", "getCenterLeafColumns"));
}
};
function Le(e) {
return e || (typeof document < "u" ? document : null);
}
const G = {
size: 150,
minSize: 20,
maxSize: Number.MAX_SAFE_INTEGER
}, B = () => ({
startOffset: null,
startSize: null,
deltaOffset: null,
deltaPercentage: null,
isResizingColumn: !1,
columnSizingStart: []
}), ze = {
getDefaultColumnDef: () => G,
getInitialState: (e) => ({
columnSizing: {},
columnSizingInfo: B(),
...e
}),
getDefaultOptions: (e) => ({
columnResizeMode: "onEnd",
columnResizeDirection: "ltr",
onColumnSizingChange: $("columnSizing", e),
onColumnSizingInfoChange: $("columnSizingInfo", e)
}),
createColumn: (e, o) => {
e.getSize = () => {
var t, n, r;
const i = o.getState().columnSizing[e.id];
return Math.min(Math.max((t = e.columnDef.minSize) != null ? t : G.minSize, (n = i ?? e.columnDef.size) != null ? n : G.size), (r = e.columnDef.maxSize) != null ? r : G.maxSize);
}, e.getStart = m((t) => [t, E(o, t), o.getState().columnSizing], (t, n) => n.slice(0, e.getIndex(t)).reduce((r, i) => r + i.getSize(), 0), C(o.options, "debugColumns", "getStart")), e.getAfter = m((t) => [t, E(o, t), o.getState().columnSizing], (t, n) => n.slice(e.getIndex(t) + 1).reduce((r, i) => r + i.getSize(), 0), C(o.options, "debugColumns", "getAfter")), e.resetSize = () => {
o.setColumnSizing((t) => {
let {
[e.id]: n,
...r
} = t;
return r;
});
}, e.getCanResize = () => {
var t, n;
return ((t = e.columnDef.enableResizing) != null ? t : !0) && ((n = o.options.enableColumnResizing) != null ? n : !0);
}, e.getIsResizing = () => o.getState().columnSizingInfo.isResizingColumn === e.id;
},
createHeader: (e, o) => {
e.getSize = () => {
let t = 0;
const n = (r) => {
if (r.subHeaders.length)
r.subHeaders.forEach(n);
else {
var i;
t += (i = r.column.getSize()) != null ? i : 0;
}
};
return n(e), t;
}, e.getStart = () => {
if (e.index > 0) {
const t = e.headerGroup.headers[e.index - 1];
return t.getStart() + t.getSize();
}
return 0;
}, e.getResizeHandler = (t) => {
const n = o.getColumn(e.column.id), r = n?.getCanResize();
return (i) => {
if (!n || !r || (i.persist == null || i.persist(), T(i) && i.touches && i.touches.length > 1))
return;
const l = e.getSize(), s = e ? e.getLeafHeaders().map((R) => [R.column.id, R.column.getSize()]) : [[n.id, n.getSize()]], u = T(i) ? Math.round(i.touches[0].clientX) : i.clientX, g = {}, d = (R, v) => {
typeof v == "number" && (o.setColumnSizingInfo((h) => {
var M, F;
const y = o.options.columnResizeDirection === "rtl" ? -1 : 1, b = (v - ((M = h?.startOffset) != null ? M : 0)) * y, ee = Math.max(b / ((F = h?.startSize) != null ? F : 0), -0.999999);
return h.columnSizingStart.forEach((ce) => {
let [pe, te] = ce;
g[pe] = Math.round(Math.max(te + te * ee, 0) * 100) / 100;
}), {
...h,
deltaOffset: b,
deltaPercentage: ee
};
}), (o.options.columnResizeMode === "onChange" || R === "end") && o.setColumnSizing((h) => ({
...h,
...g
})));
}, S = (R) => d("move", R), f = (R) => {
d("end", R), o.setColumnSizingInfo((v) => ({
...v,
isResizingColumn: !1,
startOffset: null,
startSize: null,
deltaOffset: null,
deltaPercentage: null,
columnSizingStart: []
}));
}, a = Le(t), c = {
moveHandler: (R) => S(R.clientX),
upHandler: (R) => {
a?.removeEventListener("mousemove", c.moveHandler), a?.removeEventListener("mouseup", c.upHandler), f(R.clientX);
}
}, p = {
moveHandler: (R) => (R.cancelable && (R.preventDefault(), R.stopPropagation()), S(R.touches[0].clientX), !1),
upHandler: (R) => {
var v;
a?.removeEventListener("touchmove", p.moveHandler), a?.removeEventListener("touchend", p.upHandler), R.cancelable && (R.preventDefault(), R.stopPropagation()), f((v = R.touches[0]) == null ? void 0 : v.clientX);
}
}, w = Oe() ? {
passive: !1
} : !1;
T(i) ? (a?.addEventListener("touchmove", p.moveHandler, w), a?.addEventListener("touchend", p.upHandler, w)) : (a?.addEventListener("mousemove", c.moveHandler, w), a?.addEventListener("mouseup", c.upHandler, w)), o.setColumnSizingInfo((R) => ({
...R,
startOffset: u,
startSize: l,
deltaOffset: 0,
deltaPercentage: 0,
columnSizingStart: s,
isResizingColumn: n.id
}));
};
};
},
createTable: (e) => {
e.setColumnSizing = (o) => e.options.onColumnSizingChange == null ? void 0 : e.options.onColumnSizingChange(o), e.setColumnSizingInfo = (o) => e.options.onColumnSizingInfoChange == null ? void 0 : e.options.onColumnSizingInfoChange(o), e.resetColumnSizing = (o) => {
var t;
e.setColumnSizing(o ? {} : (t = e.initialState.columnSizing) != null ? t : {});
}, e.resetHeaderSizeInfo = (o) => {
var t;
e.setColumnSizingInfo(o ? B() : (t = e.initialState.columnSizingInfo) != null ? t : B());
}, e.getTotalSize = () => {
var o, t;
return (o = (t = e.getHeaderGroups()[0]) == null ? void 0 : t.headers.reduce((n, r) => n + r.getSize(), 0)) != null ? o : 0;
}, e.getLeftTotalSize = () => {
var o, t;
return (o = (t = e.getLeftHeaderGroups()[0]) == null ? void 0 : t.headers.reduce((n, r) => n + r.getSize(), 0)) != null ? o : 0;
}, e.getCenterTotalSize = () => {
var o, t;
return (o = (t = e.getCenterHeaderGroups()[0]) == null ? void 0 : t.headers.reduce((n, r) => n + r.getSize(), 0)) != null ? o : 0;
}, e.getRightTotalSize = () => {
var o, t;
return (o = (t = e.getRightHeaderGroups()[0]) == null ? void 0 : t.headers.reduce((n, r) => n + r.getSize(), 0)) != null ? o : 0;
};
}
};
let A = null;
function Oe() {
if (typeof A == "boolean") return A;
let e = !1;
try {
const o = {
get passive() {
return e = !0, !1;
}
}, t = () => {
};
window.addEventListener("test", t, o), window.removeEventListener("test", t);
} catch {
e = !1;
}
return A = e, A;
}
function T(e) {
return e.type === "touchstart";
}
const Be = {
getInitialState: (e) => ({
columnVisibility: {},
...e
}),
getDefaultOptions: (e) => ({
onColumnVisibilityChange: $("columnVisibility", e)
}),
createColumn: (e, o) => {
e.toggleVisibility = (t) => {
e.getCanHide() && o.setColumnVisibility((n) => ({
...n,
[e.id]: t ?? !e.getIsVisible()
}));
}, e.getIsVisible = () => {
var t, n;
const r = e.columns;
return (t = r.length ? r.some((i) => i.getIsVisible()) : (n = o.getState().columnVisibility) == null ? void 0 : n[e.id]) != null ? t : !0;
}, e.getCanHide = () => {
var t, n;
return ((t = e.columnDef.enableHiding) != null ? t : !0) && ((n = o.options.enableHiding) != null ? n : !0);
}, e.getToggleVisibilityHandler = () => (t) => {
e.toggleVisibility == null || e.toggleVisibility(t.target.checked);
};
},
createRow: (e, o) => {
e._getAllVisibleCells = m(() => [e.getAllCells(), o.getState().columnVisibility], (t) => t.filter((n) => n.column.getIsVisible()), C(o.options, "debugRows", "_getAllVisibleCells")), e.getVisibleCells = m(() => [e.getLeftVisibleCells(), e.getCenterVisibleCells(), e.getRightVisibleCells()], (t, n, r) => [...t, ...n, ...r], C(o.options, "debugRows", "getVisibleCells"));
},
createTable: (e) => {
const o = (t, n) => m(() => [n(), n().filter((r) => r.getIsVisible()).map((r) => r.id).join("_")], (r) => r.filter((i) => i.getIsVisible == null ? void 0 : i.getIsVisible()), C(e.options, "debugColumns", t));
e.getVisibleFlatColumns = o("getVisibleFlatColumns", () => e.getAllFlatColumns()), e.getVisibleLeafColumns = o("getVisibleLeafColumns", () => e.getAllLeafColumns()), e.getLeftVisibleLeafColumns = o("getLeftVisibleLeafColumns", () => e.getLeftLeafColumns()), e.getRightVisibleLeafColumns = o("getRightVisibleLeafColumns", () => e.getRightLeafColumns()), e.getCenterVisibleLeafColumns = o("getCenterVisibleLeafColumns", () => e.getCenterLeafColumns()), e.setColumnVisibility = (t) => e.options.onColumnVisibilityChange == null ? void 0 : e.options.onColumnVisibilityChange(t), e.resetColumnVisibility = (t) => {
var n;
e.setColumnVisibility(t ? {} : (n = e.initialState.columnVisibility) != null ? n : {});
}, e.toggleAllColumnsVisible = (t) => {
var n;
t = (n = t) != null ? n : !e.getIsAllColumnsVisible(), e.setColumnVisibility(e.getAllLeafColumns().reduce((r, i) => ({
...r,
[i.id]: t || !(i.getCanHide != null && i.getCanHide())
}), {}));
}, e.getIsAllColumnsVisible = () => !e.getAllLeafColumns().some((t) => !(t.getIsVisible != null && t.getIsVisible())), e.getIsSomeColumnsVisible = () => e.getAllLeafColumns().some((t) => t.getIsVisible == null ? void 0 : t.getIsVisible()), e.getToggleAllColumnsVisibilityHandler = () => (t) => {
var n;
e.toggleAllColumnsVisible((n = t.target) == null ? void 0 : n.checked);
};
}
};
function E(e, o) {
return o ? o === "center" ? e.getCenterVisibleLeafColumns() : o === "left" ? e.getLeftVisibleLeafColumns() : e.getRightVisibleLeafColumns() : e.getVisibleLeafColumns();
}
const Te = {
createTable: (e) => {
e._getGlobalFacetedRowModel = e.options.getFacetedRowModel && e.options.getFacetedRowModel(e, "__global__"), e.getGlobalFacetedRowModel = () => e.options.manualFiltering || !e._getGlobalFacetedRowModel ? e.getPreFilteredRowModel() : e._getGlobalFacetedRowModel(), e._getGlobalFacetedUniqueValues = e.options.getFacetedUniqueValues && e.options.getFacetedUniqueValues(e, "__global__"), e.getGlobalFacetedUniqueValues = () => e._getGlobalFacetedUniqueValues ? e._getGlobalFacetedUniqueValues() : /* @__PURE__ */ new Map(), e._getGlobalFacetedMinMaxValues = e.options.getFacetedMinMaxValues && e.options.getFacetedMinMaxValues(e, "__global__"), e.getGlobalFacetedMinMaxValues = () => {
if (e._getGlobalFacetedMinMaxValues)
return e._getGlobalFacetedMinMaxValues();
};
}
}, qe = {
getInitialState: (e) => ({
globalFilter: void 0,
...e
}),
getDefaultOptions: (e) => ({
onGlobalFilterChange: $("globalFilter", e),
globalFilterFn: "auto",
getColumnCanGlobalFilter: (o) => {
var t;
const n = (t = e.getCoreRowModel().flatRows[0]) == null || (t = t._getAllCellsByColumnId()[o.id]) == null ? void 0 : t.getValue();
return typeof n == "string" || typeof n == "number";
}
}),
createColumn: (e, o) => {
e.getCanGlobalFilter = () => {
var t, n, r, i;
return ((t = e.columnDef.enableGlobalFilter) != null ? t : !0) && ((n = o.options.enableGlobalFilter) != null ? n : !0) && ((r = o.options.enableFilters) != null ? r : !0) && ((i = o.options.getColumnCanGlobalFilter == null ? void 0 : o.options.getColumnCanGlobalFilter(e)) != null ? i : !0) && !!e.accessorFn;
};
},
createTable: (e) => {
e.getGlobalAutoFilterFn = () => P.includesString, e.getGlobalFilterFn = () => {
var o, t;
const {
globalFilterFn: n
} = e.options;
return L(n) ? n : n === "auto" ? e.getGlobalAutoFilterFn() : (o = (t = e.options.filterFns) == null ? void 0 : t[n]) != null ? o : P[n];
}, e.setGlobalFilter = (o) => {
e.options.onGlobalFilterChange == null || e.options.onGlobalFilterChange(o);
}, e.resetGlobalFilter = (o) => {
e.setGlobalFilter(o ? void 0 : e.initialState.globalFilter);
};
}
}, Ne = {
getInitialState: (e) => ({
expanded: {},
...e
}),
getDefaultOptions: (e) => ({
onExpandedChange: $("expanded", e),
paginateExpandedRows: !0
}),
createTable: (e) => {
let o = !1, t = !1;
e._autoResetExpanded = () => {
var n, r;
if (!o) {
e._queue(() => {
o = !0;
});
return;
}
if ((n = (r = e.options.autoResetAll) != null ? r : e.options.autoResetExpanded) != null ? n : !e.options.manualExpanding) {
if (t) return;
t = !0, e._queue(() => {
e.resetExpanded(), t = !1;
});
}
}, e.setExpanded = (n) => e.options.onExpandedChange == null ? void 0 : e.options.onExpandedChange(n), e.toggleAllRowsExpanded = (n) => {
n ?? !e.getIsAllRowsExpanded() ? e.setExpanded(!0) : e.setExpanded({});
}, e.resetExpanded = (n) => {
var r, i;
e.setExpanded(n ? {} : (r = (i = e.initialState) == null ? void 0 : i.expanded) != null ? r : {});
}, e.getCanSomeRowsExpand = () => e.getPrePaginationRowModel().flatRows.some((n) => n.getCanExpand()), e.getToggleAllRowsExpandedHandler = () => (n) => {
n.persist == null || n.persist(), e.toggleAllRowsExpanded();
}, e.getIsSomeRowsExpanded = () => {
const n = e.getState().expanded;
return n === !0 || Object.values(n).some(Boolean);
}, e.getIsAllRowsExpanded = () => {
const n = e.getState().expanded;
return typeof n == "boolean" ? n === !0 : !(!Object.keys(n).length || e.getRowModel().flatRows.some((r) => !r.getIsExpanded()));
}, e.getExpandedDepth = () => {
let n = 0;
return (e.getState().expanded === !0 ? Object.keys(e.getRowModel().rowsById) : Object.keys(e.getState().expanded)).forEach((i) => {
const l = i.split(".");
n = Math.max(n, l.length);
}), n;
}, e.getPreExpandedRowModel = () => e.getSortedRowModel(), e.getExpandedRowModel = () => (!e._getExpandedRowModel && e.options.getExpandedRowModel && (e._getExpandedRowModel = e.options.getExpandedRowModel(e)), e.options.manualExpanding || !e._getExpandedRowModel ? e.getPreExpandedRowModel() : e._getExpandedRowModel());
},
createRow: (e, o) => {
e.toggleExpanded = (t) => {
o.setExpanded((n) => {
var r;
const i = n === !0 ? !0 : !!(n != null && n[e.id]);
let l = {};
if (n === !0 ? Object.keys(o.getRowModel().rowsById).forEach((s) => {
l[s] = !0;
}) : l = n, t = (r = t) != null ? r : !i, !i && t)
return {
...l,
[e.id]: !0
};
if (i && !t) {
const {
[e.id]: s,
...u
} = l;
return u;
}
return n;
});
}, e.getIsExpanded = () => {
var t;
const n = o.getState().expanded;
return !!((t = o.options.getIsRowExpanded == null ? void 0 : o.options.getIsRowExpanded(e)) != null ? t : n === !0 || n?.[e.id]);
}, e.getCanExpand = () => {
var t, n, r;
return (t = o.options.getRowCanExpand == null ? void 0 : o.options.getRowCanExpand(e)) != null ? t : ((n = o.options.enableExpanding) != null ? n : !0) && !!((r = e.subRows) != null && r.length);
}, e.getIsAllParentsExpanded = () => {
let t = !0, n = e;
for (; t && n.parentId; )
n = o.getRow(n.parentId, !0), t = n.getIsExpanded();
return t;
}, e.getToggleExpandedHandler = () => {
const t = e.getCanExpand();
return () => {
t && e.toggleExpanded();
};
};
}
}, U = 0, X = 10, q = () => ({
pageIndex: U,
pageSize: X
}), ke = {
getInitialState: (e) => ({
...e,
pagination: {
...q(),
...e?.pagination
}
}),
getDefaultOptions: (e) => ({
onPaginationChange: $("pagination", e)
}),
createTable: (e) => {
let o = !1, t = !1;
e._autoResetPageIndex = () => {
var n, r;
if (!o) {
e._queue(() => {
o = !0;
});
return;
}
if ((n = (r = e.options.autoResetAll) != null ? r : e.options.autoResetPageIndex) != null ? n : !e.options.manualPagination) {
if (t) return;
t = !0, e._queue(() => {
e.resetPageIndex(), t = !1;
});
}
}, e.setPagination = (n) => {
const r = (i) => I(n, i);
return e.options.onPaginationChange == null ? void 0 : e.options.onPaginationChange(r);
}, e.resetPagination = (n) => {
var r;
e.setPagination(n ? q() : (r = e.initialState.pagination) != null ? r : q());
}, e.setPageIndex = (n) => {
e.setPagination((r) => {
let i = I(n, r.pageIndex);
const l = typeof e.options.pageCount > "u" || e.options.pageCount === -1 ? Number.MAX_SAFE_INTEGER : e.options.pageCount - 1;
return i = Math.max(0, Math.min(i, l)), {
...r,
pageIndex: i
};
});
}, e.resetPageIndex = (n) => {
var r, i;
e.setPageIndex(n ? U : (r = (i = e.initialState) == null || (i = i.pagination) == null ? void 0 : i.pageIndex) != null ? r : U);
}, e.resetPageSize = (n) => {
var r, i;
e.setPageSize(n ? X : (r = (i = e.initialState) == null || (i = i.pagination) == null ? void 0 : i.pageSize) != null ? r : X);
}, e.setPageSize = (n) => {
e.setPagination((r) => {
const i = Math.max(1, I(n, r.pageSize)), l = r.pageSize * r.pageIndex, s = Math.floor(l / i);
return {
...r,
pageIndex: s,
pageSize: i
};
});
}, e.setPageCount = (n) => e.setPagination((r) => {
var i;
let l = I(n, (i = e.options.pageCount) != null ? i : -1);
return typeof l == "number" && (l = Math.max(-1, l)), {
...r,
pageCount: l
};
}), e.getPageOptions = m(() => [e.getPageCount()], (n) => {
let r = [];
return n && n > 0 && (r = [...new Array(n)].fill(null).map((i, l) => l)), r;
}, C(e.options, "debugTable", "getPageOptions")), e.getCanPreviousPage = () => e.getState().pagination.pageIndex > 0, e.getCanNextPage = () => {
const {
pageIndex: n
} = e.getState().pagination, r = e.getPageCount();
return r === -1 ? !0 : r === 0 ? !1 : n < r - 1;
}, e.previousPage = () => e.setPageIndex((n) => n - 1), e.nextPage = () => e.setPageIndex((n) => n + 1), e.firstPage = () => e.setPageIndex(0), e.lastPage = () => e.setPageIndex(e.getPageCount() - 1), e.getPrePaginationRowModel = () => e.getExpandedRowModel(), e.getPaginationRowModel = () => (!e._getPaginationRowModel && e.options.getPaginationRowModel && (e._getPaginationRowModel = e.options.getPaginationRowModel(e)), e.options.manualPagination || !e._getPaginationRowModel ? e.getPrePaginationRowModel() : e._getPaginationRowModel()), e.getPageCount = () => {
var n;
return (n = e.options.pageCount) != null ? n : Math.ceil(e.getRowCount() / e.getState().pagination.pageSize);
}, e.getRowCount = () => {
var n;
return (n = e.options.rowCount) != null ? n : e.getPrePaginationRowModel().rows.length;
};
}
}, N = () => ({
top: [],
bottom: []
}), je = {
getInitialState: (e) => ({
rowPinning: N(),
...e
}),
getDefaultOptions: (e) => ({
onRowPinningChange: $("rowPinning", e)
}),
createRow: (e, o) => {
e.pin = (t, n, r) => {
const i = n ? e.getLeafRows().map((u) => {
let {
id: g
} = u;
return g;
}) : [], l = r ? e.getParentRows().map((u) => {
let {
id: g
} = u;
return g;
}) : [], s = /* @__PURE__ */ new Set([...l, e.id, ...i]);
o.setRowPinning((u) => {
var g, d;
if (t === "bottom") {
var S, f;
return {
top: ((S = u?.top) != null ? S : []).filter((p) => !(s != null && s.has(p))),
bottom: [...((f = u?.bottom) != null ? f : []).filter((p) => !(s != null && s.has(p))), ...Array.from(s)]
};
}
if (t === "top") {
var a, c;
return {
top: [...((a = u?.top) != null ? a : []).filter((p) => !(s != null && s.has(p))), ...Array.from(s)],
bottom: ((c = u?.bottom) != null ? c : []).filter((p) => !(s != null && s.has(p)))
};
}
return {
top: ((g = u?.top) != null ? g : []).filter((p) => !(s != null && s.has(p))),
bottom: ((d = u?.bottom) != null ? d : []).filter((p) => !(s != null && s.has(p)))
};
});
}, e.getCanPin = () => {
var t;
const {
enableRowPinning: n,
enablePinning: r
} = o.options;
return typeof n == "function" ? n(e) : (t = n ?? r) != null ? t : !0;
}, e.getIsPinned = () => {
const t = [e.id], {
top: n,
bottom: r
} = o.getState().rowPinning, i = t.some((s) => n?.includes(s)), l = t.some((s) => r?.includes(s));
return i ? "top" : l ? "bottom" : !1;
}, e.getPinnedIndex = () => {
var t, n;
const r = e.getIsPinned();
if (!r) return -1;
const i = (t = r === "top" ? o.getTopRows() : o.getBottomRows()) == null ? void 0 : t.map((l) => {
let {
id: s
} = l;
return s;
});
return (n = i?.indexOf(e.id)) != null ? n : -1;
};
},
createTable: (e) => {
e.setRowPinning = (o) => e.options.onRowPinningChange == null ? void 0 : e.options.onRowPinningChange(o), e.resetRowPinning = (o) => {
var t, n;
return e.setRowPinning(o ? N() : (t = (n = e.initialState) == null ? void 0 : n.rowPinning) != null ? t : N());
}, e.getIsSomeRowsPinned = (o) => {
var t;
const n = e.getState().rowPinning;
if (!o) {
var r, i;
return !!((r = n.top) != null && r.length || (i = n.bottom) != null && i.length);
}
return !!((t = n[o]) != null && t.length);
}, e._getPinnedRows = (o, t, n) => {
var r;
return ((r = e.options.keepPinnedRows) == null || r ? (
//get all rows that are pinned even if they would not be otherwise visible
//account for expanded parent rows, but not pagination o