@bwp-web/components 0.13.1 → 0.13.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/BiampTable/BiampTable.d.ts.map +1 -1
- package/dist/BiampTable/useBiampServerSideTable.d.ts.map +1 -1
- package/dist/index.cjs +182 -149
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +181 -159
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BiampTable.d.ts","sourceRoot":"","sources":["../../src/BiampTable/BiampTable.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,QAAQ,
|
|
1
|
+
{"version":3,"file":"BiampTable.d.ts","sourceRoot":"","sources":["../../src/BiampTable/BiampTable.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,QAAQ,EAUd,MAAM,eAAe,CAAC;AAMvB,OAAO,EAAwB,KAAK,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAc,EAAE,KAAK,SAAS,EAAU,MAAM,OAAO,CAAC;AAItD,OAAO,iBAAiB,CAAC;AAIzB,KAAK,aAAa,CAAC,KAAK,IACpB;IACE,qFAAqF;IACrF,UAAU,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC;;;OAGG;IACH,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,OAAO,CAAC;CAC1C,GACD;IACE,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,cAAc,CAAC,EAAE,KAAK,CAAC;CACxB,CAAC;AAGN,KAAK,uBAAuB,GACxB;IACE,8DAA8D;IAC9D,kBAAkB,EAAE,IAAI,CAAC;IACzB,uFAAuF;IACvF,eAAe,EAAE,IAAI,CAAC;IACtB,iGAAiG;IACjG,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,4FAA4F;IAC5F,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC,GACD;IACE,8DAA8D;IAC9D,kBAAkB,EAAE,IAAI,CAAC;IACzB,eAAe,CAAC,EAAE,KAAK,CAAC;IACxB,iGAAiG;IACjG,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,wBAAwB,CAAC,EAAE,KAAK,CAAC;CAClC,GACD;IACE,kBAAkB,CAAC,EAAE,KAAK,CAAC;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,KAAK,CAAC;IACtB,wBAAwB,CAAC,EAAE,KAAK,CAAC;CAClC,CAAC;AAEN,MAAM,MAAM,eAAe,CAAC,KAAK,IAAI,QAAQ,GAC3C,aAAa,CAAC,KAAK,CAAC,GACpB,uBAAuB,GAAG;IACxB,6CAA6C;IAC7C,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACpB,oEAAoE;IACpE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wKAAwK;IACxK,KAAK,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,SAAS,CAAC;IACpC,6IAA6I;IAC7I,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,gIAAgI;IAChI,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,MAAM,CAAC;CACtC,CAAC;AAyQJ,wBAAgB,UAAU,CAAC,KAAK,EAAE,EAChC,KAAK,EACL,UAAU,EACV,cAAc,EACd,OAAO,EACP,KAAK,EACL,KAAK,EACL,kBAA0B,EAC1B,eAAuB,EACvB,aAAa,EACb,wBAAgC,EAChC,WAAW,EACX,EAAE,EACF,GAAG,QAAQ,EACZ,EAAE,eAAe,CAAC,KAAK,CAAC,2CAyJxB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useBiampServerSideTable.d.ts","sourceRoot":"","sources":["../../src/BiampTable/useBiampServerSideTable.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,SAAS,EACd,KAAK,aAAa,EAGlB,KAAK,GAAG,EACR,KAAK,KAAK,EAEX,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,KAAK,eAAe,EAQrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"useBiampServerSideTable.d.ts","sourceRoot":"","sources":["../../src/BiampTable/useBiampServerSideTable.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,SAAS,EACd,KAAK,aAAa,EAGlB,KAAK,GAAG,EACR,KAAK,KAAK,EAEX,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,KAAK,eAAe,EAQrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,iBAAiB,CAAC;AAOzB,MAAM,MAAM,8BAA8B,CAAC,KAAK,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,IAAI;IAC7E,sBAAsB;IACtB,IAAI,EAAE,KAAK,EAAE,CAAC;IACd,qGAAqG;IAErG,OAAO,EAAE,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;IACjC,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,MAAM,CAAC;IAGlC,+DAA+D;IAC/D,KAAK,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IAC3B,mFAAmF;IACnF,aAAa,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;IAGrD,6BAA6B;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,+BAA+B;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yCAAyC;IACzC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,gEAAgE;IAChE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAGlB,4FAA4F;IAC5F,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,oFAAoF;IACpF,wBAAwB,CAAC,EAAE,CAAC,UAAU,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAGlE,kCAAkC;IAClC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,qCAAqC;IACrC,sBAAsB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACjD,sEAAsE;IACtE,kBAAkB,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,KAAK,OAAO,CAAC,CAAC;IAG9D,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,mDAAmD;IACnD,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,KAAK,IAAI,CAAC;IACrD,sEAAsE;IACtE,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,KAAK,EAAE,GAAG,SAAS,CAAC;CAClD,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,EACxE,IAAI,EACJ,OAAO,EACP,QAAoD,EACpD,KAAK,EACL,aAAa,EACb,IAAI,EACJ,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,gBAAgB,EAChB,wBAAwB,EACxB,cAAc,EACd,sBAAsB,EACtB,kBAAkB,EAClB,QAAQ,EACR,gBAAgB,EAChB,UAAU,GACX,EAAE,8BAA8B,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAsIzD"}
|
package/dist/index.cjs
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
2
3
|
var __defProp = Object.defineProperty;
|
|
3
4
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
5
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
8
|
var __export = (target, all) => {
|
|
7
9
|
for (var name in all)
|
|
@@ -15,6 +17,14 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
15
17
|
}
|
|
16
18
|
return to;
|
|
17
19
|
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
18
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
29
|
|
|
20
30
|
// src/index.ts
|
|
@@ -526,7 +536,7 @@ function BiampLayout({
|
|
|
526
536
|
var import_material7 = require("@mui/material");
|
|
527
537
|
var import_assets5 = require("@bwp-web/assets");
|
|
528
538
|
var import_react_table = require("@tanstack/react-table");
|
|
529
|
-
var import_react4 = require("react");
|
|
539
|
+
var import_react4 = __toESM(require("react"), 1);
|
|
530
540
|
|
|
531
541
|
// src/BiampTable/BiampTableEmptyState.tsx
|
|
532
542
|
var import_assets3 = require("@bwp-web/assets");
|
|
@@ -692,6 +702,144 @@ function cellSx(sticky, minWidth, zIndex) {
|
|
|
692
702
|
const mw = minWidth ?? 40;
|
|
693
703
|
return { minWidth: mw, maxWidth: mw };
|
|
694
704
|
}
|
|
705
|
+
var rowCursorPointerSx = { cursor: "pointer" };
|
|
706
|
+
var selectionCellSx = {
|
|
707
|
+
position: "sticky",
|
|
708
|
+
left: 0,
|
|
709
|
+
zIndex: 2,
|
|
710
|
+
bgcolor: "background.paper",
|
|
711
|
+
...stickyHoverBg
|
|
712
|
+
};
|
|
713
|
+
var checkboxHiddenSx = { visibility: "hidden" };
|
|
714
|
+
var expandCellBaseSx = {
|
|
715
|
+
display: "flex",
|
|
716
|
+
alignItems: "center",
|
|
717
|
+
gap: 1
|
|
718
|
+
};
|
|
719
|
+
var chevronExpandedSx = {
|
|
720
|
+
color: ({ palette }) => palette.text.secondary,
|
|
721
|
+
transition: "transform 150ms ease",
|
|
722
|
+
transform: "rotate(90deg)",
|
|
723
|
+
width: 16,
|
|
724
|
+
height: 16,
|
|
725
|
+
cursor: "pointer"
|
|
726
|
+
};
|
|
727
|
+
var chevronCollapsedSx = {
|
|
728
|
+
color: ({ palette }) => palette.text.secondary,
|
|
729
|
+
transition: "transform 150ms ease",
|
|
730
|
+
transform: "rotate(0deg)",
|
|
731
|
+
width: 16,
|
|
732
|
+
height: 16,
|
|
733
|
+
cursor: "pointer"
|
|
734
|
+
};
|
|
735
|
+
var expandPlaceholderSx = { width: 16 };
|
|
736
|
+
var headerSelectionCellSx = {
|
|
737
|
+
position: "sticky",
|
|
738
|
+
left: 0,
|
|
739
|
+
zIndex: 3,
|
|
740
|
+
bgcolor: "background.paper"
|
|
741
|
+
};
|
|
742
|
+
var checkboxHiddenHeaderSx = { visibility: "hidden" };
|
|
743
|
+
function BiampTableRowInner({
|
|
744
|
+
row,
|
|
745
|
+
onRowClick,
|
|
746
|
+
isRowClickable,
|
|
747
|
+
enableRowSelection,
|
|
748
|
+
enableExpanding,
|
|
749
|
+
selectChildrenWithParent,
|
|
750
|
+
getRowLabel,
|
|
751
|
+
hasExpandableRows
|
|
752
|
+
}) {
|
|
753
|
+
const clickable = onRowClick ? isRowClickable ? isRowClickable(row.original) : true : false;
|
|
754
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
|
|
755
|
+
import_material7.TableRow,
|
|
756
|
+
{
|
|
757
|
+
hover: clickable,
|
|
758
|
+
selected: enableRowSelection ? row.getIsSelected() : void 0,
|
|
759
|
+
role: clickable ? "button" : void 0,
|
|
760
|
+
tabIndex: clickable ? 0 : void 0,
|
|
761
|
+
sx: clickable ? rowCursorPointerSx : void 0,
|
|
762
|
+
onClick: clickable && onRowClick ? () => onRowClick(row.original) : void 0,
|
|
763
|
+
onKeyDown: clickable && onRowClick ? (e) => {
|
|
764
|
+
if (e.key === "Enter" || e.key === " ") {
|
|
765
|
+
e.preventDefault();
|
|
766
|
+
onRowClick(row.original);
|
|
767
|
+
}
|
|
768
|
+
} : void 0,
|
|
769
|
+
children: [
|
|
770
|
+
enableRowSelection && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_material7.TableCell, { padding: "checkbox", sx: selectionCellSx, children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
771
|
+
import_material7.Checkbox,
|
|
772
|
+
{
|
|
773
|
+
checked: row.getIsSelected(),
|
|
774
|
+
disabled: !row.getCanSelect(),
|
|
775
|
+
onChange: (e) => row.toggleSelected(e.target.checked, {
|
|
776
|
+
selectChildren: selectChildrenWithParent
|
|
777
|
+
}),
|
|
778
|
+
onClick: (e) => e.stopPropagation(),
|
|
779
|
+
sx: !row.getCanSelect() ? checkboxHiddenSx : void 0,
|
|
780
|
+
slotProps: {
|
|
781
|
+
input: {
|
|
782
|
+
"aria-label": getRowLabel ? `Select ${getRowLabel(row.original)}` : `Select row ${row.index + 1}`
|
|
783
|
+
}
|
|
784
|
+
}
|
|
785
|
+
}
|
|
786
|
+
) }),
|
|
787
|
+
row.getVisibleCells().map((cell, cellIndex, cells) => {
|
|
788
|
+
const sticky = cell.column.columnDef.meta?.sticky;
|
|
789
|
+
const isExpandCell = enableExpanding && !sticky && cellIndex === cells.findIndex((c) => !c.column.columnDef.meta?.sticky);
|
|
790
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
791
|
+
import_material7.TableCell,
|
|
792
|
+
{
|
|
793
|
+
"data-sticky": sticky || void 0,
|
|
794
|
+
sx: cellSx(sticky, cell.column.columnDef.meta?.minWidth, 2),
|
|
795
|
+
children: (() => {
|
|
796
|
+
const content = (0, import_react_table.flexRender)(
|
|
797
|
+
cell.column.columnDef.cell,
|
|
798
|
+
cell.getContext()
|
|
799
|
+
);
|
|
800
|
+
if (sticky) return content;
|
|
801
|
+
const truncated = /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(BiampTableTruncatedCell, { children: content });
|
|
802
|
+
if (!isExpandCell) return truncated;
|
|
803
|
+
const rowLabel = getRowLabel ? getRowLabel(row.original) : `row ${row.index + 1}`;
|
|
804
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
|
|
805
|
+
import_material7.Box,
|
|
806
|
+
{
|
|
807
|
+
sx: row.depth > 0 ? { ...expandCellBaseSx, pl: `${row.depth * 12}px` } : expandCellBaseSx,
|
|
808
|
+
children: [
|
|
809
|
+
row.getCanExpand() ? /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
810
|
+
import_assets5.ChevronRightIcon,
|
|
811
|
+
{
|
|
812
|
+
onClick: (e) => {
|
|
813
|
+
e.stopPropagation();
|
|
814
|
+
row.toggleExpanded();
|
|
815
|
+
},
|
|
816
|
+
"aria-label": row.getIsExpanded() ? `Collapse ${rowLabel}` : `Expand ${rowLabel}`,
|
|
817
|
+
"aria-expanded": row.getIsExpanded(),
|
|
818
|
+
variant: "xs",
|
|
819
|
+
sx: row.getIsExpanded() ? chevronExpandedSx : chevronCollapsedSx
|
|
820
|
+
}
|
|
821
|
+
) : hasExpandableRows ? /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_material7.Box, { sx: expandPlaceholderSx }) : null,
|
|
822
|
+
truncated
|
|
823
|
+
]
|
|
824
|
+
}
|
|
825
|
+
);
|
|
826
|
+
})()
|
|
827
|
+
},
|
|
828
|
+
cell.id
|
|
829
|
+
);
|
|
830
|
+
})
|
|
831
|
+
]
|
|
832
|
+
},
|
|
833
|
+
row.id
|
|
834
|
+
);
|
|
835
|
+
}
|
|
836
|
+
function biampTableRowPropsAreEqual(prev, next) {
|
|
837
|
+
return prev.row.id === next.row.id && prev.row.original === next.row.original && prev.row.getIsSelected() === next.row.getIsSelected() && prev.row.getIsExpanded() === next.row.getIsExpanded() && prev.row.getVisibleCells().length === next.row.getVisibleCells().length && prev.enableRowSelection === next.enableRowSelection && prev.enableExpanding === next.enableExpanding && prev.hasExpandableRows === next.hasExpandableRows && prev.selectChildrenWithParent === next.selectChildrenWithParent && prev.onRowClick === next.onRowClick && prev.isRowClickable === next.isRowClickable && prev.getRowLabel === next.getRowLabel;
|
|
838
|
+
}
|
|
839
|
+
var BiampTableRow = import_react4.default.memo(
|
|
840
|
+
BiampTableRowInner,
|
|
841
|
+
biampTableRowPropsAreEqual
|
|
842
|
+
);
|
|
695
843
|
function BiampTable({
|
|
696
844
|
table,
|
|
697
845
|
onRowClick,
|
|
@@ -743,28 +891,16 @@ function BiampTable({
|
|
|
743
891
|
sx: { minWidth: tableMinWidth, tableLayout: "auto" },
|
|
744
892
|
children: [
|
|
745
893
|
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_material7.TableHead, { children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(import_material7.TableRow, { children: [
|
|
746
|
-
enableRowSelection && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
747
|
-
import_material7.
|
|
894
|
+
enableRowSelection && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_material7.TableCell, { padding: "checkbox", sx: headerSelectionCellSx, children: !hideSelectAll && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
895
|
+
import_material7.Checkbox,
|
|
748
896
|
{
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
bgcolor: "background.paper"
|
|
755
|
-
},
|
|
756
|
-
children: !hideSelectAll && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
757
|
-
import_material7.Checkbox,
|
|
758
|
-
{
|
|
759
|
-
checked: table.getIsAllPageRowsSelected(),
|
|
760
|
-
indeterminate: table.getIsSomePageRowsSelected(),
|
|
761
|
-
onChange: table.getToggleAllPageRowsSelectedHandler(),
|
|
762
|
-
sx: rows.length === 0 ? { visibility: "hidden" } : void 0,
|
|
763
|
-
slotProps: { input: { "aria-label": "Select all rows" } }
|
|
764
|
-
}
|
|
765
|
-
)
|
|
897
|
+
checked: table.getIsAllPageRowsSelected(),
|
|
898
|
+
indeterminate: table.getIsSomePageRowsSelected(),
|
|
899
|
+
onChange: table.getToggleAllPageRowsSelectedHandler(),
|
|
900
|
+
sx: rows.length === 0 ? checkboxHiddenHeaderSx : void 0,
|
|
901
|
+
slotProps: { input: { "aria-label": "Select all rows" } }
|
|
766
902
|
}
|
|
767
|
-
),
|
|
903
|
+
) }),
|
|
768
904
|
headerGroup.headers.map((header) => {
|
|
769
905
|
const sticky = header.column.columnDef.meta?.sticky;
|
|
770
906
|
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
@@ -803,125 +939,20 @@ function BiampTable({
|
|
|
803
939
|
);
|
|
804
940
|
})
|
|
805
941
|
] }, headerGroup.id)) }),
|
|
806
|
-
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_material7.TableBody, { sx: { opacity: showLoading ? 0.3 : 1 }, children: !showError && rows.map((row) =>
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
onRowClick(row.original);
|
|
821
|
-
}
|
|
822
|
-
} : void 0,
|
|
823
|
-
children: [
|
|
824
|
-
enableRowSelection && /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
825
|
-
import_material7.TableCell,
|
|
826
|
-
{
|
|
827
|
-
padding: "checkbox",
|
|
828
|
-
sx: {
|
|
829
|
-
position: "sticky",
|
|
830
|
-
left: 0,
|
|
831
|
-
zIndex: 2,
|
|
832
|
-
bgcolor: "background.paper",
|
|
833
|
-
".MuiTableRow-hover:hover > &, .Mui-selected > &": {
|
|
834
|
-
bgcolor: ({ palette }) => palette.mode === "dark" ? palette.grey[800] : palette.grey[100]
|
|
835
|
-
}
|
|
836
|
-
},
|
|
837
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
838
|
-
import_material7.Checkbox,
|
|
839
|
-
{
|
|
840
|
-
checked: row.getIsSelected(),
|
|
841
|
-
disabled: !row.getCanSelect(),
|
|
842
|
-
onChange: (e) => row.toggleSelected(e.target.checked, {
|
|
843
|
-
selectChildren: selectChildrenWithParent
|
|
844
|
-
}),
|
|
845
|
-
onClick: (e) => e.stopPropagation(),
|
|
846
|
-
sx: !row.getCanSelect() ? { visibility: "hidden" } : void 0,
|
|
847
|
-
slotProps: {
|
|
848
|
-
input: {
|
|
849
|
-
"aria-label": getRowLabel ? `Select ${getRowLabel(row.original)}` : `Select row ${row.index + 1}`
|
|
850
|
-
}
|
|
851
|
-
}
|
|
852
|
-
}
|
|
853
|
-
)
|
|
854
|
-
}
|
|
855
|
-
),
|
|
856
|
-
row.getVisibleCells().map((cell, cellIndex, cells) => {
|
|
857
|
-
const sticky = cell.column.columnDef.meta?.sticky;
|
|
858
|
-
const isExpandCell = enableExpanding && !sticky && cellIndex === cells.findIndex(
|
|
859
|
-
(c) => !c.column.columnDef.meta?.sticky
|
|
860
|
-
);
|
|
861
|
-
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
862
|
-
import_material7.TableCell,
|
|
863
|
-
{
|
|
864
|
-
"data-sticky": sticky || void 0,
|
|
865
|
-
sx: cellSx(
|
|
866
|
-
sticky,
|
|
867
|
-
cell.column.columnDef.meta?.minWidth,
|
|
868
|
-
2
|
|
869
|
-
),
|
|
870
|
-
children: (() => {
|
|
871
|
-
const content = (0, import_react_table.flexRender)(
|
|
872
|
-
cell.column.columnDef.cell,
|
|
873
|
-
cell.getContext()
|
|
874
|
-
);
|
|
875
|
-
if (sticky) return content;
|
|
876
|
-
const truncated = /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(BiampTableTruncatedCell, { children: content });
|
|
877
|
-
if (!isExpandCell) return truncated;
|
|
878
|
-
const rowLabel = getRowLabel ? getRowLabel(row.original) : `row ${row.index + 1}`;
|
|
879
|
-
return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
|
|
880
|
-
import_material7.Box,
|
|
881
|
-
{
|
|
882
|
-
sx: {
|
|
883
|
-
display: "flex",
|
|
884
|
-
alignItems: "center",
|
|
885
|
-
pl: `${row.depth * 12}px`
|
|
886
|
-
},
|
|
887
|
-
children: [
|
|
888
|
-
row.getCanExpand() ? /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
889
|
-
import_material7.IconButton,
|
|
890
|
-
{
|
|
891
|
-
variant: "none",
|
|
892
|
-
onClick: (e) => {
|
|
893
|
-
e.stopPropagation();
|
|
894
|
-
row.toggleExpanded();
|
|
895
|
-
},
|
|
896
|
-
"aria-label": row.getIsExpanded() ? `Collapse ${rowLabel}` : `Expand ${rowLabel}`,
|
|
897
|
-
"aria-expanded": row.getIsExpanded(),
|
|
898
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
899
|
-
import_assets5.ChevronRightIcon,
|
|
900
|
-
{
|
|
901
|
-
variant: "xs",
|
|
902
|
-
sx: {
|
|
903
|
-
color: ({ palette }) => palette.text.secondary,
|
|
904
|
-
transition: "transform 150ms ease",
|
|
905
|
-
transform: row.getIsExpanded() ? "rotate(90deg)" : "rotate(0deg)"
|
|
906
|
-
}
|
|
907
|
-
}
|
|
908
|
-
)
|
|
909
|
-
}
|
|
910
|
-
) : hasExpandableRows ? /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_material7.Box, { sx: { width: 28 } }) : null,
|
|
911
|
-
truncated
|
|
912
|
-
]
|
|
913
|
-
}
|
|
914
|
-
);
|
|
915
|
-
})()
|
|
916
|
-
},
|
|
917
|
-
cell.id
|
|
918
|
-
);
|
|
919
|
-
})
|
|
920
|
-
]
|
|
921
|
-
},
|
|
922
|
-
row.id
|
|
923
|
-
);
|
|
924
|
-
}) })
|
|
942
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_material7.TableBody, { sx: { opacity: showLoading ? 0.3 : 1 }, children: !showError && rows.map((row) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
943
|
+
BiampTableRow,
|
|
944
|
+
{
|
|
945
|
+
row,
|
|
946
|
+
onRowClick,
|
|
947
|
+
isRowClickable,
|
|
948
|
+
enableRowSelection,
|
|
949
|
+
enableExpanding,
|
|
950
|
+
selectChildrenWithParent,
|
|
951
|
+
getRowLabel,
|
|
952
|
+
hasExpandableRows
|
|
953
|
+
},
|
|
954
|
+
row.id
|
|
955
|
+
)) })
|
|
925
956
|
]
|
|
926
957
|
}
|
|
927
958
|
),
|
|
@@ -1683,10 +1714,11 @@ function getDirtyColumnVisibility(visibility, defaults) {
|
|
|
1683
1714
|
// src/BiampTable/useBiampServerSideTable.ts
|
|
1684
1715
|
var coreRowModel = (0, import_react_table2.getCoreRowModel)();
|
|
1685
1716
|
var expandedRowModel = (0, import_react_table2.getExpandedRowModel)();
|
|
1717
|
+
var defaultGetRowId = (row) => row.id;
|
|
1686
1718
|
function useBiampServerSideTable({
|
|
1687
1719
|
data,
|
|
1688
1720
|
columns,
|
|
1689
|
-
getRowId =
|
|
1721
|
+
getRowId = defaultGetRowId,
|
|
1690
1722
|
order,
|
|
1691
1723
|
onOrderChange,
|
|
1692
1724
|
page,
|
|
@@ -1702,12 +1734,11 @@ function useBiampServerSideTable({
|
|
|
1702
1734
|
onExpandedChange,
|
|
1703
1735
|
getSubRows
|
|
1704
1736
|
}) {
|
|
1705
|
-
const defaultColumnVisibility = (0, import_react10.useMemo)(
|
|
1706
|
-
() =>
|
|
1707
|
-
|
|
1708
|
-
|
|
1709
|
-
|
|
1710
|
-
() => getOrderFieldMappings(columns),
|
|
1737
|
+
const { defaultColumnVisibility, columnIdToField, fieldToColumnId } = (0, import_react10.useMemo)(
|
|
1738
|
+
() => ({
|
|
1739
|
+
defaultColumnVisibility: getDefaultColumnVisibilityFromDefs(columns),
|
|
1740
|
+
...getOrderFieldMappings(columns)
|
|
1741
|
+
}),
|
|
1711
1742
|
[columns]
|
|
1712
1743
|
);
|
|
1713
1744
|
const sorting = (0, import_react10.useMemo)(
|
|
@@ -1776,8 +1807,10 @@ function useBiampServerSideTable({
|
|
|
1776
1807
|
},
|
|
1777
1808
|
// Expanding — only when expanded state is provided
|
|
1778
1809
|
...expanded != null && {
|
|
1779
|
-
getExpandedRowModel
|
|
1780
|
-
|
|
1810
|
+
// Only attach getExpandedRowModel when getSubRows is provided.
|
|
1811
|
+
// Without it, the expanded model recomputes on every state change
|
|
1812
|
+
// (including selection), adding unnecessary overhead.
|
|
1813
|
+
...getSubRows && { getExpandedRowModel: expandedRowModel, getSubRows },
|
|
1781
1814
|
onExpandedChange: onExpandedChange ? (updater) => {
|
|
1782
1815
|
const next = typeof updater === "function" ? updater(expanded) : updater;
|
|
1783
1816
|
onExpandedChange(next);
|