@hex-core/components 1.2.1 → 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/dist/index.d.ts CHANGED
@@ -779,14 +779,6 @@ declare function PaginationNext({ className, ...props }: React$1.ComponentProps<
779
779
  */
780
780
  declare function PaginationEllipsis({ className, ...props }: React$1.ComponentProps<"span">): react_jsx_runtime.JSX.Element;
781
781
 
782
- /**
783
- * Calendar date grid built on react-day-picker v9. Forwards all DayPicker props.
784
- *
785
- * Pass `mode="single" | "multiple" | "range"` and bind `selected` / `onSelect`
786
- * to control date selection. Style tokens follow the project palette; individual
787
- * parts can be overridden via the `classNames` prop.
788
- * @returns A themed react-day-picker DayPicker instance.
789
- */
790
782
  declare function Calendar({ className, classNames, showOutsideDays, ...props }: React$1.ComponentProps<typeof DayPicker>): react_jsx_runtime.JSX.Element;
791
783
  declare namespace Calendar {
792
784
  var displayName: string;
@@ -807,6 +799,19 @@ interface DatePickerProps {
807
799
  className?: string;
808
800
  /** Accessible label for the trigger (required when no visible label is adjacent). */
809
801
  "aria-label"?: string;
802
+ /**
803
+ * Caption layout forwarded to react-day-picker. Use `"dropdown"` (or
804
+ * `"dropdown-years"` / `"dropdown-months"`) to render native `<select>`
805
+ * navigation — useful for birth-date pickers and far-out years.
806
+ *
807
+ * Always pair `dropdown` layouts with explicit `startMonth` and `endMonth`;
808
+ * the RDP default span is ±100 years.
809
+ */
810
+ captionLayout?: "label" | "dropdown" | "dropdown-months" | "dropdown-years";
811
+ /** Earliest month/year navigable in the calendar. Forwarded to react-day-picker. */
812
+ startMonth?: Date;
813
+ /** Latest month/year navigable in the calendar. Forwarded to react-day-picker. */
814
+ endMonth?: Date;
810
815
  }
811
816
  /**
812
817
  * Date picker composed from Popover + Calendar + a styled trigger button.
@@ -814,7 +819,7 @@ interface DatePickerProps {
814
819
  * This is a minimal single-date picker. For multi/range, compose Calendar + Popover yourself.
815
820
  * @returns A button that opens a single-date calendar popover.
816
821
  */
817
- declare function DatePicker({ value, onChange, placeholder, dateFormat, disabled, className, "aria-label": ariaLabel, }: DatePickerProps): react_jsx_runtime.JSX.Element;
822
+ declare function DatePicker({ value, onChange, placeholder, dateFormat, disabled, className, "aria-label": ariaLabel, captionLayout, startMonth, endMonth, }: DatePickerProps): react_jsx_runtime.JSX.Element;
818
823
  declare namespace DatePicker {
819
824
  var displayName: string;
820
825
  }
@@ -981,6 +986,379 @@ declare namespace Combobox {
981
986
  var displayName: string;
982
987
  }
983
988
 
989
+ /** Props for the ColorPicker component. */
990
+ interface ColorPickerProps {
991
+ /**
992
+ * Current color as an HSL triplet string (`"<H> <S>% <L>%"`, e.g. `"240 5.9% 10%"`).
993
+ * Match the format used by `@hex-core/tokens`; round-trip safe.
994
+ */
995
+ value: string;
996
+ /**
997
+ * Called with the next HSL triplet whenever the user drags a slider or commits a valid hex value.
998
+ * Not called for invalid hex input — the picker keeps the prior value until the input parses cleanly.
999
+ */
1000
+ onChange: (value: string) => void;
1001
+ /**
1002
+ * Disable interaction. Native `disabled` attribute is set on the trigger so the
1003
+ * popover doesn't open via mouse or keyboard activation. Tab focus still lands
1004
+ * on the trigger per browser defaults; if you want to fully remove it from the
1005
+ * tab order, wrap in a parent that handles `tabIndex` accordingly.
1006
+ */
1007
+ disabled?: boolean;
1008
+ /** Accessible name for the trigger button (defaults to "Pick color"). */
1009
+ "aria-label"?: string;
1010
+ /** Additional class names merged onto the trigger. */
1011
+ className?: string;
1012
+ }
1013
+ /**
1014
+ * HSL-native color picker. Edits an HSL triplet directly via three sliders
1015
+ * (H/S/L), with a hex input as a display adapter.
1016
+ *
1017
+ * Round-trip safe: triplet → hex → triplet preserves the slider state because
1018
+ * sliders are the source of truth and hex updates them only when valid.
1019
+ *
1020
+ * @param props - Controlled component; `value` and `onChange` are required.
1021
+ * @returns A trigger button that opens a popover with H/S/L sliders + hex input.
1022
+ * @example
1023
+ * ```tsx
1024
+ * const [color, setColor] = React.useState("240 5.9% 10%");
1025
+ * <ColorPicker value={color} onChange={setColor} aria-label="Primary color" />
1026
+ * ```
1027
+ */
1028
+ declare function ColorPicker({ value, onChange, disabled, "aria-label": ariaLabel, className, }: ColorPickerProps): react_jsx_runtime.JSX.Element;
1029
+
1030
+ /**
1031
+ * Color conversion utilities for the HSL-triplet token format used across
1032
+ * `@hex-core/tokens` themes (`H S% L%`, e.g. `"240 5.9% 10%"` — no `hsl()`
1033
+ * wrapper, no commas).
1034
+ *
1035
+ * The triplet is the round-trip-safe serialization for Hex UI: tokens flow
1036
+ * triplet → CSS `hsl(var(--token))` → rendered color, and the ColorPicker
1037
+ * component edits triplets directly. Hex/RGB conversions are display
1038
+ * adapters, not the source of truth.
1039
+ */
1040
+ /** Parsed HSL components. `h` is degrees (0–360); `s` and `l` are percentages (0–100). */
1041
+ interface HslTriplet {
1042
+ h: number;
1043
+ s: number;
1044
+ l: number;
1045
+ }
1046
+ /** Parsed RGB components. Each channel is 0–255. */
1047
+ interface RgbColor {
1048
+ r: number;
1049
+ g: number;
1050
+ b: number;
1051
+ }
1052
+ /**
1053
+ * Parse an HSL triplet string into numeric components.
1054
+ *
1055
+ * Note: malformed input silently coerces to `{0,0,0}` (pure black) rather than
1056
+ * returning an error signal. Callers that need to distinguish "user typed
1057
+ * black" from "user typed garbage" should validate the input format first.
1058
+ * `hexToHslTriplet` returns `null` for malformed hex; this asymmetry is
1059
+ * intentional — triplets feed CSS variables where any non-color value would
1060
+ * already break rendering.
1061
+ *
1062
+ * @param triplet - String in the form `"<H> <S>% <L>%"` (e.g. `"240 5.9% 10%"`).
1063
+ * @returns Numeric components, or `{0,0,0}` if the input is malformed.
1064
+ */
1065
+ declare function parseHslTriplet(triplet: string): HslTriplet;
1066
+ /**
1067
+ * Format HSL components into an HSL triplet string (the canonical token format).
1068
+ * @param hsl - Numeric components.
1069
+ * @returns Triplet in the form `"<H> <S>% <L>%"`.
1070
+ */
1071
+ declare function formatHslTriplet({ h, s, l }: HslTriplet): string;
1072
+ /**
1073
+ * Convert HSL components to RGB.
1074
+ * @param h - Hue (0–360).
1075
+ * @param s - Saturation (0–100).
1076
+ * @param l - Lightness (0–100).
1077
+ * @returns RGB channels (0–255, rounded).
1078
+ */
1079
+ declare function hslToRgb(h: number, s: number, l: number): RgbColor;
1080
+ /**
1081
+ * Convert RGB components to HSL.
1082
+ * @param r - Red (0–255).
1083
+ * @param g - Green (0–255).
1084
+ * @param b - Blue (0–255).
1085
+ * @returns HSL components (h: 0–360, s: 0–100, l: 0–100).
1086
+ */
1087
+ declare function rgbToHsl(r: number, g: number, b: number): HslTriplet;
1088
+ /**
1089
+ * Convert an HSL triplet to a 6-digit hex string.
1090
+ * @param triplet - HSL triplet (e.g. `"240 5.9% 10%"`).
1091
+ * @returns Lowercase hex string with leading `#` (e.g. `"#181a1f"`).
1092
+ */
1093
+ declare function hslTripletToHex(triplet: string): string;
1094
+ /**
1095
+ * Convert a hex string to an HSL triplet.
1096
+ * Accepts 3-digit (`#abc`) or 6-digit (`#aabbcc`) hex with optional `#`.
1097
+ * @param hex - Hex color string.
1098
+ * @returns HSL triplet, or `null` if the input is malformed.
1099
+ */
1100
+ declare function hexToHslTriplet(hex: string): string | null;
1101
+
1102
+ interface MultiComboboxOption {
1103
+ /** The value returned in the onChange array (stable, unique). */
1104
+ value: string;
1105
+ /** The display label shown in the list and the trigger. */
1106
+ label: string;
1107
+ /** Mark as non-selectable. */
1108
+ disabled?: boolean;
1109
+ }
1110
+ interface MultiComboboxProps {
1111
+ /** The list of selectable options. */
1112
+ options: MultiComboboxOption[];
1113
+ /** Controlled selected values. */
1114
+ value?: string[];
1115
+ /** Fired when the user toggles an option: (values: string[]) => void */
1116
+ onChange?: (values: string[]) => void;
1117
+ /** Text shown on the trigger when nothing is selected. */
1118
+ placeholder?: string;
1119
+ /** Input placeholder inside the popover list. */
1120
+ searchPlaceholder?: string;
1121
+ /** Text shown when no options match the search. */
1122
+ emptyText?: string;
1123
+ /** Soft cap on selections. Once reached, unselected options become non-selectable. */
1124
+ maxSelected?: number;
1125
+ /** Close the popover after every pick. Default false (multi-select UX expects staying open). */
1126
+ closeOnSelect?: boolean;
1127
+ /** Disable the trigger. */
1128
+ disabled?: boolean;
1129
+ /** Extra class names on the trigger button. */
1130
+ className?: string;
1131
+ /** Accessible label for the trigger (required when no adjacent visible label). */
1132
+ "aria-label"?: string;
1133
+ /** Id of an external visible label that names this combobox. */
1134
+ "aria-labelledby"?: string;
1135
+ }
1136
+ /**
1137
+ * Searchable multi-select input built on Command + Popover.
1138
+ *
1139
+ * Pass `options` with `{ value, label }` and bind `value` (string[]) +
1140
+ * `onChange`. The trigger shows "{n} selected" once any option is picked, with
1141
+ * the comma-separated label list mirrored into the `title` attribute for
1142
+ * pointer/screen-reader fallback. Each option is announced with `aria-selected`.
1143
+ * @returns A trigger button that opens a multi-select option list.
1144
+ */
1145
+ declare function MultiCombobox({ options, value, onChange, placeholder, searchPlaceholder, emptyText, maxSelected, closeOnSelect, disabled, className, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, }: MultiComboboxProps): react_jsx_runtime.JSX.Element;
1146
+ declare namespace MultiCombobox {
1147
+ var displayName: string;
1148
+ }
1149
+
1150
+ type StepStatus = "complete" | "current" | "upcoming" | "error";
1151
+ interface StepperStep {
1152
+ /** Stable unique id used as the React key. */
1153
+ id: string;
1154
+ /** Step name shown next to the indicator. */
1155
+ label: string;
1156
+ /** Optional secondary text under the label. */
1157
+ description?: string;
1158
+ /** Disable the step (only applies when onStepClick is provided). */
1159
+ disabled?: boolean;
1160
+ /**
1161
+ * Override the index-derived status. Use `"error"` to mark a failed step
1162
+ * (e.g. validation failure in a form wizard); `"complete"` / `"current"` /
1163
+ * `"upcoming"` are derived from `current` by default.
1164
+ */
1165
+ status?: StepStatus;
1166
+ }
1167
+ interface StepperProps extends Omit<React$1.HTMLAttributes<HTMLOListElement>, "aria-label" | "onClick"> {
1168
+ /** Ordered list of steps. */
1169
+ steps: StepperStep[];
1170
+ /** Index of the current step (controlled). */
1171
+ current: number;
1172
+ /** Layout direction. */
1173
+ orientation?: "horizontal" | "vertical";
1174
+ /** Indicator size. */
1175
+ size?: "sm" | "md";
1176
+ /** When provided, each step is rendered as a clickable button. */
1177
+ onStepClick?: (index: number) => void;
1178
+ /** Required accessible name for the ordered list. */
1179
+ "aria-label": string;
1180
+ }
1181
+ /**
1182
+ * Linear progress indicator for multi-step flows (form wizards, onboarding,
1183
+ * checkout). Pure semantic HTML — `<ol>` of `<li>` with `aria-current="step"`
1184
+ * on the current item; per-step `status` overrides allow marking "error".
1185
+ *
1186
+ * Pass `onStepClick` to make completed/non-disabled steps interactive.
1187
+ * @returns An accessible ordered step list.
1188
+ */
1189
+ declare function Stepper({ steps, current, orientation, size, onStepClick, "aria-label": ariaLabel, className, ...rest }: StepperProps): react_jsx_runtime.JSX.Element;
1190
+ declare namespace Stepper {
1191
+ var displayName: string;
1192
+ }
1193
+
1194
+ type TimelineStatus = "default" | "success" | "warning" | "error" | "info";
1195
+ interface TimelineEvent {
1196
+ /** Stable unique id used as the React key. */
1197
+ id: string;
1198
+ /** Headline for the event. */
1199
+ title: string;
1200
+ /** Optional timestamp/metadata (e.g. "2 hours ago", "2026-04-27 14:30"). */
1201
+ timestamp?: React$1.ReactNode;
1202
+ /** Optional secondary text/body. */
1203
+ description?: React$1.ReactNode;
1204
+ /** Optional icon override for the indicator. Replaces the default dot. */
1205
+ icon?: React$1.ReactNode;
1206
+ /** Color variant for the indicator. */
1207
+ status?: TimelineStatus;
1208
+ }
1209
+ interface TimelineProps extends Omit<React$1.HTMLAttributes<HTMLOListElement>, "aria-label"> {
1210
+ /** Ordered list of chronological events. */
1211
+ events: TimelineEvent[];
1212
+ /** Indicator size — `"md"` by default. */
1213
+ size?: "sm" | "md";
1214
+ /** Required accessible name for the ordered list. */
1215
+ "aria-label": string;
1216
+ }
1217
+ /**
1218
+ * Vertical chronological event feed (activity log, audit trail, release notes).
1219
+ * Pure semantic HTML — `<ol>` of `<li>`. Events expose an optional icon, a
1220
+ * status color, a timestamp, and a description; status is purely visual, no
1221
+ * aria-current is set since events are historical, not navigational.
1222
+ *
1223
+ * For Gantt-style project timelines, build a custom layout — Timeline is for
1224
+ * event feeds, not scheduling.
1225
+ * @returns An accessible vertical event list.
1226
+ */
1227
+ declare function Timeline({ events, size, "aria-label": ariaLabel, className, ...rest }: TimelineProps): react_jsx_runtime.JSX.Element;
1228
+ declare namespace Timeline {
1229
+ var displayName: string;
1230
+ }
1231
+
1232
+ interface DropzoneProps extends Omit<React$1.HTMLAttributes<HTMLDivElement>, "onChange" | "onDrop" | "children"> {
1233
+ /** Fired with the accepted file list every time the user picks or drops files. */
1234
+ onFilesSelected?: (files: File[]) => void;
1235
+ /**
1236
+ * Fired when files are dropped/picked but ALL of them are filtered out by
1237
+ * `accept` / `maxSize` / `maxFiles`. Useful for surfacing "file too large"
1238
+ * or "wrong type" toasts to the user. Receives the rejected File[].
1239
+ */
1240
+ onFilesRejected?: (files: File[]) => void;
1241
+ /** `accept` attribute forwarded to the hidden file input (e.g. "image/*", ".csv"). */
1242
+ accept?: string;
1243
+ /** Allow multiple files. Default true. */
1244
+ multiple?: boolean;
1245
+ /** Maximum total file count (after dedupe). Excess files are dropped silently — surface in your handler. */
1246
+ maxFiles?: number;
1247
+ /** Maximum size per file in bytes. Files over the cap are filtered before onFilesSelected fires. */
1248
+ maxSize?: number;
1249
+ /** Disable interaction. */
1250
+ disabled?: boolean;
1251
+ /** Optional render override for the dropzone body. Receives drag state. */
1252
+ children?: React$1.ReactNode | ((state: DropzoneRenderState) => React$1.ReactNode);
1253
+ /** Required accessible name for the drop area. */
1254
+ "aria-label": string;
1255
+ }
1256
+ interface DropzoneRenderState {
1257
+ isDragOver: boolean;
1258
+ isDisabled: boolean;
1259
+ openFileDialog: () => void;
1260
+ }
1261
+ /**
1262
+ * Drag-and-drop file input built on the native HTML5 drag-drop API plus a
1263
+ * visually-hidden (sr-only) `<input type="file">` for screen-reader and
1264
+ * keyboard access.
1265
+ *
1266
+ * Two interaction surfaces:
1267
+ * - The visible drop area is a `role="button"` div with `tabIndex=0` and the
1268
+ * required `aria-label`. Click, Enter, or Space proxies through to click the
1269
+ * hidden input, opening the system file dialog.
1270
+ * - The hidden input itself remains in the accessibility tree (sr-only, NOT
1271
+ * `aria-hidden`) so AT-driven file pickers can find it directly.
1272
+ *
1273
+ * Pass `children` as a node (default placeholder) or a function receiving
1274
+ * `{ isDragOver, isDisabled, openFileDialog }` for full layout control.
1275
+ * @returns A drop area + hidden file input pair that yields a File[].
1276
+ */
1277
+ declare function Dropzone({ onFilesSelected, onFilesRejected, accept, multiple, maxFiles, maxSize, disabled, children, className, "aria-label": ariaLabel, ...rest }: DropzoneProps): react_jsx_runtime.JSX.Element;
1278
+ declare namespace Dropzone {
1279
+ var displayName: string;
1280
+ }
1281
+
1282
+ interface TimePickerProps extends Omit<React$1.InputHTMLAttributes<HTMLInputElement>, "type" | "value" | "onChange" | "size"> {
1283
+ /** Controlled time value as `"HH:MM"` or `"HH:MM:SS"` (24-hour). */
1284
+ value?: string;
1285
+ /** Fired with the new `"HH:MM"` (or `"HH:MM:SS"`) string when the user picks a time. */
1286
+ onChange?: (value: string) => void;
1287
+ /**
1288
+ * Step in seconds — `60` shows HH:MM only (default), `1` shows HH:MM:SS.
1289
+ * Smaller values change the spinner increment in supported browsers.
1290
+ */
1291
+ step?: number;
1292
+ /** Earliest selectable time as `"HH:MM"`. */
1293
+ min?: string;
1294
+ /** Latest selectable time as `"HH:MM"`. */
1295
+ max?: string;
1296
+ /** Disable the input. */
1297
+ disabled?: boolean;
1298
+ /** Accessible label for the trigger (required when no adjacent visible <label>). */
1299
+ "aria-label"?: string;
1300
+ }
1301
+ /**
1302
+ * Time input — styled wrapper around the native `<input type="time">` so the
1303
+ * browser handles 12/24-hour locale, keyboard arrow stepping, and screen-reader
1304
+ * announcement. Value is a `"HH:MM"` (or `"HH:MM:SS"` when `step={1}`) string.
1305
+ *
1306
+ * For free-form composite hour/minute fields with explicit AM/PM segments,
1307
+ * compose Input + Select yourself — the native input covers ~95% of TimePicker
1308
+ * use cases with full a11y, including keyboard-driven hour/minute spinning.
1309
+ * @returns A token-styled native time input.
1310
+ */
1311
+ declare const TimePicker: React$1.ForwardRefExoticComponent<TimePickerProps & React$1.RefAttributes<HTMLInputElement>>;
1312
+
1313
+ interface FileTreeNode {
1314
+ /** Stable unique id used as React key + ARIA target. */
1315
+ id: string;
1316
+ /** Display name (file or folder). */
1317
+ name: string;
1318
+ /** Nested children. Presence (even if empty array) marks the node as a folder. */
1319
+ children?: FileTreeNode[];
1320
+ /** Optional icon override. Default chooses folder/file based on `children`. */
1321
+ icon?: React$1.ReactNode;
1322
+ /** Disable selection + expand toggle. */
1323
+ disabled?: boolean;
1324
+ }
1325
+ interface FileTreeProps {
1326
+ /** Root nodes. */
1327
+ nodes: FileTreeNode[];
1328
+ /** Uncontrolled initial expanded ids. */
1329
+ defaultExpanded?: string[];
1330
+ /** Controlled expanded ids. */
1331
+ expanded?: string[];
1332
+ /** Fired when expanded set changes (array of ids). */
1333
+ onExpandedChange?: (ids: string[]) => void;
1334
+ /** Controlled selected node id. */
1335
+ selected?: string;
1336
+ /** Fired when the user activates a node (click, Enter, or Space). */
1337
+ onSelect?: (id: string) => void;
1338
+ /** Required accessible name for the tree container. */
1339
+ "aria-label": string;
1340
+ /** Extra class names on the root tree element. */
1341
+ className?: string;
1342
+ }
1343
+ /**
1344
+ * Hierarchical tree view for files, folders, settings sections, or any nested
1345
+ * navigation. Built on the WAI-ARIA tree pattern: `role="tree"` root,
1346
+ * `role="treeitem"` per node, `role="group"` per child group, with
1347
+ * `aria-level` / `aria-expanded` / `aria-selected` reflecting state.
1348
+ *
1349
+ * Keyboard: Up/Down move between visible items; Right expands a folder or
1350
+ * moves to the first child; Left collapses or moves to the parent;
1351
+ * Enter/Space activate the focused node; Home/End jump to the first/last.
1352
+ *
1353
+ * Expanded state is uncontrolled by default (`defaultExpanded`). Pass
1354
+ * `expanded` + `onExpandedChange` for controlled mode.
1355
+ * @returns A keyboard-accessible nested tree.
1356
+ */
1357
+ declare function FileTree({ nodes, defaultExpanded, expanded: expandedProp, onExpandedChange, selected, onSelect, "aria-label": ariaLabel, className, }: FileTreeProps): react_jsx_runtime.JSX.Element;
1358
+ declare namespace FileTree {
1359
+ var displayName: string;
1360
+ }
1361
+
984
1362
  /** Root container controlling open state of a side sheet. */
985
1363
  declare const Sheet: React$1.FC<DialogPrimitive.DialogProps>;
986
1364
  /** The element (usually a button) that opens the sheet. */
@@ -1235,6 +1613,20 @@ declare const commandSchema: ComponentSchemaDefinition;
1235
1613
 
1236
1614
  declare const comboboxSchema: ComponentSchemaDefinition;
1237
1615
 
1616
+ declare const multiComboboxSchema: ComponentSchemaDefinition;
1617
+
1618
+ declare const stepperSchema: ComponentSchemaDefinition;
1619
+
1620
+ declare const timelineSchema: ComponentSchemaDefinition;
1621
+
1622
+ declare const dropzoneSchema: ComponentSchemaDefinition;
1623
+
1624
+ declare const timePickerSchema: ComponentSchemaDefinition;
1625
+
1626
+ declare const fileTreeSchema: ComponentSchemaDefinition;
1627
+
1628
+ declare const colorPickerSchema: ComponentSchemaDefinition;
1629
+
1238
1630
  declare const sheetSchema: ComponentSchemaDefinition;
1239
1631
 
1240
1632
  declare const drawerSchema: ComponentSchemaDefinition;
@@ -1250,4 +1642,4 @@ declare const sidebarSchema: ComponentSchemaDefinition;
1250
1642
  */
1251
1643
  declare function cn(...inputs: ClassValue[]): string;
1252
1644
 
1253
- export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AspectRatio, Avatar, AvatarFallback, AvatarImage, Badge, type BadgeProps, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, type ButtonProps, Calendar, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, type CheckboxProps, Cluster, type ClusterProps, Collapsible, CollapsibleContent, CollapsibleTrigger, Combobox, type ComboboxOption, type ComboboxProps, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, Container, type ContainerProps, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuTrigger, DataTable, type DataTableProps, DatePicker, type DatePickerProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuTrigger, Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, Grid, type GridProps, HoverCard, HoverCardContent, HoverCardTrigger, Input, InputOTP, InputOTPGroup, type InputOTPProps, InputOTPSeparator, InputOTPSlot, type InputProps, Label, type LabelProps, Menubar, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarSeparator, MenubarShortcut, MenubarTrigger, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, Progress, RadioGroup, RadioGroupItem, ResizableHandle, ResizablePanel, ResizablePanelGroup, ScrollArea, ScrollBar, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectSeparator, SelectTrigger, SelectValue, Separator, type SeparatorProps, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarHeader, SidebarItem, SidebarProvider, SidebarTrigger, Skeleton, Slider, Spacer, type SpacerProps, Stack, type StackProps, Switch, type SwitchProps, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, type TextareaProps, Toaster, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, accordionSchema, alertDialogSchema, alertSchema, alertVariants, aspectRatioSchema, avatarSchema, badgeSchema, badgeVariants, breadcrumbSchema, buttonSchema, buttonVariants, calendarSchema, cardSchema, checkboxSchema, clusterSchema, clusterVariants, cn, collapsibleSchema, comboboxSchema, commandSchema, containerSchema, containerVariants, contextMenuSchema, dataTableSchema, datePickerSchema, dialogSchema, drawerSchema, dropdownMenuSchema, formSchema, gridSchema, gridVariants, hoverCardSchema, inputOTPSchema, inputSchema, labelSchema, menubarSchema, navigationMenuSchema, navigationMenuTriggerStyle, paginationSchema, popoverSchema, progressSchema, radioGroupSchema, resizableSchema, scrollAreaSchema, selectSchema, separatorSchema, sheetSchema, sidebarSchema, skeletonSchema, sliderSchema, sonnerSchema, spacerSchema, spacerVariants, stackSchema, stackVariants, switchSchema, tableSchema, tabsSchema, textareaSchema, toggleGroupSchema, toggleSchema, toggleVariants, tooltipSchema, useFormField, useSidebar };
1645
+ export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AspectRatio, Avatar, AvatarFallback, AvatarImage, Badge, type BadgeProps, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, type ButtonProps, Calendar, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, type CheckboxProps, Cluster, type ClusterProps, Collapsible, CollapsibleContent, CollapsibleTrigger, ColorPicker, type ColorPickerProps, Combobox, type ComboboxOption, type ComboboxProps, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, Container, type ContainerProps, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuTrigger, DataTable, type DataTableProps, DatePicker, type DatePickerProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuTrigger, Dropzone, type DropzoneProps, type DropzoneRenderState, FileTree, type FileTreeNode, type FileTreeProps, Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, Grid, type GridProps, HoverCard, HoverCardContent, HoverCardTrigger, type HslTriplet, Input, InputOTP, InputOTPGroup, type InputOTPProps, InputOTPSeparator, InputOTPSlot, type InputProps, Label, type LabelProps, Menubar, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarSeparator, MenubarShortcut, MenubarTrigger, MultiCombobox, type MultiComboboxOption, type MultiComboboxProps, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, Progress, RadioGroup, RadioGroupItem, ResizableHandle, ResizablePanel, ResizablePanelGroup, type RgbColor, ScrollArea, ScrollBar, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectSeparator, SelectTrigger, SelectValue, Separator, type SeparatorProps, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarHeader, SidebarItem, SidebarProvider, SidebarTrigger, Skeleton, Slider, Spacer, type SpacerProps, Stack, type StackProps, type StepStatus, Stepper, type StepperProps, type StepperStep, Switch, type SwitchProps, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, type TextareaProps, TimePicker, type TimePickerProps, Timeline, type TimelineEvent, type TimelineProps, type TimelineStatus, Toaster, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, accordionSchema, alertDialogSchema, alertSchema, alertVariants, aspectRatioSchema, avatarSchema, badgeSchema, badgeVariants, breadcrumbSchema, buttonSchema, buttonVariants, calendarSchema, cardSchema, checkboxSchema, clusterSchema, clusterVariants, cn, collapsibleSchema, colorPickerSchema, comboboxSchema, commandSchema, containerSchema, containerVariants, contextMenuSchema, dataTableSchema, datePickerSchema, dialogSchema, drawerSchema, dropdownMenuSchema, dropzoneSchema, fileTreeSchema, formSchema, formatHslTriplet, gridSchema, gridVariants, hexToHslTriplet, hoverCardSchema, hslToRgb, hslTripletToHex, inputOTPSchema, inputSchema, labelSchema, menubarSchema, multiComboboxSchema, navigationMenuSchema, navigationMenuTriggerStyle, paginationSchema, parseHslTriplet, popoverSchema, progressSchema, radioGroupSchema, resizableSchema, rgbToHsl, scrollAreaSchema, selectSchema, separatorSchema, sheetSchema, sidebarSchema, skeletonSchema, sliderSchema, sonnerSchema, spacerSchema, spacerVariants, stackSchema, stackVariants, stepperSchema, switchSchema, tableSchema, tabsSchema, textareaSchema, timePickerSchema, timelineSchema, toggleGroupSchema, toggleSchema, toggleVariants, tooltipSchema, useFormField, useSidebar };