- Observe miniTableRef instead of container to detect actual height changes
- Track height changes and skip re-probing when height unchanged
- Add IntersectionObserver to detach ResizeObserver for off-screen tables
- Add display:none (via .is-hidden class) for off-screen mini-tables
- Re-attach and remeasure when table becomes visible
Performance improvements:
- Window resize is now smooth with 14 tables on demo page
- Off-screen tables have no ResizeObserver overhead
- Mini-tables are fully removed from layout when off-screen
Also:
- Add oxlint as linting tool (replaces vue-cli-service lint)
- Add oxlintrc.json configuration
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Refactor mini-table to use useTemplateRef for better Vue 3 compatibility
- Add conditional wrapper for mini-table rows container
- Add debug info display for row/header height estimation
- Fix md5 import to use named export in router
- Fix loading state bug in getUser callback
- Add @types/js-md5 dev dependency
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add cellRenderer and headerCellRenderer to ListTableColumn interface
- Use functional components (MiniTableCell, MiniTableHeader) to render VNodes properly in mini-table
- Add ts-pattern dependency for type-safe pattern matching
- Fix mini-table CSS to match el-table-v2 cell rendering for accurate height measurement:
- Add font-size: var(--el-font-size-base)
- Change flex-direction to row, align-items to center
- Add padding: 4px to mini-cell
- Add justify-content: center to mini-header-cell
- Document Vue 3 template VNode rendering pattern in quality-guidelines
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add Vue JSX support via @vitejs/plugin-vue-jsx
- Configure tsconfig for Vue JSX (jsx: preserve, jsxImportSource: vue)
- Add TzDateTime component integration for timestamp columns
- Support flexible timestamp type: undefined | boolean | string | object
- Add rowHeight and estimatedRowHeight props
- Replace previous column attribute `code` with `key` and `dataKey` (`key` for slot/display, `dataKey` for data access)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Update bun.lock and package.json dependencies
- Add task directory for list-table-v2
- Update AGENTS.md with gitnexus index stats
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>