# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

## [1.0.0] - 2026-02-13

### Added

- Initial release of canvas-table as an NPM package
- High-performance canvas-based table rendering engine
- Vue 3 component (`DataGrid`) with full TypeScript support
- **Cell Viewers**: 20+ built-in cell viewer types
  - Text, Select, Image, Person, Progress, Datetime, Boolean, Status
  - GroupHeader, SeparatorRow, NestedGrid, Punch, Hyperlink, File
  - TaskNode, Module, TextWithSwitcher, Upstream, TableActionButton
- **Viewer Registry**: Centralized viewer registration and management system
- **Grouped Tables**: Multi-level grouping with collapsible group headers
- **Nested Grids**: Support for nested table within cells
- **Virtual Scrolling**: Efficient rendering for large datasets
- **Column Features**: Resizing, reordering, fixed columns, multi-level headers
- **Row Features**: Row selection, drag reorder, row height customization
- **Cell Features**: Cell editing, validation, clipboard (copy/paste/clear), autofill
- **Theming**: Light/dark theme support with custom style registration
- **Striped Rows**: Optional row striping for visual clarity
- **Loading State**: Cell-level loading indicators with timeout support
- **GIF Support**: Animated GIF rendering in cells
- **Image Management**: Async image loading with caching
- **Keyboard Navigation**: Full keyboard support for cell navigation
- **Event System**: Rich event API for cell clicks, edits, selections, etc.
- Complete TypeScript type definitions for all public APIs
- Comprehensive export of types, viewers, utilities, and constants
