svelteplot 0.6.0-pr-266.0 → 0.7.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 (82) hide show
  1. package/dist/Mark.svelte +7 -0
  2. package/dist/Mark.svelte.d.ts +4 -5
  3. package/dist/Plot.svelte +10 -2
  4. package/dist/constants.d.ts +1 -1
  5. package/dist/core/FacetAxes.svelte +2 -2
  6. package/dist/core/Plot.svelte +7 -11
  7. package/dist/helpers/colors.d.ts +12 -9
  8. package/dist/helpers/facets.d.ts +1 -1
  9. package/dist/helpers/getBaseStyles.d.ts +6 -2
  10. package/dist/helpers/getBaseStyles.js +8 -0
  11. package/dist/helpers/index.d.ts +3 -3
  12. package/dist/helpers/reduce.d.ts +1 -1
  13. package/dist/helpers/removeIdenticalLines.js +3 -2
  14. package/dist/helpers/scales.d.ts +7 -7
  15. package/dist/helpers/scales.js +2 -2
  16. package/dist/helpers/symbols.d.ts +2 -2
  17. package/dist/helpers/time.d.ts +3 -3
  18. package/dist/helpers/typeChecks.d.ts +8 -8
  19. package/dist/helpers/wordwrap.d.ts +14 -0
  20. package/dist/helpers/wordwrap.js +129 -0
  21. package/dist/marks/Area.svelte.d.ts +4 -5
  22. package/dist/marks/AreaX.svelte.d.ts +5 -6
  23. package/dist/marks/Arrow.svelte.d.ts +4 -5
  24. package/dist/marks/AxisX.svelte +2 -1
  25. package/dist/marks/AxisX.svelte.d.ts +6 -6
  26. package/dist/marks/AxisY.svelte.d.ts +5 -6
  27. package/dist/marks/BarX.svelte.d.ts +4 -5
  28. package/dist/marks/BarY.svelte.d.ts +4 -5
  29. package/dist/marks/BollingerX.svelte.d.ts +76 -2
  30. package/dist/marks/BollingerY.svelte.d.ts +76 -2
  31. package/dist/marks/BoxY.svelte.d.ts +68 -6
  32. package/dist/marks/Cell.svelte.d.ts +4 -5
  33. package/dist/marks/CustomMark.svelte.d.ts +84 -2
  34. package/dist/marks/CustomMarkHTML.svelte.d.ts +1 -1
  35. package/dist/marks/DifferenceY.svelte.d.ts +69 -7
  36. package/dist/marks/Dot.svelte.d.ts +4 -5
  37. package/dist/marks/DotX.svelte.d.ts +5 -6
  38. package/dist/marks/DotY.svelte.d.ts +5 -6
  39. package/dist/marks/Geo.svelte.d.ts +4 -5
  40. package/dist/marks/GridX.svelte.d.ts +4 -5
  41. package/dist/marks/GridY.svelte.d.ts +4 -5
  42. package/dist/marks/Image.svelte.d.ts +75 -2
  43. package/dist/marks/Line.svelte.d.ts +5 -6
  44. package/dist/marks/LineX.svelte.d.ts +6 -7
  45. package/dist/marks/LineY.svelte.d.ts +6 -7
  46. package/dist/marks/Link.svelte.d.ts +4 -5
  47. package/dist/marks/Rect.svelte.d.ts +4 -5
  48. package/dist/marks/RuleX.svelte.d.ts +4 -5
  49. package/dist/marks/RuleY.svelte.d.ts +4 -5
  50. package/dist/marks/Spike.svelte.d.ts +5 -6
  51. package/dist/marks/Text.svelte.d.ts +5 -6
  52. package/dist/marks/TickX.svelte.d.ts +4 -5
  53. package/dist/marks/TickY.svelte.d.ts +4 -5
  54. package/dist/marks/Vector.svelte.d.ts +4 -5
  55. package/dist/marks/WaffleX.svelte +115 -0
  56. package/dist/marks/WaffleX.svelte.d.ts +102 -0
  57. package/dist/marks/WaffleY.svelte +119 -0
  58. package/dist/marks/WaffleY.svelte.d.ts +100 -0
  59. package/dist/marks/helpers/Anchor.svelte.d.ts +5 -5
  60. package/dist/marks/helpers/BaseAxisX.svelte +31 -3
  61. package/dist/marks/helpers/BaseAxisX.svelte.d.ts +2 -0
  62. package/dist/marks/helpers/MarkerPath.svelte.d.ts +164 -2
  63. package/dist/marks/helpers/RectPath.svelte.d.ts +65 -3
  64. package/dist/marks/helpers/waffle.d.ts +58 -0
  65. package/dist/marks/helpers/waffle.js +194 -0
  66. package/dist/marks/index.d.ts +3 -1
  67. package/dist/marks/index.js +3 -1
  68. package/dist/transforms/bollinger.d.ts +69 -1
  69. package/dist/transforms/centroid.d.ts +4 -1
  70. package/dist/transforms/group.d.ts +12 -4
  71. package/dist/transforms/group.js +11 -5
  72. package/dist/transforms/interval.d.ts +128 -2
  73. package/dist/transforms/recordize.d.ts +7 -4
  74. package/dist/transforms/select.d.ts +448 -7
  75. package/dist/transforms/sort.d.ts +253 -5
  76. package/dist/transforms/stack.d.ts +23 -3
  77. package/dist/transforms/window.d.ts +134 -2
  78. package/dist/types/data.d.ts +1 -0
  79. package/dist/types/mark.d.ts +1 -1
  80. package/dist/types/plot.d.ts +19 -5
  81. package/dist/types/scale.d.ts +8 -0
  82. package/package.json +128 -129
@@ -38,21 +38,29 @@ type GroupZOptions = GroupXOptions | GroupYOptions;
38
38
  * groups the dataset by x and y channel and optionally reduces the group items
39
39
  * to output channels fill, stroke, r, opacity, fillOpacity, or strokeOpacity
40
40
  */
41
- export declare function group({ data, ...channels }: TransformArg<T, DataRecord>, options?: GroupXOptions): any;
41
+ export declare function group({ data, ...channels }: TransformArg<T, DataRecord>, options?: GroupXOptions): {
42
+ data: Record<string | symbol, RawValue>[];
43
+ };
42
44
  /**
43
45
  * groups the dataset by the x channel and optionally reduces the group items
44
46
  * to output channels y, y1, y2, fill, stroke, r, opacity, fillOpacity, or strokeOpacity
45
47
  */
46
- export declare function groupX(input: TransformArg<T, DataRecord>, options?: GroupXOptions): any;
48
+ export declare function groupX(input: TransformArg<T, DataRecord>, options?: GroupXOptions): {
49
+ data: Record<string | symbol, RawValue>[];
50
+ };
47
51
  /**
48
52
  * groups the dataset by the y channel and optionally reduces the group items
49
53
  * to output channels x, x1, x2, fill, stroke, r, opacity, fillOpacity, or strokeOpacity
50
54
  */
51
- export declare function groupY(input: TransformArg<T, DataRecord>, options?: GroupYOptions): any;
55
+ export declare function groupY(input: TransformArg<T, DataRecord>, options?: GroupYOptions): {
56
+ data: Record<string | symbol, RawValue>[];
57
+ };
52
58
  /**
53
59
  * groups the dataset by the z channel and optionally reduces the group items
54
60
  * to output channels x, x1, x2, y, y1, y2, fill, stroke, r, opacity, fillOpacity,
55
61
  * or strokeOpacity
56
62
  */
57
- export declare function groupZ(input: TransformArg<T, DataRecord>, options?: GroupZOptions): any;
63
+ export declare function groupZ(input: TransformArg<T, DataRecord>, options?: GroupZOptions): {
64
+ data: Record<string | symbol, RawValue>[];
65
+ };
58
66
  export {};
@@ -1,5 +1,5 @@
1
1
  import { groupFacetsAndZ } from '../helpers/group.js';
2
- import { testFilter } from '../helpers/index.js';
2
+ import { isValid, testFilter } from '../helpers/index.js';
3
3
  import { reduceOutputs } from '../helpers/reduce.js';
4
4
  import { resolveChannel } from '../helpers/resolve.js';
5
5
  import { groups as d3Groups } from 'd3-array';
@@ -58,8 +58,12 @@ export function groupY(input, options = {}) {
58
58
  export function groupZ(input, options = {}) {
59
59
  return groupXYZ('z', input, options);
60
60
  }
61
+ const groupDimRaw = Symbol('groupDimRaw');
61
62
  function groupXYZ(dim, { data, ...channels }, options = {}) {
62
- if ((dim === 'z' ? channels.z || channels.fill || channels.stroke : channels[dim]) == null)
63
+ // console.log({ dim, data, channels, options });
64
+ if ((dim === 'z'
65
+ ? channels.z || channels.fill || channels.stroke || channels.fx || channels.fy
66
+ : channels[dim]) == null)
63
67
  throw new Error('you must provide a channel to group on ' + dim);
64
68
  const propName = options[`${dim}PropName`] != null
65
69
  ? options[`${dim}PropName`]
@@ -70,9 +74,11 @@ function groupXYZ(dim, { data, ...channels }, options = {}) {
70
74
  // group by x or y
71
75
  const groups = dim === 'z'
72
76
  ? [[null, data]]
73
- : d3Groups(data.filter((d) => testFilter(d, channels)), (d) => {
74
- const v = resolveChannel(dim, d, channels);
75
- return interval ? interval.round(v) : v;
77
+ : d3Groups(data
78
+ .filter((d) => testFilter(d, channels))
79
+ .map((d) => ({ ...d, [groupDimRaw]: resolveChannel(dim, d, channels) }))
80
+ .filter((d) => isValid(d[groupDimRaw])), (d) => {
81
+ return interval ? interval.floor(d[groupDimRaw]) : d[groupDimRaw];
76
82
  });
77
83
  const newData = [];
78
84
  let newChannels = omit({ ...channels }, 'filter');
@@ -1,7 +1,133 @@
1
1
  import type { PlotState, TransformArg } from '../types/index.js';
2
2
  export declare function intervalX<T>(args: TransformArg<T>, { plot }: {
3
3
  plot: PlotState;
4
- }): any;
4
+ }): {
5
+ filter?: import("../types/index.js").ConstantAccessor<boolean, T>;
6
+ facet?: "auto" | "include" | "exclude" | undefined;
7
+ fx?: import("../types/index.js").ChannelAccessor<T>;
8
+ fy?: import("../types/index.js").ChannelAccessor<T>;
9
+ dx?: import("../types/index.js").ConstantAccessor<number, T>;
10
+ dy?: import("../types/index.js").ConstantAccessor<number, T>;
11
+ dodgeX?: import("./dodge").DodgeXOptions | undefined;
12
+ dodgeY?: import("./dodge").DodgeYOptions | undefined;
13
+ fill?: import("../types/index.js").ChannelAccessor<T>;
14
+ fillOpacity?: import("../types/index.js").ConstantAccessor<number, T>;
15
+ sort?: ((a: import("../types/index.js").RawValue, b: import("../types/index.js").RawValue) => number) | {
16
+ channel: string;
17
+ order?: "ascending" | "descending";
18
+ } | import("../types/index.js").ConstantAccessor<import("../types/index.js").RawValue, T>;
19
+ stroke?: import("../types/index.js").ChannelAccessor<T>;
20
+ strokeWidth?: import("../types/index.js").ConstantAccessor<number, T>;
21
+ strokeOpacity?: import("../types/index.js").ConstantAccessor<number, T>;
22
+ strokeLinejoin?: import("../types/index.js").ConstantAccessor<import("csstype").Property.StrokeLinejoin, T>;
23
+ strokeLinecap?: import("../types/index.js").ConstantAccessor<import("csstype").Property.StrokeLinecap, T>;
24
+ strokeMiterlimit?: import("../types/index.js").ConstantAccessor<number, T>;
25
+ opacity?: import("../types/index.js").ChannelAccessor<T>;
26
+ strokeDasharray?: import("../types/index.js").ConstantAccessor<string, T>;
27
+ strokeDashoffset?: import("../types/index.js").ConstantAccessor<number, T>;
28
+ mixBlendMode?: import("../types/index.js").ConstantAccessor<import("csstype").Property.MixBlendMode, T>;
29
+ clipPath?: string | undefined;
30
+ imageFilter?: import("../types/index.js").ConstantAccessor<string, T>;
31
+ shapeRendering?: import("../types/index.js").ConstantAccessor<import("csstype").Property.ShapeRendering, T>;
32
+ paintOrder?: import("../types/index.js").ConstantAccessor<string, T>;
33
+ onclick?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
34
+ ondblclick?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
35
+ onmouseup?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
36
+ onmousedown?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
37
+ onmouseenter?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
38
+ onmousemove?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
39
+ onmouseleave?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
40
+ onmouseout?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
41
+ onmouseover?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
42
+ onpointercancel?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
43
+ onpointerdown?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
44
+ onpointerup?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
45
+ onpointerenter?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
46
+ onpointerleave?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
47
+ onpointermove?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
48
+ onpointerover?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
49
+ onpointerout?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
50
+ ondrag?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
51
+ ondrop?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
52
+ ondragstart?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
53
+ ondragenter?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
54
+ ondragleave?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
55
+ ondragover?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
56
+ ondragend?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
57
+ ontouchstart?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
58
+ ontouchmove?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
59
+ ontouchend?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
60
+ ontouchcancel?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
61
+ oncontextmenu?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
62
+ onwheel?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
63
+ class?: string | undefined;
64
+ style?: string | undefined;
65
+ cursor?: import("../types/index.js").ConstantAccessor<import("csstype").Property.Cursor, T>;
66
+ data: T[];
67
+ };
5
68
  export declare function intervalY<T>(args: TransformArg<T>, { plot }: {
6
69
  plot: PlotState;
7
- }): any;
70
+ }): {
71
+ filter?: import("../types/index.js").ConstantAccessor<boolean, T>;
72
+ facet?: "auto" | "include" | "exclude" | undefined;
73
+ fx?: import("../types/index.js").ChannelAccessor<T>;
74
+ fy?: import("../types/index.js").ChannelAccessor<T>;
75
+ dx?: import("../types/index.js").ConstantAccessor<number, T>;
76
+ dy?: import("../types/index.js").ConstantAccessor<number, T>;
77
+ dodgeX?: import("./dodge").DodgeXOptions | undefined;
78
+ dodgeY?: import("./dodge").DodgeYOptions | undefined;
79
+ fill?: import("../types/index.js").ChannelAccessor<T>;
80
+ fillOpacity?: import("../types/index.js").ConstantAccessor<number, T>;
81
+ sort?: ((a: import("../types/index.js").RawValue, b: import("../types/index.js").RawValue) => number) | {
82
+ channel: string;
83
+ order?: "ascending" | "descending";
84
+ } | import("../types/index.js").ConstantAccessor<import("../types/index.js").RawValue, T>;
85
+ stroke?: import("../types/index.js").ChannelAccessor<T>;
86
+ strokeWidth?: import("../types/index.js").ConstantAccessor<number, T>;
87
+ strokeOpacity?: import("../types/index.js").ConstantAccessor<number, T>;
88
+ strokeLinejoin?: import("../types/index.js").ConstantAccessor<import("csstype").Property.StrokeLinejoin, T>;
89
+ strokeLinecap?: import("../types/index.js").ConstantAccessor<import("csstype").Property.StrokeLinecap, T>;
90
+ strokeMiterlimit?: import("../types/index.js").ConstantAccessor<number, T>;
91
+ opacity?: import("../types/index.js").ChannelAccessor<T>;
92
+ strokeDasharray?: import("../types/index.js").ConstantAccessor<string, T>;
93
+ strokeDashoffset?: import("../types/index.js").ConstantAccessor<number, T>;
94
+ mixBlendMode?: import("../types/index.js").ConstantAccessor<import("csstype").Property.MixBlendMode, T>;
95
+ clipPath?: string | undefined;
96
+ imageFilter?: import("../types/index.js").ConstantAccessor<string, T>;
97
+ shapeRendering?: import("../types/index.js").ConstantAccessor<import("csstype").Property.ShapeRendering, T>;
98
+ paintOrder?: import("../types/index.js").ConstantAccessor<string, T>;
99
+ onclick?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
100
+ ondblclick?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
101
+ onmouseup?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
102
+ onmousedown?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
103
+ onmouseenter?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
104
+ onmousemove?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
105
+ onmouseleave?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
106
+ onmouseout?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
107
+ onmouseover?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
108
+ onpointercancel?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
109
+ onpointerdown?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
110
+ onpointerup?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
111
+ onpointerenter?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
112
+ onpointerleave?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
113
+ onpointermove?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
114
+ onpointerover?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
115
+ onpointerout?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
116
+ ondrag?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
117
+ ondrop?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
118
+ ondragstart?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
119
+ ondragenter?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
120
+ ondragleave?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
121
+ ondragover?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
122
+ ondragend?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
123
+ ontouchstart?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
124
+ ontouchmove?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
125
+ ontouchend?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
126
+ ontouchcancel?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
127
+ oncontextmenu?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
128
+ onwheel?: import("svelte/elements").MouseEventHandler<SVGPathElement> | undefined;
129
+ class?: string | undefined;
130
+ style?: string | undefined;
131
+ cursor?: import("../types/index.js").ConstantAccessor<import("csstype").Property.Cursor, T>;
132
+ data: T[];
133
+ };
@@ -1,8 +1,11 @@
1
1
  import type { TransformArgsRow, TransformArgsRecord } from '../types/index.js';
2
- export declare const X: any;
3
- export declare const Y: any;
4
- export declare const RAW_VALUE: any;
5
- export declare function indexData<T extends object>(data: T[]): (T & {})[];
2
+ import { INDEX } from '../constants';
3
+ export declare const X: unique symbol;
4
+ export declare const Y: unique symbol;
5
+ export declare const RAW_VALUE: unique symbol;
6
+ export declare function indexData<T extends object>(data: T[]): (T & {
7
+ [INDEX]: number;
8
+ })[];
6
9
  export declare function recordizeX<T>({ data, ...channels }: TransformArgsRow<T>, { withIndex }?: {
7
10
  withIndex: boolean;
8
11
  }): TransformArgsRecord<T>;