doodleui-react 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -3,7 +3,7 @@ import { CSSProperties, HTMLAttributes, ReactNode, RefObject, ButtonHTMLAttribut
3
3
  import { Options } from 'roughjs/bin/core';
4
4
  import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
5
5
  import * as RadioGroupPrimitive from '@radix-ui/react-radio-group';
6
- import * as Dialog from '@radix-ui/react-dialog';
6
+ import * as DialogPrimitive from '@radix-ui/react-dialog';
7
7
  import * as TooltipPrimitive from '@radix-ui/react-tooltip';
8
8
  import * as SelectPrimitive from '@radix-ui/react-select';
9
9
  import * as SwitchPrimitive from '@radix-ui/react-switch';
@@ -12,6 +12,12 @@ import * as ToastPrimitive from '@radix-ui/react-toast';
12
12
  import * as AccordionPrimitive from '@radix-ui/react-accordion';
13
13
  import * as AvatarPrimitive from '@radix-ui/react-avatar';
14
14
  import * as SliderPrimitive from '@radix-ui/react-slider';
15
+ import * as LabelPrimitive from '@radix-ui/react-label';
16
+ import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';
17
+ import * as PopoverPrimitive from '@radix-ui/react-popover';
18
+ import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
19
+ import * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog';
20
+ import { Command as Command$1, CommandEmpty as CommandEmpty$1, CommandGroup as CommandGroup$1, CommandInput as CommandInput$1, CommandItem as CommandItem$1, CommandList as CommandList$1, CommandSeparator as CommandSeparator$1 } from 'cmdk';
15
21
 
16
22
  type FillStyle = "hachure" | "solid" | "zigzag" | "cross-hatch" | "dots" | "dashed" | "zigzag-line";
17
23
  type RoughShape = "rectangle" | "ellipse" | "line" | "line-vertical" | "path";
@@ -269,11 +275,11 @@ interface ModalProps extends SketchProps {
269
275
  animate?: boolean;
270
276
  }
271
277
  declare function Modal({ open, defaultOpen, onOpenChange, trigger, title, description, children, className, roughness, seed, sketchColor, bowing, fillStyle, strokeWidth, animate, }: ModalProps): react.JSX.Element;
272
- declare const ModalRoot: react.FC<Dialog.DialogProps>;
273
- declare const ModalTrigger: react.ForwardRefExoticComponent<Dialog.DialogTriggerProps & react.RefAttributes<HTMLButtonElement>>;
274
- declare const ModalClose: react.ForwardRefExoticComponent<Dialog.DialogCloseProps & react.RefAttributes<HTMLButtonElement>>;
275
- declare const ModalTitle: react.ForwardRefExoticComponent<Dialog.DialogTitleProps & react.RefAttributes<HTMLHeadingElement>>;
276
- declare const ModalDescription: react.ForwardRefExoticComponent<Dialog.DialogDescriptionProps & react.RefAttributes<HTMLParagraphElement>>;
278
+ declare const ModalRoot: react.FC<DialogPrimitive.DialogProps>;
279
+ declare const ModalTrigger: react.ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & react.RefAttributes<HTMLButtonElement>>;
280
+ declare const ModalClose: react.ForwardRefExoticComponent<DialogPrimitive.DialogCloseProps & react.RefAttributes<HTMLButtonElement>>;
281
+ declare const ModalTitle: react.ForwardRefExoticComponent<DialogPrimitive.DialogTitleProps & react.RefAttributes<HTMLHeadingElement>>;
282
+ declare const ModalDescription: react.ForwardRefExoticComponent<DialogPrimitive.DialogDescriptionProps & react.RefAttributes<HTMLParagraphElement>>;
277
283
 
278
284
  type DividerOrientation = "horizontal" | "vertical";
279
285
  interface DividerProps extends Omit<HTMLAttributes<HTMLDivElement>, "color">, SketchProps {
@@ -520,4 +526,251 @@ interface StepperProps extends Omit<HTMLAttributes<HTMLDivElement>, "color">, Sk
520
526
  }
521
527
  declare const Stepper: react.ForwardRefExoticComponent<StepperProps & react.RefAttributes<HTMLDivElement>>;
522
528
 
523
- export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionTrigger, type AccordionTriggerProps, Alert, type AlertProps, type AlertVariant, Avatar, type AvatarProps, type AvatarShape, type AvatarStatus, Badge, type BadgeProps, type BadgeVariant, Breadcrumb, BreadcrumbItem, type BreadcrumbItemProps, type BreadcrumbProps, type BreadcrumbSeparator, Button, type ButtonProps, type ButtonSize, type ButtonVariant, Card, type CardProps, Checkbox, type CheckboxProps, DEFAULT_BOWING, DEFAULT_INK, DEFAULT_ROUGHNESS, DEFAULT_STROKE_WIDTH, DRAW_IN_ALERT_MS, DRAW_IN_DURATION_MS, DRAW_IN_MARK_MS, DRAW_IN_TOOLTIP_MS, Divider, type DividerOrientation, type DividerProps, type DoodleUIContextValue, DoodleUIProvider, type DoodleUIProviderProps, type FillStyle, Input, type InputProps, Modal, ModalClose, ModalDescription, type ModalProps, ModalRoot, ModalTitle, ModalTrigger, Pagination, type PaginationProps, Progress, type ProgressProps, Radio, RadioGroup, type RadioGroupProps, type RadioProps, type RoughShape, RoughSvg, type RoughSvgProps, SKETCH_COLORS, Select, SelectContent, type SelectContentProps, SelectGroup, SelectItem, type SelectItemProps, SelectLabel, type SelectOption, type SelectProps, SelectRoot, SelectSeparator, SelectTrigger, type SelectTriggerProps, SelectValue, Skeleton, type SkeletonProps, type SkeletonVariant, SketchBox, type SketchBoxProps, type SketchProps, type SketchSeedContextValue, SketchSeedProvider, type SketchSeedProviderProps, Slider, type SliderProps, type SliderThumbShape, Stepper, type StepperOrientation, type StepperProps, type StepperStep, Switch, type SwitchProps, TABLE_STAGGER_MS, Tab, TabList, type TabListProps, TabPanel, type TabPanelProps, type TabProps, Table, TableBody, TableCell, type TableCellProps, TableHead, TableHeaderCell, type TableHeaderCellProps, type TableProps, TableRow, Tabs, type TabsProps, Textarea, type TextareaProps, Toast, ToastAction, ToastClose, ToastDescription, type ToastPosition, type ToastProps, ToastProvider, type ToastProviderProps, ToastRoot, ToastTitle, type ToastVariant, ToastViewport, Tooltip, type TooltipProps, TooltipProvider, deriveSeed, toRoughOptions, useAnimate, useDoodleUI, useDrawIn, useResolvedSeed, useSketchSeed };
529
+ interface LabelProps extends Omit<LabelPrimitive.LabelProps, "asChild" | "color">, SketchProps {
530
+ children?: ReactNode;
531
+ /** Adds a small hand-drawn required mark after the text. */
532
+ required?: boolean;
533
+ /**
534
+ * Draw-in the required mark on mount.
535
+ * Defaults to the DoodleUIProvider value (true).
536
+ */
537
+ animate?: boolean;
538
+ }
539
+ /**
540
+ * Thin, mostly-typographic wrapper around Radix Label. Ties a caption to a
541
+ * form field via `htmlFor` for accessibility. The only sketch chrome is a
542
+ * small drawn mark next to the text when `required` is set.
543
+ */
544
+ declare const Label: react.ForwardRefExoticComponent<LabelProps & react.RefAttributes<HTMLLabelElement>>;
545
+
546
+ interface CollapsibleProps extends Omit<CollapsiblePrimitive.CollapsibleProps, "asChild">, SketchProps {
547
+ children?: ReactNode;
548
+ }
549
+ declare const Collapsible: react.ForwardRefExoticComponent<CollapsibleProps & react.RefAttributes<HTMLDivElement>>;
550
+ interface CollapsibleTriggerProps extends Omit<ComponentPropsWithoutRef<typeof CollapsiblePrimitive.Trigger>, "asChild"> {
551
+ children?: ReactNode;
552
+ }
553
+ declare const CollapsibleTrigger: react.ForwardRefExoticComponent<CollapsibleTriggerProps & react.RefAttributes<HTMLButtonElement>>;
554
+ interface CollapsibleContentProps extends Omit<ComponentPropsWithoutRef<typeof CollapsiblePrimitive.Content>, "asChild"> {
555
+ }
556
+ declare const CollapsibleContent: react.ForwardRefExoticComponent<CollapsibleContentProps & react.RefAttributes<HTMLDivElement>>;
557
+
558
+ interface PopoverProps extends Omit<PopoverPrimitive.PopoverProps, "children">, SketchProps {
559
+ children?: ReactNode;
560
+ /**
561
+ * Draw-in the panel border when the popover opens.
562
+ * Defaults to the DoodleUIProvider value (true).
563
+ */
564
+ animate?: boolean;
565
+ }
566
+ declare function Popover({ children, roughness, seed, sketchColor, bowing, fillStyle, strokeWidth, animate, ...rest }: PopoverProps): react.JSX.Element;
567
+ declare const PopoverTrigger: react.ForwardRefExoticComponent<PopoverPrimitive.PopoverTriggerProps & react.RefAttributes<HTMLButtonElement>>;
568
+ declare const PopoverAnchor: react.ForwardRefExoticComponent<PopoverPrimitive.PopoverAnchorProps & react.RefAttributes<HTMLDivElement>>;
569
+ declare const PopoverClose: react.ForwardRefExoticComponent<PopoverPrimitive.PopoverCloseProps & react.RefAttributes<HTMLButtonElement>>;
570
+ interface PopoverContentProps extends Omit<PopoverPrimitive.PopoverContentProps, "asChild"> {
571
+ children?: ReactNode;
572
+ }
573
+ declare const PopoverContent: react.ForwardRefExoticComponent<PopoverContentProps & react.RefAttributes<HTMLDivElement>>;
574
+ interface PopoverArrowProps extends ComponentPropsWithoutRef<typeof PopoverPrimitive.Arrow> {
575
+ }
576
+ declare const PopoverArrow: react.ForwardRefExoticComponent<PopoverArrowProps & react.RefAttributes<SVGSVGElement>>;
577
+
578
+ interface DropdownMenuProps extends Omit<DropdownMenuPrimitive.DropdownMenuProps, "children">, SketchProps {
579
+ children?: ReactNode;
580
+ /**
581
+ * Draw-in the panel border when the menu opens.
582
+ * Defaults to the DoodleUIProvider value (true).
583
+ */
584
+ animate?: boolean;
585
+ }
586
+ declare function DropdownMenu({ children, roughness, seed, sketchColor, bowing, fillStyle, strokeWidth, animate, ...rest }: DropdownMenuProps): react.JSX.Element;
587
+ declare const DropdownMenuTrigger: react.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuTriggerProps & react.RefAttributes<HTMLButtonElement>>;
588
+ declare const DropdownMenuGroup: react.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuGroupProps & react.RefAttributes<HTMLDivElement>>;
589
+ declare const DropdownMenuRadioGroup: react.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuRadioGroupProps & react.RefAttributes<HTMLDivElement>>;
590
+ declare const DropdownMenuSub: react.FC<DropdownMenuPrimitive.DropdownMenuSubProps>;
591
+ interface DropdownMenuContentProps extends Omit<DropdownMenuPrimitive.DropdownMenuContentProps, "asChild"> {
592
+ children?: ReactNode;
593
+ }
594
+ declare const DropdownMenuContent: react.ForwardRefExoticComponent<DropdownMenuContentProps & react.RefAttributes<HTMLDivElement>>;
595
+ interface DropdownMenuItemProps extends Omit<DropdownMenuPrimitive.DropdownMenuItemProps, "asChild"> {
596
+ children?: ReactNode;
597
+ inset?: boolean;
598
+ }
599
+ declare const DropdownMenuItem: react.ForwardRefExoticComponent<DropdownMenuItemProps & react.RefAttributes<HTMLDivElement>>;
600
+ interface DropdownMenuCheckboxItemProps extends Omit<DropdownMenuPrimitive.DropdownMenuCheckboxItemProps, "asChild"> {
601
+ children?: ReactNode;
602
+ }
603
+ declare const DropdownMenuCheckboxItem: react.ForwardRefExoticComponent<DropdownMenuCheckboxItemProps & react.RefAttributes<HTMLDivElement>>;
604
+ interface DropdownMenuRadioItemProps extends Omit<DropdownMenuPrimitive.DropdownMenuRadioItemProps, "asChild"> {
605
+ children?: ReactNode;
606
+ }
607
+ declare const DropdownMenuRadioItem: react.ForwardRefExoticComponent<DropdownMenuRadioItemProps & react.RefAttributes<HTMLDivElement>>;
608
+ interface DropdownMenuLabelProps extends Omit<DropdownMenuPrimitive.DropdownMenuLabelProps, "asChild"> {
609
+ children?: ReactNode;
610
+ }
611
+ declare const DropdownMenuLabel: react.ForwardRefExoticComponent<DropdownMenuLabelProps & react.RefAttributes<HTMLDivElement>>;
612
+ interface DropdownMenuSeparatorProps extends Omit<DropdownMenuPrimitive.DropdownMenuSeparatorProps, "asChild"> {
613
+ }
614
+ declare const DropdownMenuSeparator: react.ForwardRefExoticComponent<DropdownMenuSeparatorProps & react.RefAttributes<HTMLDivElement>>;
615
+
616
+ interface DialogProps extends Omit<DialogPrimitive.DialogProps, "children">, SketchProps {
617
+ children?: ReactNode;
618
+ /**
619
+ * Backdrop fade, panel enter/exit, and border draw-in on open.
620
+ * Defaults to the DoodleUIProvider value (true).
621
+ */
622
+ animate?: boolean;
623
+ }
624
+ /**
625
+ * Lighter-weight sibling to `Modal`: a composable, shadcn-style dialog built
626
+ * from `Dialog` / `DialogTrigger` / `DialogContent` / `DialogHeader` /
627
+ * `DialogFooter` / `DialogTitle` / `DialogDescription` / `DialogClose`. Unlike
628
+ * `Modal`, `DialogContent` has no forced width or shadow and no built-in
629
+ * close button — compose your own layout inside it.
630
+ */
631
+ declare function Dialog({ children, open, defaultOpen, onOpenChange, roughness, seed, sketchColor, bowing, fillStyle, strokeWidth, animate, ...rest }: DialogProps): react.JSX.Element;
632
+ declare const DialogTrigger: react.ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & react.RefAttributes<HTMLButtonElement>>;
633
+ declare const DialogPortal: react.FC<DialogPrimitive.DialogPortalProps>;
634
+ declare const DialogClose: react.ForwardRefExoticComponent<DialogPrimitive.DialogCloseProps & react.RefAttributes<HTMLButtonElement>>;
635
+ interface DialogOverlayProps extends Omit<DialogPrimitive.DialogOverlayProps, "asChild" | "forceMount"> {
636
+ }
637
+ declare const DialogOverlay: react.ForwardRefExoticComponent<DialogOverlayProps & react.RefAttributes<HTMLDivElement>>;
638
+ interface DialogContentProps extends Omit<DialogPrimitive.DialogContentProps, "asChild" | "forceMount"> {
639
+ children?: ReactNode;
640
+ /** Panel width. Defaults to `min(420px, calc(100vw - 32px))`. */
641
+ contentStyle?: CSSProperties;
642
+ }
643
+ declare const DialogContent: react.ForwardRefExoticComponent<DialogContentProps & react.RefAttributes<HTMLDivElement>>;
644
+ interface DialogHeaderProps {
645
+ children?: ReactNode;
646
+ className?: string;
647
+ style?: CSSProperties;
648
+ }
649
+ declare function DialogHeader({ children, className, style }: DialogHeaderProps): react.JSX.Element;
650
+ interface DialogFooterProps {
651
+ children?: ReactNode;
652
+ className?: string;
653
+ style?: CSSProperties;
654
+ }
655
+ declare function DialogFooter({ children, className, style }: DialogFooterProps): react.JSX.Element;
656
+ interface DialogTitleProps extends Omit<DialogPrimitive.DialogTitleProps, "asChild"> {
657
+ }
658
+ declare const DialogTitle: react.ForwardRefExoticComponent<DialogTitleProps & react.RefAttributes<HTMLHeadingElement>>;
659
+ interface DialogDescriptionProps extends Omit<DialogPrimitive.DialogDescriptionProps, "asChild"> {
660
+ }
661
+ declare const DialogDescription: react.ForwardRefExoticComponent<DialogDescriptionProps & react.RefAttributes<HTMLParagraphElement>>;
662
+
663
+ interface AlertDialogProps extends Omit<AlertDialogPrimitive.AlertDialogProps, "children">, SketchProps {
664
+ children?: ReactNode;
665
+ /**
666
+ * Backdrop fade, panel enter/exit, and border draw-in on open.
667
+ * Defaults to the DoodleUIProvider value (true).
668
+ */
669
+ animate?: boolean;
670
+ }
671
+ /**
672
+ * Confirm / destructive-action variant of `Dialog`. Same composable shape,
673
+ * but Radix's alert dialog primitive requires an explicit action — there is
674
+ * no dismiss-on-outside-click or Escape by default, and `AlertDialogAction`
675
+ * / `AlertDialogCancel` give the confirm button visual emphasis.
676
+ */
677
+ declare function AlertDialog({ children, open, defaultOpen, onOpenChange, roughness, seed, sketchColor, bowing, fillStyle, strokeWidth, animate, ...rest }: AlertDialogProps): react.JSX.Element;
678
+ declare const AlertDialogTrigger: react.ForwardRefExoticComponent<AlertDialogPrimitive.AlertDialogTriggerProps & react.RefAttributes<HTMLButtonElement>>;
679
+ declare const AlertDialogPortal: react.FC<AlertDialogPrimitive.AlertDialogPortalProps>;
680
+ interface AlertDialogOverlayProps extends Omit<AlertDialogPrimitive.AlertDialogOverlayProps, "asChild" | "forceMount"> {
681
+ }
682
+ declare const AlertDialogOverlay: react.ForwardRefExoticComponent<AlertDialogOverlayProps & react.RefAttributes<HTMLDivElement>>;
683
+ interface AlertDialogContentProps extends Omit<AlertDialogPrimitive.AlertDialogContentProps, "asChild" | "forceMount"> {
684
+ children?: ReactNode;
685
+ contentStyle?: CSSProperties;
686
+ }
687
+ declare const AlertDialogContent: react.ForwardRefExoticComponent<AlertDialogContentProps & react.RefAttributes<HTMLDivElement>>;
688
+ interface AlertDialogHeaderProps {
689
+ children?: ReactNode;
690
+ className?: string;
691
+ style?: CSSProperties;
692
+ }
693
+ declare function AlertDialogHeader({ children, className, style, }: AlertDialogHeaderProps): react.JSX.Element;
694
+ interface AlertDialogFooterProps {
695
+ children?: ReactNode;
696
+ className?: string;
697
+ style?: CSSProperties;
698
+ }
699
+ declare function AlertDialogFooter({ children, className, style, }: AlertDialogFooterProps): react.JSX.Element;
700
+ interface AlertDialogTitleProps extends Omit<AlertDialogPrimitive.AlertDialogTitleProps, "asChild"> {
701
+ }
702
+ declare const AlertDialogTitle: react.ForwardRefExoticComponent<AlertDialogTitleProps & react.RefAttributes<HTMLHeadingElement>>;
703
+ interface AlertDialogDescriptionProps extends Omit<AlertDialogPrimitive.AlertDialogDescriptionProps, "asChild"> {
704
+ }
705
+ declare const AlertDialogDescription: react.ForwardRefExoticComponent<AlertDialogDescriptionProps & react.RefAttributes<HTMLParagraphElement>>;
706
+ interface AlertDialogActionProps extends Omit<AlertDialogPrimitive.AlertDialogActionProps, "asChild"> {
707
+ }
708
+ declare const AlertDialogAction: react.ForwardRefExoticComponent<AlertDialogActionProps & react.RefAttributes<HTMLButtonElement>>;
709
+ interface AlertDialogCancelProps extends Omit<AlertDialogPrimitive.AlertDialogCancelProps, "asChild"> {
710
+ }
711
+ declare const AlertDialogCancel: react.ForwardRefExoticComponent<AlertDialogCancelProps & react.RefAttributes<HTMLButtonElement>>;
712
+
713
+ interface CommandProps extends Omit<ComponentPropsWithoutRef<typeof Command$1>, "asChild">, SketchProps {
714
+ children?: ReactNode;
715
+ /**
716
+ * Draw-in the panel border on mount.
717
+ * Defaults to the DoodleUIProvider value (true).
718
+ */
719
+ animate?: boolean;
720
+ }
721
+ /**
722
+ * Command palette / cmd+k style searchable list, built on `cmdk` with a
723
+ * `SketchBox` frame. Compose with `CommandInput`, `CommandList`,
724
+ * `CommandEmpty`, `CommandGroup`, `CommandItem`, `CommandSeparator`.
725
+ */
726
+ declare const Command: react.ForwardRefExoticComponent<CommandProps & react.RefAttributes<HTMLDivElement>>;
727
+ interface CommandInputProps extends Omit<ComponentPropsWithoutRef<typeof CommandInput$1>, "asChild"> {
728
+ }
729
+ declare const CommandInput: react.ForwardRefExoticComponent<CommandInputProps & react.RefAttributes<HTMLInputElement>>;
730
+ interface CommandListProps extends Omit<ComponentPropsWithoutRef<typeof CommandList$1>, "asChild"> {
731
+ }
732
+ declare const CommandList: react.ForwardRefExoticComponent<CommandListProps & react.RefAttributes<HTMLDivElement>>;
733
+ interface CommandEmptyProps extends Omit<ComponentPropsWithoutRef<typeof CommandEmpty$1>, "asChild"> {
734
+ }
735
+ declare const CommandEmpty: react.ForwardRefExoticComponent<CommandEmptyProps & react.RefAttributes<HTMLDivElement>>;
736
+ interface CommandGroupProps extends Omit<ComponentPropsWithoutRef<typeof CommandGroup$1>, "asChild"> {
737
+ }
738
+ declare const CommandGroup: react.ForwardRefExoticComponent<CommandGroupProps & react.RefAttributes<HTMLDivElement>>;
739
+ interface CommandItemProps extends Omit<ComponentPropsWithoutRef<typeof CommandItem$1>, "asChild"> {
740
+ }
741
+ declare const CommandItem: react.ForwardRefExoticComponent<CommandItemProps & react.RefAttributes<HTMLDivElement>>;
742
+ interface CommandSeparatorProps extends Omit<ComponentPropsWithoutRef<typeof CommandSeparator$1>, "asChild"> {
743
+ }
744
+ declare const CommandSeparator: react.ForwardRefExoticComponent<CommandSeparatorProps & react.RefAttributes<HTMLDivElement>>;
745
+ declare function CommandShortcut({ children, className, style, }: {
746
+ children?: ReactNode;
747
+ className?: string;
748
+ style?: React.CSSProperties;
749
+ }): react.JSX.Element;
750
+
751
+ interface ComboboxProps extends SketchProps {
752
+ options: SelectOption[];
753
+ placeholder?: string;
754
+ searchPlaceholder?: string;
755
+ emptyMessage?: ReactNode;
756
+ value?: string;
757
+ defaultValue?: string;
758
+ onValueChange?: (value: string) => void;
759
+ disabled?: boolean;
760
+ className?: string;
761
+ style?: CSSProperties;
762
+ "aria-label"?: string;
763
+ /**
764
+ * Draw-in the trigger on mount and the popover border on open.
765
+ * Defaults to the DoodleUIProvider value (true).
766
+ */
767
+ animate?: boolean;
768
+ }
769
+ /**
770
+ * Searchable select. Composes `Popover` (positioning) + `Command` (cmdk
771
+ * filtering/list) behind a sketchy `Input`-styled trigger button — the same
772
+ * recipe shadcn uses, since Radix has no dedicated Combobox primitive.
773
+ */
774
+ declare function Combobox({ options, placeholder, searchPlaceholder, emptyMessage, value, defaultValue, onValueChange, disabled, className, style, roughness, seed, sketchColor, bowing, fillStyle, strokeWidth, animate, "aria-label": ariaLabel, }: ComboboxProps): react.JSX.Element;
775
+
776
+ export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionTrigger, type AccordionTriggerProps, Alert, AlertDialog, AlertDialogAction, type AlertDialogActionProps, AlertDialogCancel, type AlertDialogCancelProps, AlertDialogContent, type AlertDialogContentProps, AlertDialogDescription, type AlertDialogDescriptionProps, AlertDialogFooter, type AlertDialogFooterProps, AlertDialogHeader, type AlertDialogHeaderProps, AlertDialogOverlay, AlertDialogPortal, type AlertDialogProps, AlertDialogTitle, type AlertDialogTitleProps, AlertDialogTrigger, type AlertProps, type AlertVariant, Avatar, type AvatarProps, type AvatarShape, type AvatarStatus, Badge, type BadgeProps, type BadgeVariant, Breadcrumb, BreadcrumbItem, type BreadcrumbItemProps, type BreadcrumbProps, type BreadcrumbSeparator, Button, type ButtonProps, type ButtonSize, type ButtonVariant, Card, type CardProps, Checkbox, type CheckboxProps, Collapsible, CollapsibleContent, type CollapsibleContentProps, type CollapsibleProps, CollapsibleTrigger, type CollapsibleTriggerProps, Combobox, type ComboboxProps, Command, CommandEmpty, type CommandEmptyProps, CommandGroup, type CommandGroupProps, CommandInput, type CommandInputProps, CommandItem, type CommandItemProps, CommandList, type CommandListProps, type CommandProps, CommandSeparator, type CommandSeparatorProps, CommandShortcut, DEFAULT_BOWING, DEFAULT_INK, DEFAULT_ROUGHNESS, DEFAULT_STROKE_WIDTH, DRAW_IN_ALERT_MS, DRAW_IN_DURATION_MS, DRAW_IN_MARK_MS, DRAW_IN_TOOLTIP_MS, Dialog, DialogClose, DialogContent, type DialogContentProps, DialogDescription, type DialogDescriptionProps, DialogFooter, type DialogFooterProps, DialogHeader, type DialogHeaderProps, DialogOverlay, DialogPortal, type DialogProps, DialogTitle, type DialogTitleProps, DialogTrigger, Divider, type DividerOrientation, type DividerProps, type DoodleUIContextValue, DoodleUIProvider, type DoodleUIProviderProps, DropdownMenu, DropdownMenuCheckboxItem, type DropdownMenuCheckboxItemProps, DropdownMenuContent, type DropdownMenuContentProps, DropdownMenuGroup, DropdownMenuItem, type DropdownMenuItemProps, DropdownMenuLabel, type DropdownMenuLabelProps, type DropdownMenuProps, DropdownMenuRadioGroup, DropdownMenuRadioItem, type DropdownMenuRadioItemProps, DropdownMenuSeparator, type DropdownMenuSeparatorProps, DropdownMenuSub, DropdownMenuTrigger, type FillStyle, Input, type InputProps, Label, type LabelProps, Modal, ModalClose, ModalDescription, type ModalProps, ModalRoot, ModalTitle, ModalTrigger, Pagination, type PaginationProps, Popover, PopoverAnchor, PopoverArrow, PopoverClose, PopoverContent, type PopoverContentProps, type PopoverProps, PopoverTrigger, Progress, type ProgressProps, Radio, RadioGroup, type RadioGroupProps, type RadioProps, type RoughShape, RoughSvg, type RoughSvgProps, SKETCH_COLORS, Select, SelectContent, type SelectContentProps, SelectGroup, SelectItem, type SelectItemProps, SelectLabel, type SelectOption, type SelectProps, SelectRoot, SelectSeparator, SelectTrigger, type SelectTriggerProps, SelectValue, Skeleton, type SkeletonProps, type SkeletonVariant, SketchBox, type SketchBoxProps, type SketchProps, type SketchSeedContextValue, SketchSeedProvider, type SketchSeedProviderProps, Slider, type SliderProps, type SliderThumbShape, Stepper, type StepperOrientation, type StepperProps, type StepperStep, Switch, type SwitchProps, TABLE_STAGGER_MS, Tab, TabList, type TabListProps, TabPanel, type TabPanelProps, type TabProps, Table, TableBody, TableCell, type TableCellProps, TableHead, TableHeaderCell, type TableHeaderCellProps, type TableProps, TableRow, Tabs, type TabsProps, Textarea, type TextareaProps, Toast, ToastAction, ToastClose, ToastDescription, type ToastPosition, type ToastProps, ToastProvider, type ToastProviderProps, ToastRoot, ToastTitle, type ToastVariant, ToastViewport, Tooltip, type TooltipProps, TooltipProvider, deriveSeed, toRoughOptions, useAnimate, useDoodleUI, useDrawIn, useResolvedSeed, useSketchSeed };
package/dist/index.d.ts CHANGED
@@ -3,7 +3,7 @@ import { CSSProperties, HTMLAttributes, ReactNode, RefObject, ButtonHTMLAttribut
3
3
  import { Options } from 'roughjs/bin/core';
4
4
  import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
5
5
  import * as RadioGroupPrimitive from '@radix-ui/react-radio-group';
6
- import * as Dialog from '@radix-ui/react-dialog';
6
+ import * as DialogPrimitive from '@radix-ui/react-dialog';
7
7
  import * as TooltipPrimitive from '@radix-ui/react-tooltip';
8
8
  import * as SelectPrimitive from '@radix-ui/react-select';
9
9
  import * as SwitchPrimitive from '@radix-ui/react-switch';
@@ -12,6 +12,12 @@ import * as ToastPrimitive from '@radix-ui/react-toast';
12
12
  import * as AccordionPrimitive from '@radix-ui/react-accordion';
13
13
  import * as AvatarPrimitive from '@radix-ui/react-avatar';
14
14
  import * as SliderPrimitive from '@radix-ui/react-slider';
15
+ import * as LabelPrimitive from '@radix-ui/react-label';
16
+ import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';
17
+ import * as PopoverPrimitive from '@radix-ui/react-popover';
18
+ import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
19
+ import * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog';
20
+ import { Command as Command$1, CommandEmpty as CommandEmpty$1, CommandGroup as CommandGroup$1, CommandInput as CommandInput$1, CommandItem as CommandItem$1, CommandList as CommandList$1, CommandSeparator as CommandSeparator$1 } from 'cmdk';
15
21
 
16
22
  type FillStyle = "hachure" | "solid" | "zigzag" | "cross-hatch" | "dots" | "dashed" | "zigzag-line";
17
23
  type RoughShape = "rectangle" | "ellipse" | "line" | "line-vertical" | "path";
@@ -269,11 +275,11 @@ interface ModalProps extends SketchProps {
269
275
  animate?: boolean;
270
276
  }
271
277
  declare function Modal({ open, defaultOpen, onOpenChange, trigger, title, description, children, className, roughness, seed, sketchColor, bowing, fillStyle, strokeWidth, animate, }: ModalProps): react.JSX.Element;
272
- declare const ModalRoot: react.FC<Dialog.DialogProps>;
273
- declare const ModalTrigger: react.ForwardRefExoticComponent<Dialog.DialogTriggerProps & react.RefAttributes<HTMLButtonElement>>;
274
- declare const ModalClose: react.ForwardRefExoticComponent<Dialog.DialogCloseProps & react.RefAttributes<HTMLButtonElement>>;
275
- declare const ModalTitle: react.ForwardRefExoticComponent<Dialog.DialogTitleProps & react.RefAttributes<HTMLHeadingElement>>;
276
- declare const ModalDescription: react.ForwardRefExoticComponent<Dialog.DialogDescriptionProps & react.RefAttributes<HTMLParagraphElement>>;
278
+ declare const ModalRoot: react.FC<DialogPrimitive.DialogProps>;
279
+ declare const ModalTrigger: react.ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & react.RefAttributes<HTMLButtonElement>>;
280
+ declare const ModalClose: react.ForwardRefExoticComponent<DialogPrimitive.DialogCloseProps & react.RefAttributes<HTMLButtonElement>>;
281
+ declare const ModalTitle: react.ForwardRefExoticComponent<DialogPrimitive.DialogTitleProps & react.RefAttributes<HTMLHeadingElement>>;
282
+ declare const ModalDescription: react.ForwardRefExoticComponent<DialogPrimitive.DialogDescriptionProps & react.RefAttributes<HTMLParagraphElement>>;
277
283
 
278
284
  type DividerOrientation = "horizontal" | "vertical";
279
285
  interface DividerProps extends Omit<HTMLAttributes<HTMLDivElement>, "color">, SketchProps {
@@ -520,4 +526,251 @@ interface StepperProps extends Omit<HTMLAttributes<HTMLDivElement>, "color">, Sk
520
526
  }
521
527
  declare const Stepper: react.ForwardRefExoticComponent<StepperProps & react.RefAttributes<HTMLDivElement>>;
522
528
 
523
- export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionTrigger, type AccordionTriggerProps, Alert, type AlertProps, type AlertVariant, Avatar, type AvatarProps, type AvatarShape, type AvatarStatus, Badge, type BadgeProps, type BadgeVariant, Breadcrumb, BreadcrumbItem, type BreadcrumbItemProps, type BreadcrumbProps, type BreadcrumbSeparator, Button, type ButtonProps, type ButtonSize, type ButtonVariant, Card, type CardProps, Checkbox, type CheckboxProps, DEFAULT_BOWING, DEFAULT_INK, DEFAULT_ROUGHNESS, DEFAULT_STROKE_WIDTH, DRAW_IN_ALERT_MS, DRAW_IN_DURATION_MS, DRAW_IN_MARK_MS, DRAW_IN_TOOLTIP_MS, Divider, type DividerOrientation, type DividerProps, type DoodleUIContextValue, DoodleUIProvider, type DoodleUIProviderProps, type FillStyle, Input, type InputProps, Modal, ModalClose, ModalDescription, type ModalProps, ModalRoot, ModalTitle, ModalTrigger, Pagination, type PaginationProps, Progress, type ProgressProps, Radio, RadioGroup, type RadioGroupProps, type RadioProps, type RoughShape, RoughSvg, type RoughSvgProps, SKETCH_COLORS, Select, SelectContent, type SelectContentProps, SelectGroup, SelectItem, type SelectItemProps, SelectLabel, type SelectOption, type SelectProps, SelectRoot, SelectSeparator, SelectTrigger, type SelectTriggerProps, SelectValue, Skeleton, type SkeletonProps, type SkeletonVariant, SketchBox, type SketchBoxProps, type SketchProps, type SketchSeedContextValue, SketchSeedProvider, type SketchSeedProviderProps, Slider, type SliderProps, type SliderThumbShape, Stepper, type StepperOrientation, type StepperProps, type StepperStep, Switch, type SwitchProps, TABLE_STAGGER_MS, Tab, TabList, type TabListProps, TabPanel, type TabPanelProps, type TabProps, Table, TableBody, TableCell, type TableCellProps, TableHead, TableHeaderCell, type TableHeaderCellProps, type TableProps, TableRow, Tabs, type TabsProps, Textarea, type TextareaProps, Toast, ToastAction, ToastClose, ToastDescription, type ToastPosition, type ToastProps, ToastProvider, type ToastProviderProps, ToastRoot, ToastTitle, type ToastVariant, ToastViewport, Tooltip, type TooltipProps, TooltipProvider, deriveSeed, toRoughOptions, useAnimate, useDoodleUI, useDrawIn, useResolvedSeed, useSketchSeed };
529
+ interface LabelProps extends Omit<LabelPrimitive.LabelProps, "asChild" | "color">, SketchProps {
530
+ children?: ReactNode;
531
+ /** Adds a small hand-drawn required mark after the text. */
532
+ required?: boolean;
533
+ /**
534
+ * Draw-in the required mark on mount.
535
+ * Defaults to the DoodleUIProvider value (true).
536
+ */
537
+ animate?: boolean;
538
+ }
539
+ /**
540
+ * Thin, mostly-typographic wrapper around Radix Label. Ties a caption to a
541
+ * form field via `htmlFor` for accessibility. The only sketch chrome is a
542
+ * small drawn mark next to the text when `required` is set.
543
+ */
544
+ declare const Label: react.ForwardRefExoticComponent<LabelProps & react.RefAttributes<HTMLLabelElement>>;
545
+
546
+ interface CollapsibleProps extends Omit<CollapsiblePrimitive.CollapsibleProps, "asChild">, SketchProps {
547
+ children?: ReactNode;
548
+ }
549
+ declare const Collapsible: react.ForwardRefExoticComponent<CollapsibleProps & react.RefAttributes<HTMLDivElement>>;
550
+ interface CollapsibleTriggerProps extends Omit<ComponentPropsWithoutRef<typeof CollapsiblePrimitive.Trigger>, "asChild"> {
551
+ children?: ReactNode;
552
+ }
553
+ declare const CollapsibleTrigger: react.ForwardRefExoticComponent<CollapsibleTriggerProps & react.RefAttributes<HTMLButtonElement>>;
554
+ interface CollapsibleContentProps extends Omit<ComponentPropsWithoutRef<typeof CollapsiblePrimitive.Content>, "asChild"> {
555
+ }
556
+ declare const CollapsibleContent: react.ForwardRefExoticComponent<CollapsibleContentProps & react.RefAttributes<HTMLDivElement>>;
557
+
558
+ interface PopoverProps extends Omit<PopoverPrimitive.PopoverProps, "children">, SketchProps {
559
+ children?: ReactNode;
560
+ /**
561
+ * Draw-in the panel border when the popover opens.
562
+ * Defaults to the DoodleUIProvider value (true).
563
+ */
564
+ animate?: boolean;
565
+ }
566
+ declare function Popover({ children, roughness, seed, sketchColor, bowing, fillStyle, strokeWidth, animate, ...rest }: PopoverProps): react.JSX.Element;
567
+ declare const PopoverTrigger: react.ForwardRefExoticComponent<PopoverPrimitive.PopoverTriggerProps & react.RefAttributes<HTMLButtonElement>>;
568
+ declare const PopoverAnchor: react.ForwardRefExoticComponent<PopoverPrimitive.PopoverAnchorProps & react.RefAttributes<HTMLDivElement>>;
569
+ declare const PopoverClose: react.ForwardRefExoticComponent<PopoverPrimitive.PopoverCloseProps & react.RefAttributes<HTMLButtonElement>>;
570
+ interface PopoverContentProps extends Omit<PopoverPrimitive.PopoverContentProps, "asChild"> {
571
+ children?: ReactNode;
572
+ }
573
+ declare const PopoverContent: react.ForwardRefExoticComponent<PopoverContentProps & react.RefAttributes<HTMLDivElement>>;
574
+ interface PopoverArrowProps extends ComponentPropsWithoutRef<typeof PopoverPrimitive.Arrow> {
575
+ }
576
+ declare const PopoverArrow: react.ForwardRefExoticComponent<PopoverArrowProps & react.RefAttributes<SVGSVGElement>>;
577
+
578
+ interface DropdownMenuProps extends Omit<DropdownMenuPrimitive.DropdownMenuProps, "children">, SketchProps {
579
+ children?: ReactNode;
580
+ /**
581
+ * Draw-in the panel border when the menu opens.
582
+ * Defaults to the DoodleUIProvider value (true).
583
+ */
584
+ animate?: boolean;
585
+ }
586
+ declare function DropdownMenu({ children, roughness, seed, sketchColor, bowing, fillStyle, strokeWidth, animate, ...rest }: DropdownMenuProps): react.JSX.Element;
587
+ declare const DropdownMenuTrigger: react.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuTriggerProps & react.RefAttributes<HTMLButtonElement>>;
588
+ declare const DropdownMenuGroup: react.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuGroupProps & react.RefAttributes<HTMLDivElement>>;
589
+ declare const DropdownMenuRadioGroup: react.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuRadioGroupProps & react.RefAttributes<HTMLDivElement>>;
590
+ declare const DropdownMenuSub: react.FC<DropdownMenuPrimitive.DropdownMenuSubProps>;
591
+ interface DropdownMenuContentProps extends Omit<DropdownMenuPrimitive.DropdownMenuContentProps, "asChild"> {
592
+ children?: ReactNode;
593
+ }
594
+ declare const DropdownMenuContent: react.ForwardRefExoticComponent<DropdownMenuContentProps & react.RefAttributes<HTMLDivElement>>;
595
+ interface DropdownMenuItemProps extends Omit<DropdownMenuPrimitive.DropdownMenuItemProps, "asChild"> {
596
+ children?: ReactNode;
597
+ inset?: boolean;
598
+ }
599
+ declare const DropdownMenuItem: react.ForwardRefExoticComponent<DropdownMenuItemProps & react.RefAttributes<HTMLDivElement>>;
600
+ interface DropdownMenuCheckboxItemProps extends Omit<DropdownMenuPrimitive.DropdownMenuCheckboxItemProps, "asChild"> {
601
+ children?: ReactNode;
602
+ }
603
+ declare const DropdownMenuCheckboxItem: react.ForwardRefExoticComponent<DropdownMenuCheckboxItemProps & react.RefAttributes<HTMLDivElement>>;
604
+ interface DropdownMenuRadioItemProps extends Omit<DropdownMenuPrimitive.DropdownMenuRadioItemProps, "asChild"> {
605
+ children?: ReactNode;
606
+ }
607
+ declare const DropdownMenuRadioItem: react.ForwardRefExoticComponent<DropdownMenuRadioItemProps & react.RefAttributes<HTMLDivElement>>;
608
+ interface DropdownMenuLabelProps extends Omit<DropdownMenuPrimitive.DropdownMenuLabelProps, "asChild"> {
609
+ children?: ReactNode;
610
+ }
611
+ declare const DropdownMenuLabel: react.ForwardRefExoticComponent<DropdownMenuLabelProps & react.RefAttributes<HTMLDivElement>>;
612
+ interface DropdownMenuSeparatorProps extends Omit<DropdownMenuPrimitive.DropdownMenuSeparatorProps, "asChild"> {
613
+ }
614
+ declare const DropdownMenuSeparator: react.ForwardRefExoticComponent<DropdownMenuSeparatorProps & react.RefAttributes<HTMLDivElement>>;
615
+
616
+ interface DialogProps extends Omit<DialogPrimitive.DialogProps, "children">, SketchProps {
617
+ children?: ReactNode;
618
+ /**
619
+ * Backdrop fade, panel enter/exit, and border draw-in on open.
620
+ * Defaults to the DoodleUIProvider value (true).
621
+ */
622
+ animate?: boolean;
623
+ }
624
+ /**
625
+ * Lighter-weight sibling to `Modal`: a composable, shadcn-style dialog built
626
+ * from `Dialog` / `DialogTrigger` / `DialogContent` / `DialogHeader` /
627
+ * `DialogFooter` / `DialogTitle` / `DialogDescription` / `DialogClose`. Unlike
628
+ * `Modal`, `DialogContent` has no forced width or shadow and no built-in
629
+ * close button — compose your own layout inside it.
630
+ */
631
+ declare function Dialog({ children, open, defaultOpen, onOpenChange, roughness, seed, sketchColor, bowing, fillStyle, strokeWidth, animate, ...rest }: DialogProps): react.JSX.Element;
632
+ declare const DialogTrigger: react.ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & react.RefAttributes<HTMLButtonElement>>;
633
+ declare const DialogPortal: react.FC<DialogPrimitive.DialogPortalProps>;
634
+ declare const DialogClose: react.ForwardRefExoticComponent<DialogPrimitive.DialogCloseProps & react.RefAttributes<HTMLButtonElement>>;
635
+ interface DialogOverlayProps extends Omit<DialogPrimitive.DialogOverlayProps, "asChild" | "forceMount"> {
636
+ }
637
+ declare const DialogOverlay: react.ForwardRefExoticComponent<DialogOverlayProps & react.RefAttributes<HTMLDivElement>>;
638
+ interface DialogContentProps extends Omit<DialogPrimitive.DialogContentProps, "asChild" | "forceMount"> {
639
+ children?: ReactNode;
640
+ /** Panel width. Defaults to `min(420px, calc(100vw - 32px))`. */
641
+ contentStyle?: CSSProperties;
642
+ }
643
+ declare const DialogContent: react.ForwardRefExoticComponent<DialogContentProps & react.RefAttributes<HTMLDivElement>>;
644
+ interface DialogHeaderProps {
645
+ children?: ReactNode;
646
+ className?: string;
647
+ style?: CSSProperties;
648
+ }
649
+ declare function DialogHeader({ children, className, style }: DialogHeaderProps): react.JSX.Element;
650
+ interface DialogFooterProps {
651
+ children?: ReactNode;
652
+ className?: string;
653
+ style?: CSSProperties;
654
+ }
655
+ declare function DialogFooter({ children, className, style }: DialogFooterProps): react.JSX.Element;
656
+ interface DialogTitleProps extends Omit<DialogPrimitive.DialogTitleProps, "asChild"> {
657
+ }
658
+ declare const DialogTitle: react.ForwardRefExoticComponent<DialogTitleProps & react.RefAttributes<HTMLHeadingElement>>;
659
+ interface DialogDescriptionProps extends Omit<DialogPrimitive.DialogDescriptionProps, "asChild"> {
660
+ }
661
+ declare const DialogDescription: react.ForwardRefExoticComponent<DialogDescriptionProps & react.RefAttributes<HTMLParagraphElement>>;
662
+
663
+ interface AlertDialogProps extends Omit<AlertDialogPrimitive.AlertDialogProps, "children">, SketchProps {
664
+ children?: ReactNode;
665
+ /**
666
+ * Backdrop fade, panel enter/exit, and border draw-in on open.
667
+ * Defaults to the DoodleUIProvider value (true).
668
+ */
669
+ animate?: boolean;
670
+ }
671
+ /**
672
+ * Confirm / destructive-action variant of `Dialog`. Same composable shape,
673
+ * but Radix's alert dialog primitive requires an explicit action — there is
674
+ * no dismiss-on-outside-click or Escape by default, and `AlertDialogAction`
675
+ * / `AlertDialogCancel` give the confirm button visual emphasis.
676
+ */
677
+ declare function AlertDialog({ children, open, defaultOpen, onOpenChange, roughness, seed, sketchColor, bowing, fillStyle, strokeWidth, animate, ...rest }: AlertDialogProps): react.JSX.Element;
678
+ declare const AlertDialogTrigger: react.ForwardRefExoticComponent<AlertDialogPrimitive.AlertDialogTriggerProps & react.RefAttributes<HTMLButtonElement>>;
679
+ declare const AlertDialogPortal: react.FC<AlertDialogPrimitive.AlertDialogPortalProps>;
680
+ interface AlertDialogOverlayProps extends Omit<AlertDialogPrimitive.AlertDialogOverlayProps, "asChild" | "forceMount"> {
681
+ }
682
+ declare const AlertDialogOverlay: react.ForwardRefExoticComponent<AlertDialogOverlayProps & react.RefAttributes<HTMLDivElement>>;
683
+ interface AlertDialogContentProps extends Omit<AlertDialogPrimitive.AlertDialogContentProps, "asChild" | "forceMount"> {
684
+ children?: ReactNode;
685
+ contentStyle?: CSSProperties;
686
+ }
687
+ declare const AlertDialogContent: react.ForwardRefExoticComponent<AlertDialogContentProps & react.RefAttributes<HTMLDivElement>>;
688
+ interface AlertDialogHeaderProps {
689
+ children?: ReactNode;
690
+ className?: string;
691
+ style?: CSSProperties;
692
+ }
693
+ declare function AlertDialogHeader({ children, className, style, }: AlertDialogHeaderProps): react.JSX.Element;
694
+ interface AlertDialogFooterProps {
695
+ children?: ReactNode;
696
+ className?: string;
697
+ style?: CSSProperties;
698
+ }
699
+ declare function AlertDialogFooter({ children, className, style, }: AlertDialogFooterProps): react.JSX.Element;
700
+ interface AlertDialogTitleProps extends Omit<AlertDialogPrimitive.AlertDialogTitleProps, "asChild"> {
701
+ }
702
+ declare const AlertDialogTitle: react.ForwardRefExoticComponent<AlertDialogTitleProps & react.RefAttributes<HTMLHeadingElement>>;
703
+ interface AlertDialogDescriptionProps extends Omit<AlertDialogPrimitive.AlertDialogDescriptionProps, "asChild"> {
704
+ }
705
+ declare const AlertDialogDescription: react.ForwardRefExoticComponent<AlertDialogDescriptionProps & react.RefAttributes<HTMLParagraphElement>>;
706
+ interface AlertDialogActionProps extends Omit<AlertDialogPrimitive.AlertDialogActionProps, "asChild"> {
707
+ }
708
+ declare const AlertDialogAction: react.ForwardRefExoticComponent<AlertDialogActionProps & react.RefAttributes<HTMLButtonElement>>;
709
+ interface AlertDialogCancelProps extends Omit<AlertDialogPrimitive.AlertDialogCancelProps, "asChild"> {
710
+ }
711
+ declare const AlertDialogCancel: react.ForwardRefExoticComponent<AlertDialogCancelProps & react.RefAttributes<HTMLButtonElement>>;
712
+
713
+ interface CommandProps extends Omit<ComponentPropsWithoutRef<typeof Command$1>, "asChild">, SketchProps {
714
+ children?: ReactNode;
715
+ /**
716
+ * Draw-in the panel border on mount.
717
+ * Defaults to the DoodleUIProvider value (true).
718
+ */
719
+ animate?: boolean;
720
+ }
721
+ /**
722
+ * Command palette / cmd+k style searchable list, built on `cmdk` with a
723
+ * `SketchBox` frame. Compose with `CommandInput`, `CommandList`,
724
+ * `CommandEmpty`, `CommandGroup`, `CommandItem`, `CommandSeparator`.
725
+ */
726
+ declare const Command: react.ForwardRefExoticComponent<CommandProps & react.RefAttributes<HTMLDivElement>>;
727
+ interface CommandInputProps extends Omit<ComponentPropsWithoutRef<typeof CommandInput$1>, "asChild"> {
728
+ }
729
+ declare const CommandInput: react.ForwardRefExoticComponent<CommandInputProps & react.RefAttributes<HTMLInputElement>>;
730
+ interface CommandListProps extends Omit<ComponentPropsWithoutRef<typeof CommandList$1>, "asChild"> {
731
+ }
732
+ declare const CommandList: react.ForwardRefExoticComponent<CommandListProps & react.RefAttributes<HTMLDivElement>>;
733
+ interface CommandEmptyProps extends Omit<ComponentPropsWithoutRef<typeof CommandEmpty$1>, "asChild"> {
734
+ }
735
+ declare const CommandEmpty: react.ForwardRefExoticComponent<CommandEmptyProps & react.RefAttributes<HTMLDivElement>>;
736
+ interface CommandGroupProps extends Omit<ComponentPropsWithoutRef<typeof CommandGroup$1>, "asChild"> {
737
+ }
738
+ declare const CommandGroup: react.ForwardRefExoticComponent<CommandGroupProps & react.RefAttributes<HTMLDivElement>>;
739
+ interface CommandItemProps extends Omit<ComponentPropsWithoutRef<typeof CommandItem$1>, "asChild"> {
740
+ }
741
+ declare const CommandItem: react.ForwardRefExoticComponent<CommandItemProps & react.RefAttributes<HTMLDivElement>>;
742
+ interface CommandSeparatorProps extends Omit<ComponentPropsWithoutRef<typeof CommandSeparator$1>, "asChild"> {
743
+ }
744
+ declare const CommandSeparator: react.ForwardRefExoticComponent<CommandSeparatorProps & react.RefAttributes<HTMLDivElement>>;
745
+ declare function CommandShortcut({ children, className, style, }: {
746
+ children?: ReactNode;
747
+ className?: string;
748
+ style?: React.CSSProperties;
749
+ }): react.JSX.Element;
750
+
751
+ interface ComboboxProps extends SketchProps {
752
+ options: SelectOption[];
753
+ placeholder?: string;
754
+ searchPlaceholder?: string;
755
+ emptyMessage?: ReactNode;
756
+ value?: string;
757
+ defaultValue?: string;
758
+ onValueChange?: (value: string) => void;
759
+ disabled?: boolean;
760
+ className?: string;
761
+ style?: CSSProperties;
762
+ "aria-label"?: string;
763
+ /**
764
+ * Draw-in the trigger on mount and the popover border on open.
765
+ * Defaults to the DoodleUIProvider value (true).
766
+ */
767
+ animate?: boolean;
768
+ }
769
+ /**
770
+ * Searchable select. Composes `Popover` (positioning) + `Command` (cmdk
771
+ * filtering/list) behind a sketchy `Input`-styled trigger button — the same
772
+ * recipe shadcn uses, since Radix has no dedicated Combobox primitive.
773
+ */
774
+ declare function Combobox({ options, placeholder, searchPlaceholder, emptyMessage, value, defaultValue, onValueChange, disabled, className, style, roughness, seed, sketchColor, bowing, fillStyle, strokeWidth, animate, "aria-label": ariaLabel, }: ComboboxProps): react.JSX.Element;
775
+
776
+ export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionTrigger, type AccordionTriggerProps, Alert, AlertDialog, AlertDialogAction, type AlertDialogActionProps, AlertDialogCancel, type AlertDialogCancelProps, AlertDialogContent, type AlertDialogContentProps, AlertDialogDescription, type AlertDialogDescriptionProps, AlertDialogFooter, type AlertDialogFooterProps, AlertDialogHeader, type AlertDialogHeaderProps, AlertDialogOverlay, AlertDialogPortal, type AlertDialogProps, AlertDialogTitle, type AlertDialogTitleProps, AlertDialogTrigger, type AlertProps, type AlertVariant, Avatar, type AvatarProps, type AvatarShape, type AvatarStatus, Badge, type BadgeProps, type BadgeVariant, Breadcrumb, BreadcrumbItem, type BreadcrumbItemProps, type BreadcrumbProps, type BreadcrumbSeparator, Button, type ButtonProps, type ButtonSize, type ButtonVariant, Card, type CardProps, Checkbox, type CheckboxProps, Collapsible, CollapsibleContent, type CollapsibleContentProps, type CollapsibleProps, CollapsibleTrigger, type CollapsibleTriggerProps, Combobox, type ComboboxProps, Command, CommandEmpty, type CommandEmptyProps, CommandGroup, type CommandGroupProps, CommandInput, type CommandInputProps, CommandItem, type CommandItemProps, CommandList, type CommandListProps, type CommandProps, CommandSeparator, type CommandSeparatorProps, CommandShortcut, DEFAULT_BOWING, DEFAULT_INK, DEFAULT_ROUGHNESS, DEFAULT_STROKE_WIDTH, DRAW_IN_ALERT_MS, DRAW_IN_DURATION_MS, DRAW_IN_MARK_MS, DRAW_IN_TOOLTIP_MS, Dialog, DialogClose, DialogContent, type DialogContentProps, DialogDescription, type DialogDescriptionProps, DialogFooter, type DialogFooterProps, DialogHeader, type DialogHeaderProps, DialogOverlay, DialogPortal, type DialogProps, DialogTitle, type DialogTitleProps, DialogTrigger, Divider, type DividerOrientation, type DividerProps, type DoodleUIContextValue, DoodleUIProvider, type DoodleUIProviderProps, DropdownMenu, DropdownMenuCheckboxItem, type DropdownMenuCheckboxItemProps, DropdownMenuContent, type DropdownMenuContentProps, DropdownMenuGroup, DropdownMenuItem, type DropdownMenuItemProps, DropdownMenuLabel, type DropdownMenuLabelProps, type DropdownMenuProps, DropdownMenuRadioGroup, DropdownMenuRadioItem, type DropdownMenuRadioItemProps, DropdownMenuSeparator, type DropdownMenuSeparatorProps, DropdownMenuSub, DropdownMenuTrigger, type FillStyle, Input, type InputProps, Label, type LabelProps, Modal, ModalClose, ModalDescription, type ModalProps, ModalRoot, ModalTitle, ModalTrigger, Pagination, type PaginationProps, Popover, PopoverAnchor, PopoverArrow, PopoverClose, PopoverContent, type PopoverContentProps, type PopoverProps, PopoverTrigger, Progress, type ProgressProps, Radio, RadioGroup, type RadioGroupProps, type RadioProps, type RoughShape, RoughSvg, type RoughSvgProps, SKETCH_COLORS, Select, SelectContent, type SelectContentProps, SelectGroup, SelectItem, type SelectItemProps, SelectLabel, type SelectOption, type SelectProps, SelectRoot, SelectSeparator, SelectTrigger, type SelectTriggerProps, SelectValue, Skeleton, type SkeletonProps, type SkeletonVariant, SketchBox, type SketchBoxProps, type SketchProps, type SketchSeedContextValue, SketchSeedProvider, type SketchSeedProviderProps, Slider, type SliderProps, type SliderThumbShape, Stepper, type StepperOrientation, type StepperProps, type StepperStep, Switch, type SwitchProps, TABLE_STAGGER_MS, Tab, TabList, type TabListProps, TabPanel, type TabPanelProps, type TabProps, Table, TableBody, TableCell, type TableCellProps, TableHead, TableHeaderCell, type TableHeaderCellProps, type TableProps, TableRow, Tabs, type TabsProps, Textarea, type TextareaProps, Toast, ToastAction, ToastClose, ToastDescription, type ToastPosition, type ToastProps, ToastProvider, type ToastProviderProps, ToastRoot, ToastTitle, type ToastVariant, ToastViewport, Tooltip, type TooltipProps, TooltipProvider, deriveSeed, toRoughOptions, useAnimate, useDoodleUI, useDrawIn, useResolvedSeed, useSketchSeed };