@octanejs/visx 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +67 -0
- package/UPSTREAM.md +52 -0
- package/package.json +161 -0
- package/src/a11y/components/ChartA11yAnnouncer.tsrx +40 -0
- package/src/a11y/components/ChartA11yAnnouncer.tsrx.d.ts +14 -0
- package/src/a11y/components/ChartA11yDataTable.tsrx +40 -0
- package/src/a11y/components/ChartA11yDataTable.tsrx.d.ts +9 -0
- package/src/a11y/generators/ariaProps.ts +79 -0
- package/src/a11y/generators/dataTableHTML.ts +24 -0
- package/src/a11y/generators/description.ts +125 -0
- package/src/a11y/index.ts +35 -0
- package/src/a11y/keyboard/stateMachine.ts +231 -0
- package/src/a11y/react/index.ts +59 -0
- package/src/a11y/server.ts +29 -0
- package/src/a11y/types.ts +104 -0
- package/src/a11y/useChartA11y.tsrx +144 -0
- package/src/a11y/useChartA11y.tsrx.d.ts +27 -0
- package/src/a11y/useChartKeyboardNav.tsrx +234 -0
- package/src/a11y/useChartKeyboardNav.tsrx.d.ts +26 -0
- package/src/a11y/utils/data.ts +80 -0
- package/src/a11y/utils/format.ts +73 -0
- package/src/a11y/utils/table.ts +81 -0
- package/src/annotation/components/Annotation.tsrx +14 -0
- package/src/annotation/components/Annotation.tsrx.d.ts +8 -0
- package/src/annotation/components/CircleSubject.tsrx +37 -0
- package/src/annotation/components/CircleSubject.tsrx.d.ts +12 -0
- package/src/annotation/components/Connector.tsrx +75 -0
- package/src/annotation/components/Connector.tsrx.d.ts +14 -0
- package/src/annotation/components/EditableAnnotation.tsrx +179 -0
- package/src/annotation/components/EditableAnnotation.tsrx.d.ts +33 -0
- package/src/annotation/components/HtmlLabel.tsrx +93 -0
- package/src/annotation/components/HtmlLabel.tsrx.d.ts +10 -0
- package/src/annotation/components/Label.tsrx +249 -0
- package/src/annotation/components/Label.tsrx.d.ts +60 -0
- package/src/annotation/components/LabelAnchorLine.tsrx +32 -0
- package/src/annotation/components/LabelAnchorLine.tsrx.d.ts +12 -0
- package/src/annotation/components/LineSubject.tsrx +50 -0
- package/src/annotation/components/LineSubject.tsrx.d.ts +21 -0
- package/src/annotation/context/AnnotationContext.tsrx +6 -0
- package/src/annotation/context/AnnotationContext.tsrx.d.ts +4 -0
- package/src/annotation/index.ts +18 -0
- package/src/annotation/types/index.ts +10 -0
- package/src/axis/axis/Axis.tsrx +54 -0
- package/src/axis/axis/Axis.tsrx.d.ts +7 -0
- package/src/axis/axis/AxisBottom.tsrx +37 -0
- package/src/axis/axis/AxisBottom.tsrx.d.ts +10 -0
- package/src/axis/axis/AxisLeft.tsrx +37 -0
- package/src/axis/axis/AxisLeft.tsrx.d.ts +11 -0
- package/src/axis/axis/AxisRenderer.tsrx +102 -0
- package/src/axis/axis/AxisRenderer.tsrx.d.ts +3 -0
- package/src/axis/axis/AxisRight.tsrx +39 -0
- package/src/axis/axis/AxisRight.tsrx.d.ts +12 -0
- package/src/axis/axis/AxisTop.tsrx +38 -0
- package/src/axis/axis/AxisTop.tsrx.d.ts +11 -0
- package/src/axis/axis/Ticks.tsrx +56 -0
- package/src/axis/axis/Ticks.tsrx.d.ts +3 -0
- package/src/axis/constants/orientation.ts +12 -0
- package/src/axis/index.ts +10 -0
- package/src/axis/react/index.ts +5 -0
- package/src/axis/react/useAxis.tsrx +89 -0
- package/src/axis/react/useAxis.tsrx.d.ts +13 -0
- package/src/axis/types.ts +145 -0
- package/src/axis/utils/createPoint.ts +5 -0
- package/src/axis/utils/getAxisRangePaddingConfig.ts +11 -0
- package/src/axis/utils/getLabelTransform.ts +44 -0
- package/src/axis/utils/getTickFormatter.ts +19 -0
- package/src/axis/utils/getTickPosition.ts +28 -0
- package/src/bounds/enhancers/withBoundingRects.tsrx +59 -0
- package/src/bounds/enhancers/withBoundingRects.tsrx.d.ts +21 -0
- package/src/bounds/index.ts +6 -0
- package/src/brush/BaseBrush.tsrx +567 -0
- package/src/brush/BaseBrush.tsrx.d.ts +39 -0
- package/src/brush/Brush.tsrx +217 -0
- package/src/brush/Brush.tsrx.d.ts +56 -0
- package/src/brush/BrushCorner.tsrx +173 -0
- package/src/brush/BrushCorner.tsrx.d.ts +21 -0
- package/src/brush/BrushHandle.tsrx +222 -0
- package/src/brush/BrushHandle.tsrx.d.ts +33 -0
- package/src/brush/BrushOverlay.tsrx +18 -0
- package/src/brush/BrushOverlay.tsrx.d.ts +15 -0
- package/src/brush/BrushSelection.tsrx +181 -0
- package/src/brush/BrushSelection.tsrx.d.ts +27 -0
- package/src/brush/index.ts +9 -0
- package/src/brush/types.ts +62 -0
- package/src/brush/utils.ts +89 -0
- package/src/chart/config.ts +50 -0
- package/src/chart/domains.ts +47 -0
- package/src/chart/index.ts +33 -0
- package/src/chart/responsive.ts +3 -0
- package/src/chart/ticks.ts +90 -0
- package/src/chart/useChartDimensions.tsrx +74 -0
- package/src/chart/useChartDimensions.tsrx.d.ts +28 -0
- package/src/chord/Chord.tsrx +42 -0
- package/src/chord/Chord.tsrx.d.ts +22 -0
- package/src/chord/Ribbon.tsrx +63 -0
- package/src/chord/Ribbon.tsrx.d.ts +26 -0
- package/src/chord/index.ts +6 -0
- package/src/clip-path/clip-paths/CircleClipPath.tsrx +26 -0
- package/src/clip-path/clip-paths/CircleClipPath.tsrx.d.ts +14 -0
- package/src/clip-path/clip-paths/ClipPath.tsrx +21 -0
- package/src/clip-path/clip-paths/ClipPath.tsrx.d.ts +10 -0
- package/src/clip-path/clip-paths/RectClipPath.tsrx +28 -0
- package/src/clip-path/clip-paths/RectClipPath.tsrx.d.ts +15 -0
- package/src/clip-path/index.ts +4 -0
- package/src/curve/index.ts +21 -0
- package/src/delaunay/components/Polygon.tsrx +32 -0
- package/src/delaunay/components/Polygon.tsrx.d.ts +14 -0
- package/src/delaunay/delaunay.ts +17 -0
- package/src/delaunay/index.ts +4 -0
- package/src/delaunay/voronoi.ts +30 -0
- package/src/drag/Drag.tsrx +66 -0
- package/src/drag/Drag.tsrx.d.ts +17 -0
- package/src/drag/index.ts +13 -0
- package/src/drag/useDrag.tsrx +214 -0
- package/src/drag/useDrag.tsrx.d.ts +60 -0
- package/src/drag/util/clampNumber.ts +4 -0
- package/src/drag/util/getClosestPoint.ts +13 -0
- package/src/drag/util/raise.ts +8 -0
- package/src/drag/util/restrictPoint.ts +18 -0
- package/src/drag/util/useSamplesAlongPath.tsrx +26 -0
- package/src/drag/util/useSamplesAlongPath.tsrx.d.ts +3 -0
- package/src/drag/util/useStateWithCallback.tsrx +26 -0
- package/src/drag/util/useStateWithCallback.tsrx.d.ts +5 -0
- package/src/event/getXAndYFromEvent.ts +36 -0
- package/src/event/index.ts +3 -0
- package/src/event/localPoint.ts +18 -0
- package/src/event/localPointGeneric.ts +34 -0
- package/src/event/touchPoint.ts +2 -0
- package/src/event/typeGuards.ts +37 -0
- package/src/event/types.ts +13 -0
- package/src/external.d.ts +3 -0
- package/src/geo/graticule/Graticule.tsrx +97 -0
- package/src/geo/graticule/Graticule.tsrx.d.ts +52 -0
- package/src/geo/index.ts +13 -0
- package/src/geo/projections/Albers.tsrx +10 -0
- package/src/geo/projections/Albers.tsrx.d.ts +7 -0
- package/src/geo/projections/AlbersUsa.tsrx +10 -0
- package/src/geo/projections/AlbersUsa.tsrx.d.ts +7 -0
- package/src/geo/projections/CustomProjection.tsrx +10 -0
- package/src/geo/projections/CustomProjection.tsrx.d.ts +7 -0
- package/src/geo/projections/EqualEarth.tsrx +10 -0
- package/src/geo/projections/EqualEarth.tsrx.d.ts +7 -0
- package/src/geo/projections/Mercator.tsrx +10 -0
- package/src/geo/projections/Mercator.tsrx.d.ts +7 -0
- package/src/geo/projections/NaturalEarth.tsrx +10 -0
- package/src/geo/projections/NaturalEarth.tsrx.d.ts +7 -0
- package/src/geo/projections/Orthographic.tsrx +10 -0
- package/src/geo/projections/Orthographic.tsrx.d.ts +7 -0
- package/src/geo/projections/Projection.tsrx +201 -0
- package/src/geo/projections/Projection.tsrx.d.ts +86 -0
- package/src/geo/types.ts +14 -0
- package/src/glyph/glyphs/Glyph.tsrx +18 -0
- package/src/glyph/glyphs/Glyph.tsrx.d.ts +13 -0
- package/src/glyph/glyphs/GlyphCircle.tsrx +46 -0
- package/src/glyph/glyphs/GlyphCircle.tsrx.d.ts +18 -0
- package/src/glyph/glyphs/GlyphCross.tsrx +46 -0
- package/src/glyph/glyphs/GlyphCross.tsrx.d.ts +18 -0
- package/src/glyph/glyphs/GlyphDiamond.tsrx +46 -0
- package/src/glyph/glyphs/GlyphDiamond.tsrx.d.ts +18 -0
- package/src/glyph/glyphs/GlyphDot.tsrx +29 -0
- package/src/glyph/glyphs/GlyphDot.tsrx.d.ts +17 -0
- package/src/glyph/glyphs/GlyphSquare.tsrx +46 -0
- package/src/glyph/glyphs/GlyphSquare.tsrx.d.ts +18 -0
- package/src/glyph/glyphs/GlyphStar.tsrx +45 -0
- package/src/glyph/glyphs/GlyphStar.tsrx.d.ts +18 -0
- package/src/glyph/glyphs/GlyphTriangle.tsrx +46 -0
- package/src/glyph/glyphs/GlyphTriangle.tsrx.d.ts +18 -0
- package/src/glyph/glyphs/GlyphWye.tsrx +45 -0
- package/src/glyph/glyphs/GlyphWye.tsrx.d.ts +18 -0
- package/src/glyph/index.ts +20 -0
- package/src/gradient/gradients/GradientDarkgreenGreen.tsrx +13 -0
- package/src/gradient/gradients/GradientDarkgreenGreen.tsrx.d.ts +6 -0
- package/src/gradient/gradients/GradientLightgreenGreen.tsrx +13 -0
- package/src/gradient/gradients/GradientLightgreenGreen.tsrx.d.ts +6 -0
- package/src/gradient/gradients/GradientOrangeRed.tsrx +13 -0
- package/src/gradient/gradients/GradientOrangeRed.tsrx.d.ts +6 -0
- package/src/gradient/gradients/GradientPinkBlue.tsrx +13 -0
- package/src/gradient/gradients/GradientPinkBlue.tsrx.d.ts +6 -0
- package/src/gradient/gradients/GradientPinkRed.tsrx +13 -0
- package/src/gradient/gradients/GradientPinkRed.tsrx.d.ts +6 -0
- package/src/gradient/gradients/GradientPurpleOrange.tsrx +13 -0
- package/src/gradient/gradients/GradientPurpleOrange.tsrx.d.ts +6 -0
- package/src/gradient/gradients/GradientPurpleRed.tsrx +13 -0
- package/src/gradient/gradients/GradientPurpleRed.tsrx.d.ts +6 -0
- package/src/gradient/gradients/GradientPurpleTeal.tsrx +13 -0
- package/src/gradient/gradients/GradientPurpleTeal.tsrx.d.ts +6 -0
- package/src/gradient/gradients/GradientSteelPurple.tsrx +13 -0
- package/src/gradient/gradients/GradientSteelPurple.tsrx.d.ts +6 -0
- package/src/gradient/gradients/GradientTealBlue.tsrx +13 -0
- package/src/gradient/gradients/GradientTealBlue.tsrx.d.ts +6 -0
- package/src/gradient/gradients/LinearGradient.tsrx +85 -0
- package/src/gradient/gradients/LinearGradient.tsrx.d.ts +37 -0
- package/src/gradient/gradients/RadialGradient.tsrx +43 -0
- package/src/gradient/gradients/RadialGradient.tsrx.d.ts +5 -0
- package/src/gradient/index.ts +16 -0
- package/src/grid/grids/Grid.tsrx +86 -0
- package/src/grid/grids/Grid.tsrx.d.ts +30 -0
- package/src/grid/grids/GridAngle.tsrx +74 -0
- package/src/grid/grids/GridAngle.tsrx.d.ts +29 -0
- package/src/grid/grids/GridColumns.tsrx +76 -0
- package/src/grid/grids/GridColumns.tsrx.d.ts +18 -0
- package/src/grid/grids/GridPolar.tsrx +189 -0
- package/src/grid/grids/GridPolar.tsrx.d.ts +123 -0
- package/src/grid/grids/GridRadial.tsrx +92 -0
- package/src/grid/grids/GridRadial.tsrx.d.ts +44 -0
- package/src/grid/grids/GridRows.tsrx +76 -0
- package/src/grid/grids/GridRows.tsrx.d.ts +18 -0
- package/src/grid/index.ts +11 -0
- package/src/grid/types.ts +40 -0
- package/src/grid/utils/getScaleBandwidth.ts +5 -0
- package/src/grid/utils/polarToCartesian.ts +16 -0
- package/src/group/Group.tsrx +33 -0
- package/src/group/Group.tsrx.d.ts +16 -0
- package/src/group/index.ts +2 -0
- package/src/heatmap/heatmaps/HeatmapCircle.tsrx +109 -0
- package/src/heatmap/heatmaps/HeatmapCircle.tsrx.d.ts +44 -0
- package/src/heatmap/heatmaps/HeatmapRect.tsrx +121 -0
- package/src/heatmap/heatmaps/HeatmapRect.tsrx.d.ts +49 -0
- package/src/heatmap/index.ts +11 -0
- package/src/heatmap/types.ts +22 -0
- package/src/hierarchy/HierarchyDefaultLink.tsrx +19 -0
- package/src/hierarchy/HierarchyDefaultLink.tsrx.d.ts +13 -0
- package/src/hierarchy/HierarchyDefaultNode.tsrx +7 -0
- package/src/hierarchy/HierarchyDefaultNode.tsrx.d.ts +9 -0
- package/src/hierarchy/HierarchyDefaultRectNode.tsrx +7 -0
- package/src/hierarchy/HierarchyDefaultRectNode.tsrx.d.ts +10 -0
- package/src/hierarchy/hierarchies/Cluster.tsrx +81 -0
- package/src/hierarchy/hierarchies/Cluster.tsrx.d.ts +40 -0
- package/src/hierarchy/hierarchies/Pack.tsrx +69 -0
- package/src/hierarchy/hierarchies/Pack.tsrx.d.ts +35 -0
- package/src/hierarchy/hierarchies/Partition.tsrx +62 -0
- package/src/hierarchy/hierarchies/Partition.tsrx.d.ts +27 -0
- package/src/hierarchy/hierarchies/Tree.tsrx +82 -0
- package/src/hierarchy/hierarchies/Tree.tsrx.d.ts +43 -0
- package/src/hierarchy/hierarchies/Treemap.tsrx +97 -0
- package/src/hierarchy/hierarchies/Treemap.tsrx.d.ts +47 -0
- package/src/hierarchy/index.ts +26 -0
- package/src/hierarchy/types.ts +21 -0
- package/src/hierarchy/utils/setNumOrNumAccessor.ts +11 -0
- package/src/index.ts +74 -0
- package/src/internal/spring.tsrx +190 -0
- package/src/internal/spring.tsrx.d.ts +28 -0
- package/src/internal/useMeasure.tsrx +120 -0
- package/src/internal/useMeasure.tsrx.d.ts +22 -0
- package/src/kernel/accessors/normalizeAccessor.ts +59 -0
- package/src/kernel/domain/useDomain.tsrx +111 -0
- package/src/kernel/domain/useDomain.tsrx.d.ts +13 -0
- package/src/kernel/format/formatNumber.ts +8 -0
- package/src/kernel/ids/useStableId.tsrx +7 -0
- package/src/kernel/ids/useStableId.tsrx.d.ts +2 -0
- package/src/kernel/index.ts +25 -0
- package/src/kernel/memo/shallowEqual.ts +65 -0
- package/src/kernel/memo/useStructuralMemo.tsrx +18 -0
- package/src/kernel/memo/useStructuralMemo.tsrx.d.ts +3 -0
- package/src/kernel/path/createPath.ts +132 -0
- package/src/kernel/path/toPath2D.ts +41 -0
- package/src/kernel/refs/useLatestRef.tsrx +7 -0
- package/src/kernel/refs/useLatestRef.tsrx.d.ts +4 -0
- package/src/kernel/refs/useStableCallback.tsrx +13 -0
- package/src/kernel/refs/useStableCallback.tsrx.d.ts +2 -0
- package/src/kernel/warnings.ts +76 -0
- package/src/legend/index.ts +27 -0
- package/src/legend/legends/Legend/LegendItem.tsrx +35 -0
- package/src/legend/legends/Legend/LegendItem.tsrx.d.ts +16 -0
- package/src/legend/legends/Legend/LegendLabel.tsrx +39 -0
- package/src/legend/legends/Legend/LegendLabel.tsrx.d.ts +16 -0
- package/src/legend/legends/Legend/LegendShape.tsrx +64 -0
- package/src/legend/legends/Legend/LegendShape.tsrx.d.ts +25 -0
- package/src/legend/legends/Legend/index.tsrx +140 -0
- package/src/legend/legends/Legend/index.tsrx.d.ts +50 -0
- package/src/legend/legends/Linear.tsrx +23 -0
- package/src/legend/legends/Linear.tsrx.d.ts +11 -0
- package/src/legend/legends/Ordinal.tsrx +13 -0
- package/src/legend/legends/Ordinal.tsrx.d.ts +8 -0
- package/src/legend/legends/Quantile.tsrx +53 -0
- package/src/legend/legends/Quantile.tsrx.d.ts +12 -0
- package/src/legend/legends/Size.tsrx +37 -0
- package/src/legend/legends/Size.tsrx.d.ts +14 -0
- package/src/legend/legends/Threshold.tsrx +108 -0
- package/src/legend/legends/Threshold.tsrx.d.ts +23 -0
- package/src/legend/shapes/Circle.tsrx +27 -0
- package/src/legend/shapes/Circle.tsrx.d.ts +13 -0
- package/src/legend/shapes/Line.tsrx +33 -0
- package/src/legend/shapes/Line.tsrx.d.ts +13 -0
- package/src/legend/shapes/Rect.tsrx +23 -0
- package/src/legend/shapes/Rect.tsrx.d.ts +13 -0
- package/src/legend/types/index.ts +64 -0
- package/src/legend/util/defaultDomain.ts +21 -0
- package/src/legend/util/identity.ts +3 -0
- package/src/legend/util/labelTransformFactory.ts +18 -0
- package/src/legend/util/renderShape.ts +67 -0
- package/src/legend/util/valueOrIdentity.ts +12 -0
- package/src/marker/index.ts +9 -0
- package/src/marker/markers/Arrow.tsrx +30 -0
- package/src/marker/markers/Arrow.tsrx.d.ts +3 -0
- package/src/marker/markers/Circle.tsrx +26 -0
- package/src/marker/markers/Circle.tsrx.d.ts +3 -0
- package/src/marker/markers/Cross.tsrx +27 -0
- package/src/marker/markers/Cross.tsrx.d.ts +3 -0
- package/src/marker/markers/Line.tsrx +29 -0
- package/src/marker/markers/Line.tsrx.d.ts +3 -0
- package/src/marker/markers/Marker.tsrx +46 -0
- package/src/marker/markers/Marker.tsrx.d.ts +25 -0
- package/src/marker/markers/X.tsrx +6 -0
- package/src/marker/markers/X.tsrx.d.ts +3 -0
- package/src/mock-data/generators/genBin.ts +28 -0
- package/src/mock-data/generators/genBins.ts +27 -0
- package/src/mock-data/generators/genDateValue.ts +22 -0
- package/src/mock-data/generators/genPhyllotaxis.ts +27 -0
- package/src/mock-data/generators/genRandomNormalPoints.ts +32 -0
- package/src/mock-data/generators/genStats.ts +96 -0
- package/src/mock-data/generators/getSeededRandom.ts +9 -0
- package/src/mock-data/index.ts +40 -0
- package/src/mock-data/mocks/appleStock.ts +1289 -0
- package/src/mock-data/mocks/bitcoinPrice.ts +382 -0
- package/src/mock-data/mocks/browserUsage.ts +4053 -0
- package/src/mock-data/mocks/cityTemperature.ts +2207 -0
- package/src/mock-data/mocks/exoplanets.ts +5295 -0
- package/src/mock-data/mocks/groupDateValue.ts +22 -0
- package/src/mock-data/mocks/lesMiserables.ts +355 -0
- package/src/mock-data/mocks/letterFrequency.ts +35 -0
- package/src/mock-data/mocks/planets.ts +55 -0
- package/src/mock-data/mocks/shakespeare.ts +1870 -0
- package/src/network/DefaultLink.tsrx +16 -0
- package/src/network/DefaultLink.tsrx.d.ts +3 -0
- package/src/network/DefaultNode.tsrx +16 -0
- package/src/network/DefaultNode.tsrx.d.ts +9 -0
- package/src/network/Graph.tsrx +43 -0
- package/src/network/Graph.tsrx.d.ts +16 -0
- package/src/network/Links.tsrx +27 -0
- package/src/network/Links.tsrx.d.ts +12 -0
- package/src/network/Nodes.tsrx +41 -0
- package/src/network/Nodes.tsrx.d.ts +17 -0
- package/src/network/index.ts +11 -0
- package/src/network/types.ts +22 -0
- package/src/pattern/constants/index.ts +8 -0
- package/src/pattern/index.ts +16 -0
- package/src/pattern/patterns/Circles.tsrx +78 -0
- package/src/pattern/patterns/Circles.tsrx.d.ts +26 -0
- package/src/pattern/patterns/Hexagons.tsrx +63 -0
- package/src/pattern/patterns/Hexagons.tsrx.d.ts +26 -0
- package/src/pattern/patterns/Lines.tsrx +95 -0
- package/src/pattern/patterns/Lines.tsrx.d.ts +31 -0
- package/src/pattern/patterns/Path.tsrx +58 -0
- package/src/pattern/patterns/Path.tsrx.d.ts +28 -0
- package/src/pattern/patterns/Pattern.tsrx +25 -0
- package/src/pattern/patterns/Pattern.tsrx.d.ts +13 -0
- package/src/pattern/patterns/Waves.tsrx +69 -0
- package/src/pattern/patterns/Waves.tsrx.d.ts +26 -0
- package/src/point/Point.ts +20 -0
- package/src/point/index.ts +4 -0
- package/src/point/subtractPoints.ts +8 -0
- package/src/point/sumPoints.ts +8 -0
- package/src/react-spring/axis/AnimatedAxis.tsrx +28 -0
- package/src/react-spring/axis/AnimatedAxis.tsrx.d.ts +7 -0
- package/src/react-spring/axis/AnimatedTicks.tsrx +85 -0
- package/src/react-spring/axis/AnimatedTicks.tsrx.d.ts +6 -0
- package/src/react-spring/grid/AnimatedGridColumns.tsrx +38 -0
- package/src/react-spring/grid/AnimatedGridColumns.tsrx.d.ts +6 -0
- package/src/react-spring/grid/AnimatedGridLines.tsrx +47 -0
- package/src/react-spring/grid/AnimatedGridLines.tsrx.d.ts +10 -0
- package/src/react-spring/grid/AnimatedGridRows.tsrx +38 -0
- package/src/react-spring/grid/AnimatedGridRows.tsrx.d.ts +6 -0
- package/src/react-spring/index.ts +7 -0
- package/src/react-spring/spring-configs/useLineTransitionConfig.tsrx +102 -0
- package/src/react-spring/spring-configs/useLineTransitionConfig.tsrx.d.ts +50 -0
- package/src/react-spring/types/index.ts +1 -0
- package/src/responsive/components/ParentSize.tsrx +66 -0
- package/src/responsive/components/ParentSize.tsrx.d.ts +21 -0
- package/src/responsive/components/ScaleSVG.tsrx +44 -0
- package/src/responsive/components/ScaleSVG.tsrx.d.ts +19 -0
- package/src/responsive/enhancers/withParentSize.tsrx +101 -0
- package/src/responsive/enhancers/withParentSize.tsrx.d.ts +17 -0
- package/src/responsive/enhancers/withScreenSize.tsrx +64 -0
- package/src/responsive/enhancers/withScreenSize.tsrx.d.ts +17 -0
- package/src/responsive/hooks/useParentSize.tsrx +103 -0
- package/src/responsive/hooks/useParentSize.tsrx.d.ts +25 -0
- package/src/responsive/hooks/useScreenSize.tsrx +53 -0
- package/src/responsive/hooks/useScreenSize.tsrx.d.ts +12 -0
- package/src/responsive/index.ts +21 -0
- package/src/responsive/types/index.ts +36 -0
- package/src/responsive/utils/debounce.ts +59 -0
- package/src/sankey/Sankey.tsrx +157 -0
- package/src/sankey/Sankey.tsrx.d.ts +54 -0
- package/src/sankey/index.ts +20 -0
- package/src/sankey/types.ts +10 -0
- package/src/scale/createScale.ts +176 -0
- package/src/scale/index.ts +31 -0
- package/src/scale/operators/align.ts +16 -0
- package/src/scale/operators/base.ts +16 -0
- package/src/scale/operators/clamp.ts +16 -0
- package/src/scale/operators/constant.ts +16 -0
- package/src/scale/operators/domain.ts +25 -0
- package/src/scale/operators/exponent.ts +16 -0
- package/src/scale/operators/interpolate.ts +23 -0
- package/src/scale/operators/nice.ts +81 -0
- package/src/scale/operators/padding.ts +30 -0
- package/src/scale/operators/range.ts +22 -0
- package/src/scale/operators/reverse.ts +23 -0
- package/src/scale/operators/round.ts +32 -0
- package/src/scale/operators/scaleOperator.ts +86 -0
- package/src/scale/operators/unknown.ts +16 -0
- package/src/scale/operators/zero.ts +21 -0
- package/src/scale/react/index.ts +3 -0
- package/src/scale/react/useScale.tsrx +48 -0
- package/src/scale/react/useScale.tsrx.d.ts +20 -0
- package/src/scale/scales/band.ts +19 -0
- package/src/scale/scales/linear.ts +21 -0
- package/src/scale/scales/log.ts +21 -0
- package/src/scale/scales/ordinal.ts +13 -0
- package/src/scale/scales/point.ts +19 -0
- package/src/scale/scales/power.ts +22 -0
- package/src/scale/scales/quantile.ts +12 -0
- package/src/scale/scales/quantize.ts +18 -0
- package/src/scale/scales/radial.ts +19 -0
- package/src/scale/scales/squareRoot.ts +21 -0
- package/src/scale/scales/symlog.ts +21 -0
- package/src/scale/scales/threshold.ts +14 -0
- package/src/scale/scales/time.ts +20 -0
- package/src/scale/scales/utc.ts +20 -0
- package/src/scale/types/Base.ts +14 -0
- package/src/scale/types/BaseScaleConfig.ts +123 -0
- package/src/scale/types/Nice.ts +1 -0
- package/src/scale/types/Scale.ts +96 -0
- package/src/scale/types/ScaleConfig.ts +210 -0
- package/src/scale/types/ScaleInterpolate.ts +14 -0
- package/src/scale/updateScale.ts +163 -0
- package/src/scale/utils/coerceNumber.ts +10 -0
- package/src/scale/utils/createColorInterpolator.ts +43 -0
- package/src/scale/utils/getTicks.ts +25 -0
- package/src/scale/utils/inferScaleType.ts +60 -0
- package/src/scale/utils/isUtcScale.ts +16 -0
- package/src/scale/utils/scaleCanBeZeroed.ts +25 -0
- package/src/scale/utils/toString.ts +5 -0
- package/src/shape/index.ts +96 -0
- package/src/shape/react/index.ts +5 -0
- package/src/shape/react/usePie.tsrx +60 -0
- package/src/shape/react/usePie.tsrx.d.ts +20 -0
- package/src/shape/shapes/Arc.tsrx +60 -0
- package/src/shape/shapes/Arc.tsrx.d.ts +17 -0
- package/src/shape/shapes/Area.tsrx +32 -0
- package/src/shape/shapes/Area.tsrx.d.ts +4 -0
- package/src/shape/shapes/AreaClosed.tsrx +47 -0
- package/src/shape/shapes/AreaClosed.tsrx.d.ts +6 -0
- package/src/shape/shapes/AreaStack.tsrx +78 -0
- package/src/shape/shapes/AreaStack.tsrx.d.ts +7 -0
- package/src/shape/shapes/Bar.tsrx +18 -0
- package/src/shape/shapes/Bar.tsrx.d.ts +10 -0
- package/src/shape/shapes/BarGroup.tsrx +131 -0
- package/src/shape/shapes/BarGroup.tsrx.d.ts +57 -0
- package/src/shape/shapes/BarGroupHorizontal.tsrx +100 -0
- package/src/shape/shapes/BarGroupHorizontal.tsrx.d.ts +21 -0
- package/src/shape/shapes/BarRounded.tsrx +153 -0
- package/src/shape/shapes/BarRounded.tsrx.d.ts +44 -0
- package/src/shape/shapes/BarStack.tsrx +103 -0
- package/src/shape/shapes/BarStack.tsrx.d.ts +13 -0
- package/src/shape/shapes/BarStackHorizontal.tsrx +99 -0
- package/src/shape/shapes/BarStackHorizontal.tsrx.d.ts +13 -0
- package/src/shape/shapes/Circle.tsrx +18 -0
- package/src/shape/shapes/Circle.tsrx.d.ts +10 -0
- package/src/shape/shapes/Line.tsrx +43 -0
- package/src/shape/shapes/Line.tsrx.d.ts +21 -0
- package/src/shape/shapes/LinePath.tsrx +44 -0
- package/src/shape/shapes/LinePath.tsrx.d.ts +19 -0
- package/src/shape/shapes/LineRadial.tsrx +42 -0
- package/src/shape/shapes/LineRadial.tsrx.d.ts +12 -0
- package/src/shape/shapes/Pie.tsrx +87 -0
- package/src/shape/shapes/Pie.tsrx.d.ts +30 -0
- package/src/shape/shapes/Polygon.tsrx +85 -0
- package/src/shape/shapes/Polygon.tsrx.d.ts +37 -0
- package/src/shape/shapes/SplitLinePath.tsrx +86 -0
- package/src/shape/shapes/SplitLinePath.tsrx.d.ts +23 -0
- package/src/shape/shapes/Stack.tsrx +83 -0
- package/src/shape/shapes/Stack.tsrx.d.ts +25 -0
- package/src/shape/shapes/link/curve/LinkHorizontalCurve.tsrx +63 -0
- package/src/shape/shapes/link/curve/LinkHorizontalCurve.tsrx.d.ts +11 -0
- package/src/shape/shapes/link/curve/LinkRadialCurve.tsrx +72 -0
- package/src/shape/shapes/link/curve/LinkRadialCurve.tsrx.d.ts +9 -0
- package/src/shape/shapes/link/curve/LinkVerticalCurve.tsrx +62 -0
- package/src/shape/shapes/link/curve/LinkVerticalCurve.tsrx.d.ts +9 -0
- package/src/shape/shapes/link/diagonal/LinkHorizontal.tsrx +47 -0
- package/src/shape/shapes/link/diagonal/LinkHorizontal.tsrx.d.ts +7 -0
- package/src/shape/shapes/link/diagonal/LinkRadial.tsrx +49 -0
- package/src/shape/shapes/link/diagonal/LinkRadial.tsrx.d.ts +9 -0
- package/src/shape/shapes/link/diagonal/LinkVertical.tsrx +46 -0
- package/src/shape/shapes/link/diagonal/LinkVertical.tsrx.d.ts +6 -0
- package/src/shape/shapes/link/line/LinkHorizontalLine.tsrx +53 -0
- package/src/shape/shapes/link/line/LinkHorizontalLine.tsrx.d.ts +7 -0
- package/src/shape/shapes/link/line/LinkRadialLine.tsrx +58 -0
- package/src/shape/shapes/link/line/LinkRadialLine.tsrx.d.ts +5 -0
- package/src/shape/shapes/link/line/LinkVerticalLine.tsrx +53 -0
- package/src/shape/shapes/link/line/LinkVerticalLine.tsrx.d.ts +5 -0
- package/src/shape/shapes/link/step/LinkHorizontalStep.tsrx +59 -0
- package/src/shape/shapes/link/step/LinkHorizontalStep.tsrx.d.ts +12 -0
- package/src/shape/shapes/link/step/LinkRadialStep.tsrx +68 -0
- package/src/shape/shapes/link/step/LinkRadialStep.tsrx.d.ts +8 -0
- package/src/shape/shapes/link/step/LinkVerticalStep.tsrx +59 -0
- package/src/shape/shapes/link/step/LinkVerticalStep.tsrx.d.ts +10 -0
- package/src/shape/types/D3ShapeConfig.ts +91 -0
- package/src/shape/types/accessor.ts +9 -0
- package/src/shape/types/area.ts +14 -0
- package/src/shape/types/barGroup.ts +57 -0
- package/src/shape/types/barStack.ts +55 -0
- package/src/shape/types/base.ts +23 -0
- package/src/shape/types/index.ts +8 -0
- package/src/shape/types/link.ts +37 -0
- package/src/shape/types/stack.ts +15 -0
- package/src/shape/util/D3ShapeFactories.ts +125 -0
- package/src/shape/util/accessors.ts +25 -0
- package/src/shape/util/getBandwidth.ts +11 -0
- package/src/shape/util/getOrCreateMeasurementElement.ts +28 -0
- package/src/shape/util/getSplitLineSegments.ts +100 -0
- package/src/shape/util/setNumberOrNumberAccessor.ts +11 -0
- package/src/shape/util/stackOffset.ts +23 -0
- package/src/shape/util/stackOrder.ts +23 -0
- package/src/shape/util/trigonometry.ts +1 -0
- package/src/stats/BoxPlot.tsrx +257 -0
- package/src/stats/BoxPlot.tsrx.d.ts +51 -0
- package/src/stats/ViolinPlot.tsrx +78 -0
- package/src/stats/ViolinPlot.tsrx.d.ts +21 -0
- package/src/stats/index.ts +8 -0
- package/src/stats/types.ts +56 -0
- package/src/stats/util/computeStats.ts +71 -0
- package/src/text/Text.tsrx +43 -0
- package/src/text/Text.tsrx.d.ts +4 -0
- package/src/text/hooks/useText.tsrx +125 -0
- package/src/text/hooks/useText.tsrx.d.ts +7 -0
- package/src/text/index.ts +5 -0
- package/src/text/types.ts +54 -0
- package/src/text/util/getStringWidth.ts +38 -0
- package/src/text/util/memoize.ts +13 -0
- package/src/theme/compat/fromXYChartTheme.ts +132 -0
- package/src/theme/index.ts +14 -0
- package/src/theme/provider/ThemeScope.tsrx +58 -0
- package/src/theme/provider/ThemeScope.tsrx.d.ts +23 -0
- package/src/theme/provider/defineTheme.ts +67 -0
- package/src/theme/react/ThemeContext.tsrx +7 -0
- package/src/theme/react/ThemeContext.tsrx.d.ts +4 -0
- package/src/theme/react/ThemeProvider.tsrx +14 -0
- package/src/theme/react/ThemeProvider.tsrx.d.ts +4 -0
- package/src/theme/react/categoricalColor.ts +32 -0
- package/src/theme/react/index.ts +29 -0
- package/src/theme/react/useAxisStyle.tsrx +100 -0
- package/src/theme/react/useAxisStyle.tsrx.d.ts +23 -0
- package/src/theme/react/useCategoricalScale.tsrx +23 -0
- package/src/theme/react/useCategoricalScale.tsrx.d.ts +3 -0
- package/src/theme/react/useChartConfig.tsrx +108 -0
- package/src/theme/react/useChartConfig.tsrx.d.ts +15 -0
- package/src/theme/react/useColor.tsrx +18 -0
- package/src/theme/react/useColor.tsrx.d.ts +4 -0
- package/src/theme/react/useColorScale.tsrx +39 -0
- package/src/theme/react/useColorScale.tsrx.d.ts +7 -0
- package/src/theme/react/useGridStyle.tsrx +15 -0
- package/src/theme/react/useGridStyle.tsrx.d.ts +6 -0
- package/src/theme/react/useTheme.tsrx +7 -0
- package/src/theme/react/useTheme.tsrx.d.ts +3 -0
- package/src/theme/react/warn.ts +3 -0
- package/src/theme/runtime/createRuntimeTheme.ts +70 -0
- package/src/theme/runtime/resolveThemeInput.ts +19 -0
- package/src/theme/tokens/categorical.ts +18 -0
- package/src/theme/tokens/cssVar.ts +5 -0
- package/src/theme/tokens/dark.ts +51 -0
- package/src/theme/tokens/light.ts +62 -0
- package/src/theme/tokens/names.ts +49 -0
- package/src/theme/tokens/style.ts +45 -0
- package/src/theme/tokens/types.ts +118 -0
- package/src/theme/utils/warn.ts +5 -0
- package/src/threshold/Threshold.tsrx +112 -0
- package/src/threshold/Threshold.tsrx.d.ts +45 -0
- package/src/threshold/index.ts +2 -0
- package/src/tooltip/Portal.tsrx +27 -0
- package/src/tooltip/Portal.tsrx.d.ts +10 -0
- package/src/tooltip/context/TooltipPositionContext.tsrx +16 -0
- package/src/tooltip/context/TooltipPositionContext.tsrx.d.ts +11 -0
- package/src/tooltip/enhancers/withTooltip.tsrx +29 -0
- package/src/tooltip/enhancers/withTooltip.tsrx.d.ts +8 -0
- package/src/tooltip/floating/ChartTooltip.tsrx +95 -0
- package/src/tooltip/floating/ChartTooltip.tsrx.d.ts +29 -0
- package/src/tooltip/floating/ChartTooltipContent.tsrx +219 -0
- package/src/tooltip/floating/ChartTooltipContent.tsrx.d.ts +57 -0
- package/src/tooltip/floating/FloatingTooltip.tsrx +269 -0
- package/src/tooltip/floating/FloatingTooltip.tsrx.d.ts +20 -0
- package/src/tooltip/floating/anchors.ts +146 -0
- package/src/tooltip/floating/context.tsrx +29 -0
- package/src/tooltip/floating/context.tsrx.d.ts +9 -0
- package/src/tooltip/floating/index.ts +61 -0
- package/src/tooltip/floating/internalTypes.ts +125 -0
- package/src/tooltip/floating/middleware.ts +104 -0
- package/src/tooltip/floating/types.ts +198 -0
- package/src/tooltip/floating/useChartTooltip.tsrx +180 -0
- package/src/tooltip/floating/useChartTooltip.tsrx.d.ts +40 -0
- package/src/tooltip/floating/useFloatingTooltip.tsrx +301 -0
- package/src/tooltip/floating/useFloatingTooltip.tsrx.d.ts +3 -0
- package/src/tooltip/hooks/useTooltip.tsrx +67 -0
- package/src/tooltip/hooks/useTooltip.tsrx.d.ts +25 -0
- package/src/tooltip/hooks/useTooltipInPortal.tsrx +92 -0
- package/src/tooltip/hooks/useTooltipInPortal.tsrx.d.ts +34 -0
- package/src/tooltip/index.ts +20 -0
- package/src/tooltip/tooltips/Tooltip.tsrx +71 -0
- package/src/tooltip/tooltips/Tooltip.tsrx.d.ts +39 -0
- package/src/tooltip/tooltips/TooltipWithBounds.tsrx +82 -0
- package/src/tooltip/tooltips/TooltipWithBounds.tsrx.d.ts +9 -0
- package/src/voronoi/components/VoronoiPolygon.tsrx +32 -0
- package/src/voronoi/components/VoronoiPolygon.tsrx.d.ts +14 -0
- package/src/voronoi/index.ts +6 -0
- package/src/voronoi/react/index.ts +5 -0
- package/src/voronoi/react/useVoronoi.tsrx +30 -0
- package/src/voronoi/react/useVoronoi.tsrx.d.ts +10 -0
- package/src/voronoi/voronoi.ts +32 -0
- package/src/wordcloud/Wordcloud.tsrx +20 -0
- package/src/wordcloud/Wordcloud.tsrx.d.ts +7 -0
- package/src/wordcloud/d3-cloud.d.ts +1 -0
- package/src/wordcloud/index.ts +3 -0
- package/src/wordcloud/types.ts +154 -0
- package/src/wordcloud/useWordcloud.tsrx +277 -0
- package/src/wordcloud/useWordcloud.tsrx.d.ts +16 -0
- package/src/xychart/classes/DataRegistry.ts +53 -0
- package/src/xychart/components/Tooltip.tsrx +356 -0
- package/src/xychart/components/Tooltip.tsrx.d.ts +57 -0
- package/src/xychart/components/XYChart.tsrx +196 -0
- package/src/xychart/components/XYChart.tsrx.d.ts +47 -0
- package/src/xychart/components/annotation/AnimatedAnnotation.tsrx +72 -0
- package/src/xychart/components/annotation/AnimatedAnnotation.tsrx.d.ts +7 -0
- package/src/xychart/components/annotation/Annotation.tsrx +20 -0
- package/src/xychart/components/annotation/Annotation.tsrx.d.ts +7 -0
- package/src/xychart/components/annotation/AnnotationCircleSubject.tsrx +12 -0
- package/src/xychart/components/annotation/AnnotationCircleSubject.tsrx.d.ts +5 -0
- package/src/xychart/components/annotation/AnnotationConnector.tsrx +12 -0
- package/src/xychart/components/annotation/AnnotationConnector.tsrx.d.ts +5 -0
- package/src/xychart/components/annotation/AnnotationLabel.tsrx +29 -0
- package/src/xychart/components/annotation/AnnotationLabel.tsrx.d.ts +5 -0
- package/src/xychart/components/annotation/AnnotationLineSubject.tsrx +28 -0
- package/src/xychart/components/annotation/AnnotationLineSubject.tsrx.d.ts +9 -0
- package/src/xychart/components/annotation/private/BaseAnnotation.tsrx +86 -0
- package/src/xychart/components/annotation/private/BaseAnnotation.tsrx.d.ts +18 -0
- package/src/xychart/components/axis/AnimatedAxis.tsrx +15 -0
- package/src/xychart/components/axis/AnimatedAxis.tsrx.d.ts +9 -0
- package/src/xychart/components/axis/Axis.tsrx +11 -0
- package/src/xychart/components/axis/Axis.tsrx.d.ts +5 -0
- package/src/xychart/components/axis/BaseAxis.tsrx +94 -0
- package/src/xychart/components/axis/BaseAxis.tsrx.d.ts +15 -0
- package/src/xychart/components/grid/AnimatedGrid.tsrx +34 -0
- package/src/xychart/components/grid/AnimatedGrid.tsrx.d.ts +8 -0
- package/src/xychart/components/grid/BaseGrid.tsrx +49 -0
- package/src/xychart/components/grid/BaseGrid.tsrx.d.ts +16 -0
- package/src/xychart/components/grid/Grid.tsrx +9 -0
- package/src/xychart/components/grid/Grid.tsrx.d.ts +4 -0
- package/src/xychart/components/series/AnimatedAreaSeries.tsrx +8 -0
- package/src/xychart/components/series/AnimatedAreaSeries.tsrx.d.ts +4 -0
- package/src/xychart/components/series/AnimatedAreaStack.tsrx +8 -0
- package/src/xychart/components/series/AnimatedAreaStack.tsrx.d.ts +4 -0
- package/src/xychart/components/series/AnimatedBarGroup.tsrx +8 -0
- package/src/xychart/components/series/AnimatedBarGroup.tsrx.d.ts +4 -0
- package/src/xychart/components/series/AnimatedBarSeries.tsrx +15 -0
- package/src/xychart/components/series/AnimatedBarSeries.tsrx.d.ts +4 -0
- package/src/xychart/components/series/AnimatedBarStack.tsrx +8 -0
- package/src/xychart/components/series/AnimatedBarStack.tsrx.d.ts +4 -0
- package/src/xychart/components/series/AnimatedGlyphSeries.tsrx +28 -0
- package/src/xychart/components/series/AnimatedGlyphSeries.tsrx.d.ts +8 -0
- package/src/xychart/components/series/AnimatedLineSeries.tsrx +8 -0
- package/src/xychart/components/series/AnimatedLineSeries.tsrx.d.ts +4 -0
- package/src/xychart/components/series/AreaSeries.tsrx +7 -0
- package/src/xychart/components/series/AreaSeries.tsrx.d.ts +4 -0
- package/src/xychart/components/series/AreaStack.tsrx +7 -0
- package/src/xychart/components/series/AreaStack.tsrx.d.ts +4 -0
- package/src/xychart/components/series/BarGroup.tsrx +8 -0
- package/src/xychart/components/series/BarGroup.tsrx.d.ts +4 -0
- package/src/xychart/components/series/BarSeries.tsrx +13 -0
- package/src/xychart/components/series/BarSeries.tsrx.d.ts +5 -0
- package/src/xychart/components/series/BarStack.tsrx +8 -0
- package/src/xychart/components/series/BarStack.tsrx.d.ts +4 -0
- package/src/xychart/components/series/GlyphSeries.tsrx +38 -0
- package/src/xychart/components/series/GlyphSeries.tsrx.d.ts +8 -0
- package/src/xychart/components/series/LineSeries.tsrx +7 -0
- package/src/xychart/components/series/LineSeries.tsrx.d.ts +4 -0
- package/src/xychart/components/series/private/AnimatedBars.tsrx +151 -0
- package/src/xychart/components/series/private/AnimatedBars.tsrx.d.ts +5 -0
- package/src/xychart/components/series/private/AnimatedGlyphs.tsrx +108 -0
- package/src/xychart/components/series/private/AnimatedGlyphs.tsrx.d.ts +40 -0
- package/src/xychart/components/series/private/AnimatedPath.tsrx +47 -0
- package/src/xychart/components/series/private/AnimatedPath.tsrx.d.ts +4 -0
- package/src/xychart/components/series/private/Bars.tsrx +45 -0
- package/src/xychart/components/series/private/Bars.tsrx.d.ts +4 -0
- package/src/xychart/components/series/private/BaseAreaSeries.tsrx +187 -0
- package/src/xychart/components/series/private/BaseAreaSeries.tsrx.d.ts +20 -0
- package/src/xychart/components/series/private/BaseAreaStack.tsrx +259 -0
- package/src/xychart/components/series/private/BaseAreaStack.tsrx.d.ts +19 -0
- package/src/xychart/components/series/private/BaseBarGroup.tsrx +198 -0
- package/src/xychart/components/series/private/BaseBarGroup.tsrx.d.ts +15 -0
- package/src/xychart/components/series/private/BaseBarSeries.tsrx +154 -0
- package/src/xychart/components/series/private/BaseBarSeries.tsrx.d.ts +16 -0
- package/src/xychart/components/series/private/BaseBarStack.tsrx +192 -0
- package/src/xychart/components/series/private/BaseBarStack.tsrx.d.ts +14 -0
- package/src/xychart/components/series/private/BaseGlyphSeries.tsrx +107 -0
- package/src/xychart/components/series/private/BaseGlyphSeries.tsrx.d.ts +14 -0
- package/src/xychart/components/series/private/BaseLineSeries.tsrx +135 -0
- package/src/xychart/components/series/private/BaseLineSeries.tsrx.d.ts +14 -0
- package/src/xychart/components/series/private/defaultRenderGlyph.tsrx +29 -0
- package/src/xychart/components/series/private/defaultRenderGlyph.tsrx.d.ts +3 -0
- package/src/xychart/constants.ts +9 -0
- package/src/xychart/context/DataContext.tsrx +23 -0
- package/src/xychart/context/DataContext.tsrx.d.ts +11 -0
- package/src/xychart/context/EventEmitterContext.tsrx +6 -0
- package/src/xychart/context/EventEmitterContext.tsrx.d.ts +3 -0
- package/src/xychart/context/ThemeContext.tsrx +7 -0
- package/src/xychart/context/ThemeContext.tsrx.d.ts +4 -0
- package/src/xychart/context/TooltipContext.tsrx +7 -0
- package/src/xychart/context/TooltipContext.tsrx.d.ts +3 -0
- package/src/xychart/hooks/useDataRegistry.tsrx +41 -0
- package/src/xychart/hooks/useDataRegistry.tsrx.d.ts +5 -0
- package/src/xychart/hooks/useDimensions.tsrx +40 -0
- package/src/xychart/hooks/useDimensions.tsrx.d.ts +15 -0
- package/src/xychart/hooks/useEventEmitter.tsrx +62 -0
- package/src/xychart/hooks/useEventEmitter.tsrx.d.ts +24 -0
- package/src/xychart/hooks/useEventEmitters.tsrx +64 -0
- package/src/xychart/hooks/useEventEmitters.tsrx.d.ts +25 -0
- package/src/xychart/hooks/useEventHandlers.tsrx +162 -0
- package/src/xychart/hooks/useEventHandlers.tsrx.d.ts +31 -0
- package/src/xychart/hooks/useScales.tsrx +113 -0
- package/src/xychart/hooks/useScales.tsrx.d.ts +15 -0
- package/src/xychart/hooks/useSeriesEvents.tsrx +82 -0
- package/src/xychart/hooks/useSeriesEvents.tsrx.d.ts +18 -0
- package/src/xychart/hooks/useStackedData.tsrx +96 -0
- package/src/xychart/hooks/useStackedData.tsrx.d.ts +14 -0
- package/src/xychart/index.ts +56 -0
- package/src/xychart/providers/DataProvider.tsrx +141 -0
- package/src/xychart/providers/DataProvider.tsrx.d.ts +22 -0
- package/src/xychart/providers/EventEmitterProvider.tsrx +10 -0
- package/src/xychart/providers/EventEmitterProvider.tsrx.d.ts +6 -0
- package/src/xychart/providers/ThemeProvider.tsrx +13 -0
- package/src/xychart/providers/ThemeProvider.tsrx.d.ts +8 -0
- package/src/xychart/providers/TooltipProvider.tsrx +101 -0
- package/src/xychart/providers/TooltipProvider.tsrx.d.ts +10 -0
- package/src/xychart/theme/buildChartTheme.ts +178 -0
- package/src/xychart/theme/colors.ts +174 -0
- package/src/xychart/theme/themes/dark.ts +24 -0
- package/src/xychart/theme/themes/light.ts +16 -0
- package/src/xychart/typeguards/events.ts +12 -0
- package/src/xychart/typeguards/isValidNumber.ts +3 -0
- package/src/xychart/types/axis.ts +3 -0
- package/src/xychart/types/data.ts +57 -0
- package/src/xychart/types/event.ts +30 -0
- package/src/xychart/types/index.ts +6 -0
- package/src/xychart/types/series.ts +219 -0
- package/src/xychart/types/theme.ts +50 -0
- package/src/xychart/types/tooltip.ts +24 -0
- package/src/xychart/utils/cleanColorString.ts +4 -0
- package/src/xychart/utils/collectDataRegistryEntries.ts +50 -0
- package/src/xychart/utils/combineBarStackData.ts +51 -0
- package/src/xychart/utils/findNearestDatumSingleDimension.ts +64 -0
- package/src/xychart/utils/findNearestDatumX.ts +34 -0
- package/src/xychart/utils/findNearestDatumXY.ts +42 -0
- package/src/xychart/utils/findNearestDatumY.ts +34 -0
- package/src/xychart/utils/findNearestGroupDatum.ts +50 -0
- package/src/xychart/utils/findNearestStackDatum.ts +44 -0
- package/src/xychart/utils/getBarStackRegistryData.ts +49 -0
- package/src/xychart/utils/getChildrenAndGrandchildrenWithProps.ts +24 -0
- package/src/xychart/utils/getScaleBandwidth.ts +7 -0
- package/src/xychart/utils/getScaleBaseline.ts +24 -0
- package/src/xychart/utils/getScaledValueFactory.ts +21 -0
- package/src/xychart/utils/isDiscreteScale.ts +9 -0
- package/src/zoom/Zoom.tsrx +375 -0
- package/src/zoom/Zoom.tsrx.d.ts +62 -0
- package/src/zoom/index.ts +16 -0
- package/src/zoom/types.ts +120 -0
- package/src/zoom/util/matrix.ts +104 -0
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { createElement } from 'octane';
|
|
2
|
+
import type { ReactNode, FunctionComponent, ComponentClass } from 'react';
|
|
3
|
+
import cx from 'classnames';
|
|
4
|
+
import { Group } from '@octanejs/visx/group';
|
|
5
|
+
import type { HierarchyNode, HierarchyRectangularNode } from 'd3-hierarchy';
|
|
6
|
+
import { partition as d3partition } from 'd3-hierarchy';
|
|
7
|
+
import DefaultNode from '../HierarchyDefaultRectNode.tsrx';
|
|
8
|
+
|
|
9
|
+
export type NodeComponentProps<Datum> = { node: HierarchyRectangularNode<Datum> };
|
|
10
|
+
|
|
11
|
+
export type PartitionProps<Datum> = {
|
|
12
|
+
/** The root hierarchy node from which to derive the treemap layout. */
|
|
13
|
+
root: HierarchyNode<Datum>;
|
|
14
|
+
/** Render override function which is passed the computed partition layout data. */
|
|
15
|
+
children?: (pack: HierarchyRectangularNode<Datum>) => ReactNode;
|
|
16
|
+
/** top offset applied to the g element container. */
|
|
17
|
+
top?: number;
|
|
18
|
+
/** left offset applied to the g element container. */
|
|
19
|
+
left?: number;
|
|
20
|
+
/** className applied to the g element container. */
|
|
21
|
+
className?: string;
|
|
22
|
+
/** Sets this partition layout’s size to the specified two-element array of numbers `[width, height]` . */
|
|
23
|
+
size?: [number, number];
|
|
24
|
+
/** Whether partition layout rounds values. */
|
|
25
|
+
round?: boolean;
|
|
26
|
+
/** Sets padding, used to separate a node’s adjacent children. */
|
|
27
|
+
padding?: number;
|
|
28
|
+
/** Component which renders a single cluster node, passed the node object. */
|
|
29
|
+
nodeComponent?: | FunctionComponent<NodeComponentProps<Datum>>
|
|
30
|
+
| ComponentClass<NodeComponentProps<Datum>>;
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
export default function Partition<Datum>({
|
|
34
|
+
top,
|
|
35
|
+
left,
|
|
36
|
+
className,
|
|
37
|
+
root,
|
|
38
|
+
size,
|
|
39
|
+
round,
|
|
40
|
+
padding,
|
|
41
|
+
children,
|
|
42
|
+
nodeComponent = DefaultNode,
|
|
43
|
+
}: PartitionProps<Datum>) {
|
|
44
|
+
const partition = d3partition<Datum>();
|
|
45
|
+
if (size) partition.size(size);
|
|
46
|
+
if (round) partition.round(round);
|
|
47
|
+
if (padding) partition.padding(padding);
|
|
48
|
+
|
|
49
|
+
const data = partition(root);
|
|
50
|
+
|
|
51
|
+
if (children) return <>
|
|
52
|
+
{children(data)}
|
|
53
|
+
</>;
|
|
54
|
+
|
|
55
|
+
return <Group top={top} left={left} className={cx('visx-partition', className)}>
|
|
56
|
+
{nodeComponent &&
|
|
57
|
+
data.descendants().map(
|
|
58
|
+
(node, i) =>
|
|
59
|
+
<Group key={`partition-node-${i}`}>{createElement(nodeComponent, { node })}</Group>,
|
|
60
|
+
)}
|
|
61
|
+
</Group>;
|
|
62
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
// Generated by scripts/generate-tsrx-types.mjs.
|
|
2
|
+
import type { ReactNode, FunctionComponent, ComponentClass } from 'react';
|
|
3
|
+
import type { HierarchyNode, HierarchyRectangularNode } from 'd3-hierarchy';
|
|
4
|
+
export type NodeComponentProps<Datum> = {
|
|
5
|
+
node: HierarchyRectangularNode<Datum>;
|
|
6
|
+
};
|
|
7
|
+
export type PartitionProps<Datum> = {
|
|
8
|
+
/** The root hierarchy node from which to derive the treemap layout. */
|
|
9
|
+
root: HierarchyNode<Datum>;
|
|
10
|
+
/** Render override function which is passed the computed partition layout data. */
|
|
11
|
+
children?: (pack: HierarchyRectangularNode<Datum>) => ReactNode;
|
|
12
|
+
/** top offset applied to the g element container. */
|
|
13
|
+
top?: number;
|
|
14
|
+
/** left offset applied to the g element container. */
|
|
15
|
+
left?: number;
|
|
16
|
+
/** className applied to the g element container. */
|
|
17
|
+
className?: string;
|
|
18
|
+
/** Sets this partition layout’s size to the specified two-element array of numbers `[width, height]` . */
|
|
19
|
+
size?: [number, number];
|
|
20
|
+
/** Whether partition layout rounds values. */
|
|
21
|
+
round?: boolean;
|
|
22
|
+
/** Sets padding, used to separate a node’s adjacent children. */
|
|
23
|
+
padding?: number;
|
|
24
|
+
/** Component which renders a single cluster node, passed the node object. */
|
|
25
|
+
nodeComponent?: FunctionComponent<NodeComponentProps<Datum>> | ComponentClass<NodeComponentProps<Datum>>;
|
|
26
|
+
};
|
|
27
|
+
export default function Partition<Datum>({ top, left, className, root, size, round, padding, children, nodeComponent, }: PartitionProps<Datum>): import("react").JSX.Element;
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { createElement } from 'octane';
|
|
2
|
+
import type { ReactNode, FunctionComponent, ComponentClass } from 'react';
|
|
3
|
+
import cx from 'classnames';
|
|
4
|
+
import { Group } from '@octanejs/visx/group';
|
|
5
|
+
import type { HierarchyNode, HierarchyPointNode, HierarchyPointLink } from 'd3-hierarchy';
|
|
6
|
+
import { tree as d3tree } from 'd3-hierarchy';
|
|
7
|
+
import DefaultLink from '../HierarchyDefaultLink.tsrx';
|
|
8
|
+
import DefaultNode from '../HierarchyDefaultNode.tsrx';
|
|
9
|
+
|
|
10
|
+
export type NodeComponentProps<Datum> = { node: HierarchyPointNode<Datum> };
|
|
11
|
+
export type LinkComponentProps<Datum> = { link: HierarchyPointLink<Datum> };
|
|
12
|
+
|
|
13
|
+
export type TreeProps<Datum> = {
|
|
14
|
+
/** The root hierarchy node from which to derive the tree layout. */
|
|
15
|
+
root: HierarchyNode<Datum>;
|
|
16
|
+
/** Render override function which is passed the computed cluster layout data. */
|
|
17
|
+
children?: (pack: HierarchyPointNode<Datum>) => ReactNode;
|
|
18
|
+
/** top offset applied to the g element container. */
|
|
19
|
+
top?: number;
|
|
20
|
+
/** left offset applied to the g element container. */
|
|
21
|
+
left?: number;
|
|
22
|
+
/** className applied to the g element container. */
|
|
23
|
+
className?: string;
|
|
24
|
+
/**
|
|
25
|
+
* Sets this tree layout’s size to the specified two-element array of numbers `[width, height]`.
|
|
26
|
+
* This is an arbitrary coordinate system, e.g., for a radial layout, a size of `[360, radius]`
|
|
27
|
+
* corresponds to a breadth of 360° and a depth of radius.
|
|
28
|
+
*/
|
|
29
|
+
size?: [number, number];
|
|
30
|
+
/**
|
|
31
|
+
* Sets this tree layout’s node size to the specified two-element array of numbers `[width, height]`.
|
|
32
|
+
* If unset, layout size is used instead. When a node size is specified, the root node is always
|
|
33
|
+
* positioned at `⟨0, 0⟩`.
|
|
34
|
+
*/
|
|
35
|
+
nodeSize?: [number, number];
|
|
36
|
+
/**
|
|
37
|
+
* Sets the layout's separation accessor used to determine the separation of neighboring nodes.
|
|
38
|
+
* See https://github.com/d3/d3-hierarchy/blob/master/README.md#tree_separation for more.
|
|
39
|
+
*/
|
|
40
|
+
separation?: (a: HierarchyPointNode<Datum>, b: HierarchyPointNode<Datum>) => number;
|
|
41
|
+
/** Component which renders a single cluster link, passed the link object. */
|
|
42
|
+
linkComponent?: | FunctionComponent<LinkComponentProps<Datum>>
|
|
43
|
+
| ComponentClass<LinkComponentProps<Datum>>;
|
|
44
|
+
/** Component which renders a single cluster node, passed the node object. */
|
|
45
|
+
nodeComponent?: | FunctionComponent<NodeComponentProps<Datum>>
|
|
46
|
+
| ComponentClass<NodeComponentProps<Datum>>;
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
export default function Tree<Datum>({
|
|
50
|
+
top,
|
|
51
|
+
left,
|
|
52
|
+
className,
|
|
53
|
+
root,
|
|
54
|
+
size,
|
|
55
|
+
nodeSize,
|
|
56
|
+
separation,
|
|
57
|
+
children,
|
|
58
|
+
linkComponent = DefaultLink,
|
|
59
|
+
nodeComponent = DefaultNode,
|
|
60
|
+
}: TreeProps<Datum>) {
|
|
61
|
+
const tree = d3tree<Datum>();
|
|
62
|
+
if (size) tree.size(size);
|
|
63
|
+
if (nodeSize) tree.nodeSize(nodeSize);
|
|
64
|
+
if (separation) tree.separation(separation);
|
|
65
|
+
|
|
66
|
+
const data = tree(root);
|
|
67
|
+
|
|
68
|
+
if (children) return <>
|
|
69
|
+
{children(data)}
|
|
70
|
+
</>;
|
|
71
|
+
|
|
72
|
+
return <Group top={top} left={left} className={cx('visx-tree', className)}>
|
|
73
|
+
{linkComponent &&
|
|
74
|
+
data.links().map(
|
|
75
|
+
(link, i) => <Group key={`tree-link-${i}`}>{createElement(linkComponent, { link })}</Group>,
|
|
76
|
+
)}
|
|
77
|
+
{nodeComponent &&
|
|
78
|
+
data.descendants().map(
|
|
79
|
+
(node, i) => <Group key={`tree-node-${i}`}>{createElement(nodeComponent, { node })}</Group>,
|
|
80
|
+
)}
|
|
81
|
+
</Group>;
|
|
82
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
// Generated by scripts/generate-tsrx-types.mjs.
|
|
2
|
+
import type { ReactNode, FunctionComponent, ComponentClass } from 'react';
|
|
3
|
+
import type { HierarchyNode, HierarchyPointNode, HierarchyPointLink } from 'd3-hierarchy';
|
|
4
|
+
export type NodeComponentProps<Datum> = {
|
|
5
|
+
node: HierarchyPointNode<Datum>;
|
|
6
|
+
};
|
|
7
|
+
export type LinkComponentProps<Datum> = {
|
|
8
|
+
link: HierarchyPointLink<Datum>;
|
|
9
|
+
};
|
|
10
|
+
export type TreeProps<Datum> = {
|
|
11
|
+
/** The root hierarchy node from which to derive the tree layout. */
|
|
12
|
+
root: HierarchyNode<Datum>;
|
|
13
|
+
/** Render override function which is passed the computed cluster layout data. */
|
|
14
|
+
children?: (pack: HierarchyPointNode<Datum>) => ReactNode;
|
|
15
|
+
/** top offset applied to the g element container. */
|
|
16
|
+
top?: number;
|
|
17
|
+
/** left offset applied to the g element container. */
|
|
18
|
+
left?: number;
|
|
19
|
+
/** className applied to the g element container. */
|
|
20
|
+
className?: string;
|
|
21
|
+
/**
|
|
22
|
+
* Sets this tree layout’s size to the specified two-element array of numbers `[width, height]`.
|
|
23
|
+
* This is an arbitrary coordinate system, e.g., for a radial layout, a size of `[360, radius]`
|
|
24
|
+
* corresponds to a breadth of 360° and a depth of radius.
|
|
25
|
+
*/
|
|
26
|
+
size?: [number, number];
|
|
27
|
+
/**
|
|
28
|
+
* Sets this tree layout’s node size to the specified two-element array of numbers `[width, height]`.
|
|
29
|
+
* If unset, layout size is used instead. When a node size is specified, the root node is always
|
|
30
|
+
* positioned at `⟨0, 0⟩`.
|
|
31
|
+
*/
|
|
32
|
+
nodeSize?: [number, number];
|
|
33
|
+
/**
|
|
34
|
+
* Sets the layout's separation accessor used to determine the separation of neighboring nodes.
|
|
35
|
+
* See https://github.com/d3/d3-hierarchy/blob/master/README.md#tree_separation for more.
|
|
36
|
+
*/
|
|
37
|
+
separation?: (a: HierarchyPointNode<Datum>, b: HierarchyPointNode<Datum>) => number;
|
|
38
|
+
/** Component which renders a single cluster link, passed the link object. */
|
|
39
|
+
linkComponent?: FunctionComponent<LinkComponentProps<Datum>> | ComponentClass<LinkComponentProps<Datum>>;
|
|
40
|
+
/** Component which renders a single cluster node, passed the node object. */
|
|
41
|
+
nodeComponent?: FunctionComponent<NodeComponentProps<Datum>> | ComponentClass<NodeComponentProps<Datum>>;
|
|
42
|
+
};
|
|
43
|
+
export default function Tree<Datum>({ top, left, className, root, size, nodeSize, separation, children, linkComponent, nodeComponent, }: TreeProps<Datum>): import("react").JSX.Element;
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { createElement } from 'octane';
|
|
2
|
+
import type { ReactNode, FunctionComponent, ComponentClass } from 'react';
|
|
3
|
+
import cx from 'classnames';
|
|
4
|
+
import { Group } from '@octanejs/visx/group';
|
|
5
|
+
import type { HierarchyRectangularNode, HierarchyNode } from 'd3-hierarchy';
|
|
6
|
+
import { treemap as d3treemap } from 'd3-hierarchy';
|
|
7
|
+
import HierarchyDefaultRectNode from '../HierarchyDefaultRectNode.tsrx';
|
|
8
|
+
import setNumberOrNumberAccessor from '../utils/setNumOrNumAccessor';
|
|
9
|
+
import type { TileMethod } from '../types';
|
|
10
|
+
|
|
11
|
+
export type NodeComponentProps<Datum> = { node: HierarchyRectangularNode<Datum> };
|
|
12
|
+
|
|
13
|
+
type NumerOrNumberAccessor<Datum> = number | ((node: HierarchyRectangularNode<Datum>) => number);
|
|
14
|
+
|
|
15
|
+
export type TreemapProps<Datum> = {
|
|
16
|
+
/** The root hierarchy node from which to derive the treemap layout. */
|
|
17
|
+
root: HierarchyNode<Datum>;
|
|
18
|
+
/** Render override function which is passed the computed pack layout data. */
|
|
19
|
+
children?: (pack: HierarchyRectangularNode<Datum>) => ReactNode;
|
|
20
|
+
/** top offset applied to the g element container. */
|
|
21
|
+
top?: number;
|
|
22
|
+
/** left offset applied to the g element container. */
|
|
23
|
+
left?: number;
|
|
24
|
+
/** className applied to the g element container. */
|
|
25
|
+
className?: string;
|
|
26
|
+
/**
|
|
27
|
+
* Sets the treemap tiling method to the specified function (exported from this package).
|
|
28
|
+
* See https://github.com/d3/d3-hierarchy#treemap for more.
|
|
29
|
+
*/
|
|
30
|
+
tile?: TileMethod<Datum>;
|
|
31
|
+
/** Sets this treemap layout’s size to the specified two-element array of numbers [width, height] */
|
|
32
|
+
size?: [number, number];
|
|
33
|
+
/** Whether to round treemap values. */
|
|
34
|
+
round?: boolean;
|
|
35
|
+
/** Sets both inner and outer padding to the specified number or accessor. */
|
|
36
|
+
padding?: NumerOrNumberAccessor<Datum>;
|
|
37
|
+
/** Sets padding used to separate a node’s adjacent children. */
|
|
38
|
+
paddingInner?: NumerOrNumberAccessor<Datum>;
|
|
39
|
+
/** Sets padding used to spearate a node from its children. */
|
|
40
|
+
paddingOuter?: NumerOrNumberAccessor<Datum>;
|
|
41
|
+
/** Sets padding used to spearate the top edge of a node from its children. */
|
|
42
|
+
paddingTop?: NumerOrNumberAccessor<Datum>;
|
|
43
|
+
/** Sets padding used to spearate the right edge of a node from its children. */
|
|
44
|
+
paddingRight?: NumerOrNumberAccessor<Datum>;
|
|
45
|
+
/** Sets padding used to spearate the bottom edge of a node from its children. */
|
|
46
|
+
paddingBottom?: NumerOrNumberAccessor<Datum>;
|
|
47
|
+
/** Sets padding used to spearate the left edge of a node from its children. */
|
|
48
|
+
paddingLeft?: NumerOrNumberAccessor<Datum>;
|
|
49
|
+
/** Component which renders a single pack node, passed the node object. */
|
|
50
|
+
nodeComponent?: | FunctionComponent<NodeComponentProps<Datum>>
|
|
51
|
+
| ComponentClass<NodeComponentProps<Datum>>;
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
export default function Treemap<Datum>({
|
|
55
|
+
top,
|
|
56
|
+
left,
|
|
57
|
+
className,
|
|
58
|
+
root,
|
|
59
|
+
tile,
|
|
60
|
+
size,
|
|
61
|
+
round,
|
|
62
|
+
padding,
|
|
63
|
+
paddingInner,
|
|
64
|
+
paddingOuter,
|
|
65
|
+
paddingTop,
|
|
66
|
+
paddingRight,
|
|
67
|
+
paddingBottom,
|
|
68
|
+
paddingLeft,
|
|
69
|
+
children,
|
|
70
|
+
nodeComponent = HierarchyDefaultRectNode,
|
|
71
|
+
}: TreemapProps<Datum>) {
|
|
72
|
+
const treemap = d3treemap<Datum>();
|
|
73
|
+
if (tile) treemap.tile(tile);
|
|
74
|
+
if (size) treemap.size(size);
|
|
75
|
+
if (round) treemap.round(round);
|
|
76
|
+
if (padding) setNumberOrNumberAccessor(treemap.padding, padding);
|
|
77
|
+
if (paddingInner) setNumberOrNumberAccessor(treemap.paddingInner, paddingInner);
|
|
78
|
+
if (paddingOuter) setNumberOrNumberAccessor(treemap.paddingOuter, paddingOuter);
|
|
79
|
+
if (paddingTop) setNumberOrNumberAccessor(treemap.paddingTop, paddingTop);
|
|
80
|
+
if (paddingRight) setNumberOrNumberAccessor(treemap.paddingRight, paddingRight);
|
|
81
|
+
if (paddingBottom) setNumberOrNumberAccessor(treemap.paddingBottom, paddingBottom);
|
|
82
|
+
if (paddingLeft) setNumberOrNumberAccessor(treemap.paddingLeft, paddingLeft);
|
|
83
|
+
|
|
84
|
+
const data = treemap(root);
|
|
85
|
+
|
|
86
|
+
if (children) return <>
|
|
87
|
+
{children(data)}
|
|
88
|
+
</>;
|
|
89
|
+
|
|
90
|
+
return <Group top={top} left={left} className={cx('visx-treemap', className)}>
|
|
91
|
+
{nodeComponent &&
|
|
92
|
+
data.descendants().map(
|
|
93
|
+
(node, i) =>
|
|
94
|
+
<Group key={`treemap-node-${i}`}>{createElement(nodeComponent, { node })}</Group>,
|
|
95
|
+
)}
|
|
96
|
+
</Group>;
|
|
97
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
// Generated by scripts/generate-tsrx-types.mjs.
|
|
2
|
+
import type { ReactNode, FunctionComponent, ComponentClass } from 'react';
|
|
3
|
+
import type { HierarchyRectangularNode, HierarchyNode } from 'd3-hierarchy';
|
|
4
|
+
import type { TileMethod } from '../types';
|
|
5
|
+
export type NodeComponentProps<Datum> = {
|
|
6
|
+
node: HierarchyRectangularNode<Datum>;
|
|
7
|
+
};
|
|
8
|
+
type NumerOrNumberAccessor<Datum> = number | ((node: HierarchyRectangularNode<Datum>) => number);
|
|
9
|
+
export type TreemapProps<Datum> = {
|
|
10
|
+
/** The root hierarchy node from which to derive the treemap layout. */
|
|
11
|
+
root: HierarchyNode<Datum>;
|
|
12
|
+
/** Render override function which is passed the computed pack layout data. */
|
|
13
|
+
children?: (pack: HierarchyRectangularNode<Datum>) => ReactNode;
|
|
14
|
+
/** top offset applied to the g element container. */
|
|
15
|
+
top?: number;
|
|
16
|
+
/** left offset applied to the g element container. */
|
|
17
|
+
left?: number;
|
|
18
|
+
/** className applied to the g element container. */
|
|
19
|
+
className?: string;
|
|
20
|
+
/**
|
|
21
|
+
* Sets the treemap tiling method to the specified function (exported from this package).
|
|
22
|
+
* See https://github.com/d3/d3-hierarchy#treemap for more.
|
|
23
|
+
*/
|
|
24
|
+
tile?: TileMethod<Datum>;
|
|
25
|
+
/** Sets this treemap layout’s size to the specified two-element array of numbers [width, height] */
|
|
26
|
+
size?: [number, number];
|
|
27
|
+
/** Whether to round treemap values. */
|
|
28
|
+
round?: boolean;
|
|
29
|
+
/** Sets both inner and outer padding to the specified number or accessor. */
|
|
30
|
+
padding?: NumerOrNumberAccessor<Datum>;
|
|
31
|
+
/** Sets padding used to separate a node’s adjacent children. */
|
|
32
|
+
paddingInner?: NumerOrNumberAccessor<Datum>;
|
|
33
|
+
/** Sets padding used to spearate a node from its children. */
|
|
34
|
+
paddingOuter?: NumerOrNumberAccessor<Datum>;
|
|
35
|
+
/** Sets padding used to spearate the top edge of a node from its children. */
|
|
36
|
+
paddingTop?: NumerOrNumberAccessor<Datum>;
|
|
37
|
+
/** Sets padding used to spearate the right edge of a node from its children. */
|
|
38
|
+
paddingRight?: NumerOrNumberAccessor<Datum>;
|
|
39
|
+
/** Sets padding used to spearate the bottom edge of a node from its children. */
|
|
40
|
+
paddingBottom?: NumerOrNumberAccessor<Datum>;
|
|
41
|
+
/** Sets padding used to spearate the left edge of a node from its children. */
|
|
42
|
+
paddingLeft?: NumerOrNumberAccessor<Datum>;
|
|
43
|
+
/** Component which renders a single pack node, passed the node object. */
|
|
44
|
+
nodeComponent?: FunctionComponent<NodeComponentProps<Datum>> | ComponentClass<NodeComponentProps<Datum>>;
|
|
45
|
+
};
|
|
46
|
+
export default function Treemap<Datum>({ top, left, className, root, tile, size, round, padding, paddingInner, paddingOuter, paddingTop, paddingRight, paddingBottom, paddingLeft, children, nodeComponent, }: TreemapProps<Datum>): import("react").JSX.Element;
|
|
47
|
+
export {};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
// @octanejs/visx/hierarchy
|
|
2
|
+
export { default as Tree } from './hierarchies/Tree.tsrx';
|
|
3
|
+
export { default as Treemap } from './hierarchies/Treemap.tsrx';
|
|
4
|
+
export { default as Cluster } from './hierarchies/Cluster.tsrx';
|
|
5
|
+
export { default as Pack } from './hierarchies/Pack.tsrx';
|
|
6
|
+
export { default as Partition } from './hierarchies/Partition.tsrx';
|
|
7
|
+
export { default as HierarchyDefaultLink } from './HierarchyDefaultLink.tsrx';
|
|
8
|
+
export { default as HierarchyDefaultNode } from './HierarchyDefaultNode.tsrx';
|
|
9
|
+
export { default as HierarchyDefaultRectNode } from './HierarchyDefaultRectNode.tsrx';
|
|
10
|
+
export {
|
|
11
|
+
hierarchy,
|
|
12
|
+
stratify,
|
|
13
|
+
treemapSquarify,
|
|
14
|
+
treemapBinary,
|
|
15
|
+
treemapResquarify,
|
|
16
|
+
treemapDice,
|
|
17
|
+
treemapSlice,
|
|
18
|
+
treemapSliceDice,
|
|
19
|
+
} from 'd3-hierarchy';
|
|
20
|
+
|
|
21
|
+
export type * from './types';
|
|
22
|
+
export type { ClusterProps } from './hierarchies/Cluster.tsrx';
|
|
23
|
+
export type { PackProps } from './hierarchies/Pack.tsrx';
|
|
24
|
+
export type { PartitionProps } from './hierarchies/Partition.tsrx';
|
|
25
|
+
export type { TreeProps } from './hierarchies/Tree.tsrx';
|
|
26
|
+
export type { TreemapProps } from './hierarchies/Treemap.tsrx';
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/** Re-export useful types from d3-hierarchy. */
|
|
2
|
+
import type { HierarchyRectangularNode } from 'd3-hierarchy';
|
|
3
|
+
|
|
4
|
+
export type {
|
|
5
|
+
HierarchyNode,
|
|
6
|
+
HierarchyRectangularNode,
|
|
7
|
+
HierarchyCircularNode,
|
|
8
|
+
HierarchyPointLink,
|
|
9
|
+
HierarchyPointNode,
|
|
10
|
+
HierarchyCircularLink,
|
|
11
|
+
HierarchyRectangularLink,
|
|
12
|
+
HierarchyLink,
|
|
13
|
+
} from 'd3-hierarchy';
|
|
14
|
+
|
|
15
|
+
export type TileMethod<Datum> = (
|
|
16
|
+
n: HierarchyRectangularNode<Datum>,
|
|
17
|
+
x0: number,
|
|
18
|
+
y0: number,
|
|
19
|
+
x1: number,
|
|
20
|
+
y1: number,
|
|
21
|
+
) => void;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This is a workaround for TypeScript not inferring the correct
|
|
3
|
+
* method overload/signature for some d3 shape methods.
|
|
4
|
+
*/
|
|
5
|
+
export default function setNumberOrNumberAccessor<NumAccessor>(
|
|
6
|
+
func: (d: number | NumAccessor) => void,
|
|
7
|
+
value: number | NumAccessor,
|
|
8
|
+
) {
|
|
9
|
+
if (typeof value === 'number') func(value);
|
|
10
|
+
else func(value);
|
|
11
|
+
}
|
package/src/index.ts
ADDED
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
// @octanejs/visx/visx
|
|
2
|
+
import * as A11y from '@octanejs/visx/a11y';
|
|
3
|
+
import * as Annotation from '@octanejs/visx/annotation';
|
|
4
|
+
import * as Axis from '@octanejs/visx/axis';
|
|
5
|
+
import * as Bounds from '@octanejs/visx/bounds';
|
|
6
|
+
import * as Brush from '@octanejs/visx/brush';
|
|
7
|
+
import * as Chart from '@octanejs/visx/chart';
|
|
8
|
+
import * as ClipPath from '@octanejs/visx/clip-path';
|
|
9
|
+
import * as Curve from '@octanejs/visx/curve';
|
|
10
|
+
import * as Drag from '@octanejs/visx/drag';
|
|
11
|
+
import * as Event from '@octanejs/visx/event';
|
|
12
|
+
import * as Geo from '@octanejs/visx/geo';
|
|
13
|
+
import * as Glyph from '@octanejs/visx/glyph';
|
|
14
|
+
import * as Gradient from '@octanejs/visx/gradient';
|
|
15
|
+
import * as Grid from '@octanejs/visx/grid';
|
|
16
|
+
import * as Group from '@octanejs/visx/group';
|
|
17
|
+
import * as Heatmap from '@octanejs/visx/heatmap';
|
|
18
|
+
import * as Hierarchy from '@octanejs/visx/hierarchy';
|
|
19
|
+
import * as Kernel from '@octanejs/visx/kernel';
|
|
20
|
+
import * as Legend from '@octanejs/visx/legend';
|
|
21
|
+
import * as Marker from '@octanejs/visx/marker';
|
|
22
|
+
import * as MockData from '@octanejs/visx/mock-data';
|
|
23
|
+
import * as Network from '@octanejs/visx/network';
|
|
24
|
+
import * as Pattern from '@octanejs/visx/pattern';
|
|
25
|
+
import * as Point from '@octanejs/visx/point';
|
|
26
|
+
import * as Responsive from '@octanejs/visx/responsive';
|
|
27
|
+
import * as Scale from '@octanejs/visx/scale';
|
|
28
|
+
import * as Shape from '@octanejs/visx/shape';
|
|
29
|
+
import * as Text from '@octanejs/visx/text';
|
|
30
|
+
import * as Theme from '@octanejs/visx/theme';
|
|
31
|
+
import * as Threshold from '@octanejs/visx/threshold';
|
|
32
|
+
import * as Tooltip from '@octanejs/visx/tooltip';
|
|
33
|
+
import * as Voronoi from '@octanejs/visx/voronoi';
|
|
34
|
+
import * as Wordcloud from '@octanejs/visx/wordcloud';
|
|
35
|
+
import * as XYChart from '@octanejs/visx/xychart';
|
|
36
|
+
import * as Zoom from '@octanejs/visx/zoom';
|
|
37
|
+
|
|
38
|
+
export {
|
|
39
|
+
A11y,
|
|
40
|
+
Annotation,
|
|
41
|
+
Axis,
|
|
42
|
+
Bounds,
|
|
43
|
+
Brush,
|
|
44
|
+
Chart,
|
|
45
|
+
ClipPath,
|
|
46
|
+
Curve,
|
|
47
|
+
Drag,
|
|
48
|
+
Event,
|
|
49
|
+
Geo,
|
|
50
|
+
Glyph,
|
|
51
|
+
Gradient,
|
|
52
|
+
Grid,
|
|
53
|
+
Group,
|
|
54
|
+
Heatmap,
|
|
55
|
+
Hierarchy,
|
|
56
|
+
Kernel,
|
|
57
|
+
Legend,
|
|
58
|
+
Marker,
|
|
59
|
+
MockData,
|
|
60
|
+
Network,
|
|
61
|
+
Pattern,
|
|
62
|
+
Point,
|
|
63
|
+
Responsive,
|
|
64
|
+
Scale,
|
|
65
|
+
Shape,
|
|
66
|
+
Text,
|
|
67
|
+
Theme,
|
|
68
|
+
Threshold,
|
|
69
|
+
Tooltip,
|
|
70
|
+
Voronoi,
|
|
71
|
+
Wordcloud,
|
|
72
|
+
XYChart,
|
|
73
|
+
Zoom,
|
|
74
|
+
};
|