@rafal.lemieszewski/tide-ui 0.36.1 → 0.38.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.
@@ -105,6 +105,37 @@ export interface DataTableProps<TData, TValue> {
105
105
  enableGrouping?: boolean;
106
106
  groupedColumnMode?: 'reorder' | 'remove' | false;
107
107
  enableManualGrouping?: boolean;
108
+ /**
109
+ * When grouping is enabled, specifies which column should be used to
110
+ * render the parent/group rows instead of the grouped column itself.
111
+ *
112
+ * Use case: Group by one field (e.g., "fixtureId") but display another
113
+ * field's aggregatedCell in parent rows (e.g., "orderId").
114
+ *
115
+ * The specified column should define an aggregatedCell in its columnDef
116
+ * to customize how the group header is rendered. If no aggregatedCell is
117
+ * defined, it will fall back to showing the value from the first row.
118
+ *
119
+ * @example
120
+ * grouping={["fixtureId"]}
121
+ * groupDisplayColumn="orderId"
122
+ * columnVisibility={{ fixtureId: false }}
123
+ */
124
+ groupDisplayColumn?: string;
125
+ /**
126
+ * When grouping is enabled, hides child rows for groups that contain
127
+ * only a single item. This flattens single-item groups to show only
128
+ * the parent row, reducing visual redundancy.
129
+ *
130
+ * When enabled:
131
+ * - Groups with 1 item: Only parent row shown (not expandable)
132
+ * - Groups with 2+ items: Parent + expandable children shown normally
133
+ *
134
+ * @default false
135
+ * @example
136
+ * hideChildrenForSingleItemGroups={true}
137
+ */
138
+ hideChildrenForSingleItemGroups?: boolean;
108
139
  enableRowPinning?: boolean;
109
140
  keepPinnedRows?: boolean;
110
141
  enableVirtualization?: boolean;
@@ -140,7 +171,7 @@ export interface DataTableProps<TData, TValue> {
140
171
  renderSectionHeaderRow?: (row: any) => React.ReactNode | null;
141
172
  autoExpandChildren?: boolean;
142
173
  }
143
- export declare function DataTable<TData, TValue>({ columns, data, searchKey, searchPlaceholder, title, className, stickyHeader, stickyFirstColumn, stickyLeftColumns, stickyRightColumns, enableResponsiveWrapper, showScrollIndicators, isLoading, loadingRowCount, borderStyle, enableGlobalSearch, globalSearchPlaceholder, enableGlobalFaceting, enableColumnResizing, columnResizeMode, enableColumnResizePersistence, storageKey, enableExpanding, getSubRows, enableGrouping, groupedColumnMode, enableManualGrouping, enableRowPinning, keepPinnedRows, enableVirtualization, nestedHeaders, enableNestedHeaders, enableColumnOrdering, enableRowSelection, showHeader, showPagination, onTableReady, initialState, sorting: controlledSorting, onSortingChange: onControlledSortingChange, columnVisibility: controlledColumnVisibility, onColumnVisibilityChange: onControlledColumnVisibilityChange, grouping: controlledGrouping, onGroupingChange: onControlledGroupingChange, columnOrder: controlledColumnOrder, onColumnOrderChange: onControlledColumnOrderChange, columnSizing: controlledColumnSizing, onColumnSizingChange: onControlledColumnSizingChange, renderSectionHeaderRow, autoExpandChildren, }: DataTableProps<TData, TValue>): import("react/jsx-runtime").JSX.Element;
174
+ export declare function DataTable<TData, TValue>({ columns, data, searchKey, searchPlaceholder, title, className, stickyHeader, stickyFirstColumn, stickyLeftColumns, stickyRightColumns, enableResponsiveWrapper, showScrollIndicators, isLoading, loadingRowCount, borderStyle, enableGlobalSearch, globalSearchPlaceholder, enableGlobalFaceting, enableColumnResizing, columnResizeMode, enableColumnResizePersistence, storageKey, enableExpanding, getSubRows, enableGrouping, groupedColumnMode, enableManualGrouping, groupDisplayColumn, hideChildrenForSingleItemGroups, enableRowPinning, keepPinnedRows, enableVirtualization, nestedHeaders, enableNestedHeaders, enableColumnOrdering, enableRowSelection, showHeader, showPagination, onTableReady, initialState, sorting: controlledSorting, onSortingChange: onControlledSortingChange, columnVisibility: controlledColumnVisibility, onColumnVisibilityChange: onControlledColumnVisibilityChange, grouping: controlledGrouping, onGroupingChange: onControlledGroupingChange, columnOrder: controlledColumnOrder, onColumnOrderChange: onControlledColumnOrderChange, columnSizing: controlledColumnSizing, onColumnSizingChange: onControlledColumnSizingChange, renderSectionHeaderRow, autoExpandChildren, }: DataTableProps<TData, TValue>): import("react/jsx-runtime").JSX.Element;
144
175
  export { DataTableColumnHeader, DataTableFilter, DataTableToolbar, DataTablePagination, DataTableSkeleton, fuzzyFilter, multiSelectFilter };
145
176
  export { useReactTable } from '@tanstack/react-table';
146
177
  export type { SortingState, ColumnFiltersState, VisibilityState, ExpandedState, GroupingState, ColumnOrderState, FilterFn, ColumnResizeMode, } from '@tanstack/react-table';