layerchart 2.0.0-next.1 → 2.0.0-next.11
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/dist/actions/movable.d.ts +28 -0
- package/dist/actions/movable.js +91 -0
- package/dist/components/AnnotationLine.svelte +143 -0
- package/dist/components/AnnotationLine.svelte.d.ts +30 -0
- package/dist/components/AnnotationPoint.svelte +119 -0
- package/dist/components/AnnotationPoint.svelte.d.ts +34 -0
- package/dist/components/AnnotationRange.svelte +147 -0
- package/dist/components/AnnotationRange.svelte.d.ts +40 -0
- package/dist/components/Arc.svelte +344 -151
- package/dist/components/Arc.svelte.d.ts +138 -0
- package/dist/components/Area.svelte +165 -149
- package/dist/components/Area.svelte.d.ts +45 -0
- package/dist/components/Axis.svelte +320 -179
- package/dist/components/Axis.svelte.d.ts +127 -0
- package/dist/components/Bar.svelte +166 -107
- package/dist/components/Bar.svelte.d.ts +51 -0
- package/dist/components/Bars.svelte +56 -67
- package/dist/components/Bars.svelte.d.ts +27 -0
- package/dist/components/Blur.svelte +42 -12
- package/dist/components/Blur.svelte.d.ts +23 -21
- package/dist/components/Bounds.svelte +49 -19
- package/dist/components/Bounds.svelte.d.ts +24 -50
- package/dist/components/BrushContext.svelte +296 -168
- package/dist/components/BrushContext.svelte.d.ts +97 -65
- package/dist/components/Calendar.svelte +116 -59
- package/dist/components/Calendar.svelte.d.ts +50 -31
- package/dist/components/Chart.svelte +1289 -398
- package/dist/components/Chart.svelte.d.ts +535 -410
- package/dist/components/ChartClipPath.svelte +37 -15
- package/dist/components/ChartClipPath.svelte.d.ts +21 -19
- package/dist/components/Circle.svelte +124 -85
- package/dist/components/Circle.svelte.d.ts +52 -0
- package/dist/components/CircleClipPath.svelte +76 -16
- package/dist/components/CircleClipPath.svelte.d.ts +46 -0
- package/dist/components/ClipPath.svelte +71 -21
- package/dist/components/ClipPath.svelte.d.ts +40 -27
- package/dist/components/ColorRamp.svelte +75 -9
- package/dist/components/ColorRamp.svelte.d.ts +37 -19
- package/dist/components/ComputedStyles.svelte +17 -5
- package/dist/components/ComputedStyles.svelte.d.ts +11 -19
- package/dist/components/Connector.svelte +149 -0
- package/dist/components/Connector.svelte.d.ts +51 -0
- package/dist/components/Dagre.svelte +211 -122
- package/dist/components/Dagre.svelte.d.ts +119 -56
- package/dist/components/ForceSimulation.svelte +215 -90
- package/dist/components/ForceSimulation.svelte.d.ts +82 -35
- package/dist/components/Frame.svelte +33 -13
- package/dist/components/Frame.svelte.d.ts +13 -17
- package/dist/components/GeoCircle.svelte +29 -16
- package/dist/components/GeoCircle.svelte.d.ts +22 -24
- package/dist/components/GeoContext.svelte +113 -72
- package/dist/components/GeoContext.svelte.d.ts +49 -41
- package/dist/components/GeoEdgeFade.svelte +49 -13
- package/dist/components/GeoEdgeFade.svelte.d.ts +17 -19
- package/dist/components/GeoPath.svelte +157 -127
- package/dist/components/GeoPath.svelte.d.ts +48 -36
- package/dist/components/GeoPoint.svelte +52 -20
- package/dist/components/GeoPoint.svelte.d.ts +25 -22
- package/dist/components/GeoSpline.svelte +75 -26
- package/dist/components/GeoSpline.svelte.d.ts +29 -20
- package/dist/components/GeoTile.svelte +100 -49
- package/dist/components/GeoTile.svelte.d.ts +38 -23
- package/dist/components/GeoVisible.svelte +17 -9
- package/dist/components/GeoVisible.svelte.d.ts +10 -18
- package/dist/components/Graticule.svelte +30 -14
- package/dist/components/Graticule.svelte.d.ts +11 -52
- package/dist/components/Grid.svelte +230 -117
- package/dist/components/Grid.svelte.d.ts +71 -0
- package/dist/components/Group.svelte +173 -106
- package/dist/components/Group.svelte.d.ts +81 -0
- package/dist/components/Highlight.svelte +410 -308
- package/dist/components/Highlight.svelte.d.ts +107 -0
- package/dist/components/Hull.svelte +97 -46
- package/dist/components/Hull.svelte.d.ts +40 -30
- package/dist/components/Labels.svelte +127 -47
- package/dist/components/Labels.svelte.d.ts +70 -27
- package/dist/components/Legend.svelte +374 -190
- package/dist/components/Legend.svelte.d.ts +95 -44
- package/dist/components/Line.svelte +163 -125
- package/dist/components/Line.svelte.d.ts +75 -0
- package/dist/components/LinearGradient.svelte +153 -78
- package/dist/components/LinearGradient.svelte.d.ts +66 -31
- package/dist/components/Link.svelte +160 -104
- package/dist/components/Link.svelte.d.ts +54 -0
- package/dist/components/Marker.svelte +100 -39
- package/dist/components/Marker.svelte.d.ts +59 -27
- package/dist/components/MarkerWrapper.svelte +35 -0
- package/dist/components/MarkerWrapper.svelte.d.ts +18 -0
- package/dist/components/MonthPath.svelte +65 -20
- package/dist/components/MonthPath.svelte.d.ts +23 -17
- package/dist/components/MotionPath.svelte +80 -24
- package/dist/components/MotionPath.svelte.d.ts +46 -27
- package/dist/components/Pack.svelte +53 -17
- package/dist/components/Pack.svelte.d.ts +42 -21
- package/dist/components/Partition.svelte +64 -22
- package/dist/components/Partition.svelte.d.ts +49 -26
- package/dist/components/Pattern.svelte +297 -11
- package/dist/components/Pattern.svelte.d.ts +103 -19
- package/dist/components/Pie.svelte +122 -76
- package/dist/components/Pie.svelte.d.ts +65 -51
- package/dist/components/Point.svelte +20 -9
- package/dist/components/Point.svelte.d.ts +16 -20
- package/dist/components/Points.svelte +148 -137
- package/dist/components/Points.svelte.d.ts +45 -34
- package/dist/components/RadialGradient.svelte +148 -77
- package/dist/components/RadialGradient.svelte.d.ts +69 -31
- package/dist/components/Rect.svelte +121 -102
- package/dist/components/Rect.svelte.d.ts +36 -0
- package/dist/components/RectClipPath.svelte +82 -18
- package/dist/components/RectClipPath.svelte.d.ts +55 -0
- package/dist/components/Rule.svelte +107 -63
- package/dist/components/Rule.svelte.d.ts +40 -19
- package/dist/components/Sankey.svelte +132 -55
- package/dist/components/Sankey.svelte.d.ts +61 -31
- package/dist/components/Spline.svelte +281 -218
- package/dist/components/Spline.svelte.d.ts +95 -0
- package/dist/components/Text.svelte +463 -197
- package/dist/components/Text.svelte.d.ts +136 -0
- package/dist/components/Threshold.svelte +48 -16
- package/dist/components/Threshold.svelte.d.ts +29 -31
- package/dist/components/TileImage.svelte +103 -30
- package/dist/components/TileImage.svelte.d.ts +48 -23
- package/dist/components/TransformContext.svelte +365 -171
- package/dist/components/TransformControls.svelte +50 -26
- package/dist/components/TransformControls.svelte.d.ts +27 -19
- package/dist/components/Tree.svelte +74 -33
- package/dist/components/Tree.svelte.d.ts +42 -30
- package/dist/components/Treemap.svelte +119 -42
- package/dist/components/Treemap.svelte.d.ts +75 -27
- package/dist/components/Voronoi.svelte +153 -103
- package/dist/components/Voronoi.svelte.d.ts +42 -41
- package/dist/components/charts/ArcChart.svelte +464 -0
- package/dist/components/charts/ArcChart.svelte.d.ts +90 -0
- package/dist/components/charts/AreaChart.svelte +444 -393
- package/dist/components/charts/AreaChart.svelte.d.ts +61 -0
- package/dist/components/charts/BarChart.svelte +463 -389
- package/dist/components/charts/BarChart.svelte.d.ts +76 -0
- package/dist/components/charts/ChartAnnotations.svelte +37 -0
- package/dist/components/charts/ChartAnnotations.svelte.d.ts +10 -0
- package/dist/components/charts/DefaultTooltip.svelte +60 -0
- package/dist/components/charts/DefaultTooltip.svelte.d.ts +10 -0
- package/dist/components/charts/LineChart.svelte +366 -315
- package/dist/components/charts/LineChart.svelte.d.ts +53 -0
- package/dist/components/charts/PieChart.svelte +458 -316
- package/dist/components/charts/PieChart.svelte.d.ts +137 -353
- package/dist/components/charts/ScatterChart.svelte +332 -296
- package/dist/components/charts/ScatterChart.svelte.d.ts +39 -0
- package/dist/components/charts/index.d.ts +8 -0
- package/dist/components/charts/index.js +7 -0
- package/dist/components/charts/types.d.ts +253 -0
- package/dist/components/charts/utils.svelte.d.ts +30 -0
- package/dist/components/charts/utils.svelte.js +59 -0
- package/dist/components/index.d.ts +76 -4
- package/dist/components/index.js +76 -5
- package/dist/components/layout/Canvas.svelte +347 -171
- package/dist/components/layout/Canvas.svelte.d.ts +110 -55
- package/dist/components/layout/Html.svelte +82 -42
- package/dist/components/layout/Html.svelte.d.ts +39 -28
- package/dist/components/layout/Layer.svelte +39 -0
- package/dist/components/layout/Layer.svelte.d.ts +17 -0
- package/dist/components/layout/Svg.svelte +122 -70
- package/dist/components/layout/Svg.svelte.d.ts +53 -34
- package/dist/components/layout/WebGL.svelte +135 -0
- package/dist/components/layout/WebGL.svelte.d.ts +50 -0
- package/dist/components/tooltip/Tooltip.svelte +253 -78
- package/dist/components/tooltip/Tooltip.svelte.d.ts +149 -31
- package/dist/components/tooltip/TooltipContext.svelte +426 -271
- package/dist/components/tooltip/TooltipContext.svelte.d.ts +86 -55
- package/dist/components/tooltip/TooltipHeader.svelte +100 -11
- package/dist/components/tooltip/TooltipHeader.svelte.d.ts +43 -23
- package/dist/components/tooltip/TooltipItem.svelte +167 -27
- package/dist/components/tooltip/TooltipItem.svelte.d.ts +63 -31
- package/dist/components/tooltip/TooltipList.svelte +22 -3
- package/dist/components/tooltip/TooltipList.svelte.d.ts +6 -17
- package/dist/components/tooltip/TooltipSeparator.svelte +27 -1
- package/dist/components/tooltip/TooltipSeparator.svelte.d.ts +6 -15
- package/dist/components/tooltip/index.d.ts +6 -0
- package/dist/components/tooltip/index.js +6 -0
- package/dist/components/tooltip/tooltipMetaContext.d.ts +79 -0
- package/dist/components/tooltip/tooltipMetaContext.js +139 -0
- package/dist/components/types.d.ts +1 -0
- package/dist/components/types.js +1 -0
- package/dist/docs/Blockquote.svelte +3 -1
- package/dist/docs/Blockquote.svelte.d.ts +5 -16
- package/dist/docs/Code.svelte +20 -12
- package/dist/docs/Code.svelte.d.ts +12 -22
- package/dist/docs/ConnectorSweepMenuField.svelte +17 -0
- package/dist/docs/ConnectorSweepMenuField.svelte.d.ts +7 -0
- package/dist/docs/ConnectorTypeMenuField.svelte +17 -0
- package/dist/docs/ConnectorTypeMenuField.svelte.d.ts +7 -0
- package/dist/docs/CurveMenuField.svelte +14 -3
- package/dist/docs/CurveMenuField.svelte.d.ts +9 -18
- package/dist/docs/GeoDebug.svelte +47 -42
- package/dist/docs/GeoDebug.svelte.d.ts +4 -16
- package/dist/docs/Header1.svelte +4 -2
- package/dist/docs/Header1.svelte.d.ts +5 -18
- package/dist/docs/Json.svelte +11 -3
- package/dist/docs/Json.svelte.d.ts +9 -17
- package/dist/docs/Layout.svelte +10 -7
- package/dist/docs/Layout.svelte.d.ts +5 -15
- package/dist/docs/Link.svelte +7 -3
- package/dist/docs/Link.svelte.d.ts +5 -27
- package/dist/docs/PathDataMenuField.svelte +14 -10
- package/dist/docs/PathDataMenuField.svelte.d.ts +8 -18
- package/dist/docs/Preview.svelte +20 -7
- package/dist/docs/Preview.svelte.d.ts +12 -22
- package/dist/docs/TilesetField.svelte +20 -19
- package/dist/docs/TilesetField.svelte.d.ts +6 -19
- package/dist/docs/TransformDebug.svelte +5 -6
- package/dist/docs/TransformDebug.svelte.d.ts +18 -14
- package/dist/docs/ViewSourceButton.svelte +7 -4
- package/dist/docs/ViewSourceButton.svelte.d.ts +8 -18
- package/dist/types/d3-shape-extentions.d.ts +7 -0
- package/dist/utils/afterTick.d.ts +5 -0
- package/dist/utils/afterTick.js +8 -0
- package/dist/utils/arcText.svelte.d.ts +57 -0
- package/dist/utils/arcText.svelte.js +262 -0
- package/dist/utils/array.d.ts +9 -1
- package/dist/utils/array.js +13 -0
- package/dist/utils/attributes.d.ts +29 -0
- package/dist/utils/attributes.js +40 -0
- package/dist/utils/canvas.js +47 -10
- package/dist/utils/chart.d.ts +78 -0
- package/dist/utils/chart.js +512 -0
- package/dist/utils/color.d.ts +1 -0
- package/dist/utils/color.js +8 -0
- package/dist/utils/common.d.ts +3 -5
- package/dist/utils/common.js +3 -2
- package/dist/utils/connectorUtils.d.ts +21 -0
- package/dist/utils/connectorUtils.js +111 -0
- package/dist/utils/createId.d.ts +7 -0
- package/dist/utils/createId.js +9 -0
- package/dist/utils/debug.d.ts +1 -0
- package/dist/utils/debug.js +84 -0
- package/dist/utils/filterObject.d.ts +9 -0
- package/dist/utils/filterObject.js +12 -0
- package/dist/utils/graph/dagre.d.ts +34 -0
- package/dist/utils/graph/dagre.js +78 -0
- package/dist/utils/graph/dagre.test.d.ts +1 -0
- package/dist/utils/{graph.test.js → graph/dagre.test.js} +19 -33
- package/dist/utils/graph/sankey.d.ts +28 -0
- package/dist/utils/{graph.js → graph/sankey.js} +13 -41
- package/dist/utils/index.d.ts +3 -1
- package/dist/utils/index.js +3 -1
- package/dist/utils/key.svelte.d.ts +3 -0
- package/dist/utils/key.svelte.js +11 -0
- package/dist/utils/legendPayload.d.ts +7 -0
- package/dist/utils/legendPayload.js +8 -0
- package/dist/utils/motion.svelte.d.ts +140 -0
- package/dist/utils/motion.svelte.js +180 -0
- package/dist/utils/motion.test.d.ts +1 -0
- package/dist/utils/motion.test.js +213 -0
- package/dist/utils/{rect.d.ts → rect.svelte.d.ts} +7 -4
- package/dist/utils/rect.svelte.js +105 -0
- package/dist/utils/scales.svelte.d.ts +91 -0
- package/dist/utils/scales.svelte.js +201 -0
- package/dist/utils/stack.d.ts +2 -3
- package/dist/utils/stack.js +1 -1
- package/dist/utils/string.js +87 -0
- package/dist/utils/ticks.d.ts +9 -3
- package/dist/utils/ticks.js +122 -147
- package/dist/utils/ticks.test.d.ts +1 -0
- package/dist/utils/ticks.test.js +57 -0
- package/dist/utils/types.d.ts +81 -0
- package/package.json +28 -24
- package/dist/components/ChartContext.svelte +0 -295
- package/dist/components/ChartContext.svelte.d.ts +0 -139
- package/dist/components/TransformContext.svelte.d.ts +0 -158
- package/dist/stores/motionStore.d.ts +0 -30
- package/dist/stores/motionStore.js +0 -62
- package/dist/utils/graph.d.ts +0 -37
- package/dist/utils/rect.js +0 -107
- package/dist/utils/scales.d.ts +0 -66
- package/dist/utils/scales.js +0 -136
- /package/dist/{utils/graph.test.d.ts → components/charts/types.js} +0 -0
|
@@ -1,3 +1,170 @@
|
|
|
1
|
+
<script lang="ts" module>
|
|
2
|
+
import type { ComponentProps, Snippet } from 'svelte';
|
|
3
|
+
import type { PointerEventHandler, SVGAttributes } from 'svelte/elements';
|
|
4
|
+
|
|
5
|
+
import Spline, { type SplinePropsWithoutHTML } from './Spline.svelte';
|
|
6
|
+
import type { TooltipContextValue } from './tooltip/TooltipContext.svelte';
|
|
7
|
+
import { createMotion, type MotionProp } from '../utils/motion.svelte.js';
|
|
8
|
+
import type { CommonStyleProps, Without } from '../utils/types.js';
|
|
9
|
+
|
|
10
|
+
export type ArcPropsWithoutHTML = {
|
|
11
|
+
value?: number;
|
|
12
|
+
initialValue?: number;
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Domain [min,max] in degrees
|
|
16
|
+
*
|
|
17
|
+
* @default [0, 100];
|
|
18
|
+
*/
|
|
19
|
+
domain?: [number, number];
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Range [min,max] in degrees. See also startAngle/endAngle
|
|
23
|
+
*
|
|
24
|
+
* @default [0, 360]
|
|
25
|
+
*/
|
|
26
|
+
range?: [number, number];
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Start angle in radians
|
|
30
|
+
*/
|
|
31
|
+
startAngle?: number;
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* End angle in radians
|
|
35
|
+
*/
|
|
36
|
+
endAngle?: number;
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Define innerRadius. Defaults to yRange min
|
|
40
|
+
* • value >= 1: discrete value
|
|
41
|
+
* • value < 1: percent of `outerRadius`
|
|
42
|
+
* • value < 0: offset of `outerRadius`
|
|
43
|
+
*/
|
|
44
|
+
innerRadius?: number;
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Define outerRadius. Defaults to smallest width (xRange) or height (yRange) dimension (/2)
|
|
48
|
+
* • value >= 1: discrete value
|
|
49
|
+
* • value < 1: percent of chart width or height (smallest) / 2
|
|
50
|
+
* • value < 0: offset of chart width or height (smallest) / 2
|
|
51
|
+
*/
|
|
52
|
+
outerRadius?: number;
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* Corner radius of the arc
|
|
56
|
+
*
|
|
57
|
+
* @default 0
|
|
58
|
+
*/
|
|
59
|
+
cornerRadius?: number;
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Angle between the arcs
|
|
63
|
+
*
|
|
64
|
+
* @default 0
|
|
65
|
+
*/
|
|
66
|
+
padAngle?: number;
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Start angle in radians
|
|
70
|
+
*/
|
|
71
|
+
trackStartAngle?: number;
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* End angle in radians
|
|
75
|
+
*/
|
|
76
|
+
trackEndAngle?: number;
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Define innerRadius. Defaults to yRange min
|
|
80
|
+
* • value >= 1: discrete value
|
|
81
|
+
* • value < 1: percent of `outerRadius`
|
|
82
|
+
* • value < 0: offset of `outerRadius`
|
|
83
|
+
*/
|
|
84
|
+
trackInnerRadius?: number;
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Define outerRadius. Defaults to smallest width (xRange) or height (yRange) dimension (/2)
|
|
88
|
+
* • value >= 1: discrete value
|
|
89
|
+
* • value < 1: percent of chart width or height (smallest) / 2
|
|
90
|
+
* • value < 0: offset of chart width or height (smallest) / 2
|
|
91
|
+
*/
|
|
92
|
+
trackOuterRadius?: number;
|
|
93
|
+
|
|
94
|
+
/**
|
|
95
|
+
* Corner radius of the arc
|
|
96
|
+
*
|
|
97
|
+
* @default 0
|
|
98
|
+
*/
|
|
99
|
+
trackCornerRadius?: number;
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* Angle between the arcs
|
|
103
|
+
*
|
|
104
|
+
* @default 0
|
|
105
|
+
*/
|
|
106
|
+
trackPadAngle?: number;
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* Offset arc from center
|
|
110
|
+
*
|
|
111
|
+
* @default 0
|
|
112
|
+
*/
|
|
113
|
+
offset?: number;
|
|
114
|
+
|
|
115
|
+
/**
|
|
116
|
+
* Tooltip context to setup pointer events to show tooltip for related data.
|
|
117
|
+
*
|
|
118
|
+
* **Must set `data` prop as well**
|
|
119
|
+
*/
|
|
120
|
+
tooltipContext?: TooltipContextValue;
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
* Data to set when showing tooltip
|
|
124
|
+
*/
|
|
125
|
+
data?: any;
|
|
126
|
+
|
|
127
|
+
/**
|
|
128
|
+
* Pass true to enable the track with default props, or pass an object
|
|
129
|
+
* of props to enable the track.
|
|
130
|
+
*/
|
|
131
|
+
track?: boolean | Partial<ComponentProps<typeof Spline>>;
|
|
132
|
+
|
|
133
|
+
/**
|
|
134
|
+
* A reference to the track element
|
|
135
|
+
*
|
|
136
|
+
* @bindable
|
|
137
|
+
*/
|
|
138
|
+
trackRef?: SVGPathElement;
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* A reference to the arc element
|
|
142
|
+
*
|
|
143
|
+
* @bindable
|
|
144
|
+
*/
|
|
145
|
+
ref?: SVGPathElement;
|
|
146
|
+
|
|
147
|
+
children?: Snippet<
|
|
148
|
+
[
|
|
149
|
+
{
|
|
150
|
+
centroid: [number, number];
|
|
151
|
+
boundingBox: DOMRect;
|
|
152
|
+
value: number;
|
|
153
|
+
getTrackTextProps: GetArcTextProps;
|
|
154
|
+
getArcTextProps: GetArcTextProps;
|
|
155
|
+
},
|
|
156
|
+
]
|
|
157
|
+
>;
|
|
158
|
+
|
|
159
|
+
motion?: MotionProp;
|
|
160
|
+
} & CommonStyleProps;
|
|
161
|
+
|
|
162
|
+
export type ArcProps = ArcPropsWithoutHTML &
|
|
163
|
+
// we omit the spline props to avoid conflicts with attribute names since we are
|
|
164
|
+
// passing them through to `<Spline />`
|
|
165
|
+
Without<SVGAttributes<SVGPathElement>, ArcPropsWithoutHTML & SplinePropsWithoutHTML>;
|
|
166
|
+
</script>
|
|
167
|
+
|
|
1
168
|
<script lang="ts">
|
|
2
169
|
/*
|
|
3
170
|
TODO:
|
|
@@ -17,84 +184,79 @@
|
|
|
17
184
|
// https://svelte.dev/repl/09711e43a1264ba18945d7db7cab9335?version=3.38.2
|
|
18
185
|
// https://codepen.io/simeydotme/pen/rrOEmO/
|
|
19
186
|
|
|
20
|
-
import { tick, type ComponentProps } from 'svelte';
|
|
21
|
-
import type { spring as springStore, tweened as tweenedStore } from 'svelte/motion';
|
|
22
187
|
import { arc as d3arc } from 'd3-shape';
|
|
23
188
|
import { scaleLinear } from 'd3-scale';
|
|
24
189
|
|
|
25
|
-
import { chartContext } from './ChartContext.svelte';
|
|
26
|
-
import { motionStore } from '../stores/motionStore.js';
|
|
27
190
|
import { degreesToRadians } from '../utils/math.js';
|
|
28
|
-
import
|
|
29
|
-
import
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
191
|
+
import { getChartContext } from './Chart.svelte';
|
|
192
|
+
import { extractLayerProps, layerClass } from '../utils/attributes.js';
|
|
193
|
+
import { cls } from '@layerstack/tailwind';
|
|
194
|
+
import { max } from 'd3-array';
|
|
195
|
+
import {
|
|
196
|
+
createArcTextProps,
|
|
197
|
+
type ArcTextOptions,
|
|
198
|
+
type ArcTextPosition,
|
|
199
|
+
type GetArcTextProps,
|
|
200
|
+
} from '../utils/arcText.svelte.js';
|
|
201
|
+
|
|
202
|
+
let {
|
|
203
|
+
ref: refProp = $bindable(),
|
|
204
|
+
trackRef: trackRefProp = $bindable(),
|
|
205
|
+
motion,
|
|
206
|
+
value = 0,
|
|
207
|
+
initialValue = 0,
|
|
208
|
+
domain = [0, 100],
|
|
209
|
+
range = [0, 360], // degrees
|
|
210
|
+
startAngle: startAngleProp,
|
|
211
|
+
endAngle: endAngleProp,
|
|
212
|
+
innerRadius: innerRadiusProp,
|
|
213
|
+
outerRadius: outerRadiusProp,
|
|
214
|
+
cornerRadius = 0,
|
|
215
|
+
padAngle = 0,
|
|
216
|
+
trackStartAngle: trackStartAngleProp,
|
|
217
|
+
trackEndAngle: trackEndAngleProp,
|
|
218
|
+
trackInnerRadius: trackInnerRadiusProp,
|
|
219
|
+
trackOuterRadius: trackOuterRadiusProp,
|
|
220
|
+
trackCornerRadius: trackCornerRadiusProp,
|
|
221
|
+
trackPadAngle: trackPadAngleProp,
|
|
222
|
+
fill,
|
|
223
|
+
fillOpacity,
|
|
224
|
+
stroke = 'none',
|
|
225
|
+
strokeWidth,
|
|
226
|
+
opacity,
|
|
227
|
+
data,
|
|
228
|
+
offset = 0,
|
|
229
|
+
onpointerenter = () => {},
|
|
230
|
+
onpointermove = () => {},
|
|
231
|
+
onpointerleave = () => {},
|
|
232
|
+
ontouchmove = () => {},
|
|
233
|
+
tooltipContext,
|
|
234
|
+
track = false,
|
|
235
|
+
children,
|
|
236
|
+
class: className,
|
|
237
|
+
...restProps
|
|
238
|
+
}: ArcProps = $props();
|
|
239
|
+
|
|
240
|
+
let ref = $state<SVGPathElement>();
|
|
241
|
+
let trackRef = $state<SVGPathElement>();
|
|
242
|
+
|
|
243
|
+
$effect.pre(() => {
|
|
244
|
+
refProp = ref;
|
|
40
245
|
});
|
|
41
246
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
* Range [min,max] in degrees. See also startAngle/endAngle
|
|
46
|
-
*/
|
|
47
|
-
export let range = [0, 360]; // degrees
|
|
48
|
-
|
|
49
|
-
/**
|
|
50
|
-
* Start angle in radians
|
|
51
|
-
*/
|
|
52
|
-
export let startAngle: number | undefined = undefined;
|
|
53
|
-
|
|
54
|
-
/**
|
|
55
|
-
* End angle in radians
|
|
56
|
-
*/
|
|
57
|
-
export let endAngle: number | undefined = undefined;
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
* Define innerRadius. Defaults to yRange min
|
|
61
|
-
* • value >= 1: discrete value
|
|
62
|
-
* • value < 1: percent of `outerRadius`
|
|
63
|
-
* • value < 0: offset of `outerRadius`
|
|
64
|
-
*/
|
|
65
|
-
export let innerRadius: number | undefined = undefined;
|
|
66
|
-
|
|
67
|
-
/**
|
|
68
|
-
* Define outerRadius. Defaults to smallest width (xRange) or height (yRange) dimension (/2)
|
|
69
|
-
* • value >= 1: discrete value
|
|
70
|
-
* • value < 1: percent of chart width or height (smallest) / 2
|
|
71
|
-
* • value < 0: offset of chart width or height (smallest) / 2
|
|
72
|
-
*/
|
|
73
|
-
export let outerRadius: number | undefined = undefined;
|
|
74
|
-
|
|
75
|
-
export let cornerRadius = 0;
|
|
76
|
-
export let padAngle = 0;
|
|
77
|
-
// export let padRadius = 0;
|
|
78
|
-
|
|
79
|
-
export let fill: string | undefined = undefined;
|
|
80
|
-
export let fillOpacity: number | undefined = undefined;
|
|
81
|
-
export let stroke: string | undefined = 'none';
|
|
82
|
-
export let strokeWidth: number | undefined = undefined;
|
|
83
|
-
export let opacity: number | undefined = undefined;
|
|
84
|
-
|
|
85
|
-
let className: string | undefined = undefined;
|
|
86
|
-
export { className as class };
|
|
247
|
+
$effect.pre(() => {
|
|
248
|
+
trackRefProp = trackRef;
|
|
249
|
+
});
|
|
87
250
|
|
|
88
|
-
|
|
251
|
+
const ctx = getChartContext();
|
|
89
252
|
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
export let onpointerleave: ((e: PointerEvent) => void) | undefined = undefined;
|
|
253
|
+
const endAngle = $derived(
|
|
254
|
+
endAngleProp ?? degreesToRadians(ctx.config.xRange ? max(ctx.xRange) : max(range))
|
|
255
|
+
);
|
|
94
256
|
|
|
95
|
-
const
|
|
257
|
+
const motionEndAngle = createMotion(initialValue, () => value, motion);
|
|
96
258
|
|
|
97
|
-
|
|
259
|
+
const scale = $derived(scaleLinear().domain(domain).range(range));
|
|
98
260
|
|
|
99
261
|
function getOuterRadius(outerRadius: number | undefined, chartRadius: number) {
|
|
100
262
|
if (!outerRadius) {
|
|
@@ -114,11 +276,18 @@
|
|
|
114
276
|
}
|
|
115
277
|
}
|
|
116
278
|
|
|
117
|
-
|
|
279
|
+
const outerRadius = $derived(
|
|
280
|
+
getOuterRadius(outerRadiusProp, (Math.min(ctx.xRange[1], ctx.yRange[0]) ?? 0) / 2)
|
|
281
|
+
);
|
|
282
|
+
const trackOuterRadius = $derived(
|
|
283
|
+
trackOuterRadiusProp
|
|
284
|
+
? getOuterRadius(trackOuterRadiusProp, (Math.min(ctx.xRange[1], ctx.yRange[0]) ?? 0) / 2)
|
|
285
|
+
: outerRadius
|
|
286
|
+
);
|
|
118
287
|
|
|
119
288
|
function getInnerRadius(innerRadius: number | undefined, outerRadius: number) {
|
|
120
289
|
if (innerRadius == null) {
|
|
121
|
-
return Math.min(
|
|
290
|
+
return Math.min(...ctx.yRange);
|
|
122
291
|
} else if (innerRadius > 1) {
|
|
123
292
|
// discrete value
|
|
124
293
|
return innerRadius;
|
|
@@ -133,92 +302,112 @@
|
|
|
133
302
|
return innerRadius;
|
|
134
303
|
}
|
|
135
304
|
}
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
/**
|
|
188
|
-
* Tooltip context to setup pointer events to show tooltip for related data. Must set `data` prop as well
|
|
189
|
-
*/
|
|
190
|
-
export let tooltip: TooltipContextValue | undefined = undefined;
|
|
191
|
-
|
|
192
|
-
/**
|
|
193
|
-
* Data to set when showing tooltip
|
|
194
|
-
*/
|
|
195
|
-
export let data: any = undefined;
|
|
196
|
-
|
|
197
|
-
function onPointerEnter(e: PointerEvent) {
|
|
305
|
+
|
|
306
|
+
const innerRadius = $derived(getInnerRadius(innerRadiusProp, outerRadius));
|
|
307
|
+
const trackInnerRadius = $derived(
|
|
308
|
+
trackInnerRadiusProp ? getInnerRadius(trackInnerRadiusProp, trackOuterRadius) : innerRadius
|
|
309
|
+
);
|
|
310
|
+
|
|
311
|
+
const startAngle = $derived(startAngleProp ?? degreesToRadians(range[0]));
|
|
312
|
+
const trackStartAngle = $derived(
|
|
313
|
+
trackStartAngleProp ?? startAngleProp ?? degreesToRadians(range[0])
|
|
314
|
+
);
|
|
315
|
+
const trackEndAngle = $derived(trackEndAngleProp ?? endAngleProp ?? degreesToRadians(range[1]));
|
|
316
|
+
const trackCornerRadius = $derived(trackCornerRadiusProp ?? cornerRadius);
|
|
317
|
+
const trackPadAngle = $derived(trackPadAngleProp ?? padAngle);
|
|
318
|
+
|
|
319
|
+
const arcEndAngle = $derived(endAngleProp ?? degreesToRadians(scale(motionEndAngle.current)));
|
|
320
|
+
|
|
321
|
+
const arc = $derived(
|
|
322
|
+
d3arc()
|
|
323
|
+
.innerRadius(innerRadius)
|
|
324
|
+
.outerRadius(outerRadius)
|
|
325
|
+
.startAngle(startAngle)
|
|
326
|
+
.endAngle(arcEndAngle)
|
|
327
|
+
.cornerRadius(cornerRadius)
|
|
328
|
+
.padAngle(padAngle)
|
|
329
|
+
);
|
|
330
|
+
|
|
331
|
+
const trackArc = $derived(
|
|
332
|
+
d3arc()
|
|
333
|
+
.innerRadius(trackInnerRadius)
|
|
334
|
+
.outerRadius(trackOuterRadius)
|
|
335
|
+
.startAngle(trackStartAngle)
|
|
336
|
+
.endAngle(trackEndAngle)
|
|
337
|
+
.cornerRadius(trackCornerRadius)
|
|
338
|
+
.padAngle(trackPadAngle)
|
|
339
|
+
);
|
|
340
|
+
|
|
341
|
+
const angle = $derived(((startAngle ?? 0) + (endAngle ?? 0)) / 2);
|
|
342
|
+
const xOffset = $derived(Math.sin(angle) * offset);
|
|
343
|
+
const yOffset = $derived(-Math.cos(angle) * offset);
|
|
344
|
+
|
|
345
|
+
const trackArcCentroid = $derived.by(() => {
|
|
346
|
+
// @ts-expect-error - this is fine.
|
|
347
|
+
const centroid = trackArc.centroid() as [number, number];
|
|
348
|
+
|
|
349
|
+
return [centroid[0] + xOffset, centroid[1] + yOffset];
|
|
350
|
+
}) as [number, number];
|
|
351
|
+
|
|
352
|
+
const boundingBox = $derived(trackRef ? trackRef.getBBox() : ({} as DOMRect));
|
|
353
|
+
|
|
354
|
+
const onPointerEnter: PointerEventHandler<SVGPathElement> = (e) => {
|
|
198
355
|
onpointerenter?.(e);
|
|
199
|
-
|
|
200
|
-
}
|
|
201
|
-
|
|
356
|
+
tooltipContext?.show(e, data);
|
|
357
|
+
};
|
|
358
|
+
|
|
359
|
+
const onPointerMove: PointerEventHandler<SVGPathElement> = (e) => {
|
|
202
360
|
onpointermove?.(e);
|
|
203
|
-
|
|
204
|
-
}
|
|
205
|
-
|
|
361
|
+
tooltipContext?.show(e, data);
|
|
362
|
+
};
|
|
363
|
+
|
|
364
|
+
const onPointerLeave: PointerEventHandler<SVGPathElement> = (e) => {
|
|
206
365
|
onpointerleave?.(e);
|
|
207
|
-
|
|
366
|
+
tooltipContext?.hide();
|
|
367
|
+
};
|
|
368
|
+
|
|
369
|
+
function getTrackTextProps(position: ArcTextPosition, opts: ArcTextOptions = {}) {
|
|
370
|
+
return createArcTextProps(
|
|
371
|
+
{
|
|
372
|
+
startAngle: () => trackStartAngle,
|
|
373
|
+
endAngle: () => trackEndAngle,
|
|
374
|
+
outerRadius: () => trackOuterRadius + (opts.outerPadding ? opts.outerPadding : 0),
|
|
375
|
+
innerRadius: () => trackInnerRadius,
|
|
376
|
+
cornerRadius: () => trackCornerRadius,
|
|
377
|
+
centroid: () => trackArcCentroid,
|
|
378
|
+
},
|
|
379
|
+
opts,
|
|
380
|
+
position
|
|
381
|
+
).current;
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
function getArcTextProps(position: ArcTextPosition, opts: ArcTextOptions = {}) {
|
|
385
|
+
return createArcTextProps(
|
|
386
|
+
{
|
|
387
|
+
startAngle: () => startAngle,
|
|
388
|
+
endAngle: () => arcEndAngle,
|
|
389
|
+
outerRadius: () => outerRadius + (opts.outerPadding ? opts.outerPadding : 0),
|
|
390
|
+
innerRadius: () => innerRadius,
|
|
391
|
+
cornerRadius: () => cornerRadius,
|
|
392
|
+
centroid: () => trackArcCentroid,
|
|
393
|
+
},
|
|
394
|
+
opts,
|
|
395
|
+
position
|
|
396
|
+
).current;
|
|
208
397
|
}
|
|
209
398
|
</script>
|
|
210
399
|
|
|
211
400
|
{#if track}
|
|
212
401
|
<Spline
|
|
213
402
|
pathData={trackArc()}
|
|
214
|
-
class="track"
|
|
215
403
|
stroke="none"
|
|
216
|
-
bind:
|
|
217
|
-
{...
|
|
404
|
+
bind:splineRef={trackRef}
|
|
405
|
+
{...extractLayerProps(track, 'arc-track')}
|
|
218
406
|
/>
|
|
219
407
|
{/if}
|
|
220
408
|
|
|
221
409
|
<Spline
|
|
410
|
+
bind:splineRef={ref}
|
|
222
411
|
pathData={arc()}
|
|
223
412
|
transform="translate({xOffset}, {yOffset})"
|
|
224
413
|
{fill}
|
|
@@ -226,19 +415,23 @@
|
|
|
226
415
|
{stroke}
|
|
227
416
|
stroke-width={strokeWidth}
|
|
228
417
|
{opacity}
|
|
229
|
-
|
|
230
|
-
{
|
|
231
|
-
{onclick}
|
|
418
|
+
{...restProps}
|
|
419
|
+
class={cls(layerClass('arc-line'), className)}
|
|
232
420
|
onpointerenter={onPointerEnter}
|
|
233
421
|
onpointermove={onPointerMove}
|
|
234
422
|
onpointerleave={onPointerLeave}
|
|
235
423
|
ontouchmove={(e) => {
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
424
|
+
ontouchmove?.(e);
|
|
425
|
+
if (!tooltipContext) return;
|
|
426
|
+
// Prevent touch to not interfere with pointer when using tooltip
|
|
427
|
+
e.preventDefault();
|
|
240
428
|
}}
|
|
241
|
-
on:touchmove
|
|
242
429
|
/>
|
|
243
430
|
|
|
244
|
-
|
|
431
|
+
{@render children?.({
|
|
432
|
+
centroid: trackArcCentroid,
|
|
433
|
+
boundingBox,
|
|
434
|
+
value: motionEndAngle.current,
|
|
435
|
+
getTrackTextProps: getTrackTextProps,
|
|
436
|
+
getArcTextProps: getArcTextProps,
|
|
437
|
+
})}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import type { ComponentProps, Snippet } from 'svelte';
|
|
2
|
+
import type { SVGAttributes } from 'svelte/elements';
|
|
3
|
+
import Spline, { type SplinePropsWithoutHTML } from './Spline.svelte';
|
|
4
|
+
import type { TooltipContextValue } from './tooltip/TooltipContext.svelte';
|
|
5
|
+
import { type MotionProp } from '../utils/motion.svelte.js';
|
|
6
|
+
import type { CommonStyleProps, Without } from '../utils/types.js';
|
|
7
|
+
export type ArcPropsWithoutHTML = {
|
|
8
|
+
value?: number;
|
|
9
|
+
initialValue?: number;
|
|
10
|
+
/**
|
|
11
|
+
* Domain [min,max] in degrees
|
|
12
|
+
*
|
|
13
|
+
* @default [0, 100];
|
|
14
|
+
*/
|
|
15
|
+
domain?: [number, number];
|
|
16
|
+
/**
|
|
17
|
+
* Range [min,max] in degrees. See also startAngle/endAngle
|
|
18
|
+
*
|
|
19
|
+
* @default [0, 360]
|
|
20
|
+
*/
|
|
21
|
+
range?: [number, number];
|
|
22
|
+
/**
|
|
23
|
+
* Start angle in radians
|
|
24
|
+
*/
|
|
25
|
+
startAngle?: number;
|
|
26
|
+
/**
|
|
27
|
+
* End angle in radians
|
|
28
|
+
*/
|
|
29
|
+
endAngle?: number;
|
|
30
|
+
/**
|
|
31
|
+
* Define innerRadius. Defaults to yRange min
|
|
32
|
+
* • value >= 1: discrete value
|
|
33
|
+
* • value < 1: percent of `outerRadius`
|
|
34
|
+
* • value < 0: offset of `outerRadius`
|
|
35
|
+
*/
|
|
36
|
+
innerRadius?: number;
|
|
37
|
+
/**
|
|
38
|
+
* Define outerRadius. Defaults to smallest width (xRange) or height (yRange) dimension (/2)
|
|
39
|
+
* • value >= 1: discrete value
|
|
40
|
+
* • value < 1: percent of chart width or height (smallest) / 2
|
|
41
|
+
* • value < 0: offset of chart width or height (smallest) / 2
|
|
42
|
+
*/
|
|
43
|
+
outerRadius?: number;
|
|
44
|
+
/**
|
|
45
|
+
* Corner radius of the arc
|
|
46
|
+
*
|
|
47
|
+
* @default 0
|
|
48
|
+
*/
|
|
49
|
+
cornerRadius?: number;
|
|
50
|
+
/**
|
|
51
|
+
* Angle between the arcs
|
|
52
|
+
*
|
|
53
|
+
* @default 0
|
|
54
|
+
*/
|
|
55
|
+
padAngle?: number;
|
|
56
|
+
/**
|
|
57
|
+
* Start angle in radians
|
|
58
|
+
*/
|
|
59
|
+
trackStartAngle?: number;
|
|
60
|
+
/**
|
|
61
|
+
* End angle in radians
|
|
62
|
+
*/
|
|
63
|
+
trackEndAngle?: number;
|
|
64
|
+
/**
|
|
65
|
+
* Define innerRadius. Defaults to yRange min
|
|
66
|
+
* • value >= 1: discrete value
|
|
67
|
+
* • value < 1: percent of `outerRadius`
|
|
68
|
+
* • value < 0: offset of `outerRadius`
|
|
69
|
+
*/
|
|
70
|
+
trackInnerRadius?: number;
|
|
71
|
+
/**
|
|
72
|
+
* Define outerRadius. Defaults to smallest width (xRange) or height (yRange) dimension (/2)
|
|
73
|
+
* • value >= 1: discrete value
|
|
74
|
+
* • value < 1: percent of chart width or height (smallest) / 2
|
|
75
|
+
* • value < 0: offset of chart width or height (smallest) / 2
|
|
76
|
+
*/
|
|
77
|
+
trackOuterRadius?: number;
|
|
78
|
+
/**
|
|
79
|
+
* Corner radius of the arc
|
|
80
|
+
*
|
|
81
|
+
* @default 0
|
|
82
|
+
*/
|
|
83
|
+
trackCornerRadius?: number;
|
|
84
|
+
/**
|
|
85
|
+
* Angle between the arcs
|
|
86
|
+
*
|
|
87
|
+
* @default 0
|
|
88
|
+
*/
|
|
89
|
+
trackPadAngle?: number;
|
|
90
|
+
/**
|
|
91
|
+
* Offset arc from center
|
|
92
|
+
*
|
|
93
|
+
* @default 0
|
|
94
|
+
*/
|
|
95
|
+
offset?: number;
|
|
96
|
+
/**
|
|
97
|
+
* Tooltip context to setup pointer events to show tooltip for related data.
|
|
98
|
+
*
|
|
99
|
+
* **Must set `data` prop as well**
|
|
100
|
+
*/
|
|
101
|
+
tooltipContext?: TooltipContextValue;
|
|
102
|
+
/**
|
|
103
|
+
* Data to set when showing tooltip
|
|
104
|
+
*/
|
|
105
|
+
data?: any;
|
|
106
|
+
/**
|
|
107
|
+
* Pass true to enable the track with default props, or pass an object
|
|
108
|
+
* of props to enable the track.
|
|
109
|
+
*/
|
|
110
|
+
track?: boolean | Partial<ComponentProps<typeof Spline>>;
|
|
111
|
+
/**
|
|
112
|
+
* A reference to the track element
|
|
113
|
+
*
|
|
114
|
+
* @bindable
|
|
115
|
+
*/
|
|
116
|
+
trackRef?: SVGPathElement;
|
|
117
|
+
/**
|
|
118
|
+
* A reference to the arc element
|
|
119
|
+
*
|
|
120
|
+
* @bindable
|
|
121
|
+
*/
|
|
122
|
+
ref?: SVGPathElement;
|
|
123
|
+
children?: Snippet<[
|
|
124
|
+
{
|
|
125
|
+
centroid: [number, number];
|
|
126
|
+
boundingBox: DOMRect;
|
|
127
|
+
value: number;
|
|
128
|
+
getTrackTextProps: GetArcTextProps;
|
|
129
|
+
getArcTextProps: GetArcTextProps;
|
|
130
|
+
}
|
|
131
|
+
]>;
|
|
132
|
+
motion?: MotionProp;
|
|
133
|
+
} & CommonStyleProps;
|
|
134
|
+
export type ArcProps = ArcPropsWithoutHTML & Without<SVGAttributes<SVGPathElement>, ArcPropsWithoutHTML & SplinePropsWithoutHTML>;
|
|
135
|
+
import { type GetArcTextProps } from '../utils/arcText.svelte.js';
|
|
136
|
+
declare const Arc: import("svelte").Component<ArcProps, {}, "ref" | "trackRef">;
|
|
137
|
+
type Arc = ReturnType<typeof Arc>;
|
|
138
|
+
export default Arc;
|