Skip to content

feat(qwik-ui): add TableGrid component#91

Draft
Copilot wants to merge 2 commits into
mainfrom
copilot/add-tablegrid-component
Draft

feat(qwik-ui): add TableGrid component#91
Copilot wants to merge 2 commits into
mainfrom
copilot/add-tablegrid-component

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Mar 17, 2026

Adds a TableGrid component to qwik-ui — a spreadsheet-like data grid with inline editing, keyboard navigation, sortable columns, and column resizing.

Component API

<TableGrid
  columns={[
    { key: 'name', header: 'Name', width: 180, sortable: true, editable: true, type: 'text' },
    { key: 'salary', header: 'Salary', width: 110, sortable: true, editable: true, type: 'number' },
  ]}
  rows={employees}
  rowNumbers
  stickyHeader
  loading={loadingSignal}
  selectedRowIndex={selectedRowSignal}
  onCellChange$={$((originalRowIndex, key, value) => { /* ... */ })}
  onSort$={$((sort) => { /* sort.key, sort.direction */ })}
/>

Key behaviors

  • Editing — double-click or second-click on an active editable cell; Enter commits and advances to next row, Tab/Shift-Tab moves across columns (wrapping to next/prev row), Escape cancels; typing any printable key on a selected cell starts editing with that character
  • Keyboard navigation — arrow keys move the active cell; Enter/F2 enters edit mode
  • Sort — click header to cycle asc → desc → off; chevron indicator shows current direction
  • Column resize — drag the right edge of any header cell
  • onCellChange$ — always receives the original source-array index, not the sorted position
  • Exports: TableGrid, TableGridColumn, TableGridSort, TableGridProps

Screenshot

TableGrid

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • cdn.jsdelivr.net
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/.cache/pnpm/dlx/9f9e8dc00740105316c83376d350a164862a4d9359e04840a2907ff0aa65131f/19cfbd81321-1282/node_modules/.bin/../.pnpm/@inlang&#43;paraglide-js@2.15.0/node_modules/@inlang/paraglide-js/bin/run.js compile --project ./project.inlang --outdir ./src/paraglide (dns block)
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/public/public/qwik-ui/node_modules/.bin/../vite/bin/vite.js build --mode lib get --global ndor/bin/git credential.helpesed (dns block)
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/public/public/qwik-ui/node_modules/.bin/../vite/bin/vite.js --mode ssr --port 5175 --global /home/REDACTED/.config/composer/veDROP pull.rebase (dns block)
  • eu.posthog.com
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/.cache/pnpm/dlx/9f9e8dc00740105316c83376d350a164862a4d9359e04840a2907ff0aa65131f/19cfbd81321-1282/node_modules/.bin/../.pnpm/@inlang&#43;paraglide-js@2.15.0/node_modules/@inlang/paraglide-js/bin/run.js compile --project ./project.inlang --outdir ./src/paraglide (dns block)
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/public/public/qwik-ui/node_modules/.bin/../vite/bin/vite.js build --mode lib get --global ndor/bin/git credential.helpesed (dns block)
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/public/public/qwik-ui/node_modules/.bin/../vite/bin/vite.js --mode ssr --port 5175 --global /home/REDACTED/.config/composer/veDROP pull.rebase (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

Create a TableGrid component that is a flexible grid that feels like an excel spreadsheet. This goes into qwik-ui.


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Co-authored-by: erikrj <365211+erikrj@users.noreply.github.com>
Copilot AI changed the title [WIP] Add TableGrid component for flexible grid layout feat(qwik-ui): add TableGrid component Mar 17, 2026
Copilot AI requested a review from erikrj March 17, 2026 12:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants