@timbal-ai/timbal-react 1.1.0 → 1.3.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/CHANGELOG.md +28 -1
- package/LICENSE +201 -0
- package/README.md +20 -11
- package/dist/app.cjs +1675 -1218
- package/dist/app.d.cts +22 -6
- package/dist/app.d.ts +22 -6
- package/dist/app.esm.js +26 -8
- package/dist/{chart-artifact-BZp7nmaf.d.ts → chart-artifact-Q5QgMtbj.d.ts} +107 -28
- package/dist/{chart-artifact-CX-rh9nq.d.cts → chart-artifact-WDEW9dHT.d.cts} +107 -28
- package/dist/{chat-DCms8pJ_.d.cts → chat-ClmzWzCX.d.cts} +2 -0
- package/dist/{chat-DCms8pJ_.d.ts → chat-ClmzWzCX.d.ts} +2 -0
- package/dist/chat.cjs +868 -511
- package/dist/chat.d.cts +1 -1
- package/dist/chat.d.ts +1 -1
- package/dist/chat.esm.js +3 -3
- package/dist/{chunk-YXZ22OJN.esm.js → chunk-GQBYZRD7.esm.js} +670 -402
- package/dist/{chunk-XCM3V6RK.esm.js → chunk-OFWC4MIY.esm.js} +2 -2
- package/dist/{chunk-6HWMJNZT.esm.js → chunk-OH23AX2V.esm.js} +757 -56
- package/dist/{chunk-4AKJ6FKE.esm.js → chunk-QU7ET55D.esm.js} +120 -23
- package/dist/{chunk-FRZOEYBO.esm.js → chunk-THBA27QY.esm.js} +4 -4
- package/dist/{chunk-JEAUF54A.esm.js → chunk-UCGVL7ZY.esm.js} +1 -1
- package/dist/{chunk-P3KDAYX6.esm.js → chunk-VXMM2HX7.esm.js} +1 -1
- package/dist/{chunk-TK2AGIME.esm.js → chunk-YCXN67SD.esm.js} +565 -480
- package/dist/{pill-segmented-tabs-Ba5q0feL.d.cts → circular-progress-Ci8L-Hfa.d.cts} +230 -6
- package/dist/{pill-segmented-tabs-Ba5q0feL.d.ts → circular-progress-Ci8L-Hfa.d.ts} +230 -6
- package/dist/index.cjs +2850 -1689
- package/dist/index.d.cts +5 -5
- package/dist/index.d.ts +5 -5
- package/dist/index.esm.js +41 -11
- package/dist/studio.cjs +1089 -732
- package/dist/studio.d.cts +2 -2
- package/dist/studio.d.ts +2 -2
- package/dist/studio.esm.js +5 -5
- package/dist/styles.css +14 -16
- package/dist/ui.cjs +880 -71
- package/dist/ui.d.cts +1 -1
- package/dist/ui.d.ts +1 -1
- package/dist/ui.esm.js +28 -4
- package/dist/{welcome-CRqOPKMp.d.cts → welcome-BFGRoNfK.d.cts} +1 -1
- package/dist/{welcome-DlHUa3OL.d.ts → welcome-DXqsGTwH.d.ts} +1 -1
- package/package.json +1 -1
- package/vite/local-dev.d.ts +5 -1
- package/vite/local-dev.mjs +17 -13
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { FC, ReactNode, InputHTMLAttributes, TextareaHTMLAttributes, SelectHTMLAttributes } from 'react';
|
|
2
|
-
import { x as TimbalRuntimeProviderProps, r as ThreadProps, C as ChartArtifact } from './chat-
|
|
2
|
+
import { x as TimbalRuntimeProviderProps, r as ThreadProps, C as ChartArtifact } from './chat-ClmzWzCX.cjs';
|
|
3
3
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
4
4
|
|
|
5
5
|
/**
|
|
@@ -384,24 +384,6 @@ interface TimbalThemeStyleProps {
|
|
|
384
384
|
*/
|
|
385
385
|
declare const TimbalThemeStyle: FC<TimbalThemeStyleProps>;
|
|
386
386
|
|
|
387
|
-
interface ThemePresetGalleryProps {
|
|
388
|
-
/** Currently selected preset id (controlled). */
|
|
389
|
-
value?: TimbalThemePresetId;
|
|
390
|
-
/** Called when the user picks a preset. */
|
|
391
|
-
onSelect?: (id: TimbalThemePresetId) => void;
|
|
392
|
-
/** Restrict the catalog to a subset of presets. */
|
|
393
|
-
presets?: readonly TimbalThemePresetId[];
|
|
394
|
-
className?: string;
|
|
395
|
-
}
|
|
396
|
-
/**
|
|
397
|
-
* Preview + pick a brand preset. Each card renders a *real* mini fixture
|
|
398
|
-
* (a primary button + a metric tile + a token strip) scoped via
|
|
399
|
-
* `data-timbal-theme`, so several presets preview side-by-side without
|
|
400
|
-
* changing the live app — the host applies the choice on `onSelect`
|
|
401
|
-
* (e.g. via `applyThemePreset`).
|
|
402
|
-
*/
|
|
403
|
-
declare const ThemePresetGallery: FC<ThemePresetGalleryProps>;
|
|
404
|
-
|
|
405
387
|
interface AppShellProps {
|
|
406
388
|
/** Primary navigation (e.g. StudioSidebar or custom rail). */
|
|
407
389
|
sidebar?: ReactNode;
|
|
@@ -517,6 +499,63 @@ interface AppShellSidebarTriggerProps {
|
|
|
517
499
|
*/
|
|
518
500
|
declare const AppShellSidebarTrigger: FC<AppShellSidebarTriggerProps>;
|
|
519
501
|
|
|
502
|
+
/**
|
|
503
|
+
* App kit layout density — shared spacing scale for dashboards.
|
|
504
|
+
* Default matches timbal-platform list pages; compact tightens rhythm for data-heavy views.
|
|
505
|
+
*/
|
|
506
|
+
type AppDensity = "default" | "compact";
|
|
507
|
+
/** Default chart plot height per density (overridable via component `height` prop). */
|
|
508
|
+
declare const APP_DENSITY_CHART_HEIGHT: Record<AppDensity, number>;
|
|
509
|
+
/** Layout class maps keyed by density — consumed via `useAppDensityClass` in app components. */
|
|
510
|
+
declare const APP_DENSITY_CLASSES: {
|
|
511
|
+
readonly pageColumn: {
|
|
512
|
+
readonly default: "mx-auto w-full max-w-[100rem] px-4 md:px-6 lg:px-8";
|
|
513
|
+
readonly compact: "mx-auto w-full max-w-none px-3 md:px-4";
|
|
514
|
+
};
|
|
515
|
+
readonly pageHeader: {
|
|
516
|
+
readonly default: string;
|
|
517
|
+
readonly compact: "flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between pb-2 pt-1";
|
|
518
|
+
};
|
|
519
|
+
readonly section: {
|
|
520
|
+
readonly default: "flex flex-col gap-4 py-4";
|
|
521
|
+
readonly compact: "flex flex-col gap-2 py-2";
|
|
522
|
+
};
|
|
523
|
+
readonly surfaceCard: {
|
|
524
|
+
readonly default: string;
|
|
525
|
+
readonly compact: string;
|
|
526
|
+
};
|
|
527
|
+
readonly statTile: {
|
|
528
|
+
readonly default: string;
|
|
529
|
+
readonly compact: string;
|
|
530
|
+
};
|
|
531
|
+
readonly emptyState: {
|
|
532
|
+
readonly default: string;
|
|
533
|
+
readonly compact: string;
|
|
534
|
+
};
|
|
535
|
+
readonly metricCardHeader: {
|
|
536
|
+
readonly default: "flex items-start justify-between gap-3 px-4 pb-1 pt-3";
|
|
537
|
+
readonly compact: "flex items-start justify-between gap-2 px-3 pb-0.5 pt-2";
|
|
538
|
+
};
|
|
539
|
+
readonly metricTile: {
|
|
540
|
+
readonly default: "relative flex min-w-0 flex-1 flex-col gap-1 px-4 py-3 text-left font-normal";
|
|
541
|
+
readonly compact: "relative flex min-w-0 flex-1 flex-col gap-1 px-3 py-2 text-left font-normal";
|
|
542
|
+
};
|
|
543
|
+
readonly metricChartRegion: {
|
|
544
|
+
readonly default: "relative min-h-0 w-full overflow-x-hidden border-t border-border/40 pt-2";
|
|
545
|
+
readonly compact: "relative min-h-0 w-full overflow-x-hidden border-t border-border/40 pt-1";
|
|
546
|
+
};
|
|
547
|
+
readonly metricChartPlotRegion: {
|
|
548
|
+
readonly default: "relative min-h-0 w-full overflow-x-hidden border-t border-border/40 px-0 pt-5 pb-3";
|
|
549
|
+
readonly compact: "relative min-h-0 w-full overflow-x-hidden border-t border-border/40 px-0 pt-3 pb-2";
|
|
550
|
+
};
|
|
551
|
+
readonly chartPanelBody: {
|
|
552
|
+
readonly default: "pt-2 pb-3";
|
|
553
|
+
readonly compact: "pt-1 pb-2";
|
|
554
|
+
};
|
|
555
|
+
};
|
|
556
|
+
type AppDensityClassKey = keyof typeof APP_DENSITY_CLASSES;
|
|
557
|
+
declare function appDensityClass(key: AppDensityClassKey, density?: AppDensity): string;
|
|
558
|
+
|
|
520
559
|
interface PageHeaderProps {
|
|
521
560
|
title: ReactNode;
|
|
522
561
|
description?: ReactNode;
|
|
@@ -529,6 +568,11 @@ interface PageProps extends PageHeaderProps {
|
|
|
529
568
|
children: ReactNode;
|
|
530
569
|
/** Slot above the title (breadcrumbs). */
|
|
531
570
|
breadcrumbs?: ReactNode;
|
|
571
|
+
/**
|
|
572
|
+
* Layout rhythm for this page and descendant app-kit blocks.
|
|
573
|
+
* `compact` tightens page insets, section gaps, and card padding.
|
|
574
|
+
*/
|
|
575
|
+
density?: AppDensity;
|
|
532
576
|
className?: string;
|
|
533
577
|
}
|
|
534
578
|
declare const Page: FC<PageProps>;
|
|
@@ -537,6 +581,8 @@ interface SectionProps {
|
|
|
537
581
|
title?: ReactNode;
|
|
538
582
|
description?: ReactNode;
|
|
539
583
|
children: ReactNode;
|
|
584
|
+
/** Override inherited page density for this section only. */
|
|
585
|
+
density?: AppDensity;
|
|
540
586
|
className?: string;
|
|
541
587
|
}
|
|
542
588
|
declare const Section: FC<SectionProps>;
|
|
@@ -581,18 +627,25 @@ interface EmptyStateProps {
|
|
|
581
627
|
}
|
|
582
628
|
declare const EmptyState: FC<EmptyStateProps>;
|
|
583
629
|
|
|
630
|
+
/**
|
|
631
|
+
* Tone skin — a soft tint, a matching foreground, and an inset hairline ring so
|
|
632
|
+
* the pill reads as a deliberate object rather than faint colored text. The dot
|
|
633
|
+
* (when enabled) uses an opaque version of the same hue.
|
|
634
|
+
*/
|
|
584
635
|
declare const statusBadgeToneClass: {
|
|
585
|
-
readonly default: "bg-muted text-foreground";
|
|
586
|
-
readonly primary: "bg-primary/10 text-primary";
|
|
587
|
-
readonly success: "bg-emerald-500/10 text-emerald-
|
|
588
|
-
readonly warn: "bg-amber-500/10 text-amber-
|
|
589
|
-
readonly danger: "bg-destructive/10 text-destructive";
|
|
590
|
-
readonly muted: "bg-muted/
|
|
636
|
+
readonly default: "bg-muted text-foreground ring-border";
|
|
637
|
+
readonly primary: "bg-primary/10 text-primary ring-primary/20";
|
|
638
|
+
readonly success: "bg-emerald-500/10 text-emerald-700 ring-emerald-500/20 dark:text-emerald-400";
|
|
639
|
+
readonly warn: "bg-amber-500/10 text-amber-700 ring-amber-500/25 dark:text-amber-400";
|
|
640
|
+
readonly danger: "bg-destructive/10 text-destructive ring-destructive/20";
|
|
641
|
+
readonly muted: "bg-muted/70 text-muted-foreground ring-border/60";
|
|
591
642
|
};
|
|
592
643
|
type StatusBadgeTone = keyof typeof statusBadgeToneClass;
|
|
593
644
|
interface StatusBadgeProps {
|
|
594
645
|
children: ReactNode;
|
|
595
646
|
tone?: StatusBadgeTone;
|
|
647
|
+
/** Render a small leading status dot in the tone color. */
|
|
648
|
+
dot?: boolean;
|
|
596
649
|
className?: string;
|
|
597
650
|
}
|
|
598
651
|
declare const StatusBadge: FC<StatusBadgeProps>;
|
|
@@ -971,6 +1024,8 @@ interface DataTableColumn<T> {
|
|
|
971
1024
|
sortable?: boolean;
|
|
972
1025
|
/** Value used when sorting; defaults to stringifying `cell(row)`. */
|
|
973
1026
|
sortValue?: (row: T) => string | number | boolean | Date | null | undefined;
|
|
1027
|
+
/** Ellipsis-overflow long cell content inside the column. */
|
|
1028
|
+
truncate?: boolean;
|
|
974
1029
|
}
|
|
975
1030
|
interface DataTableProps<T> {
|
|
976
1031
|
columns: DataTableColumn<T>[];
|
|
@@ -1028,7 +1083,7 @@ interface ChartPanelProps {
|
|
|
1028
1083
|
artifact?: ChartArtifact;
|
|
1029
1084
|
children?: ReactNode;
|
|
1030
1085
|
actions?: ReactNode;
|
|
1031
|
-
/** Plot height in px.
|
|
1086
|
+
/** Plot height in px. Defaults to the active page density (300 default, 220 compact). */
|
|
1032
1087
|
height?: number;
|
|
1033
1088
|
/** Render a skeleton at the plot height while data loads. */
|
|
1034
1089
|
loading?: boolean;
|
|
@@ -1101,12 +1156,34 @@ declare const MetricRow: FC<MetricRowProps>;
|
|
|
1101
1156
|
/** Curve interpolation styles, mirroring recharts/shadcn `type`. */
|
|
1102
1157
|
type CurveType = "monotone" | "linear" | "step";
|
|
1103
1158
|
|
|
1159
|
+
interface ChartMargin {
|
|
1160
|
+
top: number;
|
|
1161
|
+
right: number;
|
|
1162
|
+
bottom: number;
|
|
1163
|
+
left: number;
|
|
1164
|
+
}
|
|
1165
|
+
/** Recharts `margin` for flush vs default layouts. */
|
|
1166
|
+
declare function resolveChartMargin(options: {
|
|
1167
|
+
flush: boolean;
|
|
1168
|
+
showXAxis: boolean;
|
|
1169
|
+
showYAxis: boolean;
|
|
1170
|
+
}): ChartMargin;
|
|
1171
|
+
/** Whether flush bar charts should use zero category gap (edge labels visible). */
|
|
1172
|
+
declare function flushBarCategoryGap(flush: boolean, showCategoryAxis: boolean): string | undefined;
|
|
1173
|
+
/** Whether flush line/area should use point scale + no-gap (edge-to-edge stroke, labeled x-axis). */
|
|
1174
|
+
declare function flushLineAreaEdgeToEdge(flush: boolean, variant: "area" | "line" | "bar", showXAxis: boolean, showYAxis: boolean): boolean;
|
|
1175
|
+
type TooltipRow = {
|
|
1176
|
+
payload?: Record<string, unknown>;
|
|
1177
|
+
};
|
|
1178
|
+
/** Category label for cartesian tooltips (xKey / horizontal-bar category). */
|
|
1179
|
+
declare function resolveTooltipCategory(label: unknown, payload: TooltipRow[] | undefined, xKey: string, data: Array<Record<string, unknown>>, formatX: (raw: unknown, index: number) => string): string;
|
|
1180
|
+
|
|
1104
1181
|
/**
|
|
1105
1182
|
* Theme-aware default series palette. Each entry reads a `--chart-N` token
|
|
1106
1183
|
* (defined in `styles.css`, overridable per host app) with a literal fallback,
|
|
1107
1184
|
* so charts rebrand automatically when the theme changes.
|
|
1108
1185
|
*/
|
|
1109
|
-
declare const CHART_PALETTE: readonly ["var(--chart-1, #
|
|
1186
|
+
declare const CHART_PALETTE: readonly ["var(--chart-1, #4f46e5)", "var(--chart-2, #3b82f6)", "var(--chart-3, #0ea5e9)", "var(--chart-4, #6366f1)", "var(--chart-5, #60a5fa)", "var(--chart-6, #2563eb)"];
|
|
1110
1187
|
interface ChartSeries {
|
|
1111
1188
|
dataKey: string;
|
|
1112
1189
|
label?: string;
|
|
@@ -1155,6 +1232,8 @@ interface LineAreaChartProps {
|
|
|
1155
1232
|
tooltipIndicator?: ChartTooltipIndicator;
|
|
1156
1233
|
formatValue?: (value: number) => string;
|
|
1157
1234
|
formatX?: (raw: unknown, index: number) => string;
|
|
1235
|
+
/** Truncate long category axis labels (full text in native tooltip). Default true. */
|
|
1236
|
+
clipTicks?: boolean;
|
|
1158
1237
|
className?: string;
|
|
1159
1238
|
/** Accessible label for the chart image. */
|
|
1160
1239
|
ariaLabel?: string;
|
|
@@ -1382,4 +1461,4 @@ interface ChartArtifactViewProps {
|
|
|
1382
1461
|
*/
|
|
1383
1462
|
declare const ChartArtifactView: FC<ChartArtifactViewProps>;
|
|
1384
1463
|
|
|
1385
|
-
export { type
|
|
1464
|
+
export { type EmptyStateProps as $, type AppDensity as A, type BreadcrumbEntry as B, CHART_PALETTE as C, type ChartLayout as D, type ChartMargin as E, ChartPanel as F, type ChartPanelProps as G, type ChartSeries as H, type ChartTooltipIndicator as I, type ChartVariant as J, ConnectionRow as K, ConnectionRowList as L, type ConnectionRowListProps as M, type ConnectionRowProps as N, DangerZone as O, DangerZoneAction as P, type DangerZoneActionProps as Q, type DangerZoneProps as R, DataTable as S, type DataTableColumn as T, type DataTableProps as U, type DataTableSort as V, type DataTableSortDirection as W, type DescriptionItem as X, DescriptionList as Y, type DescriptionListProps as Z, EmptyState as _, type AppDensityClassKey as a, type ReviewResult as a$, ExpandableSection as a0, type ExpandableSectionProps as a1, Field as a2, FieldInput as a3, type FieldInputProps as a4, type FieldProps as a5, FieldRow as a6, type FieldRowProps as a7, FieldSelect as a8, type FieldSelectProps as a9, type LintOptions as aA, type LintResult as aB, type LintSeverity as aC, MetricChartCard as aD, type MetricChartCardProps as aE, type MetricChartMetric as aF, MetricRow as aG, type MetricRowItem as aH, type MetricRowProps as aI, MetricTile as aJ, type MetricTileProps as aK, Page as aL, PageHeader as aM, type PageHeaderProps as aN, type PageProps as aO, PieChart as aP, type PieChartProps as aQ, PlanBadge as aR, type PlanBadgeProps as aS, type PlanBadgeTone as aT, RESERVED_GRADIENT_TOKENS as aU, RadarChart as aV, type RadarChartProps as aW, RadialChart as aX, type RadialChartProps as aY, ResourceCard as aZ, type ResourceCardProps as a_, FieldSwitch as aa, type FieldSwitchProps as ab, FieldTextarea as ac, type FieldTextareaProps as ad, FilterBar as ae, type FilterBarProps as af, FilterField as ag, type FilterFieldProps as ah, FloatingUnsavedChangesBar as ai, type FloatingUnsavedChangesBarProps as aj, FormSection as ak, type FormSectionProps as al, HOUSE_RULES as am, type HouseRule as an, INTEGRATION_CATALOG_CARD_HEIGHT_CLASS as ao, InfoCard as ap, type InfoCardProps as aq, type InfoCardTone as ar, IntegrationCard as as, type IntegrationCardProps as at, type IntegrationCardStatus as au, IntegrationsEmptyState as av, type IntegrationsEmptyStateProps as aw, LineAreaChart as ax, type LineAreaChartProps as ay, type LintFinding as az, APP_DENSITY_CHART_HEIGHT as b, useLiveQuery as b$, SEMANTIC_COLOR_TOKENS as b0, SLOP_BUDGETS as b1, SearchInput as b2, type SearchInputProps as b3, Section as b4, type SectionProps as b5, type SemanticColorToken as b6, SettingsSection as b7, SettingsSectionHeader as b8, type SettingsSectionHeaderProps as b9, type TimbalThemeStyleProps as bA, type TimbalThemeTokens as bB, type TimbalThemeTypography as bC, UI_REVIEW_AGENT_INSTRUCTIONS as bD, type UseLiveQueryOptions as bE, type UseLiveQueryResult as bF, appDensityClass as bG, applyThemePreset as bH, applyTimbalTheme as bI, clearTimbalTheme as bJ, connectionRowListClass as bK, createTimbalTheme as bL, ensureThemeFontLink as bM, flushBarCategoryGap as bN, flushLineAreaEdgeToEdge as bO, formatLintReport as bP, getStoredThemePreset as bQ, getThemePreset as bR, lintGeneratedUi as bS, resolveChartMargin as bT, resolveTooltipCategory as bU, reviewGeneratedUi as bV, themeToCss as bW, useAppCopilotContext as bX, useAppShellChat as bY, useAppShellNav as bZ, useInterval as b_, type SettingsSectionProps as ba, Sparkline as bb, type SparklineProps as bc, StatTile as bd, type StatTileProps as be, StatusBadge as bf, type StatusBadgeProps as bg, type StatusBadgeTone as bh, StatusDot as bi, type StatusDotProps as bj, type StatusDotTone as bk, SubNav as bl, type SubNavItem as bm, type SubNavProps as bn, SurfaceCard as bo, type SurfaceCardProps as bp, TAILWIND_PALETTE_COLORS as bq, THEME_AGENT_INSTRUCTIONS as br, TIMBAL_THEME_PRESETS as bs, type ThemeShadow as bt, type ThemeToCssOptions as bu, type ThemeTokenMap as bv, type TimbalThemeIntent as bw, type TimbalThemePreset as bx, type TimbalThemePresetId as by, TimbalThemeStyle as bz, APP_DENSITY_CLASSES as c, APP_KIT_AGENT_INSTRUCTIONS as d, AppChatPanel as e, type AppChatPanelProps as f, AppConfirmDialog as g, type AppConfirmDialogProps as h, type AppCopilotContextValue as i, AppCopilotProvider as j, type AppCopilotProviderProps as k, AppShell as l, type AppShellChatControls as m, AppShellChatTrigger as n, type AppShellChatTriggerProps as o, type AppShellNavControls as p, type AppShellProps as q, AppShellSidebarTrigger as r, type AppShellSidebarTriggerProps as s, AppShellTopbar as t, type AppShellTopbarProps as u, type BreadcrumbItem as v, Breadcrumbs as w, type BreadcrumbsProps as x, COLOR_UTILITY_PREFIXES as y, ChartArtifactView as z };
|
|
@@ -241,6 +241,8 @@ interface ChartArtifact {
|
|
|
241
241
|
tooltipIndicator?: "dot" | "line" | "dashed";
|
|
242
242
|
/** Show the series legend. */
|
|
243
243
|
legend?: boolean;
|
|
244
|
+
/** Show category / value axis ticks on flush cartesian charts. Default false (tooltips carry labels). */
|
|
245
|
+
showAxes?: boolean;
|
|
244
246
|
/** Per-slice / per-ring colors for pie / donut / radial. */
|
|
245
247
|
colors?: string[];
|
|
246
248
|
/** Optional unit label appended to numeric axis ticks and tooltip values. */
|
|
@@ -241,6 +241,8 @@ interface ChartArtifact {
|
|
|
241
241
|
tooltipIndicator?: "dot" | "line" | "dashed";
|
|
242
242
|
/** Show the series legend. */
|
|
243
243
|
legend?: boolean;
|
|
244
|
+
/** Show category / value axis ticks on flush cartesian charts. Default false (tooltips carry labels). */
|
|
245
|
+
showAxes?: boolean;
|
|
244
246
|
/** Per-slice / per-ring colors for pie / donut / radial. */
|
|
245
247
|
colors?: string[];
|
|
246
248
|
/** Optional unit label appended to numeric axis ticks and tooltip values. */
|