diff --git a/.changeset/annotation-stacked-point.md b/.changeset/annotation-stacked-point.md deleted file mode 100644 index 44cfb936c..000000000 --- a/.changeset/annotation-stacked-point.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'layerchart': minor ---- - -feat(AnnotationPoint|AnnotationLine|AnnotationRange): Support `seriesKey` prop to associate an annotation with a series, positioning points and lines on its stacked segment diff --git a/.changeset/bar-style-accessors.md b/.changeset/bar-style-accessors.md deleted file mode 100644 index 0fd48737a..000000000 --- a/.changeset/bar-style-accessors.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'layerchart': minor ---- - -feat(Bar|Bars): Accept a per-row accessor for `fillOpacity`, `strokeWidth`, and `opacity`, matching `Rect` and `Circle` diff --git a/.changeset/brush-component.md b/.changeset/brush-component.md deleted file mode 100644 index 9eea1f2de..000000000 --- a/.changeset/brush-component.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'layerchart': minor ---- - -feat: New Brush component to manually position, useful for multiple / independent brushes (ex. parallel coordinates). Also includes new `brushable` attachment and `brushGesture` handler for even more granular control of `BrushState` diff --git a/.changeset/brush-context-dblclick-clear.md b/.changeset/brush-context-dblclick-clear.md deleted file mode 100644 index 20daa5d56..000000000 --- a/.changeset/brush-context-dblclick-clear.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'layerchart': patch ---- - -fix(BrushContext): Fix clearing on double-clicking the selection (root select-all was immediately undoing) diff --git a/.changeset/chart-group.md b/.changeset/chart-group.md deleted file mode 100644 index 4c14121ff..000000000 --- a/.changeset/chart-group.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'layerchart': minor ---- - -feat(ChartGroup): Add `` and `ChartGroupState` to synchronize the tooltip/highlight, brush selection, zoom domain, and series highlight/visibility across charts diff --git a/.changeset/chart-id.md b/.changeset/chart-id.md deleted file mode 100644 index c905b65af..000000000 --- a/.changeset/chart-id.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'layerchart': minor ---- - -feat(Chart): Add `id` prop, applied to the root element and identifying the chart within a `ChartGroup` diff --git a/.changeset/cscale-series-colors.md b/.changeset/cscale-series-colors.md deleted file mode 100644 index 29a60e4c1..000000000 --- a/.changeset/cscale-series-colors.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'layerchart': minor ---- - -feat(Chart): Default the color scale to the colors declared on `series`, so marks match their legend swatch diff --git a/.changeset/facets.md b/.changeset/facets.md deleted file mode 100644 index 166c33964..000000000 --- a/.changeset/facets.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'layerchart': minor ---- - -feat(Chart): Add `fx` / `fy` faceting, drawing the chart once per distinct value into a grid of panels that share the position scales diff --git a/.changeset/legend-c-scale.md b/.changeset/legend-c-scale.md deleted file mode 100644 index 54e356c6b..000000000 --- a/.changeset/legend-c-scale.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'layerchart': minor ---- - -feat(Legend): Support ordinal `c` scale similar to `series` including highlight and filter capability. An ordinal scale now draws labelled swatches rather than a color ramp — pass `variant="ramp"` for the old appearance diff --git a/.changeset/pie-chart-grid.md b/.changeset/pie-chart-grid.md deleted file mode 100644 index a2fea9228..000000000 --- a/.changeset/pie-chart-grid.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'layerchart': patch ---- - -fix(PieChart): Stop drawing a cartesian grid behind the arcs when using `series` diff --git a/.changeset/rect-ref-pointerdown.md b/.changeset/rect-ref-pointerdown.md deleted file mode 100644 index fe2799c0d..000000000 --- a/.changeset/rect-ref-pointerdown.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'layerchart': minor ---- - -feat(Rect): Support `ref` in html layers and forward `pointerdown` in canvas layers diff --git a/.changeset/series-layout-auto.md b/.changeset/series-layout-auto.md deleted file mode 100644 index 4460b4266..000000000 --- a/.changeset/series-layout-auto.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'layerchart': minor ---- - -feat(Chart): Add `seriesLayout="auto"` (default) with automatic stacking when applicable (ex. Area, Bars). Can still pass explicit `seriesLayout` (ex. `overlap`, `group`, `stack`) when needed diff --git a/.changeset/spline-area-class-prop.md b/.changeset/spline-area-class-prop.md deleted file mode 100644 index fda7ff4b7..000000000 --- a/.changeset/spline-area-class-prop.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'layerchart': minor ---- - -feat(Spline|Area): Resolve `stroke`, `fill`, `opacity`, and `class` per line/area (and segment). A string naming a data property now resolves through the chart's color scale, like other primitives (ex. `Circle`) diff --git a/.changeset/spline-area-z.md b/.changeset/spline-area-z.md deleted file mode 100644 index 58cf01187..000000000 --- a/.changeset/spline-area-z.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'layerchart': minor ---- - -feat(Spline|Area): Add `z` accessor to draw one line/area per distinct value, defaulting to `stroke` / `fill` / `c` diff --git a/.changeset/spline-stack.md b/.changeset/spline-stack.md deleted file mode 100644 index e6f39e47e..000000000 --- a/.changeset/spline-stack.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'layerchart': minor ---- - -feat(Spline): Support `seriesKey` prop to follow that series' stacked top diff --git a/.changeset/stack-groups.md b/.changeset/stack-groups.md deleted file mode 100644 index 659aa2360..000000000 --- a/.changeset/stack-groups.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'layerchart': patch ---- - -fix(Chart): Stack each `x1` sub-band separately, so grouped-and-stacked bars no longer share one running total diff --git a/.changeset/tooltip-show-value.md b/.changeset/tooltip-show-value.md deleted file mode 100644 index a787d594d..000000000 --- a/.changeset/tooltip-show-value.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'layerchart': minor ---- - -feat(Tooltip): Add `tooltip.show({ point, value, data })` to control tooltip programmatically (buttons, keyboard events, etc.) diff --git a/.changeset/transform-initial-domain.md b/.changeset/transform-initial-domain.md deleted file mode 100644 index adee33813..000000000 --- a/.changeset/transform-initial-domain.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'layerchart': minor ---- - -feat(Chart): Add `transform.initialDomain` to open a chart zoomed to a range diff --git a/.changeset/zoom-to-brush.md b/.changeset/zoom-to-brush.md deleted file mode 100644 index d48a2478a..000000000 --- a/.changeset/zoom-to-brush.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'layerchart': patch ---- - -fix(Chart): Apply `zoomToBrush()` when called before the chart mounts or when the scale clamps to `scaleExtent` diff --git a/packages/layerchart/CHANGELOG.md b/packages/layerchart/CHANGELOG.md index aa86e73c1..9c94ae08e 100644 --- a/packages/layerchart/CHANGELOG.md +++ b/packages/layerchart/CHANGELOG.md @@ -1,5 +1,49 @@ # LayerChart +## 2.3.0 + +### Minor Changes + +- feat(ChartGroup): Add `` and `ChartGroupState` to synchronize the tooltip/highlight, brush selection, zoom domain, and series highlight/visibility across charts ([#901](https://github.com/techniq/layerchart/pull/901)) + +- feat(Chart): Add `fx` / `fy` faceting, drawing the chart once per distinct value into a grid of panels that share the position scales ([#901](https://github.com/techniq/layerchart/pull/901)) + +- feat(Chart): Add `seriesLayout="auto"` (default) with automatic stacking when applicable (ex. Area, Bars). Can still pass explicit `seriesLayout` (ex. `overlap`, `group`, `stack`) when needed ([#901](https://github.com/techniq/layerchart/pull/901)) + +- feat(Bar|Bars): Accept a per-row accessor for `fillOpacity`, `strokeWidth`, and `opacity`, matching `Rect` and `Circle` ([#901](https://github.com/techniq/layerchart/pull/901)) + +- feat(Spline|Area): Resolve `stroke`, `fill`, `opacity`, and `class` per line/area (and segment). A string naming a data property now resolves through the chart's color scale, like other primitives (ex. `Circle`) ([#901](https://github.com/techniq/layerchart/pull/901)) + +- feat(Chart): Default the color scale to the colors declared on `series`, so marks match their legend swatch ([#901](https://github.com/techniq/layerchart/pull/901)) + +- feat(Legend): Support ordinal `c` scale similar to `series` including highlight and filter capability. An ordinal scale now draws labelled swatches rather than a color ramp — pass `variant="ramp"` for the old appearance ([#901](https://github.com/techniq/layerchart/pull/901)) + +- feat(Tooltip): Add `tooltip.show({ point, value, data })` to control tooltip programmatically (buttons, keyboard events, etc.) ([#901](https://github.com/techniq/layerchart/pull/901)) + +- feat: New Brush component to manually position, useful for multiple / independent brushes (ex. parallel coordinates). Also includes new `brushable` attachment and `brushGesture` handler for even more granular control of `BrushState` ([#901](https://github.com/techniq/layerchart/pull/901)) + +- feat(AnnotationPoint|AnnotationLine|AnnotationRange): Support `seriesKey` prop to associate an annotation with a series, positioning points and lines on its stacked segment ([#901](https://github.com/techniq/layerchart/pull/901)) + +- feat(Chart): Add `id` prop, applied to the root element and identifying the chart within a `ChartGroup` ([#901](https://github.com/techniq/layerchart/pull/901)) + +- feat(Rect): Support `ref` in html layers and forward `pointerdown` in canvas layers ([#901](https://github.com/techniq/layerchart/pull/901)) + +- feat(Spline|Area): Add `z` accessor to draw one line/area per distinct value, defaulting to `stroke` / `fill` / `c` ([#901](https://github.com/techniq/layerchart/pull/901)) + +- feat(Spline): Support `seriesKey` prop to follow that series' stacked top ([#901](https://github.com/techniq/layerchart/pull/901)) + +- feat(Chart): Add `transform.initialDomain` to open a chart zoomed to a range ([#901](https://github.com/techniq/layerchart/pull/901)) + +### Patch Changes + +- fix(BrushContext): Fix clearing on double-clicking the selection (root select-all was immediately undoing) ([#901](https://github.com/techniq/layerchart/pull/901)) + +- fix(PieChart): Stop drawing a cartesian grid behind the arcs when using `series` ([#901](https://github.com/techniq/layerchart/pull/901)) + +- fix(Chart): Stack each `x1` sub-band separately, so grouped-and-stacked bars no longer share one running total ([#901](https://github.com/techniq/layerchart/pull/901)) + +- fix(Chart): Apply `zoomToBrush()` when called before the chart mounts or when the scale clamps to `scaleExtent` ([#901](https://github.com/techniq/layerchart/pull/901)) + ## 2.2.0 ### Minor Changes diff --git a/packages/layerchart/package.json b/packages/layerchart/package.json index 784008824..db4bbe3aa 100644 --- a/packages/layerchart/package.json +++ b/packages/layerchart/package.json @@ -5,7 +5,7 @@ "license": "MIT", "repository": "techniq/layerchart", "homepage": "https://layerchart.com", - "version": "2.2.0", + "version": "2.3.0", "scripts": { "dev": "pnpm package:watch", "build": "svelte-package",