svelteplot 0.10.3 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (222) hide show
  1. package/dist/Mark.svelte +42 -25
  2. package/dist/Mark.svelte.d.ts +111 -32
  3. package/dist/Plot.svelte +21 -15
  4. package/dist/core/Facet.svelte +1 -1
  5. package/dist/core/FacetAxes.svelte +13 -8
  6. package/dist/core/FacetGrid.svelte +4 -4
  7. package/dist/core/Plot.svelte +41 -35
  8. package/dist/helpers/autoScales.d.ts +3 -3
  9. package/dist/helpers/autoScales.js +28 -18
  10. package/dist/helpers/autoTicks.js +2 -0
  11. package/dist/helpers/callWithProps.d.ts +1 -2
  12. package/dist/helpers/facets.js +0 -1
  13. package/dist/helpers/index.js +1 -1
  14. package/dist/helpers/mergeDeep.d.ts +1 -3
  15. package/dist/helpers/mergeDeep.js +15 -16
  16. package/dist/helpers/projection.d.ts +4 -3
  17. package/dist/helpers/projection.js +17 -5
  18. package/dist/helpers/reduce.d.ts +4 -4
  19. package/dist/helpers/reduce.js +6 -4
  20. package/dist/helpers/regressionLoess.js +2 -1
  21. package/dist/helpers/resolve.d.ts +6 -3
  22. package/dist/helpers/resolve.js +25 -16
  23. package/dist/helpers/scales.d.ts +10 -10
  24. package/dist/helpers/scales.js +43 -13
  25. package/dist/helpers/time.d.ts +10 -3
  26. package/dist/helpers/time.js +2 -1
  27. package/dist/hooks/index.d.ts +2 -0
  28. package/dist/hooks/index.js +2 -0
  29. package/dist/hooks/plotDefaults.d.ts +3 -1
  30. package/dist/hooks/plotDefaults.js +33 -1
  31. package/dist/hooks/usePlot.svelte.d.ts +10 -25
  32. package/dist/hooks/usePlot.svelte.js +8 -7
  33. package/dist/index.d.ts +1 -2
  34. package/dist/index.js +1 -3
  35. package/dist/marks/Area.svelte +24 -13
  36. package/dist/marks/Area.svelte.d.ts +118 -34
  37. package/dist/marks/AreaX.svelte +42 -8
  38. package/dist/marks/AreaX.svelte.d.ts +154 -71
  39. package/dist/marks/AreaY.svelte +42 -8
  40. package/dist/marks/AreaY.svelte.d.ts +154 -71
  41. package/dist/marks/Arrow.svelte +42 -23
  42. package/dist/marks/Arrow.svelte.d.ts +114 -35
  43. package/dist/marks/AxisX.svelte +43 -28
  44. package/dist/marks/AxisX.svelte.d.ts +125 -40
  45. package/dist/marks/AxisY.svelte +43 -26
  46. package/dist/marks/AxisY.svelte.d.ts +127 -40
  47. package/dist/marks/BarX.svelte +12 -10
  48. package/dist/marks/BarX.svelte.d.ts +104 -32
  49. package/dist/marks/BarY.svelte +11 -10
  50. package/dist/marks/BarY.svelte.d.ts +106 -34
  51. package/dist/marks/BollingerX.svelte +4 -7
  52. package/dist/marks/BollingerX.svelte.d.ts +105 -30
  53. package/dist/marks/BollingerY.svelte +3 -0
  54. package/dist/marks/BollingerY.svelte.d.ts +105 -30
  55. package/dist/marks/BoxX.svelte +3 -3
  56. package/dist/marks/BoxY.svelte +12 -9
  57. package/dist/marks/BoxY.svelte.d.ts +128 -53
  58. package/dist/marks/Brush.svelte +26 -21
  59. package/dist/marks/Brush.svelte.d.ts +119 -60
  60. package/dist/marks/Cell.svelte +13 -9
  61. package/dist/marks/Cell.svelte.d.ts +105 -30
  62. package/dist/marks/CellX.svelte +2 -1
  63. package/dist/marks/CellX.svelte.d.ts +105 -32
  64. package/dist/marks/CellY.svelte +2 -1
  65. package/dist/marks/CellY.svelte.d.ts +105 -32
  66. package/dist/marks/ColorLegend.svelte +24 -13
  67. package/dist/marks/ColorLegend.svelte.d.ts +1 -0
  68. package/dist/marks/CustomMark.svelte +16 -10
  69. package/dist/marks/CustomMark.svelte.d.ts +112 -31
  70. package/dist/marks/CustomMarkHTML.svelte +8 -2
  71. package/dist/marks/CustomMarkHTML.svelte.d.ts +8 -2
  72. package/dist/marks/DifferenceY.svelte +31 -20
  73. package/dist/marks/DifferenceY.svelte.d.ts +134 -55
  74. package/dist/marks/Dot.svelte +21 -11
  75. package/dist/marks/Dot.svelte.d.ts +117 -38
  76. package/dist/marks/DotX.svelte +2 -0
  77. package/dist/marks/DotX.svelte.d.ts +136 -62
  78. package/dist/marks/DotY.svelte +1 -0
  79. package/dist/marks/DotY.svelte.d.ts +135 -62
  80. package/dist/marks/Frame.svelte +47 -9
  81. package/dist/marks/Frame.svelte.d.ts +124 -41
  82. package/dist/marks/Geo.svelte +21 -12
  83. package/dist/marks/Geo.svelte.d.ts +105 -30
  84. package/dist/marks/Graticule.svelte +3 -0
  85. package/dist/marks/Graticule.svelte.d.ts +3 -0
  86. package/dist/marks/GridX.svelte +31 -16
  87. package/dist/marks/GridX.svelte.d.ts +108 -32
  88. package/dist/marks/GridY.svelte +30 -15
  89. package/dist/marks/GridY.svelte.d.ts +108 -32
  90. package/dist/marks/HTMLTooltip.svelte +14 -7
  91. package/dist/marks/HTMLTooltip.svelte.d.ts +7 -0
  92. package/dist/marks/Image.svelte +50 -25
  93. package/dist/marks/Image.svelte.d.ts +117 -35
  94. package/dist/marks/Line.svelte +67 -44
  95. package/dist/marks/Line.svelte.d.ts +119 -30
  96. package/dist/marks/LineX.svelte +2 -1
  97. package/dist/marks/LineX.svelte.d.ts +142 -69
  98. package/dist/marks/LineY.svelte +2 -1
  99. package/dist/marks/LineY.svelte.d.ts +142 -69
  100. package/dist/marks/Link.svelte +70 -46
  101. package/dist/marks/Link.svelte.d.ts +126 -41
  102. package/dist/marks/Pointer.svelte +24 -15
  103. package/dist/marks/Pointer.svelte.d.ts +7 -0
  104. package/dist/marks/Rect.svelte +13 -5
  105. package/dist/marks/Rect.svelte.d.ts +116 -35
  106. package/dist/marks/RectX.svelte +6 -3
  107. package/dist/marks/RectX.svelte.d.ts +158 -12
  108. package/dist/marks/RectY.svelte +6 -3
  109. package/dist/marks/RectY.svelte.d.ts +158 -12
  110. package/dist/marks/RegressionX.svelte +13 -6
  111. package/dist/marks/RegressionX.svelte.d.ts +8 -3
  112. package/dist/marks/RegressionY.svelte +13 -6
  113. package/dist/marks/RegressionY.svelte.d.ts +8 -3
  114. package/dist/marks/RuleX.svelte +18 -11
  115. package/dist/marks/RuleX.svelte.d.ts +112 -32
  116. package/dist/marks/RuleY.svelte +19 -12
  117. package/dist/marks/RuleY.svelte.d.ts +114 -34
  118. package/dist/marks/Spike.svelte +11 -5
  119. package/dist/marks/Spike.svelte.d.ts +146 -68
  120. package/dist/marks/Text.svelte +24 -7
  121. package/dist/marks/Text.svelte.d.ts +253 -75
  122. package/dist/marks/TickX.svelte +56 -48
  123. package/dist/marks/TickX.svelte.d.ts +114 -40
  124. package/dist/marks/TickY.svelte +59 -51
  125. package/dist/marks/TickY.svelte.d.ts +117 -43
  126. package/dist/marks/Trail.svelte +25 -13
  127. package/dist/marks/Trail.svelte.d.ts +116 -33
  128. package/dist/marks/Vector.svelte +20 -11
  129. package/dist/marks/Vector.svelte.d.ts +116 -35
  130. package/dist/marks/WaffleX.svelte +18 -16
  131. package/dist/marks/WaffleX.svelte.d.ts +131 -57
  132. package/dist/marks/WaffleY.svelte +16 -15
  133. package/dist/marks/WaffleY.svelte.d.ts +129 -56
  134. package/dist/marks/helpers/Anchor.svelte +17 -2
  135. package/dist/marks/helpers/Anchor.svelte.d.ts +16 -1
  136. package/dist/marks/helpers/AreaCanvas.svelte +8 -8
  137. package/dist/marks/helpers/BaseAxisX.svelte +38 -41
  138. package/dist/marks/helpers/BaseAxisX.svelte.d.ts +11 -17
  139. package/dist/marks/helpers/BaseAxisY.svelte +35 -35
  140. package/dist/marks/helpers/BaseAxisY.svelte.d.ts +12 -15
  141. package/dist/marks/helpers/Box.svelte +35 -28
  142. package/dist/marks/helpers/Box.svelte.d.ts +122 -50
  143. package/dist/marks/helpers/DotCanvas.svelte +11 -9
  144. package/dist/marks/helpers/GeoCanvas.svelte +7 -6
  145. package/dist/marks/helpers/LineCanvas.svelte +7 -7
  146. package/dist/marks/helpers/LinearGradientX.svelte +2 -2
  147. package/dist/marks/helpers/LinearGradientX.svelte.d.ts +1 -1
  148. package/dist/marks/helpers/LinearGradientY.svelte +2 -2
  149. package/dist/marks/helpers/LinearGradientY.svelte.d.ts +1 -1
  150. package/dist/marks/helpers/Marker.svelte +2 -2
  151. package/dist/marks/helpers/MarkerPath.svelte +15 -12
  152. package/dist/marks/helpers/MarkerPath.svelte.d.ts +105 -32
  153. package/dist/marks/helpers/MultilineText.svelte +24 -17
  154. package/dist/marks/helpers/MultilineText.svelte.d.ts +1 -1
  155. package/dist/marks/helpers/RectCanvas.svelte +31 -26
  156. package/dist/marks/helpers/RectPath.svelte +2 -2
  157. package/dist/marks/helpers/Regression.svelte +176 -86
  158. package/dist/marks/helpers/Regression.svelte.d.ts +20 -8
  159. package/dist/marks/helpers/RuleCanvas.svelte +9 -6
  160. package/dist/marks/helpers/TextCanvas.svelte +13 -9
  161. package/dist/marks/helpers/TextCanvas.svelte.d.ts +6 -6
  162. package/dist/marks/helpers/TickCanvas.svelte +6 -5
  163. package/dist/marks/helpers/TrailCanvas.svelte +16 -18
  164. package/dist/marks/helpers/TrailCanvas.svelte.d.ts +3 -5
  165. package/dist/marks/helpers/canvas.js +16 -9
  166. package/dist/marks/helpers/events.d.ts +2 -2
  167. package/dist/marks/helpers/events.js +14 -7
  168. package/dist/marks/helpers/waffle.d.ts +3 -3
  169. package/dist/marks/helpers/waffle.js +6 -4
  170. package/dist/regression/polynomial.d.ts +1 -1
  171. package/dist/regression/polynomial.js +5 -5
  172. package/dist/regression/utils/determination.d.ts +1 -1
  173. package/dist/regression/utils/determination.js +1 -1
  174. package/dist/regression/utils/geometry.d.ts +1 -1
  175. package/dist/regression/utils/interpose.d.ts +1 -1
  176. package/dist/regression/utils/interpose.js +1 -1
  177. package/dist/regression/utils/points.d.ts +1 -1
  178. package/dist/transforms/bin.d.ts +3 -3
  179. package/dist/transforms/bin.js +29 -20
  180. package/dist/transforms/bollinger.d.ts +8 -0
  181. package/dist/transforms/bollinger.js +9 -1
  182. package/dist/transforms/centroid.d.ts +4 -0
  183. package/dist/transforms/centroid.js +4 -0
  184. package/dist/transforms/density.d.ts +4 -4
  185. package/dist/transforms/density.js +20 -13
  186. package/dist/transforms/dodge.d.ts +12 -1
  187. package/dist/transforms/dodge.js +15 -6
  188. package/dist/transforms/group.d.ts +141 -4
  189. package/dist/transforms/group.js +4 -1
  190. package/dist/transforms/interval.d.ts +204 -60
  191. package/dist/transforms/jitter.d.ts +421 -4
  192. package/dist/transforms/jitter.js +10 -1
  193. package/dist/transforms/map.d.ts +412 -4
  194. package/dist/transforms/map.js +3 -3
  195. package/dist/transforms/normalize.d.ts +276 -5
  196. package/dist/transforms/normalize.js +5 -3
  197. package/dist/transforms/recordize.d.ts +17 -5
  198. package/dist/transforms/recordize.js +13 -9
  199. package/dist/transforms/rename.d.ts +11 -4
  200. package/dist/transforms/rename.js +7 -2
  201. package/dist/transforms/select.d.ts +722 -210
  202. package/dist/transforms/select.js +13 -1
  203. package/dist/transforms/shift.d.ts +8 -0
  204. package/dist/transforms/shift.js +20 -6
  205. package/dist/transforms/sort.d.ts +13 -258
  206. package/dist/transforms/sort.js +13 -10
  207. package/dist/transforms/stack.d.ts +58 -9
  208. package/dist/transforms/stack.js +27 -11
  209. package/dist/transforms/window.d.ts +221 -66
  210. package/dist/transforms/window.js +8 -2
  211. package/dist/types/axes.d.ts +43 -0
  212. package/dist/types/axes.js +1 -0
  213. package/dist/types/channel.d.ts +30 -2
  214. package/dist/types/data.d.ts +14 -1
  215. package/dist/types/facet.d.ts +5 -0
  216. package/dist/types/index.d.ts +33 -8
  217. package/dist/types/index.js +11 -7
  218. package/dist/types/mark.d.ts +124 -35
  219. package/dist/types/plot.d.ts +118 -16
  220. package/dist/types/scale.d.ts +125 -8
  221. package/package.json +178 -175
  222. package/dist/helpers/autoTicks.d.ts +0 -12
@@ -1,86 +1,169 @@
1
- import type { ChannelAccessor, DataRow } from '../types/index.js';
1
+ import type { CurveFactory } from 'd3-shape';
2
+ import type { StackOptions } from '../transforms/stack.js';
3
+ import type { ChannelAccessor, ConstantAccessor, CurveName, DataRow, LinkableMarkProps, RawValue } from '../types/index.js';
2
4
  declare function $$render<Datum extends DataRow>(): {
3
- props: Omit<Partial<{
4
- filter: import("../types/index.js").ConstantAccessor<boolean, Record<string | symbol, import("../types/data").RawValue>>;
5
+ props: Partial<{
6
+ filter: ConstantAccessor<boolean, Datum>;
5
7
  facet: "auto" | "include" | "exclude";
6
- fx: ChannelAccessor<Record<string | symbol, import("../types/data").RawValue>>;
7
- fy: ChannelAccessor<Record<string | symbol, import("../types/data").RawValue>>;
8
- dx: import("../types/index.js").ConstantAccessor<number, Record<string | symbol, import("../types/data").RawValue>>;
9
- dy: import("../types/index.js").ConstantAccessor<number, Record<string | symbol, import("../types/data").RawValue>>;
10
- dodgeX: import("../transforms/dodge").DodgeXOptions;
11
- dodgeY: import("../transforms/dodge").DodgeYOptions;
12
- fill: ChannelAccessor<Record<string | symbol, import("../types/data").RawValue>>;
13
- fillOpacity: import("../types/index.js").ConstantAccessor<number, Record<string | symbol, import("../types/data").RawValue>>;
14
- sort: ((a: import("../types/data").RawValue, b: import("../types/data").RawValue) => number) | {
8
+ fx: ChannelAccessor<Datum>;
9
+ fy: ChannelAccessor<Datum>;
10
+ dx: ConstantAccessor<number, Datum>;
11
+ dy: ConstantAccessor<number, Datum>;
12
+ dodgeX: import("../transforms/dodge.js").DodgeXOptions;
13
+ dodgeY: import("../transforms/dodge.js").DodgeYOptions;
14
+ fill: ChannelAccessor<Datum>;
15
+ fillOpacity: ConstantAccessor<number, Datum>;
16
+ fontFamily: ConstantAccessor<import("csstype").Property.FontFamily, Datum>;
17
+ fontSize: ConstantAccessor<number | "-moz-initial" | "inherit" | "initial" | "revert" | "revert-layer" | "unset" | "math" | (string & {}) | "large" | "medium" | "small" | "x-large" | "x-small" | "xx-large" | "xx-small" | "xxx-large" | "larger" | "smaller", Datum>;
18
+ fontStyle: ConstantAccessor<import("csstype").Property.FontStyle, Datum>;
19
+ fontVariant: ConstantAccessor<import("csstype").Property.FontVariant, Datum>;
20
+ fontWeight: ConstantAccessor<import("csstype").Property.FontWeight, Datum>;
21
+ letterSpacing: ConstantAccessor<import("csstype").Property.LetterSpacing<0 | (string & {})>, Datum>;
22
+ wordSpacing: ConstantAccessor<import("csstype").Property.WordSpacing<0 | (string & {})>, Datum>;
23
+ textAnchor: ConstantAccessor<import("csstype").Property.TextAnchor, Datum>;
24
+ textTransform: ConstantAccessor<import("csstype").Property.TextTransform, Datum>;
25
+ textDecoration: ConstantAccessor<import("csstype").Property.TextDecoration<0 | (string & {})>, Datum>;
26
+ sort: ((a: RawValue, b: RawValue) => number) | {
15
27
  channel: string;
16
28
  order?: "ascending" | "descending";
17
- } | import("../types/index.js").ConstantAccessor<import("../types/data").RawValue, Record<string | symbol, import("../types/data").RawValue>>;
18
- stroke: ChannelAccessor<Record<string | symbol, import("../types/data").RawValue>>;
19
- strokeWidth: import("../types/index.js").ConstantAccessor<number, Record<string | symbol, import("../types/data").RawValue>>;
20
- strokeOpacity: import("../types/index.js").ConstantAccessor<number, Record<string | symbol, import("../types/data").RawValue>>;
21
- strokeLinejoin: import("../types/index.js").ConstantAccessor<import("csstype").Property.StrokeLinejoin, Record<string | symbol, import("../types/data").RawValue>>;
22
- strokeLinecap: import("../types/index.js").ConstantAccessor<import("csstype").Property.StrokeLinecap, Record<string | symbol, import("../types/data").RawValue>>;
23
- strokeMiterlimit: import("../types/index.js").ConstantAccessor<number, Record<string | symbol, import("../types/data").RawValue>>;
24
- opacity: ChannelAccessor<Record<string | symbol, import("../types/data").RawValue>>;
25
- strokeDasharray: import("../types/index.js").ConstantAccessor<string, Record<string | symbol, import("../types/data").RawValue>>;
26
- strokeDashoffset: import("../types/index.js").ConstantAccessor<number, Record<string | symbol, import("../types/data").RawValue>>;
27
- mixBlendMode: import("../types/index.js").ConstantAccessor<import("csstype").Property.MixBlendMode, Record<string | symbol, import("../types/data").RawValue>>;
29
+ } | ConstantAccessor<RawValue, Datum>;
30
+ stroke: ChannelAccessor<Datum>;
31
+ strokeWidth: ConstantAccessor<number, Datum>;
32
+ strokeOpacity: ConstantAccessor<number, Datum>;
33
+ strokeLinejoin: ConstantAccessor<import("csstype").Property.StrokeLinejoin, Datum>;
34
+ strokeLinecap: ConstantAccessor<import("csstype").Property.StrokeLinecap, Datum>;
35
+ strokeMiterlimit: ConstantAccessor<number, Datum>;
36
+ opacity: ChannelAccessor<Datum>;
37
+ strokeDasharray: ConstantAccessor<string, Datum>;
38
+ strokeDashoffset: ConstantAccessor<number, Datum>;
39
+ blend: ConstantAccessor<import("csstype").Property.MixBlendMode, Datum>;
40
+ mixBlendMode: ConstantAccessor<import("csstype").Property.MixBlendMode, Datum>;
28
41
  clipPath: string;
29
42
  mask: string;
30
- imageFilter: import("../types/index.js").ConstantAccessor<string, Record<string | symbol, import("../types/data").RawValue>>;
31
- shapeRendering: import("../types/index.js").ConstantAccessor<import("csstype").Property.ShapeRendering, Record<string | symbol, import("../types/data").RawValue>>;
32
- paintOrder: import("../types/index.js").ConstantAccessor<string, Record<string | symbol, import("../types/data").RawValue>>;
33
- onclick: import("svelte/elements").MouseEventHandler<SVGPathElement>;
34
- ondblclick: import("svelte/elements").MouseEventHandler<SVGPathElement>;
35
- onmouseup: import("svelte/elements").MouseEventHandler<SVGPathElement>;
36
- onmousedown: import("svelte/elements").MouseEventHandler<SVGPathElement>;
37
- onmouseenter: import("svelte/elements").MouseEventHandler<SVGPathElement>;
38
- onmousemove: import("svelte/elements").MouseEventHandler<SVGPathElement>;
39
- onmouseleave: import("svelte/elements").MouseEventHandler<SVGPathElement>;
40
- onmouseout: import("svelte/elements").MouseEventHandler<SVGPathElement>;
41
- onmouseover: import("svelte/elements").MouseEventHandler<SVGPathElement>;
42
- onpointercancel: import("svelte/elements").MouseEventHandler<SVGPathElement>;
43
- onpointerdown: import("svelte/elements").MouseEventHandler<SVGPathElement>;
44
- onpointerup: import("svelte/elements").MouseEventHandler<SVGPathElement>;
45
- onpointerenter: import("svelte/elements").MouseEventHandler<SVGPathElement>;
46
- onpointerleave: import("svelte/elements").MouseEventHandler<SVGPathElement>;
47
- onpointermove: import("svelte/elements").MouseEventHandler<SVGPathElement>;
48
- onpointerover: import("svelte/elements").MouseEventHandler<SVGPathElement>;
49
- onpointerout: import("svelte/elements").MouseEventHandler<SVGPathElement>;
50
- ondrag: import("svelte/elements").MouseEventHandler<SVGPathElement>;
51
- ondrop: import("svelte/elements").MouseEventHandler<SVGPathElement>;
52
- ondragstart: import("svelte/elements").MouseEventHandler<SVGPathElement>;
53
- ondragenter: import("svelte/elements").MouseEventHandler<SVGPathElement>;
54
- ondragleave: import("svelte/elements").MouseEventHandler<SVGPathElement>;
55
- ondragover: import("svelte/elements").MouseEventHandler<SVGPathElement>;
56
- ondragend: import("svelte/elements").MouseEventHandler<SVGPathElement>;
57
- ontouchstart: import("svelte/elements").MouseEventHandler<SVGPathElement>;
58
- ontouchmove: import("svelte/elements").MouseEventHandler<SVGPathElement>;
59
- ontouchend: import("svelte/elements").MouseEventHandler<SVGPathElement>;
60
- ontouchcancel: import("svelte/elements").MouseEventHandler<SVGPathElement>;
61
- oncontextmenu: import("svelte/elements").MouseEventHandler<SVGPathElement>;
62
- onwheel: import("svelte/elements").MouseEventHandler<SVGPathElement>;
43
+ imageFilter: ConstantAccessor<string, Datum>;
44
+ shapeRendering: ConstantAccessor<import("csstype").Property.ShapeRendering, Datum>;
45
+ paintOrder: ConstantAccessor<string, Datum>;
46
+ onclick: (event: Event & {
47
+ currentTarget: SVGPathElement;
48
+ }, datum: Datum, index: number) => void;
49
+ ondblclick: (event: Event & {
50
+ currentTarget: SVGPathElement;
51
+ }, datum: Datum, index: number) => void;
52
+ onmouseup: (event: Event & {
53
+ currentTarget: SVGPathElement;
54
+ }, datum: Datum, index: number) => void;
55
+ onmousedown: (event: Event & {
56
+ currentTarget: SVGPathElement;
57
+ }, datum: Datum, index: number) => void;
58
+ onmouseenter: (event: Event & {
59
+ currentTarget: SVGPathElement;
60
+ }, datum: Datum, index: number) => void;
61
+ onmousemove: (event: Event & {
62
+ currentTarget: SVGPathElement;
63
+ }, datum: Datum, index: number) => void;
64
+ onmouseleave: (event: Event & {
65
+ currentTarget: SVGPathElement;
66
+ }, datum: Datum, index: number) => void;
67
+ onmouseout: (event: Event & {
68
+ currentTarget: SVGPathElement;
69
+ }, datum: Datum, index: number) => void;
70
+ onmouseover: (event: Event & {
71
+ currentTarget: SVGPathElement;
72
+ }, datum: Datum, index: number) => void;
73
+ onpointercancel: (event: Event & {
74
+ currentTarget: SVGPathElement;
75
+ }, datum: Datum, index: number) => void;
76
+ onpointerdown: (event: Event & {
77
+ currentTarget: SVGPathElement;
78
+ }, datum: Datum, index: number) => void;
79
+ onpointerup: (event: Event & {
80
+ currentTarget: SVGPathElement;
81
+ }, datum: Datum, index: number) => void;
82
+ onpointerenter: (event: Event & {
83
+ currentTarget: SVGPathElement;
84
+ }, datum: Datum, index: number) => void;
85
+ onpointerleave: (event: Event & {
86
+ currentTarget: SVGPathElement;
87
+ }, datum: Datum, index: number) => void;
88
+ onpointermove: (event: Event & {
89
+ currentTarget: SVGPathElement;
90
+ }, datum: Datum, index: number) => void;
91
+ onpointerover: (event: Event & {
92
+ currentTarget: SVGPathElement;
93
+ }, datum: Datum, index: number) => void;
94
+ onpointerout: (event: Event & {
95
+ currentTarget: SVGPathElement;
96
+ }, datum: Datum, index: number) => void;
97
+ ondrag: (event: Event & {
98
+ currentTarget: SVGPathElement;
99
+ }, datum: Datum, index: number) => void;
100
+ ondrop: (event: Event & {
101
+ currentTarget: SVGPathElement;
102
+ }, datum: Datum, index: number) => void;
103
+ ondragstart: (event: Event & {
104
+ currentTarget: SVGPathElement;
105
+ }, datum: Datum, index: number) => void;
106
+ ondragenter: (event: Event & {
107
+ currentTarget: SVGPathElement;
108
+ }, datum: Datum, index: number) => void;
109
+ ondragleave: (event: Event & {
110
+ currentTarget: SVGPathElement;
111
+ }, datum: Datum, index: number) => void;
112
+ ondragover: (event: Event & {
113
+ currentTarget: SVGPathElement;
114
+ }, datum: Datum, index: number) => void;
115
+ ondragend: (event: Event & {
116
+ currentTarget: SVGPathElement;
117
+ }, datum: Datum, index: number) => void;
118
+ ontouchstart: (event: Event & {
119
+ currentTarget: SVGPathElement;
120
+ }, datum: Datum, index: number) => void;
121
+ ontouchmove: (event: Event & {
122
+ currentTarget: SVGPathElement;
123
+ }, datum: Datum, index: number) => void;
124
+ ontouchend: (event: Event & {
125
+ currentTarget: SVGPathElement;
126
+ }, datum: Datum, index: number) => void;
127
+ ontouchcancel: (event: Event & {
128
+ currentTarget: SVGPathElement;
129
+ }, datum: Datum, index: number) => void;
130
+ oncontextmenu: (event: Event & {
131
+ currentTarget: SVGPathElement;
132
+ }, datum: Datum, index: number) => void;
133
+ onwheel: (event: Event & {
134
+ currentTarget: SVGPathElement;
135
+ }, datum: Datum, index: number) => void;
63
136
  class: string;
64
137
  style: string;
65
- cursor: import("../types/index.js").ConstantAccessor<import("csstype").Property.Cursor, Record<string | symbol, import("../types/data").RawValue>>;
66
- }> & import("../types/mark").LinkableMarkProps<Record<string | symbol, import("../types/data").RawValue>> & {
67
- data: Record<string | symbol, import("../types/data").RawValue>[];
68
- x1?: ChannelAccessor<Record<string | symbol, import("../types/data").RawValue>>;
69
- x2?: ChannelAccessor<Record<string | symbol, import("../types/data").RawValue>>;
70
- y1?: ChannelAccessor<Record<string | symbol, import("../types/data").RawValue>>;
71
- y2?: ChannelAccessor<Record<string | symbol, import("../types/data").RawValue>>;
72
- z?: ChannelAccessor<Record<string | symbol, import("../types/data").RawValue>>;
73
- curve?: import("../types/index.js").CurveName | import("d3-shape").CurveFactory;
138
+ cursor: ConstantAccessor<import("csstype").Property.Cursor, Datum>;
139
+ title: ConstantAccessor<string, Datum>;
140
+ }> & LinkableMarkProps<Datum> & {
141
+ /** the input data array; each element becomes one point in the area */
142
+ data?: Datum[];
143
+ /** the horizontal position channel */
144
+ x?: ChannelAccessor<Datum>;
145
+ /** the vertical position channel. Implicit stacking is used to derive y1 and y2 */
146
+ y?: ChannelAccessor<Datum>;
147
+ /** the vertical position channel of the lower end of bands */
148
+ y1?: ChannelAccessor<Datum>;
149
+ /** the vertical position channel of the upper end of bands */
150
+ y2?: ChannelAccessor<Datum>;
151
+ /** the series channel; data is grouped into separate areas by unique z values */
152
+ z?: ChannelAccessor<Datum>;
153
+ /** the curve interpolation method for connecting data points */
154
+ curve?: CurveName | CurveFactory;
155
+ /** the tension parameter for cardinal or Catmull-Rom curve interpolation */
74
156
  tension?: number;
75
- sort?: import("../types/index.js").ConstantAccessor<import("../types/data").RawValue> | {
157
+ /** controls the order of data points before rendering */
158
+ sort?: ConstantAccessor<RawValue, Datum> | {
76
159
  channel: "stroke" | "fill";
77
160
  };
78
- stack?: Partial<import("../transforms/stack.js").StackOptions>;
161
+ /** options for stacking area data values */
162
+ stack?: Partial<StackOptions>;
163
+ /** if true, renders using Canvas instead of SVG */
79
164
  canvas?: boolean;
80
- areaClass?: import("../types/index.js").ConstantAccessor<string, Record<string | symbol, import("../types/data").RawValue>>;
81
- }, "x1" | "x2"> & {
82
- x?: ChannelAccessor<Datum>;
83
- y?: ChannelAccessor<Datum>;
165
+ /** CSS class name(s) to apply to individual area path elements */
166
+ areaClass?: ConstantAccessor<string, Datum>;
84
167
  };
85
168
  exports: {};
86
169
  bindings: "";
@@ -1,15 +1,21 @@
1
1
  <!-- @component
2
2
  Creates arrows with customizable heads, angles, and bending
3
3
  -->
4
- <script lang="ts" generics="Datum extends DataRecord">
4
+ <script lang="ts" generics="Datum = DataRecord | GeoJSON.GeoJsonObject">
5
5
  interface ArrowMarkProps extends Omit<BaseMarkProps<Datum>, 'fill' | 'fillOpacity'> {
6
+ /** the input data array; each element becomes one arrow */
6
7
  data: Datum[];
8
+ /** controls the order of data before rendering */
7
9
  sort?:
8
10
  | ConstantAccessor<RawValue>
9
11
  | { channel: 'stroke' | 'fill' | 'x1' | 'y1' | 'x2' | 'y2' };
12
+ /** the starting horizontal position channel */
10
13
  x1: ChannelAccessor<Datum>;
14
+ /** the starting vertical position channel */
11
15
  y1: ChannelAccessor<Datum>;
16
+ /** the ending horizontal position channel */
12
17
  x2: ChannelAccessor<Datum>;
18
+ /** the ending vertical position channel */
13
19
  y2: ChannelAccessor<Datum>;
14
20
  /**
15
21
  * the bend angle, in degrees; defaults to 0°; true for 22.5°
@@ -35,6 +41,7 @@
35
41
  * shorthand for the two insets
36
42
  */
37
43
  inset?: ConstantAccessor<number, Datum>;
44
+ /** controls the sweep direction of the arrow arc; 1 or -1 */
38
45
  sweep?: SweepOption;
39
46
  }
40
47
  import type {
@@ -42,13 +49,17 @@
42
49
  BaseMarkProps,
43
50
  ConstantAccessor,
44
51
  ChannelAccessor,
45
- RawValue,
46
- PlotDefaults
52
+ RawValue
47
53
  } from '../types/index.js';
48
54
  import { resolveProp, resolveStyles } from '../helpers/resolve.js';
49
55
  import { coalesce, maybeNumber } from '../helpers/index.js';
50
56
  import Mark from '../Mark.svelte';
51
- import { arrowPath, maybeSweep, type SweepOption } from '../helpers/arrowPath.js';
57
+ import {
58
+ arrowPath,
59
+ maybeSweep,
60
+ type SweepFunc,
61
+ type SweepOption
62
+ } from '../helpers/arrowPath.js';
52
63
  import { replaceChannels } from '../transforms/rename.js';
53
64
  import { addEventHandlers } from './helpers/events.js';
54
65
  import GroupMultiple from './helpers/GroupMultiple.svelte';
@@ -80,10 +91,10 @@
80
91
  const args: ArrowMarkProps = $derived(
81
92
  sort(
82
93
  replaceChannels(
83
- { data: indexData(data), ...options },
94
+ { data: indexData(data as object[]), ...options },
84
95
  { y: ['y1', 'y2'], x: ['x1', 'x2'] }
85
96
  )
86
- )
97
+ ) as unknown as ArrowMarkProps
87
98
  );
88
99
  </script>
89
100
 
@@ -91,29 +102,37 @@
91
102
  type="arrow"
92
103
  required={['x1', 'x2', 'y1', 'y2']}
93
104
  channels={['x1', 'y1', 'x2', 'y2', 'opacity', 'stroke', 'strokeOpacity']}
94
- {...args}>
105
+ {...args as any}>
95
106
  {#snippet children({ usedScales, scaledData })}
96
- {@const sweep = maybeSweep(args.sweep)}
107
+ {@const sweep = maybeSweep(args.sweep) as SweepFunc}
97
108
  <GroupMultiple class="arrow" length={scaledData.length}>
98
109
  {#each scaledData as d, i (i)}
99
110
  {#if d.valid}
100
- {@const inset = resolveProp(args.inset, d.datum, 0)}
101
- {@const insetStart = resolveProp(args.insetStart, d.datum)}
102
- {@const insetEnd = resolveProp(args.insetEnd, d.datum)}
103
- {@const headAngle = resolveProp(args.headAngle, d.datum)}
104
- {@const headLength = resolveProp(args.headLength, d.datum)}
105
- {@const bend = resolveProp(args.bend, d.datum, 0)}
106
- {@const strokeWidth = resolveProp(args.strokeWidth, d.datum, 1)}
111
+ {@const datum = d.datum as unknown as Datum}
112
+ {@const inset = resolveProp(args.inset, datum, 0)}
113
+ {@const insetStart = resolveProp(args.insetStart, datum)}
114
+ {@const insetEnd = resolveProp(args.insetEnd, datum)}
115
+ {@const headAngle = (resolveProp(args.headAngle, datum, 60) ?? 60) as number}
116
+ {@const headLength = (resolveProp(args.headLength, datum, 8) ?? 8) as number}
117
+ {@const bendVal =
118
+ args.bend === true
119
+ ? 22.5
120
+ : (resolveProp(
121
+ args.bend as ConstantAccessor<number, Datum>,
122
+ datum,
123
+ 0
124
+ ) ?? 0)}
125
+ {@const strokeWidth = (resolveProp(args.strokeWidth, datum, 1) ?? 1) as number}
107
126
  {@const arrPath = arrowPath(
108
- d.x1,
109
- d.y1,
110
- d.x2,
111
- d.y2,
112
- maybeNumber(coalesce(insetStart, inset)),
113
- maybeNumber(coalesce(insetEnd, inset)),
127
+ d.x1 ?? 0,
128
+ d.y1 ?? 0,
129
+ d.x2 ?? 0,
130
+ d.y2 ?? 0,
131
+ maybeNumber(coalesce(insetStart, inset)) ?? 0,
132
+ maybeNumber(coalesce(insetEnd, inset)) ?? 0,
114
133
  headAngle,
115
134
  headLength,
116
- bend === true ? 22.5 : bend === false ? 0 : bend,
135
+ bendVal,
117
136
  strokeWidth,
118
137
  sweep
119
138
  )}
@@ -133,7 +152,7 @@
133
152
  class={[className]}
134
153
  {@attach addEventHandlers({
135
154
  plot,
136
- options,
155
+ options: options as any,
137
156
  datum: d?.datum
138
157
  })}>
139
158
  {#if options.onmouseenter || options.onclick}
@@ -1,6 +1,6 @@
1
1
  import type { DataRecord, ConstantAccessor, ChannelAccessor, RawValue } from '../types/index.js';
2
2
  import { type SweepOption } from '../helpers/arrowPath.js';
3
- declare function $$render<Datum extends DataRecord>(): {
3
+ declare function $$render<Datum = DataRecord | GeoJSON.GeoJsonObject>(): {
4
4
  props: Omit<Partial<{
5
5
  filter: ConstantAccessor<boolean, Datum>;
6
6
  facet: "auto" | "include" | "exclude";
@@ -12,6 +12,16 @@ declare function $$render<Datum extends DataRecord>(): {
12
12
  dodgeY: import("../transforms/dodge.js").DodgeYOptions;
13
13
  fill: ChannelAccessor<Datum>;
14
14
  fillOpacity: ConstantAccessor<number, Datum>;
15
+ fontFamily: ConstantAccessor<import("csstype").Property.FontFamily, Datum>;
16
+ fontSize: ConstantAccessor<number | "-moz-initial" | "inherit" | "initial" | "revert" | "revert-layer" | "unset" | "math" | (string & {}) | "large" | "medium" | "small" | "x-large" | "x-small" | "xx-large" | "xx-small" | "xxx-large" | "larger" | "smaller", Datum>;
17
+ fontStyle: ConstantAccessor<import("csstype").Property.FontStyle, Datum>;
18
+ fontVariant: ConstantAccessor<import("csstype").Property.FontVariant, Datum>;
19
+ fontWeight: ConstantAccessor<import("csstype").Property.FontWeight, Datum>;
20
+ letterSpacing: ConstantAccessor<import("csstype").Property.LetterSpacing<0 | (string & {})>, Datum>;
21
+ wordSpacing: ConstantAccessor<import("csstype").Property.WordSpacing<0 | (string & {})>, Datum>;
22
+ textAnchor: ConstantAccessor<import("csstype").Property.TextAnchor, Datum>;
23
+ textTransform: ConstantAccessor<import("csstype").Property.TextTransform, Datum>;
24
+ textDecoration: ConstantAccessor<import("csstype").Property.TextDecoration<0 | (string & {})>, Datum>;
15
25
  sort: ((a: RawValue, b: RawValue) => number) | {
16
26
  channel: string;
17
27
  order?: "ascending" | "descending";
@@ -25,53 +35,121 @@ declare function $$render<Datum extends DataRecord>(): {
25
35
  opacity: ChannelAccessor<Datum>;
26
36
  strokeDasharray: ConstantAccessor<string, Datum>;
27
37
  strokeDashoffset: ConstantAccessor<number, Datum>;
38
+ blend: ConstantAccessor<import("csstype").Property.MixBlendMode, Datum>;
28
39
  mixBlendMode: ConstantAccessor<import("csstype").Property.MixBlendMode, Datum>;
29
40
  clipPath: string;
30
41
  mask: string;
31
42
  imageFilter: ConstantAccessor<string, Datum>;
32
43
  shapeRendering: ConstantAccessor<import("csstype").Property.ShapeRendering, Datum>;
33
44
  paintOrder: ConstantAccessor<string, Datum>;
34
- onclick: import("svelte/elements").MouseEventHandler<SVGPathElement>;
35
- ondblclick: import("svelte/elements").MouseEventHandler<SVGPathElement>;
36
- onmouseup: import("svelte/elements").MouseEventHandler<SVGPathElement>;
37
- onmousedown: import("svelte/elements").MouseEventHandler<SVGPathElement>;
38
- onmouseenter: import("svelte/elements").MouseEventHandler<SVGPathElement>;
39
- onmousemove: import("svelte/elements").MouseEventHandler<SVGPathElement>;
40
- onmouseleave: import("svelte/elements").MouseEventHandler<SVGPathElement>;
41
- onmouseout: import("svelte/elements").MouseEventHandler<SVGPathElement>;
42
- onmouseover: import("svelte/elements").MouseEventHandler<SVGPathElement>;
43
- onpointercancel: import("svelte/elements").MouseEventHandler<SVGPathElement>;
44
- onpointerdown: import("svelte/elements").MouseEventHandler<SVGPathElement>;
45
- onpointerup: import("svelte/elements").MouseEventHandler<SVGPathElement>;
46
- onpointerenter: import("svelte/elements").MouseEventHandler<SVGPathElement>;
47
- onpointerleave: import("svelte/elements").MouseEventHandler<SVGPathElement>;
48
- onpointermove: import("svelte/elements").MouseEventHandler<SVGPathElement>;
49
- onpointerover: import("svelte/elements").MouseEventHandler<SVGPathElement>;
50
- onpointerout: import("svelte/elements").MouseEventHandler<SVGPathElement>;
51
- ondrag: import("svelte/elements").MouseEventHandler<SVGPathElement>;
52
- ondrop: import("svelte/elements").MouseEventHandler<SVGPathElement>;
53
- ondragstart: import("svelte/elements").MouseEventHandler<SVGPathElement>;
54
- ondragenter: import("svelte/elements").MouseEventHandler<SVGPathElement>;
55
- ondragleave: import("svelte/elements").MouseEventHandler<SVGPathElement>;
56
- ondragover: import("svelte/elements").MouseEventHandler<SVGPathElement>;
57
- ondragend: import("svelte/elements").MouseEventHandler<SVGPathElement>;
58
- ontouchstart: import("svelte/elements").MouseEventHandler<SVGPathElement>;
59
- ontouchmove: import("svelte/elements").MouseEventHandler<SVGPathElement>;
60
- ontouchend: import("svelte/elements").MouseEventHandler<SVGPathElement>;
61
- ontouchcancel: import("svelte/elements").MouseEventHandler<SVGPathElement>;
62
- oncontextmenu: import("svelte/elements").MouseEventHandler<SVGPathElement>;
63
- onwheel: import("svelte/elements").MouseEventHandler<SVGPathElement>;
45
+ onclick: (event: Event & {
46
+ currentTarget: SVGPathElement;
47
+ }, datum: Datum, index: number) => void;
48
+ ondblclick: (event: Event & {
49
+ currentTarget: SVGPathElement;
50
+ }, datum: Datum, index: number) => void;
51
+ onmouseup: (event: Event & {
52
+ currentTarget: SVGPathElement;
53
+ }, datum: Datum, index: number) => void;
54
+ onmousedown: (event: Event & {
55
+ currentTarget: SVGPathElement;
56
+ }, datum: Datum, index: number) => void;
57
+ onmouseenter: (event: Event & {
58
+ currentTarget: SVGPathElement;
59
+ }, datum: Datum, index: number) => void;
60
+ onmousemove: (event: Event & {
61
+ currentTarget: SVGPathElement;
62
+ }, datum: Datum, index: number) => void;
63
+ onmouseleave: (event: Event & {
64
+ currentTarget: SVGPathElement;
65
+ }, datum: Datum, index: number) => void;
66
+ onmouseout: (event: Event & {
67
+ currentTarget: SVGPathElement;
68
+ }, datum: Datum, index: number) => void;
69
+ onmouseover: (event: Event & {
70
+ currentTarget: SVGPathElement;
71
+ }, datum: Datum, index: number) => void;
72
+ onpointercancel: (event: Event & {
73
+ currentTarget: SVGPathElement;
74
+ }, datum: Datum, index: number) => void;
75
+ onpointerdown: (event: Event & {
76
+ currentTarget: SVGPathElement;
77
+ }, datum: Datum, index: number) => void;
78
+ onpointerup: (event: Event & {
79
+ currentTarget: SVGPathElement;
80
+ }, datum: Datum, index: number) => void;
81
+ onpointerenter: (event: Event & {
82
+ currentTarget: SVGPathElement;
83
+ }, datum: Datum, index: number) => void;
84
+ onpointerleave: (event: Event & {
85
+ currentTarget: SVGPathElement;
86
+ }, datum: Datum, index: number) => void;
87
+ onpointermove: (event: Event & {
88
+ currentTarget: SVGPathElement;
89
+ }, datum: Datum, index: number) => void;
90
+ onpointerover: (event: Event & {
91
+ currentTarget: SVGPathElement;
92
+ }, datum: Datum, index: number) => void;
93
+ onpointerout: (event: Event & {
94
+ currentTarget: SVGPathElement;
95
+ }, datum: Datum, index: number) => void;
96
+ ondrag: (event: Event & {
97
+ currentTarget: SVGPathElement;
98
+ }, datum: Datum, index: number) => void;
99
+ ondrop: (event: Event & {
100
+ currentTarget: SVGPathElement;
101
+ }, datum: Datum, index: number) => void;
102
+ ondragstart: (event: Event & {
103
+ currentTarget: SVGPathElement;
104
+ }, datum: Datum, index: number) => void;
105
+ ondragenter: (event: Event & {
106
+ currentTarget: SVGPathElement;
107
+ }, datum: Datum, index: number) => void;
108
+ ondragleave: (event: Event & {
109
+ currentTarget: SVGPathElement;
110
+ }, datum: Datum, index: number) => void;
111
+ ondragover: (event: Event & {
112
+ currentTarget: SVGPathElement;
113
+ }, datum: Datum, index: number) => void;
114
+ ondragend: (event: Event & {
115
+ currentTarget: SVGPathElement;
116
+ }, datum: Datum, index: number) => void;
117
+ ontouchstart: (event: Event & {
118
+ currentTarget: SVGPathElement;
119
+ }, datum: Datum, index: number) => void;
120
+ ontouchmove: (event: Event & {
121
+ currentTarget: SVGPathElement;
122
+ }, datum: Datum, index: number) => void;
123
+ ontouchend: (event: Event & {
124
+ currentTarget: SVGPathElement;
125
+ }, datum: Datum, index: number) => void;
126
+ ontouchcancel: (event: Event & {
127
+ currentTarget: SVGPathElement;
128
+ }, datum: Datum, index: number) => void;
129
+ oncontextmenu: (event: Event & {
130
+ currentTarget: SVGPathElement;
131
+ }, datum: Datum, index: number) => void;
132
+ onwheel: (event: Event & {
133
+ currentTarget: SVGPathElement;
134
+ }, datum: Datum, index: number) => void;
64
135
  class: string;
65
136
  style: string;
66
137
  cursor: ConstantAccessor<import("csstype").Property.Cursor, Datum>;
138
+ title: ConstantAccessor<string, Datum>;
67
139
  }>, "fill" | "fillOpacity"> & {
140
+ /** the input data array; each element becomes one arrow */
68
141
  data: Datum[];
142
+ /** controls the order of data before rendering */
69
143
  sort?: ConstantAccessor<RawValue> | {
70
144
  channel: "stroke" | "fill" | "x1" | "y1" | "x2" | "y2";
71
145
  };
146
+ /** the starting horizontal position channel */
72
147
  x1: ChannelAccessor<Datum>;
148
+ /** the starting vertical position channel */
73
149
  y1: ChannelAccessor<Datum>;
150
+ /** the ending horizontal position channel */
74
151
  x2: ChannelAccessor<Datum>;
152
+ /** the ending vertical position channel */
75
153
  y2: ChannelAccessor<Datum>;
76
154
  /**
77
155
  * the bend angle, in degrees; defaults to 0°; true for 22.5°
@@ -97,6 +175,7 @@ declare function $$render<Datum extends DataRecord>(): {
97
175
  * shorthand for the two insets
98
176
  */
99
177
  inset?: ConstantAccessor<number, Datum>;
178
+ /** controls the sweep direction of the arrow arc; 1 or -1 */
100
179
  sweep?: SweepOption;
101
180
  };
102
181
  exports: {};
@@ -104,7 +183,7 @@ declare function $$render<Datum extends DataRecord>(): {
104
183
  slots: {};
105
184
  events: {};
106
185
  };
107
- declare class __sveltets_Render<Datum extends DataRecord> {
186
+ declare class __sveltets_Render<Datum = DataRecord | GeoJSON.GeoJsonObject> {
108
187
  props(): ReturnType<typeof $$render<Datum>>['props'];
109
188
  events(): ReturnType<typeof $$render<Datum>>['events'];
110
189
  slots(): ReturnType<typeof $$render<Datum>>['slots'];
@@ -112,13 +191,13 @@ declare class __sveltets_Render<Datum extends DataRecord> {
112
191
  exports(): {};
113
192
  }
114
193
  interface $$IsomorphicComponent {
115
- new <Datum extends DataRecord>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<Datum>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<Datum>['props']>, ReturnType<__sveltets_Render<Datum>['events']>, ReturnType<__sveltets_Render<Datum>['slots']>> & {
194
+ new <Datum = DataRecord | GeoJSON.GeoJsonObject>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<Datum>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<Datum>['props']>, ReturnType<__sveltets_Render<Datum>['events']>, ReturnType<__sveltets_Render<Datum>['slots']>> & {
116
195
  $$bindings?: ReturnType<__sveltets_Render<Datum>['bindings']>;
117
196
  } & ReturnType<__sveltets_Render<Datum>['exports']>;
118
- <Datum extends DataRecord>(internal: unknown, props: ReturnType<__sveltets_Render<Datum>['props']> & {}): ReturnType<__sveltets_Render<Datum>['exports']>;
197
+ <Datum = DataRecord | GeoJSON.GeoJsonObject>(internal: unknown, props: ReturnType<__sveltets_Render<Datum>['props']> & {}): ReturnType<__sveltets_Render<Datum>['exports']>;
119
198
  z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
120
199
  }
121
200
  /** Creates arrows with customizable heads, angles, and bending */
122
201
  declare const Arrow: $$IsomorphicComponent;
123
- type Arrow<Datum extends DataRecord> = InstanceType<typeof Arrow<Datum>>;
202
+ type Arrow<Datum = DataRecord | GeoJSON.GeoJsonObject> = InstanceType<typeof Arrow<Datum>>;
124
203
  export default Arrow;