Skip to content

v0.4.0 — DX Improvements

Choose a tag to compare

@zvndev zvndev released this 15 May 05:21
· 128 commits to main since this release

What's New

Column Presets

Zero-boilerplate factory functions for the most common column patterns:

  • selectColumn() — checkbox selection with indeterminate header state
  • rowNumberColumn() — row index display
  • actionsColumn({ actions }) — per-row action buttons with icon/label/hide/disable
  • expandColumn() — expand/collapse toggle for detail panels and tree data

Cell Layout Primitives

Compose rich cell content without manual CSS:

  • CellStack — vertical layout (primary text + subtitle)
  • CellRow — horizontal layout with align/justify
  • CellWithIcon — icon + content
  • CellText — styled text with variant/size/truncate/bold

Developer Experience

  • defaultColumnDef — set table-level column defaults (enableSorting, size, etc.)
  • YableProvider — React context for project-wide table config
  • mergeEditChanges() — one-liner to apply onEditCommit changes
  • useTablePersistence() — localStorage persistence with debounce, versioning, SSR safety
  • Editable inference — columns with editConfig are automatically editable
  • cellStyle prop — inline styles on column definitions
  • cellClassName fix — was defined in types but never applied to cells

Documentation

  • Cell types guide documenting all 9 built-in cellType values
  • Floating filters guide
  • Column presets guide
  • Fixed quickstart sorting contradiction

Bug Fixes

  • Column resize handle no longer triggers column reorder drag
  • cellClassName now properly renders on <td> elements

Install

npm install @zvndev/yable-core@0.4.0 @zvndev/yable-react@0.4.0 @zvndev/yable-themes@0.4.0

Full Changelog: v0.3.0...v0.4.0