💥 Breaking Changes
- [scale] Deprecate
rangeRound
field in the input ofscaleLinear()
,scaleLog()
,scalePoint()
,scalePower()
,scaleSqrt()
,scaleTime()
andscaleUtc()
. #766
Instead ofDo this insteadscaleLinear({ rangeRound: xxx })
scaleLinear({ range: xxx, round: true });
- [scale] Deprecate
ticks
andtickFormat
in the input ofscaleQuantize()
. It was not really doing anything anyway as bothscale.ticks()
andscale.tickFormat()
do not mutate the scale. #766 - [scale] Remove
scale.type
field that was attached to the d3 scales. #766 - [grid]
@vx/grid
components now accept D3 Scale as generic type instead ofScaleInput
. Developers should not expect to specify this generic type as it can be inferred from the passed scale. #775 - [grid] Renames
GridColumnProps
=>GridColumnsProps
(+s
) to matchGridRowsProps
. #787 - [legend] Update generic types for legend components. #777
- [marker] remove old
<Marker />
implementation of a Line and some Text. #783
🚀 Enhancements
- [scale] new functions & New fields for the scale configs. #766
- [scale] add meta scale types. #770
- [scale] Add fallback overload for createScale. #791
- [scale] add new types:
AnyD3Scale
,InferD3ScaleOutput
,InferD3ScaleDiscreteInput
,InferD3ScaleThresholdInput
andScaleInput
. Add new utilities functions:getTicks
,coerceNumber
andtoString
. #773 - [scale] add reverse field to scale config. This will reverse the range. Useful when the ranges are programmatically supplied to the scale factories such as in XYChart and developers want easy way to reverse the dynamic range. #780
- [legend] exports
@vx/legend
shapes from theindex
for convenience / non-deep imports. #772 - [grid] adds
children
prop toGridRows
+GridColumns
to support animated rendering. #787 - [shape] add
<BarRounded />
shape. #774 - [shape] Create new factory functions for
d3-shape
and export as part ofvx/shape
(arc
,area
,line
,pie
,radialLine
),
similar tovx/scale
has factories ford3-scale
. #776 - [shape] add
SplitLinePath
component to@vx/shape
that allows you to create a line path split into multiple smaller line paths that can be styled independently. #778 - [axis] consistent and compatible typings across
vx/scale
andvx/axis
. More fields passed to child render props ofAxis
. #773 - [axis]
Axis
is refactored to accept aticksComponent
which allows us to animate them. #779 - [axis] adds a third argument
values
totickFormat(value, index, values)
so that format logic can more easily leverage all ticks (becausenumTicks
is approximate, lib consumers do not know how many tick values exist a priori). #779 - [marker] add new
<Marker />
that matches actual SVG<marker>
. #783 - [marker] add
<MarkerArrow />
,<MarkerCross />
,<MarkerX />
,<MarkerCircle />
,<MarkerLine />
. #783 - [react-spring] adds a new package
@vx/react-spring
that includesreact-spring
as apeerDep
and can be a home for things that depend onreact-spring
. #779 - [react-spring] Adds an
<AnimatedAxis />
and<AnimatedTicksRender />
in@vx/react-spring
. #779 - [react-spring] updates the
vx-demo/axis
demo to use<AnimatedAxis />
. #779 - [react-spring] adds
AnimatedGridRows
+AnimatedGridColumns
. #787 - [react-spring] modularizes
AnimatedTicks/useAnimatedTicksConfig
tospring-configs/useAnimatedLineTransitionConfig
so it can power both animated tick + grid lines. #787 - [react-spring] adds
animationTrajectory=outside | inside | min | max
toAnimatedAxis
andAnimatedGridRows/Columns
. #787
🐛 Bug Fix
- [responsive] exclude
enableDebounceLeadingCall
prop being passed intodiv
. #763 - [responsive] fix prettier format. #764
- [text] fix warning for NaN or invalid values are passed as x or y. #790
📝 Documentation
- [scale] Improve documentation of the fields in scale configs. #766
🏠 Internal
- [scale] rewrite individual scale factory with composition of shared operators. This ensure order of operators and simplified code. #766
- [scale] add 100+ unit tests to make this
vx/scale
package has 100% test coverage. #766 - [stats] use updated @vx/scale types. #770
- [legend] extract defaultDomain helper. #777
- [demo] updated curves demo to use new
<Marker>
. #783 - [demo] updates the
/axis
demo to includeAnimatedGrid*
and aanimationTrajectory
config. #787 - [jest] ignore vx-demo, vx-vx code coverage. #784
- [annotation] 100% coverage. #784
- [bounds] 100% coverage. #784
- [brush] add utils test. #786
- [event] add tests. #786
- [test] add tests for vx/grid, vx/zoom, vx/threshold, vx/shape. #793
🏆 Contributors
- @vx/annotation: 0.0.198 => 0.0.199
- @vx/axis: 0.0.198 => 0.0.199
- @vx/bounds: 0.0.198 => 0.0.199
- @vx/brush: 0.0.198 => 0.0.199
- @vx/chord: 0.0.198 => 0.0.199
- @vx/clip-path: 0.0.198 => 0.0.199
- @vx/curve: 0.0.198 => 0.0.199
- @vx/demo: 0.0.198 => 0.0.199
- @vx/drag: 0.0.198 => 0.0.199
- @vx/event: 0.0.198 => 0.0.199
- @vx/geo: 0.0.198 => 0.0.199
- @vx/glyph: 0.0.198 => 0.0.199
- @vx/gradient: 0.0.198 => 0.0.199
- @vx/grid: 0.0.198 => 0.0.199
- @vx/group: 0.0.198 => 0.0.199
- @vx/heatmap: 0.0.198 => 0.0.199
- @vx/hierarchy: 0.0.198 => 0.0.199
- @vx/legend: 0.0.198 => 0.0.199
- @vx/marker: 0.0.198 => 0.0.199
- @vx/mock-data: 0.0.198 => 0.0.199
- @vx/network: 0.0.198 => 0.0.199
- @vx/pattern: 0.0.198 => 0.0.199
- @vx/point: 0.0.198 => 0.0.199
- @vx/react-spring: 0.0.198 => 0.0.199
- @vx/responsive: 0.0.198 => 0.0.199
- @vx/scale: 0.0.198 => 0.0.199
- @vx/shape: 0.0.198 => 0.0.199
- @vx/stats: 0.0.198 => 0.0.199
- @vx/text: 0.0.198 => 0.0.199
- @vx/threshold: 0.0.198 => 0.0.199
- @vx/tooltip: 0.0.198 => 0.0.199
- @vx/voronoi: 0.0.198 => 0.0.199
- @vx/vx: 0.0.198 => 0.0.199
- @vx/xychart: 0.0.0 => 0.0.199 (private)
- @vx/zoom: 0.0.198 => 0.0.199