@rio-cloud/rio-uikit 2.3.0-beta.3 → 2.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.
- package/MapPreviousViewportButton.d.ts +2 -0
- package/MapPreviousViewportButton.js +5 -0
- package/MapPreviousViewportButton.js.map +1 -0
- package/Table.js +16 -14
- package/TableNext.js +16 -14
- package/TableRowActionsDropdown.d.ts +2 -0
- package/TableRowActionsDropdown.js +5 -0
- package/TableRowActionsDropdown.js.map +1 -0
- package/components/dropdown/ButtonDropdown.d.ts +4 -0
- package/components/dropdown/ButtonDropdown.js +82 -80
- package/components/dropdown/ButtonDropdown.js.map +1 -1
- package/components/map/components/Map.js +219 -182
- package/components/map/components/Map.js.map +1 -1
- package/components/map/components/MapContext.d.ts +4 -0
- package/components/map/components/MapContext.js +11 -7
- package/components/map/components/MapContext.js.map +1 -1
- package/components/map/components/MapPosition.d.ts +1 -1
- package/components/map/components/MapPosition.js +20 -13
- package/components/map/components/MapPosition.js.map +1 -1
- package/components/map/components/features/MapZoom.d.ts +0 -1
- package/components/map/components/features/MapZoom.js +12 -20
- package/components/map/components/features/MapZoom.js.map +1 -1
- package/components/map/components/features/settings/MapSettingsTile.d.ts +27 -0
- package/components/map/components/features/settings/MapSettingsTile.js +17 -17
- package/components/map/components/features/settings/MapSettingsTile.js.map +1 -1
- package/components/map/components/features/settings/buttons/MapPreviousViewportButton.d.ts +10 -0
- package/components/map/components/features/settings/buttons/MapPreviousViewportButton.js +23 -0
- package/components/map/components/features/settings/buttons/MapPreviousViewportButton.js.map +1 -0
- package/components/map/hooks/useMapViewportHistory.d.ts +19 -0
- package/components/map/hooks/useMapViewportHistory.js +116 -0
- package/components/map/hooks/useMapViewportHistory.js.map +1 -0
- package/components/map/icons/MapIcon.d.ts +1 -0
- package/components/map/icons/MapIcon.js +46 -37
- package/components/map/icons/MapIcon.js.map +1 -1
- package/components/map/utils/mapTypes.d.ts +12 -0
- package/components/map/utils/mapTypes.js.map +1 -1
- package/components/map/utils/mapUtils.d.ts +2 -0
- package/components/map/utils/mapUtils.js +4 -0
- package/components/map/utils/mapUtils.js.map +1 -1
- package/components/selects/Multiselect.d.ts +6 -0
- package/components/selects/Multiselect.js +85 -83
- package/components/selects/Multiselect.js.map +1 -1
- package/components/selects/Select.d.ts +6 -0
- package/components/selects/Select.js +79 -71
- package/components/selects/Select.js.map +1 -1
- package/components/table/Table.d.ts +5 -1
- package/components/table/Table.js +234 -210
- package/components/table/Table.js.map +1 -1
- package/components/table/Table.types.d.ts +55 -0
- package/components/table/TableExpandAllGroupsButton.d.ts +25 -0
- package/components/table/TableExpandAllGroupsButton.js +27 -0
- package/components/table/TableExpandAllGroupsButton.js.map +1 -0
- package/components/table/TableExpandedRow.d.ts +4 -0
- package/components/table/TableExpandedRow.js +101 -84
- package/components/table/TableExpandedRow.js.map +1 -1
- package/components/table/TableExpanderButton.js +11 -11
- package/components/table/TableExpanderButton.js.map +1 -1
- package/components/table/TableGroupRow.d.ts +16 -2
- package/components/table/TableGroupRow.js +57 -22
- package/components/table/TableGroupRow.js.map +1 -1
- package/components/table/TableHeader.d.ts +1 -9
- package/components/table/TableHeader.js +82 -65
- package/components/table/TableHeader.js.map +1 -1
- package/components/table/TableRow.d.ts +7 -1
- package/components/table/TableRow.js +89 -72
- package/components/table/TableRow.js.map +1 -1
- package/components/table/TableRowActionsDropdown.d.ts +11 -0
- package/components/table/TableRowActionsDropdown.js +22 -0
- package/components/table/TableRowActionsDropdown.js.map +1 -0
- package/components/table/TableStickyRowButton.d.ts +25 -0
- package/components/table/TableStickyRowButton.js +32 -0
- package/components/table/TableStickyRowButton.js.map +1 -0
- package/components/table/TableToolbar.d.ts +24 -3
- package/components/table/TableToolbar.js +78 -37
- package/components/table/TableToolbar.js.map +1 -1
- package/components/table/TableViewToggles.js +5 -5
- package/components/table/TableViewToggles.js.map +1 -1
- package/components/table/context/TableInteractionContext.d.ts +3 -0
- package/components/table/context/TableInteractionContext.js.map +1 -1
- package/components/table/context/TableRenderConfigContext.d.ts +2 -1
- package/components/table/context/TableRenderConfigContext.js.map +1 -1
- package/components/table/context/TableRenderContext.d.ts +1 -0
- package/components/table/context/TableRenderContext.js.map +1 -1
- package/components/table/layout/useMeasuredColumnMaxWidths.js +52 -54
- package/components/table/layout/useMeasuredColumnMaxWidths.js.map +1 -1
- package/components/table/layout/useTableLayout.d.ts +4 -1
- package/components/table/layout/useTableLayout.js +54 -48
- package/components/table/layout/useTableLayout.js.map +1 -1
- package/components/table/layout/useTableVirtualization.js +51 -56
- package/components/table/layout/useTableVirtualization.js.map +1 -1
- package/components/table/model/resolveResponsiveViewType.d.ts +2 -0
- package/components/table/model/resolveResponsiveViewType.js +27 -0
- package/components/table/model/resolveResponsiveViewType.js.map +1 -0
- package/components/table/render/header/TableHeaderCellContent.js +4 -4
- package/components/table/render/header/TableHeaderCellContent.js.map +1 -1
- package/components/table/render/header/TableHeaderSelectionCell.d.ts +3 -0
- package/components/table/render/header/TableHeaderSelectionCell.js +25 -14
- package/components/table/render/header/TableHeaderSelectionCell.js.map +1 -1
- package/components/table/runtime/useRenderDraftState.js +1 -0
- package/components/table/runtime/useRenderDraftState.js.map +1 -1
- package/components/table/runtime/useResponsiveResolvedViewType.d.ts +23 -0
- package/components/table/runtime/useResponsiveResolvedViewType.js +22 -0
- package/components/table/runtime/useResponsiveResolvedViewType.js.map +1 -0
- package/components/table/selection/useInternalTableSelectionState.d.ts +2 -0
- package/components/table/selection/useInternalTableSelectionState.js +29 -17
- package/components/table/selection/useInternalTableSelectionState.js.map +1 -1
- package/components/table/selection/useTableSelection.d.ts +5 -1
- package/components/table/selection/useTableSelection.js +37 -26
- package/components/table/selection/useTableSelection.js.map +1 -1
- package/components/table/shared/parsePixelSize.d.ts +2 -0
- package/components/table/shared/parsePixelSize.js +13 -0
- package/components/table/shared/parsePixelSize.js.map +1 -0
- package/hooks/useResizeObserver.d.ts +25 -6
- package/hooks/useResizeObserver.js +20 -18
- package/hooks/useResizeObserver.js.map +1 -1
- package/package.json +10 -10
- package/version.d.ts +1 -1
- package/version.js +2 -2
- package/version.js.map +1 -1
|
@@ -1,207 +1,229 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import { forwardRef as
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
import
|
|
13
|
-
import
|
|
14
|
-
import
|
|
15
|
-
import
|
|
16
|
-
import
|
|
17
|
-
import
|
|
18
|
-
import
|
|
19
|
-
import
|
|
20
|
-
import
|
|
21
|
-
import
|
|
22
|
-
import
|
|
23
|
-
import
|
|
24
|
-
import
|
|
25
|
-
import
|
|
26
|
-
import
|
|
27
|
-
import
|
|
28
|
-
import
|
|
29
|
-
import {
|
|
30
|
-
import
|
|
31
|
-
|
|
32
|
-
|
|
1
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as Je, useRef as Qe, Children as Xe, isValidElement as u, Fragment as Ye } from "react";
|
|
3
|
+
import Ze from "../../utils/classNames.js";
|
|
4
|
+
import _e from "../../hooks/useMergeRefs.js";
|
|
5
|
+
import eo from "./TableBody.js";
|
|
6
|
+
import oo from "./TableColumn.js";
|
|
7
|
+
import to from "./TableExpanderButton.js";
|
|
8
|
+
import ro from "./TableExpandAllGroupsButton.js";
|
|
9
|
+
import lo from "./TableExpandedContentRow.js";
|
|
10
|
+
import no from "./TableExpandedRow.js";
|
|
11
|
+
import k from "./TableFooter.js";
|
|
12
|
+
import ao from "./TableGroupFooterRow.js";
|
|
13
|
+
import so from "./TableGroupRow.js";
|
|
14
|
+
import V from "./TableHeader.js";
|
|
15
|
+
import io from "./TableHeaderColumn.js";
|
|
16
|
+
import mo from "./TableHeaderRow.js";
|
|
17
|
+
import co from "./TableRow.js";
|
|
18
|
+
import uo from "./TableStickyRowButton.js";
|
|
19
|
+
import po from "./TableSpacerRow.js";
|
|
20
|
+
import { useTableLayout as bo } from "./layout/useTableLayout.js";
|
|
21
|
+
import { resolveTableClassConfig as fo, resolveTableBaseClassName as Co } from "./model/resolveTableClassConfig.js";
|
|
22
|
+
import Ro from "./render/header/TableBatchDropdown.js";
|
|
23
|
+
import wo from "./render/header/TableColumnFilter.js";
|
|
24
|
+
import To from "./runtime/useRenderDraftState.js";
|
|
25
|
+
import ho from "./runtime/useResponsiveResolvedViewType.js";
|
|
26
|
+
import yo from "./runtime/useResolvedRenderColumns.js";
|
|
27
|
+
import vo from "./runtime/useResolvedRenderHeader.js";
|
|
28
|
+
import go from "./selection/useInternalTableSelectionState.js";
|
|
29
|
+
import { TableInteractionContext as So } from "./context/TableInteractionContext.js";
|
|
30
|
+
import { TableLayoutContext as xo } from "./context/TableLayoutContext.js";
|
|
31
|
+
import { TableRenderConfigContext as Bo } from "./context/TableRenderConfigContext.js";
|
|
32
|
+
import { TableRenderContext as Eo } from "./context/TableRenderContext.js";
|
|
33
|
+
import Ho from "./settings/TableColumnsDropdown.js";
|
|
34
|
+
const mt = eo, ct = V, ut = mo, pt = io, bt = k, ft = oo, Ct = to, Rt = ro, wt = co, Tt = uo, ht = po, yt = no, vt = lo, gt = so, St = ao, xt = Ro, Bt = wo, Et = Ho, c = (e, n) => Xe.toArray(e).some((o) => n(o) ? !0 : u(o) && o.type === Ye ? c(o.props.children, n) : !1), Fo = (e) => u(e) && e.type === V, $o = (e) => u(e) && e.type === k, Ht = Je(
|
|
35
|
+
(e, n) => {
|
|
33
36
|
const {
|
|
34
37
|
children: o,
|
|
35
|
-
viewType:
|
|
38
|
+
viewType: p = "TABLE",
|
|
36
39
|
cardsStyle: b,
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
40
|
+
responsiveBreakpoint: D,
|
|
41
|
+
onViewTypeChange: K,
|
|
42
|
+
condensed: L = !1,
|
|
43
|
+
striped: N = !1,
|
|
44
|
+
hover: I = !1,
|
|
45
|
+
shadow: M = !1,
|
|
46
|
+
border: P = !0,
|
|
47
|
+
rounded: G = !0,
|
|
48
|
+
gridLines: O = !1,
|
|
49
|
+
rowClassName: W,
|
|
50
|
+
rowKey: j,
|
|
51
|
+
rowSeparatorWidth: U,
|
|
52
|
+
stickyReference: q = "applicationLayout",
|
|
47
53
|
stickyColumns: i,
|
|
48
|
-
activeRowId:
|
|
49
|
-
onActiveRowChange:
|
|
50
|
-
rowAnimationProps:
|
|
51
|
-
expandedRowAnimation:
|
|
52
|
-
sortBy:
|
|
53
|
-
sortDirection:
|
|
54
|
-
onSortChange:
|
|
55
|
-
cellClassName:
|
|
54
|
+
activeRowId: J,
|
|
55
|
+
onActiveRowChange: f,
|
|
56
|
+
rowAnimationProps: Q,
|
|
57
|
+
expandedRowAnimation: X,
|
|
58
|
+
sortBy: Y,
|
|
59
|
+
sortDirection: Z,
|
|
60
|
+
onSortChange: _,
|
|
61
|
+
cellClassName: ee,
|
|
62
|
+
selectionCheckboxVerticalAlignment: oe = "middle",
|
|
56
63
|
onRowClick: C,
|
|
57
|
-
onSelectionChange:
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
64
|
+
onSelectionChange: te,
|
|
65
|
+
hideSelectionCheckboxesForExcludedRows: re = !1,
|
|
66
|
+
selectedRowIds: le,
|
|
67
|
+
selectionHeaderContent: ne,
|
|
68
|
+
columnOrder: ae,
|
|
69
|
+
onColumnResize: se,
|
|
70
|
+
onColumnOrderChange: ie,
|
|
63
71
|
showSelectionColumn: d = !1,
|
|
64
|
-
noRowsState:
|
|
72
|
+
noRowsState: de = "No data available",
|
|
65
73
|
virtualizedRows: R = !1,
|
|
66
|
-
virtualizationOverscan:
|
|
74
|
+
virtualizationOverscan: me = 5,
|
|
67
75
|
className: w,
|
|
68
|
-
style:
|
|
69
|
-
...
|
|
70
|
-
} = e,
|
|
71
|
-
|
|
76
|
+
style: ce,
|
|
77
|
+
...ue
|
|
78
|
+
} = e, t = Qe({ headerColumns: [], bodyRows: [] });
|
|
79
|
+
t.current.headerColumns = [], t.current.bodyRows = [], t.current.bodyMaxHeight = void 0, t.current.hasFooter = !1, t.current.hasFooterCells = void 0, t.current.hasExpandableRows = void 0;
|
|
72
80
|
const {
|
|
73
|
-
renderHeaderColumns:
|
|
74
|
-
renderBodyRows:
|
|
81
|
+
renderHeaderColumns: T,
|
|
82
|
+
renderBodyRows: h,
|
|
75
83
|
renderBodyMaxHeight: y,
|
|
76
|
-
renderHasFooter:
|
|
77
|
-
renderHasFooterCells:
|
|
78
|
-
renderHasExpandableRows:
|
|
79
|
-
renderBodyRow:
|
|
80
|
-
} =
|
|
81
|
-
columnDefinitionsByKey:
|
|
82
|
-
columnIndexByKey:
|
|
83
|
-
draggableColumnKeys:
|
|
84
|
-
draggableColumnsEnabled:
|
|
85
|
-
handleColumnDragEnd:
|
|
86
|
-
handleColumnResizeReset:
|
|
87
|
-
handleColumnResizeStart:
|
|
88
|
-
lastResizableColumnKey:
|
|
89
|
-
resettableColumnKeys:
|
|
84
|
+
renderHasFooter: pe,
|
|
85
|
+
renderHasFooterCells: v,
|
|
86
|
+
renderHasExpandableRows: be,
|
|
87
|
+
renderBodyRow: fe
|
|
88
|
+
} = To(t), {
|
|
89
|
+
columnDefinitionsByKey: Ce,
|
|
90
|
+
columnIndexByKey: Re,
|
|
91
|
+
draggableColumnKeys: we,
|
|
92
|
+
draggableColumnsEnabled: g,
|
|
93
|
+
handleColumnDragEnd: Te,
|
|
94
|
+
handleColumnResizeReset: he,
|
|
95
|
+
handleColumnResizeStart: ye,
|
|
96
|
+
lastResizableColumnKey: ve,
|
|
97
|
+
resettableColumnKeys: ge,
|
|
90
98
|
resizeColumnsEnabled: a,
|
|
91
99
|
resolvedRenderColumns: s,
|
|
92
|
-
resizedColumns:
|
|
93
|
-
} =
|
|
94
|
-
columnOrder:
|
|
95
|
-
onColumnOrderChange:
|
|
96
|
-
onColumnResize:
|
|
97
|
-
renderHeaderColumns:
|
|
98
|
-
viewType:
|
|
99
|
-
}), S =
|
|
100
|
-
renderHeaderColumns:
|
|
100
|
+
resizedColumns: Se
|
|
101
|
+
} = yo({
|
|
102
|
+
columnOrder: ae,
|
|
103
|
+
onColumnOrderChange: ie,
|
|
104
|
+
onColumnResize: se,
|
|
105
|
+
renderHeaderColumns: T,
|
|
106
|
+
viewType: p
|
|
107
|
+
}), S = vo({
|
|
108
|
+
renderHeaderColumns: T,
|
|
101
109
|
resolvedRenderColumns: s,
|
|
102
|
-
sortBy:
|
|
103
|
-
sortDirection:
|
|
104
|
-
}),
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
cardsStyle: b
|
|
112
|
-
}), ye = g ?? !1, x = n === "TABLE" ? Math.min(i?.left ?? 0, 1) : 0, H = n === "TABLE" ? Math.min(i?.right ?? 0, 1) : 0, ge = (x > 0 || H > 0) && i?.footer === !0, {
|
|
113
|
-
handleBodyScroll: B,
|
|
114
|
-
hasHorizontalScrollEndOffset: ve,
|
|
115
|
-
hasHorizontalScrollStartOffset: E,
|
|
116
|
-
tableUseOverflow: c,
|
|
117
|
-
tableWrapperRef: Se,
|
|
118
|
-
wrapperStyle: xe,
|
|
110
|
+
sortBy: Y,
|
|
111
|
+
sortDirection: Z
|
|
112
|
+
}), xe = v ?? !1, {
|
|
113
|
+
handleBodyScroll: x,
|
|
114
|
+
hasHorizontalScrollEndOffset: Be,
|
|
115
|
+
hasHorizontalScrollStartOffset: B,
|
|
116
|
+
tableUseOverflow: m,
|
|
117
|
+
tableWrapperRef: Ee,
|
|
118
|
+
wrapperStyle: E,
|
|
119
119
|
tableHeadRowRef: He,
|
|
120
|
-
tableFooterRowRef:
|
|
121
|
-
|
|
120
|
+
tableFooterRowRef: Fe,
|
|
121
|
+
wrapperWidth: $e
|
|
122
|
+
} = bo({
|
|
122
123
|
bodyMaxHeight: y,
|
|
123
124
|
cardsStyle: b,
|
|
124
|
-
columns:
|
|
125
|
-
hasFooterCells:
|
|
126
|
-
rowSeparatorWidth:
|
|
125
|
+
columns: Se,
|
|
126
|
+
hasFooterCells: xe,
|
|
127
|
+
rowSeparatorWidth: U,
|
|
127
128
|
showSelectionColumn: d,
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
129
|
+
stickyReference: q,
|
|
130
|
+
style: ce
|
|
131
|
+
}), l = ho({
|
|
132
|
+
onViewTypeChange: K,
|
|
133
|
+
responsiveBreakpoint: D,
|
|
134
|
+
viewType: p,
|
|
135
|
+
wrapperTableWidth: E["--table-width"],
|
|
136
|
+
wrapperWidth: $e
|
|
137
|
+
}), { cardClasses: ze, hasHover: Ae, isTableView: H, styleClassSwitches: ke } = fo({
|
|
138
|
+
viewType: l,
|
|
139
|
+
hover: I,
|
|
140
|
+
shadow: M,
|
|
141
|
+
border: P,
|
|
142
|
+
rounded: G,
|
|
143
|
+
className: w,
|
|
144
|
+
cardsStyle: b
|
|
145
|
+
}), F = H ? Math.min(i?.left ?? 0, 1) : 0, $ = H ? Math.min(i?.right ?? 0, 1) : 0, Ve = (F > 0 || $ > 0) && i?.footer === !0, De = _e(Ee, n), z = {
|
|
146
|
+
hasHeader: !!S || c(o, (qe) => Fo(qe)),
|
|
147
|
+
hasFooter: l === "TABLE" && (pe || c(o, $o)),
|
|
148
|
+
isClickable: typeof C == "function" || typeof f == "function",
|
|
149
|
+
isTableView: l === "TABLE"
|
|
134
150
|
}, {
|
|
135
|
-
selectedRowIdSet:
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
151
|
+
selectedRowIdSet: Ke,
|
|
152
|
+
selectableRowIdSet: Le,
|
|
153
|
+
isAllRowsSelected: Ne,
|
|
154
|
+
isSomeRowsSelected: Ie,
|
|
155
|
+
hasSelectableRows: Me,
|
|
156
|
+
handleToggleAllSelection: Pe,
|
|
157
|
+
handleToggleRowSelection: Ge
|
|
158
|
+
} = go({
|
|
159
|
+
bodyRows: h,
|
|
160
|
+
onSelectionChange: te,
|
|
161
|
+
selectedRowIds: le
|
|
162
|
+
}), Oe = {
|
|
145
163
|
showSelectionColumn: d,
|
|
146
|
-
selectedRowIdSet:
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
164
|
+
selectedRowIdSet: Ke,
|
|
165
|
+
selectableRowIdSet: Le,
|
|
166
|
+
selectionHeaderContent: ne,
|
|
167
|
+
isAllRowsSelected: Ne,
|
|
168
|
+
isSomeRowsSelected: Ie,
|
|
169
|
+
hasSelectableRows: Me,
|
|
170
|
+
hideSelectionCheckboxesForExcludedRows: re,
|
|
171
|
+
onToggleAllSelection: Pe,
|
|
172
|
+
onToggleRowSelection: Ge,
|
|
173
|
+
activeRowId: J,
|
|
174
|
+
onActiveRowChange: f,
|
|
154
175
|
onRowClick: C,
|
|
155
|
-
isClickable:
|
|
156
|
-
onSortChange:
|
|
157
|
-
},
|
|
158
|
-
handleBodyScroll:
|
|
176
|
+
isClickable: z.isClickable,
|
|
177
|
+
onSortChange: _
|
|
178
|
+
}, We = {
|
|
179
|
+
handleBodyScroll: x,
|
|
159
180
|
tableHeadRowRef: He,
|
|
160
|
-
tableFooterRowRef:
|
|
161
|
-
draggableColumnKeys:
|
|
162
|
-
lastResizableColumnKey: a ?
|
|
163
|
-
resettableColumnKeys: a ?
|
|
164
|
-
stickyLeftColumnCount:
|
|
165
|
-
stickyRightColumnCount:
|
|
166
|
-
stickyFooter:
|
|
167
|
-
onColumnDragEnd:
|
|
168
|
-
onColumnResizeReset: a ?
|
|
169
|
-
onColumnResizeStart: a ?
|
|
170
|
-
},
|
|
171
|
-
viewType:
|
|
172
|
-
isTableView:
|
|
173
|
-
cardClasses:
|
|
174
|
-
noRowsState:
|
|
175
|
-
rowKey:
|
|
176
|
-
rowClassName:
|
|
177
|
-
cellClassName:
|
|
178
|
-
|
|
179
|
-
|
|
181
|
+
tableFooterRowRef: Fe,
|
|
182
|
+
draggableColumnKeys: g ? we : void 0,
|
|
183
|
+
lastResizableColumnKey: a ? ve : void 0,
|
|
184
|
+
resettableColumnKeys: a ? ge : void 0,
|
|
185
|
+
stickyLeftColumnCount: F,
|
|
186
|
+
stickyRightColumnCount: $,
|
|
187
|
+
stickyFooter: Ve,
|
|
188
|
+
onColumnDragEnd: g ? Te : void 0,
|
|
189
|
+
onColumnResizeReset: a ? he : void 0,
|
|
190
|
+
onColumnResizeStart: a ? ye : void 0
|
|
191
|
+
}, je = {
|
|
192
|
+
viewType: l,
|
|
193
|
+
isTableView: l === "TABLE",
|
|
194
|
+
cardClasses: ze,
|
|
195
|
+
noRowsState: de,
|
|
196
|
+
rowKey: j,
|
|
197
|
+
rowClassName: W,
|
|
198
|
+
cellClassName: ee,
|
|
199
|
+
selectionCheckboxVerticalAlignment: oe,
|
|
200
|
+
rowAnimationProps: R ? void 0 : Q,
|
|
201
|
+
expandedRowAnimation: X,
|
|
180
202
|
virtualizedRows: R,
|
|
181
|
-
virtualizationOverscan:
|
|
182
|
-
},
|
|
183
|
-
renderDraft:
|
|
203
|
+
virtualizationOverscan: me
|
|
204
|
+
}, Ue = {
|
|
205
|
+
renderDraft: t.current,
|
|
184
206
|
header: S,
|
|
185
207
|
columns: s,
|
|
186
|
-
columnDefinitionsByKey:
|
|
187
|
-
columnIndexByKey:
|
|
188
|
-
bodyRows:
|
|
189
|
-
renderBodyRow:
|
|
190
|
-
hasFooterCells:
|
|
191
|
-
hasExpandableRows:
|
|
208
|
+
columnDefinitionsByKey: Ce,
|
|
209
|
+
columnIndexByKey: Re,
|
|
210
|
+
bodyRows: h,
|
|
211
|
+
renderBodyRow: fe,
|
|
212
|
+
hasFooterCells: v,
|
|
213
|
+
hasExpandableRows: be,
|
|
192
214
|
isRegisteringBodyRows: !0
|
|
193
|
-
},
|
|
194
|
-
|
|
215
|
+
}, A = /* @__PURE__ */ r(
|
|
216
|
+
So.Provider,
|
|
195
217
|
{
|
|
196
|
-
value:
|
|
197
|
-
children: /* @__PURE__ */
|
|
198
|
-
|
|
218
|
+
value: Oe,
|
|
219
|
+
children: /* @__PURE__ */ r(xo.Provider, { value: We, children: /* @__PURE__ */ r(
|
|
220
|
+
Bo.Provider,
|
|
199
221
|
{
|
|
200
|
-
value:
|
|
201
|
-
children: /* @__PURE__ */
|
|
202
|
-
|
|
222
|
+
value: je,
|
|
223
|
+
children: /* @__PURE__ */ r(
|
|
224
|
+
Eo.Provider,
|
|
203
225
|
{
|
|
204
|
-
value:
|
|
226
|
+
value: Ue,
|
|
205
227
|
children: o
|
|
206
228
|
}
|
|
207
229
|
)
|
|
@@ -209,51 +231,53 @@ const Qo = je, Xo = A, Yo = _e, Zo = Ze, _o = $, er = Ue, or = qe, rr = eo, tr =
|
|
|
209
231
|
) })
|
|
210
232
|
}
|
|
211
233
|
);
|
|
212
|
-
return /* @__PURE__ */
|
|
234
|
+
return /* @__PURE__ */ r(
|
|
213
235
|
"div",
|
|
214
236
|
{
|
|
215
|
-
...
|
|
216
|
-
className:
|
|
217
|
-
|
|
218
|
-
viewType:
|
|
219
|
-
condensed:
|
|
220
|
-
striped:
|
|
221
|
-
gridLines:
|
|
237
|
+
...ue,
|
|
238
|
+
className: Ze(
|
|
239
|
+
Co({
|
|
240
|
+
viewType: l,
|
|
241
|
+
condensed: L,
|
|
242
|
+
striped: N,
|
|
243
|
+
gridLines: O,
|
|
222
244
|
className: w,
|
|
223
|
-
tableUseOverflow:
|
|
224
|
-
flags:
|
|
225
|
-
hasHover:
|
|
226
|
-
styleClassSwitches:
|
|
245
|
+
tableUseOverflow: m,
|
|
246
|
+
flags: z,
|
|
247
|
+
hasHover: Ae,
|
|
248
|
+
styleClassSwitches: ke
|
|
227
249
|
}),
|
|
228
|
-
|
|
229
|
-
(
|
|
250
|
+
B && "table-has-horizontal-scroll-start-offset",
|
|
251
|
+
(Be || m && !B) && "table-has-horizontal-scroll-end-offset"
|
|
230
252
|
),
|
|
231
|
-
ref:
|
|
253
|
+
ref: De,
|
|
232
254
|
role: "table",
|
|
233
255
|
"aria-colcount": s.length > 0 ? s.length + (d ? 1 : 0) : void 0,
|
|
234
|
-
style:
|
|
235
|
-
children:
|
|
256
|
+
style: E,
|
|
257
|
+
children: m && !y ? /* @__PURE__ */ r("div", { className: "overflow-x-auto", onScroll: x, role: "presentation", children: /* @__PURE__ */ r("div", { className: "table-scroll-content", role: "presentation", children: A }) }) : A
|
|
236
258
|
}
|
|
237
259
|
);
|
|
238
260
|
}
|
|
239
261
|
);
|
|
240
262
|
export {
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
263
|
+
xt as TableBatchDropdown,
|
|
264
|
+
mt as TableBody,
|
|
265
|
+
ft as TableColumn,
|
|
266
|
+
Bt as TableColumnFilter,
|
|
267
|
+
Et as TableColumnsDropdown,
|
|
268
|
+
Rt as TableExpandAllGroupsButton,
|
|
269
|
+
vt as TableExpandedContentRow,
|
|
270
|
+
yt as TableExpandedRow,
|
|
271
|
+
Ct as TableExpanderButton,
|
|
272
|
+
bt as TableFooter,
|
|
273
|
+
St as TableGroupFooterRow,
|
|
274
|
+
gt as TableGroupRow,
|
|
275
|
+
ct as TableHeader,
|
|
276
|
+
pt as TableHeaderColumn,
|
|
277
|
+
ut as TableHeaderRow,
|
|
278
|
+
wt as TableRow,
|
|
279
|
+
ht as TableSpacerRow,
|
|
280
|
+
Tt as TableStickyRowButton,
|
|
281
|
+
Ht as default
|
|
258
282
|
};
|
|
259
283
|
//# sourceMappingURL=Table.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.js","sources":["../../../src/components/table/Table.tsx"],"sourcesContent":["import {\n Children,\n Fragment,\n forwardRef,\n isValidElement,\n useRef,\n type ForwardedRef,\n type ReactElement,\n type ReactNode,\n type RefAttributes,\n} from 'react';\n\nimport classNames from '../../utils/classNames';\nimport useMergeRefs from '../../hooks/useMergeRefs';\nimport TableBodyComponent from './TableBody';\nimport TableColumnComponent from './TableColumn';\nimport TableExpanderButtonComponent from './TableExpanderButton';\nimport TableExpandedContentRowComponent from './TableExpandedContentRow';\nimport TableExpandedRowComponent from './TableExpandedRow';\nimport TableFooterComponent, { type TableFooterProps } from './TableFooter';\nimport TableGroupFooterRowComponent from './TableGroupFooterRow';\nimport TableGroupRowComponent from './TableGroupRow';\nimport TableHeaderComponent, { type TableHeaderProps } from './TableHeader';\nimport TableHeaderColumnComponent from './TableHeaderColumn';\nimport TableHeaderRowComponent from './TableHeaderRow';\nimport TableRowComponent from './TableRow';\nimport TableSpacerRowComponent from './TableSpacerRow';\nimport { useTableLayout } from './layout/useTableLayout';\nimport { resolveTableBaseClassName, resolveTableClassConfig } from './model/resolveTableClassConfig';\nimport TableBatchDropdownComponent from './render/header/TableBatchDropdown';\nimport TableColumnFilterComponent from './render/header/TableColumnFilter';\nimport useRenderDraftState from './runtime/useRenderDraftState';\nimport useResolvedRenderColumns from './runtime/useResolvedRenderColumns';\nimport useResolvedRenderHeader from './runtime/useResolvedRenderHeader';\nimport useInternalTableSelectionState from './selection/useInternalTableSelectionState';\nimport { TableInteractionContext, type TableInteractionContextValue } from './context/TableInteractionContext';\nimport { TableLayoutContext, type TableLayoutContextValue } from './context/TableLayoutContext';\nimport { TableRenderConfigContext, type TableRenderConfigContextValue } from './context/TableRenderConfigContext';\nimport { TableRenderContext, type TableRenderContextValue, type TableRenderDraft } from './context/TableRenderContext';\nimport TableColumnsDropdownComponent from './settings/TableColumnsDropdown';\nimport type { TableProps, TableRowData } from './Table.types';\n\nexport type {\n TableCellOverflow,\n TableCellClassName,\n TableCardsStyleSettings,\n TableColumnDefinition,\n TableExpandedRowAnimation,\n TableHorizontalAlign,\n TableProps,\n TableRowAnimationProps,\n TableRowId,\n TableRowClassName,\n TableStickyColumns,\n TableSortDirection,\n TableVerticalAlign,\n TableViewType,\n} from './Table.types';\n\nexport { default as useTableSelection } from './selection/useTableSelection';\n\nexport type { UseTableSelectionOptions, UseTableSelectionReturn } from './selection/useTableSelection';\n\nexport const TableBody = TableBodyComponent;\nexport type { TableBodyHandle, TableBodyProps } from './TableBody';\n\nexport const TableHeader = TableHeaderComponent;\nexport type { TableHeaderProps } from './TableHeader';\n\nexport const TableHeaderRow = TableHeaderRowComponent;\nexport type { TableHeaderRowProps } from './TableHeaderRow';\n\nexport const TableHeaderColumn = TableHeaderColumnComponent;\nexport type { TableHeaderColumnProps } from './TableHeaderColumn';\n\nexport const TableFooter = TableFooterComponent;\nexport type { TableFooterProps } from './TableFooter';\n\nexport const TableColumn = TableColumnComponent;\nexport type { TableColumnProps } from './TableColumn';\n\nexport const TableExpanderButton = TableExpanderButtonComponent;\nexport type { TableExpanderButtonProps } from './TableExpanderButton';\n\nexport const TableRow = TableRowComponent;\nexport type { TableRowProps } from './TableRow';\n\nexport const TableSpacerRow = TableSpacerRowComponent;\nexport type { TableSpacerRowProps } from './TableSpacerRow';\n\nexport const TableExpandedRow = TableExpandedRowComponent;\nexport type { TableExpandedRowProps } from './TableExpandedRow';\n\nexport const TableExpandedContentRow = TableExpandedContentRowComponent;\nexport type { TableExpandedContentRowProps } from './TableExpandedContentRow';\n\nexport const TableGroupRow = TableGroupRowComponent;\nexport type { TableGroupRowProps } from './TableGroupRow';\n\nexport const TableGroupFooterRow = TableGroupFooterRowComponent;\nexport type { TableGroupFooterRowProps } from './TableGroupFooterRow';\n\nexport const TableBatchDropdown = TableBatchDropdownComponent;\nexport const TableColumnFilter = TableColumnFilterComponent;\nexport const TableColumnsDropdown = TableColumnsDropdownComponent;\nexport type { TableBatchDropdownProps } from './render/header/TableBatchDropdown';\nexport type { TableColumnFilterProps } from './render/header/TableColumnFilter';\nexport type { TableColumnsDropdownItem, TableColumnsDropdownProps } from './settings/TableColumnsDropdown';\n\nconst hasMatchingSectionChild = (children: ReactNode, matcher: (child: ReactNode) => boolean): boolean =>\n Children.toArray(children).some(child => {\n if (matcher(child)) {\n return true;\n }\n\n if (isValidElement(child) && child.type === Fragment) {\n return hasMatchingSectionChild(child.props.children, matcher);\n }\n\n return false;\n });\n\nconst isTableHeaderChild = <RowType extends TableRowData>(\n child: ReactNode\n): child is ReactElement<TableHeaderProps<RowType>> => isValidElement(child) && child.type === TableHeaderComponent;\n\nconst isTableFooterChild = (child: ReactNode): child is ReactElement<TableFooterProps> =>\n isValidElement(child) && child.type === TableFooterComponent;\n\nconst Table = forwardRef(\n <RowType extends TableRowData>(props: TableProps<RowType>, ref: ForwardedRef<HTMLDivElement>) => {\n const {\n children,\n viewType = 'TABLE',\n cardsStyle,\n condensed = false,\n striped = false,\n hover = false,\n shadow = false,\n border = true,\n rounded = true,\n gridLines = false,\n rowClassName,\n rowKey,\n rowSeparatorWidth,\n stickyColumns,\n activeRowId,\n onActiveRowChange,\n rowAnimationProps,\n expandedRowAnimation,\n sortBy,\n sortDirection,\n onSortChange,\n cellClassName,\n onRowClick,\n onSelectionChange,\n selectedRowIds,\n selectionHeaderContent,\n columnOrder,\n onColumnResize,\n onColumnOrderChange,\n showSelectionColumn = false,\n noRowsState = 'No data available',\n virtualizedRows = false,\n virtualizationOverscan = 5,\n className,\n style,\n ...remainingProps\n } = props;\n\n const renderDraftRef = useRef<TableRenderDraft<RowType>>({ headerColumns: [], bodyRows: [] });\n\n // Core render cycle:\n // 1. Header/body/footer sub-components register their structure into `renderDraftRef.current`.\n // 2. `useRenderDraftState(...)` promotes that mutable draft into stable state.\n // 3. The table renders from that stable draft state so virtualization, footer logic, sorting,\n // and row animations operate on a normalized model instead of arbitrary JSX children.\n //\n // The draft must be reset before each pass because it only represents the currently\n // executing render, not persistent state.\n renderDraftRef.current.headerColumns = [];\n renderDraftRef.current.bodyRows = [];\n renderDraftRef.current.bodyMaxHeight = undefined;\n renderDraftRef.current.hasFooter = false;\n renderDraftRef.current.hasFooterCells = undefined;\n renderDraftRef.current.hasExpandableRows = undefined;\n\n const {\n renderHeaderColumns,\n renderBodyRows,\n renderBodyMaxHeight,\n renderHasFooter,\n renderHasFooterCells,\n renderHasExpandableRows,\n renderBodyRow,\n } = useRenderDraftState(renderDraftRef);\n\n const {\n columnDefinitionsByKey,\n columnIndexByKey,\n draggableColumnKeys,\n draggableColumnsEnabled,\n handleColumnDragEnd,\n handleColumnResizeReset,\n handleColumnResizeStart,\n lastResizableColumnKey,\n resettableColumnKeys,\n resizeColumnsEnabled,\n resolvedRenderColumns,\n resizedColumns,\n } = useResolvedRenderColumns({\n columnOrder,\n onColumnOrderChange,\n onColumnResize,\n renderHeaderColumns,\n viewType,\n });\n\n const resolvedRenderHeader = useResolvedRenderHeader({\n renderHeaderColumns,\n resolvedRenderColumns,\n sortBy,\n sortDirection,\n });\n\n const { cardClasses, hasHover, isTableView, styleClassSwitches } = resolveTableClassConfig({\n viewType,\n hover,\n shadow,\n border,\n rounded,\n className,\n cardsStyle,\n });\n\n const hasFooterCells = renderHasFooterCells ?? false;\n const stickyLeftColumnCount = viewType === 'TABLE' ? Math.min(stickyColumns?.left ?? 0, 1) : 0;\n const stickyRightColumnCount = viewType === 'TABLE' ? Math.min(stickyColumns?.right ?? 0, 1) : 0;\n const stickyFooter =\n (stickyLeftColumnCount > 0 || stickyRightColumnCount > 0) && stickyColumns?.footer === true;\n\n const {\n handleBodyScroll,\n hasHorizontalScrollEndOffset,\n hasHorizontalScrollStartOffset,\n tableUseOverflow,\n tableWrapperRef,\n wrapperStyle,\n tableHeadRowRef,\n tableFooterRowRef,\n } = useTableLayout({\n bodyMaxHeight: renderBodyMaxHeight,\n cardsStyle,\n columns: resizedColumns,\n hasFooterCells,\n rowSeparatorWidth,\n showSelectionColumn,\n style,\n });\n\n const mergedWrapperRefs = useMergeRefs(tableWrapperRef, ref);\n\n const flags = {\n hasHeader:\n !!resolvedRenderHeader ||\n hasMatchingSectionChild(children, child => isTableHeaderChild<RowType>(child)),\n hasFooter: isTableView && (renderHasFooter || hasMatchingSectionChild(children, isTableFooterChild)),\n isClickable: typeof onRowClick === 'function' || typeof onActiveRowChange === 'function',\n isTableView,\n };\n\n // Keep controlled selection derivation out of the main Table orchestrator so the\n // interaction context consumes a small, already-normalized selection state.\n const {\n selectedRowIdSet,\n isAllRowsSelected,\n isSomeRowsSelected,\n handleToggleAllSelection,\n handleToggleRowSelection,\n } = useInternalTableSelectionState({\n bodyRows: renderBodyRows,\n onSelectionChange,\n selectedRowIds,\n });\n\n const interactionContextValue: TableInteractionContextValue<RowType> = {\n showSelectionColumn,\n selectedRowIdSet,\n selectionHeaderContent,\n isAllRowsSelected,\n isSomeRowsSelected,\n onToggleAllSelection: handleToggleAllSelection,\n onToggleRowSelection: handleToggleRowSelection,\n activeRowId,\n onActiveRowChange,\n onRowClick,\n isClickable: flags.isClickable,\n onSortChange,\n };\n\n const layoutContextValue: TableLayoutContextValue = {\n handleBodyScroll,\n tableHeadRowRef,\n tableFooterRowRef,\n draggableColumnKeys: draggableColumnsEnabled ? draggableColumnKeys : undefined,\n lastResizableColumnKey: resizeColumnsEnabled ? lastResizableColumnKey : undefined,\n resettableColumnKeys: resizeColumnsEnabled ? resettableColumnKeys : undefined,\n stickyLeftColumnCount,\n stickyRightColumnCount,\n stickyFooter,\n onColumnDragEnd: draggableColumnsEnabled ? handleColumnDragEnd : undefined,\n onColumnResizeReset: resizeColumnsEnabled ? handleColumnResizeReset : undefined,\n onColumnResizeStart: resizeColumnsEnabled ? handleColumnResizeStart : undefined,\n };\n\n const renderConfigContextValue: TableRenderConfigContextValue<RowType> = {\n viewType,\n isTableView,\n cardClasses,\n noRowsState,\n rowKey,\n rowClassName,\n cellClassName,\n rowAnimationProps: virtualizedRows ? undefined : rowAnimationProps,\n expandedRowAnimation,\n virtualizedRows,\n virtualizationOverscan,\n };\n\n const renderContextValue: TableRenderContextValue<RowType> = {\n renderDraft: renderDraftRef.current,\n header: resolvedRenderHeader,\n columns: resolvedRenderColumns,\n columnDefinitionsByKey,\n columnIndexByKey,\n bodyRows: renderBodyRows,\n renderBodyRow,\n hasFooterCells: renderHasFooterCells,\n hasExpandableRows: renderHasExpandableRows,\n isRegisteringBodyRows: true,\n };\n\n const content = (\n <TableInteractionContext.Provider\n value={interactionContextValue as TableInteractionContextValue<TableRowData>}\n >\n <TableLayoutContext.Provider value={layoutContextValue}>\n <TableRenderConfigContext.Provider\n value={renderConfigContextValue as TableRenderConfigContextValue<TableRowData>}\n >\n <TableRenderContext.Provider\n value={renderContextValue as TableRenderContextValue<TableRowData>}\n >\n {children}\n </TableRenderContext.Provider>\n </TableRenderConfigContext.Provider>\n </TableLayoutContext.Provider>\n </TableInteractionContext.Provider>\n );\n\n return (\n <div\n {...remainingProps}\n className={classNames(\n resolveTableBaseClassName({\n viewType,\n condensed,\n striped,\n gridLines,\n className,\n tableUseOverflow,\n flags,\n hasHover,\n styleClassSwitches,\n }),\n hasHorizontalScrollStartOffset && 'table-has-horizontal-scroll-start-offset',\n (hasHorizontalScrollEndOffset || (tableUseOverflow && !hasHorizontalScrollStartOffset)) &&\n 'table-has-horizontal-scroll-end-offset'\n )}\n ref={mergedWrapperRefs}\n role='table'\n aria-colcount={\n resolvedRenderColumns.length > 0\n ? resolvedRenderColumns.length + (showSelectionColumn ? 1 : 0)\n : undefined\n }\n style={wrapperStyle}\n >\n {tableUseOverflow && !renderBodyMaxHeight ? (\n <div className='overflow-x-auto' onScroll={handleBodyScroll} role='presentation'>\n <div className='table-scroll-content' role='presentation'>\n {content}\n </div>\n </div>\n ) : (\n content\n )}\n </div>\n );\n }\n) as <RowType extends TableRowData>(props: TableProps<RowType> & RefAttributes<HTMLDivElement>) => ReactElement;\n\nexport default Table;\n"],"names":["TableBody","TableBodyComponent","TableHeader","TableHeaderComponent","TableHeaderRow","TableHeaderRowComponent","TableHeaderColumn","TableHeaderColumnComponent","TableFooter","TableFooterComponent","TableColumn","TableColumnComponent","TableExpanderButton","TableExpanderButtonComponent","TableRow","TableRowComponent","TableSpacerRow","TableSpacerRowComponent","TableExpandedRow","TableExpandedRowComponent","TableExpandedContentRow","TableExpandedContentRowComponent","TableGroupRow","TableGroupRowComponent","TableGroupFooterRow","TableGroupFooterRowComponent","TableBatchDropdown","TableBatchDropdownComponent","TableColumnFilter","TableColumnFilterComponent","TableColumnsDropdown","TableColumnsDropdownComponent","hasMatchingSectionChild","children","matcher","Children","child","isValidElement","Fragment","isTableHeaderChild","isTableFooterChild","Table","forwardRef","props","ref","viewType","cardsStyle","condensed","striped","hover","shadow","border","rounded","gridLines","rowClassName","rowKey","rowSeparatorWidth","stickyColumns","activeRowId","onActiveRowChange","rowAnimationProps","expandedRowAnimation","sortBy","sortDirection","onSortChange","cellClassName","onRowClick","onSelectionChange","selectedRowIds","selectionHeaderContent","columnOrder","onColumnResize","onColumnOrderChange","showSelectionColumn","noRowsState","virtualizedRows","virtualizationOverscan","className","style","remainingProps","renderDraftRef","useRef","renderHeaderColumns","renderBodyRows","renderBodyMaxHeight","renderHasFooter","renderHasFooterCells","renderHasExpandableRows","renderBodyRow","useRenderDraftState","columnDefinitionsByKey","columnIndexByKey","draggableColumnKeys","draggableColumnsEnabled","handleColumnDragEnd","handleColumnResizeReset","handleColumnResizeStart","lastResizableColumnKey","resettableColumnKeys","resizeColumnsEnabled","resolvedRenderColumns","resizedColumns","useResolvedRenderColumns","resolvedRenderHeader","useResolvedRenderHeader","cardClasses","hasHover","isTableView","styleClassSwitches","resolveTableClassConfig","hasFooterCells","stickyLeftColumnCount","stickyRightColumnCount","stickyFooter","handleBodyScroll","hasHorizontalScrollEndOffset","hasHorizontalScrollStartOffset","tableUseOverflow","tableWrapperRef","wrapperStyle","tableHeadRowRef","tableFooterRowRef","useTableLayout","mergedWrapperRefs","useMergeRefs","flags","selectedRowIdSet","isAllRowsSelected","isSomeRowsSelected","handleToggleAllSelection","handleToggleRowSelection","useInternalTableSelectionState","interactionContextValue","layoutContextValue","renderConfigContextValue","renderContextValue","content","jsx","TableInteractionContext","TableLayoutContext","TableRenderConfigContext","TableRenderContext","classNames","resolveTableBaseClassName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Table.js","sources":["../../../src/components/table/Table.tsx"],"sourcesContent":["import {\n Children,\n Fragment,\n forwardRef,\n isValidElement,\n useRef,\n type ForwardedRef,\n type ReactElement,\n type ReactNode,\n type RefAttributes,\n} from 'react';\n\nimport classNames from '../../utils/classNames';\nimport useMergeRefs from '../../hooks/useMergeRefs';\nimport TableBodyComponent from './TableBody';\nimport TableColumnComponent from './TableColumn';\nimport TableExpanderButtonComponent from './TableExpanderButton';\nimport TableExpandAllGroupsButtonComponent from './TableExpandAllGroupsButton';\nimport TableExpandedContentRowComponent from './TableExpandedContentRow';\nimport TableExpandedRowComponent from './TableExpandedRow';\nimport TableFooterComponent, { type TableFooterProps } from './TableFooter';\nimport TableGroupFooterRowComponent from './TableGroupFooterRow';\nimport TableGroupRowComponent from './TableGroupRow';\nimport TableHeaderComponent, { type TableHeaderProps } from './TableHeader';\nimport TableHeaderColumnComponent from './TableHeaderColumn';\nimport TableHeaderRowComponent from './TableHeaderRow';\nimport TableRowComponent from './TableRow';\nimport TableStickyRowButtonComponent from './TableStickyRowButton';\nimport TableSpacerRowComponent from './TableSpacerRow';\nimport { useTableLayout } from './layout/useTableLayout';\nimport { resolveTableBaseClassName, resolveTableClassConfig } from './model/resolveTableClassConfig';\nimport TableBatchDropdownComponent from './render/header/TableBatchDropdown';\nimport TableColumnFilterComponent from './render/header/TableColumnFilter';\nimport useRenderDraftState from './runtime/useRenderDraftState';\nimport useResponsiveResolvedViewType from './runtime/useResponsiveResolvedViewType';\nimport useResolvedRenderColumns from './runtime/useResolvedRenderColumns';\nimport useResolvedRenderHeader from './runtime/useResolvedRenderHeader';\nimport useInternalTableSelectionState from './selection/useInternalTableSelectionState';\nimport { TableInteractionContext, type TableInteractionContextValue } from './context/TableInteractionContext';\nimport { TableLayoutContext, type TableLayoutContextValue } from './context/TableLayoutContext';\nimport { TableRenderConfigContext, type TableRenderConfigContextValue } from './context/TableRenderConfigContext';\nimport { TableRenderContext, type TableRenderContextValue, type TableRenderDraft } from './context/TableRenderContext';\nimport TableColumnsDropdownComponent from './settings/TableColumnsDropdown';\nimport type { TableProps, TableRowData } from './Table.types';\n\nexport type {\n TableCellOverflow,\n TableCellClassName,\n TableCardsStyleSettings,\n TableColumnDefinition,\n TableExpandedRowAnimation,\n TableHorizontalAlign,\n TableProps,\n TableResponsiveBreakpoint,\n TableRowAnimationProps,\n TableRowId,\n TableRowClassName,\n TableRowSelectable,\n TableStickyReference,\n TableStickyColumns,\n TableSortDirection,\n TableVerticalAlign,\n TableViewType,\n} from './Table.types';\n\nexport { default as useTableSelection } from './selection/useTableSelection';\n\nexport type { UseTableSelectionOptions, UseTableSelectionReturn } from './selection/useTableSelection';\n\nexport const TableBody = TableBodyComponent;\nexport type { TableBodyHandle, TableBodyProps } from './TableBody';\n\nexport const TableHeader = TableHeaderComponent;\nexport type { TableHeaderProps } from './TableHeader';\n\nexport const TableHeaderRow = TableHeaderRowComponent;\nexport type { TableHeaderRowProps } from './TableHeaderRow';\n\nexport const TableHeaderColumn = TableHeaderColumnComponent;\nexport type { TableHeaderColumnProps } from './TableHeaderColumn';\n\nexport const TableFooter = TableFooterComponent;\nexport type { TableFooterProps } from './TableFooter';\n\nexport const TableColumn = TableColumnComponent;\nexport type { TableColumnProps } from './TableColumn';\n\nexport const TableExpanderButton = TableExpanderButtonComponent;\nexport type { TableExpanderButtonProps } from './TableExpanderButton';\n\nexport const TableExpandAllGroupsButton = TableExpandAllGroupsButtonComponent;\nexport type { TableExpandAllGroupsButtonProps } from './TableExpandAllGroupsButton';\n\nexport const TableRow = TableRowComponent;\nexport type { TableRowProps } from './TableRow';\n\nexport const TableStickyRowButton = TableStickyRowButtonComponent;\nexport type { TableStickyRowButtonProps } from './TableStickyRowButton';\n\nexport const TableSpacerRow = TableSpacerRowComponent;\nexport type { TableSpacerRowProps } from './TableSpacerRow';\n\nexport const TableExpandedRow = TableExpandedRowComponent;\nexport type { TableExpandedRowProps } from './TableExpandedRow';\n\nexport const TableExpandedContentRow = TableExpandedContentRowComponent;\nexport type { TableExpandedContentRowProps } from './TableExpandedContentRow';\n\nexport const TableGroupRow = TableGroupRowComponent;\nexport type { TableGroupRowProps } from './TableGroupRow';\n\nexport const TableGroupFooterRow = TableGroupFooterRowComponent;\nexport type { TableGroupFooterRowProps } from './TableGroupFooterRow';\n\nexport const TableBatchDropdown = TableBatchDropdownComponent;\nexport const TableColumnFilter = TableColumnFilterComponent;\nexport const TableColumnsDropdown = TableColumnsDropdownComponent;\nexport type { TableBatchDropdownProps } from './render/header/TableBatchDropdown';\nexport type { TableColumnFilterProps } from './render/header/TableColumnFilter';\nexport type { TableColumnsDropdownItem, TableColumnsDropdownProps } from './settings/TableColumnsDropdown';\n\nconst hasMatchingSectionChild = (children: ReactNode, matcher: (child: ReactNode) => boolean): boolean =>\n Children.toArray(children).some(child => {\n if (matcher(child)) {\n return true;\n }\n\n if (isValidElement(child) && child.type === Fragment) {\n return hasMatchingSectionChild(child.props.children, matcher);\n }\n\n return false;\n });\n\nconst isTableHeaderChild = <RowType extends TableRowData>(\n child: ReactNode\n): child is ReactElement<TableHeaderProps<RowType>> => isValidElement(child) && child.type === TableHeaderComponent;\n\nconst isTableFooterChild = (child: ReactNode): child is ReactElement<TableFooterProps> =>\n isValidElement(child) && child.type === TableFooterComponent;\n\nconst Table = forwardRef(\n <RowType extends TableRowData>(props: TableProps<RowType>, ref: ForwardedRef<HTMLDivElement>) => {\n const {\n children,\n viewType = 'TABLE',\n cardsStyle,\n responsiveBreakpoint,\n onViewTypeChange,\n condensed = false,\n striped = false,\n hover = false,\n shadow = false,\n border = true,\n rounded = true,\n gridLines = false,\n rowClassName,\n rowKey,\n rowSeparatorWidth,\n stickyReference = 'applicationLayout',\n stickyColumns,\n activeRowId,\n onActiveRowChange,\n rowAnimationProps,\n expandedRowAnimation,\n sortBy,\n sortDirection,\n onSortChange,\n cellClassName,\n selectionCheckboxVerticalAlignment = 'middle',\n onRowClick,\n onSelectionChange,\n hideSelectionCheckboxesForExcludedRows = false,\n selectedRowIds,\n selectionHeaderContent,\n columnOrder,\n onColumnResize,\n onColumnOrderChange,\n showSelectionColumn = false,\n noRowsState = 'No data available',\n virtualizedRows = false,\n virtualizationOverscan = 5,\n className,\n style,\n ...remainingProps\n } = props;\n\n const renderDraftRef = useRef<TableRenderDraft<RowType>>({ headerColumns: [], bodyRows: [] });\n\n // Core render cycle:\n // 1. Header/body/footer sub-components register their structure into `renderDraftRef.current`.\n // 2. `useRenderDraftState(...)` promotes that mutable draft into stable state.\n // 3. The table renders from that stable draft state so virtualization, footer logic, sorting,\n // and row animations operate on a normalized model instead of arbitrary JSX children.\n //\n // The draft must be reset before each pass because it only represents the currently\n // executing render, not persistent state.\n renderDraftRef.current.headerColumns = [];\n renderDraftRef.current.bodyRows = [];\n renderDraftRef.current.bodyMaxHeight = undefined;\n renderDraftRef.current.hasFooter = false;\n renderDraftRef.current.hasFooterCells = undefined;\n renderDraftRef.current.hasExpandableRows = undefined;\n\n const {\n renderHeaderColumns,\n renderBodyRows,\n renderBodyMaxHeight,\n renderHasFooter,\n renderHasFooterCells,\n renderHasExpandableRows,\n renderBodyRow,\n } = useRenderDraftState(renderDraftRef);\n\n const {\n columnDefinitionsByKey,\n columnIndexByKey,\n draggableColumnKeys,\n draggableColumnsEnabled,\n handleColumnDragEnd,\n handleColumnResizeReset,\n handleColumnResizeStart,\n lastResizableColumnKey,\n resettableColumnKeys,\n resizeColumnsEnabled,\n resolvedRenderColumns,\n resizedColumns,\n } = useResolvedRenderColumns({\n columnOrder,\n onColumnOrderChange,\n onColumnResize,\n renderHeaderColumns,\n viewType,\n });\n\n const resolvedRenderHeader = useResolvedRenderHeader({\n renderHeaderColumns,\n resolvedRenderColumns,\n sortBy,\n sortDirection,\n });\n\n const hasFooterCells = renderHasFooterCells ?? false;\n\n const {\n handleBodyScroll,\n hasHorizontalScrollEndOffset,\n hasHorizontalScrollStartOffset,\n tableUseOverflow,\n tableWrapperRef,\n wrapperStyle,\n tableHeadRowRef,\n tableFooterRowRef,\n wrapperWidth,\n } = useTableLayout({\n bodyMaxHeight: renderBodyMaxHeight,\n cardsStyle,\n columns: resizedColumns,\n hasFooterCells,\n rowSeparatorWidth,\n showSelectionColumn,\n stickyReference,\n style,\n });\n\n const resolvedViewType = useResponsiveResolvedViewType({\n onViewTypeChange,\n responsiveBreakpoint,\n viewType,\n wrapperTableWidth: wrapperStyle['--table-width'],\n wrapperWidth,\n });\n\n const { cardClasses, hasHover, isTableView, styleClassSwitches } = resolveTableClassConfig({\n viewType: resolvedViewType,\n hover,\n shadow,\n border,\n rounded,\n className,\n cardsStyle,\n });\n const stickyLeftColumnCount = isTableView ? Math.min(stickyColumns?.left ?? 0, 1) : 0;\n const stickyRightColumnCount = isTableView ? Math.min(stickyColumns?.right ?? 0, 1) : 0;\n const stickyFooter =\n (stickyLeftColumnCount > 0 || stickyRightColumnCount > 0) && stickyColumns?.footer === true;\n\n const mergedWrapperRefs = useMergeRefs(tableWrapperRef, ref);\n\n const flags = {\n hasHeader:\n !!resolvedRenderHeader ||\n hasMatchingSectionChild(children, child => isTableHeaderChild<RowType>(child)),\n hasFooter:\n resolvedViewType === 'TABLE' &&\n (renderHasFooter || hasMatchingSectionChild(children, isTableFooterChild)),\n isClickable: typeof onRowClick === 'function' || typeof onActiveRowChange === 'function',\n isTableView: resolvedViewType === 'TABLE',\n };\n\n // Keep controlled selection derivation out of the main Table orchestrator so the\n // interaction context consumes a small, already-normalized selection state.\n const {\n selectedRowIdSet,\n selectableRowIdSet,\n isAllRowsSelected,\n isSomeRowsSelected,\n hasSelectableRows,\n handleToggleAllSelection,\n handleToggleRowSelection,\n } = useInternalTableSelectionState({\n bodyRows: renderBodyRows,\n onSelectionChange,\n selectedRowIds,\n });\n\n const interactionContextValue: TableInteractionContextValue<RowType> = {\n showSelectionColumn,\n selectedRowIdSet,\n selectableRowIdSet,\n selectionHeaderContent,\n isAllRowsSelected,\n isSomeRowsSelected,\n hasSelectableRows,\n hideSelectionCheckboxesForExcludedRows,\n onToggleAllSelection: handleToggleAllSelection,\n onToggleRowSelection: handleToggleRowSelection,\n activeRowId,\n onActiveRowChange,\n onRowClick,\n isClickable: flags.isClickable,\n onSortChange,\n };\n\n const layoutContextValue: TableLayoutContextValue = {\n handleBodyScroll,\n tableHeadRowRef,\n tableFooterRowRef,\n draggableColumnKeys: draggableColumnsEnabled ? draggableColumnKeys : undefined,\n lastResizableColumnKey: resizeColumnsEnabled ? lastResizableColumnKey : undefined,\n resettableColumnKeys: resizeColumnsEnabled ? resettableColumnKeys : undefined,\n stickyLeftColumnCount,\n stickyRightColumnCount,\n stickyFooter,\n onColumnDragEnd: draggableColumnsEnabled ? handleColumnDragEnd : undefined,\n onColumnResizeReset: resizeColumnsEnabled ? handleColumnResizeReset : undefined,\n onColumnResizeStart: resizeColumnsEnabled ? handleColumnResizeStart : undefined,\n };\n\n const renderConfigContextValue: TableRenderConfigContextValue<RowType> = {\n viewType: resolvedViewType,\n isTableView: resolvedViewType === 'TABLE',\n cardClasses,\n noRowsState,\n rowKey,\n rowClassName,\n cellClassName,\n selectionCheckboxVerticalAlignment,\n rowAnimationProps: virtualizedRows ? undefined : rowAnimationProps,\n expandedRowAnimation,\n virtualizedRows,\n virtualizationOverscan,\n };\n\n const renderContextValue: TableRenderContextValue<RowType> = {\n renderDraft: renderDraftRef.current,\n header: resolvedRenderHeader,\n columns: resolvedRenderColumns,\n columnDefinitionsByKey,\n columnIndexByKey,\n bodyRows: renderBodyRows,\n renderBodyRow,\n hasFooterCells: renderHasFooterCells,\n hasExpandableRows: renderHasExpandableRows,\n isRegisteringBodyRows: true,\n };\n\n const content = (\n <TableInteractionContext.Provider\n value={interactionContextValue as TableInteractionContextValue<TableRowData>}\n >\n <TableLayoutContext.Provider value={layoutContextValue}>\n <TableRenderConfigContext.Provider\n value={renderConfigContextValue as TableRenderConfigContextValue<TableRowData>}\n >\n <TableRenderContext.Provider\n value={renderContextValue as TableRenderContextValue<TableRowData>}\n >\n {children}\n </TableRenderContext.Provider>\n </TableRenderConfigContext.Provider>\n </TableLayoutContext.Provider>\n </TableInteractionContext.Provider>\n );\n\n return (\n <div\n {...remainingProps}\n className={classNames(\n resolveTableBaseClassName({\n viewType: resolvedViewType,\n condensed,\n striped,\n gridLines,\n className,\n tableUseOverflow,\n flags,\n hasHover,\n styleClassSwitches,\n }),\n hasHorizontalScrollStartOffset && 'table-has-horizontal-scroll-start-offset',\n (hasHorizontalScrollEndOffset || (tableUseOverflow && !hasHorizontalScrollStartOffset)) &&\n 'table-has-horizontal-scroll-end-offset'\n )}\n ref={mergedWrapperRefs}\n role='table'\n aria-colcount={\n resolvedRenderColumns.length > 0\n ? resolvedRenderColumns.length + (showSelectionColumn ? 1 : 0)\n : undefined\n }\n style={wrapperStyle}\n >\n {tableUseOverflow && !renderBodyMaxHeight ? (\n <div className='overflow-x-auto' onScroll={handleBodyScroll} role='presentation'>\n <div className='table-scroll-content' role='presentation'>\n {content}\n </div>\n </div>\n ) : (\n content\n )}\n </div>\n );\n }\n) as <RowType extends TableRowData>(props: TableProps<RowType> & RefAttributes<HTMLDivElement>) => ReactElement;\n\nexport default Table;\n"],"names":["TableBody","TableBodyComponent","TableHeader","TableHeaderComponent","TableHeaderRow","TableHeaderRowComponent","TableHeaderColumn","TableHeaderColumnComponent","TableFooter","TableFooterComponent","TableColumn","TableColumnComponent","TableExpanderButton","TableExpanderButtonComponent","TableExpandAllGroupsButton","TableExpandAllGroupsButtonComponent","TableRow","TableRowComponent","TableStickyRowButton","TableStickyRowButtonComponent","TableSpacerRow","TableSpacerRowComponent","TableExpandedRow","TableExpandedRowComponent","TableExpandedContentRow","TableExpandedContentRowComponent","TableGroupRow","TableGroupRowComponent","TableGroupFooterRow","TableGroupFooterRowComponent","TableBatchDropdown","TableBatchDropdownComponent","TableColumnFilter","TableColumnFilterComponent","TableColumnsDropdown","TableColumnsDropdownComponent","hasMatchingSectionChild","children","matcher","Children","child","isValidElement","Fragment","isTableHeaderChild","isTableFooterChild","Table","forwardRef","props","ref","viewType","cardsStyle","responsiveBreakpoint","onViewTypeChange","condensed","striped","hover","shadow","border","rounded","gridLines","rowClassName","rowKey","rowSeparatorWidth","stickyReference","stickyColumns","activeRowId","onActiveRowChange","rowAnimationProps","expandedRowAnimation","sortBy","sortDirection","onSortChange","cellClassName","selectionCheckboxVerticalAlignment","onRowClick","onSelectionChange","hideSelectionCheckboxesForExcludedRows","selectedRowIds","selectionHeaderContent","columnOrder","onColumnResize","onColumnOrderChange","showSelectionColumn","noRowsState","virtualizedRows","virtualizationOverscan","className","style","remainingProps","renderDraftRef","useRef","renderHeaderColumns","renderBodyRows","renderBodyMaxHeight","renderHasFooter","renderHasFooterCells","renderHasExpandableRows","renderBodyRow","useRenderDraftState","columnDefinitionsByKey","columnIndexByKey","draggableColumnKeys","draggableColumnsEnabled","handleColumnDragEnd","handleColumnResizeReset","handleColumnResizeStart","lastResizableColumnKey","resettableColumnKeys","resizeColumnsEnabled","resolvedRenderColumns","resizedColumns","useResolvedRenderColumns","resolvedRenderHeader","useResolvedRenderHeader","hasFooterCells","handleBodyScroll","hasHorizontalScrollEndOffset","hasHorizontalScrollStartOffset","tableUseOverflow","tableWrapperRef","wrapperStyle","tableHeadRowRef","tableFooterRowRef","wrapperWidth","useTableLayout","resolvedViewType","useResponsiveResolvedViewType","cardClasses","hasHover","isTableView","styleClassSwitches","resolveTableClassConfig","stickyLeftColumnCount","stickyRightColumnCount","stickyFooter","mergedWrapperRefs","useMergeRefs","flags","selectedRowIdSet","selectableRowIdSet","isAllRowsSelected","isSomeRowsSelected","hasSelectableRows","handleToggleAllSelection","handleToggleRowSelection","useInternalTableSelectionState","interactionContextValue","layoutContextValue","renderConfigContextValue","renderContextValue","content","jsx","TableInteractionContext","TableLayoutContext","TableRenderConfigContext","TableRenderContext","classNames","resolveTableBaseClassName"],"mappings":"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"}
|