Skip to content

Commit 07ccd74

Browse files
julien-fclaude
andcommitted
chore(release): 0.12.0
Bumps core/react/vue/solid/vanilla together for the initialViewState change (#20, #21). Also fixes a mislabeling bug from the 0.11.0 release commit (ed3a169): it renamed the 0.10.0 CHANGELOG section to 0.11.0 instead of promoting the real 0.11.0 content (group+sort auto-sync #17, log-range bucketing #18, pill styling fix) out of "Unreleased", leaving that content stuck under an "Unreleased" heading ever since even though it had already shipped. Restored: the 0.10.0-era content is relabeled back to 0.10.0, and the group+sort/log-range content now correctly reads 0.11.0. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
1 parent 0ff07b2 commit 07ccd74

6 files changed

Lines changed: 19 additions & 13 deletions

File tree

CHANGELOG.md

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,14 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
77

88
## [Unreleased]
99

10+
## [0.12.0] - 2026-08-28
11+
12+
### Changed
13+
14+
- **BREAKING (all four adapters):** `defaultVisibleColumns`/`defaultPageSize` construction options replaced by a single `initialViewState?: TableViewState` option, covering every view concern (visible columns, column order, sort, filters, grouping, page/pageSize, search) uniformly. `resetView`/`setViewState({})` now restore this value instead of clearing to empty — closing a gap where a construction-time sort/filter/group default had no equivalent option and was silently lost on every reset (#20). Grouping a column via `initialViewState.groupBy` with no matching `sorts` entry auto-inserts one (mirroring what interactive `group.toggle` already does), unless `view.groupBy` is passed explicitly to `setViewState` (which respects that view's own `sorts`, or lack of one, as given). `getViewState()`'s own default-omission check now compares every field against what a reset would actually restore, instead of an independent "is this field non-empty" rule — this also fixes a latent bug where `visibleCols` was compared against every column rather than the real construction default.
15+
16+
## [0.11.0] - 2026-08-21
17+
1018
### Added
1119

1220
- Grouping a column now auto-inserts a matching sort entry for it (ascending by default), so groups have a defined order right away instead of an arbitrary one (#17). The entry is an ordinary, user-removable/reversible sort — not tracked state — positioned after any earlier grouped columns' entries and before everything else, so multi-level nesting priority matches `groupBy`'s own order. Ungrouping does _not_ remove it (a deliberate scope cut); reordering an active group re-syncs its sort priority to match. `insertGroupSort`/`reorderGroupSorts` (core, internal — wired automatically by each adapter's `group.toggle`/`group.move`/`group.moveBy` actions, same as `toggleGroupBy`) are the two new primitives behind this.
@@ -27,9 +35,7 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
2735
- `bucketNumericRange`/`bucketDatePart` now return `null` for a missing (`null`/`undefined`) value instead of silently coercing it — `bucketNumericRange` previously read `Number(null) === 0`, merging "no value" into the same group as a real, confirmed `0`; `bucketDatePart` previously read `String(null) === "null"`, surfacing the literal text `"null"` as a group header. `bucketNumericRange` also now returns `null` (rather than `NaN`) for a non-numeric value, since `NaN` previously flowed through to a group key that stringified to the literal visible text `"NaN"`. `formatNumericRange`/`formatDatePart` each gained a 3rd `missingLabel = '(none)'` parameter rendered for that group (#18)
2836
- Solid/Vue: the merged group+sort active-bar pill rendered as two visually disconnected chips instead of one seamless pill — the sort-remove ×'s border-square-off relied on a `:first-of-type` selector that never matched, since `:first-of-type` counts by tag name and the pill's chip-body segment is itself a `<button>` and its actual first child. Replaced with an adjacent-sibling selector that targets the sort-remove × unambiguously. React was unaffected, since it applies the equivalent override as an inline style on that element directly rather than through a CSS selector.
2937

30-
## [Unreleased]
31-
32-
## [0.11.0] - 2026-08-21
38+
## [0.10.0] - 2026-08-21
3339

3440
### Added
3541

packages/core/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@vates/data-table-core",
3-
"version": "0.11.0",
3+
"version": "0.12.0",
44
"description": "Framework-agnostic core logic for data-table",
55
"license": "MIT",
66
"author": "Vates",

packages/react/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@vates/data-table-react",
3-
"version": "0.11.0",
3+
"version": "0.12.0",
44
"description": "React adapter for data-table",
55
"license": "MIT",
66
"author": "Vates",
@@ -63,7 +63,7 @@
6363
}
6464
],
6565
"dependencies": {
66-
"@vates/data-table-core": "^0.11.0"
66+
"@vates/data-table-core": "^0.12.0"
6767
},
6868
"peerDependencies": {
6969
"react": ">=18.0.0",

packages/solid/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@vates/data-table-solid",
3-
"version": "0.11.0",
3+
"version": "0.12.0",
44
"description": "Solid.js adapter for data-table",
55
"license": "MIT",
66
"author": "Vates",
@@ -64,7 +64,7 @@
6464
}
6565
],
6666
"dependencies": {
67-
"@vates/data-table-core": "^0.11.0"
67+
"@vates/data-table-core": "^0.12.0"
6868
},
6969
"peerDependencies": {
7070
"solid-js": ">=1.9.0"

packages/vanilla/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@vates/data-table-vanilla",
3-
"version": "0.11.0",
3+
"version": "0.12.0",
44
"description": "Vanilla JS adapter for data-table",
55
"license": "MIT",
66
"author": "Vates",
@@ -63,11 +63,11 @@
6363
}
6464
],
6565
"dependencies": {
66-
"@vates/data-table-core": "^0.11.0"
66+
"@vates/data-table-core": "^0.12.0"
6767
},
6868
"devDependencies": {
6969
"@size-limit/file": "^12.1.0",
70-
"@vates/data-table-solid": "^0.11.0",
70+
"@vates/data-table-solid": "^0.12.0",
7171
"jsdom": "^29.1.1",
7272
"size-limit": "^12.1.0",
7373
"solid-js": "^1.9.15",

packages/vue/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@vates/data-table-vue",
3-
"version": "0.11.0",
3+
"version": "0.12.0",
44
"description": "Vue 3 adapter for data-table",
55
"license": "MIT",
66
"author": "Vates",
@@ -65,7 +65,7 @@
6565
}
6666
],
6767
"dependencies": {
68-
"@vates/data-table-core": "^0.11.0"
68+
"@vates/data-table-core": "^0.12.0"
6969
},
7070
"peerDependencies": {
7171
"vue": ">=3.3.0"

0 commit comments

Comments
 (0)