semiotic 3.5.0 → 3.5.1

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 (35) hide show
  1. package/ai/schema.json +1 -1
  2. package/dist/components/charts/ordinal/BarChart.d.ts +2 -0
  3. package/dist/components/charts/ordinal/BoxPlot.d.ts +2 -0
  4. package/dist/components/charts/ordinal/DotPlot.d.ts +2 -0
  5. package/dist/components/charts/ordinal/GroupedBarChart.d.ts +2 -0
  6. package/dist/components/charts/ordinal/Histogram.d.ts +2 -0
  7. package/dist/components/charts/ordinal/LikertChart.d.ts +2 -0
  8. package/dist/components/charts/ordinal/RidgelinePlot.d.ts +2 -0
  9. package/dist/components/charts/ordinal/StackedBarChart.d.ts +2 -0
  10. package/dist/components/charts/ordinal/SwarmPlot.d.ts +2 -0
  11. package/dist/components/charts/ordinal/SwimlaneChart.d.ts +2 -0
  12. package/dist/components/charts/ordinal/ViolinPlot.d.ts +2 -0
  13. package/dist/components/charts/realtime/defaultRealtimeTooltip.d.ts +24 -0
  14. package/dist/components/charts/xy/AreaChart.d.ts +14 -0
  15. package/dist/components/charts/xy/BubbleChart.d.ts +4 -0
  16. package/dist/components/charts/xy/CandlestickChart.d.ts +4 -0
  17. package/dist/components/charts/xy/ConnectedScatterplot.d.ts +4 -0
  18. package/dist/components/charts/xy/Heatmap.d.ts +4 -0
  19. package/dist/components/charts/xy/LineChart.d.ts +12 -0
  20. package/dist/components/charts/xy/MinimapChart.d.ts +7 -0
  21. package/dist/components/charts/xy/Scatterplot.d.ts +4 -0
  22. package/dist/components/charts/xy/StackedAreaChart.d.ts +12 -0
  23. package/dist/ordinal.min.js +1 -1
  24. package/dist/ordinal.module.min.js +1 -1
  25. package/dist/realtime.min.js +1 -1
  26. package/dist/realtime.module.min.js +1 -1
  27. package/dist/semiotic-ai.min.js +1 -1
  28. package/dist/semiotic-ai.module.min.js +1 -1
  29. package/dist/semiotic.min.js +1 -1
  30. package/dist/semiotic.module.min.js +1 -1
  31. package/dist/server.min.js +1 -1
  32. package/dist/server.module.min.js +1 -1
  33. package/dist/xy.min.js +1 -1
  34. package/dist/xy.module.min.js +1 -1
  35. package/package.json +1 -1
package/ai/schema.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
3
  "name": "semiotic",
4
- "version": "3.5.0",
4
+ "version": "3.5.1",
5
5
  "description": "React data visualization library for charts, networks, and beyond",
6
6
  "tools": [
7
7
  {
@@ -92,6 +92,8 @@ export interface BarChartProps<TDatum extends Datum = Datum> extends BaseChartPr
92
92
  annotations?: Datum[];
93
93
  /** Custom formatter for category tick labels */
94
94
  categoryFormat?: CategoryFormatFn;
95
+ /** Fixed value-axis domain `[min, max]`. Either bound may be `undefined` to leave that side data-derived. */
96
+ valueExtent?: [number | undefined, number | undefined] | [number];
95
97
  frameProps?: Partial<Omit<StreamOrdinalFrameProps, "data" | "size">>;
96
98
  }
97
99
  /**
@@ -28,6 +28,8 @@ export interface BoxPlotProps<TDatum extends Datum = Datum> extends BaseChartPro
28
28
  annotations?: Datum[];
29
29
  /** Custom formatter for category tick labels */
30
30
  categoryFormat?: CategoryFormatFn;
31
+ /** Fixed value-axis domain `[min, max]`. Either bound may be `undefined` to leave that side data-derived. */
32
+ valueExtent?: [number | undefined, number | undefined] | [number];
31
33
  frameProps?: Partial<Omit<StreamOrdinalFrameProps, "data" | "size">>;
32
34
  }
33
35
  /**
@@ -36,6 +36,8 @@ export interface DotPlotProps<TDatum extends Datum = Datum> extends BaseChartPro
36
36
  annotations?: Datum[];
37
37
  /** Custom formatter for category tick labels */
38
38
  categoryFormat?: CategoryFormatFn;
39
+ /** Fixed value-axis domain `[min, max]`. Either bound may be `undefined` to leave that side data-derived. */
40
+ valueExtent?: [number | undefined, number | undefined] | [number];
39
41
  frameProps?: Partial<Omit<StreamOrdinalFrameProps, "data" | "size">>;
40
42
  }
41
43
  /**
@@ -32,6 +32,8 @@ export interface GroupedBarChartProps<TDatum extends Datum = Datum> extends Base
32
32
  annotations?: Datum[];
33
33
  /** Custom formatter for category tick labels */
34
34
  categoryFormat?: CategoryFormatFn;
35
+ /** Fixed value-axis domain `[min, max]`. Either bound may be `undefined` to leave that side data-derived. */
36
+ valueExtent?: [number | undefined, number | undefined] | [number];
35
37
  frameProps?: Partial<Omit<StreamOrdinalFrameProps, "data" | "size">>;
36
38
  }
37
39
  /**
@@ -72,6 +72,8 @@ export interface HistogramProps<TDatum extends Datum = Datum> extends BaseChartP
72
72
  };
73
73
  /** Custom formatter for category tick labels */
74
74
  categoryFormat?: CategoryFormatFn;
75
+ /** Fixed value-axis domain `[min, max]`. Either bound may be `undefined` to leave that side data-derived. Wins over Histogram's auto-computed shared bin extent — useful for pinning the axis to a known range so streamed updates don't shift the bins as min/max drift. */
76
+ valueExtent?: [number | undefined, number | undefined] | [number];
75
77
  frameProps?: Partial<Omit<StreamOrdinalFrameProps, "data" | "size">>;
76
78
  }
77
79
  /**
@@ -87,6 +87,8 @@ export interface LikertChartProps<TDatum extends Datum = Datum> extends BaseChar
87
87
  annotations?: Datum[];
88
88
  /** Custom formatter for category tick labels */
89
89
  categoryFormat?: CategoryFormatFn;
90
+ /** Fixed value-axis domain `[min, max]`. Either bound may be `undefined` to leave that side data-derived. Likert is normally pinned to symmetric proportions; pass `valueExtent` to override. */
91
+ valueExtent?: [number | undefined, number | undefined] | [number];
90
92
  frameProps?: Partial<Omit<StreamOrdinalFrameProps, "data" | "size">>;
91
93
  }
92
94
  export interface LikertChartHandle extends RealtimeFrameHandle {
@@ -29,6 +29,8 @@ export interface RidgelinePlotProps<TDatum extends Datum = Datum> extends BaseCh
29
29
  annotations?: Datum[];
30
30
  /** Custom formatter for category tick labels */
31
31
  categoryFormat?: CategoryFormatFn;
32
+ /** Fixed value-axis domain `[min, max]`. Either bound may be `undefined` to leave that side data-derived. */
33
+ valueExtent?: [number | undefined, number | undefined] | [number];
32
34
  frameProps?: Partial<Omit<StreamOrdinalFrameProps, "data" | "size">>;
33
35
  }
34
36
  /**
@@ -33,6 +33,8 @@ export interface StackedBarChartProps<TDatum extends Datum = Datum> extends Base
33
33
  annotations?: Datum[];
34
34
  /** Custom formatter for category tick labels */
35
35
  categoryFormat?: CategoryFormatFn;
36
+ /** Fixed value-axis domain `[min, max]`. Either bound may be `undefined` to leave that side data-derived. Stacked bars auto-extend the value domain to cover the cumulative stack unless `valueExtent` is fully specified. */
37
+ valueExtent?: [number | undefined, number | undefined] | [number];
36
38
  frameProps?: Partial<Omit<StreamOrdinalFrameProps, "data" | "size">>;
37
39
  }
38
40
  /**
@@ -41,6 +41,8 @@ export interface SwarmPlotProps<TDatum extends Datum = Datum> extends BaseChartP
41
41
  };
42
42
  /** Custom formatter for category tick labels */
43
43
  categoryFormat?: CategoryFormatFn;
44
+ /** Fixed value-axis domain `[min, max]`. Either bound may be `undefined` to leave that side data-derived. */
45
+ valueExtent?: [number | undefined, number | undefined] | [number];
44
46
  frameProps?: Partial<Omit<StreamOrdinalFrameProps, "data" | "size">>;
45
47
  }
46
48
  /**
@@ -83,6 +83,8 @@ export interface SwimlaneChartProps<TDatum extends Datum = Datum> extends BaseCh
83
83
  color: string;
84
84
  opacity?: number;
85
85
  };
86
+ /** Fixed value-axis domain `[min, max]`. Either bound may be `undefined` to leave that side data-derived. */
87
+ valueExtent?: [number | undefined, number | undefined] | [number];
86
88
  /** Pass-through props to StreamOrdinalFrame */
87
89
  frameProps?: Partial<Omit<StreamOrdinalFrameProps, "data" | "size">>;
88
90
  }
@@ -40,6 +40,8 @@ export interface ViolinPlotProps<TDatum extends Datum = Datum> extends BaseChart
40
40
  };
41
41
  /** Custom formatter for category tick labels */
42
42
  categoryFormat?: CategoryFormatFn;
43
+ /** Fixed value-axis domain `[min, max]`. Either bound may be `undefined` to leave that side data-derived. */
44
+ valueExtent?: [number | undefined, number | undefined] | [number];
43
45
  frameProps?: Partial<Omit<StreamOrdinalFrameProps, "data" | "size">>;
44
46
  }
45
47
  /**
@@ -40,4 +40,28 @@ export declare function buildDefaultRealtimeTooltip<TDatum extends Datum = Datum
40
40
  * scene builder).
41
41
  */
42
42
  export declare function buildWaterfallTooltip<TDatum extends Datum = Datum>(options?: DefaultRealtimeTooltipOptions<TDatum>): (d: HoverData) => ReactNode;
43
+ /**
44
+ * Heatmap-specific default tooltip.
45
+ *
46
+ * The streaming heatmap aggregates raw points into 2D bins; each cell's
47
+ * datum is `{ xi, yi, value, count, sum, xCenter, yCenter, agg }`. The
48
+ * generic `x: <time>, y: <value>` shape is meaningless because the cell
49
+ * doesn't carry the user's original fields — it carries bin indices and
50
+ * aggregated counts.
51
+ *
52
+ * This tooltip surfaces the user-relevant info:
53
+ * x: <data-space x-center of the bin>
54
+ * y: <data-space y-center of the bin>
55
+ * count: 12 (when datum.count is present — streaming path)
56
+ * sum: 142 (when agg === "sum")
57
+ * mean: 11.83 (when agg === "mean")
58
+ *
59
+ * For `agg === "sum"` we always surface the sum (it's the metric the
60
+ * heatmap is colored by, even when sum happens to equal count).
61
+ *
62
+ * Falls back to the canonical x/y shape if the enriched fields are
63
+ * absent (e.g. a non-streaming render path); the count/sum/mean rows
64
+ * only appear when the matching field is present on the datum.
65
+ */
66
+ export declare function buildHeatmapTooltip<TDatum extends Datum = Datum>(options?: DefaultRealtimeTooltipOptions<TDatum>): (d: HoverData) => ReactNode;
43
67
  export {};
@@ -159,6 +159,20 @@ export interface AreaChartProps<TDatum extends Datum = Datum> extends BaseChartP
159
159
  * Annotation objects to render on the chart
160
160
  */
161
161
  annotations?: Datum[];
162
+ /**
163
+ * Fixed x domain `[min, max]`. Either bound may be `undefined` to leave
164
+ * that side data-derived. Useful for pinning a time axis to a known
165
+ * window (e.g. last 24 hours) so streamed updates don't shift the
166
+ * left/right edges as data flows in.
167
+ */
168
+ xExtent?: [number | undefined, number | undefined] | [number];
169
+ /**
170
+ * Fixed y domain `[min, max]`. Either bound may be `undefined` to leave
171
+ * that side data-derived. The fill baseline is the y-domain minimum, so
172
+ * setting `yExtent={[0, 100]}` anchors both the axis AND the area's
173
+ * baseline at 0 — the typical "percentage / counter" shape.
174
+ */
175
+ yExtent?: [number | undefined, number | undefined] | [number];
162
176
  /**
163
177
  * Additional StreamXYFrame props for advanced customization
164
178
  * For full control, consider using StreamXYFrame directly
@@ -110,6 +110,10 @@ export interface BubbleChartProps<TDatum extends Datum = Datum> extends BaseChar
110
110
  * Annotation objects to render on the chart
111
111
  */
112
112
  annotations?: Datum[];
113
+ /** Fixed x domain `[min, max]` (either bound may be undefined to leave that side data-derived). */
114
+ xExtent?: [number | undefined, number | undefined] | [number];
115
+ /** Fixed y domain `[min, max]` (either bound may be undefined to leave that side data-derived). */
116
+ yExtent?: [number | undefined, number | undefined] | [number];
113
117
  /**
114
118
  * Additional StreamXYFrame props for advanced customization
115
119
  * For full control, consider using StreamXYFrame directly
@@ -19,6 +19,10 @@ export interface CandlestickChartProps<TDatum extends Datum = Datum> extends Bas
19
19
  candlestickStyle?: CandlestickStyle;
20
20
  tooltip?: TooltipProp;
21
21
  annotations?: Datum[];
22
+ /** Fixed x domain `[min, max]` (either bound may be undefined to leave that side data-derived). */
23
+ xExtent?: [number | undefined, number | undefined] | [number];
24
+ /** Fixed y domain `[min, max]` (either bound may be undefined to leave that side data-derived). */
25
+ yExtent?: [number | undefined, number | undefined] | [number];
22
26
  enableHover?: boolean;
23
27
  showGrid?: boolean;
24
28
  frameProps?: Partial<Omit<StreamXYFrameProps, "chartType" | "data" | "size">>;
@@ -37,6 +37,10 @@ export interface ConnectedScatterplotProps<TDatum extends Datum = Datum> extends
37
37
  legendInteraction?: LegendInteractionMode;
38
38
  /** Annotation objects to render on the chart */
39
39
  annotations?: Datum[];
40
+ /** Fixed x domain `[min, max]` (either bound may be undefined to leave that side data-derived). */
41
+ xExtent?: [number | undefined, number | undefined] | [number];
42
+ /** Fixed y domain `[min, max]` (either bound may be undefined to leave that side data-derived). */
43
+ yExtent?: [number | undefined, number | undefined] | [number];
40
44
  /** Additional StreamXYFrame props for advanced customization */
41
45
  frameProps?: Partial<Omit<StreamXYFrameProps, "chartType" | "data" | "size">>;
42
46
  }
@@ -114,6 +114,10 @@ export interface HeatmapProps<TDatum extends Datum = Datum> extends BaseChartPro
114
114
  * Annotation objects to render on the chart
115
115
  */
116
116
  annotations?: Datum[];
117
+ /** Fixed x domain `[min, max]` (either bound may be undefined to leave that side data-derived). */
118
+ xExtent?: [number | undefined, number | undefined] | [number];
119
+ /** Fixed y domain `[min, max]` (either bound may be undefined to leave that side data-derived). */
120
+ yExtent?: [number | undefined, number | undefined] | [number];
117
121
  /**
118
122
  * Additional StreamXYFrame props for advanced customization
119
123
  * For full control, consider using StreamXYFrame directly
@@ -181,6 +181,18 @@ export interface LineChartProps<TDatum extends Datum = Datum> extends BaseChartP
181
181
  * envelope around the extrapolated forecast region.
182
182
  */
183
183
  forecast?: ForecastConfig;
184
+ /**
185
+ * Fixed x domain `[min, max]`. Either bound may be `undefined` to leave
186
+ * that side data-derived.
187
+ */
188
+ xExtent?: [number | undefined, number | undefined] | [number];
189
+ /**
190
+ * Fixed y domain `[min, max]`. Either bound may be `undefined` to leave
191
+ * that side data-derived. Wins over the auto-computed envelope extent
192
+ * when forecast bounds are present, so explicit user intent stays
193
+ * authoritative.
194
+ */
195
+ yExtent?: [number | undefined, number | undefined] | [number];
184
196
  /**
185
197
  * Additional StreamXYFrame props for advanced customization
186
198
  * For full control, consider using StreamXYFrame directly
@@ -67,6 +67,13 @@ export interface MinimapChartProps<TDatum extends Datum = Datum> extends Omit<Ba
67
67
  onBrush?: (extent: [number, number] | null) => void;
68
68
  /** Controlled brush extent */
69
69
  brushExtent?: [number, number];
70
+ /**
71
+ * Fixed y domain `[min, max]` (either bound may be undefined to leave
72
+ * that side data-derived). xExtent is reserved for brush selection on
73
+ * MinimapChart — pass `frameProps.xExtent` if you need to override the
74
+ * brushed x range from advanced consumers.
75
+ */
76
+ yExtent?: [number | undefined, number | undefined] | [number];
70
77
  /** Additional StreamXYFrame props */
71
78
  frameProps?: Partial<Omit<StreamXYFrameProps, "chartType" | "data" | "size">>;
72
79
  }
@@ -45,6 +45,10 @@ export interface ScatterplotProps<TDatum extends Datum = Datum> extends BaseChar
45
45
  legendPosition?: LegendPosition;
46
46
  /** Annotation objects to render on the chart */
47
47
  annotations?: Datum[];
48
+ /** Fixed x domain `[min, max]` (either bound may be undefined to leave that side data-derived). */
49
+ xExtent?: [number | undefined, number | undefined] | [number];
50
+ /** Fixed y domain `[min, max]` (either bound may be undefined to leave that side data-derived). */
51
+ yExtent?: [number | undefined, number | undefined] | [number];
48
52
  /** Additional StreamXYFrame props for advanced customization */
49
53
  frameProps?: Partial<Omit<StreamXYFrameProps, "chartType" | "data" | "size">>;
50
54
  }
@@ -159,6 +159,18 @@ export interface StackedAreaChartProps<TDatum extends Datum = Datum> extends Bas
159
159
  * Annotation objects to render on the chart
160
160
  */
161
161
  annotations?: Datum[];
162
+ /**
163
+ * Fixed x domain `[min, max]`. Either bound may be `undefined` to leave
164
+ * that side data-derived.
165
+ */
166
+ xExtent?: [number | undefined, number | undefined] | [number];
167
+ /**
168
+ * Fixed y domain `[min, max]`. Either bound may be `undefined` to leave
169
+ * that side data-derived. Stacked areas auto-extend the y domain to
170
+ * cover the cumulative sum unless `yExtent` is fully specified —
171
+ * passing `yExtent={[0, 200]}` pins both bounds.
172
+ */
173
+ yExtent?: [number | undefined, number | undefined] | [number];
162
174
  /**
163
175
  * Additional StreamXYFrame props for advanced customization
164
176
  * For full control, consider using StreamXYFrame directly