gitextract_s3xwcrx5/ ├── .eslintignore ├── .eslintrc.js ├── .github/ │ └── workflows/ │ ├── pull_request.yml │ └── push.yml ├── .gitignore ├── .npmignore ├── .npmrc ├── .nvmrc ├── .prettierignore ├── .yarnrc.yml ├── ATTRIBUTION.md ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── PULL_REQUEST_TEMPLATE.md ├── README.md ├── babel.config.js ├── config-eslint/ │ ├── base.js │ ├── next.js │ ├── prettier.js │ └── typescript.js ├── lerna.json ├── package.json ├── packages/ │ ├── sizes.json │ ├── visx-annotation/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── components/ │ │ │ │ ├── Annotation.tsx │ │ │ │ ├── CircleSubject.tsx │ │ │ │ ├── Connector.tsx │ │ │ │ ├── EditableAnnotation.tsx │ │ │ │ ├── HtmlLabel.tsx │ │ │ │ ├── Label.tsx │ │ │ │ ├── LabelAnchorLine.tsx │ │ │ │ └── LineSubject.tsx │ │ │ ├── context/ │ │ │ │ └── AnnotationContext.tsx │ │ │ ├── index.ts │ │ │ └── types/ │ │ │ └── index.ts │ │ ├── test/ │ │ │ ├── Annotation.test.tsx │ │ │ ├── CircleSubject.test.tsx │ │ │ ├── Connector.test.tsx │ │ │ ├── EditableAnnotation.test.tsx │ │ │ ├── HtmlLabel.test.tsx │ │ │ ├── Label.test.tsx │ │ │ ├── LineSubject.test.tsx │ │ │ ├── svgMock.ts │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-axis/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── axis/ │ │ │ │ ├── Axis.tsx │ │ │ │ ├── AxisBottom.tsx │ │ │ │ ├── AxisLeft.tsx │ │ │ │ ├── AxisRenderer.tsx │ │ │ │ ├── AxisRight.tsx │ │ │ │ ├── AxisTop.tsx │ │ │ │ └── Ticks.tsx │ │ │ ├── constants/ │ │ │ │ └── orientation.ts │ │ │ ├── index.ts │ │ │ ├── types.ts │ │ │ └── utils/ │ │ │ ├── createPoint.ts │ │ │ ├── getAxisRangePaddingConfig.ts │ │ │ ├── getLabelTransform.ts │ │ │ ├── getTickFormatter.ts │ │ │ └── getTickPosition.ts │ │ ├── test/ │ │ │ ├── Axis.test.tsx │ │ │ ├── AxisBottom.test.tsx │ │ │ ├── AxisLeft.test.tsx │ │ │ ├── AxisRight.test.tsx │ │ │ ├── AxisTop.test.tsx │ │ │ ├── Orientation.test.ts │ │ │ ├── scales.test.tsx │ │ │ ├── svgMock.ts │ │ │ ├── tsconfig.json │ │ │ └── utils/ │ │ │ ├── getAxisRangePaddingConfig.test.ts │ │ │ └── getTickPosition.test.ts │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-bounds/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── enhancers/ │ │ │ │ └── withBoundingRects.tsx │ │ │ └── index.ts │ │ ├── test/ │ │ │ ├── tsconfig.json │ │ │ └── withBoundingRects.test.tsx │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-brush/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── BaseBrush.tsx │ │ │ ├── Brush.tsx │ │ │ ├── BrushCorner.tsx │ │ │ ├── BrushHandle.tsx │ │ │ ├── BrushOverlay.tsx │ │ │ ├── BrushSelection.tsx │ │ │ ├── index.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ │ ├── test/ │ │ │ ├── Brush.test.tsx │ │ │ ├── tsconfig.json │ │ │ └── utils.test.ts │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-chord/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── Chord.tsx │ │ │ ├── Ribbon.tsx │ │ │ └── index.ts │ │ ├── test/ │ │ │ ├── Chord.test.tsx │ │ │ ├── Ribbon.test.tsx │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-clip-path/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── clip-paths/ │ │ │ │ ├── CircleClipPath.tsx │ │ │ │ ├── ClipPath.tsx │ │ │ │ └── RectClipPath.tsx │ │ │ └── index.ts │ │ ├── test/ │ │ │ ├── ClipPaths.test.tsx │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-curve/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ └── index.ts │ │ ├── test/ │ │ │ ├── curve.test.ts │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-delaunay/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── components/ │ │ │ │ └── Polygon.tsx │ │ │ ├── delaunay.ts │ │ │ ├── index.ts │ │ │ └── voronoi.ts │ │ ├── test/ │ │ │ ├── Polygon.test.tsx │ │ │ ├── delaunay.test.ts │ │ │ ├── tsconfig.json │ │ │ └── voronoi.test.ts │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-demo/ │ │ ├── .gitignore │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── next-env.d.ts │ │ ├── next.config.js │ │ ├── package.json │ │ ├── public/ │ │ │ └── static/ │ │ │ ├── doc_styles.css │ │ │ ├── prism/ │ │ │ │ ├── prism-funky.css │ │ │ │ └── prism-line-numbers.css │ │ │ ├── style.css │ │ │ └── visx-geo/ │ │ │ └── world-topo.json │ │ ├── src/ │ │ │ ├── components/ │ │ │ │ ├── ApiTable.tsx │ │ │ │ ├── CodeSandboxLink.tsx │ │ │ │ ├── Codeblock.tsx │ │ │ │ ├── DocPage.tsx │ │ │ │ ├── Footer.tsx │ │ │ │ ├── Gallery/ │ │ │ │ │ ├── .eslintrc │ │ │ │ │ ├── AnnotationTile.tsx │ │ │ │ │ ├── AreaTile.tsx │ │ │ │ │ ├── AxisTile.tsx │ │ │ │ │ ├── BarGroupHorizontalTile.tsx │ │ │ │ │ ├── BarGroupTile.tsx │ │ │ │ │ ├── BarStackHorizontalTile.tsx │ │ │ │ │ ├── BarStackTile.tsx │ │ │ │ │ ├── BarsTile.tsx │ │ │ │ │ ├── BrushTile.tsx │ │ │ │ │ ├── ChordTile.tsx │ │ │ │ │ ├── CurvesTile.tsx │ │ │ │ │ ├── DelaunayTriangulationTile.tsx │ │ │ │ │ ├── DelaunayVoronoiTile.tsx │ │ │ │ │ ├── DendrogramsTile.tsx │ │ │ │ │ ├── DotsTile.tsx │ │ │ │ │ ├── DragIITile.tsx │ │ │ │ │ ├── DragITile.tsx │ │ │ │ │ ├── GeoAlbersUsaTile.tsx │ │ │ │ │ ├── GeoCustomTile.tsx │ │ │ │ │ ├── GeoMercatorTile.tsx │ │ │ │ │ ├── GlyphsTile.tsx │ │ │ │ │ ├── GradientsTile.tsx │ │ │ │ │ ├── HeatmapsTile.tsx │ │ │ │ │ ├── LegendsTile.tsx │ │ │ │ │ ├── LineRadialTile.tsx │ │ │ │ │ ├── LinkTypesTile.tsx │ │ │ │ │ ├── NetworkTile.tsx │ │ │ │ │ ├── PackTile.tsx │ │ │ │ │ ├── PatternsTile.tsx │ │ │ │ │ ├── PiesTile.tsx │ │ │ │ │ ├── PolygonsTile.tsx │ │ │ │ │ ├── RadarTile.tsx │ │ │ │ │ ├── RadialBarsTile.tsx │ │ │ │ │ ├── ResponsiveTile.tsx │ │ │ │ │ ├── SankeyTile.tsx │ │ │ │ │ ├── SplitLinePathTile.tsx │ │ │ │ │ ├── StackedAreasTile.tsx │ │ │ │ │ ├── StatsPlotTile.tsx │ │ │ │ │ ├── StreamGraphTile.tsx │ │ │ │ │ ├── TextTile.tsx │ │ │ │ │ ├── ThresholdTile.tsx │ │ │ │ │ ├── TooltipTile.tsx │ │ │ │ │ ├── TreemapTile.tsx │ │ │ │ │ ├── TreesTile.tsx │ │ │ │ │ ├── VoronoiTile.tsx │ │ │ │ │ ├── WordcloudTile.tsx │ │ │ │ │ ├── XYChartTile.tsx │ │ │ │ │ ├── ZoomITile.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── GalleryTile.tsx │ │ │ │ ├── Logo.tsx │ │ │ │ ├── Meta.tsx │ │ │ │ ├── Nav.tsx │ │ │ │ ├── NavItem.tsx │ │ │ │ ├── NoSsr.tsx │ │ │ │ ├── PackageList.tsx │ │ │ │ ├── Page.tsx │ │ │ │ ├── Show.tsx │ │ │ │ ├── VisxDocLink.tsx │ │ │ │ ├── icons/ │ │ │ │ │ ├── Belo.tsx │ │ │ │ │ ├── GitHub.tsx │ │ │ │ │ ├── Instagram.tsx │ │ │ │ │ ├── Medium.tsx │ │ │ │ │ └── Twitter.tsx │ │ │ │ └── util/ │ │ │ │ ├── drawData.ts │ │ │ │ ├── extractVisxDepsFromPackageJson.ts │ │ │ │ └── format.ts │ │ │ ├── next-env.d.ts │ │ │ ├── pages/ │ │ │ │ ├── .eslintrc │ │ │ │ ├── _app.tsx │ │ │ │ ├── _document.tsx │ │ │ │ ├── annotation.tsx │ │ │ │ ├── areas.tsx │ │ │ │ ├── axis.tsx │ │ │ │ ├── bargroup.tsx │ │ │ │ ├── bargrouphorizontal.tsx │ │ │ │ ├── bars.tsx │ │ │ │ ├── barstack.tsx │ │ │ │ ├── barstackhorizontal.tsx │ │ │ │ ├── brush.tsx │ │ │ │ ├── chord.tsx │ │ │ │ ├── curves.tsx │ │ │ │ ├── delaunay-triangulation.tsx │ │ │ │ ├── delaunay-voronoi.tsx │ │ │ │ ├── dendrograms.tsx │ │ │ │ ├── docs/ │ │ │ │ │ ├── .eslintrc │ │ │ │ │ ├── annotation.tsx │ │ │ │ │ ├── axis.tsx │ │ │ │ │ ├── bounds.tsx │ │ │ │ │ ├── brush.tsx │ │ │ │ │ ├── chord.tsx │ │ │ │ │ ├── clip-path.tsx │ │ │ │ │ ├── curve.tsx │ │ │ │ │ ├── delaunay.tsx │ │ │ │ │ ├── drag.tsx │ │ │ │ │ ├── event.tsx │ │ │ │ │ ├── geo.tsx │ │ │ │ │ ├── glyph.tsx │ │ │ │ │ ├── gradient.tsx │ │ │ │ │ ├── grid.tsx │ │ │ │ │ ├── group.tsx │ │ │ │ │ ├── heatmap.tsx │ │ │ │ │ ├── hierarchy.tsx │ │ │ │ │ ├── legend.tsx │ │ │ │ │ ├── marker.tsx │ │ │ │ │ ├── mock-data.tsx │ │ │ │ │ ├── network.tsx │ │ │ │ │ ├── pattern.tsx │ │ │ │ │ ├── point.tsx │ │ │ │ │ ├── react-spring.tsx │ │ │ │ │ ├── responsive.tsx │ │ │ │ │ ├── sankey.tsx │ │ │ │ │ ├── scale.tsx │ │ │ │ │ ├── shape.tsx │ │ │ │ │ ├── stats.tsx │ │ │ │ │ ├── text.tsx │ │ │ │ │ ├── threshold.tsx │ │ │ │ │ ├── tooltip.tsx │ │ │ │ │ ├── visx.tsx │ │ │ │ │ ├── voronoi.tsx │ │ │ │ │ ├── wordcloud.tsx │ │ │ │ │ ├── xychart.tsx │ │ │ │ │ └── zoom.tsx │ │ │ │ ├── docs.tsx │ │ │ │ ├── dots.tsx │ │ │ │ ├── drag-i.tsx │ │ │ │ ├── drag-ii.tsx │ │ │ │ ├── gallery.tsx │ │ │ │ ├── geo-albers-usa.tsx │ │ │ │ ├── geo-custom.tsx │ │ │ │ ├── geo-mercator.tsx │ │ │ │ ├── glyphs.tsx │ │ │ │ ├── gradients.tsx │ │ │ │ ├── heatmaps.tsx │ │ │ │ ├── home.tsx │ │ │ │ ├── index.tsx │ │ │ │ ├── legends.tsx │ │ │ │ ├── lineradial.tsx │ │ │ │ ├── linktypes.tsx │ │ │ │ ├── network.tsx │ │ │ │ ├── pack.tsx │ │ │ │ ├── patterns.tsx │ │ │ │ ├── pies.tsx │ │ │ │ ├── polygons.tsx │ │ │ │ ├── radar.tsx │ │ │ │ ├── radial-bars.tsx │ │ │ │ ├── responsive.tsx │ │ │ │ ├── sankey.tsx │ │ │ │ ├── splitlinepath.tsx │ │ │ │ ├── stacked-areas.tsx │ │ │ │ ├── statsplot.tsx │ │ │ │ ├── streamgraph.tsx │ │ │ │ ├── text.tsx │ │ │ │ ├── threshold.tsx │ │ │ │ ├── tooltip.tsx │ │ │ │ ├── treemap.tsx │ │ │ │ ├── trees.tsx │ │ │ │ ├── voronoi.tsx │ │ │ │ ├── wordcloud.tsx │ │ │ │ ├── xychart.tsx │ │ │ │ └── zoom-i.tsx │ │ │ ├── sandboxes/ │ │ │ │ ├── .eslintrc │ │ │ │ ├── README.md │ │ │ │ ├── exampleToVisxDependencyLookup.ts │ │ │ │ ├── template/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-annotation/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── ExampleControls.tsx │ │ │ │ │ ├── findNearestDatum.ts │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-area/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-axis/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-bargroup/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-bargroup-horizontal/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-bars/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-barstack/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-barstack-horizontal/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-brush/ │ │ │ │ │ ├── AreaChart.tsx │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-chord/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-curve/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-delaunay-triangulation/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-delaunay-voronoi/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-dendrogram/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-dots/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-drag-i/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── generateCircles.ts │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-drag-ii/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-geo-albers-usa/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ ├── sandbox-styles.css │ │ │ │ │ ├── us-abbr.json │ │ │ │ │ ├── usa-topo.d.ts │ │ │ │ │ └── usa-topo.json │ │ │ │ ├── visx-geo-custom/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ ├── sandbox-styles.css │ │ │ │ │ ├── world-topo.d.ts │ │ │ │ │ └── world-topo.json │ │ │ │ ├── visx-geo-mercator/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ ├── sandbox-styles.css │ │ │ │ │ ├── world-topo.d.ts │ │ │ │ │ └── world-topo.json │ │ │ │ ├── visx-glyph/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-gradient/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-heatmap/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-legend/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-linktypes/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── LinkControls.tsx │ │ │ │ │ ├── getLinkComponent.ts │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ ├── sandbox-styles.css │ │ │ │ │ └── useForceUpdate.ts │ │ │ │ ├── visx-network/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-pack/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-pattern/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-polygons/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-radar/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-radial-bars/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-responsive/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── Lines.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-sankey/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── energy.json │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-shape-line-radial/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-shape-pie/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-shape-splitlinepath/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── generateSinPoints.ts │ │ │ │ │ ├── generateSinSegments.ts │ │ │ │ │ ├── generateSnakePath.ts │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-stacked-areas/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-stats/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-streamgraph/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── generateData.ts │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ ├── sandbox-styles.css │ │ │ │ │ └── useForceUpdate.ts │ │ │ │ ├── visx-threshold/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-tooltip/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-tree/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-treemap/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-voronoi/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ └── sandbox-styles.css │ │ │ │ ├── visx-wordcloud/ │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ ├── sandbox-styles.css │ │ │ │ │ └── text.fixture.ts │ │ │ │ ├── visx-xychart/ │ │ │ │ │ ├── CustomChartBackground.tsx │ │ │ │ │ ├── Example.tsx │ │ │ │ │ ├── ExampleControls.tsx │ │ │ │ │ ├── customTheme.ts │ │ │ │ │ ├── getAnimatedOrUnanimatedComponents.ts │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── package.json │ │ │ │ │ ├── sandbox-styles.css │ │ │ │ │ └── userPrefersReducedMotion.ts │ │ │ │ └── visx-zoom-i/ │ │ │ │ ├── Example.tsx │ │ │ │ ├── index.tsx │ │ │ │ ├── package.json │ │ │ │ └── sandbox-styles.css │ │ │ ├── types/ │ │ │ │ ├── index.ts │ │ │ │ └── raw-loader.d.ts │ │ │ └── utils/ │ │ │ ├── getDocGenInfo.ts │ │ │ └── getGitHubUrl.ts │ │ ├── tsconfig.json │ │ └── vercel.json │ ├── visx-drag/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── Drag.tsx │ │ │ ├── index.ts │ │ │ ├── useDrag.ts │ │ │ └── util/ │ │ │ ├── clampNumber.ts │ │ │ ├── getClosestPoint.ts │ │ │ ├── raise.ts │ │ │ ├── restrictPoint.ts │ │ │ ├── useSamplesAlongPath.ts │ │ │ └── useStateWithCallback.ts │ │ ├── test/ │ │ │ ├── Drag.test.ts │ │ │ ├── raise.test.ts │ │ │ ├── tsconfig.json │ │ │ ├── useDrag.test.tsx │ │ │ └── useStateWithCallback.test.ts │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-event/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── getXAndYFromEvent.ts │ │ │ ├── index.ts │ │ │ ├── localPoint.ts │ │ │ ├── localPointGeneric.ts │ │ │ ├── touchPoint.ts │ │ │ ├── typeGuards.ts │ │ │ └── types.ts │ │ ├── test/ │ │ │ ├── getXandYFromEvent.test.ts │ │ │ ├── localPoint.test.ts │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-geo/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── graticule/ │ │ │ │ └── Graticule.tsx │ │ │ ├── index.ts │ │ │ ├── projections/ │ │ │ │ ├── Albers.tsx │ │ │ │ ├── AlbersUsa.tsx │ │ │ │ ├── CustomProjection.tsx │ │ │ │ ├── EqualEarth.tsx │ │ │ │ ├── Mercator.tsx │ │ │ │ ├── NaturalEarth.tsx │ │ │ │ ├── Orthographic.tsx │ │ │ │ └── Projection.tsx │ │ │ └── types.ts │ │ ├── test/ │ │ │ ├── Albers.test.tsx │ │ │ ├── AlbersUsa.test.tsx │ │ │ ├── CustomProjection.test.tsx │ │ │ ├── EqualEarth.test.tsx │ │ │ ├── Mercator.test.tsx │ │ │ ├── Orthographic.test.tsx │ │ │ ├── Projection.test.tsx │ │ │ ├── topo.json │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-glyph/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── glyphs/ │ │ │ │ ├── Glyph.tsx │ │ │ │ ├── GlyphCircle.tsx │ │ │ │ ├── GlyphCross.tsx │ │ │ │ ├── GlyphDiamond.tsx │ │ │ │ ├── GlyphDot.tsx │ │ │ │ ├── GlyphSquare.tsx │ │ │ │ ├── GlyphStar.tsx │ │ │ │ ├── GlyphTriangle.tsx │ │ │ │ └── GlyphWye.tsx │ │ │ └── index.ts │ │ ├── test/ │ │ │ ├── Circle.test.tsx │ │ │ ├── Cross.test.tsx │ │ │ ├── Diamond.test.tsx │ │ │ ├── Dot.test.tsx │ │ │ ├── Glyph.test.tsx │ │ │ ├── Square.test.tsx │ │ │ ├── Star.test.tsx │ │ │ ├── Triangle.test.tsx │ │ │ ├── Wye.test.tsx │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-gradient/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── gradients/ │ │ │ │ ├── GradientDarkgreenGreen.tsx │ │ │ │ ├── GradientLightgreenGreen.tsx │ │ │ │ ├── GradientOrangeRed.tsx │ │ │ │ ├── GradientPinkBlue.tsx │ │ │ │ ├── GradientPinkRed.tsx │ │ │ │ ├── GradientPurpleOrange.tsx │ │ │ │ ├── GradientPurpleRed.tsx │ │ │ │ ├── GradientPurpleTeal.tsx │ │ │ │ ├── GradientSteelPurple.tsx │ │ │ │ ├── GradientTealBlue.tsx │ │ │ │ ├── LinearGradient.tsx │ │ │ │ └── RadialGradient.tsx │ │ │ └── index.ts │ │ ├── test/ │ │ │ ├── Gradients.test.tsx │ │ │ ├── LinearGradient.test.tsx │ │ │ ├── RadialGradient.test.tsx │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-grid/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── grids/ │ │ │ │ ├── Grid.tsx │ │ │ │ ├── GridAngle.tsx │ │ │ │ ├── GridColumns.tsx │ │ │ │ ├── GridPolar.tsx │ │ │ │ ├── GridRadial.tsx │ │ │ │ └── GridRows.tsx │ │ │ ├── index.ts │ │ │ ├── types.ts │ │ │ └── utils/ │ │ │ ├── getScaleBandwidth.ts │ │ │ └── polarToCartesian.ts │ │ ├── test/ │ │ │ ├── Grid.test.tsx │ │ │ ├── GridAngle.test.tsx │ │ │ ├── GridColumns.test.tsx │ │ │ ├── GridPolar.test.tsx │ │ │ ├── GridRadial.test.tsx │ │ │ ├── GridRows.test.tsx │ │ │ ├── tsconfig.json │ │ │ └── utils.test.ts │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-group/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── Group.tsx │ │ │ └── index.ts │ │ ├── test/ │ │ │ ├── Group.test.tsx │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-heatmap/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── heatmaps/ │ │ │ │ ├── HeatmapCircle.tsx │ │ │ │ └── HeatmapRect.tsx │ │ │ ├── index.ts │ │ │ └── types.ts │ │ ├── test/ │ │ │ ├── HeatmapCircle.test.tsx │ │ │ ├── HeatmapRect.test.tsx │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-hierarchy/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── HierarchyDefaultLink.tsx │ │ │ ├── HierarchyDefaultNode.tsx │ │ │ ├── HierarchyDefaultRectNode.tsx │ │ │ ├── hierarchies/ │ │ │ │ ├── Cluster.tsx │ │ │ │ ├── Pack.tsx │ │ │ │ ├── Partition.tsx │ │ │ │ ├── Tree.tsx │ │ │ │ └── Treemap.tsx │ │ │ ├── index.ts │ │ │ ├── types.ts │ │ │ └── utils/ │ │ │ └── setNumOrNumAccessor.ts │ │ ├── test/ │ │ │ ├── Cluster.test.tsx │ │ │ ├── Defaults.test.tsx │ │ │ ├── Tree.test.tsx │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-legend/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── index.ts │ │ │ ├── legends/ │ │ │ │ ├── Legend/ │ │ │ │ │ ├── LegendItem.tsx │ │ │ │ │ ├── LegendLabel.tsx │ │ │ │ │ ├── LegendShape.tsx │ │ │ │ │ └── index.tsx │ │ │ │ ├── Linear.tsx │ │ │ │ ├── Ordinal.tsx │ │ │ │ ├── Quantile.tsx │ │ │ │ ├── Size.tsx │ │ │ │ └── Threshold.tsx │ │ │ ├── shapes/ │ │ │ │ ├── Circle.tsx │ │ │ │ ├── Line.tsx │ │ │ │ └── Rect.tsx │ │ │ ├── types/ │ │ │ │ └── index.ts │ │ │ └── util/ │ │ │ ├── defaultDomain.ts │ │ │ ├── identity.ts │ │ │ ├── labelTransformFactory.ts │ │ │ ├── renderShape.ts │ │ │ └── valueOrIdentity.ts │ │ ├── test/ │ │ │ ├── Legend.test.tsx │ │ │ ├── LegendLinear.test.tsx │ │ │ ├── LegendOrdinal.test.tsx │ │ │ ├── LegendQuantile.test.tsx │ │ │ ├── LegendSize.test.tsx │ │ │ ├── LegendThreshold.test.tsx │ │ │ ├── scales.test.tsx │ │ │ ├── svgMock.ts │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-marker/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── index.ts │ │ │ └── markers/ │ │ │ ├── Arrow.tsx │ │ │ ├── Circle.tsx │ │ │ ├── Cross.tsx │ │ │ ├── Line.tsx │ │ │ ├── Marker.tsx │ │ │ └── X.tsx │ │ ├── test/ │ │ │ ├── Arrow.test.tsx │ │ │ ├── Circle.test.tsx │ │ │ ├── Cross.test.tsx │ │ │ ├── Line.test.tsx │ │ │ ├── Marker.test.tsx │ │ │ ├── X.test.tsx │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-mock-data/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── generators/ │ │ │ │ ├── genBin.ts │ │ │ │ ├── genBins.ts │ │ │ │ ├── genDateValue.ts │ │ │ │ ├── genPhyllotaxis.ts │ │ │ │ ├── genRandomNormalPoints.ts │ │ │ │ ├── genStats.ts │ │ │ │ └── getSeededRandom.ts │ │ │ ├── index.ts │ │ │ └── mocks/ │ │ │ ├── appleStock.ts │ │ │ ├── bitcoinPrice.ts │ │ │ ├── browserUsage.ts │ │ │ ├── cityTemperature.ts │ │ │ ├── exoplanets.ts │ │ │ ├── groupDateValue.ts │ │ │ ├── lesMiserables.ts │ │ │ ├── letterFrequency.ts │ │ │ ├── planets.ts │ │ │ └── shakespeare.ts │ │ ├── test/ │ │ │ ├── appleStock.test.ts │ │ │ ├── browserUsage.test.ts │ │ │ ├── cityTemperature.test.ts │ │ │ ├── genBin.test.ts │ │ │ ├── genBins.test.ts │ │ │ ├── genDateValue.test.ts │ │ │ ├── genPhyllotaxis.test.ts │ │ │ ├── genRandomNormalPoints.test.ts │ │ │ ├── genStats.test.ts │ │ │ ├── getSeededRandom.test.ts │ │ │ ├── groupDateValue.test.ts │ │ │ ├── letterFrequency.test.ts │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-network/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── DefaultLink.tsx │ │ │ ├── DefaultNode.tsx │ │ │ ├── Graph.tsx │ │ │ ├── Links.tsx │ │ │ ├── Nodes.tsx │ │ │ ├── index.ts │ │ │ └── types.ts │ │ ├── test/ │ │ │ ├── Graph.test.tsx │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-pattern/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── constants/ │ │ │ │ └── index.ts │ │ │ ├── index.ts │ │ │ └── patterns/ │ │ │ ├── Circles.tsx │ │ │ ├── Hexagons.tsx │ │ │ ├── Lines.tsx │ │ │ ├── Path.tsx │ │ │ ├── Pattern.tsx │ │ │ └── Waves.tsx │ │ ├── test/ │ │ │ ├── Pattern.test.tsx │ │ │ ├── PatternCircles.test.tsx │ │ │ ├── PatternHexagons.test.tsx │ │ │ ├── PatternLines.test.tsx │ │ │ ├── PatternPath.test.tsx │ │ │ ├── PatternWaves.test.tsx │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-point/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── Point.ts │ │ │ ├── index.ts │ │ │ ├── subtractPoints.ts │ │ │ └── sumPoints.ts │ │ ├── test/ │ │ │ ├── point.test.ts │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-react-spring/ │ │ ├── README.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── axis/ │ │ │ │ ├── AnimatedAxis.tsx │ │ │ │ └── AnimatedTicks.tsx │ │ │ ├── grid/ │ │ │ │ ├── AnimatedGridColumns.tsx │ │ │ │ ├── AnimatedGridLines.tsx │ │ │ │ └── AnimatedGridRows.tsx │ │ │ ├── index.ts │ │ │ ├── spring-configs/ │ │ │ │ └── useLineTransitionConfig.ts │ │ │ └── types/ │ │ │ └── index.ts │ │ ├── test/ │ │ │ ├── AnimatedAxis.test.tsx │ │ │ ├── AnimatedGridColumns.test.tsx │ │ │ ├── AnimatedGridRows.test.tsx │ │ │ ├── AnimatedTicks.test.tsx │ │ │ ├── svgMock.ts │ │ │ ├── tsconfig.json │ │ │ └── useLineTransitionConfig.test.tsx │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-responsive/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── components/ │ │ │ │ ├── ParentSize.tsx │ │ │ │ └── ScaleSVG.tsx │ │ │ ├── enhancers/ │ │ │ │ ├── withParentSize.tsx │ │ │ │ └── withScreenSize.tsx │ │ │ ├── hooks/ │ │ │ │ ├── useParentSize.ts │ │ │ │ └── useScreenSize.ts │ │ │ ├── index.ts │ │ │ └── types/ │ │ │ └── index.ts │ │ ├── test/ │ │ │ ├── ParentSize.test.tsx │ │ │ ├── ScaleSVG.test.tsx │ │ │ ├── tsconfig.json │ │ │ ├── useScreenSize.test.ts │ │ │ ├── withParentSize.test.tsx │ │ │ └── withScreenSize.test.ts │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-sankey/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── Sankey.tsx │ │ │ ├── index.ts │ │ │ └── types.ts │ │ ├── test/ │ │ │ └── Sankey.test.tsx │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-scale/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── createScale.ts │ │ │ ├── index.ts │ │ │ ├── operators/ │ │ │ │ ├── align.ts │ │ │ │ ├── base.ts │ │ │ │ ├── clamp.ts │ │ │ │ ├── constant.ts │ │ │ │ ├── domain.ts │ │ │ │ ├── exponent.ts │ │ │ │ ├── interpolate.ts │ │ │ │ ├── nice.ts │ │ │ │ ├── padding.ts │ │ │ │ ├── range.ts │ │ │ │ ├── reverse.ts │ │ │ │ ├── round.ts │ │ │ │ ├── scaleOperator.ts │ │ │ │ ├── unknown.ts │ │ │ │ └── zero.ts │ │ │ ├── scales/ │ │ │ │ ├── band.ts │ │ │ │ ├── linear.ts │ │ │ │ ├── log.ts │ │ │ │ ├── ordinal.ts │ │ │ │ ├── point.ts │ │ │ │ ├── power.ts │ │ │ │ ├── quantile.ts │ │ │ │ ├── quantize.ts │ │ │ │ ├── radial.ts │ │ │ │ ├── squareRoot.ts │ │ │ │ ├── symlog.ts │ │ │ │ ├── threshold.ts │ │ │ │ ├── time.ts │ │ │ │ └── utc.ts │ │ │ ├── types/ │ │ │ │ ├── Base.ts │ │ │ │ ├── BaseScaleConfig.ts │ │ │ │ ├── Nice.ts │ │ │ │ ├── Scale.ts │ │ │ │ ├── ScaleConfig.ts │ │ │ │ └── ScaleInterpolate.ts │ │ │ ├── updateScale.ts │ │ │ └── utils/ │ │ │ ├── coerceNumber.ts │ │ │ ├── createColorInterpolator.ts │ │ │ ├── getTicks.ts │ │ │ ├── inferScaleType.ts │ │ │ ├── isUtcScale.ts │ │ │ ├── scaleCanBeZeroed.ts │ │ │ └── toString.ts │ │ ├── test/ │ │ │ ├── createScale.test.ts │ │ │ ├── scaleBand.test.ts │ │ │ ├── scaleLinear.test.ts │ │ │ ├── scaleLog.test.ts │ │ │ ├── scaleOrdinal.test.ts │ │ │ ├── scalePoint.test.ts │ │ │ ├── scalePower.test.ts │ │ │ ├── scaleQuantile.test.ts │ │ │ ├── scaleQuantize.test.ts │ │ │ ├── scaleRadial.test.ts │ │ │ ├── scaleSqrt.test.ts │ │ │ ├── scaleSymlog.test.ts │ │ │ ├── scaleThreshold.test.ts │ │ │ ├── scaleTime.test.ts │ │ │ ├── scaleUtc.test.ts │ │ │ ├── tsconfig.json │ │ │ ├── updateScale.test.ts │ │ │ └── utils/ │ │ │ ├── coerceNumber.test.ts │ │ │ ├── getTicks.test.ts │ │ │ ├── inferScaleType.test.ts │ │ │ ├── isUtcScale.test.ts │ │ │ ├── scaleCanBeZeroed.test.ts │ │ │ └── toString.test.ts │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-shape/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── index.ts │ │ │ ├── shapes/ │ │ │ │ ├── Arc.tsx │ │ │ │ ├── Area.tsx │ │ │ │ ├── AreaClosed.tsx │ │ │ │ ├── AreaStack.tsx │ │ │ │ ├── Bar.tsx │ │ │ │ ├── BarGroup.tsx │ │ │ │ ├── BarGroupHorizontal.tsx │ │ │ │ ├── BarRounded.tsx │ │ │ │ ├── BarStack.tsx │ │ │ │ ├── BarStackHorizontal.tsx │ │ │ │ ├── Circle.tsx │ │ │ │ ├── Line.tsx │ │ │ │ ├── LinePath.tsx │ │ │ │ ├── LineRadial.tsx │ │ │ │ ├── Pie.tsx │ │ │ │ ├── Polygon.tsx │ │ │ │ ├── SplitLinePath.tsx │ │ │ │ ├── Stack.tsx │ │ │ │ └── link/ │ │ │ │ ├── curve/ │ │ │ │ │ ├── LinkHorizontalCurve.tsx │ │ │ │ │ ├── LinkRadialCurve.tsx │ │ │ │ │ └── LinkVerticalCurve.tsx │ │ │ │ ├── diagonal/ │ │ │ │ │ ├── LinkHorizontal.tsx │ │ │ │ │ ├── LinkRadial.tsx │ │ │ │ │ └── LinkVertical.tsx │ │ │ │ ├── line/ │ │ │ │ │ ├── LinkHorizontalLine.tsx │ │ │ │ │ ├── LinkRadialLine.tsx │ │ │ │ │ └── LinkVerticalLine.tsx │ │ │ │ └── step/ │ │ │ │ ├── LinkHorizontalStep.tsx │ │ │ │ ├── LinkRadialStep.tsx │ │ │ │ └── LinkVerticalStep.tsx │ │ │ ├── types/ │ │ │ │ ├── D3ShapeConfig.ts │ │ │ │ ├── accessor.ts │ │ │ │ ├── area.ts │ │ │ │ ├── barGroup.ts │ │ │ │ ├── barStack.ts │ │ │ │ ├── base.ts │ │ │ │ ├── index.ts │ │ │ │ ├── link.ts │ │ │ │ └── stack.ts │ │ │ └── util/ │ │ │ ├── D3ShapeFactories.ts │ │ │ ├── accessors.ts │ │ │ ├── getBandwidth.ts │ │ │ ├── getOrCreateMeasurementElement.ts │ │ │ ├── getSplitLineSegments.ts │ │ │ ├── setNumberOrNumberAccessor.ts │ │ │ ├── stackOffset.ts │ │ │ ├── stackOrder.ts │ │ │ └── trigonometry.ts │ │ ├── test/ │ │ │ ├── Arc.test.tsx │ │ │ ├── Area.test.tsx │ │ │ ├── AreaClosed.test.tsx │ │ │ ├── AreaStack.test.tsx │ │ │ ├── Bar.test.tsx │ │ │ ├── BarGroup.test.tsx │ │ │ ├── BarGroupHorizontal.test.tsx │ │ │ ├── BarRounded.test.tsx │ │ │ ├── BarStack.test.tsx │ │ │ ├── BarStackHorizontal.test.tsx │ │ │ ├── Circle.test.tsx │ │ │ ├── Line.test.tsx │ │ │ ├── LinePath.test.tsx │ │ │ ├── LineRadial.test.tsx │ │ │ ├── LinkHorizontal.test.tsx │ │ │ ├── LinkRadial.test.tsx │ │ │ ├── LinkVertical.test.tsx │ │ │ ├── Pie.test.tsx │ │ │ ├── Polygon.test.tsx │ │ │ ├── Stack.test.tsx │ │ │ ├── stackOffset.test.ts │ │ │ ├── stackOrder.test.ts │ │ │ ├── svgMock.ts │ │ │ ├── tsconfig.json │ │ │ └── utils/ │ │ │ ├── D3ShapeFactories.test.ts │ │ │ └── getBandwidth.test.ts │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-stats/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── BoxPlot.tsx │ │ │ ├── ViolinPlot.tsx │ │ │ ├── index.ts │ │ │ ├── types.ts │ │ │ └── util/ │ │ │ └── computeStats.ts │ │ ├── test/ │ │ │ ├── BoxPlot.test.tsx │ │ │ ├── ViolinPlot.test.tsx │ │ │ ├── computeStats.test.ts │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-text/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── Text.tsx │ │ │ ├── hooks/ │ │ │ │ └── useText.ts │ │ │ ├── index.ts │ │ │ ├── types.ts │ │ │ └── util/ │ │ │ └── getStringWidth.ts │ │ ├── test/ │ │ │ ├── Text.test.tsx │ │ │ ├── svgMock.ts │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ ├── types/ │ │ │ └── reduce-css-calc/ │ │ │ └── index.d.ts │ │ └── vitest.config.ts │ ├── visx-threshold/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── Threshold.tsx │ │ │ └── index.ts │ │ ├── test/ │ │ │ ├── Threshold.test.tsx │ │ │ └── tsconfig.json │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-tooltip/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── Portal.tsx │ │ │ ├── context/ │ │ │ │ └── TooltipPositionContext.tsx │ │ │ ├── enhancers/ │ │ │ │ └── withTooltip.tsx │ │ │ ├── hooks/ │ │ │ │ ├── useTooltip.ts │ │ │ │ └── useTooltipInPortal.tsx │ │ │ ├── index.ts │ │ │ └── tooltips/ │ │ │ ├── Tooltip.tsx │ │ │ └── TooltipWithBounds.tsx │ │ ├── test/ │ │ │ ├── Portal.test.tsx │ │ │ ├── Tooltip.test.tsx │ │ │ ├── TooltipWithBounds.test.tsx │ │ │ ├── tsconfig.json │ │ │ ├── useTooltip.test.tsx │ │ │ ├── useTooltipInPortal.test.tsx │ │ │ └── withTooltip.test.tsx │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-vendor/ │ │ ├── .eslintrc.js │ │ ├── .gitignore │ │ ├── Readme.md │ │ ├── package.json │ │ ├── scripts/ │ │ │ ├── buildVendor/ │ │ │ │ ├── babel.config.js │ │ │ │ ├── index.ts │ │ │ │ └── utils.ts │ │ │ └── flagVendorRequirements.ts │ │ ├── test/ │ │ │ ├── .eslintrc │ │ │ ├── d3-array.test.ts │ │ │ ├── d3-color.test.ts │ │ │ ├── d3-format.test.ts │ │ │ ├── d3-geo.test.ts │ │ │ ├── d3-interpolate.test.ts │ │ │ ├── d3-scale.test.ts │ │ │ ├── d3-time-format.test.ts │ │ │ ├── d3-time.test.ts │ │ │ └── internmap.test.ts │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-visx/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ └── index.ts │ │ ├── test/ │ │ │ └── index.test.ts │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-voronoi/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── components/ │ │ │ │ └── VoronoiPolygon.tsx │ │ │ ├── index.ts │ │ │ └── voronoi.ts │ │ ├── test/ │ │ │ ├── VoronoiPolygon.test.tsx │ │ │ ├── tsconfig.json │ │ │ └── voronoi.test.ts │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-wordcloud/ │ │ ├── .npmrc │ │ ├── Readme.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── Wordcloud.tsx │ │ │ ├── d3-cloud.d.ts │ │ │ ├── index.ts │ │ │ ├── types.ts │ │ │ └── useWordcloud.ts │ │ ├── test/ │ │ │ ├── Wordcloud.test.tsx │ │ │ ├── tsconfig.json │ │ │ └── useWordcloud.test.ts │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── visx-xychart/ │ │ ├── README.md │ │ ├── package.json │ │ ├── src/ │ │ │ ├── classes/ │ │ │ │ └── DataRegistry.ts │ │ │ ├── components/ │ │ │ │ ├── Tooltip.tsx │ │ │ │ ├── XYChart.tsx │ │ │ │ ├── annotation/ │ │ │ │ │ ├── AnimatedAnnotation.tsx │ │ │ │ │ ├── Annotation.tsx │ │ │ │ │ ├── AnnotationCircleSubject.tsx │ │ │ │ │ ├── AnnotationConnector.tsx │ │ │ │ │ ├── AnnotationLabel.tsx │ │ │ │ │ ├── AnnotationLineSubject.tsx │ │ │ │ │ └── private/ │ │ │ │ │ └── BaseAnnotation.tsx │ │ │ │ ├── axis/ │ │ │ │ │ ├── AnimatedAxis.tsx │ │ │ │ │ ├── Axis.tsx │ │ │ │ │ └── BaseAxis.tsx │ │ │ │ ├── grid/ │ │ │ │ │ ├── AnimatedGrid.tsx │ │ │ │ │ ├── BaseGrid.tsx │ │ │ │ │ └── Grid.tsx │ │ │ │ └── series/ │ │ │ │ ├── AnimatedAreaSeries.tsx │ │ │ │ ├── AnimatedAreaStack.tsx │ │ │ │ ├── AnimatedBarGroup.tsx │ │ │ │ ├── AnimatedBarSeries.tsx │ │ │ │ ├── AnimatedBarStack.tsx │ │ │ │ ├── AnimatedGlyphSeries.tsx │ │ │ │ ├── AnimatedLineSeries.tsx │ │ │ │ ├── AreaSeries.tsx │ │ │ │ ├── AreaStack.tsx │ │ │ │ ├── BarGroup.tsx │ │ │ │ ├── BarSeries.tsx │ │ │ │ ├── BarStack.tsx │ │ │ │ ├── GlyphSeries.tsx │ │ │ │ ├── LineSeries.tsx │ │ │ │ └── private/ │ │ │ │ ├── AnimatedBars.tsx │ │ │ │ ├── AnimatedGlyphs.tsx │ │ │ │ ├── AnimatedPath.tsx │ │ │ │ ├── Bars.tsx │ │ │ │ ├── BaseAreaSeries.tsx │ │ │ │ ├── BaseAreaStack.tsx │ │ │ │ ├── BaseBarGroup.tsx │ │ │ │ ├── BaseBarSeries.tsx │ │ │ │ ├── BaseBarStack.tsx │ │ │ │ ├── BaseGlyphSeries.tsx │ │ │ │ ├── BaseLineSeries.tsx │ │ │ │ └── defaultRenderGlyph.tsx │ │ │ ├── constants.ts │ │ │ ├── context/ │ │ │ │ ├── DataContext.tsx │ │ │ │ ├── EventEmitterContext.tsx │ │ │ │ ├── ThemeContext.tsx │ │ │ │ └── TooltipContext.tsx │ │ │ ├── hooks/ │ │ │ │ ├── useDataRegistry.ts │ │ │ │ ├── useDimensions.ts │ │ │ │ ├── useEventEmitter.ts │ │ │ │ ├── useEventEmitters.ts │ │ │ │ ├── useEventHandlers.ts │ │ │ │ ├── useScales.ts │ │ │ │ ├── useSeriesEvents.ts │ │ │ │ └── useStackedData.ts │ │ │ ├── index.ts │ │ │ ├── providers/ │ │ │ │ ├── DataProvider.tsx │ │ │ │ ├── EventEmitterProvider.tsx │ │ │ │ ├── ThemeProvider.tsx │ │ │ │ └── TooltipProvider.tsx │ │ │ ├── theme/ │ │ │ │ ├── buildChartTheme.ts │ │ │ │ ├── colors.ts │ │ │ │ └── themes/ │ │ │ │ ├── dark.ts │ │ │ │ └── light.ts │ │ │ ├── typeguards/ │ │ │ │ ├── events.ts │ │ │ │ └── isValidNumber.ts │ │ │ ├── types/ │ │ │ │ ├── axis.ts │ │ │ │ ├── data.ts │ │ │ │ ├── event.ts │ │ │ │ ├── index.ts │ │ │ │ ├── series.ts │ │ │ │ ├── theme.ts │ │ │ │ └── tooltip.ts │ │ │ └── utils/ │ │ │ ├── cleanColorString.ts │ │ │ ├── combineBarStackData.ts │ │ │ ├── findNearestDatumSingleDimension.ts │ │ │ ├── findNearestDatumX.ts │ │ │ ├── findNearestDatumXY.ts │ │ │ ├── findNearestDatumY.ts │ │ │ ├── findNearestGroupDatum.ts │ │ │ ├── findNearestStackDatum.ts │ │ │ ├── getBarStackRegistryData.ts │ │ │ ├── getChildrenAndGrandchildrenWithProps.ts │ │ │ ├── getScaleBandwidth.ts │ │ │ ├── getScaleBaseline.ts │ │ │ ├── getScaledValueFactory.ts │ │ │ └── isDiscreteScale.ts │ │ ├── test/ │ │ │ ├── __mocks__/ │ │ │ │ └── @visx/ │ │ │ │ └── event.ts │ │ │ ├── classes/ │ │ │ │ └── DataRegistry.test.ts │ │ │ ├── components/ │ │ │ │ ├── Annotation.test.tsx │ │ │ │ ├── AnnotationCircleSubject.test.tsx │ │ │ │ ├── AnnotationConnector.test.tsx │ │ │ │ ├── AnnotationLabel.test.tsx │ │ │ │ ├── AnnotationLineSubject.test.tsx │ │ │ │ ├── AreaSeries.test.tsx │ │ │ │ ├── AreaStack.test.tsx │ │ │ │ ├── Axis.test.tsx │ │ │ │ ├── BarGroup.test.tsx │ │ │ │ ├── BarSeries.test.tsx │ │ │ │ ├── BarStack.test.tsx │ │ │ │ ├── GlyphSeries.test.tsx │ │ │ │ ├── Grid.test.tsx │ │ │ │ ├── LineSeries.test.tsx │ │ │ │ ├── Tooltip.test.tsx │ │ │ │ └── XYChart.test.tsx │ │ │ ├── hooks/ │ │ │ │ ├── useDataRegistry.test.tsx │ │ │ │ ├── useEventEmitter.test.tsx │ │ │ │ ├── useEventEmitters.test.tsx │ │ │ │ ├── useEventHandlers.test.tsx │ │ │ │ ├── useScales.test.tsx │ │ │ │ └── useStackedData.test.tsx │ │ │ ├── mocks/ │ │ │ │ ├── getDataContext.ts │ │ │ │ ├── setupTooltipTest.tsx │ │ │ │ └── svgMock.ts │ │ │ ├── providers/ │ │ │ │ ├── DataProvider.test.tsx │ │ │ │ ├── EventEmitterProvider.test.tsx │ │ │ │ ├── ThemeProvider.test.tsx │ │ │ │ └── TooltipProvider.test.tsx │ │ │ ├── theme.test.tsx │ │ │ ├── tsconfig.json │ │ │ └── utils/ │ │ │ ├── cleanColorString.test.ts │ │ │ ├── combineBarStackData.test.tsx │ │ │ ├── findNearestDatum.test.ts │ │ │ ├── getScaleBaseline.test.ts │ │ │ └── isDiscreteScale.test.ts │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ └── visx-zoom/ │ ├── .npmrc │ ├── Readme.md │ ├── package.json │ ├── src/ │ │ ├── Zoom.tsx │ │ ├── index.ts │ │ ├── types.ts │ │ └── util/ │ │ └── matrix.ts │ ├── test/ │ │ ├── Zoom.test.tsx │ │ └── tsconfig.json │ ├── tsconfig.json │ └── vitest.config.ts ├── prettier.config.js ├── scripts/ │ ├── compareBuildSizes.ts │ ├── computeBuildSizes.ts │ ├── generateDocs.ts │ ├── performRelease/ │ │ ├── constants.ts │ │ ├── createGithubRelease.ts │ │ ├── fetchCommitsSinceTag.ts │ │ ├── fetchPRsForCommits.ts │ │ ├── fetchTags.ts │ │ ├── index.ts │ │ ├── performLernaRelease.ts │ │ ├── postReleaseOnPrs.ts │ │ ├── types.ts │ │ └── updateChangelog/ │ │ ├── getChangelogAddition.ts │ │ ├── index.ts │ │ └── mergeUpdateIntoChangelog.ts │ ├── postInstall.ts │ ├── updateTsReferences.ts │ └── utils/ │ ├── getGitHubClient.ts │ ├── getPullRequestNumber.ts │ ├── getRepoContext.ts │ └── upsertPullRequestComment.ts ├── tsconfig.eslint.json ├── tsconfig.json ├── tsconfig.node.json ├── tsconfig.options.json └── vitest.config.ts