twico-ui 1.8.1 → 1.10.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 +26 -0
- package/dist/index.cjs +4149 -803
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +890 -11
- package/dist/index.d.ts +890 -11
- package/dist/index.mjs +4136 -804
- package/dist/index.mjs.map +1 -1
- package/llms.txt +575 -43
- package/package.json +1 -1
- package/styles/twico-ui.css +9 -0
package/dist/index.d.cts
CHANGED
|
@@ -545,24 +545,63 @@ declare function Carousel(props: CarouselProps): React.JSX.Element;
|
|
|
545
545
|
*/
|
|
546
546
|
type ChartDatum<K extends string = "value"> = { label: React.ReactNode } & { [P in K]: number };
|
|
547
547
|
|
|
548
|
-
/**
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
548
|
+
/** Payload passed to `onDataClick` when a bar/point (or category, in zoom mode) is clicked. */
|
|
549
|
+
interface ChartClickPayload<K extends string = string> {
|
|
550
|
+
/** The clicked datum's `label`. */
|
|
551
|
+
label: React.ReactNode;
|
|
552
|
+
/** The series key clicked, or `null` when a whole category was clicked (zoom overlay). */
|
|
553
|
+
series: K | null;
|
|
554
|
+
/** Index of `series` in the `series` prop, or `-1` for a category click. */
|
|
555
|
+
seriesIndex: number;
|
|
556
|
+
/** The clicked value, or `undefined` for a category click. */
|
|
557
|
+
value: number | undefined;
|
|
558
|
+
/** Index of the datum in the full (un-zoomed) `data` array. */
|
|
559
|
+
index: number;
|
|
560
|
+
/** The full data row that was clicked. */
|
|
561
|
+
row: ChartDatum<K>;
|
|
562
|
+
}
|
|
563
|
+
|
|
564
|
+
/**
|
|
565
|
+
* Cartesian chart — vertical/horizontal bars (grouped or stacked), line, and area
|
|
566
|
+
* (straight / smooth / stepped), single or multi-series, with grid, axes, tooltips,
|
|
567
|
+
* and an optional legend. Dependency-free inline SVG. Generic over the series keys
|
|
568
|
+
* `K` so the data rows are type-checked (e.g.
|
|
569
|
+
* `<Chart series={["sales"]} data={[{ label, sales: 12 }]} />`). For pie/donut,
|
|
570
|
+
* scatter/bubble, radar, heatmap, gauge, funnel, treemap, candlestick, boxplot and
|
|
571
|
+
* range charts use the dedicated sibling components.
|
|
553
572
|
*
|
|
554
|
-
* @startingPoint section="
|
|
573
|
+
* @startingPoint section="Charts" subtitle="Bar / line / area chart (no deps)" viewport="700x280"
|
|
555
574
|
*/
|
|
556
575
|
interface ChartProps<K extends string = "value"> extends React.HTMLAttributes<HTMLDivElement> {
|
|
557
|
-
/** @default "bar" */
|
|
558
|
-
type?: "bar" | "line";
|
|
576
|
+
/** Chart type. `"column"` is an alias of `"bar"` (vertical bars). @default "bar" */
|
|
577
|
+
type?: "bar" | "column" | "line" | "area";
|
|
559
578
|
/** Data points. Each has a `label` + one numeric field per series key. (`K` is inferred from `series`, not from `data`.) */
|
|
560
579
|
data: ChartDatum<NoInfer<K>>[];
|
|
561
|
-
/** Series field names (defaults to `["value"]`). Multiple = grouped bars / multi-line. */
|
|
580
|
+
/** Series field names (defaults to `["value"]`). Multiple = grouped bars / multi-line / stacked. */
|
|
562
581
|
series?: K[];
|
|
563
582
|
/** Pixel height. @default 220 */
|
|
564
583
|
height?: number;
|
|
565
|
-
/**
|
|
584
|
+
/** Stack multi-series bars/areas instead of grouping them side by side. @default false */
|
|
585
|
+
stacked?: boolean;
|
|
586
|
+
/** Render bars horizontally (value axis along the bottom). Ignored for line/area. @default false */
|
|
587
|
+
horizontal?: boolean;
|
|
588
|
+
/** Line/area interpolation. @default "straight" */
|
|
589
|
+
curve?: "straight" | "smooth" | "stepped";
|
|
590
|
+
/** Shorthand for `curve="smooth"`. @default false */
|
|
591
|
+
smooth?: boolean;
|
|
592
|
+
/** Show point markers on line charts. @default true */
|
|
593
|
+
showDots?: boolean;
|
|
594
|
+
/** Print each value as a data label on the bars/points. @default false */
|
|
595
|
+
showValues?: boolean;
|
|
596
|
+
/** Play the entrance animation (bars grow, lines draw); respects `prefers-reduced-motion`. @default true */
|
|
597
|
+
animate?: boolean;
|
|
598
|
+
/** Show a vertical crosshair line at the hovered category (line/area/vertical bars). @default true */
|
|
599
|
+
crosshair?: boolean;
|
|
600
|
+
/** Enable drag-to-zoom (+ shift-drag pan, wheel zoom, and a reset button) over the x-axis. @default false */
|
|
601
|
+
zoomable?: boolean;
|
|
602
|
+
/** Fires when a bar/point is clicked (or a category, in zoom mode) with the datum + metadata. */
|
|
603
|
+
onDataClick?: (payload: ChartClickPayload<NoInfer<K>>) => void;
|
|
604
|
+
/** Grid lines. @default true */
|
|
566
605
|
showGrid?: boolean;
|
|
567
606
|
/** Axis labels. @default true */
|
|
568
607
|
showAxis?: boolean;
|
|
@@ -582,6 +621,846 @@ interface ChartProps<K extends string = "value"> extends React.HTMLAttributes<HT
|
|
|
582
621
|
|
|
583
622
|
declare function Chart<K extends string = "value">(props: ChartProps<K>): React.JSX.Element;
|
|
584
623
|
|
|
624
|
+
/** A single pie/donut slice: a `label`, its numeric `value`, and an optional override `color`. */
|
|
625
|
+
interface PieChartDatum {
|
|
626
|
+
/** Slice label (shown in the legend, tooltip, and hidden data table). */
|
|
627
|
+
label: React.ReactNode;
|
|
628
|
+
/** Slice magnitude; the share is `value / total`. Negative values are treated as `0`. */
|
|
629
|
+
value: number;
|
|
630
|
+
/** Optional per-slice CSS color; falls back to the cycled token palette. */
|
|
631
|
+
color?: string;
|
|
632
|
+
}
|
|
633
|
+
|
|
634
|
+
/** Payload passed to `onDataClick` when a pie/donut slice is clicked. */
|
|
635
|
+
interface PieChartClickPayload {
|
|
636
|
+
/** The clicked slice's `label`. */
|
|
637
|
+
label: React.ReactNode;
|
|
638
|
+
/** The clicked slice's numeric value (negative inputs are clamped to `0`). */
|
|
639
|
+
value: number;
|
|
640
|
+
/** Index of the slice in the `data` array. */
|
|
641
|
+
index: number;
|
|
642
|
+
/** The slice's share of the total, as a percentage rounded to one decimal. */
|
|
643
|
+
percent: number;
|
|
644
|
+
}
|
|
645
|
+
|
|
646
|
+
/**
|
|
647
|
+
* Pie / donut chart — proportional slices of a whole from a single value series,
|
|
648
|
+
* with per-slice tooltips, an optional legend, optional percentage labels, and a
|
|
649
|
+
* donut center label. Dependency-free inline SVG. For bar/line/area use `Chart`;
|
|
650
|
+
* for other shapes use the dedicated sibling components (gauge, radar, funnel, …).
|
|
651
|
+
*
|
|
652
|
+
* @startingPoint section="Charts" subtitle="Pie / donut chart (no deps)" viewport="700x280"
|
|
653
|
+
*/
|
|
654
|
+
interface PieChartProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "color"> {
|
|
655
|
+
/** Slices to plot; each is a `{ label, value, color? }`. Only positive values contribute a slice. */
|
|
656
|
+
data: PieChartDatum[];
|
|
657
|
+
/** Render as a donut (ring) instead of a filled pie, using the default `innerRadius`. @default false */
|
|
658
|
+
donut?: boolean;
|
|
659
|
+
/** Inner-hole radius as a fraction (0..1) of the outer radius. @default 0.6 when `donut`, else 0 */
|
|
660
|
+
innerRadius?: number;
|
|
661
|
+
/** Angle (deg, clockwise from 12 o'clock) where the first slice starts. @default 0 */
|
|
662
|
+
startAngle?: number;
|
|
663
|
+
/** Gap (deg) inserted between adjacent slices. @default 0 */
|
|
664
|
+
padAngle?: number;
|
|
665
|
+
/** Draw a percentage label centered on each non-hairline slice. @default false */
|
|
666
|
+
showLabels?: boolean;
|
|
667
|
+
/** Show the slice legend below the chart. @default true */
|
|
668
|
+
showLegend?: boolean;
|
|
669
|
+
/** Content for a donut's center; defaults to the formatted total when `donut`. Ignored for a solid pie. */
|
|
670
|
+
centerLabel?: React.ReactNode;
|
|
671
|
+
/** Formatter for tooltip and hidden data-table values. @default toLocaleString */
|
|
672
|
+
valueFormat?: (value: number) => string;
|
|
673
|
+
/** Pixel height; the square chart is sized from this. @default 260 */
|
|
674
|
+
height?: number;
|
|
675
|
+
/** Per-slice colors (any CSS color), cycled when shorter than `data`. Defaults to the built-in token palette. */
|
|
676
|
+
colors?: string[];
|
|
677
|
+
/** Fires when a slice is clicked with the slice's label, value, index, and percent share; clicking a slice also toggles a selection that pops the slice outward and dims the rest. */
|
|
678
|
+
onDataClick?: (payload: PieChartClickPayload) => void;
|
|
679
|
+
/** Accessible name for the `<svg role="img">`. Per-slice values live in the hidden data table, not this label. Defaults to `"pie chart"`/`"donut chart"`; also accepts `aria-label`. */
|
|
680
|
+
ariaLabel?: string;
|
|
681
|
+
/** Render a visually-hidden data table as an accessible text alternative (WCAG 1.1.1). @default true */
|
|
682
|
+
tableFallback?: boolean;
|
|
683
|
+
/** Caption for the hidden data table; defaults to the chart's accessible label. */
|
|
684
|
+
caption?: React.ReactNode;
|
|
685
|
+
}
|
|
686
|
+
|
|
687
|
+
declare function PieChart(props: PieChartProps): React.JSX.Element;
|
|
688
|
+
|
|
689
|
+
/** A single donut slice — same shape as {@link PieChartDatum}. */
|
|
690
|
+
type DonutChartDatum = PieChartDatum;
|
|
691
|
+
|
|
692
|
+
/**
|
|
693
|
+
* Donut chart — a {@link PieChart} preset rendered as a ring (hollow center).
|
|
694
|
+
* Accepts every PieChart prop; `donut` defaults to `true`.
|
|
695
|
+
*
|
|
696
|
+
* @startingPoint section="Charts" subtitle="Donut chart (no deps)" viewport="700x280"
|
|
697
|
+
*/
|
|
698
|
+
interface DonutChartProps extends PieChartProps {}
|
|
699
|
+
|
|
700
|
+
declare function DonutChart(props: DonutChartProps): React.JSX.Element;
|
|
701
|
+
|
|
702
|
+
/** One radial bar in a multi-ring gauge — a value plus an optional label/color. */
|
|
703
|
+
interface GaugeSeries {
|
|
704
|
+
/** The ring's value, mapped through the shared `min`/`max` domain. */
|
|
705
|
+
value: number;
|
|
706
|
+
/** Legend label for this ring. */
|
|
707
|
+
label?: React.ReactNode;
|
|
708
|
+
/** Ring color (any CSS color); defaults to the built-in token palette, cycled. */
|
|
709
|
+
color?: string;
|
|
710
|
+
}
|
|
711
|
+
|
|
712
|
+
/** Payload passed to `onDataClick` when a gauge value arc (ring) is clicked. */
|
|
713
|
+
interface GaugeClickPayload {
|
|
714
|
+
/** The clicked ring's value. */
|
|
715
|
+
value: number;
|
|
716
|
+
/** The clicked ring's label (the `label` prop for a single gauge, or the `series` entry's label). */
|
|
717
|
+
label?: React.ReactNode;
|
|
718
|
+
/** Index of the clicked ring (`0` for a single gauge; the `series` index for a multi-ring gauge). */
|
|
719
|
+
index: number;
|
|
720
|
+
}
|
|
721
|
+
|
|
722
|
+
/**
|
|
723
|
+
* Radial gauge / radial-bar chart — renders a single `value` as a thick arc that
|
|
724
|
+
* sweeps between `startAngle` and `endAngle`, with the value + an optional caption
|
|
725
|
+
* in the center. Pass `series` to draw multiple concentric rings (radial-bar).
|
|
726
|
+
* Dependency-free inline SVG; every color/size is a design token so dark mode is
|
|
727
|
+
* automatic. For bar/line/area use `Chart`; for slices use `PieChart`/`DonutChart`.
|
|
728
|
+
*
|
|
729
|
+
* @startingPoint section="Charts" subtitle="Radial gauge / radial-bar (no deps)" viewport="700x280"
|
|
730
|
+
*/
|
|
731
|
+
interface GaugeProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "color"> {
|
|
732
|
+
/** The value to display, mapped from `min`..`max` onto the arc sweep. @default 0 */
|
|
733
|
+
value?: number;
|
|
734
|
+
/** Lower bound of the value domain (maps to `startAngle`). @default 0 */
|
|
735
|
+
min?: number;
|
|
736
|
+
/** Upper bound of the value domain (maps to `endAngle`). @default 100 */
|
|
737
|
+
max?: number;
|
|
738
|
+
/** Sweep start angle in degrees (0 = top, clockwise). @default -110 */
|
|
739
|
+
startAngle?: number;
|
|
740
|
+
/** Sweep end angle in degrees (0 = top, clockwise). @default 110 */
|
|
741
|
+
endAngle?: number;
|
|
742
|
+
/** Ring stroke width as a fraction of the radius. @default 0.16 */
|
|
743
|
+
thickness?: number;
|
|
744
|
+
/** Show the formatted value in the center (single gauge only). @default true */
|
|
745
|
+
showValue?: boolean;
|
|
746
|
+
/** Small caption rendered under the center value (single gauge only). */
|
|
747
|
+
label?: React.ReactNode;
|
|
748
|
+
/** Formats the center value + hidden-table cells; defaults to a rounded integer. */
|
|
749
|
+
valueFormat?: (value: number) => string;
|
|
750
|
+
/** Value-arc color (any CSS color). @default "var(--color-primary)" */
|
|
751
|
+
color?: string;
|
|
752
|
+
/** Background track color (any CSS color). @default "var(--color-surface-sunken)" */
|
|
753
|
+
trackColor?: string;
|
|
754
|
+
/** SVG width/height in pixels (the gauge is square). @default 200 */
|
|
755
|
+
size?: number;
|
|
756
|
+
/** Multiple concentric radial bars; when set, the single `value`/`label` are ignored. */
|
|
757
|
+
series?: GaugeSeries[];
|
|
758
|
+
/** Show the legend for a multi-ring (`series`) gauge. @default true */
|
|
759
|
+
showLegend?: boolean;
|
|
760
|
+
/** Fires when a value arc (ring) is clicked, with the ring's value, label, and index; the clicked ring also gains a selection outline. */
|
|
761
|
+
onDataClick?: (payload: GaugeClickPayload) => void;
|
|
762
|
+
/** Accessible name for the `<svg role="img">`; defaults to a value summary. Also accepts `aria-label`. */
|
|
763
|
+
ariaLabel?: string;
|
|
764
|
+
/** Render a visually-hidden data table as an accessible text alternative (WCAG 1.1.1). @default true */
|
|
765
|
+
tableFallback?: boolean;
|
|
766
|
+
/** Caption for the hidden data table; defaults to the gauge's accessible label. */
|
|
767
|
+
caption?: React.ReactNode;
|
|
768
|
+
}
|
|
769
|
+
|
|
770
|
+
declare function Gauge(props: GaugeProps): React.JSX.Element;
|
|
771
|
+
|
|
772
|
+
/**
|
|
773
|
+
* A Sparkline data point: either a bare number, or an object with a numeric
|
|
774
|
+
* `value` plus an optional `label` (used only for tooltips / the hidden table).
|
|
775
|
+
*/
|
|
776
|
+
type SparklineDatum = number | { value: number; label?: React.ReactNode };
|
|
777
|
+
|
|
778
|
+
/** Payload passed to `onDataClick` when a point/bar is clicked. */
|
|
779
|
+
interface SparklineClickPayload {
|
|
780
|
+
/** The clicked point's numeric value. */
|
|
781
|
+
value: number;
|
|
782
|
+
/** Index of the clicked point in the `data` array. */
|
|
783
|
+
index: number;
|
|
784
|
+
/** The point's `label` (falls back to its 1-based index). */
|
|
785
|
+
label: React.ReactNode;
|
|
786
|
+
}
|
|
787
|
+
|
|
788
|
+
/**
|
|
789
|
+
* Sparkline — a minimal, word-sized trend chart (line, area, or bars) with no
|
|
790
|
+
* axes, grid, ticks, or legend, meant to sit inline beside text or inside a
|
|
791
|
+
* table cell / stat tile. Dependency-free inline SVG that scales to fill its
|
|
792
|
+
* vertical space, with an optional emphasised trailing dot. For a full chart
|
|
793
|
+
* with axes, tooltips, and a legend use the `Chart` component.
|
|
794
|
+
*
|
|
795
|
+
* @startingPoint section="Charts" subtitle="Tiny inline trend line (no deps)" viewport="700x280"
|
|
796
|
+
*/
|
|
797
|
+
interface SparklineProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "color"> {
|
|
798
|
+
/** Data points: bare numbers, or `{ value, label }` objects. */
|
|
799
|
+
data: SparklineDatum[];
|
|
800
|
+
/** Trend style. `"area"` fills below the line; `"bar"` draws thin columns. @default "line" */
|
|
801
|
+
type?: "line" | "area" | "bar";
|
|
802
|
+
/** Shorthand for `type="area"` (fills the region below the line). @default false */
|
|
803
|
+
area?: boolean;
|
|
804
|
+
/** Stroke / fill color (any CSS color). @default "var(--color-primary)" */
|
|
805
|
+
color?: string;
|
|
806
|
+
/** Viewbox width in pixels. @default 120 */
|
|
807
|
+
width?: number;
|
|
808
|
+
/** Pixel height. @default 40 */
|
|
809
|
+
height?: number;
|
|
810
|
+
/** Line stroke width in pixels (ignored for bars). @default 2 */
|
|
811
|
+
strokeWidth?: number;
|
|
812
|
+
/** Line/area interpolation. @default "smooth" */
|
|
813
|
+
curve?: "straight" | "smooth" | "stepped";
|
|
814
|
+
/** Emphasize the last point with a filled dot. @default false */
|
|
815
|
+
showDots?: boolean;
|
|
816
|
+
/** Pin the low end of the value scale (else derived from the data's minimum). */
|
|
817
|
+
min?: number;
|
|
818
|
+
/** Pin the high end of the value scale (else derived from the data's maximum). */
|
|
819
|
+
max?: number;
|
|
820
|
+
/** Value formatter for tooltips + the hidden data table. @default toLocaleString */
|
|
821
|
+
valueFormat?: (value: number) => string;
|
|
822
|
+
/** Fires when a point/bar is clicked with its value, index, and label; the clicked mark also toggles a selection outline. */
|
|
823
|
+
onDataClick?: (payload: SparklineClickPayload) => void;
|
|
824
|
+
/** Accessible name for the `<svg role="img">`; defaults to a spoken summary (point count + first/last/min/max, or +latest when a table is present). Also accepts `aria-label`. */
|
|
825
|
+
ariaLabel?: string;
|
|
826
|
+
/** Render a visually-hidden data table as a text alternative (WCAG 1.1.1); off by default since the summarizing aria-label usually suffices for a sparkline. @default false */
|
|
827
|
+
tableFallback?: boolean;
|
|
828
|
+
/** Caption for the hidden data table; defaults to the accessible label. */
|
|
829
|
+
caption?: React.ReactNode;
|
|
830
|
+
}
|
|
831
|
+
|
|
832
|
+
declare function Sparkline(props: SparklineProps): React.JSX.Element;
|
|
833
|
+
|
|
834
|
+
/** A single x/y point, with an optional `z` (bubble size) and a display `label`. */
|
|
835
|
+
interface ScatterPoint {
|
|
836
|
+
/** Horizontal value (mapped to the x axis). */
|
|
837
|
+
x: number;
|
|
838
|
+
/** Vertical value (mapped to the y axis). */
|
|
839
|
+
y: number;
|
|
840
|
+
/** Optional third dimension — sizes the dot when the chart is in bubble mode. */
|
|
841
|
+
z?: number;
|
|
842
|
+
/** Optional per-point label used in the tooltip (falls back to the series name). */
|
|
843
|
+
label?: React.ReactNode;
|
|
844
|
+
}
|
|
845
|
+
|
|
846
|
+
/** One plotted series: an optional name/color plus its list of points. */
|
|
847
|
+
interface ScatterSeries {
|
|
848
|
+
/** Series name — shown in the legend and used as the tooltip/table label. */
|
|
849
|
+
name?: string;
|
|
850
|
+
/** Series color (any CSS color); defaults to the built-in token palette, cycled. */
|
|
851
|
+
color?: string;
|
|
852
|
+
/** The series' data points. */
|
|
853
|
+
points: ScatterPoint[];
|
|
854
|
+
}
|
|
855
|
+
|
|
856
|
+
/** Payload passed to `onDataClick` when a point is clicked. */
|
|
857
|
+
interface ScatterClickPayload {
|
|
858
|
+
/** The clicked point's x value. */
|
|
859
|
+
x: number;
|
|
860
|
+
/** The clicked point's y value. */
|
|
861
|
+
y: number;
|
|
862
|
+
/** The clicked point's z (bubble size) value, if any. */
|
|
863
|
+
z?: number;
|
|
864
|
+
/** Name of the series the point belongs to (defaults to `"Series N"`). */
|
|
865
|
+
series: string;
|
|
866
|
+
/** Index of the point's series in the `series` prop. */
|
|
867
|
+
seriesIndex: number;
|
|
868
|
+
/** Index of the point within its series' `points` array. */
|
|
869
|
+
index: number;
|
|
870
|
+
/** The original `ScatterPoint` object that was clicked. */
|
|
871
|
+
point: ScatterPoint;
|
|
872
|
+
}
|
|
873
|
+
|
|
874
|
+
/**
|
|
875
|
+
* Scatter / bubble chart — plots x/y points across two nice-scaled numeric axes,
|
|
876
|
+
* one or many series, with grid, axis titles, tooltips, an optional legend and a
|
|
877
|
+
* hidden data table. Give points a numeric `z` (or set `bubble`) to size the dots
|
|
878
|
+
* by a third dimension. Dependency-free inline SVG; keeps its aspect ratio so the
|
|
879
|
+
* dots stay round. For bars/line/area use `Chart`; for other shapes use the
|
|
880
|
+
* dedicated sibling components.
|
|
881
|
+
*
|
|
882
|
+
* @startingPoint section="Charts" subtitle="Scatter / bubble plot (no deps)" viewport="700x280"
|
|
883
|
+
*/
|
|
884
|
+
interface ScatterChartProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "color"> {
|
|
885
|
+
/** The series to plot; each has optional `name`/`color` and a list of `{ x, y, z?, label? }` points. */
|
|
886
|
+
series: ScatterSeries[];
|
|
887
|
+
/** Size the dots by their `z` value (bubble chart). Auto-enabled when any point has a numeric `z`. @default false */
|
|
888
|
+
bubble?: boolean;
|
|
889
|
+
/** Maximum bubble radius in pixels (the largest `z` maps to this). @default 26 */
|
|
890
|
+
maxBubble?: number;
|
|
891
|
+
/** Fixed dot radius in pixels when not in bubble mode. @default 4.5 */
|
|
892
|
+
dotRadius?: number;
|
|
893
|
+
/** Pixel height (also sets the SVG aspect ratio). @default 300 */
|
|
894
|
+
height?: number;
|
|
895
|
+
/** Axis title drawn beneath the x axis. */
|
|
896
|
+
xLabel?: React.ReactNode;
|
|
897
|
+
/** Axis title drawn (rotated) beside the y axis. */
|
|
898
|
+
yLabel?: React.ReactNode;
|
|
899
|
+
/** Grid lines. @default true */
|
|
900
|
+
showGrid?: boolean;
|
|
901
|
+
/** Series legend. Defaults to `true` when there is more than one series. */
|
|
902
|
+
showLegend?: boolean;
|
|
903
|
+
/** Enable 2-D drag-to-zoom (rectangle-zoom both axes, + shift-drag pan, wheel zoom, and a reset button). @default false */
|
|
904
|
+
zoomable?: boolean;
|
|
905
|
+
/** Fires when a point is clicked, with its x/y/z, series metadata, and the original point. */
|
|
906
|
+
onDataClick?: (payload: ScatterClickPayload) => void;
|
|
907
|
+
/** Formatter for x values in tooltips + the hidden table (defaults to `valueFormat`). */
|
|
908
|
+
xFormat?: (value: number) => string;
|
|
909
|
+
/** Formatter for y values in tooltips + the hidden table (defaults to `valueFormat`). */
|
|
910
|
+
yFormat?: (value: number) => string;
|
|
911
|
+
/** Fallback value formatter for x/y/z (locale-grouped numbers by default). */
|
|
912
|
+
valueFormat?: (value: number) => string;
|
|
913
|
+
/** Accessible name for the chart's `<svg role="img">`. Per-point values are exposed via the hidden data table, not this label. Defaults to `"scatter chart"` / `"bubble chart"`; also accepts `aria-label`. */
|
|
914
|
+
ariaLabel?: string;
|
|
915
|
+
/** Render a visually-hidden data table as an accessible text alternative (WCAG 1.1.1). @default true */
|
|
916
|
+
tableFallback?: boolean;
|
|
917
|
+
/** Caption for the hidden data table; defaults to the chart's accessible label. */
|
|
918
|
+
caption?: React.ReactNode;
|
|
919
|
+
}
|
|
920
|
+
|
|
921
|
+
declare function ScatterChart(props: ScatterChartProps): React.JSX.Element;
|
|
922
|
+
|
|
923
|
+
/**
|
|
924
|
+
* Bubble chart — a {@link ScatterChart} preset that sizes each dot by its point's
|
|
925
|
+
* `z` value. Accepts every ScatterChart prop; `bubble` defaults to `true`.
|
|
926
|
+
*
|
|
927
|
+
* @startingPoint section="Charts" subtitle="Bubble chart (no deps)" viewport="700x280"
|
|
928
|
+
*/
|
|
929
|
+
interface BubbleChartProps extends ScatterChartProps {}
|
|
930
|
+
|
|
931
|
+
declare function BubbleChart(props: BubbleChartProps): React.JSX.Element;
|
|
932
|
+
|
|
933
|
+
/**
|
|
934
|
+
* A radar-chart row: each row is one **axis** (category), carrying a `label`
|
|
935
|
+
* plus one numeric field per series key `K`. `K` is normally inferred from the
|
|
936
|
+
* `series` prop (e.g. `{ label: "Speed", team: 80, rival: 65 }`).
|
|
937
|
+
*/
|
|
938
|
+
type RadarDatum<K extends string = "value"> = { label: React.ReactNode } & { [P in K]: number };
|
|
939
|
+
|
|
940
|
+
/** Payload passed to `onDataClick` when a series vertex dot is clicked. */
|
|
941
|
+
interface RadarClickPayload<K extends string = string> {
|
|
942
|
+
/** The clicked vertex's axis `label`. */
|
|
943
|
+
label: React.ReactNode;
|
|
944
|
+
/** The series (polygon) key that was clicked. */
|
|
945
|
+
series: K;
|
|
946
|
+
/** The clicked value. */
|
|
947
|
+
value: number;
|
|
948
|
+
/** Index of the axis (row) in the `data` array. */
|
|
949
|
+
index: number;
|
|
950
|
+
}
|
|
951
|
+
|
|
952
|
+
/**
|
|
953
|
+
* Radar / spider chart — one or more series drawn as closed polygons over a
|
|
954
|
+
* shared set of categorical axes radiating from a center, with concentric grid
|
|
955
|
+
* rings, spokes, per-axis labels, tooltips, and an optional legend. Dependency-free
|
|
956
|
+
* inline SVG. Generic over the series keys `K` so the data rows are type-checked
|
|
957
|
+
* (e.g. `<RadarChart series={["team"]} data={[{ label: "Speed", team: 80 }]} />`).
|
|
958
|
+
* For cartesian bars/lines/areas use `Chart`; for other shapes use the dedicated
|
|
959
|
+
* sibling components.
|
|
960
|
+
*
|
|
961
|
+
* @startingPoint section="Charts" subtitle="Radar / spider chart (no deps)" viewport="700x280"
|
|
962
|
+
*/
|
|
963
|
+
interface RadarChartProps<K extends string = "value"> extends React.HTMLAttributes<HTMLDivElement> {
|
|
964
|
+
/** Data rows — one per **axis**. Each has a `label` + one numeric field per series key. (`K` is inferred from `series`, not from `data`.) */
|
|
965
|
+
data: RadarDatum<NoInfer<K>>[];
|
|
966
|
+
/** Series field names to plot as polygons (defaults to `["value"]`). Multiple = several overlaid polygons. */
|
|
967
|
+
series?: K[];
|
|
968
|
+
/** Radial maximum (the value at the outer ring). Defaults to a "nice" ceiling of the largest datum. */
|
|
969
|
+
max?: number;
|
|
970
|
+
/** Number of concentric grid rings. @default 4 */
|
|
971
|
+
levels?: number;
|
|
972
|
+
/** Fill each polygon at low opacity (in addition to its stroke). @default true */
|
|
973
|
+
fill?: boolean;
|
|
974
|
+
/** Series legend. Defaults to `true` when more than one series is plotted, else `false`. */
|
|
975
|
+
showLegend?: boolean;
|
|
976
|
+
/** Draw a marker dot at each polygon vertex. @default true */
|
|
977
|
+
showDots?: boolean;
|
|
978
|
+
/** Per-series colors (any CSS color), cycled when shorter than `series`. Defaults to the built-in token palette. */
|
|
979
|
+
colors?: string[];
|
|
980
|
+
/** Tooltip value formatter (also formats the hidden data-table cells). */
|
|
981
|
+
valueFormat?: (value: number) => string;
|
|
982
|
+
/** Pixel height; the chart uses a square canvas of this size. @default 300 */
|
|
983
|
+
height?: number;
|
|
984
|
+
/** Fires when a series vertex dot is clicked, with the axis label, series key, value, and axis index. */
|
|
985
|
+
onDataClick?: (payload: RadarClickPayload<NoInfer<K>>) => void;
|
|
986
|
+
/** Accessible name for the chart's `<svg role="img">`. Per-point values are exposed via the hidden data table, not this label. Defaults to `"radar chart"`; also accepts `aria-label`. */
|
|
987
|
+
ariaLabel?: string;
|
|
988
|
+
/** Render a visually-hidden data table as an accessible text alternative (WCAG 1.1.1). @default true */
|
|
989
|
+
tableFallback?: boolean;
|
|
990
|
+
/** Caption for the hidden data table; defaults to the chart's accessible label. */
|
|
991
|
+
caption?: React.ReactNode;
|
|
992
|
+
}
|
|
993
|
+
|
|
994
|
+
declare function RadarChart<K extends string = "value">(props: RadarChartProps<K>): React.JSX.Element;
|
|
995
|
+
|
|
996
|
+
/** A single polar-area slice: a `label`, its numeric `value`, and an optional override `color`. */
|
|
997
|
+
interface PolarAreaDatum {
|
|
998
|
+
/** Category label — shown in the legend, the per-slice tooltip, and the hidden data table. */
|
|
999
|
+
label: React.ReactNode;
|
|
1000
|
+
/** The value this slice encodes; its radius scales with the square root so the slice's area is proportional. */
|
|
1001
|
+
value: number;
|
|
1002
|
+
/** Optional fixed CSS color for this slice (overrides the cycled palette color). */
|
|
1003
|
+
color?: string;
|
|
1004
|
+
}
|
|
1005
|
+
|
|
1006
|
+
/** Payload passed to `onDataClick` when a slice is clicked. */
|
|
1007
|
+
interface PolarAreaClickPayload {
|
|
1008
|
+
/** The clicked slice's `label`. */
|
|
1009
|
+
label: React.ReactNode;
|
|
1010
|
+
/** The clicked slice's numeric `value`. */
|
|
1011
|
+
value: number;
|
|
1012
|
+
/** Index of the slice in the `data` array. */
|
|
1013
|
+
index: number;
|
|
1014
|
+
}
|
|
1015
|
+
|
|
1016
|
+
/**
|
|
1017
|
+
* Polar-area (Coxcomb / Nightingale rose) chart — equal-angle slices whose
|
|
1018
|
+
* *radius* encodes each value, laid over concentric value rings. Radius scales
|
|
1019
|
+
* with `√value` so a slice's **area** is proportional to its value (the
|
|
1020
|
+
* statistically honest encoding). Dependency-free inline SVG, with per-slice
|
|
1021
|
+
* tooltips, click + selection (`onDataClick`), a legend whose entries
|
|
1022
|
+
* hover-focus their slice, and a visually-hidden data table. For plain
|
|
1023
|
+
* proportional wedges use `PieChart` / `DonutChart`; for a spoked multi-axis
|
|
1024
|
+
* shape use `RadarChart`.
|
|
1025
|
+
*
|
|
1026
|
+
* @startingPoint section="Charts" subtitle="Polar-area / rose chart (no deps)" viewport="700x280"
|
|
1027
|
+
*/
|
|
1028
|
+
interface PolarAreaChartProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
1029
|
+
/** Data points — one equal-angle slice each, in order clockwise from `startAngle`. */
|
|
1030
|
+
data: PolarAreaDatum[];
|
|
1031
|
+
/** Radial maximum (the value at the outer ring). Defaults to a "nice" ceiling of the largest value. */
|
|
1032
|
+
max?: number;
|
|
1033
|
+
/** Number of concentric grid rings (and value tick labels). @default 4 */
|
|
1034
|
+
levels?: number;
|
|
1035
|
+
/** Angle in degrees of the first slice's leading edge, clockwise from 12 o'clock. @default 0 */
|
|
1036
|
+
startAngle?: number;
|
|
1037
|
+
/** Show the per-slice legend. @default true */
|
|
1038
|
+
showLegend?: boolean;
|
|
1039
|
+
/** Tooltip value formatter (also formats the hidden data-table cells). @default fmtNumber */
|
|
1040
|
+
valueFormat?: (value: number) => string;
|
|
1041
|
+
/** Pixel height; the square plotting area is centered within the full-width container. @default 280 */
|
|
1042
|
+
height?: number;
|
|
1043
|
+
/** Per-slice colors (any CSS color), cycled across slices. Defaults to the built-in token palette. */
|
|
1044
|
+
colors?: string[];
|
|
1045
|
+
/** Fires when a slice is clicked with its `label`, `value`, and `index`; the clicked slice also toggles a selected state that pops it outward along its mid-angle and dims the rest. */
|
|
1046
|
+
onDataClick?: (payload: PolarAreaClickPayload) => void;
|
|
1047
|
+
/** Accessible name for the chart's `<svg role="img">`. Defaults to `"polar area chart"`; also accepts `aria-label`. */
|
|
1048
|
+
ariaLabel?: string;
|
|
1049
|
+
/** Render a visually-hidden data table as an accessible text alternative (WCAG 1.1.1). @default true */
|
|
1050
|
+
tableFallback?: boolean;
|
|
1051
|
+
/** Caption for the hidden data table; defaults to the chart's accessible label. */
|
|
1052
|
+
caption?: React.ReactNode;
|
|
1053
|
+
}
|
|
1054
|
+
|
|
1055
|
+
declare function PolarAreaChart(props: PolarAreaChartProps): React.JSX.Element;
|
|
1056
|
+
|
|
1057
|
+
/**
|
|
1058
|
+
* One heatmap cell: an `x` (column) and `y` (row) coordinate plus a numeric
|
|
1059
|
+
* `value` that drives the cell's color intensity. Missing (x, y) combinations
|
|
1060
|
+
* render as faint empty cells.
|
|
1061
|
+
*/
|
|
1062
|
+
interface HeatmapDatum {
|
|
1063
|
+
/** Column key. Column order follows first appearance in `data`. */
|
|
1064
|
+
x: string | number;
|
|
1065
|
+
/** Row key. Row order follows first appearance in `data`. */
|
|
1066
|
+
y: string | number;
|
|
1067
|
+
/** Numeric magnitude mapped onto the `min`…`max` color scale. */
|
|
1068
|
+
value: number;
|
|
1069
|
+
}
|
|
1070
|
+
|
|
1071
|
+
/** Payload passed to `onDataClick` when a heatmap cell is clicked. */
|
|
1072
|
+
interface HeatmapClickPayload {
|
|
1073
|
+
/** The clicked cell's column (`x`) key. */
|
|
1074
|
+
x: string | number;
|
|
1075
|
+
/** The clicked cell's row (`y`) key. */
|
|
1076
|
+
y: string | number;
|
|
1077
|
+
/** The clicked cell's numeric value. */
|
|
1078
|
+
value: number;
|
|
1079
|
+
}
|
|
1080
|
+
|
|
1081
|
+
/**
|
|
1082
|
+
* Heatmap — a matrix of colored cells keyed by (x, y), each shaded by a
|
|
1083
|
+
* single-hue intensity scale between `min` and `max`. Ordered X columns and Y
|
|
1084
|
+
* rows are derived from the data in first-seen order; absent cells render faint.
|
|
1085
|
+
* Dependency-free inline SVG, with per-cell tooltips, a gradient scale legend,
|
|
1086
|
+
* and a visually-hidden data table. Dark mode is automatic through tokens.
|
|
1087
|
+
*
|
|
1088
|
+
* @startingPoint section="Charts" subtitle="Matrix heatmap (no deps)" viewport="700x280"
|
|
1089
|
+
*/
|
|
1090
|
+
interface HeatmapProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
1091
|
+
/** Cells to plot. X columns and Y rows are derived from these in first-seen order. */
|
|
1092
|
+
data: HeatmapDatum[];
|
|
1093
|
+
/** Low end of the color scale. Defaults to the minimum value in `data`. */
|
|
1094
|
+
min?: number;
|
|
1095
|
+
/** High end of the color scale. Defaults to the maximum value in `data`. */
|
|
1096
|
+
max?: number;
|
|
1097
|
+
/** Base token color for the high end; cells mix it over transparent by intensity. @default "var(--brand-500)" */
|
|
1098
|
+
colorScale?: string;
|
|
1099
|
+
/** Print each cell's formatted value at its center. @default false */
|
|
1100
|
+
showValues?: boolean;
|
|
1101
|
+
/** Gap in pixels between adjacent cells. @default 2 */
|
|
1102
|
+
cellGap?: number;
|
|
1103
|
+
/** Cell corner radius in pixels. @default 2 */
|
|
1104
|
+
radius?: number;
|
|
1105
|
+
/** Optional title rendered beneath the X-axis category labels. */
|
|
1106
|
+
xLabel?: React.ReactNode;
|
|
1107
|
+
/** Optional title rendered rotated alongside the Y-axis category labels. */
|
|
1108
|
+
yLabel?: React.ReactNode;
|
|
1109
|
+
/** Show the low→high gradient scale legend below the grid. @default true */
|
|
1110
|
+
showLegend?: boolean;
|
|
1111
|
+
/**
|
|
1112
|
+
* Enable a 2-D drag/wheel zoom over the cell grid: drag a rectangle to zoom to
|
|
1113
|
+
* that sub-range of the ordered X columns and Y rows, shift-drag to pan, scroll
|
|
1114
|
+
* to zoom about the cursor, and a Reset button restores the full matrix. Needs
|
|
1115
|
+
* at least two columns and two rows. @default false
|
|
1116
|
+
*/
|
|
1117
|
+
zoomable?: boolean;
|
|
1118
|
+
/** Value formatter for tooltips, printed cell values, and the hidden table. @default fmtNumber */
|
|
1119
|
+
valueFormat?: (value: number) => string;
|
|
1120
|
+
/** Fires when a cell is clicked with its `{ x, y, value }`; the clicked cell also toggles a selection outline. */
|
|
1121
|
+
onDataClick?: (payload: HeatmapClickPayload) => void;
|
|
1122
|
+
/** Pixel height of the chart. @default 300 */
|
|
1123
|
+
height?: number;
|
|
1124
|
+
/** Accessible name for the chart's `<svg role="img">`. Per-cell values are exposed via the hidden data table, not this label. Defaults to `"heatmap"`; also accepts `aria-label`. */
|
|
1125
|
+
ariaLabel?: string;
|
|
1126
|
+
/** Render a visually-hidden data table as an accessible text alternative (WCAG 1.1.1). @default true */
|
|
1127
|
+
tableFallback?: boolean;
|
|
1128
|
+
/** Caption for the hidden data table; defaults to the chart's accessible label. */
|
|
1129
|
+
caption?: React.ReactNode;
|
|
1130
|
+
}
|
|
1131
|
+
|
|
1132
|
+
declare function Heatmap(props: HeatmapProps): React.JSX.Element;
|
|
1133
|
+
|
|
1134
|
+
/** A funnel stage: a `label`, its numeric `value`, and an optional override `color`. */
|
|
1135
|
+
interface FunnelDatum {
|
|
1136
|
+
/** Stage name, rendered centered on the band and in the hidden data table. */
|
|
1137
|
+
label: React.ReactNode;
|
|
1138
|
+
/** Stage magnitude. Band width (or height, when horizontal) is scaled to the largest stage. */
|
|
1139
|
+
value: number;
|
|
1140
|
+
/** Optional fill for this stage (any CSS color); defaults to the cycled token palette. */
|
|
1141
|
+
color?: string;
|
|
1142
|
+
}
|
|
1143
|
+
|
|
1144
|
+
/** Payload passed to `onDataClick` when a funnel stage is clicked. */
|
|
1145
|
+
interface FunnelClickPayload {
|
|
1146
|
+
/** The clicked stage's `label`. */
|
|
1147
|
+
label: React.ReactNode;
|
|
1148
|
+
/** The clicked stage's numeric value. */
|
|
1149
|
+
value: number;
|
|
1150
|
+
/** Index of the stage in the `data` array. */
|
|
1151
|
+
index: number;
|
|
1152
|
+
/** The stage's percentage of the first (top) stage. */
|
|
1153
|
+
percent: number;
|
|
1154
|
+
}
|
|
1155
|
+
|
|
1156
|
+
/**
|
|
1157
|
+
* Funnel chart — descending stages drawn as centered trapezoids that taper from
|
|
1158
|
+
* each stage's value to the next, for conversion / drop-off flows. Each band is
|
|
1159
|
+
* scaled to the largest stage, with the top stage as the 100% baseline for the
|
|
1160
|
+
* per-stage percentage. Dependency-free inline SVG with per-band `<title>` tooltips
|
|
1161
|
+
* and a visually-hidden data table. For bars/lines/areas use `Chart`; for part-of-whole
|
|
1162
|
+
* shares use `PieChart`.
|
|
1163
|
+
*
|
|
1164
|
+
* @startingPoint section="Charts" subtitle="Descending funnel stages (no deps)" viewport="700x280"
|
|
1165
|
+
*/
|
|
1166
|
+
interface FunnelChartProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
1167
|
+
/** Funnel stages, ordered from the widest/top stage to the narrowest. */
|
|
1168
|
+
data: FunnelDatum[];
|
|
1169
|
+
/** Print each stage's formatted value in its centered caption. @default true */
|
|
1170
|
+
showValues?: boolean;
|
|
1171
|
+
/** Print each stage's percentage of the first (top) stage in its caption. @default true */
|
|
1172
|
+
showPercent?: boolean;
|
|
1173
|
+
/** Lay the funnel out left→right (tapering vertically) instead of top→bottom. @default false */
|
|
1174
|
+
horizontal?: boolean;
|
|
1175
|
+
/** Pixel gap between adjacent stages. @default 2 */
|
|
1176
|
+
gap?: number;
|
|
1177
|
+
/** Pixel height of the chart. @default 300 */
|
|
1178
|
+
height?: number;
|
|
1179
|
+
/** Per-stage colors (any CSS color), cycled when shorter than `data`. Defaults to the token palette. */
|
|
1180
|
+
colors?: string[];
|
|
1181
|
+
/** Fires when a stage is clicked with its label, value, index, and percent-of-top; also toggles a selection outline on the clicked stage. */
|
|
1182
|
+
onDataClick?: (payload: FunnelClickPayload) => void;
|
|
1183
|
+
/** Value formatter for captions, tooltips, and the hidden data-table cells. @default toLocaleString */
|
|
1184
|
+
valueFormat?: (value: number) => string;
|
|
1185
|
+
/** Accessible name for the chart's `<svg role="img">`; per-stage values live in the hidden table. Defaults to `"funnel chart"`; also accepts `aria-label`. */
|
|
1186
|
+
ariaLabel?: string;
|
|
1187
|
+
/** Render a visually-hidden data table as an accessible text alternative (WCAG 1.1.1). @default true */
|
|
1188
|
+
tableFallback?: boolean;
|
|
1189
|
+
/** Caption for the hidden data table; defaults to the chart's accessible label. */
|
|
1190
|
+
caption?: React.ReactNode;
|
|
1191
|
+
}
|
|
1192
|
+
|
|
1193
|
+
declare function FunnelChart(props: FunnelChartProps): React.JSX.Element;
|
|
1194
|
+
|
|
1195
|
+
/** One treemap tile: a `label`, its numeric `value` (relative area), and an optional override `color`. */
|
|
1196
|
+
interface TreemapDatum {
|
|
1197
|
+
/** Tile label — rendered inside the tile when it fits and as the data-table row header. */
|
|
1198
|
+
label: React.ReactNode;
|
|
1199
|
+
/** Non-negative magnitude; the tile's area is this value as a share of the total (negatives are clamped to 0). */
|
|
1200
|
+
value: number;
|
|
1201
|
+
/** Optional per-tile fill (any CSS color); overrides the cycled palette color for this tile. */
|
|
1202
|
+
color?: string;
|
|
1203
|
+
}
|
|
1204
|
+
|
|
1205
|
+
/** Payload passed to `onDataClick` when a treemap tile is clicked. */
|
|
1206
|
+
interface TreemapClickPayload {
|
|
1207
|
+
/** The clicked tile's `label`. */
|
|
1208
|
+
label: React.ReactNode;
|
|
1209
|
+
/** The clicked tile's (non-negative) value. */
|
|
1210
|
+
value: number;
|
|
1211
|
+
/** Index of the tile in the original `data` array. */
|
|
1212
|
+
index: number;
|
|
1213
|
+
/** The tile's fraction of the total, `0`–`1` (`0` when the total is `0`). */
|
|
1214
|
+
share: number;
|
|
1215
|
+
}
|
|
1216
|
+
|
|
1217
|
+
/**
|
|
1218
|
+
* Treemap — a squarified partition of a rectangle into tiles sized in proportion
|
|
1219
|
+
* to a flat list of values (Bruls/Huizing/van Wijk squarified layout), packed to
|
|
1220
|
+
* keep tile aspect ratios near 1:1. Dependency-free inline SVG with per-tile
|
|
1221
|
+
* labels, hover tooltips, and a visually-hidden data table. Good for showing the
|
|
1222
|
+
* relative weight of parts within a whole (spend by category, storage by bucket).
|
|
1223
|
+
*
|
|
1224
|
+
* @startingPoint section="Charts" subtitle="Squarified treemap (no deps)" viewport="700x280"
|
|
1225
|
+
*/
|
|
1226
|
+
interface TreemapProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
1227
|
+
/** Tiles to lay out. Each has a `label`, a non-negative `value`, and an optional `color`. */
|
|
1228
|
+
data: TreemapDatum[];
|
|
1229
|
+
/** Draw the value under the label inside tiles tall enough to fit both lines. @default true */
|
|
1230
|
+
showValues?: boolean;
|
|
1231
|
+
/** Formatter for the tooltip, in-tile value, and data-table cells. @default toLocaleString */
|
|
1232
|
+
valueFormat?: (value: number) => string;
|
|
1233
|
+
/** Pixel height (also sets the SVG's aspect ratio; width fills the container). @default 300 */
|
|
1234
|
+
height?: number;
|
|
1235
|
+
/** Tile colors (any CSS color), cycled by index. Defaults to the built-in token palette; a datum's `color` wins. */
|
|
1236
|
+
colors?: string[];
|
|
1237
|
+
/** Gap in px inset between adjacent tiles. @default 2 */
|
|
1238
|
+
gap?: number;
|
|
1239
|
+
/** Fires when a tile is clicked with the tile's label, value, index, and share; the clicked tile also toggles a selection outline. */
|
|
1240
|
+
onDataClick?: (payload: TreemapClickPayload) => void;
|
|
1241
|
+
/** Accessible name for the chart's `<svg role="img">`. Per-tile values are exposed via the hidden data table, not this label. Defaults to `"treemap"`; also accepts `aria-label`. */
|
|
1242
|
+
ariaLabel?: string;
|
|
1243
|
+
/** Render a visually-hidden data table (value + share) as an accessible text alternative (WCAG 1.1.1). @default true */
|
|
1244
|
+
tableFallback?: boolean;
|
|
1245
|
+
/** Caption for the hidden data table; defaults to the chart's accessible label. */
|
|
1246
|
+
caption?: React.ReactNode;
|
|
1247
|
+
}
|
|
1248
|
+
|
|
1249
|
+
declare function Treemap(props: TreemapProps): React.JSX.Element;
|
|
1250
|
+
|
|
1251
|
+
/**
|
|
1252
|
+
* One OHLC period: a `label` plus the `open`, `high`, `low` and `close` prices.
|
|
1253
|
+
* The body spans open→close and the wick spans low→high.
|
|
1254
|
+
*/
|
|
1255
|
+
interface CandlestickDatum {
|
|
1256
|
+
/** Period label shown on the x axis (and in the hidden data table). */
|
|
1257
|
+
label: React.ReactNode;
|
|
1258
|
+
/** Opening price for the period. */
|
|
1259
|
+
open: number;
|
|
1260
|
+
/** Highest price reached in the period (top of the wick). */
|
|
1261
|
+
high: number;
|
|
1262
|
+
/** Lowest price reached in the period (bottom of the wick). */
|
|
1263
|
+
low: number;
|
|
1264
|
+
/** Closing price for the period; `close >= open` renders an up (green) candle. */
|
|
1265
|
+
close: number;
|
|
1266
|
+
}
|
|
1267
|
+
|
|
1268
|
+
/** Payload passed to `onDataClick` when a candle is clicked. */
|
|
1269
|
+
interface CandlestickClickPayload {
|
|
1270
|
+
/** The clicked candle's `label`. */
|
|
1271
|
+
label: React.ReactNode;
|
|
1272
|
+
/** Opening price for the clicked period. */
|
|
1273
|
+
open: number;
|
|
1274
|
+
/** Highest price reached in the clicked period. */
|
|
1275
|
+
high: number;
|
|
1276
|
+
/** Lowest price reached in the clicked period. */
|
|
1277
|
+
low: number;
|
|
1278
|
+
/** Closing price for the clicked period. */
|
|
1279
|
+
close: number;
|
|
1280
|
+
/** Index of the candle in the full (un-zoomed) `data` array. */
|
|
1281
|
+
index: number;
|
|
1282
|
+
}
|
|
1283
|
+
|
|
1284
|
+
/**
|
|
1285
|
+
* Candlestick (OHLC) chart — one candle per period with a high→low wick and an
|
|
1286
|
+
* open→close body, colored by direction (up vs. down), plus a shared value axis,
|
|
1287
|
+
* grid, per-candle tooltips and an accessible data table. Dependency-free inline
|
|
1288
|
+
* SVG. For bars/lines/areas use `Chart`; for other shapes use the dedicated
|
|
1289
|
+
* sibling chart components.
|
|
1290
|
+
*
|
|
1291
|
+
* @startingPoint section="Charts" subtitle="OHLC candlestick chart (no deps)" viewport="700x280"
|
|
1292
|
+
*/
|
|
1293
|
+
interface CandlestickProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
1294
|
+
/** OHLC data points, one candle each, in chronological order. */
|
|
1295
|
+
data: CandlestickDatum[];
|
|
1296
|
+
/** Color for up candles (`close >= open`), any CSS color. @default "var(--color-success)" */
|
|
1297
|
+
upColor?: string;
|
|
1298
|
+
/** Color for down candles (`close < open`), any CSS color. @default "var(--color-danger)" */
|
|
1299
|
+
downColor?: string;
|
|
1300
|
+
/** Pixel height. @default 300 */
|
|
1301
|
+
height?: number;
|
|
1302
|
+
/** Horizontal value grid lines. @default true */
|
|
1303
|
+
showGrid?: boolean;
|
|
1304
|
+
/** Value axis + category labels. @default true */
|
|
1305
|
+
showAxis?: boolean;
|
|
1306
|
+
/** Enable drag-to-zoom (+ shift-drag pan, wheel zoom, and a reset button) over the candles. @default false */
|
|
1307
|
+
zoomable?: boolean;
|
|
1308
|
+
/** Fires when a candle is clicked with the OHLC values + its index in the full data array. */
|
|
1309
|
+
onDataClick?: (payload: CandlestickClickPayload) => void;
|
|
1310
|
+
/** Tooltip value formatter (also formats the hidden data-table cells). @default toLocaleString */
|
|
1311
|
+
valueFormat?: (value: number) => string;
|
|
1312
|
+
/** Accessible name for the chart's `<svg role="img">`. Defaults to `"candlestick chart"`; also accepts `aria-label`. */
|
|
1313
|
+
ariaLabel?: string;
|
|
1314
|
+
/** Render a visually-hidden data table as an accessible text alternative (WCAG 1.1.1). @default true */
|
|
1315
|
+
tableFallback?: boolean;
|
|
1316
|
+
/** Caption for the hidden data table; defaults to the chart's accessible label. */
|
|
1317
|
+
caption?: React.ReactNode;
|
|
1318
|
+
}
|
|
1319
|
+
|
|
1320
|
+
declare function Candlestick(props: CandlestickProps): React.JSX.Element;
|
|
1321
|
+
|
|
1322
|
+
/**
|
|
1323
|
+
* A single box-and-whisker summary: a `label` plus the five-number distribution
|
|
1324
|
+
* (`min`, `q1`, `median`, `q3`, `max`) and optional `outliers` drawn as points.
|
|
1325
|
+
*/
|
|
1326
|
+
interface BoxplotDatum {
|
|
1327
|
+
/** Category label, rendered under the box and in the hidden data table. */
|
|
1328
|
+
label: React.ReactNode;
|
|
1329
|
+
/** Lower whisker end (distribution minimum, excluding outliers). */
|
|
1330
|
+
min: number;
|
|
1331
|
+
/** First quartile — the bottom edge of the box. */
|
|
1332
|
+
q1: number;
|
|
1333
|
+
/** Median — the bold line inside the box. */
|
|
1334
|
+
median: number;
|
|
1335
|
+
/** Third quartile — the top edge of the box. */
|
|
1336
|
+
q3: number;
|
|
1337
|
+
/** Upper whisker end (distribution maximum, excluding outliers). */
|
|
1338
|
+
max: number;
|
|
1339
|
+
/** Individual outlier values drawn as small circles beyond the whiskers. */
|
|
1340
|
+
outliers?: number[];
|
|
1341
|
+
}
|
|
1342
|
+
|
|
1343
|
+
/** Payload passed to `onDataClick` when a box is clicked. */
|
|
1344
|
+
interface BoxplotClickPayload {
|
|
1345
|
+
/** The clicked box's `label`. */
|
|
1346
|
+
label: React.ReactNode;
|
|
1347
|
+
/** Lower whisker end (distribution minimum). */
|
|
1348
|
+
min: number;
|
|
1349
|
+
/** First quartile — the bottom edge of the box. */
|
|
1350
|
+
q1: number;
|
|
1351
|
+
/** Median — the bold line inside the box. */
|
|
1352
|
+
median: number;
|
|
1353
|
+
/** Third quartile — the top edge of the box. */
|
|
1354
|
+
q3: number;
|
|
1355
|
+
/** Upper whisker end (distribution maximum). */
|
|
1356
|
+
max: number;
|
|
1357
|
+
/** Index of the box in the `data` array. */
|
|
1358
|
+
index: number;
|
|
1359
|
+
}
|
|
1360
|
+
|
|
1361
|
+
/**
|
|
1362
|
+
* Box-and-whisker chart — one box per category summarising a five-number
|
|
1363
|
+
* distribution (min, Q1, median, Q3, max) with whiskers, a bold median line,
|
|
1364
|
+
* and optional outlier points. Dependency-free inline SVG, theme-aware via
|
|
1365
|
+
* design tokens. For bar/line/area use `Chart`; for other shapes use the
|
|
1366
|
+
* dedicated sibling components.
|
|
1367
|
+
*
|
|
1368
|
+
* @startingPoint section="Charts" subtitle="Box-and-whisker distribution chart" viewport="700x280"
|
|
1369
|
+
*/
|
|
1370
|
+
interface BoxplotProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
1371
|
+
/** The boxes to plot, one per category, each a five-number summary. */
|
|
1372
|
+
data: BoxplotDatum[];
|
|
1373
|
+
/** Box fill/stroke accent (any CSS color). @default "var(--color-primary)" */
|
|
1374
|
+
color?: string;
|
|
1375
|
+
/** Pixel height. @default 300 */
|
|
1376
|
+
height?: number;
|
|
1377
|
+
/** Horizontal grid lines at the value ticks. @default true */
|
|
1378
|
+
showGrid?: boolean;
|
|
1379
|
+
/** Value axis and category labels. @default true */
|
|
1380
|
+
showAxis?: boolean;
|
|
1381
|
+
/** Enable drag-to-zoom over the category axis: drag an x-range to zoom into those boxes (re-fitting the value scale), shift-drag to pan, mouse-wheel to zoom, plus a Reset button. @default false */
|
|
1382
|
+
zoomable?: boolean;
|
|
1383
|
+
/** Tooltip/table value formatter. @default toLocaleString */
|
|
1384
|
+
valueFormat?: (value: number) => string;
|
|
1385
|
+
/** Fires when a box is clicked, with the five-number summary + its index. */
|
|
1386
|
+
onDataClick?: (payload: BoxplotClickPayload) => void;
|
|
1387
|
+
/** Accessible name for the chart's `<svg role="img">`. Per-box values are exposed via the hidden data table, not this label. @default "box plot" */
|
|
1388
|
+
ariaLabel?: string;
|
|
1389
|
+
/** Render a visually-hidden data table as an accessible text alternative (WCAG 1.1.1). @default true */
|
|
1390
|
+
tableFallback?: boolean;
|
|
1391
|
+
/** Caption for the hidden data table; defaults to the chart's accessible label. */
|
|
1392
|
+
caption?: React.ReactNode;
|
|
1393
|
+
}
|
|
1394
|
+
|
|
1395
|
+
declare function Boxplot(props: BoxplotProps): React.JSX.Element;
|
|
1396
|
+
|
|
1397
|
+
/**
|
|
1398
|
+
* One range value: a `label` plus its numeric `min` and `max` bounds. For a
|
|
1399
|
+
* range bar this is the start→end of a timeline row; for a range area it is the
|
|
1400
|
+
* lower/upper value at that category position.
|
|
1401
|
+
*/
|
|
1402
|
+
interface RangeDatum {
|
|
1403
|
+
/** Row/category label — shown on the axis and in the hidden data table. */
|
|
1404
|
+
label: React.ReactNode;
|
|
1405
|
+
/** Lower bound of the range (bar start / lower band edge). */
|
|
1406
|
+
min: number;
|
|
1407
|
+
/** Upper bound of the range (bar end / upper band edge). */
|
|
1408
|
+
max: number;
|
|
1409
|
+
/** Optional per-row bar color (any CSS color); overrides the palette. Applies to `type="bar"` only. */
|
|
1410
|
+
color?: string;
|
|
1411
|
+
}
|
|
1412
|
+
|
|
1413
|
+
/** Payload passed to `onDataClick` when a range bar/band segment is clicked. */
|
|
1414
|
+
interface RangeChartClickPayload {
|
|
1415
|
+
/** The clicked segment's `label`. */
|
|
1416
|
+
label: React.ReactNode;
|
|
1417
|
+
/** Lower bound of the clicked range. */
|
|
1418
|
+
min: number;
|
|
1419
|
+
/** Upper bound of the clicked range. */
|
|
1420
|
+
max: number;
|
|
1421
|
+
/** Index of the segment in the full (un-zoomed) `data` array. */
|
|
1422
|
+
index: number;
|
|
1423
|
+
}
|
|
1424
|
+
|
|
1425
|
+
/**
|
|
1426
|
+
* Range chart — horizontal range bars (a timeline / Gantt of one min→max band
|
|
1427
|
+
* per row) or a range area (a shaded band between a per-category min line and
|
|
1428
|
+
* max line), with a shared value axis, grid, tooltips, click (`onDataClick`) +
|
|
1429
|
+
* selection, optional drag/wheel zoom, and an accessible data table.
|
|
1430
|
+
* Dependency-free inline SVG. For bars/lines/areas use `Chart`; for other
|
|
1431
|
+
* shapes use the dedicated sibling chart components.
|
|
1432
|
+
*
|
|
1433
|
+
* @startingPoint section="Charts" subtitle="Range bar / range area chart (no deps)" viewport="700x280"
|
|
1434
|
+
*/
|
|
1435
|
+
interface RangeChartProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
1436
|
+
/** `"bar"` = horizontal range bars (timeline/Gantt); `"area"` = a band between a min and max line. @default "bar" */
|
|
1437
|
+
type?: "bar" | "area";
|
|
1438
|
+
/** Range data points, each with a `label`, `min` and `max` (bars run top→bottom; the area runs left→right). */
|
|
1439
|
+
data: RangeDatum[];
|
|
1440
|
+
/** Pixel height. @default 300 */
|
|
1441
|
+
height?: number;
|
|
1442
|
+
/** Value grid lines (vertical for bars, horizontal for the area). @default true */
|
|
1443
|
+
showGrid?: boolean;
|
|
1444
|
+
/** Value axis + category labels. @default true */
|
|
1445
|
+
showAxis?: boolean;
|
|
1446
|
+
/** Enable drag-to-zoom over the category axis (+ shift-drag pan, wheel zoom, and a reset button). @default false */
|
|
1447
|
+
zoomable?: boolean;
|
|
1448
|
+
/** Fires when a range bar/band segment is clicked with its label, bounds and full-data index; also toggles a selection outline on that segment. */
|
|
1449
|
+
onDataClick?: (payload: RangeChartClickPayload) => void;
|
|
1450
|
+
/** Palette for bar fills / the area band, cycled by index. Defaults to the built-in token palette. */
|
|
1451
|
+
colors?: string[];
|
|
1452
|
+
/** Tooltip value formatter (also formats the hidden data-table cells). @default toLocaleString */
|
|
1453
|
+
valueFormat?: (value: number) => string;
|
|
1454
|
+
/** Accessible name for the chart's `<svg role="img">`. Defaults to `"range <type> chart"`; also accepts `aria-label`. */
|
|
1455
|
+
ariaLabel?: string;
|
|
1456
|
+
/** Render a visually-hidden data table as an accessible text alternative (WCAG 1.1.1). @default true */
|
|
1457
|
+
tableFallback?: boolean;
|
|
1458
|
+
/** Caption for the hidden data table; defaults to the chart's accessible label. */
|
|
1459
|
+
caption?: React.ReactNode;
|
|
1460
|
+
}
|
|
1461
|
+
|
|
1462
|
+
declare function RangeChart(props: RangeChartProps): React.JSX.Element;
|
|
1463
|
+
|
|
585
1464
|
/**
|
|
586
1465
|
* Checkbox with animated checkmark, label, description, and indeterminate state.
|
|
587
1466
|
*/
|
|
@@ -2840,4 +3719,4 @@ declare function useFocusTrap<T extends HTMLElement = HTMLElement>(
|
|
|
2840
3719
|
*/
|
|
2841
3720
|
declare function usePortal(): (node: React.ReactNode) => React.ReactPortal | React.ReactNode | null;
|
|
2842
3721
|
|
|
2843
|
-
export { Accordion, type AccordionItem, type AccordionProps, type ActionTone, Alert, type AlertProps, Anchor, type AnchorProps, AppShell, type AppShellProps, Avatar, AvatarMenu, type AvatarMenuProps, type AvatarProps, Badge, type BadgeProps, type BarTone, Box, type BoxOwnProps, type BoxProps, Breadcrumb, type BreadcrumbItem, type BreadcrumbProps, Button, type ButtonProps, Card, type CardProps, Carousel, type CarouselProps, Chart, type ChartDatum, type ChartProps, Checkbox, type CheckboxProps, Code, type CodeProps, ColorPicker, type ColorPickerProps, ColorSchemeScript, type ColorSchemeScriptOptions, type ColorSchemeScriptProps, Combobox, type ComboboxGroup, type ComboboxOption, type ComboboxProps, type Command, CommandPalette, type CommandPaletteProps, Container, type ContainerOwnProps, type ContainerProps, Currency, CurrencyField, type CurrencyFieldProps, type CurrencyOption, type CurrencyProps, Datatable, type DatatableBatchAction, type DatatableColumn, type DatatableFilter, type DatatableFilterOp, type DatatableNumberOp, type DatatableProps, type DatatableQuery, type DatatableRowAction, type DatatableStringOp, DatePicker, type DatePickerProps, type DateRange, DateRangePicker, type DateRangePickerProps, Dialog, type DialogProps, Divider, type DividerProps, Drawer, type DrawerProps, EmptyState, type EmptyStateProps, Field, type FieldProps, FileUpload, type FileUploadProps, Form, type FormProps, Grid, type GridOwnProps, type GridProps, Heading, type HeadingOwnProps, type HeadingProps, type HeadingSize, IconButton, type IconButtonProps, Image, type ImageProps, Input, type InputProps, Kanban, type KanbanCard, type KanbanColumn, type KanbanProps, Kbd, type KbdProps, Label, type LabelProps, List, type ListItemData, type ListProps, Menu, type MenuItemDef, type MenuProps, MultiSelect, type MultiSelectGroup, type MultiSelectOption, type MultiSelectProps, Navbar, type NavbarLink, type NavbarProps, type Option, type OptionGroup, Pagination, type PaginationProps, type PolymorphicAs, type PolymorphicComponent, type PolymorphicProps, type PolymorphicPropsWithRef, type PolymorphicRef, Popover, type PopoverProps, Portal, type PortalProps, Pre, type PreProps, Progress, type ProgressProps, Radio, RadioGroup, type RadioGroupOption, type RadioGroupProps, type RadioProps, Rating, type RatingProps, type ResponsiveColumns, Select, type SelectGroup, type SelectOption, type SelectProps, Sidebar, type SidebarItem, type SidebarProps, Skeleton, type SkeletonProps, Slider, type SliderProps, Spinner, type SpinnerProps, Stack, type StackOwnProps, type StackProps, Stat, type StatProps, type Step, Stepper, type StepperProps, Switch, type SwitchProps, type Sx, type TabItem, Table, type TableColumn, type TableProps, Tabs, type TabsProps, Tag, type TagProps, Text, type TextOwnProps, type TextProps, type TextTone, Textarea, type TextareaProps, type Theme, ThemeProvider, type ThemeProviderProps, type ThemeTokens, Timeline, type TimelineItem, type TimelineProps, Toast, type ToastApi, type ToastOptions, type ToastProps, ToastProvider, type ToastProviderProps, type ToastTone, ToastViewport, type ToastViewportProps, type Tone, Tooltip, type TooltipProps, type TreeNode, TreeView, type TreeViewProps, TwicoProvider, type TwicoProviderProps, type UseColorSchemeOptions, type UseFocusTrapOptions, type UseKeyPressOptions, type UseMediaQueryOptions, VisuallyHidden, type VisuallyHiddenProps, createTheme, getColorSchemeScript, runDatatableQuery, useClickOutside, useColorScheme, useControllableState, useCopyToClipboard, useDebouncedCallback, useDebouncedValue, useDisclosure, useEventListener, useFocusTrap, useHover, useId, useIntersectionObserver, useInterval, useIsomorphicLayoutEffect, useKeyPress, useLocalStorage, useMediaQuery, useMounted, usePortal, usePrefersReducedMotion, usePrevious, useScrollLock, useTimeout, useToast, useToggle, useWindowSize };
|
|
3722
|
+
export { Accordion, type AccordionItem, type AccordionProps, type ActionTone, Alert, type AlertProps, Anchor, type AnchorProps, AppShell, type AppShellProps, Avatar, AvatarMenu, type AvatarMenuProps, type AvatarProps, Badge, type BadgeProps, type BarTone, Box, type BoxOwnProps, type BoxProps, Boxplot, type BoxplotDatum, type BoxplotProps, Breadcrumb, type BreadcrumbItem, type BreadcrumbProps, BubbleChart, type BubbleChartProps, Button, type ButtonProps, Candlestick, type CandlestickDatum, type CandlestickProps, Card, type CardProps, Carousel, type CarouselProps, Chart, type ChartDatum, type ChartProps, Checkbox, type CheckboxProps, Code, type CodeProps, ColorPicker, type ColorPickerProps, ColorSchemeScript, type ColorSchemeScriptOptions, type ColorSchemeScriptProps, Combobox, type ComboboxGroup, type ComboboxOption, type ComboboxProps, type Command, CommandPalette, type CommandPaletteProps, Container, type ContainerOwnProps, type ContainerProps, Currency, CurrencyField, type CurrencyFieldProps, type CurrencyOption, type CurrencyProps, Datatable, type DatatableBatchAction, type DatatableColumn, type DatatableFilter, type DatatableFilterOp, type DatatableNumberOp, type DatatableProps, type DatatableQuery, type DatatableRowAction, type DatatableStringOp, DatePicker, type DatePickerProps, type DateRange, DateRangePicker, type DateRangePickerProps, Dialog, type DialogProps, Divider, type DividerProps, DonutChart, type DonutChartDatum, type DonutChartProps, Drawer, type DrawerProps, EmptyState, type EmptyStateProps, Field, type FieldProps, FileUpload, type FileUploadProps, Form, type FormProps, FunnelChart, type FunnelChartProps, type FunnelDatum, Gauge, type GaugeProps, type GaugeSeries, Grid, type GridOwnProps, type GridProps, Heading, type HeadingOwnProps, type HeadingProps, type HeadingSize, Heatmap, type HeatmapDatum, type HeatmapProps, IconButton, type IconButtonProps, Image, type ImageProps, Input, type InputProps, Kanban, type KanbanCard, type KanbanColumn, type KanbanProps, Kbd, type KbdProps, Label, type LabelProps, List, type ListItemData, type ListProps, Menu, type MenuItemDef, type MenuProps, MultiSelect, type MultiSelectGroup, type MultiSelectOption, type MultiSelectProps, Navbar, type NavbarLink, type NavbarProps, type Option, type OptionGroup, Pagination, type PaginationProps, PieChart, type PieChartDatum, type PieChartProps, PolarAreaChart, type PolarAreaChartProps, type PolarAreaDatum, type PolymorphicAs, type PolymorphicComponent, type PolymorphicProps, type PolymorphicPropsWithRef, type PolymorphicRef, Popover, type PopoverProps, Portal, type PortalProps, Pre, type PreProps, Progress, type ProgressProps, RadarChart, type RadarChartProps, type RadarDatum, Radio, RadioGroup, type RadioGroupOption, type RadioGroupProps, type RadioProps, RangeChart, type RangeChartProps, type RangeDatum, Rating, type RatingProps, type ResponsiveColumns, ScatterChart, type ScatterChartProps, type ScatterPoint, type ScatterSeries, Select, type SelectGroup, type SelectOption, type SelectProps, Sidebar, type SidebarItem, type SidebarProps, Skeleton, type SkeletonProps, Slider, type SliderProps, Sparkline, type SparklineDatum, type SparklineProps, Spinner, type SpinnerProps, Stack, type StackOwnProps, type StackProps, Stat, type StatProps, type Step, Stepper, type StepperProps, Switch, type SwitchProps, type Sx, type TabItem, Table, type TableColumn, type TableProps, Tabs, type TabsProps, Tag, type TagProps, Text, type TextOwnProps, type TextProps, type TextTone, Textarea, type TextareaProps, type Theme, ThemeProvider, type ThemeProviderProps, type ThemeTokens, Timeline, type TimelineItem, type TimelineProps, Toast, type ToastApi, type ToastOptions, type ToastProps, ToastProvider, type ToastProviderProps, type ToastTone, ToastViewport, type ToastViewportProps, type Tone, Tooltip, type TooltipProps, type TreeNode, TreeView, type TreeViewProps, Treemap, type TreemapDatum, type TreemapProps, TwicoProvider, type TwicoProviderProps, type UseColorSchemeOptions, type UseFocusTrapOptions, type UseKeyPressOptions, type UseMediaQueryOptions, VisuallyHidden, type VisuallyHiddenProps, createTheme, getColorSchemeScript, runDatatableQuery, useClickOutside, useColorScheme, useControllableState, useCopyToClipboard, useDebouncedCallback, useDebouncedValue, useDisclosure, useEventListener, useFocusTrap, useHover, useId, useIntersectionObserver, useInterval, useIsomorphicLayoutEffect, useKeyPress, useLocalStorage, useMediaQuery, useMounted, usePortal, usePrefersReducedMotion, usePrevious, useScrollLock, useTimeout, useToast, useToggle, useWindowSize };
|