@flanksource/clicky-ui 0.3.22 → 0.3.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/CountryFlag.cjs +55 -0
- package/dist/components/CountryFlag.cjs.map +1 -0
- package/dist/components/CountryFlag.d.ts +8 -0
- package/dist/components/CountryFlag.d.ts.map +1 -0
- package/dist/components/CountryFlag.js +38 -0
- package/dist/components/CountryFlag.js.map +1 -0
- package/dist/components/CountryPicker.cjs +35 -0
- package/dist/components/CountryPicker.cjs.map +1 -0
- package/dist/components/CountryPicker.d.ts +4 -0
- package/dist/components/CountryPicker.d.ts.map +1 -0
- package/dist/components/CountryPicker.js +35 -0
- package/dist/components/CountryPicker.js.map +1 -0
- package/dist/components/SplitButton.cjs +3 -2
- package/dist/components/SplitButton.cjs.map +1 -1
- package/dist/components/SplitButton.d.ts +6 -1
- package/dist/components/SplitButton.d.ts.map +1 -1
- package/dist/components/SplitButton.js +3 -2
- package/dist/components/SplitButton.js.map +1 -1
- package/dist/components/country-options.cjs +34 -0
- package/dist/components/country-options.cjs.map +1 -0
- package/dist/components/country-options.d.ts +8 -0
- package/dist/components/country-options.d.ts.map +1 -0
- package/dist/components/country-options.js +34 -0
- package/dist/components/country-options.js.map +1 -0
- package/dist/components.cjs +11 -0
- package/dist/components.cjs.map +1 -1
- package/dist/components.d.ts +4 -0
- package/dist/components.d.ts.map +1 -1
- package/dist/components.js +11 -0
- package/dist/components.js.map +1 -1
- package/dist/data/Clicky.cjs +4 -1
- package/dist/data/Clicky.cjs.map +1 -1
- package/dist/data/Clicky.d.ts.map +1 -1
- package/dist/data/Clicky.js +4 -1
- package/dist/data/Clicky.js.map +1 -1
- package/dist/data/CodeDiff.cjs +3 -18
- package/dist/data/CodeDiff.cjs.map +1 -1
- package/dist/data/CodeDiff.d.ts.map +1 -1
- package/dist/data/CodeDiff.js +3 -18
- package/dist/data/CodeDiff.js.map +1 -1
- package/dist/data/DataTable.cjs +182 -64
- package/dist/data/DataTable.cjs.map +1 -1
- package/dist/data/DataTable.d.ts +9 -1
- package/dist/data/DataTable.d.ts.map +1 -1
- package/dist/data/DataTable.grouping.cjs +26 -0
- package/dist/data/DataTable.grouping.cjs.map +1 -1
- package/dist/data/DataTable.grouping.d.ts +38 -0
- package/dist/data/DataTable.grouping.d.ts.map +1 -1
- package/dist/data/DataTable.grouping.js +26 -0
- package/dist/data/DataTable.grouping.js.map +1 -1
- package/dist/data/DataTable.js +183 -65
- package/dist/data/DataTable.js.map +1 -1
- package/dist/data/DataTableGroupingControls.cjs +84 -0
- package/dist/data/DataTableGroupingControls.cjs.map +1 -0
- package/dist/data/DataTableGroupingControls.d.ts +17 -0
- package/dist/data/DataTableGroupingControls.d.ts.map +1 -0
- package/dist/data/DataTableGroupingControls.js +84 -0
- package/dist/data/DataTableGroupingControls.js.map +1 -0
- package/dist/data/HighlightedTokens.cjs +21 -0
- package/dist/data/HighlightedTokens.cjs.map +1 -0
- package/dist/data/HighlightedTokens.d.ts +6 -0
- package/dist/data/HighlightedTokens.d.ts.map +1 -0
- package/dist/data/HighlightedTokens.js +21 -0
- package/dist/data/HighlightedTokens.js.map +1 -0
- package/dist/data/ai/AdvancedChatConfig.cjs +3 -0
- package/dist/data/ai/AdvancedChatConfig.cjs.map +1 -1
- package/dist/data/ai/AdvancedChatConfig.d.ts +2 -1
- package/dist/data/ai/AdvancedChatConfig.d.ts.map +1 -1
- package/dist/data/ai/AdvancedChatConfig.js +3 -0
- package/dist/data/ai/AdvancedChatConfig.js.map +1 -1
- package/dist/data/ai/ChatWindow.cjs +77 -4
- package/dist/data/ai/ChatWindow.cjs.map +1 -1
- package/dist/data/ai/ChatWindow.d.ts.map +1 -1
- package/dist/data/ai/ChatWindow.js +78 -5
- package/dist/data/ai/ChatWindow.js.map +1 -1
- package/dist/data/ai/ChatWindow.runtime.cjs +19 -4
- package/dist/data/ai/ChatWindow.runtime.cjs.map +1 -1
- package/dist/data/ai/ChatWindow.runtime.d.ts +2 -0
- package/dist/data/ai/ChatWindow.runtime.d.ts.map +1 -1
- package/dist/data/ai/ChatWindow.runtime.js +19 -4
- package/dist/data/ai/ChatWindow.runtime.js.map +1 -1
- package/dist/data/ai/ChatWindow.test-utils.d.ts +2 -1
- package/dist/data/ai/ChatWindow.test-utils.d.ts.map +1 -1
- package/dist/data/ai/ToolPreferences.cjs +8 -1
- package/dist/data/ai/ToolPreferences.cjs.map +1 -1
- package/dist/data/ai/ToolPreferences.d.ts +2 -1
- package/dist/data/ai/ToolPreferences.d.ts.map +1 -1
- package/dist/data/ai/ToolPreferences.js +8 -1
- package/dist/data/ai/ToolPreferences.js.map +1 -1
- package/dist/data/chat/Chat.cjs +26 -3
- package/dist/data/chat/Chat.cjs.map +1 -1
- package/dist/data/chat/Chat.d.ts +9 -1
- package/dist/data/chat/Chat.d.ts.map +1 -1
- package/dist/data/chat/Chat.js +26 -3
- package/dist/data/chat/Chat.js.map +1 -1
- package/dist/data/chat/ChatRuntimeToolbar.cjs +2 -0
- package/dist/data/chat/ChatRuntimeToolbar.cjs.map +1 -1
- package/dist/data/chat/ChatRuntimeToolbar.d.ts +2 -1
- package/dist/data/chat/ChatRuntimeToolbar.d.ts.map +1 -1
- package/dist/data/chat/ChatRuntimeToolbar.js +2 -0
- package/dist/data/chat/ChatRuntimeToolbar.js.map +1 -1
- package/dist/data/chat/Message.cjs +36 -1
- package/dist/data/chat/Message.cjs.map +1 -1
- package/dist/data/chat/Message.d.ts +1 -1
- package/dist/data/chat/Message.d.ts.map +1 -1
- package/dist/data/chat/Message.js +37 -2
- package/dist/data/chat/Message.js.map +1 -1
- package/dist/data/chat/approval.cjs +17 -0
- package/dist/data/chat/approval.cjs.map +1 -1
- package/dist/data/chat/approval.d.ts +5 -0
- package/dist/data/chat/approval.d.ts.map +1 -1
- package/dist/data/chat/approval.js +17 -0
- package/dist/data/chat/approval.js.map +1 -1
- package/dist/data/chat/fork-seed.cjs +22 -0
- package/dist/data/chat/fork-seed.cjs.map +1 -0
- package/dist/data/chat/fork-seed.d.ts +8 -0
- package/dist/data/chat/fork-seed.d.ts.map +1 -0
- package/dist/data/chat/fork-seed.js +22 -0
- package/dist/data/chat/fork-seed.js.map +1 -0
- package/dist/data/code-highlight.cjs +0 -6
- package/dist/data/code-highlight.cjs.map +1 -1
- package/dist/data/code-highlight.d.ts +4 -3
- package/dist/data/code-highlight.d.ts.map +1 -1
- package/dist/data/code-highlight.js +1 -7
- package/dist/data/code-highlight.js.map +1 -1
- package/dist/data/diagnostics/DiagnosticsDetailPanel.cjs +6 -2
- package/dist/data/diagnostics/DiagnosticsDetailPanel.cjs.map +1 -1
- package/dist/data/diagnostics/DiagnosticsDetailPanel.d.ts +8 -1
- package/dist/data/diagnostics/DiagnosticsDetailPanel.d.ts.map +1 -1
- package/dist/data/diagnostics/DiagnosticsDetailPanel.js +6 -2
- package/dist/data/diagnostics/DiagnosticsDetailPanel.js.map +1 -1
- package/dist/data/diagnostics/ErrorDetails.cjs +29 -5
- package/dist/data/diagnostics/ErrorDetails.cjs.map +1 -1
- package/dist/data/diagnostics/ErrorDetails.d.ts +3 -1
- package/dist/data/diagnostics/ErrorDetails.d.ts.map +1 -1
- package/dist/data/diagnostics/ErrorDetails.js +29 -5
- package/dist/data/diagnostics/ErrorDetails.js.map +1 -1
- package/dist/data/diagnostics/FrameSourceWindow.cjs +54 -24
- package/dist/data/diagnostics/FrameSourceWindow.cjs.map +1 -1
- package/dist/data/diagnostics/FrameSourceWindow.d.ts +2 -1
- package/dist/data/diagnostics/FrameSourceWindow.d.ts.map +1 -1
- package/dist/data/diagnostics/FrameSourceWindow.js +54 -24
- package/dist/data/diagnostics/FrameSourceWindow.js.map +1 -1
- package/dist/data/diagnostics/FrameSourceWindow.utils.cjs.map +1 -1
- package/dist/data/diagnostics/FrameSourceWindow.utils.d.ts +3 -0
- package/dist/data/diagnostics/FrameSourceWindow.utils.d.ts.map +1 -1
- package/dist/data/diagnostics/FrameSourceWindow.utils.js.map +1 -1
- package/dist/data/diagnostics/JvmStackTrace.cjs +14 -30
- package/dist/data/diagnostics/JvmStackTrace.cjs.map +1 -1
- package/dist/data/diagnostics/JvmStackTrace.d.ts +6 -9
- package/dist/data/diagnostics/JvmStackTrace.d.ts.map +1 -1
- package/dist/data/diagnostics/JvmStackTrace.js +15 -31
- package/dist/data/diagnostics/JvmStackTrace.js.map +1 -1
- package/dist/data/diagnostics/RenderedStackTrace.cjs +14 -144
- package/dist/data/diagnostics/RenderedStackTrace.cjs.map +1 -1
- package/dist/data/diagnostics/RenderedStackTrace.d.ts +6 -6
- package/dist/data/diagnostics/RenderedStackTrace.d.ts.map +1 -1
- package/dist/data/diagnostics/RenderedStackTrace.js +15 -145
- package/dist/data/diagnostics/RenderedStackTrace.js.map +1 -1
- package/dist/data/diagnostics/StackFrameRow.cjs +65 -0
- package/dist/data/diagnostics/StackFrameRow.cjs.map +1 -0
- package/dist/data/diagnostics/StackFrameRow.d.ts +13 -0
- package/dist/data/diagnostics/StackFrameRow.d.ts.map +1 -0
- package/dist/data/diagnostics/StackFrameRow.js +65 -0
- package/dist/data/diagnostics/StackFrameRow.js.map +1 -0
- package/dist/data/diagnostics/ThreadCard.cjs +9 -2
- package/dist/data/diagnostics/ThreadCard.cjs.map +1 -1
- package/dist/data/diagnostics/ThreadCard.d.ts +3 -1
- package/dist/data/diagnostics/ThreadCard.d.ts.map +1 -1
- package/dist/data/diagnostics/ThreadCard.js +9 -2
- package/dist/data/diagnostics/ThreadCard.js.map +1 -1
- package/dist/data/diagnostics/frame-heuristics.cjs +26 -0
- package/dist/data/diagnostics/frame-heuristics.cjs.map +1 -0
- package/dist/data/diagnostics/frame-heuristics.d.ts +5 -0
- package/dist/data/diagnostics/frame-heuristics.d.ts.map +1 -0
- package/dist/data/diagnostics/frame-heuristics.js +26 -0
- package/dist/data/diagnostics/frame-heuristics.js.map +1 -0
- package/dist/data/diagnostics/jvm-stacktrace.cjs +5 -7
- package/dist/data/diagnostics/jvm-stacktrace.cjs.map +1 -1
- package/dist/data/diagnostics/jvm-stacktrace.d.ts.map +1 -1
- package/dist/data/diagnostics/jvm-stacktrace.js +5 -7
- package/dist/data/diagnostics/jvm-stacktrace.js.map +1 -1
- package/dist/data/diagnostics/stacktrace-parse.cjs +4 -9
- package/dist/data/diagnostics/stacktrace-parse.cjs.map +1 -1
- package/dist/data/diagnostics/stacktrace-parse.d.ts.map +1 -1
- package/dist/data/diagnostics/stacktrace-parse.js +4 -9
- package/dist/data/diagnostics/stacktrace-parse.js.map +1 -1
- package/dist/data/runtime/RuntimeBar.cjs +3 -0
- package/dist/data/runtime/RuntimeBar.cjs.map +1 -1
- package/dist/data/runtime/RuntimeBar.d.ts +3 -1
- package/dist/data/runtime/RuntimeBar.d.ts.map +1 -1
- package/dist/data/runtime/RuntimeBar.js +3 -0
- package/dist/data/runtime/RuntimeBar.js.map +1 -1
- package/dist/data/runtime/RuntimeBarCombo.cjs +15 -1
- package/dist/data/runtime/RuntimeBarCombo.cjs.map +1 -1
- package/dist/data/runtime/RuntimeBarCombo.d.ts +2 -1
- package/dist/data/runtime/RuntimeBarCombo.d.ts.map +1 -1
- package/dist/data/runtime/RuntimeBarCombo.js +15 -1
- package/dist/data/runtime/RuntimeBarCombo.js.map +1 -1
- package/dist/data/runtime/RuntimeBarSegments.cjs +7 -0
- package/dist/data/runtime/RuntimeBarSegments.cjs.map +1 -1
- package/dist/data/runtime/RuntimeBarSegments.d.ts +2 -1
- package/dist/data/runtime/RuntimeBarSegments.d.ts.map +1 -1
- package/dist/data/runtime/RuntimeBarSegments.js +7 -0
- package/dist/data/runtime/RuntimeBarSegments.js.map +1 -1
- package/dist/data/version-info.cjs +3 -3
- package/dist/data/version-info.js +3 -3
- package/dist/data.cjs +7 -1
- package/dist/data.cjs.map +1 -1
- package/dist/data.d.ts +4 -2
- package/dist/data.d.ts.map +1 -1
- package/dist/data.js +8 -2
- package/dist/data.js.map +1 -1
- package/dist/index.cjs +18 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +19 -2
- package/dist/index.js.map +1 -1
- package/dist/rpc/CommandForm.cjs +8 -18
- package/dist/rpc/CommandForm.cjs.map +1 -1
- package/dist/rpc/CommandForm.d.ts +8 -2
- package/dist/rpc/CommandForm.d.ts.map +1 -1
- package/dist/rpc/CommandForm.js +9 -19
- package/dist/rpc/CommandForm.js.map +1 -1
- package/dist/rpc/OperationActionDialog.cjs +3 -3
- package/dist/rpc/OperationActionDialog.cjs.map +1 -1
- package/dist/rpc/OperationActionDialog.js +3 -3
- package/dist/rpc/OperationActionDialog.js.map +1 -1
- package/dist/rpc/OperationCommandPage.cjs +7 -7
- package/dist/rpc/OperationCommandPage.cjs.map +1 -1
- package/dist/rpc/OperationCommandPage.d.ts.map +1 -1
- package/dist/rpc/OperationCommandPage.js +7 -7
- package/dist/rpc/OperationCommandPage.js.map +1 -1
- package/dist/rpc/apiClient.cjs +17 -3
- package/dist/rpc/apiClient.cjs.map +1 -1
- package/dist/rpc/apiClient.d.ts +4 -4
- package/dist/rpc/apiClient.d.ts.map +1 -1
- package/dist/rpc/apiClient.js +17 -3
- package/dist/rpc/apiClient.js.map +1 -1
- package/dist/rpc/formMetadata.cjs +5 -9
- package/dist/rpc/formMetadata.cjs.map +1 -1
- package/dist/rpc/formMetadata.d.ts +3 -3
- package/dist/rpc/formMetadata.d.ts.map +1 -1
- package/dist/rpc/formMetadata.js +5 -9
- package/dist/rpc/formMetadata.js.map +1 -1
- package/dist/rpc/rpc-story.fixtures.d.ts.map +1 -1
- package/dist/rpc/types.cjs.map +1 -1
- package/dist/rpc/types.d.ts +1 -0
- package/dist/rpc/types.d.ts.map +1 -1
- package/dist/rpc/types.js.map +1 -1
- package/dist/rpc/useOperations.cjs.map +1 -1
- package/dist/rpc/useOperations.d.ts +4 -4
- package/dist/rpc/useOperations.d.ts.map +1 -1
- package/dist/rpc/useOperations.js.map +1 -1
- package/dist/rpc.d.ts +2 -2
- package/dist/rpc.d.ts.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +2 -1
package/dist/data/DataTable.cjs
CHANGED
|
@@ -25,6 +25,7 @@ const tagUtils = require("./cells/tag-utils.cjs");
|
|
|
25
25
|
const StatusDot = require("./cells/StatusDot.cjs");
|
|
26
26
|
const statusMapping = require("./cells/status-mapping.cjs");
|
|
27
27
|
const DataTable_grouping = require("./DataTable.grouping.cjs");
|
|
28
|
+
const DataTableGroupingControls = require("./DataTableGroupingControls.cjs");
|
|
28
29
|
const UiEllipsis = require("../icons/components/UiEllipsis.cjs");
|
|
29
30
|
const UiFilter = require("../icons/components/UiFilter.cjs");
|
|
30
31
|
const UiChevronRight = require("../icons/components/UiChevronRight.cjs");
|
|
@@ -67,6 +68,44 @@ const TIMESTAMP_RANGE_PRESETS = [
|
|
|
67
68
|
{ label: "Last 7 days", from: "now-7d", to: "now" },
|
|
68
69
|
{ label: "Last 30 days", from: "now-30d", to: "now" }
|
|
69
70
|
];
|
|
71
|
+
function assertDataTableGroupingProps({
|
|
72
|
+
grouping,
|
|
73
|
+
groupingModes,
|
|
74
|
+
groupingMode,
|
|
75
|
+
defaultGroupingMode,
|
|
76
|
+
onGroupingModeChange
|
|
77
|
+
}) {
|
|
78
|
+
if (grouping && groupingModes) {
|
|
79
|
+
throw new Error("DataTable accepts grouping or groupingModes, not both");
|
|
80
|
+
}
|
|
81
|
+
if (!groupingModes) {
|
|
82
|
+
if (groupingMode !== void 0 || defaultGroupingMode !== void 0) {
|
|
83
|
+
throw new Error("DataTable groupingMode values require groupingModes");
|
|
84
|
+
}
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
if (groupingModes.length === 0) {
|
|
88
|
+
throw new Error("DataTable groupingModes must not be empty");
|
|
89
|
+
}
|
|
90
|
+
const values = new Set(groupingModes.map((mode) => mode.value));
|
|
91
|
+
if (values.size !== groupingModes.length) {
|
|
92
|
+
throw new Error("DataTable groupingModes values must be unique");
|
|
93
|
+
}
|
|
94
|
+
if (groupingMode !== void 0 && !onGroupingModeChange) {
|
|
95
|
+
throw new Error(
|
|
96
|
+
"DataTable controlled groupingMode requires onGroupingModeChange"
|
|
97
|
+
);
|
|
98
|
+
}
|
|
99
|
+
if (groupingMode !== void 0 && defaultGroupingMode !== void 0) {
|
|
100
|
+
throw new Error(
|
|
101
|
+
"DataTable cannot combine groupingMode with defaultGroupingMode"
|
|
102
|
+
);
|
|
103
|
+
}
|
|
104
|
+
const selected = groupingMode ?? defaultGroupingMode;
|
|
105
|
+
if (selected !== void 0 && !values.has(selected)) {
|
|
106
|
+
throw new Error(`DataTable grouping mode "${selected}" does not exist`);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
70
109
|
function DataTableInner({
|
|
71
110
|
data,
|
|
72
111
|
error,
|
|
@@ -103,6 +142,10 @@ function DataTableInner({
|
|
|
103
142
|
getRowClassName,
|
|
104
143
|
footer,
|
|
105
144
|
grouping,
|
|
145
|
+
groupingModes,
|
|
146
|
+
groupingMode,
|
|
147
|
+
defaultGroupingMode,
|
|
148
|
+
onGroupingModeChange,
|
|
106
149
|
onRowClick,
|
|
107
150
|
isRowClickable,
|
|
108
151
|
getRowHref,
|
|
@@ -128,6 +171,14 @@ function DataTableInner({
|
|
|
128
171
|
showHeaderFilters = true,
|
|
129
172
|
menuActions
|
|
130
173
|
}) {
|
|
174
|
+
var _a;
|
|
175
|
+
assertDataTableGroupingProps({
|
|
176
|
+
grouping,
|
|
177
|
+
groupingModes,
|
|
178
|
+
groupingMode,
|
|
179
|
+
defaultGroupingMode,
|
|
180
|
+
onGroupingModeChange
|
|
181
|
+
});
|
|
131
182
|
const columns = react.useMemo(
|
|
132
183
|
() => columnsInput.map(
|
|
133
184
|
(column) => typeof column === "string" ? { key: column, label: column } : column
|
|
@@ -161,17 +212,18 @@ function DataTableInner({
|
|
|
161
212
|
const [numberFilters, setNumberFilters] = react.useState({});
|
|
162
213
|
const [expandedRows, setExpandedRows] = react.useState({});
|
|
163
214
|
const [detailRow, setDetailRow] = react.useState(null);
|
|
215
|
+
const [localGroupingMode, setLocalGroupingMode] = react.useState(defaultGroupingMode);
|
|
164
216
|
const [localGlobalFilter, setLocalGlobalFilter] = react.useState("");
|
|
165
217
|
const [timeRangeFilter, setTimeRangeFilter] = react.useState(() => {
|
|
166
|
-
var
|
|
218
|
+
var _a2, _b, _c, _d;
|
|
167
219
|
const seed = columns.find(
|
|
168
220
|
(column) => {
|
|
169
|
-
var
|
|
170
|
-
return column.kind === "timestamp" && ((
|
|
221
|
+
var _a3;
|
|
222
|
+
return column.kind === "timestamp" && ((_a3 = column.timestamp) == null ? void 0 : _a3.defaultRange);
|
|
171
223
|
}
|
|
172
224
|
);
|
|
173
225
|
return {
|
|
174
|
-
from: ((_b = (
|
|
226
|
+
from: ((_b = (_a2 = seed == null ? void 0 : seed.timestamp) == null ? void 0 : _a2.defaultRange) == null ? void 0 : _b.from) ?? "",
|
|
175
227
|
to: ((_d = (_c = seed == null ? void 0 : seed.timestamp) == null ? void 0 : _c.defaultRange) == null ? void 0 : _d.to) ?? ""
|
|
176
228
|
};
|
|
177
229
|
});
|
|
@@ -249,7 +301,7 @@ function DataTableInner({
|
|
|
249
301
|
[data, getRowId]
|
|
250
302
|
);
|
|
251
303
|
const timestampFormats = react.useMemo(() => {
|
|
252
|
-
var
|
|
304
|
+
var _a2;
|
|
253
305
|
const out = {};
|
|
254
306
|
for (const column of columns) {
|
|
255
307
|
if (column.kind !== "timestamp") continue;
|
|
@@ -261,7 +313,7 @@ function DataTableInner({
|
|
|
261
313
|
}
|
|
262
314
|
const dataFormat = timestampFormat.chooseTimestampFormat(dates);
|
|
263
315
|
out[column.key] = timestampFormat.modeToFormat(
|
|
264
|
-
((
|
|
316
|
+
((_a2 = column.timestamp) == null ? void 0 : _a2.mode) ?? "auto",
|
|
265
317
|
dataFormat
|
|
266
318
|
);
|
|
267
319
|
}
|
|
@@ -273,6 +325,35 @@ function DataTableInner({
|
|
|
273
325
|
),
|
|
274
326
|
[columns, timestampFormats]
|
|
275
327
|
);
|
|
328
|
+
const activeGroupingModeValue = groupingMode ?? localGroupingMode ?? defaultGroupingMode ?? ((_a = groupingModes == null ? void 0 : groupingModes[0]) == null ? void 0 : _a.value);
|
|
329
|
+
const activeGroupingMode = groupingModes == null ? void 0 : groupingModes.find(
|
|
330
|
+
(mode) => mode.value === activeGroupingModeValue
|
|
331
|
+
);
|
|
332
|
+
const effectiveGrouping = react.useMemo(() => {
|
|
333
|
+
if (!activeGroupingMode) return grouping;
|
|
334
|
+
if (activeGroupingMode.type === "none") return void 0;
|
|
335
|
+
if (activeGroupingMode.type === "custom") return activeGroupingMode;
|
|
336
|
+
const column = effectiveColumns.find(
|
|
337
|
+
(candidate) => candidate.key === activeGroupingMode.columnKey
|
|
338
|
+
);
|
|
339
|
+
if (!column) {
|
|
340
|
+
throw new Error(
|
|
341
|
+
`DataTable grouping mode "${activeGroupingMode.value}" references missing column "${activeGroupingMode.columnKey}"`
|
|
342
|
+
);
|
|
343
|
+
}
|
|
344
|
+
return {
|
|
345
|
+
...activeGroupingMode,
|
|
346
|
+
getGroupKey: (row) => DataTable_grouping.dataTableGroupKey(dataTableUtils.resolveColumnValue(row, column)),
|
|
347
|
+
// `emptyGroupLabel` is a header label, never a key — resolving it here
|
|
348
|
+
// keeps rows with no value apart from rows whose value happens to read
|
|
349
|
+
// like the label.
|
|
350
|
+
getGroupLabel: (key, rows2) => {
|
|
351
|
+
var _a2;
|
|
352
|
+
const custom = (_a2 = activeGroupingMode.getGroupLabel) == null ? void 0 : _a2.call(activeGroupingMode, key, rows2);
|
|
353
|
+
return custom !== void 0 ? custom : DataTable_grouping.dataTableGroupLabel(key, activeGroupingMode.emptyGroupLabel);
|
|
354
|
+
}
|
|
355
|
+
};
|
|
356
|
+
}, [activeGroupingMode, effectiveColumns, grouping]);
|
|
276
357
|
const visibleColumns = react.useMemo(() => {
|
|
277
358
|
if (!hideableColumns) return effectiveColumns;
|
|
278
359
|
const next = effectiveColumns.filter(
|
|
@@ -296,8 +377,8 @@ function DataTableInner({
|
|
|
296
377
|
const rangeCapableColumn = react.useMemo(
|
|
297
378
|
() => effectiveColumns.find(
|
|
298
379
|
(column) => {
|
|
299
|
-
var
|
|
300
|
-
return column.kind === "timestamp" && column.filterable !== false && ((
|
|
380
|
+
var _a2;
|
|
381
|
+
return column.kind === "timestamp" && column.filterable !== false && ((_a2 = column.timestamp) == null ? void 0 : _a2.autoRangeFilter) !== false;
|
|
301
382
|
}
|
|
302
383
|
) ?? null,
|
|
303
384
|
[effectiveColumns]
|
|
@@ -325,7 +406,7 @@ function DataTableInner({
|
|
|
325
406
|
const generatedFilters = react.useMemo(() => {
|
|
326
407
|
if (!autoFilter || loading$1) return [];
|
|
327
408
|
return filterableColumns.map((column) => {
|
|
328
|
-
var
|
|
409
|
+
var _a2;
|
|
329
410
|
const numberBounds = getNumericFilterBounds(rows, column);
|
|
330
411
|
if (numberBounds) {
|
|
331
412
|
return {
|
|
@@ -347,7 +428,7 @@ function DataTableInner({
|
|
|
347
428
|
const multiCap = column.kind === "tags" ? 50 : 20;
|
|
348
429
|
const fitsMulti = options.length >= 2 && options.length <= multiCap;
|
|
349
430
|
if (column.kind === "tags" && fitsMulti) {
|
|
350
|
-
const separator = ((
|
|
431
|
+
const separator = ((_a2 = column.tags) == null ? void 0 : _a2.separator) ?? "=";
|
|
351
432
|
const groups2 = groupTagOptions(options, separator);
|
|
352
433
|
if (groups2.length >= 2) {
|
|
353
434
|
return {
|
|
@@ -393,7 +474,7 @@ function DataTableInner({
|
|
|
393
474
|
}) : setLocalGlobalFilter;
|
|
394
475
|
const nativeFilters = react.useMemo(
|
|
395
476
|
() => generatedFilters.map((filter) => {
|
|
396
|
-
var
|
|
477
|
+
var _a2, _b, _c;
|
|
397
478
|
const columnKey = filter.column.key;
|
|
398
479
|
if (filter.kind === "multi") {
|
|
399
480
|
return {
|
|
@@ -429,7 +510,7 @@ function DataTableInner({
|
|
|
429
510
|
(current) => updateNumberFilterValue(current, columnKey, next)
|
|
430
511
|
)
|
|
431
512
|
};
|
|
432
|
-
if (((
|
|
513
|
+
if (((_a2 = filter.numberBounds) == null ? void 0 : _a2.min) !== void 0) {
|
|
433
514
|
numberFilter.domainMin = filter.numberBounds.min;
|
|
434
515
|
}
|
|
435
516
|
if (((_b = filter.numberBounds) == null ? void 0 : _b.max) !== void 0) {
|
|
@@ -478,13 +559,13 @@ function DataTableInner({
|
|
|
478
559
|
(filterBarProps == null ? void 0 : filterBarProps.leading) || (filterBarProps == null ? void 0 : filterBarProps.children) || (filterBarProps == null ? void 0 : filterBarProps.trailing) || (filterBarProps == null ? void 0 : filterBarProps.timeRange) || (filterBarProps == null ? void 0 : filterBarProps.dateRange)
|
|
479
560
|
);
|
|
480
561
|
const autoTimeRange = react.useMemo(() => {
|
|
481
|
-
var
|
|
562
|
+
var _a2, _b, _c, _d;
|
|
482
563
|
if (!timeRangeColumn) return null;
|
|
483
564
|
const next = {
|
|
484
565
|
from: timeRangeFilter.from,
|
|
485
566
|
to: timeRangeFilter.to,
|
|
486
567
|
onApply: (from, to) => setTimeRangeFilter({ from, to }),
|
|
487
|
-
presets: ((
|
|
568
|
+
presets: ((_a2 = timeRangeColumn.timestamp) == null ? void 0 : _a2.rangePresets) ?? TIMESTAMP_RANGE_PRESETS,
|
|
488
569
|
fromPlaceholder: "now-24h",
|
|
489
570
|
toPlaceholder: "now",
|
|
490
571
|
emptyLabel: "Any time"
|
|
@@ -527,20 +608,11 @@ function DataTableInner({
|
|
|
527
608
|
globalFilterControlled: globalFilter !== void 0 || onGlobalFilterChange !== void 0,
|
|
528
609
|
hasExternalSearch: externalSearch !== void 0
|
|
529
610
|
});
|
|
530
|
-
const showFilterBar = resolvedShowGlobalFilter || nativeFilters.length > 0 || !!barTimeRange || !!externalSearch || externalFilters && externalFilters.length > 0 || hasCustomFilterBarContent || showTablePreferencesControl;
|
|
611
|
+
const showFilterBar = resolvedShowGlobalFilter || nativeFilters.length > 0 || !!barTimeRange || !!externalSearch || externalFilters && externalFilters.length > 0 || hasCustomFilterBarContent || !!groupingModes || showTablePreferencesControl;
|
|
531
612
|
const setDensityOverride = (next) => {
|
|
532
613
|
if (!densityControlled) setLocalDensityOverride(next);
|
|
533
614
|
onDensityChange == null ? void 0 : onDensityChange(next);
|
|
534
615
|
};
|
|
535
|
-
const filterBarTrailing = showTablePreferencesControl ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
536
|
-
filterBarProps == null ? void 0 : filterBarProps.trailing,
|
|
537
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
538
|
-
ColumnVisibilityTrigger,
|
|
539
|
-
{
|
|
540
|
-
onOpen: (event) => setColumnMenu(menuStateFromTrigger(event))
|
|
541
|
-
}
|
|
542
|
-
)
|
|
543
|
-
] }) : filterBarProps == null ? void 0 : filterBarProps.trailing;
|
|
544
616
|
const showHeaderFilterControls = showHeaderFilters && (headerFilterByColumn.size > 0 || !!columnTimeRange);
|
|
545
617
|
const filteredRows = react.useMemo(() => {
|
|
546
618
|
if (manualFilter) return rows;
|
|
@@ -650,8 +722,8 @@ function DataTableInner({
|
|
|
650
722
|
const selectableVisibleRows = react.useMemo(
|
|
651
723
|
() => visibleSorted.filter(
|
|
652
724
|
(record) => {
|
|
653
|
-
var
|
|
654
|
-
return ((
|
|
725
|
+
var _a2;
|
|
726
|
+
return ((_a2 = rowSelection == null ? void 0 : rowSelection.isRowSelectable) == null ? void 0 : _a2.call(rowSelection, record.row)) ?? true;
|
|
655
727
|
}
|
|
656
728
|
),
|
|
657
729
|
[rowSelection, visibleSorted]
|
|
@@ -679,9 +751,9 @@ function DataTableInner({
|
|
|
679
751
|
);
|
|
680
752
|
const toggleRowSelection = react.useCallback(
|
|
681
753
|
(record) => {
|
|
682
|
-
var
|
|
754
|
+
var _a2;
|
|
683
755
|
if (!rowSelection) return;
|
|
684
|
-
if (((
|
|
756
|
+
if (((_a2 = rowSelection.isRowSelectable) == null ? void 0 : _a2.call(rowSelection, record.row)) === false) return;
|
|
685
757
|
const next = new Set(selectedRowIDs);
|
|
686
758
|
if (next.has(record.id)) next.delete(record.id);
|
|
687
759
|
else next.add(record.id);
|
|
@@ -720,31 +792,67 @@ function DataTableInner({
|
|
|
720
792
|
totalRowCount: data.length,
|
|
721
793
|
loading: loading$1
|
|
722
794
|
}) : footer : pagination ? null : loading$1 && sorted.length === 0 ? loadingMessage : `${sorted.length} of ${data.length} row${data.length === 1 ? "" : "s"}`;
|
|
723
|
-
const [
|
|
795
|
+
const [collapseStateByMode, setCollapseStateByMode] = react.useState({});
|
|
796
|
+
const collapseStateKey = activeGroupingMode ? `mode:${activeGroupingMode.value}` : "fixed";
|
|
797
|
+
const collapseState = collapseStateByMode[collapseStateKey];
|
|
724
798
|
const groups = react.useMemo(() => {
|
|
725
|
-
if (!
|
|
799
|
+
if (!effectiveGrouping) return null;
|
|
726
800
|
const buckets = DataTable_grouping.groupRecords(
|
|
727
801
|
visibleSorted,
|
|
728
|
-
(record) =>
|
|
802
|
+
(record) => effectiveGrouping.getGroupKey(record.row)
|
|
729
803
|
);
|
|
730
804
|
const resolved = buckets.map((bucket) => ({
|
|
731
805
|
key: bucket.key,
|
|
732
806
|
records: bucket.rows,
|
|
733
807
|
rows: bucket.rows.map((record) => record.row)
|
|
734
808
|
}));
|
|
735
|
-
if (
|
|
736
|
-
resolved.sort((a, b) =>
|
|
809
|
+
if (effectiveGrouping.compareGroups) {
|
|
810
|
+
resolved.sort((a, b) => effectiveGrouping.compareGroups(a, b));
|
|
737
811
|
}
|
|
738
812
|
return resolved.map((group) => {
|
|
739
|
-
var
|
|
813
|
+
var _a2, _b;
|
|
740
814
|
return {
|
|
741
815
|
...group,
|
|
742
|
-
label: ((
|
|
743
|
-
meta: (_b =
|
|
744
|
-
collapsed:
|
|
816
|
+
label: ((_a2 = effectiveGrouping.getGroupLabel) == null ? void 0 : _a2.call(effectiveGrouping, group.key, group.rows)) ?? group.key,
|
|
817
|
+
meta: (_b = effectiveGrouping.getGroupMeta) == null ? void 0 : _b.call(effectiveGrouping, group.key, group.rows),
|
|
818
|
+
collapsed: (collapseState == null ? void 0 : collapseState.groups[group.key]) ?? (collapseState == null ? void 0 : collapseState.all) ?? DataTable_grouping.isGroupCollapsedByDefault(group, effectiveGrouping.defaultCollapsed)
|
|
745
819
|
};
|
|
746
820
|
});
|
|
747
|
-
}, [
|
|
821
|
+
}, [collapseState, effectiveGrouping, visibleSorted]);
|
|
822
|
+
const hasGroups = !!(groups == null ? void 0 : groups.length);
|
|
823
|
+
const allGroupsExpanded = hasGroups && groups.every((group) => !group.collapsed);
|
|
824
|
+
const allGroupsCollapsed = hasGroups && groups.every((group) => group.collapsed);
|
|
825
|
+
const setAllGroupsCollapsed = (collapsed) => {
|
|
826
|
+
setCollapseStateByMode((current) => ({
|
|
827
|
+
...current,
|
|
828
|
+
[collapseStateKey]: { all: collapsed, groups: {} }
|
|
829
|
+
}));
|
|
830
|
+
};
|
|
831
|
+
const filterBarTrailing = (filterBarProps == null ? void 0 : filterBarProps.trailing) || groupingModes || showTablePreferencesControl ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
832
|
+
filterBarProps == null ? void 0 : filterBarProps.trailing,
|
|
833
|
+
groupingModes ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
834
|
+
DataTableGroupingControls.DataTableGroupingControls,
|
|
835
|
+
{
|
|
836
|
+
modes: groupingModes,
|
|
837
|
+
value: activeGroupingModeValue,
|
|
838
|
+
hasGroups,
|
|
839
|
+
allExpanded: allGroupsExpanded,
|
|
840
|
+
allCollapsed: allGroupsCollapsed,
|
|
841
|
+
onModeChange: (value) => {
|
|
842
|
+
if (groupingMode === void 0) setLocalGroupingMode(value);
|
|
843
|
+
onGroupingModeChange == null ? void 0 : onGroupingModeChange(value);
|
|
844
|
+
},
|
|
845
|
+
onExpandAll: () => setAllGroupsCollapsed(false),
|
|
846
|
+
onCollapseAll: () => setAllGroupsCollapsed(true)
|
|
847
|
+
}
|
|
848
|
+
) : null,
|
|
849
|
+
showTablePreferencesControl ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
850
|
+
ColumnVisibilityTrigger,
|
|
851
|
+
{
|
|
852
|
+
onOpen: (event) => setColumnMenu(menuStateFromTrigger(event))
|
|
853
|
+
}
|
|
854
|
+
) : null
|
|
855
|
+
] }) : void 0;
|
|
748
856
|
const rowStream = react.useMemo(() => {
|
|
749
857
|
if (!groups) {
|
|
750
858
|
return visibleSorted.map((record) => ({ kind: "row", record }));
|
|
@@ -759,8 +867,8 @@ function DataTableInner({
|
|
|
759
867
|
if (!rowSelection) return;
|
|
760
868
|
const selectable = records.filter(
|
|
761
869
|
(record) => {
|
|
762
|
-
var
|
|
763
|
-
return ((
|
|
870
|
+
var _a2;
|
|
871
|
+
return ((_a2 = rowSelection.isRowSelectable) == null ? void 0 : _a2.call(rowSelection, record.row)) ?? true;
|
|
764
872
|
}
|
|
765
873
|
);
|
|
766
874
|
const next = new Set(selectedRowIDs);
|
|
@@ -779,8 +887,8 @@ function DataTableInner({
|
|
|
779
887
|
if (!node || !sentinelActive) return;
|
|
780
888
|
revealObserver.current = new IntersectionObserver(
|
|
781
889
|
(entries) => {
|
|
782
|
-
var
|
|
783
|
-
if (!((
|
|
890
|
+
var _a2;
|
|
891
|
+
if (!((_a2 = entries[0]) == null ? void 0 : _a2.isIntersecting)) return;
|
|
784
892
|
if (infiniteEnabled) {
|
|
785
893
|
requestMoreRows();
|
|
786
894
|
return;
|
|
@@ -830,14 +938,14 @@ function DataTableInner({
|
|
|
830
938
|
document.body.style.userSelect = "none";
|
|
831
939
|
};
|
|
832
940
|
const autoFitColumn = (event, column) => {
|
|
833
|
-
var
|
|
941
|
+
var _a2;
|
|
834
942
|
event.preventDefault();
|
|
835
943
|
event.stopPropagation();
|
|
836
944
|
const header = event.currentTarget.closest("th");
|
|
837
945
|
const table = event.currentTarget.closest("table");
|
|
838
946
|
if (!header || !table) return;
|
|
839
947
|
const columnIndex = Array.from(
|
|
840
|
-
((
|
|
948
|
+
((_a2 = header.parentElement) == null ? void 0 : _a2.children) ?? []
|
|
841
949
|
).indexOf(header);
|
|
842
950
|
if (columnIndex < 0) return;
|
|
843
951
|
const width = measureColumnContentWidth(table, columnIndex, column);
|
|
@@ -1042,28 +1150,37 @@ function DataTableInner({
|
|
|
1042
1150
|
children: emptyMessage
|
|
1043
1151
|
}
|
|
1044
1152
|
) }) : rowStream.map((item) => {
|
|
1045
|
-
var
|
|
1153
|
+
var _a2;
|
|
1046
1154
|
if (item.kind === "group") {
|
|
1047
1155
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1048
1156
|
DataTableGroupHeaderRow,
|
|
1049
1157
|
{
|
|
1050
1158
|
label: item.group.label,
|
|
1051
1159
|
meta: item.group.meta,
|
|
1052
|
-
metaAlign: (
|
|
1053
|
-
...(
|
|
1160
|
+
metaAlign: (effectiveGrouping == null ? void 0 : effectiveGrouping.metaAlign) ?? "end",
|
|
1161
|
+
...(effectiveGrouping == null ? void 0 : effectiveGrouping.metaClassName) ? { metaClassName: effectiveGrouping.metaClassName } : {},
|
|
1054
1162
|
count: item.group.records.length,
|
|
1055
1163
|
colSpan: visibleColumns.length + (rowSelection ? 1 : 0),
|
|
1056
1164
|
collapsed: item.group.collapsed,
|
|
1057
|
-
onToggleCollapsed: () =>
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1165
|
+
onToggleCollapsed: () => setCollapseStateByMode((current) => {
|
|
1166
|
+
var _a3;
|
|
1167
|
+
return {
|
|
1168
|
+
...current,
|
|
1169
|
+
[collapseStateKey]: {
|
|
1170
|
+
...current[collapseStateKey],
|
|
1171
|
+
groups: {
|
|
1172
|
+
...(_a3 = current[collapseStateKey]) == null ? void 0 : _a3.groups,
|
|
1173
|
+
[item.group.key]: !item.group.collapsed
|
|
1174
|
+
}
|
|
1175
|
+
}
|
|
1176
|
+
};
|
|
1177
|
+
}),
|
|
1061
1178
|
...rowSelection ? {
|
|
1062
1179
|
selection: {
|
|
1063
1180
|
selectableCount: item.group.records.filter(
|
|
1064
1181
|
(record2) => {
|
|
1065
|
-
var
|
|
1066
|
-
return ((
|
|
1182
|
+
var _a3;
|
|
1183
|
+
return ((_a3 = rowSelection.isRowSelectable) == null ? void 0 : _a3.call(
|
|
1067
1184
|
rowSelection,
|
|
1068
1185
|
record2.row
|
|
1069
1186
|
)) ?? true;
|
|
@@ -1091,7 +1208,7 @@ function DataTableInner({
|
|
|
1091
1208
|
const expandsInline = expandable && detailStyle === "row";
|
|
1092
1209
|
const opensDialog = expandable && detailStyle === "dialog";
|
|
1093
1210
|
const rowClickEnabled = (isRowClickable == null ? void 0 : isRowClickable(record.row)) ?? !!onRowClick;
|
|
1094
|
-
const rowSelectable = ((
|
|
1211
|
+
const rowSelectable = ((_a2 = rowSelection == null ? void 0 : rowSelection.isRowSelectable) == null ? void 0 : _a2.call(rowSelection, record.row)) ?? true;
|
|
1095
1212
|
const selectionClickEnabled = !!(rowSelection == null ? void 0 : rowSelection.toggleOnRowClick) && rowSelectable;
|
|
1096
1213
|
const clickable = !!href || rowClickEnabled || expandable || selectionClickEnabled;
|
|
1097
1214
|
return /* @__PURE__ */ jsxRuntime.jsxs(react.Fragment, { children: [
|
|
@@ -1105,7 +1222,8 @@ function DataTableInner({
|
|
|
1105
1222
|
getRowClassName == null ? void 0 : getRowClassName(record.row)
|
|
1106
1223
|
),
|
|
1107
1224
|
onClick: () => {
|
|
1108
|
-
if (selectionClickEnabled)
|
|
1225
|
+
if (selectionClickEnabled)
|
|
1226
|
+
toggleRowSelection(record);
|
|
1109
1227
|
if (expandsInline) {
|
|
1110
1228
|
setExpandedRows((current) => ({
|
|
1111
1229
|
...current,
|
|
@@ -1144,7 +1262,7 @@ function DataTableInner({
|
|
|
1144
1262
|
}
|
|
1145
1263
|
) : null,
|
|
1146
1264
|
visibleColumns.map((column, index) => {
|
|
1147
|
-
var
|
|
1265
|
+
var _a3;
|
|
1148
1266
|
const rawValue = dataTableUtils.resolveColumnValue(
|
|
1149
1267
|
record.row,
|
|
1150
1268
|
column
|
|
@@ -1168,7 +1286,7 @@ function DataTableInner({
|
|
|
1168
1286
|
{
|
|
1169
1287
|
value: serverFilterValue,
|
|
1170
1288
|
...serverFilterDisplayValue !== void 0 ? { displayValue: serverFilterDisplayValue } : {},
|
|
1171
|
-
mode: (
|
|
1289
|
+
mode: (_a3 = cellFilters == null ? void 0 : cellFilters[filterKey]) == null ? void 0 : _a3[serverFilterValue],
|
|
1172
1290
|
onChange: (mode) => onCellFilterChange({
|
|
1173
1291
|
key: filterKey,
|
|
1174
1292
|
value: serverFilterValue,
|
|
@@ -1365,7 +1483,10 @@ function DataTablePaginationFooter({
|
|
|
1365
1483
|
const atLast = cursor ? cursor.next == null : pagination.hasMore != null ? !pagination.hasMore : totalPages != null ? safePage >= totalPages - 1 : visibleRowCount < pageSize;
|
|
1366
1484
|
const hasVisibleRows = visibleRowCount > 0;
|
|
1367
1485
|
const rangeStart = total === 0 || !hasVisibleRows ? 0 : infinite ? 1 : safePage * pageSize + 1;
|
|
1368
|
-
const rangeEnd = total != null && hasVisibleRows ? Math.min(
|
|
1486
|
+
const rangeEnd = total != null && hasVisibleRows ? Math.min(
|
|
1487
|
+
approximate ? Infinity : total,
|
|
1488
|
+
rangeStart + Math.max(visibleRowCount - 1, 0)
|
|
1489
|
+
) : visibleRowCount;
|
|
1369
1490
|
const rangeLabel = total != null ? `${rangeStart}-${rangeEnd} of ${approximate ? `~${total}+` : total}` : `${visibleRowCount} row${visibleRowCount === 1 ? "" : "s"}`;
|
|
1370
1491
|
const steppable = !infinite && (cursor != null || onPageChange != null);
|
|
1371
1492
|
const goPrevious = () => {
|
|
@@ -1470,7 +1591,7 @@ function DataTableGroupHeaderRow({
|
|
|
1470
1591
|
"aria-expanded": !collapsed,
|
|
1471
1592
|
onClick: onToggleCollapsed,
|
|
1472
1593
|
className: utils.cn(
|
|
1473
|
-
"flex min-w-0 items-center gap-1.5 text-left text-
|
|
1594
|
+
"flex min-w-0 items-center gap-1.5 text-left text-sm font-semibold text-foreground hover:text-primary",
|
|
1474
1595
|
// `flex-1` is what pushes the meta to the trailing edge. Dropping
|
|
1475
1596
|
// it lets the meta sit right after the count instead.
|
|
1476
1597
|
metaAlign === "end" && "flex-1"
|
|
@@ -1492,7 +1613,7 @@ function DataTableGroupHeaderRow({
|
|
|
1492
1613
|
"div",
|
|
1493
1614
|
{
|
|
1494
1615
|
className: utils.cn(
|
|
1495
|
-
"shrink-0 text-
|
|
1616
|
+
"shrink-0 text-sm text-muted-foreground",
|
|
1496
1617
|
metaClassName
|
|
1497
1618
|
),
|
|
1498
1619
|
children: meta
|
|
@@ -2049,10 +2170,7 @@ function CellContent({
|
|
|
2049
2170
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
2050
2171
|
"div",
|
|
2051
2172
|
{
|
|
2052
|
-
className: utils.cn(
|
|
2053
|
-
cellContentClassName(column),
|
|
2054
|
-
alignmentClass(column.align)
|
|
2055
|
-
),
|
|
2173
|
+
className: utils.cn(cellContentClassName(column), alignmentClass(column.align)),
|
|
2056
2174
|
children
|
|
2057
2175
|
}
|
|
2058
2176
|
);
|