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
66 changes: 0 additions & 66 deletions .changeset/components-sp3-inputs.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.18.0

## 0.17.0

## 0.16.0
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.17.0",
"version": "0.18.0",
"description": "Framework-agnostic grid state primitives for Pretable.",
"license": "MIT",
"repository": {
Expand Down
72 changes: 72 additions & 0 deletions packages/react/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,77 @@
# @pretable/react

## 0.18.0

### Minor Changes

- The kit's field and its checkbox, and the fourteen controls in the grid rebuilt ([#585](https://github.com/cacheplane/pretable/pull/585))
on them.

`PretableTextInput` is an `<input>` and `PretableCheckbox` a
`button[role="checkbox"]`, with `PretableTextInputProps`,
`PretableCheckboxProps`, `PretableTextInputComponent` and
`PretableCheckboxComponent` alongside them and `TextInput` and `Checkbox` slots
on `PretableComponents` — `components={{ TextInput, Checkbox }}` on
`<PretableSurface>` and `<Pretable>` replaces the grid's seven chrome text
fields and all seven of its checkboxes, the same way `Button`, `IconButton` and
`Select` already do. The fields are the filter dialog's value and its two range
bounds, the tool panel's three filter-row values, and the Columns search box;
the checkboxes are row select, header select-all, the boolean cell, the column
visibility toggle, "hide grouped columns", and the two enum checklists.

**`PretableButtonSite` is now `PretableSite`, and `PretableBuiltInButtonSite` is
`PretableBuiltInSite`.** The type names where any kit control sits, not where a
button does, and a field and a checkbox have sites too. The union gains ten
names: `filter-value`, `filter-row-value`, `tool-search`, `row-select`,
`row-select-all`, `bool-cell`, `tool-column-toggle`, `hide-grouped`,
`filter-choice` and `filter-row-choice`.

**Three checkboxes are no longer `<input type="checkbox">`.** The filter
dialog's enum checklist, the tool panel's filter-builder enum checklist and the
"hide grouped columns" switch are now `button[role="checkbox"]` carrying
`aria-checked`. A test keyed on `.checked`, on Playwright's `.check()` or on an
`input[type=checkbox]` selector must read `aria-checked` and click the button
instead; `toBeChecked()` still works, because it reads the ARIA state.

**A listbox option is marked `data-pretable-option-value`, not `data-value`.**
The select's open list is the one place where an attribute a consumer could
already have written against `0.17.0` has been renamed: a selector like
`[data-pretable-option][data-value="open"]` now matches nothing, and must read
`data-pretable-option-value` instead. (This branch's own end-to-end suite broke
on exactly that selector.) The new name says which option an element **is**, as
against the select trigger's `data-pretable-value`, which is what that picker
has committed.

**Attributes.** Every kit field carries `data-pretable-text-input` and every kit
checkbox `data-pretable-checkbox`, and each site keeps the `data-pretable-*`
attribute it already had. The two enum checklists gain
`data-pretable-filter-choice` and `data-pretable-filter-row-choice`, and each
choice carries `data-pretable-option-value` too. The filter builder's checklist
_wrapper_ is now `data-pretable-filter-row-set` — the field alongside it keeps
`data-pretable-filter-row-value`, which the wrapper used to borrow.

**Look.** The three ex-native checkboxes become the kit's 16px square drawn from
the `--pretable-checkbox-*` tokens, in place of the browser's ~13px default. The
Columns search box and every kit checkbox now take the product focus ring
instead of the user agent's — visibly on the header select-all and the column
visibility toggle, and on row select and the boolean cell too, though both are
`tabIndex={-1}` and so out of a `Tab`'s reach. Nothing else moves: the seven
fields and the four checkboxes that were already buttons keep their boxes, their
element type and their spacing exactly.

**Behaviour.** A kit checkbox's keyboard is the native button's — Space and
Enter both activate. A consumer `onClick` runs before the toggle and may
`preventDefault()` to veto it, which is how a shift-click range select keeps its
click without a second write. `checked` accepts `"mixed"` for the header
select-all's partial selection; it renders the minus glyph and toggles to
`true`.

### Patch Changes

- Updated dependencies [[`8ce28ca`](https://github.com/cacheplane/pretable/commit/8ce28cacbfbd6af279faeaf592b39d2490b9890a)]:
- @pretable/ui@0.18.0
- @pretable/core@0.18.0

## 0.17.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.17.0",
"version": "0.18.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.18.0

## 0.17.0

## 0.16.0
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.17.0",
"version": "0.18.0",
"description": "Streaming row adapters for Pretable.",
"license": "MIT",
"repository": {
Expand Down
66 changes: 66 additions & 0 deletions packages/ui/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,71 @@
# @pretable/ui

## 0.18.0

### Patch Changes

- The kit's field and its checkbox, and the fourteen controls in the grid rebuilt ([#585](https://github.com/cacheplane/pretable/pull/585))
on them.

`PretableTextInput` is an `<input>` and `PretableCheckbox` a
`button[role="checkbox"]`, with `PretableTextInputProps`,
`PretableCheckboxProps`, `PretableTextInputComponent` and
`PretableCheckboxComponent` alongside them and `TextInput` and `Checkbox` slots
on `PretableComponents` — `components={{ TextInput, Checkbox }}` on
`<PretableSurface>` and `<Pretable>` replaces the grid's seven chrome text
fields and all seven of its checkboxes, the same way `Button`, `IconButton` and
`Select` already do. The fields are the filter dialog's value and its two range
bounds, the tool panel's three filter-row values, and the Columns search box;
the checkboxes are row select, header select-all, the boolean cell, the column
visibility toggle, "hide grouped columns", and the two enum checklists.

**`PretableButtonSite` is now `PretableSite`, and `PretableBuiltInButtonSite` is
`PretableBuiltInSite`.** The type names where any kit control sits, not where a
button does, and a field and a checkbox have sites too. The union gains ten
names: `filter-value`, `filter-row-value`, `tool-search`, `row-select`,
`row-select-all`, `bool-cell`, `tool-column-toggle`, `hide-grouped`,
`filter-choice` and `filter-row-choice`.

**Three checkboxes are no longer `<input type="checkbox">`.** The filter
dialog's enum checklist, the tool panel's filter-builder enum checklist and the
"hide grouped columns" switch are now `button[role="checkbox"]` carrying
`aria-checked`. A test keyed on `.checked`, on Playwright's `.check()` or on an
`input[type=checkbox]` selector must read `aria-checked` and click the button
instead; `toBeChecked()` still works, because it reads the ARIA state.

**A listbox option is marked `data-pretable-option-value`, not `data-value`.**
The select's open list is the one place where an attribute a consumer could
already have written against `0.17.0` has been renamed: a selector like
`[data-pretable-option][data-value="open"]` now matches nothing, and must read
`data-pretable-option-value` instead. (This branch's own end-to-end suite broke
on exactly that selector.) The new name says which option an element **is**, as
against the select trigger's `data-pretable-value`, which is what that picker
has committed.

**Attributes.** Every kit field carries `data-pretable-text-input` and every kit
checkbox `data-pretable-checkbox`, and each site keeps the `data-pretable-*`
attribute it already had. The two enum checklists gain
`data-pretable-filter-choice` and `data-pretable-filter-row-choice`, and each
choice carries `data-pretable-option-value` too. The filter builder's checklist
_wrapper_ is now `data-pretable-filter-row-set` — the field alongside it keeps
`data-pretable-filter-row-value`, which the wrapper used to borrow.

**Look.** The three ex-native checkboxes become the kit's 16px square drawn from
the `--pretable-checkbox-*` tokens, in place of the browser's ~13px default. The
Columns search box and every kit checkbox now take the product focus ring
instead of the user agent's — visibly on the header select-all and the column
visibility toggle, and on row select and the boolean cell too, though both are
`tabIndex={-1}` and so out of a `Tab`'s reach. Nothing else moves: the seven
fields and the four checkboxes that were already buttons keep their boxes, their
element type and their spacing exactly.

**Behaviour.** A kit checkbox's keyboard is the native button's — Space and
Enter both activate. A consumer `onClick` runs before the toggle and may
`preventDefault()` to veto it, which is how a shift-click range select keeps its
click without a second write. `checked` accepts `"mixed"` for the header
select-all's partial selection; it renders the minus glyph and toggles to
`true`.

## 0.17.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.17.0",
"version": "0.18.0",
"description": "CSS themes, tokens, and grid styles for Pretable.",
"license": "MIT",
"repository": {
Expand Down