@unovis/ts 1.1.1-beta.7 → 1.1.1-beta.9
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/components/area/config.d.ts +25 -0
- package/components/area/config.js +16 -0
- package/components/area/config.js.map +1 -0
- package/components/area/index.d.ts +19 -0
- package/components/area/index.js +102 -0
- package/components/area/index.js.map +1 -0
- package/components/area/style.d.ts +3 -0
- package/{src/components/area/style.ts → components/area/style.js} +10 -9
- package/components/area/style.js.map +1 -0
- package/components/area/types.d.ts +6 -0
- package/components/axis/config.d.ts +71 -0
- package/components/axis/config.js +32 -0
- package/components/axis/config.js.map +1 -0
- package/components/axis/index.d.ts +44 -0
- package/components/axis/index.js +305 -0
- package/components/axis/index.js.map +1 -0
- package/components/axis/style.d.ts +9 -0
- package/{src/components/axis/style.ts → components/axis/style.js} +22 -27
- package/components/axis/style.js.map +1 -0
- package/components/axis/types.d.ts +4 -0
- package/components/axis/types.js +8 -0
- package/components/axis/types.js.map +1 -0
- package/components/brush/config.d.ts +42 -0
- package/components/brush/config.js +24 -0
- package/components/brush/config.js.map +1 -0
- package/components/brush/index.d.ts +28 -0
- package/components/brush/index.js +199 -0
- package/components/brush/index.js.map +1 -0
- package/components/brush/style.d.ts +5 -0
- package/{src/components/brush/style.ts → components/brush/style.js} +14 -15
- package/components/brush/style.js.map +1 -0
- package/components/brush/types.d.ts +7 -0
- package/components/brush/types.js +8 -0
- package/components/brush/types.js.map +1 -0
- package/components/bullet-legend/config.d.ts +34 -0
- package/components/bullet-legend/config.js +16 -0
- package/components/bullet-legend/config.js.map +1 -0
- package/components/bullet-legend/index.d.ts +19 -0
- package/components/bullet-legend/index.js +79 -0
- package/components/bullet-legend/index.js.map +1 -0
- package/components/bullet-legend/style.d.ts +6 -0
- package/{src/components/bullet-legend/style.ts → components/bullet-legend/style.js} +16 -18
- package/components/bullet-legend/style.js.map +1 -0
- package/components/bullet-legend/types.d.ts +7 -0
- package/components/bullet-legend/types.js +2 -0
- package/components/bullet-legend/types.js.map +1 -0
- package/components/chord-diagram/config.d.ts +44 -0
- package/components/chord-diagram/config.js +25 -0
- package/components/chord-diagram/config.js.map +1 -0
- package/components/chord-diagram/index.d.ts +42 -0
- package/components/chord-diagram/index.js +305 -0
- package/components/chord-diagram/index.js.map +1 -0
- package/components/chord-diagram/modules/label.d.ts +8 -0
- package/components/chord-diagram/modules/label.js +115 -0
- package/components/chord-diagram/modules/label.js.map +1 -0
- package/components/chord-diagram/modules/link.d.ts +21 -0
- package/components/chord-diagram/modules/link.js +63 -0
- package/components/chord-diagram/modules/link.js.map +1 -0
- package/components/chord-diagram/modules/node.d.ts +17 -0
- package/components/chord-diagram/modules/node.js +52 -0
- package/components/chord-diagram/modules/node.js.map +1 -0
- package/components/chord-diagram/style.d.ts +13 -0
- package/{src/components/chord-diagram/style.ts → components/chord-diagram/style.js} +30 -39
- package/components/chord-diagram/style.js.map +1 -0
- package/components/chord-diagram/types.d.ts +58 -0
- package/components/chord-diagram/types.js +8 -0
- package/components/chord-diagram/types.js.map +1 -0
- package/components/crosshair/config.d.ts +43 -0
- package/components/crosshair/config.js +19 -0
- package/components/crosshair/config.js.map +1 -0
- package/components/crosshair/index.d.ts +35 -0
- package/components/crosshair/index.js +183 -0
- package/components/crosshair/index.js.map +1 -0
- package/components/crosshair/style.d.ts +4 -0
- package/{src/components/crosshair/style.ts → components/crosshair/style.js} +12 -12
- package/components/crosshair/style.js.map +1 -0
- package/components/crosshair/types.d.ts +13 -0
- package/components/crosshair/types.js +2 -0
- package/components/crosshair/types.js.map +1 -0
- package/components/donut/config.d.ts +59 -0
- package/components/donut/config.js +28 -0
- package/components/donut/config.js.map +1 -0
- package/components/donut/index.d.ts +21 -0
- package/components/donut/index.js +107 -0
- package/components/donut/index.js.map +1 -0
- package/components/donut/modules/arc.d.ts +10 -0
- package/components/donut/modules/arc.js +59 -0
- package/components/donut/modules/arc.js.map +1 -0
- package/components/donut/style.d.ts +7 -0
- package/{src/components/donut/style.ts → components/donut/style.js} +18 -20
- package/components/donut/style.js.map +1 -0
- package/components/donut/types.d.ts +20 -0
- package/components/flow-legend/config.d.ts +29 -0
- package/components/flow-legend/config.js +18 -0
- package/components/flow-legend/config.js.map +1 -0
- package/components/flow-legend/index.d.ts +16 -0
- package/components/flow-legend/index.js +75 -0
- package/components/flow-legend/index.js.map +1 -0
- package/components/flow-legend/style.d.ts +8 -0
- package/{src/components/flow-legend/style.ts → components/flow-legend/style.js} +21 -25
- package/components/flow-legend/style.js.map +1 -0
- package/components/flow-legend/types.d.ts +9 -0
- package/components/flow-legend/types.js +8 -0
- package/components/flow-legend/types.js.map +1 -0
- package/components/free-brush/config.d.ts +45 -0
- package/components/free-brush/config.js +24 -0
- package/components/free-brush/config.js.map +1 -0
- package/components/free-brush/index.d.ts +20 -0
- package/components/free-brush/index.js +192 -0
- package/components/free-brush/index.js.map +1 -0
- package/components/free-brush/style.d.ts +4 -0
- package/{src/components/free-brush/style.ts → components/free-brush/style.js} +12 -12
- package/components/free-brush/style.js.map +1 -0
- package/components/free-brush/types.d.ts +7 -0
- package/components/free-brush/types.js +9 -0
- package/components/free-brush/types.js.map +1 -0
- package/components/graph/config.d.ts +238 -0
- package/components/graph/config.js +84 -0
- package/components/graph/config.js.map +1 -0
- package/components/graph/index.d.ts +126 -0
- package/components/graph/index.js +656 -0
- package/components/graph/index.js.map +1 -0
- package/components/graph/modules/layout-helpers.d.ts +21 -0
- package/components/graph/modules/layout-helpers.js +69 -0
- package/components/graph/modules/layout-helpers.js.map +1 -0
- package/components/graph/modules/layout.d.ts +10 -0
- package/components/graph/modules/layout.js +399 -0
- package/components/graph/modules/layout.js.map +1 -0
- package/components/graph/modules/link/helper.d.ts +25 -0
- package/components/graph/modules/link/helper.js +74 -0
- package/components/graph/modules/link/helper.js.map +1 -0
- package/components/graph/modules/link/index.d.ts +11 -0
- package/components/graph/modules/link/index.js +212 -0
- package/components/graph/modules/link/index.js.map +1 -0
- package/components/graph/modules/link/style.d.ts +15 -0
- package/{src/components/graph/modules/link/style.ts → components/graph/modules/link/style.js} +34 -45
- package/components/graph/modules/link/style.js.map +1 -0
- package/components/graph/modules/node/helper.d.ts +21 -0
- package/components/graph/modules/node/helper.js +126 -0
- package/components/graph/modules/node/helper.js.map +1 -0
- package/components/graph/modules/node/index.d.ts +11 -0
- package/components/graph/modules/node/index.js +252 -0
- package/components/graph/modules/node/index.js.map +1 -0
- package/components/graph/modules/node/style.d.ts +24 -0
- package/{src/components/graph/modules/node/style.ts → components/graph/modules/node/style.js} +52 -72
- package/components/graph/modules/node/style.js.map +1 -0
- package/components/graph/modules/panel/helper.d.ts +18 -0
- package/components/graph/modules/panel/helper.js +111 -0
- package/components/graph/modules/panel/helper.js.map +1 -0
- package/components/graph/modules/panel/index.d.ts +7 -0
- package/components/graph/modules/panel/index.js +98 -0
- package/components/graph/modules/panel/index.js.map +1 -0
- package/components/graph/modules/panel/style.d.ts +14 -0
- package/{src/components/graph/modules/panel/style.ts → components/graph/modules/panel/style.js} +32 -42
- package/components/graph/modules/panel/style.js.map +1 -0
- package/components/graph/modules/shape.d.ts +6 -0
- package/components/graph/modules/shape.js +80 -0
- package/components/graph/modules/shape.js.map +1 -0
- package/components/graph/modules/zoom-levels.d.ts +6 -0
- package/components/graph/modules/zoom-levels.js +10 -0
- package/components/graph/modules/zoom-levels.js.map +1 -0
- package/components/graph/style.d.ts +6 -0
- package/components/graph/style.js +66 -0
- package/components/graph/style.js.map +1 -0
- package/components/graph/types.d.ts +125 -0
- package/components/graph/types.js +30 -0
- package/components/graph/types.js.map +1 -0
- package/components/grouped-bar/config.d.ts +36 -0
- package/components/grouped-bar/config.js +20 -0
- package/components/grouped-bar/config.js.map +1 -0
- package/components/grouped-bar/index.d.ts +32 -0
- package/components/grouped-bar/index.js +249 -0
- package/components/grouped-bar/index.js.map +1 -0
- package/components/grouped-bar/style.d.ts +5 -0
- package/{src/components/grouped-bar/style.ts → components/grouped-bar/style.js} +14 -15
- package/components/grouped-bar/style.js.map +1 -0
- package/components/leaflet-flow-map/config.d.ts +46 -0
- package/components/leaflet-flow-map/config.js +25 -0
- package/components/leaflet-flow-map/config.js.map +1 -0
- package/components/leaflet-flow-map/index.d.ts +52 -0
- package/components/leaflet-flow-map/index.js +220 -0
- package/components/leaflet-flow-map/index.js.map +1 -0
- package/components/leaflet-flow-map/renderer-utils.d.ts +5 -0
- package/components/leaflet-flow-map/renderer-utils.js +15 -0
- package/components/leaflet-flow-map/renderer-utils.js.map +1 -0
- package/components/leaflet-flow-map/renderer.d.ts +26 -0
- package/components/leaflet-flow-map/renderer.js +117 -0
- package/components/leaflet-flow-map/renderer.js.map +1 -0
- package/components/leaflet-flow-map/shaders.d.ts +2 -0
- package/{src/components/leaflet-flow-map/shaders.ts → components/leaflet-flow-map/shaders.js} +7 -4
- package/components/leaflet-flow-map/shaders.js.map +1 -0
- package/components/leaflet-flow-map/types.d.ts +23 -0
- package/components/leaflet-map/config.d.ts +193 -0
- package/components/leaflet-map/config.js +71 -0
- package/components/leaflet-map/config.js.map +1 -0
- package/components/leaflet-map/index.d.ts +130 -0
- package/components/leaflet-map/index.js +690 -0
- package/components/leaflet-map/index.js.map +1 -0
- package/components/leaflet-map/leaflet.css.js +5 -0
- package/components/leaflet-map/leaflet.css.js.map +1 -0
- package/components/leaflet-map/modules/clusterBackground.d.ts +5 -0
- package/components/leaflet-map/modules/clusterBackground.js +27 -0
- package/components/leaflet-map/modules/clusterBackground.js.map +1 -0
- package/components/leaflet-map/modules/donut.d.ts +3 -0
- package/components/leaflet-map/modules/donut.js +25 -0
- package/components/leaflet-map/modules/donut.js.map +1 -0
- package/components/leaflet-map/modules/map.d.ts +14 -0
- package/components/leaflet-map/modules/map.js +154 -0
- package/components/leaflet-map/modules/map.js.map +1 -0
- package/components/leaflet-map/modules/node.d.ts +9 -0
- package/components/leaflet-map/modules/node.js +162 -0
- package/components/leaflet-map/modules/node.js.map +1 -0
- package/components/leaflet-map/modules/selectionRing.d.ts +7 -0
- package/components/leaflet-map/modules/selectionRing.js +41 -0
- package/components/leaflet-map/modules/selectionRing.js.map +1 -0
- package/components/leaflet-map/modules/utils.d.ts +50 -0
- package/components/leaflet-map/modules/utils.js +210 -0
- package/components/leaflet-map/modules/utils.js.map +1 -0
- package/{src/components → components}/leaflet-map/renderer/leaflet-maplibre-gl.js +78 -76
- package/components/leaflet-map/renderer/leaflet-maplibre-gl.js.map +1 -0
- package/components/leaflet-map/renderer/map-style.d.ts +4 -0
- package/components/leaflet-map/renderer/map-style.js +15 -0
- package/components/leaflet-map/renderer/map-style.js.map +1 -0
- package/components/leaflet-map/renderer/mapboxgl/mapboxgl-dark-theme.json.js +40 -0
- package/components/leaflet-map/renderer/mapboxgl/mapboxgl-dark-theme.json.js.map +1 -0
- package/components/leaflet-map/renderer/mapboxgl/mapboxgl-light-theme.json.js +40 -0
- package/components/leaflet-map/renderer/mapboxgl/mapboxgl-light-theme.json.js.map +1 -0
- package/components/leaflet-map/renderer/mapboxgl/mapboxgl-settings.json.js +4981 -0
- package/components/leaflet-map/renderer/mapboxgl/mapboxgl-settings.json.js.map +1 -0
- package/components/leaflet-map/renderer/mapboxgl-layer.d.ts +8 -0
- package/components/leaflet-map/renderer/mapboxgl-layer.js +27 -0
- package/components/leaflet-map/renderer/mapboxgl-layer.js.map +1 -0
- package/components/leaflet-map/renderer/mapboxgl-utils.d.ts +4 -0
- package/components/leaflet-map/renderer/mapboxgl-utils.js +39 -0
- package/components/leaflet-map/renderer/mapboxgl-utils.js.map +1 -0
- package/{src/components → components}/leaflet-map/renderer/maplibre-gl.css.js +4 -2
- package/components/leaflet-map/renderer/maplibre-gl.css.js.map +1 -0
- package/components/leaflet-map/style.d.ts +52 -0
- package/components/leaflet-map/style.js +183 -0
- package/components/leaflet-map/style.js.map +1 -0
- package/components/leaflet-map/types.d.ts +75 -0
- package/components/leaflet-map/types.js +15 -0
- package/components/leaflet-map/types.js.map +1 -0
- package/components/line/config.d.ts +30 -0
- package/components/line/config.js +17 -0
- package/components/line/config.js.map +1 -0
- package/components/line/index.d.ts +27 -0
- package/components/line/index.js +152 -0
- package/components/line/index.js.map +1 -0
- package/components/line/style.d.ts +6 -0
- package/{src/components/line/style.ts → components/line/style.js} +16 -18
- package/components/line/style.js.map +1 -0
- package/components/line/types.d.ts +12 -0
- package/components/nested-donut/config.d.ts +59 -0
- package/components/nested-donut/config.js +19 -0
- package/components/nested-donut/config.js.map +1 -0
- package/components/nested-donut/index.d.ts +38 -0
- package/components/nested-donut/index.js +133 -0
- package/components/nested-donut/index.js.map +1 -0
- package/components/nested-donut/modules/arc.d.ts +17 -0
- package/components/nested-donut/modules/arc.js +50 -0
- package/components/nested-donut/modules/arc.js.map +1 -0
- package/components/nested-donut/modules/label.d.ts +7 -0
- package/components/nested-donut/modules/label.js +34 -0
- package/components/nested-donut/modules/label.js.map +1 -0
- package/components/nested-donut/style.d.ts +26 -0
- package/components/nested-donut/style.js +70 -0
- package/components/nested-donut/style.js.map +1 -0
- package/components/nested-donut/types.d.ts +24 -0
- package/components/nested-donut/types.js +11 -0
- package/components/nested-donut/types.js.map +1 -0
- package/components/sankey/config.d.ts +162 -0
- package/components/sankey/config.js +65 -0
- package/components/sankey/config.js.map +1 -0
- package/components/sankey/index.d.ts +59 -0
- package/components/sankey/index.js +306 -0
- package/components/sankey/index.js.map +1 -0
- package/components/sankey/modules/label.d.ts +23 -0
- package/components/sankey/modules/label.js +168 -0
- package/components/sankey/modules/label.js.map +1 -0
- package/components/sankey/modules/link.d.ts +14 -0
- package/components/sankey/modules/link.js +108 -0
- package/components/sankey/modules/link.js.map +1 -0
- package/components/sankey/modules/node.d.ts +10 -0
- package/components/sankey/modules/node.js +156 -0
- package/components/sankey/modules/node.js.map +1 -0
- package/components/sankey/style.d.ts +20 -0
- package/{src/components/sankey/style.ts → components/sankey/style.js} +44 -60
- package/components/sankey/style.js.map +1 -0
- package/components/sankey/types.d.ts +84 -0
- package/components/sankey/types.js +34 -0
- package/components/sankey/types.js.map +1 -0
- package/components/scatter/config.d.ts +44 -0
- package/components/scatter/config.js +23 -0
- package/components/scatter/config.js.map +1 -0
- package/components/scatter/index.d.ts +28 -0
- package/components/scatter/index.js +167 -0
- package/components/scatter/index.js.map +1 -0
- package/components/scatter/modules/point.d.ts +7 -0
- package/components/scatter/modules/point.js +86 -0
- package/components/scatter/modules/point.js.map +1 -0
- package/components/scatter/modules/utils.d.ts +11 -0
- package/components/scatter/modules/utils.js +112 -0
- package/components/scatter/modules/utils.js.map +1 -0
- package/components/scatter/style.d.ts +5 -0
- package/{src/components/scatter/style.ts → components/scatter/style.js} +14 -15
- package/components/scatter/style.js.map +1 -0
- package/components/scatter/types.d.ts +19 -0
- package/components/stacked-bar/config.d.ts +38 -0
- package/components/stacked-bar/config.js +20 -0
- package/components/stacked-bar/config.js.map +1 -0
- package/components/stacked-bar/index.d.ts +28 -0
- package/components/stacked-bar/index.js +208 -0
- package/components/stacked-bar/index.js.map +1 -0
- package/components/stacked-bar/style.d.ts +5 -0
- package/{src/components/stacked-bar/style.ts → components/stacked-bar/style.js} +14 -15
- package/components/stacked-bar/style.js.map +1 -0
- package/components/stacked-bar/types.d.ts +5 -0
- package/components/timeline/config.d.ts +43 -0
- package/components/timeline/config.js +24 -0
- package/components/timeline/config.js.map +1 -0
- package/components/timeline/index.d.ts +41 -0
- package/components/timeline/index.js +244 -0
- package/components/timeline/index.js.map +1 -0
- package/components/timeline/style.d.ts +13 -0
- package/{src/components/timeline/style.ts → components/timeline/style.js} +30 -39
- package/components/timeline/style.js.map +1 -0
- package/components/tooltip/config.d.ts +68 -0
- package/components/tooltip/config.js +20 -0
- package/components/tooltip/config.js.map +1 -0
- package/components/tooltip/index.d.ts +36 -0
- package/components/tooltip/index.js +184 -0
- package/components/tooltip/index.js.map +1 -0
- package/{src/components → components}/tooltip/style.js +14 -11
- package/components/tooltip/style.js.map +1 -0
- package/components/topojson-map/config.d.ts +99 -0
- package/components/topojson-map/config.js +42 -0
- package/components/topojson-map/config.js.map +1 -0
- package/components/topojson-map/index.d.ts +52 -0
- package/components/topojson-map/index.js +355 -0
- package/components/topojson-map/index.js.map +1 -0
- package/components/topojson-map/style.d.ts +11 -0
- package/{src/components/topojson-map/style.ts → components/topojson-map/style.js} +26 -33
- package/components/topojson-map/style.js.map +1 -0
- package/components/topojson-map/types.d.ts +78 -0
- package/components/topojson-map/types.js +80 -0
- package/components/topojson-map/types.js.map +1 -0
- package/components/topojson-map/utils.d.ts +3 -0
- package/components/topojson-map/utils.js +30 -0
- package/components/topojson-map/utils.js.map +1 -0
- package/components/vis-controls/config.d.ts +12 -0
- package/components/vis-controls/config.js +13 -0
- package/components/vis-controls/config.js.map +1 -0
- package/components/vis-controls/index.d.ts +14 -0
- package/components/vis-controls/index.js +52 -0
- package/components/vis-controls/index.js.map +1 -0
- package/components/vis-controls/style.d.ts +11 -0
- package/{src/components/vis-controls/style.ts → components/vis-controls/style.js} +27 -34
- package/components/vis-controls/style.js.map +1 -0
- package/components/vis-controls/types.d.ts +13 -0
- package/components/vis-controls/types.js +8 -0
- package/components/vis-controls/types.js.map +1 -0
- package/components/xy-labels/config.d.ts +48 -0
- package/components/xy-labels/config.js +25 -0
- package/components/xy-labels/config.js.map +1 -0
- package/components/xy-labels/index.d.ts +15 -0
- package/components/xy-labels/index.js +87 -0
- package/components/xy-labels/index.js.map +1 -0
- package/components/xy-labels/modules/label.d.ts +9 -0
- package/components/xy-labels/modules/label.js +107 -0
- package/components/xy-labels/modules/label.js.map +1 -0
- package/components/xy-labels/style.d.ts +5 -0
- package/{src/components/xy-labels/style.ts → components/xy-labels/style.js} +14 -15
- package/components/xy-labels/style.js.map +1 -0
- package/components/xy-labels/types.d.ts +23 -0
- package/components/xy-labels/types.js +9 -0
- package/components/xy-labels/types.js.map +1 -0
- package/components.d.ts +51 -0
- package/components.js +29 -0
- package/components.js.map +1 -0
- package/containers/single-container/config.d.ts +12 -0
- package/containers/single-container/config.js +12 -0
- package/containers/single-container/config.js.map +1 -0
- package/containers/single-container/index.d.ts +19 -0
- package/containers/single-container/index.js +128 -0
- package/containers/single-container/index.js.map +1 -0
- package/containers/xy-container/config.d.ts +99 -0
- package/containers/xy-container/config.js +30 -0
- package/containers/xy-container/config.js.map +1 -0
- package/containers/xy-container/index.d.ts +34 -0
- package/containers/xy-container/index.js +330 -0
- package/containers/xy-container/index.js.map +1 -0
- package/containers.d.ts +6 -0
- package/containers.js +4 -0
- package/containers.js.map +1 -0
- package/core/component/config.d.ts +58 -0
- package/core/component/config.js +14 -0
- package/core/component/config.js.map +1 -0
- package/core/component/index.d.ts +43 -0
- package/core/component/index.js +118 -0
- package/core/component/index.js.map +1 -0
- package/core/component/types.d.ts +2 -0
- package/core/component/types.js +2 -0
- package/core/component/types.js.map +1 -0
- package/core/config/index.d.ts +3 -0
- package/core/config/index.js +16 -0
- package/core/config/index.js.map +1 -0
- package/core/container/config.d.ts +48 -0
- package/core/container/config.js +29 -0
- package/core/container/config.js.map +1 -0
- package/core/container/index.d.ts +26 -0
- package/core/container/index.js +106 -0
- package/core/container/index.js.map +1 -0
- package/core/xy-component/config.d.ts +38 -0
- package/core/xy-component/config.js +20 -0
- package/core/xy-component/config.js.map +1 -0
- package/core/xy-component/index.d.ts +27 -0
- package/core/xy-component/index.js +74 -0
- package/core/xy-component/index.js.map +1 -0
- package/data-models/core.d.ts +6 -0
- package/data-models/core.js +14 -0
- package/data-models/core.js.map +1 -0
- package/data-models/graph.d.ts +24 -0
- package/data-models/graph.js +107 -0
- package/data-models/graph.js.map +1 -0
- package/data-models/map-graph.d.ts +21 -0
- package/data-models/map-graph.js +62 -0
- package/data-models/map-graph.js.map +1 -0
- package/data-models/map.d.ts +5 -0
- package/data-models/map.js +12 -0
- package/data-models/map.js.map +1 -0
- package/data-models/series.d.ts +6 -0
- package/data-models/series.js +19 -0
- package/data-models/series.js.map +1 -0
- package/index.d.ts +7 -0
- package/index.js +55 -0
- package/index.js.map +1 -0
- package/maps/china-provinces.json.js +140373 -0
- package/maps/fr-regions.json.js +14162 -0
- package/maps/germany-regions.json.js +35760 -0
- package/maps/ind-regions.json.js +290584 -0
- package/maps/uk-regions.json.js +96233 -0
- package/maps/us-counties.json.js +206318 -0
- package/maps/us-states.json.js +16345 -0
- package/maps/world-110m-alpha.json.js +251366 -0
- package/maps/world-simple.json.js +89428 -0
- package/maps/world-simplest.json.js +28175 -0
- package/maps.d.ts +60 -0
- package/maps.js +23 -0
- package/package.json +1 -1
- package/styles/colors.d.ts +7 -0
- package/styles/colors.js +24 -0
- package/styles/colors.js.map +1 -0
- package/styles/index.d.ts +7 -0
- package/styles/index.js +38 -0
- package/styles/index.js.map +1 -0
- package/styles/sizes.d.ts +2 -0
- package/{src/styles/sizes.ts → styles/sizes.js} +8 -6
- package/styles/sizes.js.map +1 -0
- package/types/accessor.d.ts +5 -0
- package/types/accessor.js +2 -0
- package/types/accessor.js.map +1 -0
- package/types/component.d.ts +13 -0
- package/types/component.js +14 -0
- package/types/component.js.map +1 -0
- package/types/curve.d.ts +40 -0
- package/types/curve.js +46 -0
- package/types/curve.js.map +1 -0
- package/types/data.d.ts +7 -0
- package/types/data.js +2 -0
- package/types/data.js.map +1 -0
- package/types/direction.d.ts +6 -0
- package/types/direction.js +10 -0
- package/types/direction.js.map +1 -0
- package/types/graph.d.ts +35 -0
- package/types/graph.js +2 -0
- package/types/graph.js.map +1 -0
- package/types/map.d.ts +4 -0
- package/types/map.js +2 -0
- package/types/map.js.map +1 -0
- package/types/misc.d.ts +8 -0
- package/types/position.d.ts +20 -0
- package/types/position.js +27 -0
- package/types/position.js.map +1 -0
- package/types/scale.d.ts +23 -0
- package/types/scale.js +27 -0
- package/types/scale.js.map +1 -0
- package/types/shape.d.ts +7 -0
- package/types/shape.js +11 -0
- package/types/shape.js.map +1 -0
- package/types/spacing.d.ts +6 -0
- package/types/spacing.js +2 -0
- package/types/spacing.js.map +1 -0
- package/types/svg.d.ts +18 -0
- package/types/svg.js +22 -0
- package/types/svg.js.map +1 -0
- package/types/symbol.d.ts +18 -0
- package/types/symbol.js +24 -0
- package/types/symbol.js.map +1 -0
- package/types/text.d.ts +47 -0
- package/types/text.js +26 -0
- package/types/text.js.map +1 -0
- package/types.d.ts +27 -0
- package/types.js +30 -0
- package/types.js.map +1 -0
- package/utils/color.d.ts +10 -0
- package/utils/color.js +32 -0
- package/utils/color.js.map +1 -0
- package/utils/d3.d.ts +3 -0
- package/utils/d3.js +16 -0
- package/utils/d3.js.map +1 -0
- package/utils/data.d.ts +45 -0
- package/utils/data.js +274 -0
- package/utils/data.js.map +1 -0
- package/utils/html.d.ts +1 -0
- package/utils/html.js +16 -0
- package/utils/html.js.map +1 -0
- package/utils/map.d.ts +2 -0
- package/utils/map.js +20 -0
- package/utils/map.js.map +1 -0
- package/utils/misc.d.ts +9 -0
- package/utils/misc.js +47 -0
- package/utils/misc.js.map +1 -0
- package/utils/path.d.ts +23 -0
- package/utils/path.js +144 -0
- package/utils/path.js.map +1 -0
- package/utils/scale.d.ts +1 -0
- package/utils/style.d.ts +6 -0
- package/utils/style.js +24 -0
- package/utils/style.js.map +1 -0
- package/utils/svg.d.ts +3 -0
- package/utils/text.d.ts +139 -0
- package/utils/text.js +443 -0
- package/utils/text.js.map +1 -0
- package/utils/type.d.ts +5 -0
- package/declaration.d.ts +0 -1
- package/index.ts +0 -1
- package/licences.txt +0 -43
- package/maps.ts +0 -1
- package/rollup.config.js +0 -71
- package/rules/ts-getter-setter.js +0 -35
- package/src/components/area/config.ts +0 -29
- package/src/components/area/index.ts +0 -133
- package/src/components/area/types.ts +0 -2
- package/src/components/axis/config.ts +0 -76
- package/src/components/axis/index.ts +0 -363
- package/src/components/axis/types.ts +0 -4
- package/src/components/brush/config.ts +0 -51
- package/src/components/brush/index.ts +0 -233
- package/src/components/brush/types.ts +0 -8
- package/src/components/bullet-legend/config.ts +0 -38
- package/src/components/bullet-legend/index.ts +0 -104
- package/src/components/bullet-legend/types.ts +0 -7
- package/src/components/chord-diagram/config.ts +0 -53
- package/src/components/chord-diagram/index.ts +0 -401
- package/src/components/chord-diagram/modules/label.ts +0 -155
- package/src/components/chord-diagram/modules/link.ts +0 -91
- package/src/components/chord-diagram/modules/node.ts +0 -80
- package/src/components/chord-diagram/types.ts +0 -68
- package/src/components/crosshair/config.ts +0 -48
- package/src/components/crosshair/index.ts +0 -220
- package/src/components/crosshair/types.ts +0 -15
- package/src/components/donut/config.ts +0 -65
- package/src/components/donut/index.ts +0 -148
- package/src/components/donut/modules/arc.ts +0 -86
- package/src/components/donut/types.ts +0 -17
- package/src/components/flow-legend/config.ts +0 -31
- package/src/components/flow-legend/index.ts +0 -103
- package/src/components/flow-legend/types.ts +0 -10
- package/src/components/free-brush/config.ts +0 -54
- package/src/components/free-brush/index.ts +0 -207
- package/src/components/free-brush/types.ts +0 -8
- package/src/components/graph/config.ts +0 -280
- package/src/components/graph/index.ts +0 -809
- package/src/components/graph/modules/layout-helpers.ts +0 -96
- package/src/components/graph/modules/layout.ts +0 -502
- package/src/components/graph/modules/link/helper.ts +0 -105
- package/src/components/graph/modules/link/index.ts +0 -302
- package/src/components/graph/modules/node/helper.ts +0 -162
- package/src/components/graph/modules/node/index.ts +0 -343
- package/src/components/graph/modules/panel/helper.ts +0 -160
- package/src/components/graph/modules/panel/index.ts +0 -137
- package/src/components/graph/modules/shape.ts +0 -108
- package/src/components/graph/modules/zoom-levels.ts +0 -6
- package/src/components/graph/style.ts +0 -72
- package/src/components/graph/types.ts +0 -152
- package/src/components/grouped-bar/config.ts +0 -40
- package/src/components/grouped-bar/index.ts +0 -325
- package/src/components/leaflet-flow-map/config.ts +0 -60
- package/src/components/leaflet-flow-map/index.ts +0 -279
- package/src/components/leaflet-flow-map/renderer-utils.ts +0 -14
- package/src/components/leaflet-flow-map/renderer.ts +0 -146
- package/src/components/leaflet-flow-map/types.ts +0 -18
- package/src/components/leaflet-map/config.ts +0 -234
- package/src/components/leaflet-map/index.ts +0 -808
- package/src/components/leaflet-map/leaflet.css +0 -625
- package/src/components/leaflet-map/modules/clusterBackground.ts +0 -34
- package/src/components/leaflet-map/modules/donut.ts +0 -37
- package/src/components/leaflet-map/modules/map.ts +0 -178
- package/src/components/leaflet-map/modules/node.ts +0 -208
- package/src/components/leaflet-map/modules/selectionRing.ts +0 -63
- package/src/components/leaflet-map/modules/utils.ts +0 -290
- package/src/components/leaflet-map/renderer/map-style.ts +0 -24
- package/src/components/leaflet-map/renderer/mapboxgl/mapboxgl-dark-theme.json +0 -35
- package/src/components/leaflet-map/renderer/mapboxgl/mapboxgl-light-theme.json +0 -35
- package/src/components/leaflet-map/renderer/mapboxgl/mapboxgl-settings.json +0 -2185
- package/src/components/leaflet-map/renderer/mapboxgl-layer.ts +0 -43
- package/src/components/leaflet-map/renderer/mapboxgl-utils.ts +0 -40
- package/src/components/leaflet-map/style.ts +0 -217
- package/src/components/leaflet-map/types.ts +0 -75
- package/src/components/line/config.ts +0 -34
- package/src/components/line/index.ts +0 -188
- package/src/components/line/types.ts +0 -3
- package/src/components/nested-donut/config.ts +0 -75
- package/src/components/nested-donut/index.ts +0 -176
- package/src/components/nested-donut/modules/arc.ts +0 -78
- package/src/components/nested-donut/modules/label.ts +0 -63
- package/src/components/nested-donut/style.ts +0 -82
- package/src/components/nested-donut/types.ts +0 -29
- package/src/components/sankey/config.ts +0 -195
- package/src/components/sankey/index.ts +0 -387
- package/src/components/sankey/modules/label.ts +0 -228
- package/src/components/sankey/modules/link.ts +0 -141
- package/src/components/sankey/modules/node.ts +0 -221
- package/src/components/sankey/types.ts +0 -95
- package/src/components/scatter/config.ts +0 -49
- package/src/components/scatter/index.ts +0 -220
- package/src/components/scatter/modules/point.ts +0 -123
- package/src/components/scatter/modules/utils.ts +0 -150
- package/src/components/scatter/types.ts +0 -21
- package/src/components/stacked-bar/config.ts +0 -42
- package/src/components/stacked-bar/index.ts +0 -267
- package/src/components/stacked-bar/types.ts +0 -5
- package/src/components/timeline/config.ts +0 -49
- package/src/components/timeline/index.ts +0 -302
- package/src/components/tooltip/config.ts +0 -69
- package/src/components/tooltip/index.ts +0 -220
- package/src/components/topojson-map/config.ts +0 -124
- package/src/components/topojson-map/index.ts +0 -436
- package/src/components/topojson-map/types.ts +0 -123
- package/src/components/topojson-map/utils.ts +0 -29
- package/src/components/vis-controls/config.ts +0 -16
- package/src/components/vis-controls/index.ts +0 -68
- package/src/components/vis-controls/types.ts +0 -14
- package/src/components/xy-labels/config.ts +0 -56
- package/src/components/xy-labels/index.ts +0 -109
- package/src/components/xy-labels/modules/label.ts +0 -140
- package/src/components/xy-labels/types.ts +0 -26
- package/src/components.ts +0 -56
- package/src/containers/single-container/config.ts +0 -15
- package/src/containers/single-container/index.ts +0 -150
- package/src/containers/xy-container/config.ts +0 -112
- package/src/containers/xy-container/index.ts +0 -407
- package/src/containers.ts +0 -6
- package/src/core/component/config.ts +0 -61
- package/src/core/component/index.ts +0 -154
- package/src/core/component/types.ts +0 -9
- package/src/core/config/index.ts +0 -12
- package/src/core/container/config.ts +0 -56
- package/src/core/container/index.ts +0 -136
- package/src/core/xy-component/config.ts +0 -46
- package/src/core/xy-component/index.ts +0 -90
- package/src/data-models/core.ts +0 -15
- package/src/data-models/graph.ts +0 -138
- package/src/data-models/map-graph.ts +0 -72
- package/src/data-models/map.ts +0 -18
- package/src/data-models/series.ts +0 -16
- package/src/index.ts +0 -7
- package/src/maps/china-provinces.json +0 -1
- package/src/maps/fr-regions.json +0 -1
- package/src/maps/germany-regions.json +0 -1
- package/src/maps/ind-regions.json +0 -1
- package/src/maps/uk-regions.json +0 -1
- package/src/maps/us-counties.json +0 -1
- package/src/maps/us-states.json +0 -1
- package/src/maps/world-110m-alpha.json +0 -1
- package/src/maps/world-simple.json +0 -1
- package/src/maps/world-simplest.json +0 -1
- package/src/maps.ts +0 -34
- package/src/styles/colors.ts +0 -28
- package/src/styles/index.ts +0 -38
- package/src/types/accessor.ts +0 -5
- package/src/types/component.ts +0 -15
- package/src/types/curve.ts +0 -62
- package/src/types/data.ts +0 -5
- package/src/types/direction.ts +0 -6
- package/src/types/graph.ts +0 -40
- package/src/types/map.ts +0 -5
- package/src/types/misc.ts +0 -10
- package/src/types/position.ts +0 -23
- package/src/types/scale.ts +0 -47
- package/src/types/shape.ts +0 -7
- package/src/types/spacing.ts +0 -6
- package/src/types/svg.ts +0 -32
- package/src/types/symbol.ts +0 -21
- package/src/types/text.ts +0 -71
- package/src/types.ts +0 -31
- package/src/utils/color.ts +0 -41
- package/src/utils/d3.ts +0 -15
- package/src/utils/data.ts +0 -328
- package/src/utils/html.ts +0 -13
- package/src/utils/map.ts +0 -29
- package/src/utils/misc.ts +0 -54
- package/src/utils/path.ts +0 -196
- package/src/utils/scale.ts +0 -1
- package/src/utils/style.ts +0 -37
- package/src/utils/svg.ts +0 -49
- package/src/utils/text.ts +0 -529
- package/src/utils/type.ts +0 -9
- package/tsconfig.json +0 -29
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Selection } from 'd3-selection';
|
|
2
|
+
import { Line } from 'd3-shape';
|
|
3
|
+
import { ChordInputLink, ChordInputNode, ChordRibbon } from '../types';
|
|
4
|
+
import { ChordDiagramConfig } from '../config';
|
|
5
|
+
export interface ArcLink extends SVGElement {
|
|
6
|
+
_animState?: {
|
|
7
|
+
source: {
|
|
8
|
+
y0: number;
|
|
9
|
+
y1: number;
|
|
10
|
+
};
|
|
11
|
+
target: {
|
|
12
|
+
x0: number;
|
|
13
|
+
x1: number;
|
|
14
|
+
y1: number;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
export declare function emptyPath(): string;
|
|
19
|
+
export declare function createLink<N extends ChordInputNode>(selection: Selection<SVGPathElement, ChordRibbon<N>, SVGGElement, unknown>, lineGen: Line<[number, number]>): void;
|
|
20
|
+
export declare function updateLink<N extends ChordInputNode, L extends ChordInputLink>(selection: Selection<SVGPathElement, ChordRibbon<N>, SVGGElement, unknown>, config: ChordDiagramConfig<N, L>, lineGen: Line<[number, number]>, duration: number): void;
|
|
21
|
+
export declare function removeLink(selection: Selection<SVGPathElement, unknown, SVGGElement, unknown>, duration: number): void;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { select } from 'd3-selection';
|
|
2
|
+
import { path } from 'd3-path';
|
|
3
|
+
import { interpolatePath } from 'd3-interpolate-path';
|
|
4
|
+
import { getColor } from '../../../utils/color.js';
|
|
5
|
+
import { smartTransition } from '../../../utils/d3.js';
|
|
6
|
+
|
|
7
|
+
function emptyPath() {
|
|
8
|
+
return 'M0,0 L0,0';
|
|
9
|
+
}
|
|
10
|
+
// Creates a path consisting of the inner source arc, node arcs and connecting curves
|
|
11
|
+
function linkGen(points, lineGen) {
|
|
12
|
+
const p = path();
|
|
13
|
+
const sourceArc = points[0];
|
|
14
|
+
const targetArc = points[points.length - 1];
|
|
15
|
+
if (points.length === 2) {
|
|
16
|
+
// Writing a custom curve here since generators won't produce a curved line from only two points
|
|
17
|
+
p.moveTo(sourceArc.x1, sourceArc.y1);
|
|
18
|
+
p.quadraticCurveTo(0, 0, targetArc.x0, targetArc.y0);
|
|
19
|
+
p.arc(0, 0, targetArc.r, targetArc.a0, targetArc.a1);
|
|
20
|
+
p.quadraticCurveTo(0, 0, sourceArc.x0, sourceArc.y0);
|
|
21
|
+
p.arc(0, 0, sourceArc.r, sourceArc.a0, sourceArc.a1);
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
const inner = points.map((d, i) => i < points.length / 2 ? [d.x1, d.y1] : [d.x0, d.y0]);
|
|
25
|
+
const outer = points.map((d, i) => i < points.length / 2 ? [d.x0, d.y0] : [d.x1, d.y1]);
|
|
26
|
+
lineGen.context(p);
|
|
27
|
+
lineGen(inner);
|
|
28
|
+
p.arc(0, 0, targetArc.r, targetArc.a0, targetArc.a1);
|
|
29
|
+
lineGen(outer.reverse());
|
|
30
|
+
p.arc(0, 0, sourceArc.r, sourceArc.a0, sourceArc.a1);
|
|
31
|
+
}
|
|
32
|
+
return p.toString();
|
|
33
|
+
}
|
|
34
|
+
function createLink(selection, lineGen) {
|
|
35
|
+
selection
|
|
36
|
+
.attr('d', d => linkGen(d.points, lineGen) || emptyPath())
|
|
37
|
+
.style('opacity', 0);
|
|
38
|
+
}
|
|
39
|
+
function updateLink(selection, config, lineGen, duration) {
|
|
40
|
+
const selTransition = smartTransition(selection, duration)
|
|
41
|
+
.style('fill', d => getColor(d.data, config.linkColor))
|
|
42
|
+
.style('stroke', d => getColor(d.data, config.linkColor))
|
|
43
|
+
.style('opacity', 'var(--vis-chord-diagram-link-opacity)');
|
|
44
|
+
if (duration) {
|
|
45
|
+
const transition = selTransition;
|
|
46
|
+
transition.attrTween('d', (d, i, el) => {
|
|
47
|
+
const previous = select(el[i]).attr('d');
|
|
48
|
+
const next = linkGen(d.points, lineGen) || emptyPath();
|
|
49
|
+
return interpolatePath(previous, next);
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
selTransition.attr('d', d => linkGen(d.points, lineGen) || emptyPath());
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
function removeLink(selection, duration) {
|
|
57
|
+
smartTransition(selection, duration)
|
|
58
|
+
.style('opacity', 0)
|
|
59
|
+
.remove();
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
export { createLink, emptyPath, removeLink, updateLink };
|
|
63
|
+
//# sourceMappingURL=link.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link.js","sources":["../../../../src/components/chord-diagram/modules/link.ts"],"sourcesContent":["import { Selection, select } from 'd3-selection'\nimport { path } from 'd3-path'\nimport { Line } from 'd3-shape'\nimport { Transition } from 'd3-transition'\nimport { interpolatePath } from 'd3-interpolate-path'\n\n// Utils\nimport { getColor } from 'utils/color'\nimport { smartTransition } from 'utils/d3'\n\n// Local Types\nimport { ChordInputLink, ChordInputNode, ChordRibbon, ChordRibbonPoint } from '../types'\nimport { ChordDiagramConfig } from '../config'\n\nexport interface ArcLink extends SVGElement {\n _animState?: {\n source: { y0: number; y1: number };\n target: { x0: number; x1: number; y1: number };\n };\n}\n\nexport function emptyPath (): string {\n return 'M0,0 L0,0'\n}\n\n// Creates a path consisting of the inner source arc, node arcs and connecting curves\nfunction linkGen (points: ChordRibbonPoint[], lineGen: Line<[number, number]>): string {\n const p = path()\n const sourceArc = points[0]\n const targetArc = points[points.length - 1]\n\n if (points.length === 2) {\n // Writing a custom curve here since generators won't produce a curved line from only two points\n p.moveTo(sourceArc.x1, sourceArc.y1)\n p.quadraticCurveTo(0, 0, targetArc.x0, targetArc.y0)\n p.arc(0, 0, targetArc.r, targetArc.a0, targetArc.a1)\n p.quadraticCurveTo(0, 0, sourceArc.x0, sourceArc.y0)\n p.arc(0, 0, sourceArc.r, sourceArc.a0, sourceArc.a1)\n } else {\n const inner: [number, number][] = points.map((d, i) => i < points.length / 2 ? [d.x1, d.y1] : [d.x0, d.y0])\n const outer: [number, number][] = points.map((d, i) => i < points.length / 2 ? [d.x0, d.y0] : [d.x1, d.y1])\n\n lineGen.context(p as CanvasRenderingContext2D)\n lineGen(inner)\n p.arc(0, 0, targetArc.r, targetArc.a0, targetArc.a1)\n lineGen(outer.reverse())\n p.arc(0, 0, sourceArc.r, sourceArc.a0, sourceArc.a1)\n }\n return p.toString()\n}\n\nexport function createLink<N extends ChordInputNode> (\n selection: Selection<SVGPathElement, ChordRibbon<N>, SVGGElement, unknown>,\n lineGen: Line<[number, number]>\n): void {\n selection\n .attr('d', d => linkGen(d.points, lineGen) || emptyPath())\n .style('opacity', 0)\n}\n\nexport function updateLink<N extends ChordInputNode, L extends ChordInputLink> (\n selection: Selection<SVGPathElement, ChordRibbon<N>, SVGGElement, unknown>,\n config: ChordDiagramConfig<N, L>,\n lineGen: Line<[number, number]>,\n duration: number\n): void {\n const selTransition = smartTransition(selection, duration)\n .style('fill', d => getColor(d.data, config.linkColor))\n .style('stroke', d => getColor(d.data, config.linkColor))\n .style('opacity', 'var(--vis-chord-diagram-link-opacity)')\n\n if (duration) {\n const transition = selTransition as Transition<SVGPathElement, ChordRibbon<N>, SVGGElement, unknown>\n transition.attrTween('d', (d, i, el) => {\n const previous = select(el[i]).attr('d')\n const next = linkGen(d.points, lineGen) || emptyPath()\n return interpolatePath(previous, next)\n })\n } else {\n selTransition.attr('d', d => linkGen(d.points, lineGen) || emptyPath())\n }\n}\n\nexport function removeLink (\n selection: Selection<SVGPathElement, unknown, SVGGElement, unknown>,\n duration: number\n): void {\n smartTransition(selection, duration)\n .style('opacity', 0)\n .remove()\n}\n"],"names":[],"mappings":";;;;;;SAqBgB,SAAS,GAAA;AACvB,IAAA,OAAO,WAAW,CAAA;AACpB,CAAC;AAED;AACA,SAAS,OAAO,CAAE,MAA0B,EAAE,OAA+B,EAAA;AAC3E,IAAA,MAAM,CAAC,GAAG,IAAI,EAAE,CAAA;AAChB,IAAA,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;IAC3B,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;AAE3C,IAAA,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;;QAEvB,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC,CAAA;AACpC,QAAA,CAAC,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC,CAAA;AACpD,QAAA,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC,CAAA;AACpD,QAAA,CAAC,CAAC,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC,CAAA;AACpD,QAAA,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC,CAAA;AACrD,KAAA;AAAM,SAAA;QACL,MAAM,KAAK,GAAuB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAC3G,MAAM,KAAK,GAAuB,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAE3G,QAAA,OAAO,CAAC,OAAO,CAAC,CAA6B,CAAC,CAAA;QAC9C,OAAO,CAAC,KAAK,CAAC,CAAA;AACd,QAAA,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC,CAAA;AACpD,QAAA,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;AACxB,QAAA,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,CAAC,CAAA;AACrD,KAAA;AACD,IAAA,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAA;AACrB,CAAC;AAEe,SAAA,UAAU,CACxB,SAA0E,EAC1E,OAA+B,EAAA;IAE/B,SAAS;AACN,SAAA,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,SAAS,EAAE,CAAC;AACzD,SAAA,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;AACxB,CAAC;AAEK,SAAU,UAAU,CACxB,SAA0E,EAC1E,MAAgC,EAChC,OAA+B,EAC/B,QAAgB,EAAA;AAEhB,IAAA,MAAM,aAAa,GAAG,eAAe,CAAC,SAAS,EAAE,QAAQ,CAAC;AACvD,SAAA,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;AACtD,SAAA,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;AACxD,SAAA,KAAK,CAAC,SAAS,EAAE,uCAAuC,CAAC,CAAA;AAE5D,IAAA,IAAI,QAAQ,EAAE;QACZ,MAAM,UAAU,GAAG,aAAiF,CAAA;AACpG,QAAA,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,KAAI;AACrC,YAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACxC,YAAA,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,SAAS,EAAE,CAAA;AACtD,YAAA,OAAO,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;AACxC,SAAC,CAAC,CAAA;AACH,KAAA;AAAM,SAAA;QACL,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,SAAS,EAAE,CAAC,CAAA;AACxE,KAAA;AACH,CAAC;AAEe,SAAA,UAAU,CACxB,SAAmE,EACnE,QAAgB,EAAA;AAEhB,IAAA,eAAe,CAAC,SAAS,EAAE,QAAQ,CAAC;AACjC,SAAA,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;AACnB,SAAA,MAAM,EAAE,CAAA;AACb;;;;"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Selection } from 'd3-selection';
|
|
2
|
+
import { Arc } from 'd3-shape';
|
|
3
|
+
import { ChordInputNode, ChordInputLink, ChordNode } from '../types';
|
|
4
|
+
import { ChordDiagramConfig } from '../config';
|
|
5
|
+
declare type AnimState = {
|
|
6
|
+
x0: number;
|
|
7
|
+
x1: number;
|
|
8
|
+
y0: number;
|
|
9
|
+
y1: number;
|
|
10
|
+
};
|
|
11
|
+
export interface ArcNode extends SVGElement {
|
|
12
|
+
_animState?: AnimState;
|
|
13
|
+
}
|
|
14
|
+
export declare function createNode<N extends ChordInputNode, L extends ChordInputLink>(selection: Selection<SVGPathElement, ChordNode<N>, SVGGElement, unknown>): void;
|
|
15
|
+
export declare function updateNode<N extends ChordInputNode, L extends ChordInputLink>(selection: Selection<SVGPathElement, ChordNode<N>, SVGGElement, unknown>, config: ChordDiagramConfig<N, L>, arcGen: Arc<unknown, AnimState>, duration: number): void;
|
|
16
|
+
export declare function removeNode<N extends ChordInputNode>(selection: Selection<SVGPathElement, unknown, SVGGElement, unknown>, duration: number): void;
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { interpolate } from 'd3-interpolate';
|
|
2
|
+
import { getColor } from '../../../utils/color.js';
|
|
3
|
+
import { smartTransition } from '../../../utils/d3.js';
|
|
4
|
+
|
|
5
|
+
function createNode(selection) {
|
|
6
|
+
selection
|
|
7
|
+
.style('opacity', 0)
|
|
8
|
+
.each((d, i, els) => {
|
|
9
|
+
const arcNode = els[i];
|
|
10
|
+
const angleCenter = (d.x0 + d.x1) / 2;
|
|
11
|
+
const angleHalfWidth = (d.x1 - d.x0) / 2;
|
|
12
|
+
arcNode._animState = {
|
|
13
|
+
x0: angleCenter - angleHalfWidth * 0.8,
|
|
14
|
+
x1: angleCenter + angleHalfWidth * 0.8,
|
|
15
|
+
y0: d.y0,
|
|
16
|
+
y1: d.y1,
|
|
17
|
+
};
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
function updateNode(selection, config, arcGen, duration) {
|
|
21
|
+
const nodeColor = (d) => getColor(d.data, config.nodeColor, d.height);
|
|
22
|
+
selection
|
|
23
|
+
.attr('id', d => d.uid)
|
|
24
|
+
.style('transition', `fill ${duration}ms`) // Animate color with CSS because we're using CSS-variables
|
|
25
|
+
.style('fill', nodeColor)
|
|
26
|
+
.style('stroke', nodeColor);
|
|
27
|
+
if (duration) {
|
|
28
|
+
const transition = smartTransition(selection, duration)
|
|
29
|
+
.style('opacity', 1);
|
|
30
|
+
transition.attrTween('d', (d, i, els) => {
|
|
31
|
+
const arcNode = els[i];
|
|
32
|
+
const nextAnimState = { x0: d.x0, x1: d.x1, y0: d.y0, y1: d.y1 };
|
|
33
|
+
const datum = interpolate(arcNode._animState, nextAnimState);
|
|
34
|
+
return (t) => {
|
|
35
|
+
arcNode._animState = datum(t);
|
|
36
|
+
return arcGen(arcNode._animState);
|
|
37
|
+
};
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
selection.attr('d', d => arcGen(d))
|
|
42
|
+
.style('opacity', 1);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
function removeNode(selection, duration) {
|
|
46
|
+
smartTransition(selection, duration)
|
|
47
|
+
.style('opacity', 0)
|
|
48
|
+
.remove();
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export { createNode, removeNode, updateNode };
|
|
52
|
+
//# sourceMappingURL=node.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node.js","sources":["../../../../src/components/chord-diagram/modules/node.ts"],"sourcesContent":["import { Selection } from 'd3-selection'\nimport { Transition } from 'd3-transition'\nimport { interpolate } from 'd3-interpolate'\nimport { Arc } from 'd3-shape'\n\n// Utils\nimport { getColor } from 'utils/color'\nimport { smartTransition } from 'utils/d3'\n\n// Local Types\nimport { ChordInputNode, ChordInputLink, ChordNode } from '../types'\n\n// Config\nimport { ChordDiagramConfig } from '../config'\n\ntype AnimState = { x0: number; x1: number; y0: number; y1: number }\nexport interface ArcNode extends SVGElement {\n _animState?: AnimState;\n}\n\nexport function createNode<N extends ChordInputNode, L extends ChordInputLink> (\n selection: Selection<SVGPathElement, ChordNode<N>, SVGGElement, unknown>\n): void {\n selection\n .style('opacity', 0)\n .each((d, i, els) => {\n const arcNode: ArcNode = els[i]\n const angleCenter = (d.x0 + d.x1) / 2\n const angleHalfWidth = (d.x1 - d.x0) / 2\n arcNode._animState = {\n x0: angleCenter - angleHalfWidth * 0.8,\n x1: angleCenter + angleHalfWidth * 0.8,\n y0: d.y0,\n y1: d.y1,\n }\n })\n}\n\nexport function updateNode<N extends ChordInputNode, L extends ChordInputLink> (\n selection: Selection<SVGPathElement, ChordNode<N>, SVGGElement, unknown>,\n config: ChordDiagramConfig<N, L>,\n arcGen: Arc<unknown, AnimState>,\n duration: number\n): void {\n const nodeColor = (d: ChordNode<N>): string => getColor(d.data, config.nodeColor, d.height)\n\n selection\n .attr('id', d => d.uid)\n .style('transition', `fill ${duration}ms`) // Animate color with CSS because we're using CSS-variables\n .style('fill', nodeColor)\n .style('stroke', nodeColor)\n\n if (duration) {\n const transition = smartTransition(selection, duration)\n .style('opacity', 1) as Transition<SVGPathElement, ChordNode<N>, SVGGElement, ChordNode<N>>\n\n transition.attrTween('d', (d, i, els) => {\n const arcNode: ArcNode = els[i]\n const nextAnimState = { x0: d.x0, x1: d.x1, y0: d.y0, y1: d.y1 }\n const datum = interpolate(arcNode._animState, nextAnimState)\n\n return (t: number): string => {\n arcNode._animState = datum(t)\n return arcGen(arcNode._animState)\n }\n })\n } else {\n selection.attr('d', d => arcGen(d))\n .style('opacity', 1)\n }\n}\n\nexport function removeNode<N extends ChordInputNode> (\n selection: Selection<SVGPathElement, unknown, SVGGElement, unknown>,\n duration: number\n): void {\n smartTransition(selection, duration)\n .style('opacity', 0)\n .remove()\n}\n"],"names":[],"mappings":";;;;AAoBM,SAAU,UAAU,CACxB,SAAwE,EAAA;IAExE,SAAS;AACN,SAAA,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;SACnB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,KAAI;AAClB,QAAA,MAAM,OAAO,GAAY,GAAG,CAAC,CAAC,CAAC,CAAA;AAC/B,QAAA,MAAM,WAAW,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;AACrC,QAAA,MAAM,cAAc,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;QACxC,OAAO,CAAC,UAAU,GAAG;AACnB,YAAA,EAAE,EAAE,WAAW,GAAG,cAAc,GAAG,GAAG;AACtC,YAAA,EAAE,EAAE,WAAW,GAAG,cAAc,GAAG,GAAG;YACtC,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,EAAE,EAAE,CAAC,CAAC,EAAE;SACT,CAAA;AACH,KAAC,CAAC,CAAA;AACN,CAAC;AAEK,SAAU,UAAU,CACxB,SAAwE,EACxE,MAAgC,EAChC,MAA+B,EAC/B,QAAgB,EAAA;IAEhB,MAAM,SAAS,GAAG,CAAC,CAAe,KAAa,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,CAAA;IAE3F,SAAS;SACN,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC;SACtB,KAAK,CAAC,YAAY,EAAE,CAAA,KAAA,EAAQ,QAAQ,CAAI,EAAA,CAAA,CAAC;AACzC,SAAA,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC;AACxB,SAAA,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;AAE7B,IAAA,IAAI,QAAQ,EAAE;AACZ,QAAA,MAAM,UAAU,GAAG,eAAe,CAAC,SAAS,EAAE,QAAQ,CAAC;AACpD,aAAA,KAAK,CAAC,SAAS,EAAE,CAAC,CAAwE,CAAA;AAE7F,QAAA,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,KAAI;AACtC,YAAA,MAAM,OAAO,GAAY,GAAG,CAAC,CAAC,CAAC,CAAA;YAC/B,MAAM,aAAa,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAA;YAChE,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,UAAU,EAAE,aAAa,CAAC,CAAA;YAE5D,OAAO,CAAC,CAAS,KAAY;AAC3B,gBAAA,OAAO,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;AAC7B,gBAAA,OAAO,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;AACnC,aAAC,CAAA;AACH,SAAC,CAAC,CAAA;AACH,KAAA;AAAM,SAAA;AACL,QAAA,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;AAChC,aAAA,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;AACvB,KAAA;AACH,CAAC;AAEe,SAAA,UAAU,CACxB,SAAmE,EACnE,QAAgB,EAAA;AAEhB,IAAA,eAAe,CAAC,SAAS,EAAE,QAAQ,CAAC;AACjC,SAAA,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC;AACnB,SAAA,MAAM,EAAE,CAAA;AACb;;;;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export declare const root: string;
|
|
2
|
+
export declare const variables: void;
|
|
3
|
+
export declare const nodes: string;
|
|
4
|
+
export declare const links: string;
|
|
5
|
+
export declare const labels: string;
|
|
6
|
+
export declare const node: string;
|
|
7
|
+
export declare const hoveredNode: string;
|
|
8
|
+
export declare const gLabel: string;
|
|
9
|
+
export declare const label: string;
|
|
10
|
+
export declare const labelExit: string;
|
|
11
|
+
export declare const link: string;
|
|
12
|
+
export declare const hoveredLink: string;
|
|
13
|
+
export declare const transparent: string;
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import { css, injectGlobal } from '@emotion/css'
|
|
1
|
+
import { css, injectGlobal } from '@emotion/css';
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
const root = css `
|
|
4
4
|
label: chord-diagram-component;
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
export const variables = injectGlobal`
|
|
5
|
+
`;
|
|
6
|
+
const variables = injectGlobal `
|
|
8
7
|
:root {
|
|
9
8
|
--vis-chord-diagram-link-fill-color: #cad5f6;
|
|
10
9
|
--vis-chord-diagram-link-stroke-color: #777777;
|
|
@@ -20,21 +19,17 @@ export const variables = injectGlobal`
|
|
|
20
19
|
body.theme-dark ${`.${root}`} {
|
|
21
20
|
--vis-chord-diagram-link-fill-color: var(--vis-dark-chord-diagram-link-fill-color);
|
|
22
21
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
export const nodes = css`
|
|
22
|
+
`;
|
|
23
|
+
const nodes = css `
|
|
26
24
|
label: nodes;
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
export const links = css`
|
|
25
|
+
`;
|
|
26
|
+
const links = css `
|
|
30
27
|
label: links;
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
export const labels = css`
|
|
28
|
+
`;
|
|
29
|
+
const labels = css `
|
|
34
30
|
label: labels;
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
export const node = css`
|
|
31
|
+
`;
|
|
32
|
+
const node = css `
|
|
38
33
|
label: node;
|
|
39
34
|
stroke-width: 0;
|
|
40
35
|
fill: var(--vis-color-main);
|
|
@@ -43,19 +38,16 @@ export const node = css`
|
|
|
43
38
|
&:hover {
|
|
44
39
|
stroke-width: 2;
|
|
45
40
|
}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
export const hoveredNode = css`
|
|
41
|
+
`;
|
|
42
|
+
const hoveredNode = css `
|
|
49
43
|
label: hovered;
|
|
50
44
|
fill-opacity: 1;
|
|
51
45
|
stroke-width: 1.5;
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
export const gLabel = css`
|
|
46
|
+
`;
|
|
47
|
+
const gLabel = css `
|
|
55
48
|
label: group-label;
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
export const label = css`
|
|
49
|
+
`;
|
|
50
|
+
const label = css `
|
|
59
51
|
label: label;
|
|
60
52
|
|
|
61
53
|
dominant-baseline: middle;
|
|
@@ -65,13 +57,11 @@ export const label = css`
|
|
|
65
57
|
> textPath {
|
|
66
58
|
dominant-baseline: central;
|
|
67
59
|
}
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
export const labelExit = css`
|
|
60
|
+
`;
|
|
61
|
+
const labelExit = css `
|
|
71
62
|
label: label-exit;
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
export const link = css`
|
|
63
|
+
`;
|
|
64
|
+
const link = css `
|
|
75
65
|
label: link;
|
|
76
66
|
|
|
77
67
|
fill: var(--vis-chord-diagram-link-fill-color);
|
|
@@ -82,17 +72,18 @@ export const link = css`
|
|
|
82
72
|
&:hover {
|
|
83
73
|
fill-opacity: 1;
|
|
84
74
|
}
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
export const hoveredLink = css`
|
|
75
|
+
`;
|
|
76
|
+
const hoveredLink = css `
|
|
88
77
|
label: hovered;
|
|
89
78
|
fill-opacity: 0.9;
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
export const transparent = css`
|
|
79
|
+
`;
|
|
80
|
+
const transparent = css `
|
|
93
81
|
fill-opacity: 0.25;
|
|
94
82
|
|
|
95
83
|
text {
|
|
96
84
|
fill-opacity: 1;
|
|
97
85
|
}
|
|
98
|
-
|
|
86
|
+
`;
|
|
87
|
+
|
|
88
|
+
export { gLabel, hoveredLink, hoveredNode, label, labelExit, labels, link, links, node, nodes, root, transparent, variables };
|
|
89
|
+
//# sourceMappingURL=style.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"style.js","sources":["../../../src/components/chord-diagram/style.ts"],"sourcesContent":["import { css, injectGlobal } from '@emotion/css'\n\nexport const root = css`\n label: chord-diagram-component;\n`\n\nexport const variables = injectGlobal`\n :root {\n --vis-chord-diagram-link-fill-color: #cad5f6;\n --vis-chord-diagram-link-stroke-color: #777777;\n --vis-chord-diagram-link-opacity: 0.5;\n --vis-chord-diagram-link-stroke-opacity: 0.15;\n\n --vis-chord-diagram-label-text-fill-color-bright: #ffffff;\n --vis-chord-diagram-label-text-fill-color-dark: #a5abb2;\n\n --vis-dark-chord-diagram-link-fill-color: #575c65;\n }\n\n body.theme-dark ${`.${root}`} {\n --vis-chord-diagram-link-fill-color: var(--vis-dark-chord-diagram-link-fill-color);\n }\n`\n\nexport const nodes = css`\n label: nodes;\n`\n\nexport const links = css`\n label: links;\n`\n\nexport const labels = css`\n label: labels;\n`\n\nexport const node = css`\n label: node;\n stroke-width: 0;\n fill: var(--vis-color-main);\n stroke: var(--vis-color-main);\n\n &:hover {\n stroke-width: 2;\n }\n`\n\nexport const hoveredNode = css`\n label: hovered;\n fill-opacity: 1;\n stroke-width: 1.5;\n`\n\nexport const gLabel = css`\n label: group-label;\n`\n\nexport const label = css`\n label: label;\n\n dominant-baseline: middle;\n user-select: none;\n pointer-events: none;\n\n > textPath {\n dominant-baseline: central;\n }\n`\n\nexport const labelExit = css`\n label: label-exit;\n`\n\nexport const link = css`\n label: link;\n\n fill: var(--vis-chord-diagram-link-fill-color);\n stroke: var(--vis-chord-diagram-link-stroke-color);\n stroke-opacity: var(--vis-chord-diagram-link-stroke-opacity);\n transition: .1s fill-opacity;\n\n &:hover {\n fill-opacity: 1;\n }\n`\n\nexport const hoveredLink = css`\n label: hovered;\n fill-opacity: 0.9;\n`\n\nexport const transparent = css`\n fill-opacity: 0.25;\n\n text {\n fill-opacity: 1;\n }\n`\n"],"names":[],"mappings":";;AAEO,MAAM,IAAI,GAAG,GAAG,CAAA,CAAA;;EAEtB;AAEM,MAAM,SAAS,GAAG,YAAY,CAAA,CAAA;;;;;;;;;;;;;AAajB,kBAAA,EAAA,CAAA,CAAA,EAAI,IAAI,CAAE,CAAA,CAAA;;;EAG7B;AAEM,MAAM,KAAK,GAAG,GAAG,CAAA,CAAA;;EAEvB;AAEM,MAAM,KAAK,GAAG,GAAG,CAAA,CAAA;;EAEvB;AAEM,MAAM,MAAM,GAAG,GAAG,CAAA,CAAA;;EAExB;AAEM,MAAM,IAAI,GAAG,GAAG,CAAA,CAAA;;;;;;;;;EAStB;AAEM,MAAM,WAAW,GAAG,GAAG,CAAA,CAAA;;;;EAI7B;AAEM,MAAM,MAAM,GAAG,GAAG,CAAA,CAAA;;EAExB;AAEM,MAAM,KAAK,GAAG,GAAG,CAAA,CAAA;;;;;;;;;;EAUvB;AAEM,MAAM,SAAS,GAAG,GAAG,CAAA,CAAA;;EAE3B;AAEM,MAAM,IAAI,GAAG,GAAG,CAAA,CAAA;;;;;;;;;;;EAWtB;AAEM,MAAM,WAAW,GAAG,GAAG,CAAA,CAAA;;;EAG7B;AAEM,MAAM,WAAW,GAAG,GAAG,CAAA,CAAA;;;;;;;;;;"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { HierarchyRectangularNode } from 'd3-hierarchy';
|
|
2
|
+
import { GraphLinkCore, GraphNodeCore } from "../../types";
|
|
3
|
+
export interface ChordInputNode {
|
|
4
|
+
id?: string;
|
|
5
|
+
}
|
|
6
|
+
export interface ChordInputLink {
|
|
7
|
+
id?: string;
|
|
8
|
+
source: number | string | ChordInputNode;
|
|
9
|
+
target: number | string | ChordInputNode;
|
|
10
|
+
}
|
|
11
|
+
export declare type ChordDiagramData<N extends ChordInputNode, L extends ChordInputLink> = {
|
|
12
|
+
nodes: N[];
|
|
13
|
+
links?: L[];
|
|
14
|
+
};
|
|
15
|
+
export interface ChordHierarchyNode<N> {
|
|
16
|
+
key: string;
|
|
17
|
+
values: (ChordHierarchyNode<N> | N)[];
|
|
18
|
+
depth?: number;
|
|
19
|
+
height?: number;
|
|
20
|
+
value?: number;
|
|
21
|
+
ancestors?: string[];
|
|
22
|
+
}
|
|
23
|
+
export declare type ChordNodeState = {
|
|
24
|
+
_state: {
|
|
25
|
+
hovered?: boolean;
|
|
26
|
+
value?: number;
|
|
27
|
+
};
|
|
28
|
+
_prevX1?: number;
|
|
29
|
+
};
|
|
30
|
+
export declare type ChordNodeCore<N> = HierarchyRectangularNode<N> & ChordNodeState & {
|
|
31
|
+
data: N;
|
|
32
|
+
uid: string;
|
|
33
|
+
};
|
|
34
|
+
export declare type ChordNodeDatum<N> = ChordHierarchyNode<N> | N;
|
|
35
|
+
export declare type ChordNode<N extends ChordInputNode> = ChordNodeCore<ChordNodeDatum<N>>;
|
|
36
|
+
export declare type ChordLeafNode<N extends ChordInputNode> = ChordNodeCore<GraphNodeCore<N, ChordInputLink>>;
|
|
37
|
+
export declare type ChordRibbonPoint = {
|
|
38
|
+
x0: number;
|
|
39
|
+
x1: number;
|
|
40
|
+
y0: number;
|
|
41
|
+
y1: number;
|
|
42
|
+
a0: number;
|
|
43
|
+
a1: number;
|
|
44
|
+
r: number;
|
|
45
|
+
};
|
|
46
|
+
export interface ChordRibbon<N extends ChordInputNode> {
|
|
47
|
+
source: ChordLeafNode<N>;
|
|
48
|
+
target: ChordLeafNode<N>;
|
|
49
|
+
points: ChordRibbonPoint[];
|
|
50
|
+
data: GraphLinkCore<N, ChordInputLink>;
|
|
51
|
+
_state: {
|
|
52
|
+
hovered?: boolean;
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
export declare enum ChordLabelAlignment {
|
|
56
|
+
Along = "along",
|
|
57
|
+
Perpendicular = "perpendicular"
|
|
58
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
var ChordLabelAlignment;
|
|
2
|
+
(function (ChordLabelAlignment) {
|
|
3
|
+
ChordLabelAlignment["Along"] = "along";
|
|
4
|
+
ChordLabelAlignment["Perpendicular"] = "perpendicular";
|
|
5
|
+
})(ChordLabelAlignment || (ChordLabelAlignment = {}));
|
|
6
|
+
|
|
7
|
+
export { ChordLabelAlignment };
|
|
8
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sources":["../../../src/components/chord-diagram/types.ts"],"sourcesContent":["import { HierarchyRectangularNode } from 'd3-hierarchy'\nimport { GraphLinkCore, GraphNodeCore } from 'types'\n\n// Node data flow in the component:\n// Input data (N extends ChordInputNode, L extends ChordInputLink)\n// => GraphNodeCore<N>[] (we reference it only in a few places when it's needed, to make the code easier to read)\n// => ChordHierarchyNode (nested object representing node hierarchy)\n// => ChordNode[] and ChordLeafNode[] (HierarchyRectangularNode[] from D3 partition)\n\nexport interface ChordInputNode {\n id?: string;\n}\n\nexport interface ChordInputLink {\n id?: string;\n source: number | string | ChordInputNode;\n target: number | string | ChordInputNode;\n}\n\nexport type ChordDiagramData<\n N extends ChordInputNode,\n L extends ChordInputLink,\n> = {\n nodes: N[];\n links?: L[];\n}\n\nexport interface ChordHierarchyNode<N> {\n key: string;\n values: (ChordHierarchyNode<N> | N)[];\n depth?: number;\n height?: number;\n value?: number;\n ancestors?: string[];\n}\n\nexport type ChordNodeState = {\n _state: {\n hovered?: boolean;\n value?: number;\n };\n _prevX1?: number;\n}\n\nexport type ChordNodeCore<N> = HierarchyRectangularNode<N> & ChordNodeState & {\n data: N;\n uid: string; // Unique id for textPath href\n}\n\nexport type ChordNodeDatum<N> = ChordHierarchyNode<N> | N;\nexport type ChordNode<N extends ChordInputNode> = ChordNodeCore<ChordNodeDatum<N>>\nexport type ChordLeafNode<N extends ChordInputNode> = ChordNodeCore<GraphNodeCore<N, ChordInputLink>>\n\nexport type ChordRibbonPoint = { x0: number; x1: number; y0: number; y1: number; a0: number; a1: number; r: number }\nexport interface ChordRibbon<N extends ChordInputNode> {\n source: ChordLeafNode<N>;\n target: ChordLeafNode<N>;\n points: ChordRibbonPoint[];\n data: GraphLinkCore<N, ChordInputLink>;\n _state: {\n hovered?: boolean;\n };\n}\n\nexport enum ChordLabelAlignment {\n Along = 'along',\n Perpendicular = 'perpendicular',\n}\n"],"names":[],"mappings":"IAgEY,oBAGX;AAHD,CAAA,UAAY,mBAAmB,EAAA;AAC7B,IAAA,mBAAA,CAAA,OAAA,CAAA,GAAA,OAAe,CAAA;AACf,IAAA,mBAAA,CAAA,eAAA,CAAA,GAAA,eAA+B,CAAA;AACjC,CAAC,EAHW,mBAAmB,KAAnB,mBAAmB,GAG9B,EAAA,CAAA,CAAA;;;;"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { XYComponentConfigInterface, XYComponentConfig } from "../../core/xy-component/config";
|
|
2
|
+
import { Tooltip } from "../tooltip";
|
|
3
|
+
import { NumericAccessor } from "../../types/accessor";
|
|
4
|
+
import { ContinuousScale } from "../../types/scale";
|
|
5
|
+
import { CrosshairCircle } from './types';
|
|
6
|
+
export interface CrosshairConfigInterface<Datum> extends Partial<XYComponentConfigInterface<Datum>> {
|
|
7
|
+
/** Separate array of accessors for stacked components (eg StackedBar, Area). Default: `undefined` */
|
|
8
|
+
yStacked?: NumericAccessor<Datum>[];
|
|
9
|
+
/** Baseline accessor function for stacked values, useful with stacked areas. Default: `null` */
|
|
10
|
+
baseline?: NumericAccessor<Datum>;
|
|
11
|
+
/** An instance of the Tooltip component to be used with Crosshair. Default: `undefined` */
|
|
12
|
+
tooltip?: Tooltip | undefined;
|
|
13
|
+
/** Tooltip template accessor. The function is supposed to return either a valid HTML string or an HTMLElement. Default: `d => ''` */
|
|
14
|
+
template?: (data: Datum, x: number | Date) => string | HTMLElement;
|
|
15
|
+
/** Hide Crosshair when the corresponding element is far from mouse pointer. Default: `true` */
|
|
16
|
+
hideWhenFarFromPointer?: boolean;
|
|
17
|
+
/** Distance in pixels to check in the hideWhenFarFromPointer condition. Default: `100` */
|
|
18
|
+
hideWhenFarFromPointerDistance?: number;
|
|
19
|
+
/** Snap to the nearest data point.
|
|
20
|
+
* If disabled, the tooltip template will receive only the horizontal position of the crosshair and you'll be responsible
|
|
21
|
+
* for getting the underlying data records and crosshair circles (see the `getCircles` configuration option).
|
|
22
|
+
* Default: `true`
|
|
23
|
+
*/
|
|
24
|
+
snapToData?: boolean;
|
|
25
|
+
/** Custom function for setting up the crosshair circles, usually needed when `snapToData` is set to `false`.
|
|
26
|
+
* The function receives the horizontal position of the crosshair (in the data space, not in pixels), the data array
|
|
27
|
+
* and the `yScale` instance to help you calculate the correct vertical position of the circles.
|
|
28
|
+
* It has to return an array of the CrosshairCircle objects: `{ y: number; color: string; opacity?: number }[]`.
|
|
29
|
+
* Default: `undefined`
|
|
30
|
+
*/
|
|
31
|
+
getCircles?: (x: number, data: Datum[], yScale: ContinuousScale) => CrosshairCircle[];
|
|
32
|
+
}
|
|
33
|
+
export declare class CrosshairConfig<Datum> extends XYComponentConfig<Datum> implements CrosshairConfigInterface<Datum> {
|
|
34
|
+
yStacked: any;
|
|
35
|
+
baseline: any;
|
|
36
|
+
duration: number;
|
|
37
|
+
tooltip: Tooltip;
|
|
38
|
+
template: ((data: Datum, x: number | Date) => string | HTMLElement);
|
|
39
|
+
hideWhenFarFromPointer: boolean;
|
|
40
|
+
hideWhenFarFromPointerDistance: number;
|
|
41
|
+
snapToData: boolean;
|
|
42
|
+
getCircles: any;
|
|
43
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { XYComponentConfig } from '../../core/xy-component/config.js';
|
|
2
|
+
|
|
3
|
+
class CrosshairConfig extends XYComponentConfig {
|
|
4
|
+
constructor() {
|
|
5
|
+
super(...arguments);
|
|
6
|
+
this.yStacked = undefined;
|
|
7
|
+
this.baseline = null;
|
|
8
|
+
this.duration = 100;
|
|
9
|
+
this.tooltip = undefined;
|
|
10
|
+
this.template = (d) => '';
|
|
11
|
+
this.hideWhenFarFromPointer = true;
|
|
12
|
+
this.hideWhenFarFromPointerDistance = 100;
|
|
13
|
+
this.snapToData = true;
|
|
14
|
+
this.getCircles = undefined;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export { CrosshairConfig };
|
|
19
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sources":["../../../src/components/crosshair/config.ts"],"sourcesContent":["import { XYComponentConfigInterface, XYComponentConfig } from 'core/xy-component/config'\nimport { Tooltip } from 'components/tooltip'\n\n// Types\nimport { NumericAccessor } from 'types/accessor'\nimport { ContinuousScale } from 'types/scale'\nimport { CrosshairCircle } from './types'\n\n// We extend partial XY config interface because x and y properties are optional for Crosshair\nexport interface CrosshairConfigInterface<Datum> extends Partial<XYComponentConfigInterface<Datum>> {\n /** Separate array of accessors for stacked components (eg StackedBar, Area). Default: `undefined` */\n yStacked?: NumericAccessor<Datum>[];\n /** Baseline accessor function for stacked values, useful with stacked areas. Default: `null` */\n baseline?: NumericAccessor<Datum>;\n /** An instance of the Tooltip component to be used with Crosshair. Default: `undefined` */\n tooltip?: Tooltip | undefined;\n /** Tooltip template accessor. The function is supposed to return either a valid HTML string or an HTMLElement. Default: `d => ''` */\n template?: (data: Datum, x: number | Date) => string | HTMLElement;\n /** Hide Crosshair when the corresponding element is far from mouse pointer. Default: `true` */\n hideWhenFarFromPointer?: boolean;\n /** Distance in pixels to check in the hideWhenFarFromPointer condition. Default: `100` */\n hideWhenFarFromPointerDistance?: number;\n /** Snap to the nearest data point.\n * If disabled, the tooltip template will receive only the horizontal position of the crosshair and you'll be responsible\n * for getting the underlying data records and crosshair circles (see the `getCircles` configuration option).\n * Default: `true`\n */\n snapToData?: boolean;\n /** Custom function for setting up the crosshair circles, usually needed when `snapToData` is set to `false`.\n * The function receives the horizontal position of the crosshair (in the data space, not in pixels), the data array\n * and the `yScale` instance to help you calculate the correct vertical position of the circles.\n * It has to return an array of the CrosshairCircle objects: `{ y: number; color: string; opacity?: number }[]`.\n * Default: `undefined`\n */\n getCircles?: (x: number, data: Datum[], yScale: ContinuousScale) => CrosshairCircle[];\n}\n\nexport class CrosshairConfig<Datum> extends XYComponentConfig<Datum> implements CrosshairConfigInterface<Datum> {\n yStacked = undefined\n baseline = null\n duration = 100\n tooltip: Tooltip = undefined\n template: ((data: Datum, x: number | Date) => string | HTMLElement) = (d: Datum): string => ''\n hideWhenFarFromPointer = true\n hideWhenFarFromPointerDistance = 100\n snapToData = true\n getCircles = undefined\n}\n"],"names":[],"mappings":";;AAqCM,MAAO,eAAuB,SAAQ,iBAAwB,CAAA;AAApE,IAAA,WAAA,GAAA;;QACE,IAAQ,CAAA,QAAA,GAAG,SAAS,CAAA;QACpB,IAAQ,CAAA,QAAA,GAAG,IAAI,CAAA;QACf,IAAQ,CAAA,QAAA,GAAG,GAAG,CAAA;QACd,IAAO,CAAA,OAAA,GAAY,SAAS,CAAA;AAC5B,QAAA,IAAA,CAAA,QAAQ,GAA8D,CAAC,CAAQ,KAAa,EAAE,CAAA;QAC9F,IAAsB,CAAA,sBAAA,GAAG,IAAI,CAAA;QAC7B,IAA8B,CAAA,8BAAA,GAAG,GAAG,CAAA;QACpC,IAAU,CAAA,UAAA,GAAG,IAAI,CAAA;QACjB,IAAU,CAAA,UAAA,GAAG,SAAS,CAAA;KACvB;AAAA;;;;"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Selection } from 'd3-selection';
|
|
2
|
+
import { XYComponentCore } from "../../core/xy-component";
|
|
3
|
+
import { Tooltip } from "../tooltip";
|
|
4
|
+
import { CrosshairAccessors } from './types';
|
|
5
|
+
import { CrosshairConfig, CrosshairConfigInterface } from './config';
|
|
6
|
+
import * as s from './style';
|
|
7
|
+
export declare class Crosshair<Datum> extends XYComponentCore<Datum, CrosshairConfig<Datum>, CrosshairConfigInterface<Datum>> {
|
|
8
|
+
static selectors: typeof s;
|
|
9
|
+
clippable: boolean;
|
|
10
|
+
config: CrosshairConfig<Datum>;
|
|
11
|
+
container: Selection<SVGSVGElement, any, SVGSVGElement, any>;
|
|
12
|
+
line: Selection<SVGLineElement, any, SVGElement, any>;
|
|
13
|
+
x: number;
|
|
14
|
+
datum: Datum;
|
|
15
|
+
datumIndex: number;
|
|
16
|
+
show: boolean;
|
|
17
|
+
private _animFrameId;
|
|
18
|
+
/** Tooltip component to be used by Crosshair if not provided by the config.
|
|
19
|
+
* This property is supposed to be set externally by a container component like XYContainer. */
|
|
20
|
+
tooltip: Tooltip;
|
|
21
|
+
/** Accessors passed externally (e.g. from XYContainer) */
|
|
22
|
+
private _accessors;
|
|
23
|
+
set accessors(accessors: CrosshairAccessors<Datum>);
|
|
24
|
+
get accessors(): CrosshairAccessors<Datum>;
|
|
25
|
+
constructor(config?: CrosshairConfigInterface<Datum>);
|
|
26
|
+
setContainer(containerSvg: Selection<SVGSVGElement, unknown, SVGSVGElement, unknown>): void;
|
|
27
|
+
_render(customDuration?: number): void;
|
|
28
|
+
hide(): void;
|
|
29
|
+
_onMouseMove(event: MouseEvent): void;
|
|
30
|
+
_onMouseOut(): void;
|
|
31
|
+
_showTooltip(event: MouseEvent): void;
|
|
32
|
+
_hideTooltip(): void;
|
|
33
|
+
getYDataExtent(): number[];
|
|
34
|
+
private getCircleData;
|
|
35
|
+
}
|