@opendata-ai/openchart-core 7.2.4 → 7.4.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/dist/index.d.ts +91 -11
- package/dist/index.js +469 -138
- package/dist/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +1 -1
- package/src/index.ts +9 -0
- package/src/labels/__tests__/collision.test.ts +49 -1
- package/src/labels/collision.ts +39 -2
- package/src/labels/index.ts +1 -0
- package/src/layout/__tests__/text-measure.test.ts +7 -8
- package/src/layout/chrome.ts +5 -1
- package/src/layout/index.ts +3 -0
- package/src/layout/text-measure.ts +347 -38
- package/src/responsive/index.ts +5 -0
- package/src/responsive/metrics.ts +51 -0
- package/src/styles/tokens.css +4 -0
- package/src/theme/defaults.ts +6 -3
- package/src/types/index.ts +1 -0
- package/src/types/layout.ts +26 -0
package/dist/index.d.ts
CHANGED
|
@@ -2411,6 +2411,8 @@ interface ResolvedChrome {
|
|
|
2411
2411
|
byline?: ResolvedChromeElement;
|
|
2412
2412
|
footer?: ResolvedChromeElement;
|
|
2413
2413
|
brand?: ResolvedChromeElement;
|
|
2414
|
+
/** Absolute y at which bottom-chrome relative offsets are anchored: area.y + area.height + x-axis extent. */
|
|
2415
|
+
bottomAnchorY?: number;
|
|
2414
2416
|
}
|
|
2415
2417
|
/** A single axis tick with computed position and formatted label. */
|
|
2416
2418
|
interface AxisTick {
|
|
@@ -2471,6 +2473,14 @@ interface AxisLayout {
|
|
|
2471
2473
|
* classic outside-the-area placement.
|
|
2472
2474
|
*/
|
|
2473
2475
|
tickPosition?: 'inline' | 'gutter';
|
|
2476
|
+
/** Extent in px beyond the chart-area edge occupied by tick labels + title. Engine-resolved from the final (post-thinning) tick set. */
|
|
2477
|
+
extent?: number;
|
|
2478
|
+
/** Absolute anchor for the axis title. Replaces renderer-side offset math. */
|
|
2479
|
+
titlePosition?: {
|
|
2480
|
+
x: number;
|
|
2481
|
+
y: number;
|
|
2482
|
+
angle?: number;
|
|
2483
|
+
};
|
|
2474
2484
|
}
|
|
2475
2485
|
/** Accessibility attributes for a mark. */
|
|
2476
2486
|
interface MarkAria {
|
|
@@ -2819,6 +2829,10 @@ interface ResolvedLabel {
|
|
|
2819
2829
|
background?: string;
|
|
2820
2830
|
/** Whether to show the paint-order stroke halo. Default true. */
|
|
2821
2831
|
halo?: boolean;
|
|
2832
|
+
/** Engine-measured text-block bounds. Renderers should use this for background rects instead of re-estimating. */
|
|
2833
|
+
bounds?: Rect;
|
|
2834
|
+
/** Source index carried through from the LabelCandidate, if the caller set one. */
|
|
2835
|
+
index?: number;
|
|
2822
2836
|
}
|
|
2823
2837
|
/** A resolved annotation with computed pixel positions. */
|
|
2824
2838
|
interface ResolvedAnnotation {
|
|
@@ -2869,6 +2883,8 @@ interface ResolvedAnnotation {
|
|
|
2869
2883
|
y: number;
|
|
2870
2884
|
style: TextStyle;
|
|
2871
2885
|
};
|
|
2886
|
+
/** Full placed extent: label bounds unioned with subtitle bounds. Collision and placement source of truth. */
|
|
2887
|
+
bounds?: Rect;
|
|
2872
2888
|
}
|
|
2873
2889
|
/** A single entry in a categorical legend. */
|
|
2874
2890
|
interface LegendEntry {
|
|
@@ -2892,6 +2908,15 @@ interface BaseLegendLayout {
|
|
|
2892
2908
|
/** Entry label style. */
|
|
2893
2909
|
labelStyle: TextStyle;
|
|
2894
2910
|
}
|
|
2911
|
+
/** Engine-resolved absolute position for a single legend entry. */
|
|
2912
|
+
interface LegendEntryPosition {
|
|
2913
|
+
x: number;
|
|
2914
|
+
y: number;
|
|
2915
|
+
labelX: number;
|
|
2916
|
+
labelY: number;
|
|
2917
|
+
width: number;
|
|
2918
|
+
row: number;
|
|
2919
|
+
}
|
|
2895
2920
|
/** Categorical legend with discrete swatch entries. */
|
|
2896
2921
|
interface CategoricalLegendLayout extends BaseLegendLayout {
|
|
2897
2922
|
/** Discriminant for legend type. Omitted means categorical (backwards compat). */
|
|
@@ -2906,6 +2931,10 @@ interface CategoricalLegendLayout extends BaseLegendLayout {
|
|
|
2906
2931
|
entryGap: number;
|
|
2907
2932
|
/** Fill color for the rounded chip background behind the colored bar. */
|
|
2908
2933
|
swatchChipFill: string;
|
|
2934
|
+
/** Engine-resolved absolute positions, parallel to `entries`. */
|
|
2935
|
+
entryPositions?: LegendEntryPosition[];
|
|
2936
|
+
/** Row advance used to build entryPositions (single source of truth). */
|
|
2937
|
+
rowHeight?: number;
|
|
2909
2938
|
}
|
|
2910
2939
|
/** A color stop in a gradient legend. */
|
|
2911
2940
|
interface GradientColorStop {
|
|
@@ -3829,21 +3858,27 @@ declare function resolveTheme(userTheme?: ThemeConfig, base?: Theme): ResolvedTh
|
|
|
3829
3858
|
declare function computeChrome(chrome: Chrome | undefined, theme: ResolvedTheme, width: number, measureText?: MeasureTextFn, chromeMode?: ChromeMode, padding?: number, watermark?: boolean, bottomLegendHeight?: number): ResolvedChrome;
|
|
3830
3859
|
|
|
3831
3860
|
/**
|
|
3832
|
-
*
|
|
3861
|
+
* Text measurement for environments without a DOM.
|
|
3833
3862
|
*
|
|
3834
|
-
* Uses
|
|
3835
|
-
*
|
|
3863
|
+
* Uses per-character advance-width tables measured from Inter (the default
|
|
3864
|
+
* chart font) for ~2-3% accuracy on Latin text at weights 400/700.
|
|
3865
|
+
* Other fonts set via theme.fonts.family still get a better-than-flat-ratio
|
|
3866
|
+
* approximation but no accuracy guarantee.
|
|
3836
3867
|
*
|
|
3837
|
-
*
|
|
3838
|
-
*
|
|
3839
|
-
|
|
3868
|
+
* Tables generated by scripts/generate-char-widths.mjs — regenerate, don't
|
|
3869
|
+
* hand-edit.
|
|
3870
|
+
*/
|
|
3871
|
+
|
|
3872
|
+
/**
|
|
3873
|
+
* Estimate the rendered width of a text string.
|
|
3874
|
+
*
|
|
3875
|
+
* Uses per-character advance widths measured from Inter (the default chart
|
|
3876
|
+
* font). Accurate to ~2-3% for Latin text at weights 400/700; other weights
|
|
3877
|
+
* are interpolated from the nearest table.
|
|
3840
3878
|
*/
|
|
3841
3879
|
declare function estimateTextWidth(text: string, fontSize: number, fontWeight?: number): number;
|
|
3842
3880
|
/**
|
|
3843
3881
|
* Width reserved for the "tryOpenData.ai" brand watermark in the bottom-right corner.
|
|
3844
|
-
* Accounts for ~14 chars at font size 12 with mixed weights, plus a gap
|
|
3845
|
-
* so adjacent text doesn't crowd it. Used by chrome and legend layout to avoid
|
|
3846
|
-
* overlapping the brand.
|
|
3847
3882
|
*/
|
|
3848
3883
|
declare const BRAND_RESERVE_WIDTH = 130;
|
|
3849
3884
|
/** Font size of the brand watermark (px). Shared between layout and renderer. */
|
|
@@ -3855,6 +3890,21 @@ declare const BRAND_MIN_WIDTH = 120;
|
|
|
3855
3890
|
* padding, label gaps) to maximize data area on small screens.
|
|
3856
3891
|
*/
|
|
3857
3892
|
declare const COMPACT_WIDTH = 420;
|
|
3893
|
+
/**
|
|
3894
|
+
* Distance from the top of a text box to its alphabetic baseline.
|
|
3895
|
+
*
|
|
3896
|
+
* Layout stores text positions as top-edge coordinates; renderers convert to
|
|
3897
|
+
* baseline coordinates with this ratio instead of `dominant-baseline: hanging`.
|
|
3898
|
+
* WebKit computes the hanging baseline from different font metrics than Blink
|
|
3899
|
+
* and never inherits dominant-baseline into tspans (WebKit bugs 139258 /
|
|
3900
|
+
* 297455), which shifted whole titles above the container on iOS Safari.
|
|
3901
|
+
* The 0.8 ratio matches Blink's rendered hanging position for typical UI
|
|
3902
|
+
* fonts (hanging sits at ~0.8 x ascent, Inter ascent ~= 0.97em) and the
|
|
3903
|
+
* Highcharts fontMetrics convention.
|
|
3904
|
+
*/
|
|
3905
|
+
declare function textAscent(fontSize: number): number;
|
|
3906
|
+
declare const heuristicMeasure: MeasureTextFn;
|
|
3907
|
+
declare function resolveMeasurer(measureText?: MeasureTextFn): MeasureTextFn;
|
|
3858
3908
|
|
|
3859
3909
|
/**
|
|
3860
3910
|
* Word-wrap a text string into lines that fit within a max width.
|
|
@@ -3971,13 +4021,25 @@ declare const MAX_LEFT_LABEL_FRACTION_COMPACT = 0.45;
|
|
|
3971
4021
|
declare const MAX_LEFT_LABEL_FRACTION_MEDIUM = 0.55;
|
|
3972
4022
|
/** Max fraction of container width reservable for left category labels (standard). */
|
|
3973
4023
|
declare const MAX_LEFT_LABEL_FRACTION_DEFAULT = 1;
|
|
4024
|
+
declare const X_AXIS_BAND_HEIGHT = 26;
|
|
4025
|
+
declare const X_AXIS_TITLE_BAND = 22;
|
|
4026
|
+
declare const X_AXIS_TITLE_BAND_ROTATED = 20;
|
|
4027
|
+
interface XAxisExtentInput {
|
|
4028
|
+
labels: string[];
|
|
4029
|
+
tickAngle?: number;
|
|
4030
|
+
hasTitle: boolean;
|
|
4031
|
+
tickFontSize: number;
|
|
4032
|
+
tickFontWeight: number;
|
|
4033
|
+
xAxisHeight?: number;
|
|
4034
|
+
measure?: (text: string, fontSize: number, fontWeight: number) => number;
|
|
4035
|
+
}
|
|
4036
|
+
declare function computeXAxisExtentFromLabels(input: XAxisExtentInput): number;
|
|
3974
4037
|
|
|
3975
4038
|
/**
|
|
3976
4039
|
* Label collision detection and resolution.
|
|
3977
4040
|
*
|
|
3978
4041
|
* Greedy algorithm: sort by priority, place in order, try offset
|
|
3979
4042
|
* positions for conflicts, demote to tooltip-only if no position works.
|
|
3980
|
-
* Targeting ~60% of Infrographic quality for Phase 0.
|
|
3981
4043
|
*/
|
|
3982
4044
|
|
|
3983
4045
|
/** Priority levels for label placement. Data labels win over annotations which win over axes. */
|
|
@@ -4001,11 +4063,20 @@ interface LabelCandidate {
|
|
|
4001
4063
|
priority: LabelPriority;
|
|
4002
4064
|
/** Text style to apply. */
|
|
4003
4065
|
style: TextStyle;
|
|
4066
|
+
/**
|
|
4067
|
+
* Optional caller-assigned source index. resolveCollisions may reorder its
|
|
4068
|
+
* output (it sorts by priority), so callers that zip the result back against
|
|
4069
|
+
* a parallel array should carry an index here and read it off ResolvedLabel
|
|
4070
|
+
* rather than relying on positional order.
|
|
4071
|
+
*/
|
|
4072
|
+
index?: number;
|
|
4004
4073
|
}
|
|
4005
4074
|
/**
|
|
4006
4075
|
* Detect AABB (axis-aligned bounding box) overlap between two rectangles.
|
|
4007
4076
|
*/
|
|
4008
4077
|
declare function detectCollision(a: Rect, b: Rect): boolean;
|
|
4078
|
+
/** Compute the area of intersection between two axis-aligned rectangles. Returns 0 if disjoint. */
|
|
4079
|
+
declare function overlapArea(a: Rect, b: Rect): number;
|
|
4009
4080
|
/** An offset position to try when resolving a label collision. */
|
|
4010
4081
|
interface OffsetStrategy {
|
|
4011
4082
|
dx: number;
|
|
@@ -4034,6 +4105,15 @@ declare function resolveCollisions(labels: LabelCandidate[], strategies?: readon
|
|
|
4034
4105
|
/**
|
|
4035
4106
|
* Compute the bounding rect of a resolved label from its position and text.
|
|
4036
4107
|
* Uses heuristic text measurement so it works without DOM access.
|
|
4108
|
+
*
|
|
4109
|
+
* label.y is the SVG text anchor point, whose meaning depends on the label's
|
|
4110
|
+
* dominant-baseline. The rect's top edge is derived accordingly so the box
|
|
4111
|
+
* covers the actual glyphs (obstacles were sitting ~0.8*fontSize below the
|
|
4112
|
+
* text for alphabetic-baseline labels, e.g. column value labels):
|
|
4113
|
+
* - 'central': y is the vertical center, so top = y - height/2.
|
|
4114
|
+
* - 'hanging'/'text-after-edge': y is the top edge already.
|
|
4115
|
+
* - default (alphabetic): y is the baseline, so top = y - fontSize*0.8
|
|
4116
|
+
* (matches textAscent, the top-to-baseline distance renderers apply).
|
|
4037
4117
|
*/
|
|
4038
4118
|
declare function computeLabelBounds(label: ResolvedLabel): Rect;
|
|
4039
4119
|
|
|
@@ -4329,4 +4409,4 @@ interface TileMapBuilderOptions {
|
|
|
4329
4409
|
*/
|
|
4330
4410
|
declare function tileMap(data: Record<string, number | null> | DataRow[], options?: TileMapBuilderOptions): TileMapSpec;
|
|
4331
4411
|
|
|
4332
|
-
export { type A11yMetadata, AXIS_TITLE_GAP, AXIS_TITLE_OFFSET_COMPACT, AXIS_TITLE_OFFSET_DEFAULT, AXIS_TITLE_TRAILING_PAD, type AggregateOp, type AggregateTransform, type AnimationConfig, type AnimationEase, type AnimationPhaseConfig, type AnimationSpec, type AnimationStagger, type Annotation, type AnnotationAnchor, type AnnotationOffset, type AnnotationPosition, type ArcEncoding, type ArcMark, type AreaEncoding, type AreaMark, type AxisConfig, type AxisLabelDensity, type AxisLayout, type AxisTick, BRAND_FONT_SIZE, BRAND_MIN_WIDTH, BRAND_RESERVE_WIDTH, BREAKPOINT_COMPACT_MAX, BREAKPOINT_MEDIUM_MAX, type BarColumnConfig, type BarEncoding, type BarListEncoding, type BarListLayout, type BarListRowMark, type BarListSpec, type BarListSpecWithoutData, type BarTableCell, type BaseLegendLayout, type BinParams, type BinTransform, type Breakpoint, CATEGORICAL_PALETTE, CHART_ENCODING_RULES, CHART_TYPES, COMPACT_WIDTH, type CalculateExpression, type CalculateTransform, type CategoricalLegendLayout, type CategoricalPalette, type CategoryColorsConfig, type CategoryTableCell, type CellStyle, type ChannelRule, type ChartBuilderOptions, type ChartEventHandlers, type ChartLayout, type ChartSpec, type ChartSpecOverride, type ChartSpecWithoutData, type ChartType, type Chrome, type ChromeDefaults, type ChromeKey, type ChromeMode, type ChromeText, type ChromeTextStyle, type CircleEncoding, type ColorBlindnessType, type ColumnConfig, type CompileOptions, type CompileTableOptions, type Condition, type ConditionalValueDef, DEFAULT_THEME, DIVERGING_PALETTES, type DarkMode, type DataRow, type DateGranularity, type Display, type DivergingPalette, EXTENDED_OFFSET_STRATEGIES, type ElementEdit, type ElementRef, type Encoding, type EncodingChannel, type EncodingRule, type EndpointLabelEntry, type EndpointLabelsConfig, type EndpointLabelsLayout, type FieldPredicate, type FieldRef, type FieldType, type FilterPredicate, type FilterTransform, type FlagTableCell, type FoldTransform, GRAPH_ENCODING_RULES, type GradientColorStop, type GradientDef, type GradientLegendLayout, type GradientStop, type GraphChannelRule, type GraphEdge, type GraphEdgeLayout, type GraphEncoding, type GraphEncodingChannel, type GraphLayout, type GraphLayoutConfig, type GraphNode, type GraphNodeLayout, type GraphSpec, type GraphSpecWithoutData, type Gridline, HEIGHT_CRAMPED_MAX, HEIGHT_SHORT_MAX, HPAD_COMPACT_FRACTION, HPAD_COMPACT_MIN, type HeatmapColumnConfig, type HeatmapTableCell, type HeightClass, type ImageColumnConfig, type ImageTableCell, LABEL_GAP_COMPACT, LABEL_GAP_DEFAULT, LABEL_GAP_NARROW_MAX, type LabelCandidate, type LabelConfig, type LabelDensity, type LabelMode, type LabelPriority, type LabelSpec, type LayerSpec, type LayoutStrategy, type LegendConfig, type LegendEntry, type LegendLayout, type LegendPosition, type LineEncoding, type LineMark, type LinearGradient, type LogicalAnd, type LogicalNot, type LogicalOr, type LollipopEncoding, MARK_DISPLAY_NAMES, MARK_ENCODING_RULES, MARK_TYPES, MAX_LEFT_LABEL_FRACTION_COMPACT, MAX_LEFT_LABEL_FRACTION_DEFAULT, MAX_LEFT_LABEL_FRACTION_MEDIUM, MAX_LEFT_LABEL_FRACTION_MEDIUM_MAX, type Margins, type Mark, type MarkAria, type MarkDef, type MarkEvent, type MarkType, type MeasureTextFn, type Metric, NARROW_VIEWPORT_MAX, type NodeOverride, OFFSET_STRATEGIES, type OffsetStrategy, type PaginationState, type Point, type PointEncoding, type PointMark, type RadialGradient, type RangeAnnotation, type Rect, type RectEncoding, type RectMark, type RefLineAnnotation, type RelativeTimeRef, type ResolveConfig, type ResolveMode, type ResolvedAnimation, type ResolvedAnnotation, type ResolvedChrome, type ResolvedChromeElement, type ResolvedColumn, type ResolvedLabel, type ResolvedMetricBar, type ResolvedMetricCell, type ResolvedTheme, type RuleMarkLayout, SEQUENTIAL_PALETTES, type SankeyEncoding, type SankeyLayout, type SankeyLinkColor, type SankeyLinkMark, type SankeyNodeAlign, type SankeyNodeMark, type SankeySpec, type SankeySpecWithoutData, type ScaleConfig, type ScaleType, type SequentialPalette, type SeriesStyle, type SortState, type SparklineColumnConfig, type SparklineData, type SparklineTableCell, type StoredVizSpec, TICK_LABEL_OFFSET, TOP_PAD_EXTRA_NARROW, TOP_PAD_NARROW_MAX, type TableBuilderOptions, type TableCell, type TableCellBase, type TableLayout, type TableRow, type TableSpec, type TableSpecWithoutData, type TextAnnotation, type TextEncoding, type TextMarkLayout, type TextStyle, type TextTableCell, type Theme, type ThemeChromeDefaults, type ThemeColors, type ThemeConfig, type ThemeFontSizes, type ThemeFontWeights, type ThemeFonts, type ThemeSpacing, type TickEncoding, type TickMarkLayout, type TileMapBuilderOptions, type TileMapEncoding, type TileMapLayout, type TileMapPalette, type TileMapSpec, type TileMapSpecWithoutData, type TileMapTileMark, type TimeUnit, type TimeUnitTransform, type TooltipContent, type TooltipField, type Transform, type VizSpec, type WindowFieldDef, type WindowOp, type WindowSortField, type WindowTransform, abbreviateNumber, adaptColorForDarkMode, adaptTheme, areaChart, axisTitleOffset, barChart, buildD3Formatter, buildTemporalFormatter, checkPaletteDistinguishability, columnChart, computeChrome, computeLabelBounds, contrastRatio, dataTable, detectCollision, donutChart, dotChart, elementRef, estimateTextWidth, findAccessibleColor, formatDate, formatNumber, generateAltText, generateAriaLabels, generateDataTable, getAxisTitleOffset, getBreakpoint, getHeightClass, getLayoutStrategy, getRepresentativeColor, inferFieldType, isBarListSpec, isChartSpec, isConditionalDef, isEncodingChannel, isGradientDef, isGraphSpec, isLayerSpec, isRangeAnnotation, isRefLineAnnotation, isSankeySpec, isTableSpec, isTextAnnotation, isTileMapSpec, lineChart, meetsAA, pickLabelColor, pieChart, resolveCollisions, resolveMarkDef, resolveMarkType, resolveTheme, scatterChart, simulateColorBlindness, tileMap, wrapText };
|
|
4412
|
+
export { type A11yMetadata, AXIS_TITLE_GAP, AXIS_TITLE_OFFSET_COMPACT, AXIS_TITLE_OFFSET_DEFAULT, AXIS_TITLE_TRAILING_PAD, type AggregateOp, type AggregateTransform, type AnimationConfig, type AnimationEase, type AnimationPhaseConfig, type AnimationSpec, type AnimationStagger, type Annotation, type AnnotationAnchor, type AnnotationOffset, type AnnotationPosition, type ArcEncoding, type ArcMark, type AreaEncoding, type AreaMark, type AxisConfig, type AxisLabelDensity, type AxisLayout, type AxisTick, BRAND_FONT_SIZE, BRAND_MIN_WIDTH, BRAND_RESERVE_WIDTH, BREAKPOINT_COMPACT_MAX, BREAKPOINT_MEDIUM_MAX, type BarColumnConfig, type BarEncoding, type BarListEncoding, type BarListLayout, type BarListRowMark, type BarListSpec, type BarListSpecWithoutData, type BarTableCell, type BaseLegendLayout, type BinParams, type BinTransform, type Breakpoint, CATEGORICAL_PALETTE, CHART_ENCODING_RULES, CHART_TYPES, COMPACT_WIDTH, type CalculateExpression, type CalculateTransform, type CategoricalLegendLayout, type CategoricalPalette, type CategoryColorsConfig, type CategoryTableCell, type CellStyle, type ChannelRule, type ChartBuilderOptions, type ChartEventHandlers, type ChartLayout, type ChartSpec, type ChartSpecOverride, type ChartSpecWithoutData, type ChartType, type Chrome, type ChromeDefaults, type ChromeKey, type ChromeMode, type ChromeText, type ChromeTextStyle, type CircleEncoding, type ColorBlindnessType, type ColumnConfig, type CompileOptions, type CompileTableOptions, type Condition, type ConditionalValueDef, DEFAULT_THEME, DIVERGING_PALETTES, type DarkMode, type DataRow, type DateGranularity, type Display, type DivergingPalette, EXTENDED_OFFSET_STRATEGIES, type ElementEdit, type ElementRef, type Encoding, type EncodingChannel, type EncodingRule, type EndpointLabelEntry, type EndpointLabelsConfig, type EndpointLabelsLayout, type FieldPredicate, type FieldRef, type FieldType, type FilterPredicate, type FilterTransform, type FlagTableCell, type FoldTransform, GRAPH_ENCODING_RULES, type GradientColorStop, type GradientDef, type GradientLegendLayout, type GradientStop, type GraphChannelRule, type GraphEdge, type GraphEdgeLayout, type GraphEncoding, type GraphEncodingChannel, type GraphLayout, type GraphLayoutConfig, type GraphNode, type GraphNodeLayout, type GraphSpec, type GraphSpecWithoutData, type Gridline, HEIGHT_CRAMPED_MAX, HEIGHT_SHORT_MAX, HPAD_COMPACT_FRACTION, HPAD_COMPACT_MIN, type HeatmapColumnConfig, type HeatmapTableCell, type HeightClass, type ImageColumnConfig, type ImageTableCell, LABEL_GAP_COMPACT, LABEL_GAP_DEFAULT, LABEL_GAP_NARROW_MAX, type LabelCandidate, type LabelConfig, type LabelDensity, type LabelMode, type LabelPriority, type LabelSpec, type LayerSpec, type LayoutStrategy, type LegendConfig, type LegendEntry, type LegendEntryPosition, type LegendLayout, type LegendPosition, type LineEncoding, type LineMark, type LinearGradient, type LogicalAnd, type LogicalNot, type LogicalOr, type LollipopEncoding, MARK_DISPLAY_NAMES, MARK_ENCODING_RULES, MARK_TYPES, MAX_LEFT_LABEL_FRACTION_COMPACT, MAX_LEFT_LABEL_FRACTION_DEFAULT, MAX_LEFT_LABEL_FRACTION_MEDIUM, MAX_LEFT_LABEL_FRACTION_MEDIUM_MAX, type Margins, type Mark, type MarkAria, type MarkDef, type MarkEvent, type MarkType, type MeasureTextFn, type Metric, NARROW_VIEWPORT_MAX, type NodeOverride, OFFSET_STRATEGIES, type OffsetStrategy, type PaginationState, type Point, type PointEncoding, type PointMark, type RadialGradient, type RangeAnnotation, type Rect, type RectEncoding, type RectMark, type RefLineAnnotation, type RelativeTimeRef, type ResolveConfig, type ResolveMode, type ResolvedAnimation, type ResolvedAnnotation, type ResolvedChrome, type ResolvedChromeElement, type ResolvedColumn, type ResolvedLabel, type ResolvedMetricBar, type ResolvedMetricCell, type ResolvedTheme, type RuleMarkLayout, SEQUENTIAL_PALETTES, type SankeyEncoding, type SankeyLayout, type SankeyLinkColor, type SankeyLinkMark, type SankeyNodeAlign, type SankeyNodeMark, type SankeySpec, type SankeySpecWithoutData, type ScaleConfig, type ScaleType, type SequentialPalette, type SeriesStyle, type SortState, type SparklineColumnConfig, type SparklineData, type SparklineTableCell, type StoredVizSpec, TICK_LABEL_OFFSET, TOP_PAD_EXTRA_NARROW, TOP_PAD_NARROW_MAX, type TableBuilderOptions, type TableCell, type TableCellBase, type TableLayout, type TableRow, type TableSpec, type TableSpecWithoutData, type TextAnnotation, type TextEncoding, type TextMarkLayout, type TextStyle, type TextTableCell, type Theme, type ThemeChromeDefaults, type ThemeColors, type ThemeConfig, type ThemeFontSizes, type ThemeFontWeights, type ThemeFonts, type ThemeSpacing, type TickEncoding, type TickMarkLayout, type TileMapBuilderOptions, type TileMapEncoding, type TileMapLayout, type TileMapPalette, type TileMapSpec, type TileMapSpecWithoutData, type TileMapTileMark, type TimeUnit, type TimeUnitTransform, type TooltipContent, type TooltipField, type Transform, type VizSpec, type WindowFieldDef, type WindowOp, type WindowSortField, type WindowTransform, type XAxisExtentInput, X_AXIS_BAND_HEIGHT, X_AXIS_TITLE_BAND, X_AXIS_TITLE_BAND_ROTATED, abbreviateNumber, adaptColorForDarkMode, adaptTheme, areaChart, axisTitleOffset, barChart, buildD3Formatter, buildTemporalFormatter, checkPaletteDistinguishability, columnChart, computeChrome, computeLabelBounds, computeXAxisExtentFromLabels, contrastRatio, dataTable, detectCollision, donutChart, dotChart, elementRef, estimateTextWidth, findAccessibleColor, formatDate, formatNumber, generateAltText, generateAriaLabels, generateDataTable, getAxisTitleOffset, getBreakpoint, getHeightClass, getLayoutStrategy, getRepresentativeColor, heuristicMeasure, inferFieldType, isBarListSpec, isChartSpec, isConditionalDef, isEncodingChannel, isGradientDef, isGraphSpec, isLayerSpec, isRangeAnnotation, isRefLineAnnotation, isSankeySpec, isTableSpec, isTextAnnotation, isTileMapSpec, lineChart, meetsAA, overlapArea, pickLabelColor, pieChart, resolveCollisions, resolveMarkDef, resolveMarkType, resolveMeasurer, resolveTheme, scatterChart, simulateColorBlindness, textAscent, tileMap, wrapText };
|