@caspeco/casper-ui-library 10.8.0 → 10.9.0

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.
Files changed (45) hide show
  1. package/dist/components/table/helper.d.ts +3 -0
  2. package/dist/components/table/helper.d.ts.map +1 -1
  3. package/dist/components/table/helper.js +17 -11
  4. package/dist/components/table/index.d.ts +1 -1
  5. package/dist/components/table/index.d.ts.map +1 -1
  6. package/dist/components/table/table-cell.d.ts +2 -1
  7. package/dist/components/table/table-cell.d.ts.map +1 -1
  8. package/dist/components/table/table-cell.js +62 -55
  9. package/dist/components/table/table-content.d.ts.map +1 -1
  10. package/dist/components/table/table-content.js +84 -56
  11. package/dist/components/table/table-context-provider.d.ts +17 -2
  12. package/dist/components/table/table-context-provider.d.ts.map +1 -1
  13. package/dist/components/table/table-context-provider.js +179 -122
  14. package/dist/components/table/table-drag-accessibility.d.ts +11 -0
  15. package/dist/components/table/table-drag-accessibility.d.ts.map +1 -0
  16. package/dist/components/table/table-drag-accessibility.js +22 -0
  17. package/dist/components/table/table-header-row.d.ts.map +1 -1
  18. package/dist/components/table/table-header-row.js +70 -62
  19. package/dist/components/table/table-recipe.d.ts.map +1 -1
  20. package/dist/components/table/table-recipe.js +6 -0
  21. package/dist/components/table/table-row-drag-handle.d.ts +6 -0
  22. package/dist/components/table/table-row-drag-handle.d.ts.map +1 -0
  23. package/dist/components/table/table-row-drag-handle.js +53 -0
  24. package/dist/components/table/table-row-reorder.spec.d.ts +2 -0
  25. package/dist/components/table/table-row-reorder.spec.d.ts.map +1 -0
  26. package/dist/components/table/table-row.d.ts.map +1 -1
  27. package/dist/components/table/table-row.js +59 -42
  28. package/dist/components/table/table-sorted-reorder-prompt.d.ts +8 -0
  29. package/dist/components/table/table-sorted-reorder-prompt.d.ts.map +1 -0
  30. package/dist/components/table/table-sorted-reorder-prompt.js +64 -0
  31. package/dist/components/table/table-toolbar-settings.js +27 -27
  32. package/dist/components/table/table.composition.d.ts +2 -0
  33. package/dist/components/table/table.composition.d.ts.map +1 -1
  34. package/dist/components/table/table.constants.d.ts +15 -0
  35. package/dist/components/table/table.constants.d.ts.map +1 -1
  36. package/dist/components/table/table.constants.js +2 -2
  37. package/dist/components/table/table.d.ts +1 -1
  38. package/dist/components/table/table.d.ts.map +1 -1
  39. package/dist/components/table/table.js +4 -2
  40. package/dist/components/table/translations.d.ts +70 -0
  41. package/dist/components/table/translations.d.ts.map +1 -1
  42. package/dist/components/table/translations.js +66 -6
  43. package/dist/components/table/types.d.ts +37 -5
  44. package/dist/components/table/types.d.ts.map +1 -1
  45. package/package.json +1 -1
@@ -1,5 +1,8 @@
1
1
  import { Column } from '@tanstack/react-table';
2
+ import { TableData, TableRow } from './types.js';
2
3
  export declare function arrayMove<T>(array: T[], fromIndex: number, toIndex: number): T[];
4
+ export declare function getTopLevelRowIds<TData extends TableData>(data: TableRow<TData>[], getRowId: (originalRow: TableRow<TData>, index: number) => string): string[];
5
+ export declare function isSameSequence(first: readonly string[], second: readonly string[]): boolean;
3
6
  export declare function getColumnLabel(header: unknown, columnId: string): string;
4
7
  export declare function getColumnSizeCssVarName(columnId: string): string;
5
8
  export declare function getColumnStartCssVarName(columnId: string): string;
@@ -1 +1 @@
1
- {"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../lib/components/table/helper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAGpD,wBAAgB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC,EAAE,CAShF;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAExE;AAUD,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEjE;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAGlG;AAED,wBAAgB,cAAc,CAAC,KAAK,EACnC,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,EAC9B,oBAAoB,EAAE,OAAO,GAC3B,MAAM,GAAG,MAAM,CAGjB;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,oBAAoB,EAAE,OAAO,GAAG,MAAM,CAG1G"}
1
+ {"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../lib/components/table/helper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnD,wBAAgB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC,EAAE,CAShF;AAED,wBAAgB,iBAAiB,CAAC,KAAK,SAAS,SAAS,EACxD,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,EACvB,QAAQ,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,GAC/D,MAAM,EAAE,CAEV;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,EAAE,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAE3F;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAExE;AAUD,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEhE;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEjE;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAGlG;AAED,wBAAgB,cAAc,CAAC,KAAK,EACnC,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,EAC9B,oBAAoB,EAAE,OAAO,GAC3B,MAAM,GAAG,MAAM,CAGjB;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,oBAAoB,EAAE,OAAO,GAAG,MAAM,CAG1G"}
@@ -4,28 +4,34 @@ function e(e, t, n) {
4
4
  return i !== void 0 && r.splice(n, 0, i), r;
5
5
  }
6
6
  function t(e, t) {
7
+ return e.map((e, n) => t(e, n));
8
+ }
9
+ function n(e, t) {
10
+ return e.length === t.length && e.every((e, n) => e === t[n]);
11
+ }
12
+ function r(e, t) {
7
13
  return typeof e == "string" || typeof e == "number" ? String(e) : t;
8
14
  }
9
- function n(e) {
15
+ function i(e) {
10
16
  return e.replace(/[^a-zA-Z0-9]/g, (e) => `_${e.charCodeAt(0).toString(16)}_`);
11
17
  }
12
- function r(e) {
13
- return `--col-${n(e)}-size`;
18
+ function a(e) {
19
+ return `--col-${i(e)}-size`;
14
20
  }
15
- function i(e) {
16
- return `--col-${n(e)}-start`;
21
+ function o(e) {
22
+ return `--col-${i(e)}-start`;
17
23
  }
18
- function a(e, t) {
24
+ function s(e, t) {
19
25
  let { minSize: n = 80, maxSize: r = 2 ** 53 - 1 } = e.columnDef;
20
26
  return Math.min(Math.max(t, n), r);
21
27
  }
22
- function o(e, t) {
28
+ function c(e, t) {
23
29
  let n = e.getSize();
24
- return t ? `var(${r(e.id)}, ${n}px)` : n;
30
+ return t ? `var(${a(e.id)}, ${n}px)` : n;
25
31
  }
26
- function s(e, t) {
32
+ function l(e, t) {
27
33
  let n = `${e.getStart("left")}px`;
28
- return t ? `var(${i(e.id)}, ${n})` : n;
34
+ return t ? `var(${o(e.id)}, ${n})` : n;
29
35
  }
30
36
  //#endregion
31
- export { e as arrayMove, a as getClampedColumnWidth, t as getColumnLabel, r as getColumnSizeCssVarName, i as getColumnStartCssVarName, o as getColumnWidth, s as getPinnedLeft };
37
+ export { e as arrayMove, s as getClampedColumnWidth, r as getColumnLabel, a as getColumnSizeCssVarName, o as getColumnStartCssVarName, c as getColumnWidth, l as getPinnedLeft, t as getTopLevelRowIds, n as isSameSequence };
@@ -9,5 +9,5 @@ export { TableToolbarAddButton } from './table-toolbar-add-button.js';
9
9
  export { TableToolbarSearch } from './table-toolbar-search.js';
10
10
  export { TableToolbarSettings } from './table-toolbar-settings.js';
11
11
  export type { TableFilterProps } from './table-filter.js';
12
- export type { CellContext, ColumnDef, ColumnSizingState, ExpandedState, Row, RowSelectionState, SortingState, TableContentProps, TableFilterBoxState, TableFilterVisibleChange, TableProps, TableRow, TableToolbarActionsProps, TableToolbarAddButtonProps, TableToolbarProps, TableToolbarSearchProps, VisibilityState, } from './types.js';
12
+ export type { CellContext, ColumnDef, ColumnSizingState, ExpandedState, Row, RowReorderDetails, RowSelectionState, SortingState, TableContentProps, TableFilterBoxState, TableFilterVisibleChange, TableProps, TableRow, TableToolbarActionsProps, TableToolbarAddButtonProps, TableToolbarProps, TableToolbarSearchProps, VisibilityState, } from './types.js';
13
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/components/table/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvD,YAAY,EACX,WAAW,EACX,SAAS,EACT,iBAAiB,EACjB,aAAa,EACb,GAAG,EACH,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,EACxB,UAAU,EACV,QAAQ,EACR,wBAAwB,EACxB,0BAA0B,EAC1B,iBAAiB,EACjB,uBAAuB,EACvB,eAAe,GACf,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/components/table/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhE,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvD,YAAY,EACX,WAAW,EACX,SAAS,EACT,iBAAiB,EACjB,aAAa,EACb,GAAG,EACH,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,EACxB,UAAU,EACV,QAAQ,EACR,wBAAwB,EACxB,0BAA0B,EAC1B,iBAAiB,EACjB,uBAAuB,EACvB,eAAe,GACf,MAAM,SAAS,CAAC"}
@@ -12,8 +12,9 @@ type TableCellProps<TData extends TableData> = {
12
12
  actionMenu?: ReactNode;
13
13
  canSelectRows?: boolean;
14
14
  isCheckboxDisabled?: boolean;
15
+ dragHandleRef?: (element: Element | null) => void;
15
16
  };
16
- declare const TableCellComponent: <TData extends TableData>({ cell, row, rowIsExpanded, visibleCells, breakingContentState, localeString, actionMenu, canSelectRows, isCheckboxDisabled, }: TableCellProps<TData>) => import("react").JSX.Element;
17
+ declare const TableCellComponent: <TData extends TableData>({ cell, row, rowIsExpanded, visibleCells, breakingContentState, localeString, actionMenu, canSelectRows, isCheckboxDisabled, dragHandleRef, }: TableCellProps<TData>) => import("react").JSX.Element;
17
18
  export declare const TableCell: typeof TableCellComponent;
18
19
  export {};
19
20
  //# sourceMappingURL=table-cell.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"table-cell.d.ts","sourceRoot":"","sources":["../../../lib/components/table/table-cell.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAc,KAAK,IAAI,EAAE,KAAK,GAAG,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,EAAkD,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvF,OAAO,EAAgB,KAAK,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnD,KAAK,cAAc,CAAC,KAAK,SAAS,SAAS,IAAI;IAC9C,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;IACrC,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC;IAC/C,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF,QAAA,MAAM,kBAAkB,GAAI,KAAK,SAAS,SAAS,EAAE,gIAUlD,cAAc,CAAC,KAAK,CAAC,gCAkLvB,CAAC;AAEF,eAAO,MAAM,SAAS,EAA+B,OAAO,kBAAkB,CAAC"}
1
+ {"version":3,"file":"table-cell.d.ts","sourceRoot":"","sources":["../../../lib/components/table/table-cell.tsx"],"names":[],"mappings":"AAUA,OAAO,EAAc,KAAK,IAAI,EAAE,KAAK,GAAG,EAAE,MAAM,uBAAuB,CAAC;AACxE,OAAO,EAAkD,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAMvF,OAAO,EAAgB,KAAK,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnD,KAAK,cAAc,CAAC,KAAK,SAAS,SAAS,IAAI;IAC9C,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;IACrC,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC;IAC/C,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9C,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,KAAK,IAAI,CAAC;CAClD,CAAC;AAEF,QAAA,MAAM,kBAAkB,GAAI,KAAK,SAAS,SAAS,EAAE,+IAWlD,cAAc,CAAC,KAAK,CAAC,gCA0LvB,CAAC;AAEF,eAAO,MAAM,SAAS,EAA+B,OAAO,kBAAkB,CAAC"}
@@ -9,24 +9,25 @@ import { flexRender as s } from "../../node_modules/@tanstack/react-table/build/
9
9
  import { getColumnWidth as c, getPinnedLeft as l } from "./helper.js";
10
10
  import { useTableContext as u } from "./table-context.js";
11
11
  import { translations as d } from "./translations.js";
12
- import { TableRowExpandToggleButton as f } from "./table-row-expand-toggle-button.js";
13
- import { memo as p, useCallback as m, useMemo as h } from "react";
14
- import { Box as g, Flex as _, TableCell as v } from "@chakra-ui/react";
15
- import { Fragment as y, jsx as b, jsxs as x } from "react/jsx-runtime";
16
- var S = p(({ cell: p, row: S, rowIsExpanded: C, visibleCells: w, breakingContentState: T, localeString: E, actionMenu: D, canSelectRows: O, isCheckboxDisabled: k }) => {
17
- let A = u(), { column: j } = p, M = d[E], N = h(() => {
12
+ import { TableRowDragHandle as f } from "./table-row-drag-handle.js";
13
+ import { TableRowExpandToggleButton as p } from "./table-row-expand-toggle-button.js";
14
+ import { memo as m, useCallback as h, useMemo as g } from "react";
15
+ import { Box as _, Flex as v, TableCell as y } from "@chakra-ui/react";
16
+ import { Fragment as b, jsx as x, jsxs as S } from "react/jsx-runtime";
17
+ var C = m(({ cell: m, row: C, rowIsExpanded: w, visibleCells: T, breakingContentState: E, localeString: D, actionMenu: O, canSelectRows: k, isCheckboxDisabled: A, dragHandleRef: j }) => {
18
+ let M = u(), { column: N } = m, P = d[D], F = g(() => {
18
19
  let e = {
19
20
  width: "100%",
20
21
  display: "inline-flex",
21
22
  height: "100%",
22
23
  alignItems: "center"
23
24
  };
24
- return T[j.id] || (e.overflow = "hidden", e.whiteSpace = "nowrap"), e;
25
- }, [T, j.id]), P = h(() => j.getIndex() === 0, [j]), F = S.getCanExpand(), I = w[0]?.id === p.id, L = F && I, R = D || P && !!A.getRowActions || O, z = h(() => {
25
+ return E[N.id] || (e.overflow = "hidden", e.whiteSpace = "nowrap"), e;
26
+ }, [E, N.id]), I = C.getCanExpand(), L = T[0]?.id === m.id, R = I && L, z = O || L && !!M.getRowActions || k, B = L && M.rowReorderMode !== "off", V = M.rowReorderMode !== "off" && L && C.depth === 0, H = B ? 24 : 0, U = z || B, W = g(() => {
26
27
  let e = [];
27
- for (let t = 0; t < S.depth; t += 1) {
28
+ for (let t = 0; t < C.depth; t += 1) {
28
29
  let n = `${t * 2 + .7}rem`;
29
- R && (n = `calc(${n} + ${D && O ? 48 : 24}px)`), e.push(/* @__PURE__ */ b(o, {
30
+ U && (n = `calc(${n} + ${(z ? (O && k ? 2 : 1) * 24 : 0) + H}px)`), e.push(/* @__PURE__ */ x(o, {
30
31
  orientation: "vertical",
31
32
  position: "absolute",
32
33
  top: "0",
@@ -35,102 +36,108 @@ var S = p(({ cell: p, row: S, rowIsExpanded: C, visibleCells: w, breakingContent
35
36
  }
36
37
  return e;
37
38
  }, [
38
- D,
39
39
  O,
40
- S.depth,
41
- R
42
- ]), B = () => {
43
- let t = j.getIsPinned(), n = c(j, A.enableColumnResizing);
40
+ k,
41
+ H,
42
+ z,
43
+ C.depth,
44
+ U
45
+ ]), G = () => {
46
+ let t = N.getIsPinned(), n = c(N, M.enableColumnResizing);
44
47
  return {
45
48
  position: t ? "sticky" : "relative",
46
- left: t ? l(j, A.enableColumnResizing) : void 0,
49
+ left: t ? l(N, M.enableColumnResizing) : void 0,
47
50
  backgroundColor: t ? e.Background : void 0,
48
51
  zIndex: t ? 1 : void 0,
49
52
  width: n,
50
53
  maxWidth: n
51
54
  };
52
55
  };
53
- function V() {
54
- let e = S.depth && I || L ? `${S.depth * 2}rem` : t.Small;
55
- return R ? `calc(${e} + ${D && O && S.depth === 0 ? 48 : 24}px)` : e;
56
+ function K() {
57
+ let e = C.depth && L || R ? `${C.depth * 2}rem` : t.Small;
58
+ return U ? `calc(${e} + ${(z ? (O && k && C.depth === 0 ? 2 : 1) * 24 : 0) + H}px)` : e;
56
59
  }
57
- let H = m(({ checked: e }) => {
60
+ let q = h(({ checked: e }) => {
58
61
  let t = (e) => {
59
- if (A.disableSelectionCheckbox?.(e)) return [];
62
+ if (M.disableSelectionCheckbox?.(e)) return [];
60
63
  let n = [e.id];
61
64
  return e.subRows?.forEach((e) => {
62
65
  n.push(...t(e));
63
66
  }), n;
64
67
  };
65
- A.setSelectedRowIds((n) => {
66
- let r = t(S), i = new Set(n);
68
+ M.setSelectedRowIds((n) => {
69
+ let r = t(C), i = new Set(n);
67
70
  return r.forEach((t) => {
68
71
  e ? i.add(t) : i.delete(t);
69
72
  }), Array.from(i);
70
73
  });
71
- }, [S, A]), U = h(() => A.selectedRowIds?.includes(S.id) ?? !1, [S.id, A.selectedRowIds]);
72
- return /* @__PURE__ */ b(v, {
73
- id: p.id,
74
- textAlign: j.columnDef.meta?.isNumeric ? "end" : void 0,
74
+ }, [C, M]), J = g(() => M.selectedRowIds?.includes(C.id) ?? !1, [C.id, M.selectedRowIds]);
75
+ return /* @__PURE__ */ x(y, {
76
+ id: m.id,
77
+ textAlign: N.columnDef.meta?.isNumeric ? "end" : void 0,
75
78
  style: {
76
- ...B(),
79
+ ...G(),
77
80
  borderBottom: 0,
78
- paddingLeft: V()
81
+ paddingLeft: K()
79
82
  },
80
- children: /* @__PURE__ */ x(_, {
83
+ children: /* @__PURE__ */ S(v, {
81
84
  w: "100%",
82
85
  h: "100%",
83
86
  align: "center",
84
87
  children: [
85
- D && /* @__PURE__ */ b(r, { children: ({ isOpen: e }) => /* @__PURE__ */ x(g, {
88
+ V && /* @__PURE__ */ x(f, {
89
+ localeString: D,
90
+ handleRef: j
91
+ }),
92
+ O && /* @__PURE__ */ x(r, { children: ({ isOpen: e }) => /* @__PURE__ */ S(_, {
86
93
  display: "contents",
87
94
  onClick: (e) => e.stopPropagation(),
88
95
  onKeyDown: (e) => e.stopPropagation(),
89
- children: [/* @__PURE__ */ b(g, {
96
+ children: [/* @__PURE__ */ x(_, {
90
97
  className: "action-menu-button",
91
98
  position: "absolute",
92
- left: "0",
99
+ left: `${H}px`,
93
100
  opacity: +!!e,
94
101
  _hover: { opacity: 1 },
95
102
  _focusVisible: { opacity: 1 },
96
103
  css: { "&:has(:focus-visible)": { opacity: 1 } },
97
- children: /* @__PURE__ */ b(i, {
104
+ children: /* @__PURE__ */ x(i, {
98
105
  icon: n,
99
106
  variant: "ghost",
100
107
  size: "xs",
101
- "aria-label": M.moreActions,
108
+ "aria-label": P.moreActions,
102
109
  borderRadius: "0"
103
110
  })
104
- }), D]
111
+ }), O]
105
112
  }) }),
106
- O && /* @__PURE__ */ b(g, {
113
+ k && /* @__PURE__ */ x(_, {
107
114
  display: "contents",
108
115
  onClick: (e) => e.stopPropagation(),
109
116
  onKeyDown: (e) => e.stopPropagation(),
110
- children: /* @__PURE__ */ b(g, {
117
+ children: /* @__PURE__ */ x(_, {
111
118
  position: "absolute",
112
- left: D ? "24px" : "0",
113
- children: /* @__PURE__ */ b(a, {
114
- isChecked: U,
115
- onCheckedChange: H,
116
- isDisabled: k
119
+ left: `${H + (O ? 24 : 0)}px`,
120
+ children: /* @__PURE__ */ x(a, {
121
+ isChecked: J,
122
+ onCheckedChange: q,
123
+ isDisabled: A
117
124
  })
118
125
  })
119
126
  }),
120
- L || S.depth > 0 && I ? /* @__PURE__ */ b(f, {
121
- row: S,
122
- localeString: E,
123
- hidden: !F,
124
- rowIsExpanded: C
125
- }) : /* @__PURE__ */ b(y, {}),
126
- P && z,
127
- /* @__PURE__ */ b("div", {
128
- style: N,
129
- children: s(j.columnDef.cell, p.getContext())
127
+ R || C.depth > 0 && L ? /* @__PURE__ */ x(p, {
128
+ row: C,
129
+ localeString: D,
130
+ hidden: !I,
131
+ rowIsExpanded: w
132
+ }) : /* @__PURE__ */ x(b, {}),
133
+ L && W,
134
+ /* @__PURE__ */ x("div", {
135
+ style: F,
136
+ children: s(N.columnDef.cell, m.getContext())
130
137
  })
131
138
  ]
132
139
  })
133
- }, p.id);
140
+ }, m.id);
134
141
  });
135
142
  //#endregion
136
- export { S as TableCell };
143
+ export { C as TableCell };
@@ -1 +1 @@
1
- {"version":3,"file":"table-content.d.ts","sourceRoot":"","sources":["../../../lib/components/table/table-content.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAsB,KAAK,eAAe,EAAE,MAAM,SAAS,CAAC;AAUnE,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,SAAS,CAAC;AAEnE,UAAU,qBAAqB;IAC9B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB,CAAC,KAAK,SAAS,SAAS,GAAG,SAAS;IACrE;;OAEG;IACH,UAAU,CAAC,EAAE,CACZ,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC,EACxB,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC,mBAAmB,CAAC,KACnF,IAAI,CAAC;IAEV;;OAEG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B;;OAEG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,cAAc,CAAC,EAAE,qBAAqB,CAAC;IACvC;;OAEG;IACH,kBAAkB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;CACzD;AAED,KAAK,sBAAsB,CAAC,KAAK,SAAS,SAAS,IAAI,iBAAiB,CAAC,KAAK,CAAC,GAAG,eAAe,CAAC;AAElG,QAAA,MAAM,iBAAiB,GAAI,KAAK,SAAS,SAAS,EAAE,8BAGjD,sBAAsB,CAAC,KAAK,CAAC,gCAM/B,CAAC;AAuSF;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAA8B,OAAO,iBAAiB,CAAC"}
1
+ {"version":3,"file":"table-content.d.ts","sourceRoot":"","sources":["../../../lib/components/table/table-content.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAsB,KAAK,eAAe,EAAE,MAAM,SAAS,CAAC;AAYnE,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,SAAS,CAAC;AAEnE,UAAU,qBAAqB;IAC9B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB,CAAC,KAAK,SAAS,SAAS,GAAG,SAAS;IACrE;;OAEG;IACH,UAAU,CAAC,EAAE,CACZ,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC,EACxB,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC,mBAAmB,CAAC,KACnF,IAAI,CAAC;IAEV;;OAEG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B;;OAEG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,cAAc,CAAC,EAAE,qBAAqB,CAAC;IACvC;;OAEG;IACH,kBAAkB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;CACzD;AAED,KAAK,sBAAsB,CAAC,KAAK,SAAS,SAAS,IAAI,iBAAiB,CAAC,KAAK,CAAC,GAAG,eAAe,CAAC;AAElG,QAAA,MAAM,iBAAiB,GAAI,KAAK,SAAS,SAAS,EAAE,8BAGjD,sBAAsB,CAAC,KAAK,CAAC,gCAM/B,CAAC;AAiVF;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAA8B,OAAO,iBAAiB,CAAC"}
@@ -1,28 +1,31 @@
1
1
  "use no memo";
2
2
  import { ThemeColorVariable as e } from "../../theme/theme-types.js";
3
3
  import { useVirtualizer as t } from "../../node_modules/@tanstack/react-virtual/dist/esm/index.js";
4
+ import "./table.constants.js";
4
5
  import { getClampedColumnWidth as n, getColumnWidth as r } from "./helper.js";
5
6
  import { useTableColumnResizeInfo as i, useTableColumnSizeVars as a, useTableContext as o } from "./table-context.js";
6
- import { AutoScroller as s, Feedback as c } from "../../node_modules/@dnd-kit/dom/index.js";
7
- import { DragDropProvider as l } from "../../node_modules/@dnd-kit/react/index.js";
8
- import { TableHeaderRow as u } from "./table-header-row.js";
9
- import { TableRow as d } from "./table-row.js";
10
- import { memo as f, useMemo as p, useRef as m } from "react";
11
- import { Box as h, Table as g } from "@chakra-ui/react";
12
- import { jsx as _, jsxs as v } from "react/jsx-runtime";
7
+ import { Accessibility as s, AutoScroller as c, Feedback as l } from "../../node_modules/@dnd-kit/dom/index.js";
8
+ import { DragDropProvider as u } from "../../node_modules/@dnd-kit/react/index.js";
9
+ import { createDragAccessibility as d } from "./table-drag-accessibility.js";
10
+ import { TableHeaderRow as f } from "./table-header-row.js";
11
+ import { TableRow as p } from "./table-row.js";
12
+ import { memo as m, useEffect as h, useMemo as g, useRef as _ } from "react";
13
+ import { Box as v, Table as y } from "@chakra-ui/react";
14
+ import { jsx as b, jsxs as x } from "react/jsx-runtime";
13
15
  //#region lib/components/table/table-content.tsx
14
- var y = ({ virtualization: e, ...t }) => e ? /* @__PURE__ */ _(b, {
16
+ var S = ({ virtualization: e, ...t }) => e ? /* @__PURE__ */ b(C, {
15
17
  ...t,
16
18
  virtualization: e
17
- }) : /* @__PURE__ */ _(x, { ...t }), b = ({ onClickRow: e, onRowClickIndication: n, showRowHoverStyle: r = !0, virtualization: i, ...a }) => {
18
- let s = o(), c = m(null), l = p(() => s.table.getRowModel().rows, [
19
+ }) : /* @__PURE__ */ b(w, { ...t }), C = ({ onClickRow: e, onRowClickIndication: n, showRowHoverStyle: r = !0, virtualization: i, ...a }) => {
20
+ let s = o(), c = _(null), l = g(() => s.table.getRowModel().rows, [
19
21
  s.expanded,
20
22
  s.breakingContentState,
21
23
  s.columnVisibility,
22
24
  s.sorting,
23
25
  s.data,
26
+ s.rowOrder,
24
27
  s.columnOrder
25
- ]), u = p(() => {
28
+ ]), u = g(() => {
26
29
  let e = i.estimateRowHeight ?? 40, t = i.overscan ?? 5;
27
30
  return {
28
31
  count: l.length,
@@ -38,19 +41,19 @@ var y = ({ virtualization: e, ...t }) => e ? /* @__PURE__ */ _(b, {
38
41
  i.estimateRowHeight,
39
42
  i.overscan,
40
43
  l
41
- ]), f = t(u), y = f.getVirtualItems(), b = () => {
42
- let t = y.length > 0 ? y[0]?.start ?? 0 : 0, i = y.length > 0 ? f.getTotalSize() - (y[y.length - 1]?.end ?? 0) : 0, a = (l[0]?.getVisibleCells().length ?? s.table.getVisibleLeafColumns().length) + +!!s.enableColumnResizing;
43
- return /* @__PURE__ */ v(g.Body, { children: [
44
- t > 0 && /* @__PURE__ */ _("tr", {
44
+ ]), d = t(u), f = d.getVirtualItems(), m = () => {
45
+ let t = f.length > 0 ? f[0]?.start ?? 0 : 0, i = f.length > 0 ? d.getTotalSize() - (f[f.length - 1]?.end ?? 0) : 0, a = (l[0]?.getVisibleCells().length ?? s.table.getVisibleLeafColumns().length) + +!!s.enableColumnResizing;
46
+ return /* @__PURE__ */ x(y.Body, { children: [
47
+ t > 0 && /* @__PURE__ */ b("tr", {
45
48
  style: { height: `${t}px` },
46
49
  "aria-hidden": "true",
47
- children: /* @__PURE__ */ _("td", { colSpan: a })
50
+ children: /* @__PURE__ */ b("td", { colSpan: a })
48
51
  }),
49
- y.map((t) => {
52
+ f.map((t) => {
50
53
  let i = l[t.index];
51
54
  if (!i) return null;
52
55
  let a = i.getVisibleCells();
53
- return /* @__PURE__ */ _(d, {
56
+ return /* @__PURE__ */ b(p, {
54
57
  row: i,
55
58
  visibleCells: a,
56
59
  onClickRow: e,
@@ -58,14 +61,14 @@ var y = ({ virtualization: e, ...t }) => e ? /* @__PURE__ */ _(b, {
58
61
  showRowHoverStyle: r
59
62
  }, i.id);
60
63
  }),
61
- i > 0 && /* @__PURE__ */ _("tr", {
64
+ i > 0 && /* @__PURE__ */ b("tr", {
62
65
  style: { height: `${i}px` },
63
66
  "aria-hidden": "true",
64
- children: /* @__PURE__ */ _("td", { colSpan: a })
67
+ children: /* @__PURE__ */ b("td", { colSpan: a })
65
68
  })
66
69
  ] });
67
70
  };
68
- return /* @__PURE__ */ _(h, {
71
+ return /* @__PURE__ */ b(v, {
69
72
  ref: c,
70
73
  overflowY: "auto",
71
74
  height: i.height ?? "600px",
@@ -80,24 +83,25 @@ var y = ({ virtualization: e, ...t }) => e ? /* @__PURE__ */ _(b, {
80
83
  outline: "none",
81
84
  boxShadow: "none"
82
85
  },
83
- children: /* @__PURE__ */ _(w, {
86
+ children: /* @__PURE__ */ b(O, {
84
87
  ...a,
85
- children: b()
88
+ children: m()
86
89
  })
87
90
  });
88
- }, x = ({ onClickRow: e, onRowClickIndication: t, showRowHoverStyle: n = !0, ...r }) => {
89
- let i = o(), a = p(() => i.table.getRowModel().rows, [
91
+ }, w = ({ onClickRow: e, onRowClickIndication: t, showRowHoverStyle: n = !0, ...r }) => {
92
+ let i = o(), a = g(() => i.table.getRowModel().rows, [
90
93
  i.expanded,
91
94
  i.breakingContentState,
92
95
  i.columnVisibility,
93
96
  i.sorting,
94
- i.data
97
+ i.data,
98
+ i.rowOrder
95
99
  ]);
96
- return /* @__PURE__ */ _(w, {
100
+ return /* @__PURE__ */ b(O, {
97
101
  ...r,
98
- children: /* @__PURE__ */ _(g.Body, { children: a.map((r) => {
102
+ children: /* @__PURE__ */ b(y.Body, { children: a.map((r) => {
99
103
  let i = r.getVisibleCells();
100
- return /* @__PURE__ */ _(d, {
104
+ return /* @__PURE__ */ b(p, {
101
105
  row: r,
102
106
  visibleCells: i,
103
107
  onClickRow: e,
@@ -107,7 +111,17 @@ var y = ({ virtualization: e, ...t }) => e ? /* @__PURE__ */ _(b, {
107
111
  }) })
108
112
  });
109
113
  };
110
- function S(e) {
114
+ function T() {
115
+ let e = _(null);
116
+ return h(() => {
117
+ let t = e.current;
118
+ e.current = null, t && document.activeElement === document.body && t.focus();
119
+ }), (t) => {
120
+ let n = document.activeElement, r = n === t?.handle || n === t?.element;
121
+ e.current = r && n instanceof HTMLElement ? n : null;
122
+ };
123
+ }
124
+ function E(e) {
111
125
  let t = e?.parentElement ?? null;
112
126
  for (; t;) {
113
127
  let e = t.ownerDocument.defaultView?.getComputedStyle(t).overflowX;
@@ -116,13 +130,13 @@ function S(e) {
116
130
  }
117
131
  return 0;
118
132
  }
119
- var C = ({ contentRef: t }) => {
133
+ var D = ({ contentRef: t }) => {
120
134
  let r = o(), a = i(), s = a?.isResizingColumn;
121
135
  if (!s) return null;
122
136
  let c = r.table.getFlatHeaders().find((e) => e.column.id === s);
123
137
  if (!c) return null;
124
- let l = c.column.getIsPinned() === "left" ? S(t.current) : 0, u = c.getSize() + (a?.deltaOffset ?? 0), d = n(c.column, u), f = c.getStart() + d + l;
125
- return /* @__PURE__ */ _(h, {
138
+ let l = c.column.getIsPinned() === "left" ? E(t.current) : 0, u = c.getSize() + (a?.deltaOffset ?? 0), d = n(c.column, u), f = c.getStart() + d + l;
139
+ return /* @__PURE__ */ b(v, {
126
140
  "aria-hidden": !0,
127
141
  className: "tableColumnResizeIndicator",
128
142
  position: "absolute",
@@ -134,21 +148,21 @@ var C = ({ contentRef: t }) => {
134
148
  zIndex: 11,
135
149
  style: { left: `${f}px` }
136
150
  });
137
- }, w = ({ hideTableHeaderDropdown: e, stickyHeaders: t, portalContainerRef: n, children: i, ...d }) => {
138
- let f = o(), p = m(null), y = a(), b = f.enableColumnResizing ? {
139
- ...y,
151
+ }, O = ({ hideTableHeaderDropdown: e, stickyHeaders: t, portalContainerRef: n, children: i, ...p }) => {
152
+ let m = o(), h = T(), g = _(null), S = a(), C = m.enableColumnResizing ? {
153
+ ...S,
140
154
  tableLayout: "fixed",
141
155
  width: "100%",
142
- minWidth: f.table.getTotalSize()
143
- } : void 0, x = f.enableColumnResizing ? /* @__PURE__ */ _("colgroup", { children: f.table.getVisibleLeafColumns().map((e) => /* @__PURE__ */ _("col", { style: { width: r(e, !0) } }, e.id)) }) : null, S = /* @__PURE__ */ v(g.Root, {
144
- ...d,
145
- id: f.id,
146
- style: b,
156
+ minWidth: m.table.getTotalSize()
157
+ } : void 0, w = m.enableColumnResizing ? /* @__PURE__ */ b("colgroup", { children: m.table.getVisibleLeafColumns().map((e) => /* @__PURE__ */ b("col", { style: { width: r(e, !0) } }, e.id)) }) : null, E = /* @__PURE__ */ x(y.Root, {
158
+ ...p,
159
+ id: m.id,
160
+ style: C,
147
161
  children: [
148
- x,
149
- /* @__PURE__ */ _(g.Header, {
162
+ w,
163
+ /* @__PURE__ */ b(y.Header, {
150
164
  "data-sticky-headers": t,
151
- children: f.table.getHeaderGroups().map((t) => /* @__PURE__ */ _(u, {
165
+ children: m.table.getHeaderGroups().map((t) => /* @__PURE__ */ b(f, {
152
166
  headerGroup: t,
153
167
  hideTableHeaderDropdown: e,
154
168
  portalContainerRef: n
@@ -156,20 +170,34 @@ var C = ({ contentRef: t }) => {
156
170
  }),
157
171
  i
158
172
  ]
159
- }), w = f.enableColumnResizing ? /* @__PURE__ */ v(h, {
160
- ref: p,
173
+ }), O = m.enableColumnResizing ? /* @__PURE__ */ x(v, {
174
+ ref: g,
161
175
  position: "relative",
162
176
  isolation: "isolate",
163
- children: [S, /* @__PURE__ */ _(C, { contentRef: p })]
164
- }) : S;
165
- return f.enableColumnReorder ? /* @__PURE__ */ _(l, {
177
+ children: [E, /* @__PURE__ */ b(D, { contentRef: g })]
178
+ }) : E;
179
+ return m.enableColumnReorder || m.rowReorderMode === "enabled" ? /* @__PURE__ */ b(u, {
166
180
  onDragEnd: (e) => {
167
- let { operation: t } = e, n = String(t.source?.id), r = String(t.target?.id);
168
- n !== r && f.handleDragEnd(n, r);
181
+ let { operation: t } = e;
182
+ if (e.canceled) return;
183
+ let n = String(t.source?.id), r = String(t.target?.id);
184
+ n !== r && (t.source?.type === "table-row" ? m.handleRowDragEnd(n, r) : m.handleDragEnd(n, r), h(t.source));
169
185
  },
170
- plugins: (e) => [...e.filter((e) => e !== s), c.configure({ dropAnimation: null })],
171
- children: w
172
- }) : w;
173
- }, T = f(y);
186
+ plugins: (e) => [
187
+ ...e.filter((e) => e !== c && e !== s),
188
+ d({
189
+ localeString: m.localeString,
190
+ rowCount: m.rowOrder.length,
191
+ columnCount: m.table.getVisibleLeafColumns().length
192
+ }),
193
+ ...m.rowReorderMode === "enabled" ? [c.configure({ threshold: {
194
+ x: 0,
195
+ y: .2
196
+ } })] : [],
197
+ l.configure({ dropAnimation: null })
198
+ ],
199
+ children: O
200
+ }) : O;
201
+ }, k = m(S);
174
202
  //#endregion
175
- export { T as TableContent };
203
+ export { k as TableContent };
@@ -2,11 +2,19 @@ import { MenuList } from '../menu/index.js';
2
2
  import { ColumnDef, ColumnOrderState, ColumnPinningState, ColumnSizingState, ExpandedState, Row, RowSelectionState, SortingState, Table, VisibilityState } from '@tanstack/react-table';
3
3
  import { PropsWithChildren } from 'react';
4
4
  import { Locales } from './translations.js';
5
- import { SelectionAction, TableData, TableRow } from './types.js';
5
+ import { RowReorderDetails, SelectionAction, TableData, TableRow } from './types.js';
6
6
  export interface TableFilterMethods {
7
7
  onToggleFilterVisibility: (columnId: string) => void;
8
8
  canFilterOnColumn: (columnId: string) => boolean;
9
9
  }
10
+ /**
11
+ * Defines the current state of row reordering.
12
+ *
13
+ * - `off` - row reordering is disabled; no grip or space is reserved
14
+ * - `blockedBySort` - the grip is visible, but sorting prevents reordering; dragging prompts the user to clear the sort
15
+ * - `enabled` - row reordering is enabled and dragging moves the row
16
+ */
17
+ export type RowReorderMode = "off" | "blockedBySort" | "enabled";
10
18
  interface TableProviderInterface<TData extends TableData> extends PropsWithChildren {
11
19
  data: TableRow<TData>[];
12
20
  columns: ColumnDef<TableRow<TData>>[];
@@ -39,6 +47,8 @@ interface TableProviderInterface<TData extends TableData> extends PropsWithChild
39
47
  enableColumnResizing?: boolean;
40
48
  initialColumnSizingState?: ColumnSizingState;
41
49
  onColumnSizingChange?: (state: ColumnSizingState) => void;
50
+ enableRowReorder?: boolean;
51
+ onRowOrderChange?: (details: RowReorderDetails) => void;
42
52
  }
43
53
  export interface TableContextInterface<TData extends TableData = TableData> {
44
54
  data: TableRow<TData>[];
@@ -81,7 +91,12 @@ export interface TableContextInterface<TData extends TableData = TableData> {
81
91
  handleDragEnd: (sourceId: string, targetId: string) => void;
82
92
  enableColumnResizing: boolean;
83
93
  columnPinning: ColumnPinningState;
94
+ rowReorderMode: RowReorderMode;
95
+ setIsSortedReorderPromptOpen: React.Dispatch<React.SetStateAction<boolean>>;
96
+ /** IDs of the top-level rows in the order they currently render. */
97
+ rowOrder: string[];
98
+ handleRowDragEnd: (sourceId: string, targetId: string) => void;
84
99
  }
85
- export declare const TableProvider: <TData extends TableData>({ data, totalDataCount, columns, children, expandedState, localeString, initialExpandedState, initialBreakingContentState, initialColumnVisibilityState, columnVisibilityState, onColumnVisibilityChange, onExpandedChange, getRowId, getRowActions, onBreakingContentChange, id, customRowIndication, onSortingChange, initialSortingState, sortingState, selectionState, initialSelectionState, onSelectionChange, selectionActions, disableSelectionCheckbox, enableColumnReorder, columnOrderState, initialColumnOrder, onColumnOrderChange, enableColumnResizing, initialColumnSizingState, onColumnSizingChange, }: TableProviderInterface<TData>) => import("react").JSX.Element;
100
+ export declare const TableProvider: <TData extends TableData>({ data, totalDataCount, columns, children, expandedState, localeString, initialExpandedState, initialBreakingContentState, initialColumnVisibilityState, columnVisibilityState, onColumnVisibilityChange, onExpandedChange, getRowId, getRowActions, onBreakingContentChange, id, customRowIndication, onSortingChange, initialSortingState, sortingState, selectionState, initialSelectionState, onSelectionChange, selectionActions, disableSelectionCheckbox, enableColumnReorder, columnOrderState, initialColumnOrder, onColumnOrderChange, enableColumnResizing, initialColumnSizingState, onColumnSizingChange, enableRowReorder, onRowOrderChange, }: TableProviderInterface<TData>) => import("react").JSX.Element;
86
101
  export {};
87
102
  //# sourceMappingURL=table-context-provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"table-context-provider.d.ts","sourceRoot":"","sources":["../../../lib/components/table/table-context-provider.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"table-context-provider.d.ts","sourceRoot":"","sources":["../../../lib/components/table/table-context-provider.tsx"],"names":[],"mappings":"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"}