svelteplot 0.9.2 → 0.10.0-pr-356.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 (83) hide show
  1. package/README.md +9 -2
  2. package/dist/Mark.svelte.d.ts +5 -4
  3. package/dist/constants.d.ts +1 -1
  4. package/dist/helpers/colors.d.ts +8 -11
  5. package/dist/helpers/curves.d.ts +2 -2
  6. package/dist/helpers/facets.d.ts +1 -1
  7. package/dist/helpers/getBaseStyles.d.ts +2 -4
  8. package/dist/helpers/index.d.ts +3 -3
  9. package/dist/helpers/reduce.d.ts +1 -1
  10. package/dist/helpers/scales.d.ts +7 -7
  11. package/dist/helpers/symbols.d.ts +1 -1
  12. package/dist/helpers/time.d.ts +3 -3
  13. package/dist/helpers/typeChecks.d.ts +8 -8
  14. package/dist/marks/Area.svelte.d.ts +5 -4
  15. package/dist/marks/AreaX.svelte.d.ts +6 -5
  16. package/dist/marks/Arrow.svelte.d.ts +5 -4
  17. package/dist/marks/AxisX.svelte.d.ts +6 -5
  18. package/dist/marks/AxisY.svelte.d.ts +6 -5
  19. package/dist/marks/BarX.svelte.d.ts +5 -4
  20. package/dist/marks/BarY.svelte.d.ts +5 -4
  21. package/dist/marks/BollingerX.svelte.d.ts +2 -77
  22. package/dist/marks/BollingerY.svelte.d.ts +2 -77
  23. package/dist/marks/BoxY.svelte.d.ts +1 -64
  24. package/dist/marks/Brush.svelte.d.ts +1 -64
  25. package/dist/marks/Cell.svelte.d.ts +5 -4
  26. package/dist/marks/CellX.svelte.d.ts +31 -30
  27. package/dist/marks/CellY.svelte.d.ts +31 -30
  28. package/dist/marks/CustomMark.svelte.d.ts +2 -85
  29. package/dist/marks/DifferenceY.svelte.d.ts +1 -64
  30. package/dist/marks/Dot.svelte.d.ts +5 -4
  31. package/dist/marks/DotX.svelte.d.ts +6 -5
  32. package/dist/marks/DotY.svelte.d.ts +6 -5
  33. package/dist/marks/Frame.svelte.d.ts +6 -5
  34. package/dist/marks/Geo.svelte.d.ts +5 -4
  35. package/dist/marks/GridX.svelte.d.ts +5 -4
  36. package/dist/marks/GridY.svelte.d.ts +5 -4
  37. package/dist/marks/Image.svelte.d.ts +2 -76
  38. package/dist/marks/Line.svelte +2 -0
  39. package/dist/marks/Line.svelte.d.ts +5 -4
  40. package/dist/marks/LineX.svelte.d.ts +7 -6
  41. package/dist/marks/LineY.svelte.d.ts +7 -6
  42. package/dist/marks/Link.svelte +2 -0
  43. package/dist/marks/Link.svelte.d.ts +5 -4
  44. package/dist/marks/Rect.svelte.d.ts +5 -4
  45. package/dist/marks/RuleX.svelte +39 -15
  46. package/dist/marks/RuleX.svelte.d.ts +6 -4
  47. package/dist/marks/RuleY.svelte +39 -16
  48. package/dist/marks/RuleY.svelte.d.ts +6 -4
  49. package/dist/marks/Spike.svelte.d.ts +6 -5
  50. package/dist/marks/Text.svelte +49 -20
  51. package/dist/marks/Text.svelte.d.ts +119 -7
  52. package/dist/marks/TickX.svelte +40 -33
  53. package/dist/marks/TickX.svelte.d.ts +6 -4
  54. package/dist/marks/TickY.svelte +40 -33
  55. package/dist/marks/TickY.svelte.d.ts +6 -4
  56. package/dist/marks/Trail.svelte.d.ts +1 -64
  57. package/dist/marks/Vector.svelte +6 -10
  58. package/dist/marks/Vector.svelte.d.ts +5 -4
  59. package/dist/marks/WaffleX.svelte.d.ts +2 -86
  60. package/dist/marks/WaffleY.svelte.d.ts +2 -84
  61. package/dist/marks/helpers/Box.svelte.d.ts +1 -64
  62. package/dist/marks/helpers/Marker.svelte +5 -4
  63. package/dist/marks/helpers/Marker.svelte.d.ts +1 -0
  64. package/dist/marks/helpers/MarkerPath.svelte +8 -1
  65. package/dist/marks/helpers/MarkerPath.svelte.d.ts +2 -103
  66. package/dist/marks/helpers/RuleCanvas.svelte +175 -0
  67. package/dist/marks/helpers/RuleCanvas.svelte.d.ts +41 -0
  68. package/dist/marks/helpers/TextCanvas.svelte +332 -0
  69. package/dist/marks/helpers/TextCanvas.svelte.d.ts +50 -0
  70. package/dist/marks/helpers/TickCanvas.svelte +214 -0
  71. package/dist/marks/helpers/TickCanvas.svelte.d.ts +36 -0
  72. package/dist/transforms/centroid.d.ts +1 -4
  73. package/dist/transforms/group.d.ts +4 -12
  74. package/dist/transforms/interval.d.ts +2 -130
  75. package/dist/transforms/normalize.d.ts +33 -0
  76. package/dist/transforms/recordize.d.ts +4 -7
  77. package/dist/transforms/rename.d.ts +1 -1
  78. package/dist/transforms/select.d.ts +7 -455
  79. package/dist/transforms/sort.d.ts +5 -257
  80. package/dist/transforms/stack.d.ts +3 -23
  81. package/dist/transforms/window.d.ts +2 -136
  82. package/dist/types/index.d.ts +4 -0
  83. package/package.json +87 -71
@@ -1,70 +1,7 @@
1
1
  import type { DataRecord, ChannelAccessor, ConstantAccessor, RawValue, CurveName } from '../types';
2
2
  import type { CurveFactory } from 'd3-shape';
3
3
  declare function $$render<Datum extends DataRecord>(): {
4
- props: Omit<Partial<{
5
- filter: ConstantAccessor<boolean, Datum>;
6
- facet: "auto" | "include" | "exclude";
7
- fx: ChannelAccessor<Datum>;
8
- fy: ChannelAccessor<Datum>;
9
- dx: ConstantAccessor<number, Datum>;
10
- dy: ConstantAccessor<number, Datum>;
11
- dodgeX: import("../transforms/dodge").DodgeXOptions;
12
- dodgeY: import("../transforms/dodge").DodgeYOptions;
13
- fill: ChannelAccessor<Datum>;
14
- fillOpacity: ConstantAccessor<number, Datum>;
15
- sort: ((a: RawValue, b: RawValue) => number) | {
16
- channel: string;
17
- order?: "ascending" | "descending";
18
- } | ConstantAccessor<RawValue, Datum>;
19
- stroke: ChannelAccessor<Datum>;
20
- strokeWidth: ConstantAccessor<number, Datum>;
21
- strokeOpacity: ConstantAccessor<number, Datum>;
22
- strokeLinejoin: ConstantAccessor<import("csstype").Property.StrokeLinejoin, Datum>;
23
- strokeLinecap: ConstantAccessor<import("csstype").Property.StrokeLinecap, Datum>;
24
- strokeMiterlimit: ConstantAccessor<number, Datum>;
25
- opacity: ChannelAccessor<Datum>;
26
- strokeDasharray: ConstantAccessor<string, Datum>;
27
- strokeDashoffset: ConstantAccessor<number, Datum>;
28
- mixBlendMode: ConstantAccessor<import("csstype").Property.MixBlendMode, Datum>;
29
- clipPath: string;
30
- mask: string;
31
- imageFilter: ConstantAccessor<string, Datum>;
32
- shapeRendering: ConstantAccessor<import("csstype").Property.ShapeRendering, Datum>;
33
- 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>;
64
- class: string;
65
- style: string;
66
- cursor: ConstantAccessor<import("csstype").Property.Cursor, Datum>;
67
- }>, "stroke" | "strokeWidth" | "strokeDasharray"> & {
4
+ props: Omit<BaseMarkProps<Datum>, "stroke" | "strokeDasharray" | "strokeWidth"> & {
68
5
  data?: Datum[];
69
6
  x?: ChannelAccessor<Datum>;
70
7
  y?: ChannelAccessor<Datum>;
@@ -48,7 +48,7 @@
48
48
  import { getPlotDefaults } from '../hooks/plotDefaults.js';
49
49
  import { usePlot } from '../hooks/usePlot.svelte.js';
50
50
 
51
- const defaultRadius = 3.5;
51
+ const defaultRadius = 3;
52
52
 
53
53
  // The size of the arrowhead is proportional to its length, but we still allow
54
54
  // the relative size of the head to be controlled via the mark's width option;
@@ -58,14 +58,14 @@
58
58
 
59
59
  let markProps: VectorMarkProps = $props();
60
60
  const DEFAULTS = {
61
- ...getPlotDefaults().vector
61
+ ...getPlotDefaults().vector,
62
+ r: defaultRadius
62
63
  };
63
64
  const {
64
65
  data = [{}],
65
66
  canvas,
66
67
  shape = 'arrow',
67
68
  anchor = 'middle',
68
- r = defaultRadius,
69
69
  ...options
70
70
  }: VectorMarkProps = $derived({
71
71
  ...DEFAULTS,
@@ -74,9 +74,6 @@
74
74
 
75
75
  const plot = usePlot();
76
76
 
77
- const { getTestFacet } = getContext<FacetContext>('svelteplot/facet');
78
- const testFacet = $derived(getTestFacet());
79
-
80
77
  const shapeArrow: ShapeRenderer = {
81
78
  draw(context: D3Path, l: number, r: number) {
82
79
  const wing = (l * r) / wingRatio;
@@ -168,15 +165,14 @@
168
165
  'strokeOpacity'
169
166
  ]}
170
167
  {...args}>
171
- {#snippet children({ mark, scaledData, usedScales })}
168
+ {#snippet children({ scaledData, usedScales })}
172
169
  <g class="vector" data-l={usedScales.length}>
173
170
  {#if canvas}
174
171
  <text x="30" y="30" style="color:red"
175
172
  >implement canvas rendering for vector mark</text>
176
173
  {:else}
177
174
  {#each scaledData as d, i (i)}
178
- {@const r = resolveChannel('r', d.datum, { r: 3, ...args })}
179
- {#if d.valid && isValid(r)}
175
+ {#if d.valid && isValid(d.r)}
180
176
  {@const [style, styleClass] = resolveStyles(
181
177
  plot,
182
178
  d,
@@ -190,7 +186,7 @@
190
186
  usedScales
191
187
  )}
192
188
  <path
193
- d={shapePath(shape, d.length, r)}
189
+ d={shapePath(shape, d.length, d.r)}
194
190
  transform="translate({d.x}, {d.y}) rotate({resolveProp(
195
191
  args.rotate,
196
192
  d.datum,
@@ -4,6 +4,7 @@ export type ShapeRenderer = {
4
4
  };
5
5
  import type { DataRecord, ChannelAccessor } from '../types/index.js';
6
6
  import { type Snippet } from 'svelte';
7
+ import { sort } from '../index.js';
7
8
  declare function $$render<Datum extends DataRecord>(): {
8
9
  props: Partial<{
9
10
  filter: import("../types/index.js").ConstantAccessor<boolean, Datum>;
@@ -12,14 +13,14 @@ declare function $$render<Datum extends DataRecord>(): {
12
13
  fy: ChannelAccessor<Datum>;
13
14
  dx: import("../types/index.js").ConstantAccessor<number, Datum>;
14
15
  dy: import("../types/index.js").ConstantAccessor<number, Datum>;
15
- dodgeX: import("../transforms/dodge.js").DodgeXOptions;
16
- dodgeY: import("../transforms/dodge.js").DodgeYOptions;
16
+ dodgeX: sort;
17
+ dodgeY: sort;
17
18
  fill: ChannelAccessor<Datum>;
18
19
  fillOpacity: import("../types/index.js").ConstantAccessor<number, Datum>;
19
- sort: ((a: import("../types/data.js").RawValue, b: import("../types/data.js").RawValue) => number) | {
20
+ sort: {
20
21
  channel: string;
21
22
  order?: "ascending" | "descending";
22
- } | import("../types/index.js").ConstantAccessor<import("../types/data.js").RawValue, Datum>;
23
+ } | ((a: import("../types/data.js").RawValue, b: import("../types/data.js").RawValue) => number) | import("../types/index.js").ConstantAccessor<import("../types/data.js").RawValue, Datum>;
23
24
  stroke: ChannelAccessor<Datum>;
24
25
  strokeWidth: import("../types/index.js").ConstantAccessor<number, Datum>;
25
26
  strokeOpacity: import("../types/index.js").ConstantAccessor<number, Datum>;
@@ -1,90 +1,6 @@
1
- import type { DataRecord, ChannelAccessor, LinkableMarkProps } from '../types';
2
- import { type WaffleOptions } from './helpers/waffle';
3
- import type { StackOptions } from '../transforms/stack';
1
+ import type { DataRecord } from '../types';
4
2
  declare function $$render<Datum extends DataRecord>(): {
5
- props: Partial<{
6
- filter: import("../types").ConstantAccessor<boolean, Datum>;
7
- facet: "auto" | "include" | "exclude";
8
- fx: ChannelAccessor<Datum>;
9
- fy: ChannelAccessor<Datum>;
10
- dx: import("../types").ConstantAccessor<number, Datum>;
11
- dy: import("../types").ConstantAccessor<number, Datum>;
12
- dodgeX: import("../transforms/dodge").DodgeXOptions;
13
- dodgeY: import("../transforms/dodge").DodgeYOptions;
14
- fill: ChannelAccessor<Datum>;
15
- fillOpacity: import("../types").ConstantAccessor<number, Datum>;
16
- sort: ((a: import("../types").RawValue, b: import("../types").RawValue) => number) | {
17
- channel: string;
18
- order?: "ascending" | "descending";
19
- } | import("../types").ConstantAccessor<import("../types").RawValue, Datum>;
20
- stroke: ChannelAccessor<Datum>;
21
- strokeWidth: import("../types").ConstantAccessor<number, Datum>;
22
- strokeOpacity: import("../types").ConstantAccessor<number, Datum>;
23
- strokeLinejoin: import("../types").ConstantAccessor<import("csstype").Property.StrokeLinejoin, Datum>;
24
- strokeLinecap: import("../types").ConstantAccessor<import("csstype").Property.StrokeLinecap, Datum>;
25
- strokeMiterlimit: import("../types").ConstantAccessor<number, Datum>;
26
- opacity: ChannelAccessor<Datum>;
27
- strokeDasharray: import("../types").ConstantAccessor<string, Datum>;
28
- strokeDashoffset: import("../types").ConstantAccessor<number, Datum>;
29
- mixBlendMode: import("../types").ConstantAccessor<import("csstype").Property.MixBlendMode, Datum>;
30
- clipPath: string;
31
- mask: string;
32
- imageFilter: import("../types").ConstantAccessor<string, Datum>;
33
- shapeRendering: import("../types").ConstantAccessor<import("csstype").Property.ShapeRendering, Datum>;
34
- paintOrder: import("../types").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>;
65
- class: string;
66
- style: string;
67
- cursor: import("../types").ConstantAccessor<import("csstype").Property.Cursor, Datum>;
68
- }> & LinkableMarkProps<Datum> & WaffleOptions<Datum> & {
69
- data?: Datum[];
70
- /**
71
- * bound to a quantitative scale
72
- */
73
- x?: ChannelAccessor<Datum>;
74
- /**
75
- * bound to a quantitative scale
76
- */
77
- x1?: ChannelAccessor<Datum>;
78
- /**
79
- * bound to a quantitative scale
80
- */
81
- x2?: ChannelAccessor<Datum>;
82
- /**
83
- * bound to a band scale
84
- */
85
- y?: ChannelAccessor<Datum>;
86
- stack?: StackOptions;
87
- };
3
+ props: any;
88
4
  exports: {};
89
5
  bindings: "";
90
6
  slots: {};
@@ -1,88 +1,6 @@
1
- import type { DataRecord, ChannelAccessor, LinkableMarkProps } from '../types';
2
- import { type WaffleOptions } from './helpers/waffle';
1
+ import type { DataRecord } from '../types';
3
2
  declare function $$render<Datum extends DataRecord>(): {
4
- props: Partial<{
5
- filter: import("../types").ConstantAccessor<boolean, Datum>;
6
- facet: "auto" | "include" | "exclude";
7
- fx: ChannelAccessor<Datum>;
8
- fy: ChannelAccessor<Datum>;
9
- dx: import("../types").ConstantAccessor<number, Datum>;
10
- dy: import("../types").ConstantAccessor<number, Datum>;
11
- dodgeX: import("../transforms/dodge").DodgeXOptions;
12
- dodgeY: import("../transforms/dodge").DodgeYOptions;
13
- fill: ChannelAccessor<Datum>;
14
- fillOpacity: import("../types").ConstantAccessor<number, Datum>;
15
- sort: ((a: import("../types").RawValue, b: import("../types").RawValue) => number) | {
16
- channel: string;
17
- order?: "ascending" | "descending";
18
- } | import("../types").ConstantAccessor<import("../types").RawValue, Datum>;
19
- stroke: ChannelAccessor<Datum>;
20
- strokeWidth: import("../types").ConstantAccessor<number, Datum>;
21
- strokeOpacity: import("../types").ConstantAccessor<number, Datum>;
22
- strokeLinejoin: import("../types").ConstantAccessor<import("csstype").Property.StrokeLinejoin, Datum>;
23
- strokeLinecap: import("../types").ConstantAccessor<import("csstype").Property.StrokeLinecap, Datum>;
24
- strokeMiterlimit: import("../types").ConstantAccessor<number, Datum>;
25
- opacity: ChannelAccessor<Datum>;
26
- strokeDasharray: import("../types").ConstantAccessor<string, Datum>;
27
- strokeDashoffset: import("../types").ConstantAccessor<number, Datum>;
28
- mixBlendMode: import("../types").ConstantAccessor<import("csstype").Property.MixBlendMode, Datum>;
29
- clipPath: string;
30
- mask: string;
31
- imageFilter: import("../types").ConstantAccessor<string, Datum>;
32
- shapeRendering: import("../types").ConstantAccessor<import("csstype").Property.ShapeRendering, Datum>;
33
- paintOrder: import("../types").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>;
64
- class: string;
65
- style: string;
66
- cursor: import("../types").ConstantAccessor<import("csstype").Property.Cursor, Datum>;
67
- }> & LinkableMarkProps<Datum> & WaffleOptions<Datum> & {
68
- data?: Datum[];
69
- /**
70
- * bound to a babd scale
71
- */
72
- x?: ChannelAccessor<Datum>;
73
- /**
74
- * bound to a quantitative scale
75
- */
76
- y?: ChannelAccessor<Datum>;
77
- /**
78
- * bound to a quantitative scale
79
- */
80
- y1?: ChannelAccessor<Datum>;
81
- /**
82
- * bound to a quantitative scale
83
- */
84
- y2?: ChannelAccessor<Datum>;
85
- };
3
+ props: any;
86
4
  exports: {};
87
5
  bindings: "";
88
6
  slots: {};
@@ -1,69 +1,6 @@
1
1
  import type { ChannelAccessor, DataRecord, RawValue } from '../../types';
2
2
  declare function $$render<Datum extends DataRecord>(): {
3
- props: Pick<Partial<{
4
- filter: import("../../types").ConstantAccessor<boolean, Datum>;
5
- facet: "auto" | "include" | "exclude";
6
- fx: ChannelAccessor<Datum>;
7
- fy: ChannelAccessor<Datum>;
8
- dx: import("../../types").ConstantAccessor<number, Datum>;
9
- dy: import("../../types").ConstantAccessor<number, Datum>;
10
- dodgeX: import("../../transforms/dodge").DodgeXOptions;
11
- dodgeY: import("../../transforms/dodge").DodgeYOptions;
12
- fill: ChannelAccessor<Datum>;
13
- fillOpacity: import("../../types").ConstantAccessor<number, Datum>;
14
- sort: ((a: RawValue, b: RawValue) => number) | {
15
- channel: string;
16
- order?: "ascending" | "descending";
17
- } | import("../../types").ConstantAccessor<RawValue, Datum>;
18
- stroke: ChannelAccessor<Datum>;
19
- strokeWidth: import("../../types").ConstantAccessor<number, Datum>;
20
- strokeOpacity: import("../../types").ConstantAccessor<number, Datum>;
21
- strokeLinejoin: import("../../types").ConstantAccessor<import("csstype").Property.StrokeLinejoin, Datum>;
22
- strokeLinecap: import("../../types").ConstantAccessor<import("csstype").Property.StrokeLinecap, Datum>;
23
- strokeMiterlimit: import("../../types").ConstantAccessor<number, Datum>;
24
- opacity: ChannelAccessor<Datum>;
25
- strokeDasharray: import("../../types").ConstantAccessor<string, Datum>;
26
- strokeDashoffset: import("../../types").ConstantAccessor<number, Datum>;
27
- mixBlendMode: import("../../types").ConstantAccessor<import("csstype").Property.MixBlendMode, Datum>;
28
- clipPath: string;
29
- mask: string;
30
- imageFilter: import("../../types").ConstantAccessor<string, Datum>;
31
- shapeRendering: import("../../types").ConstantAccessor<import("csstype").Property.ShapeRendering, Datum>;
32
- paintOrder: import("../../types").ConstantAccessor<string, Datum>;
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>;
63
- class: string;
64
- style: string;
65
- cursor: import("../../types").ConstantAccessor<import("csstype").Property.Cursor, Datum>;
66
- }>, "fx" | "fy" | "fill" | "stroke" | "class"> & {
3
+ props: Pick<BaseMarkProps<Datum>, "fill" | "stroke" | "fx" | "fy" | "class"> & {
67
4
  data: Datum[];
68
5
  x: ChannelAccessor;
69
6
  y: ChannelAccessor;
@@ -22,9 +22,10 @@
22
22
  id: string;
23
23
  shape: MarkerShape;
24
24
  color: string;
25
+ markerScale?: number;
25
26
  };
26
27
 
27
- let { id, shape, color }: MarkerProps = $props();
28
+ let { id, shape, color, markerScale = 1 }: MarkerProps = $props();
28
29
 
29
30
  const tickMarker = (orient: number | 'auto') => ({
30
31
  viewBox: '-3 -3 6 6',
@@ -81,10 +82,10 @@
81
82
  <marker
82
83
  {id}
83
84
  viewBox={MARKERS[shape].viewBox || '-5 -5 10 10'}
84
- markerWidth={MARKERS[shape].width}
85
+ markerWidth={MARKERS[shape].width * markerScale}
85
86
  orient={MARKERS[shape].orient}
86
- markerHeight={MARKERS[shape].height}
87
- stroke-width="1.5"
87
+ markerHeight={MARKERS[shape].height * markerScale}
88
+ stroke-width={Math.max(0, Math.min(100, 1.5 / markerScale))}
88
89
  {...markerColors}>
89
90
  {#if shape === 'dot' || shape === 'circle' || shape === 'circle-stroke'}
90
91
  <circle r={defaultDotRadius} />
@@ -3,6 +3,7 @@ type MarkerProps = {
3
3
  id: string;
4
4
  shape: MarkerShape;
5
5
  color: string;
6
+ markerScale?: number;
6
7
  };
7
8
  /** Marker is a helper component that creates a marker for use in a line or path. */
8
9
  declare const Marker: import("svelte").Component<MarkerProps, {}, "">;
@@ -39,6 +39,10 @@
39
39
  * shorthand for setting all markers
40
40
  */
41
41
  marker?: boolean | MarkerShape;
42
+ /**
43
+ * scale factor for marker size, relative to the line stroke width
44
+ */
45
+ markerScale?: ConstantAccessor<number>;
42
46
  /**
43
47
  * path string
44
48
  */
@@ -61,6 +65,7 @@
61
65
  markerMid,
62
66
  markerEnd,
63
67
  marker,
68
+ markerScale,
64
69
  d,
65
70
  dInv,
66
71
  style,
@@ -88,6 +93,7 @@
88
93
  // use reversed path if the path is not left to right
89
94
  const textPath = $derived(!text || leftToRight ? d : dInv);
90
95
  const strokeWidth_ = $derived(resolveProp(strokeWidth, datum, 1.4));
96
+ const markerScale_ = $derived(resolveProp(markerScale, datum, 1));
91
97
  </script>
92
98
 
93
99
  <g
@@ -107,7 +113,8 @@
107
113
  <Marker
108
114
  id={markerId}
109
115
  shape={marker === true ? 'circle' : resolveProp(marker, datum)}
110
- {color} />
116
+ {color}
117
+ markerScale={markerScale_} />
111
118
  {/if}
112
119
  {/each}
113
120
  {#if mark.options.onmouseenter || mark.options.onclick}
@@ -1,107 +1,6 @@
1
- import { type MarkerShape } from './Marker.svelte';
2
- import type { BaseMarkProps, ConstantAccessor, DataRecord, Mark, PlotScales } from '../../types/index.js';
1
+ import type { DataRecord } from '../../types/index.js';
3
2
  declare function $$render<Datum extends DataRecord>(): {
4
- props: Partial<{
5
- filter: ConstantAccessor<boolean, Datum>;
6
- facet: "auto" | "include" | "exclude";
7
- fx: import("../../types/index.js").ChannelAccessor<Datum>;
8
- fy: import("../../types/index.js").ChannelAccessor<Datum>;
9
- dx: ConstantAccessor<number, Datum>;
10
- dy: ConstantAccessor<number, Datum>;
11
- dodgeX: import("../../transforms/dodge").DodgeXOptions;
12
- dodgeY: import("../../transforms/dodge").DodgeYOptions;
13
- fill: import("../../types/index.js").ChannelAccessor<Datum>;
14
- fillOpacity: ConstantAccessor<number, Datum>;
15
- sort: ((a: import("../../types/index.js").RawValue, b: import("../../types/index.js").RawValue) => number) | {
16
- channel: string;
17
- order?: "ascending" | "descending";
18
- } | ConstantAccessor<import("../../types/index.js").RawValue, Datum>;
19
- stroke: import("../../types/index.js").ChannelAccessor<Datum>;
20
- strokeWidth: ConstantAccessor<number, Datum>;
21
- strokeOpacity: ConstantAccessor<number, Datum>;
22
- strokeLinejoin: ConstantAccessor<import("csstype").Property.StrokeLinejoin, Datum>;
23
- strokeLinecap: ConstantAccessor<import("csstype").Property.StrokeLinecap, Datum>;
24
- strokeMiterlimit: ConstantAccessor<number, Datum>;
25
- opacity: import("../../types/index.js").ChannelAccessor<Datum>;
26
- strokeDasharray: ConstantAccessor<string, Datum>;
27
- strokeDashoffset: ConstantAccessor<number, Datum>;
28
- mixBlendMode: ConstantAccessor<import("csstype").Property.MixBlendMode, Datum>;
29
- clipPath: string;
30
- mask: string;
31
- imageFilter: ConstantAccessor<string, Datum>;
32
- shapeRendering: ConstantAccessor<import("csstype").Property.ShapeRendering, Datum>;
33
- 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>;
64
- class: string;
65
- style: string;
66
- cursor: ConstantAccessor<import("csstype").Property.Cursor, Datum>;
67
- }> & {
68
- /**
69
- * the datum associated with this path, usually the first
70
- * element of the data array group
71
- */
72
- datum: Datum;
73
- /**
74
- * the marker shape to use at the start of the path, defaults to
75
- * circle
76
- */
77
- markerStart?: boolean | MarkerShape;
78
- /**
79
- * the marker shape to use at the middle of the path, defaults to circle
80
- */
81
- markerMid?: boolean | MarkerShape;
82
- /**
83
- * the marker shape to use at the end of the path, defaults to circle
84
- */
85
- markerEnd?: boolean | MarkerShape;
86
- /**
87
- * shorthand for setting all markers
88
- */
89
- marker?: boolean | MarkerShape;
90
- /**
91
- * path string
92
- */
93
- d: string;
94
- style: string;
95
- startOffset: string;
96
- textStyle: string;
97
- textStyleClass?: string | null;
98
- text: string;
99
- transform: string;
100
- color: string;
101
- strokeWidth: ConstantAccessor<number>;
102
- mark: Mark<BaseMarkProps<Datum>>;
103
- scales: PlotScales;
104
- };
3
+ props: any;
105
4
  exports: {};
106
5
  bindings: "";
107
6
  slots: {};