semiotic 3.5.3 → 3.6.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.
- package/CLAUDE.md +62 -4
- package/README.md +19 -12
- package/ai/componentMetadata.cjs +9 -2
- package/ai/dist/mcp-server.js +253 -3
- package/ai/examples.md +27 -0
- package/ai/schema.json +319 -49
- package/ai/system-prompt.md +1 -1
- package/dist/components/ai/audienceProfile.d.ts +90 -0
- package/dist/components/ai/audiences.d.ts +31 -0
- package/dist/components/ai/chartCapabilities.d.ts +55 -0
- package/dist/components/ai/chartCapabilityTypes.d.ts +196 -0
- package/dist/components/ai/diffProfile.d.ts +51 -0
- package/dist/components/ai/inferIntent.d.ts +24 -0
- package/dist/components/ai/intents.d.ts +34 -0
- package/dist/components/ai/profileData.d.ts +16 -0
- package/dist/components/ai/qualityFixtures.d.ts +2 -0
- package/dist/components/ai/qualityScorecard.d.ts +82 -0
- package/dist/components/ai/repairChartConfig.d.ts +73 -0
- package/dist/components/ai/streamingTypes.d.ts +64 -0
- package/dist/components/ai/suggestCharts.d.ts +76 -0
- package/dist/components/ai/suggestDashboard.d.ts +92 -0
- package/dist/components/ai/suggestStreamCharts.d.ts +34 -0
- package/dist/components/ai/suggestStretchCharts.d.ts +60 -0
- package/dist/components/ai/useChartSuggestions.d.ts +22 -0
- package/dist/components/charts/geo/ChoroplethMap.capability.d.ts +2 -0
- package/dist/components/charts/geo/DistanceCartogram.capability.d.ts +2 -0
- package/dist/components/charts/geo/FlowMap.capability.d.ts +2 -0
- package/dist/components/charts/geo/ProportionalSymbolMap.capability.d.ts +2 -0
- package/dist/components/charts/index.d.ts +4 -4
- package/dist/components/charts/network/ChordDiagram.capability.d.ts +2 -0
- package/dist/components/charts/network/CirclePack.capability.d.ts +2 -0
- package/dist/components/charts/network/ForceDirectedGraph.capability.d.ts +2 -0
- package/dist/components/charts/network/OrbitDiagram.capability.d.ts +2 -0
- package/dist/components/charts/network/ProcessSankey.capability.d.ts +2 -0
- package/dist/components/charts/network/SankeyDiagram.capability.d.ts +2 -0
- package/dist/components/charts/network/TreeDiagram.capability.d.ts +2 -0
- package/dist/components/charts/network/Treemap.capability.d.ts +2 -0
- package/dist/components/charts/network/Treemap.d.ts +8 -0
- package/dist/components/charts/ordinal/BarChart.capability.d.ts +2 -0
- package/dist/components/charts/ordinal/BoxPlot.capability.d.ts +2 -0
- package/dist/components/charts/ordinal/DonutChart.capability.d.ts +2 -0
- package/dist/components/charts/ordinal/DotPlot.capability.d.ts +2 -0
- package/dist/components/charts/ordinal/FunnelChart.capability.d.ts +2 -0
- package/dist/components/charts/ordinal/GaugeChart.capability.d.ts +2 -0
- package/dist/components/charts/ordinal/GaugeChart.d.ts +10 -0
- package/dist/components/charts/ordinal/GroupedBarChart.capability.d.ts +2 -0
- package/dist/components/charts/ordinal/Histogram.capability.d.ts +2 -0
- package/dist/components/charts/ordinal/Histogram.d.ts +4 -2
- package/dist/components/charts/ordinal/LikertChart.capability.d.ts +2 -0
- package/dist/components/charts/ordinal/LikertChart.d.ts +1 -1
- package/dist/components/charts/ordinal/LikertChart.defaults.d.ts +1 -0
- package/dist/components/charts/ordinal/PieChart.capability.d.ts +2 -0
- package/dist/components/charts/ordinal/RidgelinePlot.capability.d.ts +2 -0
- package/dist/components/charts/ordinal/StackedBarChart.capability.d.ts +2 -0
- package/dist/components/charts/ordinal/SwarmPlot.capability.d.ts +2 -0
- package/dist/components/charts/ordinal/SwimlaneChart.capability.d.ts +2 -0
- package/dist/components/charts/ordinal/ViolinPlot.capability.d.ts +2 -0
- package/dist/components/charts/realtime/RealtimeHeatmap.capability.d.ts +2 -0
- package/dist/components/charts/realtime/RealtimeHistogram.capability.d.ts +2 -0
- package/dist/components/charts/realtime/RealtimeHistogram.d.ts +22 -0
- package/dist/components/charts/realtime/RealtimeLineChart.capability.d.ts +2 -0
- package/dist/components/charts/realtime/RealtimeSwarmChart.capability.d.ts +2 -0
- package/dist/components/charts/realtime/RealtimeWaterfallChart.capability.d.ts +2 -0
- package/dist/components/charts/realtime/TemporalHistogram.capability.d.ts +7 -0
- package/dist/components/charts/shared/chartSpecs.d.ts +0 -34
- package/dist/components/charts/shared/gaugeGradient.d.ts +62 -0
- package/dist/components/charts/shared/hooks.d.ts +2 -2
- package/dist/components/charts/shared/streamPropsHelpers.d.ts +2 -2
- package/dist/components/charts/shared/types.d.ts +11 -2
- package/dist/components/charts/shared/useChartSetup.d.ts +2 -2
- package/dist/components/charts/shared/useCustomChartSetup.d.ts +1 -1
- package/dist/components/charts/xy/AreaChart.capability.d.ts +10 -0
- package/dist/components/charts/xy/AreaChart.d.ts +15 -0
- package/dist/components/charts/xy/BubbleChart.capability.d.ts +2 -0
- package/dist/components/charts/xy/CandlestickChart.capability.d.ts +2 -0
- package/dist/components/charts/xy/ConnectedScatterplot.capability.d.ts +2 -0
- package/dist/components/charts/xy/DifferenceChart.capability.d.ts +8 -0
- package/dist/components/charts/xy/Heatmap.capability.d.ts +9 -0
- package/dist/components/charts/xy/LineChart.capability.d.ts +9 -0
- package/dist/components/charts/xy/MinimapChart.capability.d.ts +2 -0
- package/dist/components/charts/xy/MultiAxisLineChart.capability.d.ts +2 -0
- package/dist/components/charts/xy/QuadrantChart.capability.d.ts +2 -0
- package/dist/components/charts/xy/QuadrantChart.d.ts +5 -2
- package/dist/components/charts/xy/QuadrantChart.defaults.d.ts +2 -0
- package/dist/components/charts/xy/Scatterplot.capability.d.ts +2 -0
- package/dist/components/charts/xy/StackedAreaChart.capability.d.ts +2 -0
- package/dist/components/data/DataSummarizer.d.ts +45 -0
- package/dist/components/semiotic-ai.d.ts +36 -1
- package/dist/components/semiotic-realtime.d.ts +3 -3
- package/dist/components/semiotic-server.d.ts +1 -0
- package/dist/components/semiotic-xy.d.ts +2 -2
- package/dist/components/semiotic.d.ts +5 -4
- package/dist/components/server/renderToStaticSVG.d.ts +2 -0
- package/dist/components/server/staticLegend.d.ts +35 -0
- package/dist/components/store/ThemeStore.d.ts +2 -0
- package/dist/components/store/useChartFocus.d.ts +43 -0
- package/dist/components/store/useChartInterrogation.d.ts +141 -0
- package/dist/components/stream/NetworkSVGOverlay.d.ts +2 -1
- package/dist/components/stream/OrdinalSVGOverlay.d.ts +2 -1
- package/dist/components/stream/SVGOverlay.d.ts +2 -1
- package/dist/components/stream/SceneToSVG.d.ts +1 -1
- package/dist/components/stream/geoTypes.d.ts +2 -1
- package/dist/components/stream/hoverUtils.d.ts +1 -0
- package/dist/components/stream/legendRenderer.d.ts +2 -1
- package/dist/components/stream/networkTypes.d.ts +2 -1
- package/dist/components/stream/ordinalTypes.d.ts +16 -2
- package/dist/components/stream/renderers/wedgePathBuilder.d.ts +31 -0
- package/dist/components/stream/types.d.ts +2 -1
- package/dist/components/types/legendTypes.d.ts +15 -0
- package/dist/components/types/marginType.d.ts +17 -3
- package/dist/geo.min.js +1 -1
- package/dist/geo.module.min.js +1 -1
- package/dist/network.min.js +1 -1
- package/dist/network.module.min.js +1 -1
- package/dist/ordinal.min.js +1 -1
- package/dist/ordinal.module.min.js +1 -1
- package/dist/realtime.min.js +1 -1
- package/dist/realtime.module.min.js +1 -1
- package/dist/semiotic-ai.d.ts +36 -1
- package/dist/semiotic-ai.min.js +1 -1
- package/dist/semiotic-ai.module.min.js +1 -1
- package/dist/semiotic-realtime.d.ts +3 -3
- package/dist/semiotic-server.d.ts +1 -0
- package/dist/semiotic-utils.min.js +1 -1
- package/dist/semiotic-utils.module.min.js +1 -1
- package/dist/semiotic-xy.d.ts +2 -2
- package/dist/semiotic.d.ts +5 -4
- package/dist/semiotic.min.js +1 -1
- package/dist/semiotic.module.min.js +1 -1
- package/dist/server.min.js +1 -1
- package/dist/server.module.min.js +1 -1
- package/dist/xy.min.js +1 -1
- package/dist/xy.module.min.js +1 -1
- package/package.json +25 -24
|
@@ -6,6 +6,7 @@ import type { LegendInteractionMode, LegendPosition } from "../shared/hooks";
|
|
|
6
6
|
import type { ChartMode, ChartAccessor, SelectionConfig } from "../shared/types";
|
|
7
7
|
import type { OnObservationCallback } from "../../store/ObservationStore";
|
|
8
8
|
import type { Datum } from "../shared/datumTypes";
|
|
9
|
+
export type RealtimeHistogramDirection = "up" | "down";
|
|
9
10
|
export interface RealtimeHistogramProps<TDatum extends Datum = Datum> {
|
|
10
11
|
/** Display mode: "primary" (full chrome), "context" (compact), "sparkline" (inline) */
|
|
11
12
|
mode?: ChartMode;
|
|
@@ -44,6 +45,14 @@ export interface RealtimeHistogramProps<TDatum extends Datum = Datum> {
|
|
|
44
45
|
timeExtent?: [number, number];
|
|
45
46
|
/** Fixed value domain */
|
|
46
47
|
valueExtent?: [number, number];
|
|
48
|
+
/**
|
|
49
|
+
* Direction bars grow from the baseline.
|
|
50
|
+
* "up" uses the normal y-domain. "down" flips the resolved value
|
|
51
|
+
* domain so bars grow downward from the top, useful for mirrored
|
|
52
|
+
* histogram layouts. Explicit valueExtent is reversed.
|
|
53
|
+
* @default "up"
|
|
54
|
+
*/
|
|
55
|
+
direction?: RealtimeHistogramDirection;
|
|
47
56
|
/** Extent padding factor */
|
|
48
57
|
extentPadding?: number;
|
|
49
58
|
/**
|
|
@@ -175,6 +184,19 @@ export declare const RealtimeHistogram: {
|
|
|
175
184
|
<TDatum extends Datum = Datum>(props: RealtimeHistogramProps<TDatum> & React.RefAttributes<RealtimeFrameHandle>): React.ReactElement | null;
|
|
176
185
|
displayName?: string;
|
|
177
186
|
};
|
|
187
|
+
export interface TemporalHistogramProps<TDatum extends Datum = Datum> extends Omit<RealtimeHistogramProps<TDatum>, "data" | "windowSize" | "windowMode"> {
|
|
188
|
+
/** Static data array for a bounded temporal histogram. */
|
|
189
|
+
data: TDatum[];
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Static-data sibling for temporal histograms. Use this when the data is a
|
|
193
|
+
* bounded array rather than a ref-driven stream; the realtime push API is not
|
|
194
|
+
* part of this public surface.
|
|
195
|
+
*/
|
|
196
|
+
export declare function TemporalHistogram<TDatum extends Datum = Datum>(props: TemporalHistogramProps<TDatum>): import("react/jsx-runtime").JSX.Element;
|
|
197
|
+
export declare namespace TemporalHistogram {
|
|
198
|
+
var displayName: string;
|
|
199
|
+
}
|
|
178
200
|
/** @deprecated Use `RealtimeHistogram` (the canonical public name) instead. The
|
|
179
201
|
* `RealtimeTemporalHistogram` alias is preserved for back-compat with code
|
|
180
202
|
* written before the rename and will be removed in a future major version. */
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { StreamChartCapability } from "../../ai/streamingTypes";
|
|
2
|
+
/**
|
|
3
|
+
* TemporalHistogram is the bounded sibling of RealtimeHistogram — same chart
|
|
4
|
+
* but for static data with a fixed window. For stream selection it competes
|
|
5
|
+
* with RealtimeHistogram; the choice depends on retention.
|
|
6
|
+
*/
|
|
7
|
+
export declare const TemporalHistogramCapability: StreamChartCapability;
|
|
@@ -1,37 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Single source of truth for per-chart prop specifications.
|
|
3
|
-
*
|
|
4
|
-
* Three downstream consumers used to maintain their own per-chart entries:
|
|
5
|
-
* - `ai/schema.json` (LLM tool definitions)
|
|
6
|
-
* - `src/components/charts/shared/validationMap.ts` (runtime prop validation)
|
|
7
|
-
* - `ai/componentMetadata.cjs` (category buckets)
|
|
8
|
-
*
|
|
9
|
-
* Today, `ai/schema.json` is generated from this registry — run
|
|
10
|
-
* `npm run docs:chart-specs:schema` to refresh it after editing a spec.
|
|
11
|
-
* `validationMap.ts` and `ai/componentMetadata.cjs` are still hand-edited
|
|
12
|
-
* but are gated for parity by the registry: `check:chart-specs` (run via
|
|
13
|
-
* `npm run check:chart-specs`) regenerates each chart's schema/
|
|
14
|
-
* validation/metadata entries with the pure functions in
|
|
15
|
-
* `scripts/lib/chart-specs-generators.mjs` and fails the build on any
|
|
16
|
-
* drift, including unexpected adds or removes that bypass the registry.
|
|
17
|
-
*
|
|
18
|
-
* Design notes:
|
|
19
|
-
* - Shared prop bags (common, xyAxis, ordinalAxis) live in `PROP_BAGS` and
|
|
20
|
-
* are referenced by name in each spec so common surface stays in one place.
|
|
21
|
-
* - The runtime PropType set ("string" | "number" | "boolean" | "array" |
|
|
22
|
-
* "object" | "function") is broader than JSON Schema's, but the schema
|
|
23
|
-
* generator emits whatever types this registry declares — including
|
|
24
|
-
* "function" inside type unions (canonical entries like
|
|
25
|
-
* `RidgelinePlot.tooltip: ["function", "object"]` and
|
|
26
|
-
* `SwimlaneChart.onBrush: "function"` already use this convention; LLMs
|
|
27
|
-
* read the union and pick a non-function alternative when they can't
|
|
28
|
-
* supply a function value). For props that are purely callbacks or
|
|
29
|
-
* escape hatches an LLM cannot meaningfully populate, tag the spec
|
|
30
|
-
* with `omitFromSchema: true` to keep it in validationMap but out of
|
|
31
|
-
* schema.json. `description` and `default` annotations surface in
|
|
32
|
-
* schema.json (and MCP responses) but are dropped from validationMap
|
|
33
|
-
* (which only reads `type` and `enum`).
|
|
34
|
-
*/
|
|
35
1
|
export type PropType = "string" | "number" | "boolean" | "array" | "object" | "function";
|
|
36
2
|
export type DataShape = "array" | "object" | "network" | "realtime" | "none";
|
|
37
3
|
export type ChartCategory = "xy" | "ordinal" | "network" | "geo" | "realtime";
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import type { Datum } from "./datumTypes";
|
|
2
|
+
export interface GaugeThresholdLike {
|
|
3
|
+
value: number;
|
|
4
|
+
color: string;
|
|
5
|
+
label?: string;
|
|
6
|
+
}
|
|
7
|
+
export interface GaugeGradientStop {
|
|
8
|
+
offset: number;
|
|
9
|
+
color: string;
|
|
10
|
+
}
|
|
11
|
+
export interface GaugeGradientFill {
|
|
12
|
+
colorStops: GaugeGradientStop[];
|
|
13
|
+
}
|
|
14
|
+
export interface GaugeArcDatum extends Datum {
|
|
15
|
+
category: string;
|
|
16
|
+
value: number;
|
|
17
|
+
_zone?: string;
|
|
18
|
+
_isFill: boolean;
|
|
19
|
+
_pctStart?: number;
|
|
20
|
+
_pct?: number;
|
|
21
|
+
_roundedEnds?: {
|
|
22
|
+
start?: boolean;
|
|
23
|
+
end?: boolean;
|
|
24
|
+
};
|
|
25
|
+
_nonInteractive?: boolean;
|
|
26
|
+
/** Pre-computed gradient colors for the rendered band. Each entry is
|
|
27
|
+
* the color for one equal-angle slice across the band's full angular
|
|
28
|
+
* span. The wedge renderer reads this and paints the slices itself
|
|
29
|
+
* inside a clip-mask shaped like the wedge's rounded outline. */
|
|
30
|
+
_gradientBand?: {
|
|
31
|
+
colors: string[];
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
export interface GaugeArcModel {
|
|
35
|
+
gaugeData: GaugeArcDatum[];
|
|
36
|
+
pieceStyle: (d: Datum, category?: string) => {
|
|
37
|
+
fill: string;
|
|
38
|
+
opacity?: number;
|
|
39
|
+
};
|
|
40
|
+
gaugeAnnotations: Datum[];
|
|
41
|
+
}
|
|
42
|
+
interface BuildGaugeArcModelOptions {
|
|
43
|
+
min: number;
|
|
44
|
+
max: number;
|
|
45
|
+
value: number;
|
|
46
|
+
thresholds?: GaugeThresholdLike[];
|
|
47
|
+
fillColor?: string;
|
|
48
|
+
backgroundColor: string;
|
|
49
|
+
fillZones: boolean;
|
|
50
|
+
showScaleLabels: boolean;
|
|
51
|
+
gradientFill?: GaugeGradientFill;
|
|
52
|
+
gradientSteps?: number;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Build the synthetic wedge data model used by GaugeChart.
|
|
56
|
+
*
|
|
57
|
+
* When `gradientFill` is provided, the visible fill is split into many thin
|
|
58
|
+
* slices and sampled against the supplied color stops so color changes along
|
|
59
|
+
* the arc length rather than by threshold zone.
|
|
60
|
+
*/
|
|
61
|
+
export declare function buildGaugeArcModel(options: BuildGaugeArcModelOptions): GaugeArcModel;
|
|
62
|
+
export {};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createLegend } from "./legendUtils";
|
|
2
2
|
import type { SelectionHookResult } from "./selectionUtils";
|
|
3
3
|
import type { OnObservationCallback } from "../../store/ObservationStore";
|
|
4
|
-
import type { Accessor, SelectionConfig, LinkedHoverProp, ChartMode } from "./types";
|
|
4
|
+
import type { Accessor, SelectionConfig, LinkedHoverProp, ChartMode, HoverHighlightMode } from "./types";
|
|
5
5
|
import type { MarginType, PartialMargin } from "../../types/marginType";
|
|
6
6
|
import type { TransitionConfig } from "../../stream/types";
|
|
7
7
|
import type { Datum } from "./datumTypes";
|
|
@@ -76,7 +76,7 @@ export declare function useChartSelection({ selection, linkedHover, fallbackFiel
|
|
|
76
76
|
x: number;
|
|
77
77
|
y: number;
|
|
78
78
|
}) => void;
|
|
79
|
-
hoverHighlight?:
|
|
79
|
+
hoverHighlight?: HoverHighlightMode;
|
|
80
80
|
colorByField?: string;
|
|
81
81
|
}): {
|
|
82
82
|
activeSelectionHook: SelectionHookResult | null;
|
|
@@ -2,7 +2,7 @@ import type { ReactNode } from "react";
|
|
|
2
2
|
import type { Datum } from "./datumTypes";
|
|
3
3
|
import { type TooltipProp } from "../../Tooltip/Tooltip";
|
|
4
4
|
import type { HoverData } from "../../realtime/types";
|
|
5
|
-
import type { LinkedHoverProp, SelectionConfig } from "./types";
|
|
5
|
+
import type { HoverHighlightMode, LinkedHoverProp, SelectionConfig } from "./types";
|
|
6
6
|
import type { OnObservationCallback } from "../../store/ObservationStore";
|
|
7
7
|
import type { AnimateProp } from "../../stream/pipelineTransitionUtils";
|
|
8
8
|
/**
|
|
@@ -74,7 +74,7 @@ export declare function buildCustomBehaviorProps(input: {
|
|
|
74
74
|
x: number;
|
|
75
75
|
y: number;
|
|
76
76
|
}) => void) | undefined;
|
|
77
|
-
hoverHighlight?:
|
|
77
|
+
hoverHighlight?: HoverHighlightMode;
|
|
78
78
|
customHoverBehavior: (d: Datum | null) => void;
|
|
79
79
|
customClickBehavior: (d: Datum | null) => void;
|
|
80
80
|
/**
|
|
@@ -43,6 +43,13 @@ export type LinkedBrushProp = string | {
|
|
|
43
43
|
* User-provided props always override mode defaults.
|
|
44
44
|
*/
|
|
45
45
|
export type ChartMode = "primary" | "context" | "sparkline";
|
|
46
|
+
/**
|
|
47
|
+
* Hover highlighting mode.
|
|
48
|
+
* `true` and `"series"` both dim non-hovered series/categories; the string
|
|
49
|
+
* form is accepted for compatibility with wrapper libraries that expose a
|
|
50
|
+
* more explicit per-series mode.
|
|
51
|
+
*/
|
|
52
|
+
export type HoverHighlightMode = boolean | "series";
|
|
46
53
|
/**
|
|
47
54
|
* Base props shared across all chart components
|
|
48
55
|
*/
|
|
@@ -55,7 +62,9 @@ export interface BaseChartProps {
|
|
|
55
62
|
height?: number;
|
|
56
63
|
/** Margin around the chart. Accepts a number (same on all sides) or an object
|
|
57
64
|
* with any subset of `top`/`bottom`/`left`/`right`. Missing sides fall back
|
|
58
|
-
* to the chart-mode defaults.
|
|
65
|
+
* to the chart-mode defaults. Use `"auto"` or `null` for a side to explicitly
|
|
66
|
+
* allow chart auto-reservation, e.g. `margin={{ right: "auto" }}` with a
|
|
67
|
+
* right-side legend. */
|
|
59
68
|
margin?: PartialMargin;
|
|
60
69
|
/** Auto-match width to parent container. Default: false */
|
|
61
70
|
responsiveWidth?: boolean;
|
|
@@ -110,7 +119,7 @@ export interface BaseChartProps {
|
|
|
110
119
|
y: number;
|
|
111
120
|
}) => void;
|
|
112
121
|
/** Dim non-hovered series when hovering a data mark. Requires `colorBy`. */
|
|
113
|
-
hoverHighlight?:
|
|
122
|
+
hoverHighlight?: HoverHighlightMode;
|
|
114
123
|
/** Max pixel distance for hover/click hit testing. Default 30. Increase for sparse charts, decrease for dense ones. */
|
|
115
124
|
hoverRadius?: number;
|
|
116
125
|
/** ID accessor for remove()/update() on XY charts. Extracts a unique identifier from each datum. */
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Datum } from "./datumTypes";
|
|
2
2
|
import { useChartLegendAndMargin, useLegendInteraction, DEFAULT_COLOR } from "./hooks";
|
|
3
3
|
import type { LegendInteractionMode, LegendPosition } from "./hooks";
|
|
4
|
-
import type { Accessor, SelectionConfig, LinkedHoverProp } from "./types";
|
|
4
|
+
import type { Accessor, SelectionConfig, LinkedHoverProp, HoverHighlightMode } from "./types";
|
|
5
5
|
import type { OnObservationCallback } from "../../store/ObservationStore";
|
|
6
6
|
import type { PartialMargin } from "../../types/marginType";
|
|
7
7
|
import type { SelectionHookResult } from "./selectionUtils";
|
|
@@ -57,7 +57,7 @@ export interface ChartSetupInput {
|
|
|
57
57
|
y: number;
|
|
58
58
|
}) => void;
|
|
59
59
|
/** Dim non-hovered series on data mark hover */
|
|
60
|
-
hoverHighlight?:
|
|
60
|
+
hoverHighlight?: HoverHighlightMode;
|
|
61
61
|
/** Loading state */
|
|
62
62
|
loading: boolean | undefined;
|
|
63
63
|
/** Custom content rendered in place of the default skeleton while `loading` is true. */
|
|
@@ -3,7 +3,7 @@ import { useChartMode } from "./hooks";
|
|
|
3
3
|
import { type ChartSetupResult } from "./useChartSetup";
|
|
4
4
|
import type { ChartMode, SelectionConfig, LinkedHoverProp } from "./types";
|
|
5
5
|
import type { OnObservationCallback } from "../../store/ObservationStore";
|
|
6
|
-
import type
|
|
6
|
+
import { type PartialMargin, type MarginType } from "../../types/marginType";
|
|
7
7
|
import type { Datum } from "./datumTypes";
|
|
8
8
|
import type { RealtimeFrameHandle } from "../../realtime/types";
|
|
9
9
|
/**
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ChartCapability } from "../../ai/chartCapabilityTypes";
|
|
2
|
+
/**
|
|
3
|
+
* AreaChart is treated as a strictly single-series chart. Multi-series areas
|
|
4
|
+
* are an occlusion nightmare — when the data has 2+ series we subselect the
|
|
5
|
+
* leading series (largest cumulative y) and surface a caveat so the reader
|
|
6
|
+
* knows they're looking at one slice, not the whole dataset. For full multi-
|
|
7
|
+
* series comparison the engine routes callers to LineChart; for two-series
|
|
8
|
+
* comparison, to DifferenceChart.
|
|
9
|
+
*/
|
|
10
|
+
export declare const AreaChartCapability: ChartCapability;
|
|
@@ -6,6 +6,13 @@ import type { LegendInteractionMode, LegendPosition } from "../shared/hooks";
|
|
|
6
6
|
import type { BaseChartProps, AxisConfig, ChartAccessor } from "../shared/types";
|
|
7
7
|
import { type TooltipProp } from "../../Tooltip/Tooltip";
|
|
8
8
|
import type { ForecastConfig, AnomalyConfig } from "../shared/statisticalOverlays";
|
|
9
|
+
export interface SemanticGradientStop {
|
|
10
|
+
/** Percent from baseline to line/top. 0 = baseline, 100 = line/top. */
|
|
11
|
+
at: number;
|
|
12
|
+
color: string;
|
|
13
|
+
/** Optional opacity applied to this stop. */
|
|
14
|
+
opacity?: number;
|
|
15
|
+
}
|
|
9
16
|
/**
|
|
10
17
|
* AreaChart component props
|
|
11
18
|
*/
|
|
@@ -90,6 +97,14 @@ export interface AreaChartProps<TDatum extends Datum = Datum> extends BaseChartP
|
|
|
90
97
|
color: string;
|
|
91
98
|
}>;
|
|
92
99
|
};
|
|
100
|
+
/**
|
|
101
|
+
* Semantic area gradient stops expressed in user-facing percentages:
|
|
102
|
+
* `at: 0` is the baseline and `at: 100` is the line/top of the area.
|
|
103
|
+
* This is converted to `gradientFill.colorStops`, whose raw offsets use
|
|
104
|
+
* the renderer coordinate convention (`0` = top, `1` = baseline).
|
|
105
|
+
* When set, this takes precedence over `gradientFill`.
|
|
106
|
+
*/
|
|
107
|
+
semanticGradient?: SemanticGradientStop[];
|
|
93
108
|
/**
|
|
94
109
|
* Area opacity (flat fill, ignored when gradientFill is set)
|
|
95
110
|
* @default 0.7
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ChartCapability } from "../../ai/chartCapabilityTypes";
|
|
2
|
+
/**
|
|
3
|
+
* DifferenceChart's native shape is two series. When the input has 2+ series
|
|
4
|
+
* we subselect the top two by total y and pivot them into the wide form the
|
|
5
|
+
* chart expects — same "narrow the dataset to make the chart honest" pattern
|
|
6
|
+
* AreaChart uses for its single-series fallback.
|
|
7
|
+
*/
|
|
8
|
+
export declare const DifferenceChartCapability: ChartCapability;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { ChartCapability } from "../../ai/chartCapabilityTypes";
|
|
2
|
+
/**
|
|
3
|
+
* Heatmap is a matrix: categorical × categorical (or temporal × categorical),
|
|
4
|
+
* with a numeric encoded as color. Without two genuine discrete dimensions
|
|
5
|
+
* for the axes, a heatmap of raw rows is sparse and unreadable. Tuned in
|
|
6
|
+
* Phase 2.1 after the scorecard surfaced Heatmap winning unsuitable
|
|
7
|
+
* compare-categories rankings.
|
|
8
|
+
*/
|
|
9
|
+
export declare const HeatmapCapability: ChartCapability;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { ChartCapability } from "../../ai/chartCapabilityTypes";
|
|
2
|
+
/**
|
|
3
|
+
* LineChart capability — declares what data shapes LineChart serves well,
|
|
4
|
+
* what intents it answers, and what variants change those answers.
|
|
5
|
+
*
|
|
6
|
+
* Read alongside `LineChart.tsx`; this file is what makes the chart
|
|
7
|
+
* "self-aware" for suggestion and interrogation flows.
|
|
8
|
+
*/
|
|
9
|
+
export declare const LineChartCapability: ChartCapability;
|
|
@@ -30,6 +30,9 @@ export interface QuadrantsConfig {
|
|
|
30
30
|
bottomRight: QuadrantConfig;
|
|
31
31
|
bottomLeft: QuadrantConfig;
|
|
32
32
|
}
|
|
33
|
+
export type QuadrantsConfigOverride = {
|
|
34
|
+
[TQuadrant in keyof QuadrantsConfig]?: Partial<QuadrantsConfig[TQuadrant]>;
|
|
35
|
+
};
|
|
33
36
|
/**
|
|
34
37
|
* Centerline style configuration
|
|
35
38
|
*/
|
|
@@ -55,8 +58,8 @@ export interface QuadrantChartProps<TDatum extends Datum = Datum> extends BaseCh
|
|
|
55
58
|
xCenter?: number;
|
|
56
59
|
/** Y-coordinate of the horizontal center line. Defaults to midpoint of y domain. */
|
|
57
60
|
yCenter?: number;
|
|
58
|
-
/**
|
|
59
|
-
quadrants
|
|
61
|
+
/** Optional quadrant overrides. Omitted quadrants and quadrant fields fall back to built-in defaults. */
|
|
62
|
+
quadrants?: QuadrantsConfigOverride;
|
|
60
63
|
/** Style for the center lines */
|
|
61
64
|
centerlineStyle?: CenterlineStyle;
|
|
62
65
|
/** Show quadrant labels @default true */
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { Datum } from "../charts/shared/datumTypes";
|
|
2
|
+
export type FieldType = "numeric" | "categorical" | "date" | "unknown";
|
|
3
|
+
export interface NumericFieldSummary {
|
|
4
|
+
type: "numeric";
|
|
5
|
+
min: number;
|
|
6
|
+
max: number;
|
|
7
|
+
mean: number;
|
|
8
|
+
median: number;
|
|
9
|
+
}
|
|
10
|
+
export interface DateFieldSummary {
|
|
11
|
+
type: "date";
|
|
12
|
+
min: string;
|
|
13
|
+
max: string;
|
|
14
|
+
}
|
|
15
|
+
export interface CategoricalFieldSummary {
|
|
16
|
+
type: "categorical";
|
|
17
|
+
distinctCount: number;
|
|
18
|
+
topValues: ReadonlyArray<{
|
|
19
|
+
value: string;
|
|
20
|
+
count: number;
|
|
21
|
+
}>;
|
|
22
|
+
distinctValues?: ReadonlyArray<string>;
|
|
23
|
+
}
|
|
24
|
+
export interface UnknownFieldSummary {
|
|
25
|
+
type: "unknown";
|
|
26
|
+
}
|
|
27
|
+
export type FieldSummary = NumericFieldSummary | DateFieldSummary | CategoricalFieldSummary | UnknownFieldSummary;
|
|
28
|
+
export interface DataSummary {
|
|
29
|
+
rowCount: number;
|
|
30
|
+
fields: Record<string, FieldSummary>;
|
|
31
|
+
sample: ReadonlyArray<Datum>;
|
|
32
|
+
}
|
|
33
|
+
export interface SummarizeOptions {
|
|
34
|
+
maxDistinct?: number;
|
|
35
|
+
sampleSize?: number;
|
|
36
|
+
/** Scan up to this many rows when discovering field keys (handles ragged rows). */
|
|
37
|
+
keyScanRows?: number;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Summarize a dataset for an LLM. Returns row count, per-field statistics, and a small sample.
|
|
41
|
+
*
|
|
42
|
+
* Designed so a model can answer questions about ranges, peaks, distributions, and categories
|
|
43
|
+
* without seeing the full dataset.
|
|
44
|
+
*/
|
|
45
|
+
export declare function summarizeData(data: ReadonlyArray<Datum> | null | undefined, options?: SummarizeOptions): DataSummary;
|
|
@@ -37,7 +37,7 @@ export { Treemap } from "./charts/network/Treemap";
|
|
|
37
37
|
export { CirclePack } from "./charts/network/CirclePack";
|
|
38
38
|
export { OrbitDiagram } from "./charts/network/OrbitDiagram";
|
|
39
39
|
export { RealtimeLineChart } from "./charts/realtime/RealtimeLineChart";
|
|
40
|
-
export { RealtimeHistogram } from "./charts/realtime/RealtimeHistogram";
|
|
40
|
+
export { RealtimeHistogram, TemporalHistogram } from "./charts/realtime/RealtimeHistogram";
|
|
41
41
|
export { RealtimeSwarmChart } from "./charts/realtime/RealtimeSwarmChart";
|
|
42
42
|
export { RealtimeWaterfallChart } from "./charts/realtime/RealtimeWaterfallChart";
|
|
43
43
|
export { RealtimeHeatmap } from "./charts/realtime/RealtimeHeatmap";
|
|
@@ -66,6 +66,41 @@ export { serializeSelections, deserializeSelections } from "./export/selectionSe
|
|
|
66
66
|
export type { SerializedSelections, SerializedSelection, SerializedFieldSelection } from "./export/selectionSerializer";
|
|
67
67
|
export { fromVegaLite } from "./data/fromVegaLite";
|
|
68
68
|
export type { VegaLiteSpec, VegaLiteEncoding } from "./data/fromVegaLite";
|
|
69
|
+
export { useChartInterrogation } from "./store/useChartInterrogation";
|
|
70
|
+
export type { UseChartInterrogationOptions, UseChartInterrogationResult, InterrogationContext, InterrogationFocus, InterrogationResult, InterrogationQuery, InterrogationMessage, } from "./store/useChartInterrogation";
|
|
71
|
+
export { useChartFocus } from "./store/useChartFocus";
|
|
72
|
+
export type { UseChartFocusOptions } from "./store/useChartFocus";
|
|
73
|
+
export { summarizeData } from "./data/DataSummarizer";
|
|
74
|
+
export type { DataSummary, FieldSummary, FieldType, NumericFieldSummary, DateFieldSummary, CategoricalFieldSummary, UnknownFieldSummary, SummarizeOptions, } from "./data/DataSummarizer";
|
|
75
|
+
export { profileData } from "./ai/profileData";
|
|
76
|
+
export type { ProfileDataOptions } from "./ai/profileData";
|
|
77
|
+
export { suggestCharts, scoreChart, explainCapabilityFit } from "./ai/suggestCharts";
|
|
78
|
+
export type { SuggestChartsOptions, RejectedCapability, ExplainCapabilityFitResult, } from "./ai/suggestCharts";
|
|
79
|
+
export { inferIntent } from "./ai/inferIntent";
|
|
80
|
+
export type { InferIntentResult } from "./ai/inferIntent";
|
|
81
|
+
export { suggestDashboard } from "./ai/suggestDashboard";
|
|
82
|
+
export type { DashboardPanel, DashboardSuggestion, SuggestDashboardOptions, } from "./ai/suggestDashboard";
|
|
83
|
+
export { applyAudienceBias, effectiveFamiliarity, stretchFamiliarityCeiling, } from "./ai/audienceProfile";
|
|
84
|
+
export type { AudienceProfile, AudienceTarget, AudienceBiasResult, } from "./ai/audienceProfile";
|
|
85
|
+
export { executivePersona, analystPersona, dataScientistPersona, BUILT_IN_AUDIENCES, } from "./ai/audiences";
|
|
86
|
+
export { suggestStretchCharts } from "./ai/suggestStretchCharts";
|
|
87
|
+
export type { StretchSuggestion, SuggestStretchChartsOptions, } from "./ai/suggestStretchCharts";
|
|
88
|
+
export { suggestStreamCharts, registerStreamChartCapability, unregisterStreamChartCapability, getStreamCapabilities, } from "./ai/suggestStreamCharts";
|
|
89
|
+
export type { SuggestStreamChartsOptions } from "./ai/suggestStreamCharts";
|
|
90
|
+
export type { StreamSchema, StreamFieldSchema, StreamFieldKind, StreamChartCapability, StreamIntentScorer, StreamSuggestion, } from "./ai/streamingTypes";
|
|
91
|
+
export { diffProfile } from "./ai/diffProfile";
|
|
92
|
+
export type { ProfileDiff, FieldTypeChange, PrimaryRoleChange, PrimaryRole } from "./ai/diffProfile";
|
|
93
|
+
export { repairChartConfig } from "./ai/repairChartConfig";
|
|
94
|
+
export type { RepairResult, RepairOkResult, RepairAlternativeResult, RepairUnknownResult, RepairOptions, } from "./ai/repairChartConfig";
|
|
95
|
+
export { runQualityScorecard } from "./ai/qualityScorecard";
|
|
96
|
+
export type { ScorecardFixture, ScorecardReport, PerCapabilityScore, PerFixtureScore, } from "./ai/qualityScorecard";
|
|
97
|
+
export { CANONICAL_FIXTURES } from "./ai/qualityFixtures";
|
|
98
|
+
export { useChartSuggestions } from "./ai/useChartSuggestions";
|
|
99
|
+
export type { UseChartSuggestionsOptions, UseChartSuggestionsResult } from "./ai/useChartSuggestions";
|
|
100
|
+
export { getCapabilities, getCapability, registerChartCapability, unregisterChartCapability, LineChartCapability, AreaChartCapability, StackedAreaChartCapability, ScatterplotCapability, ConnectedScatterplotCapability, BubbleChartCapability, QuadrantChartCapability, MultiAxisLineChartCapability, MinimapChartCapability, DifferenceChartCapability, CandlestickChartCapability, HeatmapCapability, BarChartCapability, GroupedBarChartCapability, StackedBarChartCapability, DotPlotCapability, PieChartCapability, DonutChartCapability, FunnelChartCapability, GaugeChartCapability, LikertChartCapability, SwimlaneChartCapability, HistogramCapability, BoxPlotCapability, SwarmPlotCapability, ViolinPlotCapability, RidgelinePlotCapability, ForceDirectedGraphCapability, SankeyDiagramCapability, ChordDiagramCapability, ProcessSankeyCapability, TreeDiagramCapability, TreemapCapability, CirclePackCapability, OrbitDiagramCapability, ChoroplethMapCapability, ProportionalSymbolMapCapability, FlowMapCapability, DistanceCartogramCapability, } from "./ai/chartCapabilities";
|
|
101
|
+
export type { ChartCapability, ChartDataProfile, ChartFamily, ChartImportPath, ChartRubric, ChartVariant, FieldCandidate, FieldKind, FitResult, IntentScorer, Suggestion, } from "./ai/chartCapabilityTypes";
|
|
102
|
+
export { listIntents, getIntent, registerIntent, BUILT_IN_INTENT_IDS } from "./ai/intents";
|
|
103
|
+
export type { BuiltInIntentId, IntentId, IntentDescriptor } from "./ai/intents";
|
|
69
104
|
export { useChartObserver } from "./store/useObservation";
|
|
70
105
|
export type { UseChartObserverOptions, UseChartObserverResult } from "./store/useObservation";
|
|
71
106
|
export type { ChartObservation, OnObservationCallback, HoverObservation, HoverEndObservation, BrushObservation, BrushEndObservation, SelectionObservation, SelectionEndObservation, ClickObservation, ClickEndObservation } from "./store/ObservationStore";
|
|
@@ -7,13 +7,13 @@ import StreamNetworkFrame from "./stream/StreamNetworkFrame";
|
|
|
7
7
|
import { RingBuffer } from "./realtime/RingBuffer";
|
|
8
8
|
import { IncrementalExtent } from "./realtime/IncrementalExtent";
|
|
9
9
|
import { RealtimeLineChart } from "./charts/realtime/RealtimeLineChart";
|
|
10
|
-
import { RealtimeHistogram } from "./charts/realtime/RealtimeHistogram";
|
|
10
|
+
import { RealtimeHistogram, TemporalHistogram } from "./charts/realtime/RealtimeHistogram";
|
|
11
11
|
import { RealtimeSwarmChart } from "./charts/realtime/RealtimeSwarmChart";
|
|
12
12
|
import { RealtimeWaterfallChart } from "./charts/realtime/RealtimeWaterfallChart";
|
|
13
13
|
import { RealtimeHeatmap } from "./charts/realtime/RealtimeHeatmap";
|
|
14
|
-
export { StreamXYFrame, StreamNetworkFrame, RingBuffer, IncrementalExtent, RealtimeLineChart, RealtimeHistogram, RealtimeSwarmChart, RealtimeWaterfallChart, RealtimeHeatmap };
|
|
14
|
+
export { StreamXYFrame, StreamNetworkFrame, RingBuffer, IncrementalExtent, RealtimeLineChart, RealtimeHistogram, TemporalHistogram, RealtimeSwarmChart, RealtimeWaterfallChart, RealtimeHeatmap };
|
|
15
15
|
export type { RealtimeLineChartProps } from "./charts/realtime/RealtimeLineChart";
|
|
16
|
-
export type { RealtimeHistogramProps } from "./charts/realtime/RealtimeHistogram";
|
|
16
|
+
export type { RealtimeHistogramProps, TemporalHistogramProps } from "./charts/realtime/RealtimeHistogram";
|
|
17
17
|
export type { RealtimeSwarmChartProps } from "./charts/realtime/RealtimeSwarmChart";
|
|
18
18
|
export type { RealtimeWaterfallChartProps } from "./charts/realtime/RealtimeWaterfallChart";
|
|
19
19
|
export type { RealtimeHeatmapProps } from "./charts/realtime/RealtimeHeatmap";
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { renderToStaticSVG, renderXYToStaticSVG, renderOrdinalToStaticSVG, renderNetworkToStaticSVG, renderGeoToStaticSVG, renderChart, renderToImage, renderDashboard, } from "./server/renderToStaticSVG";
|
|
2
2
|
export type { RenderToImageOptions, DashboardChart, DashboardLayout, RenderDashboardOptions, } from "./server/renderToStaticSVG";
|
|
3
|
+
export type { LegendLayout } from "./types/legendTypes";
|
|
3
4
|
export { renderToAnimatedGif, generateFrameSVGs, generateFrameSequence } from "./server/animatedGif";
|
|
4
5
|
export type { AnimatedGifOptions } from "./server/animatedGif";
|
|
5
6
|
export { resolveTheme, themeStyles } from "./server/themeResolver";
|
|
@@ -21,14 +21,14 @@ export { XYCustomChart } from "./charts/custom/XYCustomChart";
|
|
|
21
21
|
export type { StreamXYFrameProps, StreamXYFrameHandle } from "./stream/types";
|
|
22
22
|
export type { CustomLayout, LayoutContext, LayoutResult } from "./stream/customLayout";
|
|
23
23
|
export type { LineChartProps } from "./charts/xy/LineChart";
|
|
24
|
-
export type { AreaChartProps } from "./charts/xy/AreaChart";
|
|
24
|
+
export type { AreaChartProps, SemanticGradientStop } from "./charts/xy/AreaChart";
|
|
25
25
|
export type { DifferenceChartProps } from "./charts/xy/DifferenceChart";
|
|
26
26
|
export type { StackedAreaChartProps } from "./charts/xy/StackedAreaChart";
|
|
27
27
|
export type { ScatterplotProps } from "./charts/xy/Scatterplot";
|
|
28
28
|
export type { ConnectedScatterplotProps } from "./charts/xy/ConnectedScatterplot";
|
|
29
29
|
export type { BubbleChartProps } from "./charts/xy/BubbleChart";
|
|
30
30
|
export type { HeatmapProps } from "./charts/xy/Heatmap";
|
|
31
|
-
export type { QuadrantChartProps } from "./charts/xy/QuadrantChart";
|
|
31
|
+
export type { QuadrantChartProps, QuadrantsConfig, QuadrantsConfigOverride, QuadrantConfig, CenterlineStyle } from "./charts/xy/QuadrantChart";
|
|
32
32
|
export type { MultiAxisLineChartProps } from "./charts/xy/MultiAxisLineChart";
|
|
33
33
|
export type { CandlestickChartProps } from "./charts/xy/CandlestickChart";
|
|
34
34
|
export type { XYCustomChartProps } from "./charts/custom/XYCustomChart";
|
|
@@ -19,12 +19,13 @@ import { Tooltip, MultiLineTooltip, normalizeTooltip } from "./Tooltip/Tooltip";
|
|
|
19
19
|
import { RingBuffer } from "./realtime/RingBuffer";
|
|
20
20
|
import { IncrementalExtent } from "./realtime/IncrementalExtent";
|
|
21
21
|
import { RealtimeLineChart } from "./charts/realtime/RealtimeLineChart";
|
|
22
|
-
import { RealtimeTemporalHistogram, RealtimeHistogram } from "./charts/realtime/RealtimeHistogram";
|
|
22
|
+
import { RealtimeTemporalHistogram, RealtimeHistogram, TemporalHistogram } from "./charts/realtime/RealtimeHistogram";
|
|
23
23
|
import { RealtimeSwarmChart } from "./charts/realtime/RealtimeSwarmChart";
|
|
24
24
|
import { RealtimeWaterfallChart } from "./charts/realtime/RealtimeWaterfallChart";
|
|
25
25
|
import { RealtimeHeatmap } from "./charts/realtime/RealtimeHeatmap";
|
|
26
|
-
export { StreamXYFrame, StreamOrdinalFrame, StreamNetworkFrame, Scatterplot, ConnectedScatterplot, LineChart, AreaChart, DifferenceChart, StackedAreaChart, Heatmap, BubbleChart, BarChart, StackedBarChart, LikertChart, SwarmPlot, BoxPlot, Histogram, ViolinPlot, RidgelinePlot, DotPlot, ForceDirectedGraph, ChordDiagram, SankeyDiagram, ProcessSankey, TreeDiagram, PieChart, DonutChart, GaugeChart, FunnelChart, GroupedBarChart, SwimlaneChart, Treemap, CirclePack, OrbitDiagram, ScatterplotMatrix, MinimapChart, QuadrantChart, MultiAxisLineChart, CandlestickChart, XYCustomChart, NetworkCustomChart, OrdinalCustomChart, LinkedCharts, ThemeProvider, useTheme, exportChart, toConfig, fromConfig, toURL, fromURL, copyConfig, configToJSX, serializeSelections, deserializeSelections, fromVegaLite, ChartErrorBoundary, ChartContainer, ChartGrid, CategoryColorProvider, useCategoryColors, ContextLayout, DetailsPanel, Tooltip, MultiLineTooltip, normalizeTooltip, RingBuffer, IncrementalExtent, RealtimeLineChart, RealtimeTemporalHistogram, RealtimeHistogram, RealtimeSwarmChart, RealtimeWaterfallChart, RealtimeHeatmap, createHatchPattern };
|
|
27
|
-
export {
|
|
26
|
+
export { StreamXYFrame, StreamOrdinalFrame, StreamNetworkFrame, Scatterplot, ConnectedScatterplot, LineChart, AreaChart, DifferenceChart, StackedAreaChart, Heatmap, BubbleChart, BarChart, StackedBarChart, LikertChart, SwarmPlot, BoxPlot, Histogram, ViolinPlot, RidgelinePlot, DotPlot, ForceDirectedGraph, ChordDiagram, SankeyDiagram, ProcessSankey, TreeDiagram, PieChart, DonutChart, GaugeChart, FunnelChart, GroupedBarChart, SwimlaneChart, Treemap, CirclePack, OrbitDiagram, ScatterplotMatrix, MinimapChart, QuadrantChart, MultiAxisLineChart, CandlestickChart, XYCustomChart, NetworkCustomChart, OrdinalCustomChart, LinkedCharts, ThemeProvider, useTheme, exportChart, toConfig, fromConfig, toURL, fromURL, copyConfig, configToJSX, serializeSelections, deserializeSelections, fromVegaLite, ChartErrorBoundary, ChartContainer, ChartGrid, CategoryColorProvider, useCategoryColors, ContextLayout, DetailsPanel, Tooltip, MultiLineTooltip, normalizeTooltip, RingBuffer, IncrementalExtent, RealtimeLineChart, RealtimeTemporalHistogram, RealtimeHistogram, TemporalHistogram, RealtimeSwarmChart, RealtimeWaterfallChart, RealtimeHeatmap, createHatchPattern };
|
|
27
|
+
export type { LegendLayout } from "./types/legendTypes";
|
|
28
|
+
export { ScatterplotProps, ConnectedScatterplotProps, LineChartProps, AreaChartProps, SemanticGradientStop, DifferenceChartProps, StackedAreaChartProps, HeatmapProps, BubbleChartProps, BarChartProps, StackedBarChartProps, LikertChartProps, SwarmPlotProps, BoxPlotProps, HistogramProps, ViolinPlotProps, DotPlotProps, PieChartProps, DonutChartProps, GaugeChartProps, GaugeThreshold, FunnelChartProps, GroupedBarChartProps, SwimlaneChartProps, RidgelinePlotProps, OrbitDiagramProps, OrbitNode, ForceDirectedGraphProps, ChordDiagramProps, SankeyDiagramProps, ProcessSankeyProps, ProcessSankeyTick, TreeDiagramProps, TreemapProps, CirclePackProps, ScatterplotMatrixProps, MinimapChartProps, MinimapConfig, QuadrantChartProps, MultiAxisLineChartProps, MultiAxisSeriesConfig, CandlestickChartProps, QuadrantsConfig, QuadrantsConfigOverride, QuadrantConfig, CenterlineStyle, BaseChartProps, AxisConfig, Accessor, ChartAccessor, ChartMode } from "./charts";
|
|
28
29
|
export type { StreamXYFrameProps, StreamXYFrameHandle, StreamChartType, RuntimeMode, SceneNode, Changeset, StreamScales, StreamLayout, CurveType, CanvasRendererFn, XYFrameAxisConfig, BandConfig } from "./stream/types";
|
|
29
30
|
export type { StreamRendererFn } from "./stream/renderers/types";
|
|
30
31
|
export type { StreamOrdinalFrameProps, StreamOrdinalFrameHandle, OrdinalChartType, OrdinalScales, OrdinalSceneNode } from "./stream/ordinalTypes";
|
|
@@ -57,7 +58,7 @@ export { darkenColor, lightenColor } from "./charts/shared/colorManipulation";
|
|
|
57
58
|
export type { TooltipProp, TooltipConfig, TooltipField, MultiLineTooltipConfig } from "./Tooltip/Tooltip";
|
|
58
59
|
export type { ArrowOfTime, WindowMode, ThresholdType, LineStyle, BarStyle, WaterfallStyle, SwarmStyle, AnnotationContext, AnnotationAnchorMode, CrosshairStyle, HoverAnnotationConfig, HoverData } from "./realtime/types";
|
|
59
60
|
export type { RealtimeLineChartProps } from "./charts/realtime/RealtimeLineChart";
|
|
60
|
-
export type { RealtimeTemporalHistogramProps, RealtimeHistogramProps } from "./charts/realtime/RealtimeHistogram";
|
|
61
|
+
export type { RealtimeTemporalHistogramProps, RealtimeHistogramProps, TemporalHistogramProps } from "./charts/realtime/RealtimeHistogram";
|
|
61
62
|
export type { RealtimeSwarmChartProps } from "./charts/realtime/RealtimeSwarmChart";
|
|
62
63
|
export type { RealtimeWaterfallChartProps } from "./charts/realtime/RealtimeWaterfallChart";
|
|
63
64
|
export type { RealtimeHeatmapProps } from "./charts/realtime/RealtimeHeatmap";
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { Datum } from "../charts/shared/datumTypes";
|
|
2
|
+
import type { LegendLayout } from "../types/legendTypes";
|
|
2
3
|
/**
|
|
3
4
|
* Server-side rendering of Semiotic charts to standalone SVG strings.
|
|
4
5
|
*
|
|
@@ -33,6 +34,7 @@ interface ThemeAwareProps {
|
|
|
33
34
|
background?: string;
|
|
34
35
|
className?: string;
|
|
35
36
|
legendPosition?: "right" | "left" | "top" | "bottom";
|
|
37
|
+
legendLayout?: LegendLayout;
|
|
36
38
|
/** Prefix for SVG element IDs — used by renderDashboard to avoid collisions */
|
|
37
39
|
_idPrefix?: string;
|
|
38
40
|
}
|