Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 0 additions & 44 deletions .changeset/components-sp2-select.md

This file was deleted.

2 changes: 2 additions & 0 deletions packages/core/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# @pretable/core

## 0.17.0

## 0.16.0

## 0.15.3
Expand Down
2 changes: 1 addition & 1 deletion packages/core/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@pretable/core",
"version": "0.16.0",
"version": "0.17.0",
"description": "Framework-agnostic grid state primitives for Pretable.",
"license": "MIT",
"repository": {
Expand Down
50 changes: 50 additions & 0 deletions packages/react/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,55 @@
# @pretable/react

## 0.17.0

### Minor Changes

- The kit's picker, and the four `<select>` elements in the grid rebuilt on it. ([#582](https://github.com/cacheplane/pretable/pull/582))

`PretableSelect` is a `button[role="combobox"]` that opens a portalled listbox,
with `PretableSelectProps`, `PretableSelectOption` and `PretableSelectComponent`
alongside it and a `Select` slot on `PretableComponents` —
`components={{ Select }}` on `<PretableSurface>` and `<Pretable>` replaces every
picker in the grid, the same way `Button` and `IconButton` already do.
`PretableBuiltInButtonSite` gains four names: `filter-operator`,
`filter-row-column`, `filter-row-operator` and `aggregate`.

**The four pickers are no longer `<select>` elements.** The filter dialog's
operator, the tool panel's filter column and filter operator, and the grouping
aggregate picker are now `button[role="combobox"]` triggers carrying
`data-pretable-value`, which open a `[data-pretable-listbox]` of
`[data-pretable-option][data-value]` in `document.body`. A test keyed on
`select`, on `.value`, on Playwright's `selectOption()` or on `toHaveValue()`
must read the attribute and click the option instead. Every site keeps the
`data-pretable-*` attribute it already had, and the aggregate picker gains
`data-pretable-aggregate`.

**Keyboard.** Arrows, Enter and Space open a closed picker; arrows wrap and skip
disabled options; Home and End jump to the ends; typing a prefix jumps to the
first match (the buffer clears after 500ms); Enter or Space commits; Escape
closes back to the trigger; Tab closes and moves on. `onChange` fires only when
the value actually changes. The trigger is an explicit tab stop in every
browser, which the native control was not in WebKit.

A disabled option is shown, skipped and inert rather than hidden — that is the
aggregate picker's `Custom` entry, a consumer-written aggregator the grid
displays but never writes back.

**Styling.** The enum cell editor's list is now the kit list, so
`data-pretable-enum-listbox` and `data-pretable-enum-option` are gone, replaced
by `data-pretable-listbox` and `data-pretable-option` — plus `[data-active]` for
the roving highlight and `[aria-selected="true"]` for the current value. Tokens
are unchanged.

**Layout.** The tool panel's filter rows wrap less: a picker now sizes to its
own label, with an ellipsis, instead of to its longest option.

### Patch Changes

- Updated dependencies [[`2f4c6fc`](https://github.com/cacheplane/pretable/commit/2f4c6fc755ed510955fa918ac82cab4bbd8bf3c4)]:
- @pretable/ui@0.17.0
- @pretable/core@0.17.0

## 0.16.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/react/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@pretable/react",
"version": "0.16.0",
"version": "0.17.0",
"description": "React components and hooks for Pretable.",
"license": "MIT",
"repository": {
Expand Down
2 changes: 2 additions & 0 deletions packages/stream-adapter/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# @pretable/stream-adapter

## 0.17.0

## 0.16.0

## 0.15.3
Expand Down
2 changes: 1 addition & 1 deletion packages/stream-adapter/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@pretable/stream-adapter",
"version": "0.16.0",
"version": "0.17.0",
"description": "Streaming row adapters for Pretable.",
"license": "MIT",
"repository": {
Expand Down
44 changes: 44 additions & 0 deletions packages/ui/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,49 @@
# @pretable/ui

## 0.17.0

### Patch Changes

- The kit's picker, and the four `<select>` elements in the grid rebuilt on it. ([#582](https://github.com/cacheplane/pretable/pull/582))

`PretableSelect` is a `button[role="combobox"]` that opens a portalled listbox,
with `PretableSelectProps`, `PretableSelectOption` and `PretableSelectComponent`
alongside it and a `Select` slot on `PretableComponents` —
`components={{ Select }}` on `<PretableSurface>` and `<Pretable>` replaces every
picker in the grid, the same way `Button` and `IconButton` already do.
`PretableBuiltInButtonSite` gains four names: `filter-operator`,
`filter-row-column`, `filter-row-operator` and `aggregate`.

**The four pickers are no longer `<select>` elements.** The filter dialog's
operator, the tool panel's filter column and filter operator, and the grouping
aggregate picker are now `button[role="combobox"]` triggers carrying
`data-pretable-value`, which open a `[data-pretable-listbox]` of
`[data-pretable-option][data-value]` in `document.body`. A test keyed on
`select`, on `.value`, on Playwright's `selectOption()` or on `toHaveValue()`
must read the attribute and click the option instead. Every site keeps the
`data-pretable-*` attribute it already had, and the aggregate picker gains
`data-pretable-aggregate`.

**Keyboard.** Arrows, Enter and Space open a closed picker; arrows wrap and skip
disabled options; Home and End jump to the ends; typing a prefix jumps to the
first match (the buffer clears after 500ms); Enter or Space commits; Escape
closes back to the trigger; Tab closes and moves on. `onChange` fires only when
the value actually changes. The trigger is an explicit tab stop in every
browser, which the native control was not in WebKit.

A disabled option is shown, skipped and inert rather than hidden — that is the
aggregate picker's `Custom` entry, a consumer-written aggregator the grid
displays but never writes back.

**Styling.** The enum cell editor's list is now the kit list, so
`data-pretable-enum-listbox` and `data-pretable-enum-option` are gone, replaced
by `data-pretable-listbox` and `data-pretable-option` — plus `[data-active]` for
the roving highlight and `[aria-selected="true"]` for the current value. Tokens
are unchanged.

**Layout.** The tool panel's filter rows wrap less: a picker now sizes to its
own label, with an ellipsis, instead of to its longest option.

## 0.16.0

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/ui/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@pretable/ui",
"version": "0.16.0",
"version": "0.17.0",
"description": "CSS themes, tokens, and grid styles for Pretable.",
"license": "MIT",
"repository": {
Expand Down