@caspeco/casper-ui-library 8.3.0 → 8.4.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 (37) hide show
  1. package/dist/components/modal/modal.spec.d.ts +0 -1
  2. package/dist/components/modal/modal.spec.d.ts.map +1 -1
  3. package/dist/components/table/helper.d.ts +2 -0
  4. package/dist/components/table/helper.d.ts.map +1 -0
  5. package/dist/components/table/helper.js +7 -0
  6. package/dist/components/table/table-content.d.ts.map +1 -1
  7. package/dist/components/table/table-content.js +93 -80
  8. package/dist/components/table/table-context-provider.d.ts +10 -2
  9. package/dist/components/table/table-context-provider.d.ts.map +1 -1
  10. package/dist/components/table/table-context-provider.js +149 -110
  11. package/dist/components/table/table-header-row.d.ts.map +1 -1
  12. package/dist/components/table/table-header-row.js +170 -121
  13. package/dist/components/table/table-row.js +11 -11
  14. package/dist/components/table/table.d.ts +1 -1
  15. package/dist/components/table/table.d.ts.map +1 -1
  16. package/dist/components/table/table.js +16 -8
  17. package/dist/components/table/table.spec.d.ts +0 -1
  18. package/dist/components/table/table.spec.d.ts.map +1 -1
  19. package/dist/components/table/types.d.ts +21 -0
  20. package/dist/components/table/types.d.ts.map +1 -1
  21. package/dist/components/toggle-button/toggle-button.spec.d.ts +0 -1
  22. package/dist/components/toggle-button/toggle-button.spec.d.ts.map +1 -1
  23. package/dist/node_modules/@dnd-kit/abstract/index.js +1142 -0
  24. package/dist/node_modules/@dnd-kit/collision/dist/index.js +91 -0
  25. package/dist/node_modules/@dnd-kit/dom/index.js +1554 -0
  26. package/dist/node_modules/@dnd-kit/dom/sortable.js +631 -0
  27. package/dist/node_modules/@dnd-kit/dom/utilities.js +943 -0
  28. package/dist/node_modules/@dnd-kit/geometry/dist/index.js +200 -0
  29. package/dist/node_modules/@dnd-kit/react/hooks.js +69 -0
  30. package/dist/node_modules/@dnd-kit/react/index.js +235 -0
  31. package/dist/node_modules/@dnd-kit/react/sortable.js +129 -0
  32. package/dist/node_modules/@dnd-kit/react/utilities.js +11 -0
  33. package/dist/node_modules/@dnd-kit/state/dist/index.js +181 -0
  34. package/dist/node_modules/@preact/signals-core/dist/signals-core.module.js +265 -0
  35. package/dist/test-utils/hooks/setup-mock-resize-observer.d.ts +1 -1
  36. package/dist/test-utils/hooks/setup-mock-resize-observer.d.ts.map +1 -1
  37. package/package.json +3 -1
@@ -1,187 +1,236 @@
1
- import { jsx as e, Fragment as b, jsxs as C } from "react/jsx-runtime";
2
- import { Tr as A, Th as B, useMediaQuery as z, Portal as D } from "@chakra-ui/react";
1
+ import { jsx as t, Fragment as I, jsxs as x } from "react/jsx-runtime";
2
+ import { Tr as A, Th as k, useMediaQuery as H, Portal as P } from "@chakra-ui/react";
3
3
  import { flexRender as V } from "../../node_modules/@tanstack/react-table/build/lib/index.js";
4
- import { memo as H, useRef as L, useCallback as R, useLayoutEffect as P, useMemo as F } from "react";
5
- import { useTableContext as f } from "./table-context.js";
6
- import { TableHeaderDropdown as O } from "./table-header-dropdown.js";
7
- import { translations as v } from "./translations.js";
8
- import { Flex as I } from "../flex/flex.js";
9
- import { Box as S } from "../box/box.js";
10
- import { Divider as N } from "../divider/divider.js";
11
- import { Menu as j } from "../menu/menu.js";
12
- import { MenuButton as E } from "../menu/menu-button.js";
13
- import { Icons as y } from "../icon/types.js";
14
- import { MenuList as $ } from "../menu/menu-list.js";
15
- import { Checkbox as W } from "../checkbox/checkbox.js";
16
- import { MenuItem as Q } from "../menu/menu-item.js";
17
- import { IconButton as X } from "../icon-button/icon-button.js";
18
- import { Button as q } from "../button/button.js";
19
- import { ThemeColorVariable as g, ThemeSpaceVariable as p, ThemeFontSizeVariable as G, ThemeFontVariable as J } from "../../theme/theme-types.js";
20
- const K = ({
21
- headerGroup: t,
4
+ import { memo as L, useRef as N, useCallback as B, useLayoutEffect as O, forwardRef as F, useMemo as $ } from "react";
5
+ import { closestCenter as j } from "../../node_modules/@dnd-kit/collision/dist/index.js";
6
+ import { SortableKeyboardPlugin as E } from "../../node_modules/@dnd-kit/dom/sortable.js";
7
+ import { useSortable as W } from "../../node_modules/@dnd-kit/react/sortable.js";
8
+ import { useTableContext as C } from "./table-context.js";
9
+ import { TableHeaderDropdown as K } from "./table-header-dropdown.js";
10
+ import { translations as T } from "./translations.js";
11
+ import { Flex as R } from "../flex/flex.js";
12
+ import { Box as b } from "../box/box.js";
13
+ import { Divider as Q } from "../divider/divider.js";
14
+ import { Menu as X } from "../menu/menu.js";
15
+ import { MenuButton as q } from "../menu/menu-button.js";
16
+ import { Icons as M } from "../icon/types.js";
17
+ import { MenuList as G } from "../menu/menu-list.js";
18
+ import { Checkbox as J } from "../checkbox/checkbox.js";
19
+ import { MenuItem as U } from "../menu/menu-item.js";
20
+ import { IconButton as Y } from "../icon-button/icon-button.js";
21
+ import { Button as Z } from "../button/button.js";
22
+ import { ThemeColorVariable as u, ThemeSpaceVariable as S, ThemeFontSizeVariable as _, ThemeFontVariable as ee } from "../../theme/theme-types.js";
23
+ const te = ({
24
+ headerGroup: n,
22
25
  hideTableHeaderDropdown: o,
23
26
  portalContainerRef: s
24
27
  }) => {
25
- const i = f(), c = !!i.getRowActions, l = (i.selectedRowIds?.length ?? 0) > 0 && (i.selectionActions?.length ?? 0) > 0;
26
- return /* @__PURE__ */ e(b, { children: /* @__PURE__ */ e(A, { children: l ? /* @__PURE__ */ e(
27
- B,
28
+ const i = C(), a = !!i.getRowActions, c = (i.selectedRowIds?.length ?? 0) > 0 && (i.selectionActions?.length ?? 0) > 0;
29
+ return /* @__PURE__ */ t(I, { children: /* @__PURE__ */ t(A, { children: c ? /* @__PURE__ */ t(
30
+ k,
28
31
  {
29
- colSpan: t.headers.length,
32
+ colSpan: n.headers.length,
30
33
  sx: {
31
34
  cursor: "default",
32
35
  "& div:hover": {
33
36
  backgroundColor: "transparent !important"
34
37
  },
35
38
  "div span": {
36
- color: g.OnBackground
39
+ color: u.OnBackground
37
40
  }
38
41
  },
39
42
  zIndex: 1,
40
43
  style: {
41
- borderBottom: `1px solid ${g.OnBackgroundBorder}`,
42
- paddingLeft: c ? "24px" : void 0
44
+ borderBottom: `1px solid ${u.OnBackgroundBorder}`,
45
+ paddingLeft: a ? "24px" : void 0
43
46
  },
44
- children: /* @__PURE__ */ e(M, { showSelectAll: !0, children: /* @__PURE__ */ e(Z, {}) })
47
+ children: /* @__PURE__ */ t(z, { showSelectAll: !0, children: /* @__PURE__ */ t(le, {}) })
45
48
  }
46
- ) : /* @__PURE__ */ e(b, { children: t.headers.map((n) => /* @__PURE__ */ e(
47
- U,
49
+ ) : /* @__PURE__ */ t(I, { children: n.headers.map((r, e) => /* @__PURE__ */ t(
50
+ ne,
48
51
  {
49
- header: n,
52
+ header: r,
50
53
  hideTableHeaderDropdown: o,
51
- applyActionMenuPadding: c,
54
+ applyActionMenuPadding: a,
52
55
  portalContainerRef: s,
53
- isFirstColumn: n.column.getIndex() === 0
56
+ isFirstColumn: !r.isPlaceholder && e === 0,
57
+ enableColumnReorder: i.enableColumnReorder
54
58
  },
55
- n.id
56
- )) }) }, t.id) });
57
- }, U = ({
58
- header: t,
59
+ r.id
60
+ )) }) }, n.id) });
61
+ }, ne = ({
62
+ header: n,
59
63
  hideTableHeaderDropdown: o,
60
64
  applyActionMenuPadding: s,
61
65
  portalContainerRef: i,
62
- isFirstColumn: c = !1
66
+ isFirstColumn: a = !1,
67
+ enableColumnReorder: c = !1
63
68
  }) => {
64
- const l = L(null), n = f(), { column: r } = t, m = R((d) => {
65
- const a = d.getIsPinned(), u = d.getSize();
69
+ const r = N(null), e = C(), { column: l } = n, g = B((d) => {
70
+ const h = d.getIsPinned(), p = d.getSize();
66
71
  return {
67
- position: a ? "sticky" : "relative",
68
- left: a ? `${d.getStart("left")}px` : void 0,
69
- backgroundColor: a ? g.Background : void 0,
70
- zIndex: a ? 1 : 0,
71
- width: u,
72
- maxWidth: u
72
+ position: h ? "sticky" : "relative",
73
+ left: h ? `${d.getStart("left")}px` : void 0,
74
+ backgroundColor: h ? u.Background : void 0,
75
+ zIndex: h ? 1 : 0,
76
+ width: p,
77
+ maxWidth: p
73
78
  };
74
79
  }, []);
75
- return P(() => {
76
- const d = l.current;
80
+ O(() => {
81
+ const d = r.current;
77
82
  if (!d) return;
78
- const a = r.id, u = (h) => {
79
- h > 0 && n.table.getState().columnSizing[a] !== h && n.table.setColumnSizing((w) => ({ ...w, [a]: h }));
80
- }, k = new ResizeObserver((h) => {
81
- const w = h[0];
83
+ const h = l.id, p = (f) => {
84
+ f > 0 && e.table.getState().columnSizing[h] !== f && e.table.setColumnSizing((w) => ({ ...w, [h]: f }));
85
+ }, v = new ResizeObserver((f) => {
86
+ const w = f[0];
82
87
  if (!w) return;
83
- const T = w.borderBoxSize?.[0]?.inlineSize ?? d.getBoundingClientRect().width;
84
- u(T);
88
+ const D = w.borderBoxSize?.[0]?.inlineSize ?? d.getBoundingClientRect().width;
89
+ p(D);
85
90
  });
86
- return k.observe(d), u(d.getBoundingClientRect().width), () => k.disconnect();
87
- }, []), /* @__PURE__ */ e(
88
- B,
91
+ return v.observe(d), p(d.getBoundingClientRect().width), () => v.disconnect();
92
+ }, []);
93
+ const m = /* @__PURE__ */ t(z, { showSelectAll: e.canSelectRows && a, children: /* @__PURE__ */ t(I, { children: o ? /* @__PURE__ */ t(b, { paddingLeft: S.Small, children: V(n.column.columnDef.header, n.getContext()) }) : /* @__PURE__ */ t(
94
+ K,
95
+ {
96
+ header: n,
97
+ breakingContentState: e.breakingContentState,
98
+ columnVisibility: e.columnVisibility,
99
+ headerGroup: e.table.getHeaderGroups(),
100
+ localeString: e.localeString,
101
+ setBreakingContentState: e.setBreakingContentState,
102
+ setSorting: e.setSorting,
103
+ sorting: e.sorting,
104
+ onBreakingContentChange: e.onBreakingContentChange,
105
+ portalContainerRef: i
106
+ }
107
+ ) }) });
108
+ return c ? /* @__PURE__ */ t(
109
+ oe,
110
+ {
111
+ ref: r,
112
+ columnId: l.id,
113
+ columnIndex: l.getIndex(),
114
+ disableColumnReorder: l.columnDef.meta?.disableColumnReorder,
115
+ isNumeric: l.columnDef.meta?.isNumeric,
116
+ zIndex: l.getIsPinned() ? 2 : 1,
117
+ style: {
118
+ ...g(l),
119
+ borderBottom: `1px solid ${u.OnBackgroundBorder}`,
120
+ paddingLeft: a && s ? "24px" : void 0
121
+ },
122
+ children: m
123
+ }
124
+ ) : /* @__PURE__ */ t(
125
+ k,
89
126
  {
90
- ref: l,
127
+ ref: r,
91
128
  className: "tableHeaderCell",
92
- isNumeric: r.columnDef.meta?.isNumeric,
93
- zIndex: r.getIsPinned() ? 2 : 1,
129
+ isNumeric: l.columnDef.meta?.isNumeric,
130
+ zIndex: l.getIsPinned() ? 2 : 1,
94
131
  style: {
95
- ...m(r),
96
- borderBottom: `1px solid ${g.OnBackgroundBorder}`,
97
- paddingLeft: c && s ? "24px" : void 0
132
+ ...g(l),
133
+ borderBottom: `1px solid ${u.OnBackgroundBorder}`,
134
+ paddingLeft: a && s ? "24px" : void 0
98
135
  },
99
- children: /* @__PURE__ */ e(M, { showSelectAll: n.canSelectRows && c, children: /* @__PURE__ */ e(b, { children: o ? /* @__PURE__ */ e(S, { paddingLeft: p.Small, children: V(t.column.columnDef.header, t.getContext()) }) : /* @__PURE__ */ e(
100
- O,
101
- {
102
- header: t,
103
- breakingContentState: n.breakingContentState,
104
- columnVisibility: n.columnVisibility,
105
- headerGroup: n.table.getHeaderGroups(),
106
- localeString: n.localeString,
107
- setBreakingContentState: n.setBreakingContentState,
108
- setSorting: n.setSorting,
109
- sorting: n.sorting,
110
- onBreakingContentChange: n.onBreakingContentChange,
111
- portalContainerRef: i
112
- }
113
- ) }) })
136
+ children: m
137
+ }
138
+ );
139
+ }, oe = F(({ columnId: n, columnIndex: o, isNumeric: s, disableColumnReorder: i, zIndex: a, style: c, children: r }, e) => {
140
+ const { ref: l, isDragging: g, isDropTarget: m } = W({
141
+ id: n,
142
+ index: o,
143
+ disabled: i,
144
+ collisionDetector: j,
145
+ plugins: [E]
146
+ });
147
+ return /* @__PURE__ */ t(
148
+ k,
149
+ {
150
+ ref: (d) => {
151
+ l(d), typeof e == "function" ? e(d) : e && (e.current = d);
152
+ },
153
+ className: "tableHeaderCell",
154
+ isNumeric: s,
155
+ zIndex: a,
156
+ style: {
157
+ ...c,
158
+ cursor: g ? "grabbing" : "pointer",
159
+ opacity: g ? 0.5 : 1,
160
+ backgroundColor: m ? u.Background : void 0
161
+ },
162
+ children: r
114
163
  }
115
164
  );
116
- }, M = ({ showSelectAll: t, children: o }) => t ? /* @__PURE__ */ C(I, { w: "100%", align: "center", children: [
117
- /* @__PURE__ */ e(S, { justifyContent: "center", alignItems: "center", children: /* @__PURE__ */ e(Y, {}) }),
165
+ }), z = ({ showSelectAll: n, children: o }) => n ? /* @__PURE__ */ x(R, { w: "100%", align: "center", children: [
166
+ /* @__PURE__ */ t(b, { justifyContent: "center", alignItems: "center", children: /* @__PURE__ */ t(re, {}) }),
118
167
  o
119
- ] }) : /* @__PURE__ */ e(b, { children: o }), Y = () => {
120
- const t = f(), o = R(
121
- (c) => {
122
- const l = c.target.checked, n = t.getSelectableRowIds();
123
- l ? t.setSelectedRowIds((r) => [.../* @__PURE__ */ new Set([...r, ...n])]) : t.setSelectedRowIds((r) => r.filter((m) => !n.includes(m)));
168
+ ] }) : /* @__PURE__ */ t(I, { children: o }), re = () => {
169
+ const n = C(), o = B(
170
+ (a) => {
171
+ const c = a.target.checked, r = n.getSelectableRowIds();
172
+ c ? n.setSelectedRowIds((e) => [.../* @__PURE__ */ new Set([...e, ...r])]) : n.setSelectedRowIds((e) => e.filter((l) => !r.includes(l)));
124
173
  },
125
- [t]
126
- ), { allIsSelected: s, shouldShowIndeterminateState: i } = F(() => {
127
- const l = t.table.getRowModel().flatRows, n = new Set(t.selectedRowIds), r = t.getSelectableRowIds(), m = r.length > 0 && r.every((a) => n.has(a)), d = l.some((a) => n.has(a.id));
174
+ [n]
175
+ ), { allIsSelected: s, shouldShowIndeterminateState: i } = $(() => {
176
+ const c = n.table.getRowModel().flatRows, r = new Set(n.selectedRowIds), e = n.getSelectableRowIds(), l = e.length > 0 && e.every((m) => r.has(m)), g = c.some((m) => r.has(m.id));
128
177
  return {
129
- allIsSelected: m,
130
- shouldShowIndeterminateState: d && !m
178
+ allIsSelected: l,
179
+ shouldShowIndeterminateState: g && !l
131
180
  };
132
- }, [t]);
133
- return /* @__PURE__ */ e(
134
- W,
181
+ }, [n]);
182
+ return /* @__PURE__ */ t(
183
+ J,
135
184
  {
136
185
  isChecked: s,
137
186
  isIndeterminate: i,
138
187
  onChange: o
139
188
  }
140
189
  );
141
- }, Z = () => {
142
- const { localeString: t, selectedRowIds: o = [], selectionActions: s = [] } = f(), i = v[t], [c] = z("(min-width: 48em)"), l = s.length > 3 || !c, n = o.length === 1 ? i.selectedSingular.replace("{count}", "1") : i.selected.replace("{count}", o.length.toString());
143
- return /* @__PURE__ */ C(
144
- I,
190
+ }, le = () => {
191
+ const { localeString: n, selectedRowIds: o = [], selectionActions: s = [] } = C(), i = T[n], [a] = H("(min-width: 48em)"), c = s.length > 3 || !a, r = o.length === 1 ? i.selectedSingular.replace("{count}", "1") : i.selected.replace("{count}", o.length.toString());
192
+ return /* @__PURE__ */ x(
193
+ R,
145
194
  {
146
- gap: p.Medium,
195
+ gap: S.Medium,
147
196
  align: "center",
148
197
  alignContent: "center",
149
- marginBottom: p.XSmall,
198
+ marginBottom: S.XSmall,
150
199
  children: [
151
- /* @__PURE__ */ e(
152
- S,
200
+ /* @__PURE__ */ t(
201
+ b,
153
202
  {
154
- pl: p.Small,
155
- color: g.OnBackground,
156
- fontFamily: J.Body,
157
- fontSize: G.Medium,
203
+ pl: S.Small,
204
+ color: u.OnBackground,
205
+ fontFamily: ee.Body,
206
+ fontSize: _.Medium,
158
207
  whiteSpace: "nowrap",
159
208
  style: { fontVariantNumeric: "normal" },
160
- children: n
209
+ children: r
161
210
  }
162
211
  ),
163
- /* @__PURE__ */ e(S, { children: /* @__PURE__ */ e(N, { orientation: "vertical", height: "20px" }) }),
164
- /* @__PURE__ */ e(I, { gap: p.Small, align: "center", children: l ? /* @__PURE__ */ C(j, { children: [
165
- /* @__PURE__ */ e(E, { variant: "ghost", rightIcon: y.TreeViewCollapse, children: i.action }),
166
- /* @__PURE__ */ e(D, { children: /* @__PURE__ */ e($, { children: s.map((r) => /* @__PURE__ */ e(x, { isMenuItem: !0, action: r }, r.name)) }) })
167
- ] }) : s.map((r) => /* @__PURE__ */ e(x, { isMenuItem: !1, action: r }, r.name)) })
212
+ /* @__PURE__ */ t(b, { children: /* @__PURE__ */ t(Q, { orientation: "vertical", height: "20px" }) }),
213
+ /* @__PURE__ */ t(R, { gap: S.Small, align: "center", children: c ? /* @__PURE__ */ x(X, { children: [
214
+ /* @__PURE__ */ t(q, { variant: "ghost", rightIcon: M.TreeViewCollapse, children: i.action }),
215
+ /* @__PURE__ */ t(P, { children: /* @__PURE__ */ t(G, { children: s.map((e) => /* @__PURE__ */ t(y, { isMenuItem: !0, action: e }, e.name)) }) })
216
+ ] }) : s.map((e) => /* @__PURE__ */ t(y, { isMenuItem: !1, action: e }, e.name)) })
168
217
  ]
169
218
  }
170
219
  );
171
- }, x = ({ isMenuItem: t, action: o }) => {
172
- const { selectedRowIds: s, localeString: i } = f(), c = v[i], l = R(() => {
220
+ }, y = ({ isMenuItem: n, action: o }) => {
221
+ const { selectedRowIds: s, localeString: i } = C(), a = T[i], c = B(() => {
173
222
  o.onClick(s || []);
174
223
  }, [o, s]);
175
- return t ? /* @__PURE__ */ e(Q, { onClick: l, children: o.variant === "delete" ? /* @__PURE__ */ e(S, { as: "span", color: g.Error, children: o.name }) : o.name }) : o.variant === "delete" ? /* @__PURE__ */ e(
176
- X,
224
+ return n ? /* @__PURE__ */ t(U, { onClick: c, children: o.variant === "delete" ? /* @__PURE__ */ t(b, { as: "span", color: u.Error, children: o.name }) : o.name }) : o.variant === "delete" ? /* @__PURE__ */ t(
225
+ Y,
177
226
  {
178
- onClick: l,
179
- icon: y.Delete,
180
- "aria-label": c.deleteSelectedRows,
227
+ onClick: c,
228
+ icon: M.Delete,
229
+ "aria-label": a.deleteSelectedRows,
181
230
  variant: "ghost"
182
231
  }
183
- ) : /* @__PURE__ */ e(q, { onClick: l, variant: "ghost", children: o.name });
184
- }, we = H(K);
232
+ ) : /* @__PURE__ */ t(Z, { onClick: c, variant: "ghost", children: o.name });
233
+ }, Te = L(te);
185
234
  export {
186
- we as TableHeaderRow
235
+ Te as TableHeaderRow
187
236
  };
@@ -1,16 +1,16 @@
1
1
  import { jsx as s } from "react/jsx-runtime";
2
- import { Tr as p } from "@chakra-ui/react";
3
- import { memo as h, useCallback as d, useMemo as f } from "react";
2
+ import { Tr as h } from "@chakra-ui/react";
3
+ import { memo as f, useCallback as d, useMemo as S } from "react";
4
4
  import { TableCell as x } from "./table-cell.js";
5
- import { useTableContext as S } from "./table-context.js";
6
- const I = ({
5
+ import { useTableContext as I } from "./table-context.js";
6
+ const T = ({
7
7
  row: e,
8
8
  visibleCells: o,
9
9
  onClickRow: n,
10
10
  showRowHoverStyle: l,
11
11
  onRowClickIndication: i
12
12
  }) => {
13
- const a = S(), c = d(
13
+ const a = I(), c = d(
14
14
  (t) => {
15
15
  n && (t.key === "Enter" || t.key === " ") && (t.preventDefault(), n(e.original, t));
16
16
  },
@@ -20,9 +20,9 @@ const I = ({
20
20
  t.stopPropagation(), e.getToggleSelectedHandler(), n && n(e.original, t), i && a.setRowHighlight({ [t.currentTarget.id]: !0 });
21
21
  },
22
22
  [e, n, i, a]
23
- ), u = f(() => e.getIsSelected() || a.selectedRowIds?.includes(e.id), [e, a.rowHighlight, a.selectedRowIds]), m = a.getRowActions?.(e.original), b = (t) => a.disableSelectionCheckbox?.(t) ?? !1;
23
+ ), u = S(() => e.getIsSelected() || a.selectedRowIds?.includes(e.id), [e, a.rowHighlight, a.selectedRowIds]), m = a.getRowActions?.(e.original), b = (t) => a.disableSelectionCheckbox?.(t) ?? !1;
24
24
  return /* @__PURE__ */ s(
25
- p,
25
+ h,
26
26
  {
27
27
  id: e.id,
28
28
  tabIndex: n ? 0 : void 0,
@@ -32,8 +32,8 @@ const I = ({
32
32
  "data-row-selected": u,
33
33
  "data-allow-hovered": l,
34
34
  "data-is-root-level": e.depth === 0,
35
- children: o.map((t) => {
36
- const r = t.column.getIndex() === 0;
35
+ children: o.map((t, p) => {
36
+ const r = p === 0;
37
37
  return /* @__PURE__ */ s(
38
38
  x,
39
39
  {
@@ -53,7 +53,7 @@ const I = ({
53
53
  },
54
54
  e.id
55
55
  );
56
- }, M = h(I);
56
+ }, k = f(T);
57
57
  export {
58
- M as TableRow
58
+ k as TableRow
59
59
  };
@@ -4,5 +4,5 @@ import { TableData, TableProps } from './types.js';
4
4
  *
5
5
  * @see Docs https://caspeco.github.io/casper-ui-library/components/table
6
6
  */
7
- export declare function Table<TData extends TableData>({ columns, data, localeString, expandedState, initialExpandedState, initialBreakingContentState, initialColumnVisibilityState, columnVisibilityState, onColumnVisibilityChange, onExpandedChange, onBreakingContentChange, getRowId, getRowActions, id, customRowIndication, onSortingChange, initialSortingState, sortingState, onSelectionChange, initialSelectionState, selectionState, selectionActions, disableSelectionCheckbox, children, }: TableProps<TData>): import("react/jsx-runtime").JSX.Element;
7
+ export declare function Table<TData extends TableData>({ columns, data, localeString, expandedState, initialExpandedState, initialBreakingContentState, initialColumnVisibilityState, columnVisibilityState, onColumnVisibilityChange, onExpandedChange, onBreakingContentChange, getRowId, getRowActions, id, customRowIndication, onSortingChange, initialSortingState, sortingState, onSelectionChange, initialSelectionState, selectionState, selectionActions, disableSelectionCheckbox, enableColumnReorder, columnOrderState, initialColumnOrder, onColumnOrderChange, children, }: TableProps<TData>): import("react/jsx-runtime").JSX.Element;
8
8
  //# sourceMappingURL=table.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../../lib/components/table/table.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErD;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,KAAK,SAAS,SAAS,EAAE,EAC9C,OAAO,EACP,IAAI,EACJ,YAAY,EACZ,aAAa,EACb,oBAAyB,EACzB,2BAAgC,EAChC,4BAA4B,EAC5B,qBAAqB,EACrB,wBAAwB,EACxB,gBAAgB,EAChB,uBAAuB,EACvB,QAAQ,EACR,aAAa,EACb,EAAE,EACF,mBAAmB,EACnB,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,EACjB,qBAAqB,EACrB,cAAc,EACd,gBAAgB,EAChB,wBAAwB,EACxB,QAAQ,GACR,EAAE,UAAU,CAAC,KAAK,CAAC,2CA8BnB"}
1
+ {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../../lib/components/table/table.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErD;;;;GAIG;AACH,wBAAgB,KAAK,CAAC,KAAK,SAAS,SAAS,EAAE,EAC9C,OAAO,EACP,IAAI,EACJ,YAAY,EACZ,aAAa,EACb,oBAAyB,EACzB,2BAAgC,EAChC,4BAA4B,EAC5B,qBAAqB,EACrB,wBAAwB,EACxB,gBAAgB,EAChB,uBAAuB,EACvB,QAAQ,EACR,aAAa,EACb,EAAE,EACF,mBAAmB,EACnB,eAAe,EACf,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,EACjB,qBAAqB,EACrB,cAAc,EACd,gBAAgB,EAChB,wBAAwB,EACxB,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,QAAQ,GACR,EAAE,UAAU,CAAC,KAAK,CAAC,2CAkCnB"}
@@ -1,6 +1,6 @@
1
- import { jsx as q } from "react/jsx-runtime";
2
- import { TableProvider as w } from "./table-context-provider.js";
3
- function A({
1
+ import { jsx as A } from "react/jsx-runtime";
2
+ import { TableProvider as B } from "./table-context-provider.js";
3
+ function E({
4
4
  columns: r,
5
5
  data: o,
6
6
  localeString: e,
@@ -24,10 +24,14 @@ function A({
24
24
  selectionState: P,
25
25
  selectionActions: g,
26
26
  disableSelectionCheckbox: h,
27
- children: k
27
+ enableColumnReorder: k,
28
+ columnOrderState: q,
29
+ initialColumnOrder: w,
30
+ onColumnOrderChange: y,
31
+ children: z
28
32
  }) {
29
- return /* @__PURE__ */ q(
30
- w,
33
+ return /* @__PURE__ */ A(
34
+ B,
31
35
  {
32
36
  columns: r,
33
37
  data: o,
@@ -52,10 +56,14 @@ function A({
52
56
  selectionState: P,
53
57
  selectionActions: g,
54
58
  disableSelectionCheckbox: h,
55
- children: k
59
+ enableColumnReorder: k,
60
+ columnOrderState: q,
61
+ initialColumnOrder: w,
62
+ onColumnOrderChange: y,
63
+ children: z
56
64
  }
57
65
  );
58
66
  }
59
67
  export {
60
- A as Table
68
+ E as Table
61
69
  };
@@ -1,2 +1 @@
1
- export {};
2
1
  //# sourceMappingURL=table.spec.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"table.spec.d.ts","sourceRoot":"","sources":["../../../lib/components/table/table.spec.tsx"],"names":[],"mappings":""}
1
+ {"version":3,"file":"table.spec.d.ts","sourceRoot":"","sources":["../../../lib/components/table/table.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,+CAA+C,CAAC"}
@@ -114,6 +114,26 @@ interface BaseTableProps<TData extends TableData> {
114
114
  * disableSelectionCheckbox: (row) => row.original.locked === true
115
115
  */
116
116
  disableSelectionCheckbox?: (row: Row<TableRow<TData>>) => boolean;
117
+ /**
118
+ * Enable drag-and-drop column reordering. When enabled, users can drag column headers
119
+ * to rearrange the order of columns.
120
+ */
121
+ enableColumnReorder?: boolean;
122
+ /**
123
+ * The current column order as an array of column IDs.
124
+ * If provided, the column order will be "controlled", meaning that you have to listen
125
+ * to onColumnOrderChange and change this state yourself.
126
+ */
127
+ columnOrderState?: string[];
128
+ /**
129
+ * Initial column order as an array of column IDs.
130
+ * Use together with onColumnOrderChange if you want to store the column order state.
131
+ */
132
+ initialColumnOrder?: string[];
133
+ /**
134
+ * Called when the column order changes, with the new column order.
135
+ */
136
+ onColumnOrderChange?: (columnOrder: string[]) => void;
117
137
  }
118
138
  export type TableProps<TData extends TableData = TableData> = PropsWithChildren<BaseTableProps<TData>>;
119
139
  export type SelectionAction = {
@@ -128,6 +148,7 @@ export type SelectionAction = {
128
148
  declare module "@tanstack/react-table" {
129
149
  interface ColumnMeta<TData extends RowData, TValue> {
130
150
  isNumeric?: boolean;
151
+ disableColumnReorder?: boolean;
131
152
  _dummyTData?: TData;
132
153
  _dummyTValue?: TValue;
133
154
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../lib/components/table/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../lib/components/table/types.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1 @@
1
- export {};
2
1
  //# sourceMappingURL=toggle-button.spec.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"toggle-button.spec.d.ts","sourceRoot":"","sources":["../../../lib/components/toggle-button/toggle-button.spec.tsx"],"names":[],"mappings":""}
1
+ {"version":3,"file":"toggle-button.spec.d.ts","sourceRoot":"","sources":["../../../lib/components/toggle-button/toggle-button.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,+CAA+C,CAAC"}