From 63d1f69a9f03caf620ce071e143ac0e6e9b14e51 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 27 Aug 2026 12:28:06 +0000 Subject: [PATCH 1/2] RELEASING: Releasing 1 package(s) Releases: ibcs-react@1.3.0 [skip ci] --- .changeset/live-data-glides.md | 5 ----- .changeset/structure-config-category.md | 5 ----- CHANGELOG.md | 10 ++++++++++ package.json | 2 +- 4 files changed, 11 insertions(+), 11 deletions(-) delete mode 100644 .changeset/live-data-glides.md delete mode 100644 .changeset/structure-config-category.md diff --git a/.changeset/live-data-glides.md b/.changeset/live-data-glides.md deleted file mode 100644 index 0b91860..0000000 --- a/.changeset/live-data-glides.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"ibcs-react": minor ---- - -Charts glide between live-data ticks instead of re-entering from zero. The entrance animation used to replay on every data change, so a chart on a `useLiveData` feed (or any polling source) collapsed to the baseline and re-grew on each tick. Value-only updates now tween: every chart runs its rows through the new `useDataTween` hook — exported for custom charts — which interpolates numeric leaves from the currently displayed frame to the new values while the layout recomputes each frame, so bars move from their previous heights, scales stretch smoothly and variance pins slide. Retargeting mid-flight continues from what is on screen, reduced motion jumps straight to the target, and SSR still renders finished geometry. The entrance now replays only when the data genuinely changes shape — rows added or removed, categories renamed — which is also the new meaning of `useMountGrow`'s replay key: its structural signature ignores numbers. diff --git a/.changeset/structure-config-category.md b/.changeset/structure-config-category.md deleted file mode 100644 index b2b9530..0000000 --- a/.changeset/structure-config-category.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -"ibcs-react": patch ---- - -Config-driven structure charts accept `category`-keyed rows. `StructureDatum` made `category` the preferred name key (with `label` as a permanent alias), and the chart resolves it — but `validateChartConfig` still demanded `label`, so the same data a mounted `` rendered fine failed inside `ConfiguredChart` and `Report` with "data[0].label must be a string." The validator now applies the datum contract (`category` preferred, `label` accepted, `category` wins when both are present) and its error speaks the preferred vocabulary: `data[0].category must be a string.` diff --git a/CHANGELOG.md b/CHANGELOG.md index dda839d..301df1b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,15 @@ # Changelog +## 1.3.0 + +### Minor Changes + +- 1085752: Charts glide between live-data ticks instead of re-entering from zero. The entrance animation used to replay on every data change, so a chart on a `useLiveData` feed (or any polling source) collapsed to the baseline and re-grew on each tick. Value-only updates now tween: every chart runs its rows through the new `useDataTween` hook — exported for custom charts — which interpolates numeric leaves from the currently displayed frame to the new values while the layout recomputes each frame, so bars move from their previous heights, scales stretch smoothly and variance pins slide. Retargeting mid-flight continues from what is on screen, reduced motion jumps straight to the target, and SSR still renders finished geometry. The entrance now replays only when the data genuinely changes shape — rows added or removed, categories renamed — which is also the new meaning of `useMountGrow`'s replay key: its structural signature ignores numbers. + +### Patch Changes + +- 03d6a9e: Config-driven structure charts accept `category`-keyed rows. `StructureDatum` made `category` the preferred name key (with `label` as a permanent alias), and the chart resolves it — but `validateChartConfig` still demanded `label`, so the same data a mounted `` rendered fine failed inside `ConfiguredChart` and `Report` with "data[0].label must be a string." The validator now applies the datum contract (`category` preferred, `label` accepted, `category` wins when both are present) and its error speaks the preferred vocabulary: `data[0].category must be a string.` + ## 1.2.0 ### Minor Changes diff --git a/package.json b/package.json index 6d0f1a4..f41dd61 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ibcs-react", - "version": "1.2.0", + "version": "1.3.0", "description": "IBCS / ISO 24896:2026 business reporting components for React: statement tables, variance and waterfall charts, KPI cards and a conformance linter. One data model, many views.", "keywords": [ "actual-vs-budget", From 704cb520f0a9c97d097f359e88a71873bbbd90a3 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 27 Aug 2026 12:28:08 +0000 Subject: [PATCH 2/2] chore: version packages --- package-lock.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index 112b2cd..2ce7ea8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "ibcs-react", - "version": "1.2.0", + "version": "1.3.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "ibcs-react", - "version": "1.2.0", + "version": "1.3.0", "license": "MIT", "devDependencies": { "@changesets/cli": "^2.31.0",