Changelog

Release history and updates for Simple Table.

1.9.4

12/08/2025
  • 🚀 New Added canExpandRowGroup callback prop to conditionally control which row groups can be expanded
  • 🚀 New Added getAllRows() method to TableRefType for retrieving all flattened rows including nested/grouped data
  • 🚀 New Added getHeaders() method to TableRefType for retrieving the table's current header/column definitions
  • 🚀 New Default skeleton loading state now appears automatically for dynamic row groups when no custom loadingStateRenderer is defined
  • 🚀 New Accessor type now supports nested array paths (e.g., 'albums[0].title' or 'awards[0]') for accessing array data
  • 🚀 New initialSortColumn now supports nested array paths (e.g., initialSortColumn='awards[0]')
  • Improved ValueFormatter return type extended to support string[] and number[] for array formatting
  • Improved ComparatorProps enhanced with valueA, valueB, and formattedValue properties for more flexible sorting logic
  • 🐛 Fix CSV export with pagination now exports all data instead of only the current page

1.9.3

12/04/2025
  • 🐛 Fix Horizontal scrollbar showing up when it shouldn't
  • 🐛 Fix Filter input on click on mobile sometimes closes the filter dropdown
  • 🐛 Fix Height undefined should not use virtualization

1.9.2

12/03/2025
  • 🚀 New Added copyHeadersToClipboard prop to include column headers when copying selected cells to clipboard
  • 🚀 New Added includeHeadersInCSVExport prop to control whether headers are included in CSV exports (defaults to true)
  • 🚀 New Added tableEmptyStateRenderer prop to customize the display when the table has no rows (e.g., after filtering or with no data)

1.9.0

12/01/2025
  • 🚀 New Added setLoading, setError, and setEmpty helper functions to OnRowGroupExpandProps for managing row-level states during async data fetching
  • 🚀 New Added rowIndexPath to OnRowGroupExpandProps - provides array path to navigate nested data structure (e.g., [0, 'teams', 1] for rows[0].teams[1])
  • 🚀 New Added groupingKeys array to OnRowGroupExpandProps - provides all grouping keys from the hierarchy for better context awareness
  • 🚀 New Added loadingStateRenderer, errorStateRenderer, and emptyStateRenderer props for customizing state displays during dynamic loading
  • Improved Enhanced dynamic row loading example with comprehensive three-level hierarchy (Departments → Teams → Employees) showcasing state management
  • Improved Improved OnRowGroupExpandProps documentation with detailed examples of rowIndexPath usage for direct nested data updates

1.8.9

11/29/2025
  • 🚀 New Added onRowGroupExpand callback prop for handling row expand/collapse events with detailed context
  • 🚀 New OnRowGroupExpandProps interface provides row, depth, groupingKey, and isExpanded for flexible data loading
  • Improved Enhanced row grouping documentation with lazy-loading patterns and best practices

1.8.8

11/28/2025
  • 🐛 Fix excludeFromRender does not affect copied values anymore.

1.8.6

11/25/2025
  • 🚀 New Added initialSortColumn and initialSortDirection props to set default sorting on table load
  • 🚀 New Added collapseDefault attribute to start collapsible/expandable columns in collapsed state
  • 🚀 New Added excludeFromRender to hide columns from table while keeping them in CSV exports (perfect for ID columns)
  • 🚀 New Added excludeFromCsv to hide columns from CSV exports while showing in table (perfect for action buttons)
  • 🚀 New Enhanced CellRendererProps with value and formattedValue props for easier custom rendering
  • Improved useFormattedValueForClipboard and useFormattedValueForCSV now default to true when valueFormatter exists (reduces boilerplate)
  • Improved Added distinct CSS variables for sub-column hover (--st-sub-cell-hover-background-color), dragging sub-headers (--st-dragging-sub-header-background-color), and selected sub-cells (--st-selected-sub-cell-background-color, --st-selected-sub-cell-color)

1.8.5

11/24/2025
  • Improved Improved virtual scrolling performance with improved memory usage and faster rendering of large datasets.

1.8.4

11/24/2025
  • 🚀 New Added comparator attribute to HeaderObject for custom sorting based on row-level metadata or complex logic
  • 🚀 New Added valueGetter attribute to extract values from nested objects or compute values dynamically for sorting
  • 🚀 New Added useFormattedValueForClipboard attribute to control whether cells copy formatted values (with symbols, formatting) or raw data
  • 🚀 New Added useFormattedValueForCSV attribute to use formatted values in CSV exports instead of raw data
  • 🚀 New Added exportValueGetter attribute to provide completely custom values for CSV export, different from both raw and formatted display values
  • 🚀 New Exported new TypeScript types: Comparator, ValueGetter, ExportValueGetter with full IntelliSense support
  • Improved Enhanced HR and Sales examples to showcase new clipboard and CSV formatting capabilities

1.8.2

11/23/2025
  • Improved Improved chart width calculations for better responsive behavior
  • Improved Optimized virtualization engine for faster rendering and smoother scrolling

1.8.1

11/22/2025
  • 🚀 New Added lineAreaChart and barChart column types for inline data visualization
  • 🚀 New Smart copy/paste for chart columns: arrays format as comma-separated values (e.g., '10, 15, 12, 18, 25')
  • 🚀 New Chart cells can be pasted with comma-separated values that automatically parse to number arrays
  • Improved Enhanced Infrastructure example with live-updating CPU history chart visualization

1.7.9

11/22/2024
  • 🚀 New Added valueFormatter attribute to HeaderObject for formatting cell values without React components
  • Improved Updated documentation to clarify when to use valueFormatter vs cellRenderer for optimal performance

1.7.6

11/19/2025
  • 🐛 Fix Fixed nested data accessors (e.g., accessor: 'latest.rank') to work correctly

1.7.5

11/19/2025
  • 🚀 New Added isLoading prop to display skeleton loaders while data is being fetched
  • 🚀 New New CSS variable --st-loading-skeleton-bg-color for customizing skeleton appearance
  • 🚀 New New st-loading-skeleton CSS class for advanced styling customization
  • Improved Enhanced pagination demo to showcase loading states during page transitions

1.7.0

11/13/2025
  • 🚀 New Added server-side pagination support with new props: onPageChange, serverSidePagination, and totalRowCount
  • 🚀 New Enable cell selection using keyboard shortcuts (Shift + Arrow keys, Ctrl/Cmd + A, etc.)
  • Improved Improved cell selection while scrolling for a smoother experience
  • Improved Pagination now shows overflow visible when no height is specified, eliminating unnecessary scrolling

1.6.7

11/09/2025
  • Improved Reduced bundle size for improved loading performance

1.6.6

11/09/2025
  • Improved Improved cell selection style for better visual feedback
  • Improved Enhanced scroll behavior while drag selecting cells

1.6.1

10/27/2025
  • Improved Enhanced footer pagination controls for better usability and performance

1.6.0

10/26/2025
  • 🐛 Fix Fixed row numbers calculation with pagination

1.5.6

10/26/2025
  • 🚀 New Added filterIcon prop to customize the column filter icon

1.5.5

10/25/2025
  • 🚀 New Added footerRenderer prop to completely customize table footer UI

1.5.1

10/19/2025
  • 🚀 New Export table data to CSV using tableRef.current?.exportToCSV()

1.5.0

10/19/2025
  • 🚀 New Pinned columns have limited width on mobile devices for better mobile UX
  • 🚀 New Pinned columns can now scroll horizontally on mobile devices
  • Improved Enhanced touch target sizes for better mobile interaction

1.4.7

10/18/2025
  • Improved Improved color contrast and readability across all themes
  • Improved Enhanced styling flags for better visual customization

1.4.4

10/15/2025
  • 🚀 New collapsible columns new ShowWhen attribute: "parentCollapsed" | "parentExpanded" | "always"
  • 💥 Breaking Removed summaryColumn attribute (replaced by showWhen)

View full release notes and download packages: