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,4 +1,4 @@
1
- import { type CurveFactory } from 'd3-shape';
1
+ import { type Area, type CurveFactory } from 'd3-shape';
2
2
  import type { CurveName, DataRecord, ConstantAccessor, ChannelAccessor, LinkableMarkProps, RawValue } from '../types/index.js';
3
3
  import type { StackOptions } from '../transforms/stack.js';
4
4
  declare function $$render<Datum extends DataRecord>(): {
@@ -9,10 +9,20 @@ declare function $$render<Datum extends DataRecord>(): {
9
9
  fy: ChannelAccessor<Datum>;
10
10
  dx: ConstantAccessor<number, Datum>;
11
11
  dy: ConstantAccessor<number, Datum>;
12
- dodgeX: import("../transforms/dodge").DodgeXOptions;
13
- dodgeY: import("../transforms/dodge").DodgeYOptions;
12
+ dodgeX: import("../transforms/dodge.js").DodgeXOptions;
13
+ dodgeY: import("../transforms/dodge.js").DodgeYOptions;
14
14
  fill: ChannelAccessor<Datum>;
15
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>;
16
26
  sort: ((a: RawValue, b: RawValue) => number) | {
17
27
  channel: string;
18
28
  order?: "ascending" | "descending";
@@ -26,59 +36,133 @@ declare function $$render<Datum extends DataRecord>(): {
26
36
  opacity: ChannelAccessor<Datum>;
27
37
  strokeDasharray: ConstantAccessor<string, Datum>;
28
38
  strokeDashoffset: ConstantAccessor<number, Datum>;
39
+ blend: ConstantAccessor<import("csstype").Property.MixBlendMode, Datum>;
29
40
  mixBlendMode: ConstantAccessor<import("csstype").Property.MixBlendMode, Datum>;
30
41
  clipPath: string;
31
42
  mask: string;
32
43
  imageFilter: ConstantAccessor<string, Datum>;
33
44
  shapeRendering: ConstantAccessor<import("csstype").Property.ShapeRendering, Datum>;
34
45
  paintOrder: ConstantAccessor<string, Datum>;
35
- onclick: import("svelte/elements").MouseEventHandler<SVGPathElement>;
36
- ondblclick: import("svelte/elements").MouseEventHandler<SVGPathElement>;
37
- onmouseup: import("svelte/elements").MouseEventHandler<SVGPathElement>;
38
- onmousedown: import("svelte/elements").MouseEventHandler<SVGPathElement>;
39
- onmouseenter: import("svelte/elements").MouseEventHandler<SVGPathElement>;
40
- onmousemove: import("svelte/elements").MouseEventHandler<SVGPathElement>;
41
- onmouseleave: import("svelte/elements").MouseEventHandler<SVGPathElement>;
42
- onmouseout: import("svelte/elements").MouseEventHandler<SVGPathElement>;
43
- onmouseover: import("svelte/elements").MouseEventHandler<SVGPathElement>;
44
- onpointercancel: import("svelte/elements").MouseEventHandler<SVGPathElement>;
45
- onpointerdown: import("svelte/elements").MouseEventHandler<SVGPathElement>;
46
- onpointerup: import("svelte/elements").MouseEventHandler<SVGPathElement>;
47
- onpointerenter: import("svelte/elements").MouseEventHandler<SVGPathElement>;
48
- onpointerleave: import("svelte/elements").MouseEventHandler<SVGPathElement>;
49
- onpointermove: import("svelte/elements").MouseEventHandler<SVGPathElement>;
50
- onpointerover: import("svelte/elements").MouseEventHandler<SVGPathElement>;
51
- onpointerout: import("svelte/elements").MouseEventHandler<SVGPathElement>;
52
- ondrag: import("svelte/elements").MouseEventHandler<SVGPathElement>;
53
- ondrop: import("svelte/elements").MouseEventHandler<SVGPathElement>;
54
- ondragstart: import("svelte/elements").MouseEventHandler<SVGPathElement>;
55
- ondragenter: import("svelte/elements").MouseEventHandler<SVGPathElement>;
56
- ondragleave: import("svelte/elements").MouseEventHandler<SVGPathElement>;
57
- ondragover: import("svelte/elements").MouseEventHandler<SVGPathElement>;
58
- ondragend: import("svelte/elements").MouseEventHandler<SVGPathElement>;
59
- ontouchstart: import("svelte/elements").MouseEventHandler<SVGPathElement>;
60
- ontouchmove: import("svelte/elements").MouseEventHandler<SVGPathElement>;
61
- ontouchend: import("svelte/elements").MouseEventHandler<SVGPathElement>;
62
- ontouchcancel: import("svelte/elements").MouseEventHandler<SVGPathElement>;
63
- oncontextmenu: import("svelte/elements").MouseEventHandler<SVGPathElement>;
64
- onwheel: import("svelte/elements").MouseEventHandler<SVGPathElement>;
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;
65
136
  class: string;
66
137
  style: string;
67
138
  cursor: ConstantAccessor<import("csstype").Property.Cursor, Datum>;
139
+ title: ConstantAccessor<string, Datum>;
68
140
  }> & LinkableMarkProps<Datum> & {
69
- data: Datum[];
141
+ /** the input data array; each element becomes one point in the area */
142
+ data?: Datum[];
143
+ /** the starting horizontal position channel for the area baseline */
70
144
  x1?: ChannelAccessor<Datum>;
145
+ /** the ending horizontal position channel for the area topline */
71
146
  x2?: ChannelAccessor<Datum>;
147
+ /** the starting vertical position channel for the area baseline */
72
148
  y1?: ChannelAccessor<Datum>;
149
+ /** the ending vertical position channel for the area topline */
73
150
  y2?: ChannelAccessor<Datum>;
151
+ /** the series channel; data is grouped into separate areas by unique z values */
74
152
  z?: ChannelAccessor<Datum>;
153
+ /** the curve interpolation method for connecting data points */
75
154
  curve?: CurveName | CurveFactory;
155
+ /** the tension parameter for cardinal or Catmull-Rom curve interpolation */
76
156
  tension?: number;
157
+ /** controls the order of data points before rendering */
77
158
  sort?: ConstantAccessor<RawValue> | {
78
159
  channel: "stroke" | "fill";
79
160
  };
161
+ /** options for stacking area data values */
80
162
  stack?: Partial<StackOptions>;
163
+ /** if true, renders using Canvas instead of SVG */
81
164
  canvas?: boolean;
165
+ /** CSS class name(s) to apply to individual area path elements */
82
166
  areaClass?: ConstantAccessor<string, Datum>;
83
167
  };
84
168
  exports: {};
@@ -3,33 +3,67 @@
3
3
  stacked horizontally if just the x channel is defined.
4
4
  -->
5
5
  <script lang="ts" generics="Datum extends DataRow">
6
- interface AreaXMarkProps extends Omit<ComponentProps<typeof Area>, 'y1' | 'y2'> {
6
+ interface AreaXMarkProps extends BaseMarkProps<Datum>, LinkableMarkProps<Datum> {
7
+ /** the input data array; each element becomes one point in the area */
8
+ data?: Datum[];
9
+ /** the horizontal position channel, implicit stacking is used to derive x1 and x2 channels */
7
10
  x?: ChannelAccessor<Datum>;
11
+ /** the horizontal position channel of the lower end of bands */
12
+ x1?: ChannelAccessor<Datum>;
13
+ /** the horizontal position channel of the upper end of bands */
14
+ x2?: ChannelAccessor<Datum>;
15
+ /** the vertical position channel */
8
16
  y?: ChannelAccessor<Datum>;
17
+ /** the series channel; data is grouped into separate areas by unique z values */
18
+ z?: ChannelAccessor<Datum>;
19
+ /** the curve interpolation method for connecting data points */
20
+ curve?: CurveName | CurveFactory;
21
+ /** the tension parameter for cardinal or Catmull-Rom curve interpolation */
22
+ tension?: number;
23
+ /** controls the order of data points before rendering */
24
+ sort?: ConstantAccessor<RawValue, Datum> | { channel: 'stroke' | 'fill' };
25
+ /** options for stacking area data values */
26
+ stack?: Partial<StackOptions>;
27
+ /** if true, renders using Canvas instead of SVG */
28
+ canvas?: boolean;
29
+ /** CSS class name(s) to apply to individual area path elements */
30
+ areaClass?: ConstantAccessor<string, Datum>;
9
31
  }
10
32
  import Area from './Area.svelte';
11
33
  import { renameChannels } from '../transforms/rename.js';
12
34
  import { stackX } from '../transforms/stack.js';
13
35
  import { recordizeX } from '../transforms/recordize.js';
14
- import type { ChannelAccessor, DataRow } from '../types/index.js';
15
- import { type ComponentProps } from 'svelte';
36
+ import type { CurveFactory } from 'd3-shape';
37
+ import type { StackOptions } from '../transforms/stack.js';
38
+ import type {
39
+ BaseMarkProps,
40
+ ChannelAccessor,
41
+ ConstantAccessor,
42
+ CurveName,
43
+ DataRow,
44
+ LinkableMarkProps,
45
+ RawValue
46
+ } from '../types/index.js';
16
47
  import { getPlotDefaults } from '../hooks/plotDefaults.js';
17
48
 
18
49
  let markProps: AreaXMarkProps = $props();
19
50
 
20
51
  const DEFAULTS = getPlotDefaults().areaX;
21
52
 
22
- const { data, stack, ...options }: AreaXMarkProps = $derived({
53
+ const {
54
+ data = [],
55
+ stack,
56
+ ...options
57
+ }: AreaXMarkProps = $derived({
23
58
  ...(markProps.x == undefined ? { x1: 0, x2: 0 } : {}),
24
59
  ...DEFAULTS,
25
60
  ...markProps
26
61
  });
27
62
 
28
63
  const args = $derived(
29
- renameChannels<AreaXMarkProps>(
30
- stackX(recordizeX({ data, ...options, y1: null, y2: null }), stack),
31
- { y: 'y1' }
32
- )
64
+ renameChannels(stackX(recordizeX({ data, ...options, y1: null, y2: null }), stack), {
65
+ y: 'y1'
66
+ })
33
67
  );
34
68
  </script>
35
69
 
@@ -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, implicit stacking is used to derive x1 and x2 channels */
144
+ x?: ChannelAccessor<Datum>;
145
+ /** the horizontal position channel of the lower end of bands */
146
+ x1?: ChannelAccessor<Datum>;
147
+ /** the horizontal position channel of the upper end of bands */
148
+ x2?: ChannelAccessor<Datum>;
149
+ /** the vertical position channel */
150
+ y?: 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
- }, "y1" | "y2"> & {
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: "";
@@ -3,33 +3,67 @@
3
3
  stacked vertically if just the y channel is defined.
4
4
  -->
5
5
  <script lang="ts" generics="Datum extends DataRow">
6
- interface AreaYMarkProps extends Omit<ComponentProps<typeof Area>, 'x1' | 'x2'> {
6
+ interface AreaYMarkProps extends BaseMarkProps<Datum>, LinkableMarkProps<Datum> {
7
+ /** the input data array; each element becomes one point in the area */
8
+ data?: Datum[];
9
+ /** the horizontal position channel */
7
10
  x?: ChannelAccessor<Datum>;
11
+ /** the vertical position channel. Implicit stacking is used to derive y1 and y2 */
8
12
  y?: ChannelAccessor<Datum>;
13
+ /** the vertical position channel of the lower end of bands */
14
+ y1?: ChannelAccessor<Datum>;
15
+ /** the vertical position channel of the upper end of bands */
16
+ y2?: ChannelAccessor<Datum>;
17
+ /** the series channel; data is grouped into separate areas by unique z values */
18
+ z?: ChannelAccessor<Datum>;
19
+ /** the curve interpolation method for connecting data points */
20
+ curve?: CurveName | CurveFactory;
21
+ /** the tension parameter for cardinal or Catmull-Rom curve interpolation */
22
+ tension?: number;
23
+ /** controls the order of data points before rendering */
24
+ sort?: ConstantAccessor<RawValue, Datum> | { channel: 'stroke' | 'fill' };
25
+ /** options for stacking area data values */
26
+ stack?: Partial<StackOptions>;
27
+ /** if true, renders using Canvas instead of SVG */
28
+ canvas?: boolean;
29
+ /** CSS class name(s) to apply to individual area path elements */
30
+ areaClass?: ConstantAccessor<string, Datum>;
9
31
  }
10
32
  import Area from './Area.svelte';
11
33
  import { renameChannels } from '../transforms/rename.js';
12
34
  import { stackY } from '../transforms/stack.js';
13
35
  import { recordizeY } from '../transforms/recordize.js';
14
- import type { ChannelAccessor, DataRow } from '../types/index.js';
15
- import type { ComponentProps } from 'svelte';
36
+ import type { CurveFactory } from 'd3-shape';
37
+ import type { StackOptions } from '../transforms/stack.js';
38
+ import type {
39
+ BaseMarkProps,
40
+ ChannelAccessor,
41
+ ConstantAccessor,
42
+ CurveName,
43
+ DataRow,
44
+ LinkableMarkProps,
45
+ RawValue
46
+ } from '../types/index.js';
16
47
  import { getPlotDefaults } from '../hooks/plotDefaults.js';
17
48
 
18
49
  let markProps: AreaYMarkProps = $props();
19
50
 
20
51
  const DEFAULTS = getPlotDefaults().areaY;
21
52
 
22
- const { data, stack, ...options }: AreaYMarkProps = $derived({
53
+ const {
54
+ data = [],
55
+ stack,
56
+ ...options
57
+ }: AreaYMarkProps = $derived({
23
58
  ...(markProps.y == undefined ? { y1: 0, y2: 0 } : {}),
24
59
  ...DEFAULTS,
25
60
  ...markProps
26
61
  });
27
62
 
28
63
  const args = $derived(
29
- renameChannels<AreaYMarkProps>(
30
- stackY(recordizeY({ data, ...options, x1: null, x2: null }), stack),
31
- { x: 'x1' }
32
- )
64
+ renameChannels(stackY(recordizeY({ data, ...options, x1: null, x2: null }), stack), {
65
+ x: 'x1'
66
+ })
33
67
  );
34
68
  </script>
35
69