koval-ui
Version:
React components collection with minimalistic design. Supports theming, layout, and input validation.
58 lines (57 loc) • 1.72 kB
JavaScript
"use client";
import { jsx as t } from "react/jsx-runtime";
import { createColumnHelper as c } from "@tanstack/react-table";
import { CellWrapper as n } from "../cells/CellWrapper.js";
import { RowSelectionCell as d } from "../cells/RowSelectionCell.js";
import { ColumnTypes as r } from "../types.js";
const i = c(), m = "koval-selectable", S = i.display({
id: m,
header: ({ table: e, column: o }) => {
var l;
return /* @__PURE__ */ t(n, { columnWidth: (l = o.columnDef.meta) == null ? void 0 : l.width, children: /* @__PURE__ */ t(
d,
{
mode: "inverted",
checked: e.getIsAllRowsSelected(),
onChange: e.getToggleAllRowsSelectedHandler(),
indeterminate: e.getIsSomeRowsSelected()
}
) });
},
cell: ({ row: e, column: o }) => {
var l;
return /* @__PURE__ */ t(n, { columnWidth: (l = o.columnDef.meta) == null ? void 0 : l.width, children: /* @__PURE__ */ t(
d,
{
checked: e.getIsSelected(),
disabled: !e.getCanSelect(),
onChange: e.getToggleSelectedHandler(),
indeterminate: !1
}
) });
},
enableColumnFilter: !1,
size: 51,
meta: {
type: r.select,
width: 51,
editable: !1
},
footer: ({ table: e, column: o }) => {
var l;
return /* @__PURE__ */ t(n, { columnWidth: (l = o.columnDef.meta) == null ? void 0 : l.width, children: /* @__PURE__ */ t(
d,
{
mode: "inverted",
checked: e.getIsAllRowsSelected(),
onChange: e.getToggleAllRowsSelectedHandler(),
indeterminate: e.getIsSomeRowsSelected()
}
) });
}
});
export {
m as ROW_SELECTION_ID,
S as rowSelection
};
//# sourceMappingURL=rowSelection.js.map