v0.0.199
💥 Breaking Changes
- [scale] Deprecate
rangeRoundfield in the input ofscaleLinear(),scaleLog(),scalePoint(),scalePower(),scaleSqrt(),scaleTime()andscaleUtc(). #766
Instead ofDo this insteadscaleLinear({ rangeRound: xxx })
scaleLinear({ range: xxx, round: true });
- [scale] Deprecate
ticksandtickFormatin the input ofscaleQuantize(). It was not really doing anything anyway as bothscale.ticks()andscale.tickFormat()do not mutate the scale. #766 - [scale] Remove
scale.typefield that was attached to the d3 scales. #766 - [grid]
@vx/gridcomponents 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,InferD3ScaleThresholdInputandScaleInput. Add new utilities functions:getTicks,coerceNumberandtoString. #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/legendshapes from theindexfor convenience / non-deep imports. #772 - [grid] adds
childrenprop toGridRows+GridColumnsto support animated rendering. #787 - [shape] add
<BarRounded />shape. #774 - [shape] Create new factory functions for
d3-shapeand export as part ofvx/shape(arc,area,line,pie,radialLine),
similar tovx/scalehas factories ford3-scale. #776 - [shape] add
SplitLinePathcomponent to@vx/shapethat 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/scaleandvx/axis. More fields passed to child render props ofAxis. #773 - [axis]
Axisis refactored to accept aticksComponentwhich allows us to animate them. #779 - [axis] adds a third argument
valuestotickFormat(value, index, values)so that format logic can more easily leverage all ticks (becausenumTicksis 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-springthat includesreact-springas apeerDepand 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/axisdemo to use<AnimatedAxis />. #779 - [react-spring] adds
AnimatedGridRows+AnimatedGridColumns. #787 - [react-spring] modularizes
AnimatedTicks/useAnimatedTicksConfigtospring-configs/useAnimatedLineTransitionConfigso it can power both animated tick + grid lines. #787 - [react-spring] adds
animationTrajectory=outside | inside | min | maxtoAnimatedAxisandAnimatedGridRows/Columns. #787
🐛 Bug Fix
- [responsive] exclude
enableDebounceLeadingCallprop 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/scalepackage 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
/axisdemo to includeAnimatedGrid*and aanimationTrajectoryconfig. #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