@particle-academy/react-fancy 1.3.5 → 1.5.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
@@ -571,8 +571,11 @@ interface CalloutProps {
571
571
 
572
572
  declare const Callout: react.ForwardRefExoticComponent<CalloutProps & react.RefAttributes<HTMLDivElement>>;
573
573
 
574
+ type TimelineOrientation = "vertical" | "horizontal";
574
575
  interface TimelineProps {
575
576
  children: ReactNode;
577
+ /** Layout direction. Default: "vertical" */
578
+ orientation?: TimelineOrientation;
576
579
  className?: string;
577
580
  }
578
581
  interface TimelineItemProps {
@@ -1975,7 +1978,7 @@ declare function cn(...inputs: ClassValue[]): string;
1975
1978
 
1976
1979
  declare function useControllableState<T>(controlledValue: T | undefined, defaultValue: T, onChange?: (value: T) => void): [T, (value: T | ((prev: T) => T)) => void];
1977
1980
 
1978
- declare function useOutsideClick(ref: RefObject<HTMLElement | null>, handler: (event: MouseEvent | TouchEvent) => void, enabled?: boolean): void;
1981
+ declare function useOutsideClick(ref: RefObject<HTMLElement | null>, handler: (event: MouseEvent | TouchEvent) => void, enabled?: boolean, ignoreRef?: RefObject<HTMLElement | null>): void;
1979
1982
 
1980
1983
  declare function useEscapeKey(handler: () => void, enabled?: boolean): void;
1981
1984
 
@@ -2037,4 +2040,4 @@ declare function find(char: string): {
2037
2040
  category: string;
2038
2041
  } | undefined;
2039
2042
 
2040
- export { Accordion, type AccordionContentProps, type AccordionContextValue, type AccordionItemProps, type AccordionProps, type AccordionTriggerProps, Action, type ActionColor, type ActionProps, type AffixPosition, Autocomplete, type AutocompleteOption, type AutocompleteProps, Avatar, type AvatarProps, Badge, type BadgeProps, Brand, type BrandProps, Breadcrumbs, type BreadcrumbsItemProps, type BreadcrumbsProps, Calendar, type CalendarMode, type CalendarProps, Callout, type CalloutProps, Canvas, type CanvasContextValue, type CanvasControlsProps, type CanvasEdgeProps, type CanvasMinimapProps, type CanvasNodeProps, type CanvasProps, Card, type CardBodyProps, type CardFooterProps, type CardHeaderProps, type CardProps, Carousel, type CarouselContextValue, type CarouselControlsProps, type CarouselPanelsProps, type CarouselProps, type CarouselSlideProps, type CarouselStepsProps, type CarouselVariant, Chart, type ChartAreaProps, type ChartBarData, type ChartBarProps, type ChartCommonProps, type ChartDonutData, type ChartDonutProps, type ChartHorizontalBarProps, type ChartLineProps, type ChartPieData, type ChartPieProps, type ChartSeries, type ChartSparklineProps, type ChartStackedBarProps, Checkbox, CheckboxGroup, type CheckboxGroupProps, type CheckboxProps, type Color, ColorPicker, type ColorPickerProps, Command, type CommandContextValue, type CommandEmptyProps, type CommandGroupProps, type CommandInputProps, type CommandItemProps, type CommandListProps, type CommandProps, Composer, type ComposerProps, ContentRenderer, type ContentRendererProps, ContextMenu, type ContextMenuContentProps, type ContextMenuContextValue, type ContextMenuItemProps, type ContextMenuProps, type ContextMenuSeparatorProps, type ContextMenuTriggerProps, DatePicker, type DatePickerProps, type DateRange, Diagram, type DiagramContextValue, type DiagramEntityData, type DiagramEntityProps, type DiagramFieldData, type DiagramFieldProps, type DiagramProps, type DiagramRelationData, type DiagramRelationProps, type DiagramSchema, type DiagramToolbarProps, type DiagramType, Dropdown, type DropdownContextValue, type DropdownItemProps, type DropdownItemsProps, type DropdownProps, type DropdownSeparatorProps, type DropdownTriggerProps, EMOJI_DATA, EMOJI_ENTRIES, type EdgeAnchor, Editor, type EditorAction, type EditorContentProps, type EditorContextValue, type EditorProps, type EditorToolbarProps, Emoji, type EmojiProps, EmojiSelect, type EmojiSelectProps, type ExportFormat, Field, type FieldProps, FileUpload, type FileUploadContextValue, type FileUploadDropzoneProps, type FileUploadListProps, type FileUploadProps, Heading, type HeadingProps, Icon, type IconProps, type IconSet, Input, type InputAffixProps, type InputBaseProps, type InputOption, type InputOptionGroup, type InputProps, Kanban, type KanbanCardProps, type KanbanColumnProps, type KanbanContextValue, type KanbanProps, Menu, type MenuContextValue, type MenuGroupProps, type MenuItemProps, type MenuOrientation, type MenuProps, type MenuSubmenuProps, MobileMenu, type MobileMenuBottomBarProps, type MobileMenuContextValue, type MobileMenuFlyoutProps, type MobileMenuItemProps, type MobileMenuSide, type MobileMenuVariant, Modal, type ModalBodyProps, type ModalContextValue, type ModalFooterProps, type ModalHeaderProps, type ModalProps, MultiSwitch, type MultiSwitchProps, Navbar, type NavbarBrandProps, type NavbarContextValue, type NavbarItemProps, type NavbarItemsProps, type NavbarProps, type NavbarToggleProps, type NodeRect, OtpInput, type OtpInputProps, Pagination, type PaginationProps, Pillbox, type PillboxProps, type Placement, Popover, type PopoverContentProps, type PopoverContextValue, type PopoverProps, type PopoverTriggerProps, Portal, type PortalProps, Profile, type ProfileProps, Progress, type ProgressProps, RadioGroup, type RadioGroupProps, type RelationType, type RenderExtension, type RenderExtensionProps, Select, type SelectProps, Separator, type SeparatorProps, Sidebar, type SidebarCollapseMode, type SidebarContextValue, type SidebarGroupProps, type SidebarItemProps, type SidebarProps, type SidebarSubmenuProps, type SidebarToggleProps, type Size, Skeleton, type SkeletonProps, Slider, type SliderProps, Switch, type SwitchProps, Table, type TableBodyProps, type TableCellProps, type TableColumnProps, type TableHeadProps, type TablePaginationProps, type TableProps, type TableRowProps, type TableRowTrayProps, type TableSearchProps, type TableTrayProps, Tabs, type TabsContextValue, type TabsListProps, type TabsPanelProps, type TabsPanelsProps, type TabsProps, type TabsTabProps, type TabsVariant, Text, type TextProps, Textarea, type TextareaProps, TimePicker, type TimePickerProps, Timeline, type TimelineBlockProps, type TimelineItemProps, type TimelineProps, Toast, type ToastContextValue, type ToastData, type ToastPosition, type ToastProviderProps, type ToastVariant, Tooltip, type TooltipProps, type Variant, type ViewportState, cn, configureIcons, find, registerExtension, registerExtensions, registerIconSet, resolve, search, useAccordion, useAnimation, useCanvas, useCarousel, useCommand, useContextMenu, useControllableState, useDiagram, useDropdown, useEditor, useEscapeKey, useFileUpload, useFloatingPosition, useFocusTrap, useId, useKanban, useMenu, useMobileMenu, useModal, useNavbar, useNodeRegistry, useOutsideClick, usePanZoom, usePopover, useSidebar, useTabs, useToast };
2043
+ export { Accordion, type AccordionContentProps, type AccordionContextValue, type AccordionItemProps, type AccordionProps, type AccordionTriggerProps, Action, type ActionColor, type ActionProps, type AffixPosition, Autocomplete, type AutocompleteOption, type AutocompleteProps, Avatar, type AvatarProps, Badge, type BadgeProps, Brand, type BrandProps, Breadcrumbs, type BreadcrumbsItemProps, type BreadcrumbsProps, Calendar, type CalendarMode, type CalendarProps, Callout, type CalloutProps, Canvas, type CanvasContextValue, type CanvasControlsProps, type CanvasEdgeProps, type CanvasMinimapProps, type CanvasNodeProps, type CanvasProps, Card, type CardBodyProps, type CardFooterProps, type CardHeaderProps, type CardProps, Carousel, type CarouselContextValue, type CarouselControlsProps, type CarouselPanelsProps, type CarouselProps, type CarouselSlideProps, type CarouselStepsProps, type CarouselVariant, Chart, type ChartAreaProps, type ChartBarData, type ChartBarProps, type ChartCommonProps, type ChartDonutData, type ChartDonutProps, type ChartHorizontalBarProps, type ChartLineProps, type ChartPieData, type ChartPieProps, type ChartSeries, type ChartSparklineProps, type ChartStackedBarProps, Checkbox, CheckboxGroup, type CheckboxGroupProps, type CheckboxProps, type Color, ColorPicker, type ColorPickerProps, Command, type CommandContextValue, type CommandEmptyProps, type CommandGroupProps, type CommandInputProps, type CommandItemProps, type CommandListProps, type CommandProps, Composer, type ComposerProps, ContentRenderer, type ContentRendererProps, ContextMenu, type ContextMenuContentProps, type ContextMenuContextValue, type ContextMenuItemProps, type ContextMenuProps, type ContextMenuSeparatorProps, type ContextMenuTriggerProps, DatePicker, type DatePickerProps, type DateRange, Diagram, type DiagramContextValue, type DiagramEntityData, type DiagramEntityProps, type DiagramFieldData, type DiagramFieldProps, type DiagramProps, type DiagramRelationData, type DiagramRelationProps, type DiagramSchema, type DiagramToolbarProps, type DiagramType, Dropdown, type DropdownContextValue, type DropdownItemProps, type DropdownItemsProps, type DropdownProps, type DropdownSeparatorProps, type DropdownTriggerProps, EMOJI_DATA, EMOJI_ENTRIES, type EdgeAnchor, Editor, type EditorAction, type EditorContentProps, type EditorContextValue, type EditorProps, type EditorToolbarProps, Emoji, type EmojiProps, EmojiSelect, type EmojiSelectProps, type ExportFormat, Field, type FieldProps, FileUpload, type FileUploadContextValue, type FileUploadDropzoneProps, type FileUploadListProps, type FileUploadProps, Heading, type HeadingProps, Icon, type IconProps, type IconSet, Input, type InputAffixProps, type InputBaseProps, type InputOption, type InputOptionGroup, type InputProps, Kanban, type KanbanCardProps, type KanbanColumnProps, type KanbanContextValue, type KanbanProps, Menu, type MenuContextValue, type MenuGroupProps, type MenuItemProps, type MenuOrientation, type MenuProps, type MenuSubmenuProps, MobileMenu, type MobileMenuBottomBarProps, type MobileMenuContextValue, type MobileMenuFlyoutProps, type MobileMenuItemProps, type MobileMenuSide, type MobileMenuVariant, Modal, type ModalBodyProps, type ModalContextValue, type ModalFooterProps, type ModalHeaderProps, type ModalProps, MultiSwitch, type MultiSwitchProps, Navbar, type NavbarBrandProps, type NavbarContextValue, type NavbarItemProps, type NavbarItemsProps, type NavbarProps, type NavbarToggleProps, type NodeRect, OtpInput, type OtpInputProps, Pagination, type PaginationProps, Pillbox, type PillboxProps, type Placement, Popover, type PopoverContentProps, type PopoverContextValue, type PopoverProps, type PopoverTriggerProps, Portal, type PortalProps, Profile, type ProfileProps, Progress, type ProgressProps, RadioGroup, type RadioGroupProps, type RelationType, type RenderExtension, type RenderExtensionProps, Select, type SelectProps, Separator, type SeparatorProps, Sidebar, type SidebarCollapseMode, type SidebarContextValue, type SidebarGroupProps, type SidebarItemProps, type SidebarProps, type SidebarSubmenuProps, type SidebarToggleProps, type Size, Skeleton, type SkeletonProps, Slider, type SliderProps, Switch, type SwitchProps, Table, type TableBodyProps, type TableCellProps, type TableColumnProps, type TableHeadProps, type TablePaginationProps, type TableProps, type TableRowProps, type TableRowTrayProps, type TableSearchProps, type TableTrayProps, Tabs, type TabsContextValue, type TabsListProps, type TabsPanelProps, type TabsPanelsProps, type TabsProps, type TabsTabProps, type TabsVariant, Text, type TextProps, Textarea, type TextareaProps, TimePicker, type TimePickerProps, Timeline, type TimelineBlockProps, type TimelineItemProps, type TimelineOrientation, type TimelineProps, Toast, type ToastContextValue, type ToastData, type ToastPosition, type ToastProviderProps, type ToastVariant, Tooltip, type TooltipProps, type Variant, type ViewportState, cn, configureIcons, find, registerExtension, registerExtensions, registerIconSet, resolve, search, useAccordion, useAnimation, useCanvas, useCarousel, useCommand, useContextMenu, useControllableState, useDiagram, useDropdown, useEditor, useEscapeKey, useFileUpload, useFloatingPosition, useFocusTrap, useId, useKanban, useMenu, useMobileMenu, useModal, useNavbar, useNodeRegistry, useOutsideClick, usePanZoom, usePopover, useSidebar, useTabs, useToast };
package/dist/index.d.ts CHANGED
@@ -571,8 +571,11 @@ interface CalloutProps {
571
571
 
572
572
  declare const Callout: react.ForwardRefExoticComponent<CalloutProps & react.RefAttributes<HTMLDivElement>>;
573
573
 
574
+ type TimelineOrientation = "vertical" | "horizontal";
574
575
  interface TimelineProps {
575
576
  children: ReactNode;
577
+ /** Layout direction. Default: "vertical" */
578
+ orientation?: TimelineOrientation;
576
579
  className?: string;
577
580
  }
578
581
  interface TimelineItemProps {
@@ -1975,7 +1978,7 @@ declare function cn(...inputs: ClassValue[]): string;
1975
1978
 
1976
1979
  declare function useControllableState<T>(controlledValue: T | undefined, defaultValue: T, onChange?: (value: T) => void): [T, (value: T | ((prev: T) => T)) => void];
1977
1980
 
1978
- declare function useOutsideClick(ref: RefObject<HTMLElement | null>, handler: (event: MouseEvent | TouchEvent) => void, enabled?: boolean): void;
1981
+ declare function useOutsideClick(ref: RefObject<HTMLElement | null>, handler: (event: MouseEvent | TouchEvent) => void, enabled?: boolean, ignoreRef?: RefObject<HTMLElement | null>): void;
1979
1982
 
1980
1983
  declare function useEscapeKey(handler: () => void, enabled?: boolean): void;
1981
1984
 
@@ -2037,4 +2040,4 @@ declare function find(char: string): {
2037
2040
  category: string;
2038
2041
  } | undefined;
2039
2042
 
2040
- export { Accordion, type AccordionContentProps, type AccordionContextValue, type AccordionItemProps, type AccordionProps, type AccordionTriggerProps, Action, type ActionColor, type ActionProps, type AffixPosition, Autocomplete, type AutocompleteOption, type AutocompleteProps, Avatar, type AvatarProps, Badge, type BadgeProps, Brand, type BrandProps, Breadcrumbs, type BreadcrumbsItemProps, type BreadcrumbsProps, Calendar, type CalendarMode, type CalendarProps, Callout, type CalloutProps, Canvas, type CanvasContextValue, type CanvasControlsProps, type CanvasEdgeProps, type CanvasMinimapProps, type CanvasNodeProps, type CanvasProps, Card, type CardBodyProps, type CardFooterProps, type CardHeaderProps, type CardProps, Carousel, type CarouselContextValue, type CarouselControlsProps, type CarouselPanelsProps, type CarouselProps, type CarouselSlideProps, type CarouselStepsProps, type CarouselVariant, Chart, type ChartAreaProps, type ChartBarData, type ChartBarProps, type ChartCommonProps, type ChartDonutData, type ChartDonutProps, type ChartHorizontalBarProps, type ChartLineProps, type ChartPieData, type ChartPieProps, type ChartSeries, type ChartSparklineProps, type ChartStackedBarProps, Checkbox, CheckboxGroup, type CheckboxGroupProps, type CheckboxProps, type Color, ColorPicker, type ColorPickerProps, Command, type CommandContextValue, type CommandEmptyProps, type CommandGroupProps, type CommandInputProps, type CommandItemProps, type CommandListProps, type CommandProps, Composer, type ComposerProps, ContentRenderer, type ContentRendererProps, ContextMenu, type ContextMenuContentProps, type ContextMenuContextValue, type ContextMenuItemProps, type ContextMenuProps, type ContextMenuSeparatorProps, type ContextMenuTriggerProps, DatePicker, type DatePickerProps, type DateRange, Diagram, type DiagramContextValue, type DiagramEntityData, type DiagramEntityProps, type DiagramFieldData, type DiagramFieldProps, type DiagramProps, type DiagramRelationData, type DiagramRelationProps, type DiagramSchema, type DiagramToolbarProps, type DiagramType, Dropdown, type DropdownContextValue, type DropdownItemProps, type DropdownItemsProps, type DropdownProps, type DropdownSeparatorProps, type DropdownTriggerProps, EMOJI_DATA, EMOJI_ENTRIES, type EdgeAnchor, Editor, type EditorAction, type EditorContentProps, type EditorContextValue, type EditorProps, type EditorToolbarProps, Emoji, type EmojiProps, EmojiSelect, type EmojiSelectProps, type ExportFormat, Field, type FieldProps, FileUpload, type FileUploadContextValue, type FileUploadDropzoneProps, type FileUploadListProps, type FileUploadProps, Heading, type HeadingProps, Icon, type IconProps, type IconSet, Input, type InputAffixProps, type InputBaseProps, type InputOption, type InputOptionGroup, type InputProps, Kanban, type KanbanCardProps, type KanbanColumnProps, type KanbanContextValue, type KanbanProps, Menu, type MenuContextValue, type MenuGroupProps, type MenuItemProps, type MenuOrientation, type MenuProps, type MenuSubmenuProps, MobileMenu, type MobileMenuBottomBarProps, type MobileMenuContextValue, type MobileMenuFlyoutProps, type MobileMenuItemProps, type MobileMenuSide, type MobileMenuVariant, Modal, type ModalBodyProps, type ModalContextValue, type ModalFooterProps, type ModalHeaderProps, type ModalProps, MultiSwitch, type MultiSwitchProps, Navbar, type NavbarBrandProps, type NavbarContextValue, type NavbarItemProps, type NavbarItemsProps, type NavbarProps, type NavbarToggleProps, type NodeRect, OtpInput, type OtpInputProps, Pagination, type PaginationProps, Pillbox, type PillboxProps, type Placement, Popover, type PopoverContentProps, type PopoverContextValue, type PopoverProps, type PopoverTriggerProps, Portal, type PortalProps, Profile, type ProfileProps, Progress, type ProgressProps, RadioGroup, type RadioGroupProps, type RelationType, type RenderExtension, type RenderExtensionProps, Select, type SelectProps, Separator, type SeparatorProps, Sidebar, type SidebarCollapseMode, type SidebarContextValue, type SidebarGroupProps, type SidebarItemProps, type SidebarProps, type SidebarSubmenuProps, type SidebarToggleProps, type Size, Skeleton, type SkeletonProps, Slider, type SliderProps, Switch, type SwitchProps, Table, type TableBodyProps, type TableCellProps, type TableColumnProps, type TableHeadProps, type TablePaginationProps, type TableProps, type TableRowProps, type TableRowTrayProps, type TableSearchProps, type TableTrayProps, Tabs, type TabsContextValue, type TabsListProps, type TabsPanelProps, type TabsPanelsProps, type TabsProps, type TabsTabProps, type TabsVariant, Text, type TextProps, Textarea, type TextareaProps, TimePicker, type TimePickerProps, Timeline, type TimelineBlockProps, type TimelineItemProps, type TimelineProps, Toast, type ToastContextValue, type ToastData, type ToastPosition, type ToastProviderProps, type ToastVariant, Tooltip, type TooltipProps, type Variant, type ViewportState, cn, configureIcons, find, registerExtension, registerExtensions, registerIconSet, resolve, search, useAccordion, useAnimation, useCanvas, useCarousel, useCommand, useContextMenu, useControllableState, useDiagram, useDropdown, useEditor, useEscapeKey, useFileUpload, useFloatingPosition, useFocusTrap, useId, useKanban, useMenu, useMobileMenu, useModal, useNavbar, useNodeRegistry, useOutsideClick, usePanZoom, usePopover, useSidebar, useTabs, useToast };
2043
+ export { Accordion, type AccordionContentProps, type AccordionContextValue, type AccordionItemProps, type AccordionProps, type AccordionTriggerProps, Action, type ActionColor, type ActionProps, type AffixPosition, Autocomplete, type AutocompleteOption, type AutocompleteProps, Avatar, type AvatarProps, Badge, type BadgeProps, Brand, type BrandProps, Breadcrumbs, type BreadcrumbsItemProps, type BreadcrumbsProps, Calendar, type CalendarMode, type CalendarProps, Callout, type CalloutProps, Canvas, type CanvasContextValue, type CanvasControlsProps, type CanvasEdgeProps, type CanvasMinimapProps, type CanvasNodeProps, type CanvasProps, Card, type CardBodyProps, type CardFooterProps, type CardHeaderProps, type CardProps, Carousel, type CarouselContextValue, type CarouselControlsProps, type CarouselPanelsProps, type CarouselProps, type CarouselSlideProps, type CarouselStepsProps, type CarouselVariant, Chart, type ChartAreaProps, type ChartBarData, type ChartBarProps, type ChartCommonProps, type ChartDonutData, type ChartDonutProps, type ChartHorizontalBarProps, type ChartLineProps, type ChartPieData, type ChartPieProps, type ChartSeries, type ChartSparklineProps, type ChartStackedBarProps, Checkbox, CheckboxGroup, type CheckboxGroupProps, type CheckboxProps, type Color, ColorPicker, type ColorPickerProps, Command, type CommandContextValue, type CommandEmptyProps, type CommandGroupProps, type CommandInputProps, type CommandItemProps, type CommandListProps, type CommandProps, Composer, type ComposerProps, ContentRenderer, type ContentRendererProps, ContextMenu, type ContextMenuContentProps, type ContextMenuContextValue, type ContextMenuItemProps, type ContextMenuProps, type ContextMenuSeparatorProps, type ContextMenuTriggerProps, DatePicker, type DatePickerProps, type DateRange, Diagram, type DiagramContextValue, type DiagramEntityData, type DiagramEntityProps, type DiagramFieldData, type DiagramFieldProps, type DiagramProps, type DiagramRelationData, type DiagramRelationProps, type DiagramSchema, type DiagramToolbarProps, type DiagramType, Dropdown, type DropdownContextValue, type DropdownItemProps, type DropdownItemsProps, type DropdownProps, type DropdownSeparatorProps, type DropdownTriggerProps, EMOJI_DATA, EMOJI_ENTRIES, type EdgeAnchor, Editor, type EditorAction, type EditorContentProps, type EditorContextValue, type EditorProps, type EditorToolbarProps, Emoji, type EmojiProps, EmojiSelect, type EmojiSelectProps, type ExportFormat, Field, type FieldProps, FileUpload, type FileUploadContextValue, type FileUploadDropzoneProps, type FileUploadListProps, type FileUploadProps, Heading, type HeadingProps, Icon, type IconProps, type IconSet, Input, type InputAffixProps, type InputBaseProps, type InputOption, type InputOptionGroup, type InputProps, Kanban, type KanbanCardProps, type KanbanColumnProps, type KanbanContextValue, type KanbanProps, Menu, type MenuContextValue, type MenuGroupProps, type MenuItemProps, type MenuOrientation, type MenuProps, type MenuSubmenuProps, MobileMenu, type MobileMenuBottomBarProps, type MobileMenuContextValue, type MobileMenuFlyoutProps, type MobileMenuItemProps, type MobileMenuSide, type MobileMenuVariant, Modal, type ModalBodyProps, type ModalContextValue, type ModalFooterProps, type ModalHeaderProps, type ModalProps, MultiSwitch, type MultiSwitchProps, Navbar, type NavbarBrandProps, type NavbarContextValue, type NavbarItemProps, type NavbarItemsProps, type NavbarProps, type NavbarToggleProps, type NodeRect, OtpInput, type OtpInputProps, Pagination, type PaginationProps, Pillbox, type PillboxProps, type Placement, Popover, type PopoverContentProps, type PopoverContextValue, type PopoverProps, type PopoverTriggerProps, Portal, type PortalProps, Profile, type ProfileProps, Progress, type ProgressProps, RadioGroup, type RadioGroupProps, type RelationType, type RenderExtension, type RenderExtensionProps, Select, type SelectProps, Separator, type SeparatorProps, Sidebar, type SidebarCollapseMode, type SidebarContextValue, type SidebarGroupProps, type SidebarItemProps, type SidebarProps, type SidebarSubmenuProps, type SidebarToggleProps, type Size, Skeleton, type SkeletonProps, Slider, type SliderProps, Switch, type SwitchProps, Table, type TableBodyProps, type TableCellProps, type TableColumnProps, type TableHeadProps, type TablePaginationProps, type TableProps, type TableRowProps, type TableRowTrayProps, type TableSearchProps, type TableTrayProps, Tabs, type TabsContextValue, type TabsListProps, type TabsPanelProps, type TabsPanelsProps, type TabsProps, type TabsTabProps, type TabsVariant, Text, type TextProps, Textarea, type TextareaProps, TimePicker, type TimePickerProps, Timeline, type TimelineBlockProps, type TimelineItemProps, type TimelineOrientation, type TimelineProps, Toast, type ToastContextValue, type ToastData, type ToastPosition, type ToastProviderProps, type ToastVariant, Tooltip, type TooltipProps, type Variant, type ViewportState, cn, configureIcons, find, registerExtension, registerExtensions, registerIconSet, resolve, search, useAccordion, useAnimation, useCanvas, useCarousel, useCommand, useContextMenu, useControllableState, useDiagram, useDropdown, useEditor, useEscapeKey, useFileUpload, useFloatingPosition, useFocusTrap, useId, useKanban, useMenu, useMobileMenu, useModal, useNavbar, useNodeRegistry, useOutsideClick, usePanZoom, usePopover, useSidebar, useTabs, useToast };
package/dist/index.js CHANGED
@@ -2714,7 +2714,7 @@ var CarouselPanels = forwardRef(
2714
2714
  }
2715
2715
  }, [activeIndex, transition]);
2716
2716
  if (transition === "fade") {
2717
- return /* @__PURE__ */ jsx("div", { ref, className: cn("relative overflow-hidden", className), children: /* @__PURE__ */ jsx(
2717
+ return /* @__PURE__ */ jsx("div", { ref, "data-react-fancy-carousel-panels": "", className: cn("relative overflow-hidden", className), children: /* @__PURE__ */ jsx(
2718
2718
  "div",
2719
2719
  {
2720
2720
  className: cn(
@@ -2728,13 +2728,13 @@ var CarouselPanels = forwardRef(
2728
2728
  activeIndex
2729
2729
  ) });
2730
2730
  }
2731
- return /* @__PURE__ */ jsx("div", { ref, className: cn("relative overflow-hidden", className), children: slides[activeIndex] });
2731
+ return /* @__PURE__ */ jsx("div", { ref, "data-react-fancy-carousel-panels": "", className: cn("relative overflow-hidden", className), children: slides[activeIndex] });
2732
2732
  }
2733
2733
  );
2734
2734
  CarouselPanels.displayName = "CarouselPanels";
2735
2735
  var CarouselSlide = forwardRef(
2736
2736
  ({ children, className, name: _name }, ref) => {
2737
- return /* @__PURE__ */ jsx("div", { ref, className: cn("w-full", className), children });
2737
+ return /* @__PURE__ */ jsx("div", { ref, "data-react-fancy-carousel-slide": "", className: cn("w-full", className), children });
2738
2738
  }
2739
2739
  );
2740
2740
  CarouselSlide.displayName = "CarouselSlide";
@@ -2752,7 +2752,7 @@ var CarouselControls = forwardRef(
2752
2752
  const isFirst = activeIndex === 0;
2753
2753
  const isLast = activeIndex === totalSlides - 1;
2754
2754
  if (variant === "wizard") {
2755
- return /* @__PURE__ */ jsxs("div", { ref, className: cn("flex items-center gap-2", className), children: [
2755
+ return /* @__PURE__ */ jsxs("div", { ref, "data-react-fancy-carousel-controls": "", className: cn("flex items-center gap-2", className), children: [
2756
2756
  /* @__PURE__ */ jsx(
2757
2757
  "button",
2758
2758
  {
@@ -2784,7 +2784,7 @@ var CarouselControls = forwardRef(
2784
2784
  }
2785
2785
  const prevDisabled = !loop && isFirst;
2786
2786
  const nextDisabled = !loop && isLast;
2787
- return /* @__PURE__ */ jsxs("div", { ref, className: cn("flex items-center gap-2", className), children: [
2787
+ return /* @__PURE__ */ jsxs("div", { ref, "data-react-fancy-carousel-controls": "", className: cn("flex items-center gap-2", className), children: [
2788
2788
  /* @__PURE__ */ jsx(
2789
2789
  "button",
2790
2790
  {
@@ -2816,7 +2816,7 @@ var CarouselSteps = forwardRef(
2816
2816
  return null;
2817
2817
  }
2818
2818
  if (variant === "wizard") {
2819
- return /* @__PURE__ */ jsx("div", { ref, className: cn("flex items-center gap-3", className), children: Array.from({ length: totalSlides }, (_, i) => {
2819
+ return /* @__PURE__ */ jsx("div", { ref, "data-react-fancy-carousel-steps": "", className: cn("flex items-center gap-3", className), children: Array.from({ length: totalSlides }, (_, i) => {
2820
2820
  const isActive = i === activeIndex;
2821
2821
  const isCompleted = i < activeIndex;
2822
2822
  const name = slideNames[i];
@@ -2853,7 +2853,7 @@ var CarouselSteps = forwardRef(
2853
2853
  );
2854
2854
  }) });
2855
2855
  }
2856
- return /* @__PURE__ */ jsx("div", { ref, className: cn("flex items-center gap-1.5", className), children: Array.from({ length: totalSlides }, (_, i) => /* @__PURE__ */ jsx(
2856
+ return /* @__PURE__ */ jsx("div", { ref, "data-react-fancy-carousel-steps": "", className: cn("flex items-center gap-1.5", className), children: Array.from({ length: totalSlides }, (_, i) => /* @__PURE__ */ jsx(
2857
2857
  "button",
2858
2858
  {
2859
2859
  type: "button",
@@ -3174,10 +3174,10 @@ function useTable() {
3174
3174
  return ctx;
3175
3175
  }
3176
3176
  function TableHead({ children, className }) {
3177
- return /* @__PURE__ */ jsx("thead", { className: cn("border-b border-zinc-200 dark:border-zinc-700", className), children });
3177
+ return /* @__PURE__ */ jsx("thead", { "data-react-fancy-table-head": "", className: cn("border-b border-zinc-200 dark:border-zinc-700", className), children });
3178
3178
  }
3179
3179
  function TableBody({ children, className }) {
3180
- return /* @__PURE__ */ jsx("tbody", { className: cn("divide-y divide-zinc-100 dark:divide-zinc-800", className), children });
3180
+ return /* @__PURE__ */ jsx("tbody", { "data-react-fancy-table-body": "", className: cn("divide-y divide-zinc-100 dark:divide-zinc-800", className), children });
3181
3181
  }
3182
3182
  function TableRow({
3183
3183
  children,
@@ -3226,6 +3226,7 @@ function TableRow({
3226
3226
  /* @__PURE__ */ jsxs(
3227
3227
  "tr",
3228
3228
  {
3229
+ "data-react-fancy-table-row": "",
3229
3230
  className: cn(
3230
3231
  "transition-colors hover:bg-zinc-50 dark:hover:bg-zinc-800/50",
3231
3232
  onClick && "cursor-pointer",
@@ -3247,6 +3248,7 @@ function TableCell({ children, className, header }) {
3247
3248
  return /* @__PURE__ */ jsx(
3248
3249
  Tag,
3249
3250
  {
3251
+ "data-react-fancy-table-cell": "",
3250
3252
  className: cn(
3251
3253
  "px-4 py-3 text-sm",
3252
3254
  header && "text-left font-medium text-zinc-500 dark:text-zinc-400",
@@ -3262,6 +3264,7 @@ function TableColumn({ label, sortKey, className }) {
3262
3264
  return /* @__PURE__ */ jsx(
3263
3265
  "th",
3264
3266
  {
3267
+ "data-react-fancy-table-column": "",
3265
3268
  className: cn(
3266
3269
  "px-4 py-3 text-left text-sm font-medium text-zinc-500 dark:text-zinc-400",
3267
3270
  sortKey && "cursor-pointer select-none",
@@ -3283,7 +3286,7 @@ function TablePagination({
3283
3286
  const { page, setPage } = useTable();
3284
3287
  const totalPages = Math.ceil(total / pageSize);
3285
3288
  if (totalPages <= 1) return null;
3286
- return /* @__PURE__ */ jsxs("div", { className: cn("flex items-center justify-between px-4 py-3 text-sm", className), children: [
3289
+ return /* @__PURE__ */ jsxs("div", { "data-react-fancy-table-pagination": "", className: cn("flex items-center justify-between px-4 py-3 text-sm", className), children: [
3287
3290
  /* @__PURE__ */ jsxs("span", { className: "text-zinc-500", children: [
3288
3291
  "Page ",
3289
3292
  page + 1,
@@ -3322,6 +3325,7 @@ function TableSearch({
3322
3325
  return /* @__PURE__ */ jsx(
3323
3326
  "input",
3324
3327
  {
3328
+ "data-react-fancy-table-search": "",
3325
3329
  type: "text",
3326
3330
  value: searchQuery,
3327
3331
  onChange: (e) => setSearchQuery(e.target.value),
@@ -3334,7 +3338,7 @@ function TableSearch({
3334
3338
  );
3335
3339
  }
3336
3340
  function TableTray({ children, className }) {
3337
- return /* @__PURE__ */ jsx("div", { className: cn("flex items-center justify-between px-4 py-3", className), children });
3341
+ return /* @__PURE__ */ jsx("div", { "data-react-fancy-table-tray": "", className: cn("flex items-center justify-between px-4 py-3", className), children });
3338
3342
  }
3339
3343
  function TableRowTray({ children, className }) {
3340
3344
  return /* @__PURE__ */ jsx(
@@ -4196,6 +4200,13 @@ var Callout = forwardRef(
4196
4200
  }
4197
4201
  );
4198
4202
  Callout.displayName = "Callout";
4203
+ var TimelineContext = createContext({
4204
+ orientation: "vertical",
4205
+ index: 0
4206
+ });
4207
+ function useTimeline() {
4208
+ return useContext(TimelineContext);
4209
+ }
4199
4210
  var dotColorClasses2 = {
4200
4211
  blue: "bg-blue-500 dark:bg-blue-400",
4201
4212
  green: "bg-green-500 dark:bg-green-400",
@@ -4217,6 +4228,34 @@ var ringColorClasses = {
4217
4228
  red: "ring-red-500/30 dark:ring-red-400/30",
4218
4229
  zinc: "ring-zinc-400/30 dark:ring-zinc-500/30"
4219
4230
  };
4231
+ function Dot({ icon, color, active }) {
4232
+ const c = color ?? "zinc";
4233
+ if (icon) {
4234
+ return /* @__PURE__ */ jsx(
4235
+ "span",
4236
+ {
4237
+ className: cn(
4238
+ "flex h-6 w-6 items-center justify-center rounded-full bg-white dark:bg-zinc-900",
4239
+ iconColorClasses2[c],
4240
+ active && "ring-4",
4241
+ active && ringColorClasses[c]
4242
+ ),
4243
+ children: icon
4244
+ }
4245
+ );
4246
+ }
4247
+ return /* @__PURE__ */ jsx(
4248
+ "span",
4249
+ {
4250
+ className: cn(
4251
+ "h-3 w-3 rounded-full",
4252
+ dotColorClasses2[c],
4253
+ active && "ring-4",
4254
+ active && ringColorClasses[c]
4255
+ )
4256
+ }
4257
+ );
4258
+ }
4220
4259
  var TimelineItem = forwardRef(
4221
4260
  ({
4222
4261
  children,
@@ -4225,6 +4264,28 @@ var TimelineItem = forwardRef(
4225
4264
  active = false,
4226
4265
  className
4227
4266
  }, ref) => {
4267
+ const { orientation, index } = useTimeline();
4268
+ if (orientation === "horizontal") {
4269
+ const isTop = index % 2 === 0;
4270
+ return /* @__PURE__ */ jsxs(
4271
+ "div",
4272
+ {
4273
+ ref,
4274
+ "data-react-fancy-timeline-item": "",
4275
+ className: cn("relative flex flex-col items-center", className),
4276
+ style: { minWidth: 120 },
4277
+ children: [
4278
+ /* @__PURE__ */ jsx("div", { className: cn("flex min-h-[4rem] items-end pb-2", !isTop && "invisible"), children: isTop && /* @__PURE__ */ jsx("div", { className: "min-w-0 text-center", children }) }),
4279
+ /* @__PURE__ */ jsxs("div", { className: "relative flex w-full items-center justify-center", children: [
4280
+ /* @__PURE__ */ jsx("div", { className: "h-px flex-1 bg-zinc-200 dark:bg-zinc-700" }),
4281
+ /* @__PURE__ */ jsx("div", { className: "relative z-10 flex shrink-0 items-center justify-center", children: /* @__PURE__ */ jsx(Dot, { icon, color, active }) }),
4282
+ /* @__PURE__ */ jsx("div", { className: "h-px flex-1 bg-zinc-200 dark:bg-zinc-700" })
4283
+ ] }),
4284
+ /* @__PURE__ */ jsx("div", { className: cn("flex min-h-[4rem] items-start pt-2", isTop && "invisible"), children: !isTop && /* @__PURE__ */ jsx("div", { className: "min-w-0 text-center", children }) })
4285
+ ]
4286
+ }
4287
+ );
4288
+ }
4228
4289
  return /* @__PURE__ */ jsxs(
4229
4290
  "div",
4230
4291
  {
@@ -4233,28 +4294,7 @@ var TimelineItem = forwardRef(
4233
4294
  className: cn("relative flex gap-4 pb-8 last:pb-0", className),
4234
4295
  children: [
4235
4296
  /* @__PURE__ */ jsx("div", { className: "absolute left-[11px] top-6 bottom-0 w-px bg-zinc-200 last:hidden dark:bg-zinc-700" }),
4236
- /* @__PURE__ */ jsx("div", { className: "relative z-10 flex shrink-0", children: icon ? /* @__PURE__ */ jsx(
4237
- "span",
4238
- {
4239
- className: cn(
4240
- "flex h-6 w-6 items-center justify-center rounded-full bg-white dark:bg-zinc-900",
4241
- iconColorClasses2[color],
4242
- active && "ring-4",
4243
- active && ringColorClasses[color]
4244
- ),
4245
- children: icon
4246
- }
4247
- ) : /* @__PURE__ */ jsx(
4248
- "span",
4249
- {
4250
- className: cn(
4251
- "mt-1.5 h-3 w-3 rounded-full",
4252
- dotColorClasses2[color],
4253
- active && "ring-4",
4254
- active && ringColorClasses[color]
4255
- )
4256
- }
4257
- ) }),
4297
+ /* @__PURE__ */ jsx("div", { className: "relative z-10 flex shrink-0 mt-1.5", children: /* @__PURE__ */ jsx(Dot, { icon, color, active }) }),
4258
4298
  /* @__PURE__ */ jsx("div", { className: "min-w-0 flex-1 pt-0.5", children })
4259
4299
  ]
4260
4300
  }
@@ -4284,14 +4324,19 @@ var TimelineBlock = forwardRef(
4284
4324
  );
4285
4325
  TimelineBlock.displayName = "TimelineBlock";
4286
4326
  var TimelineRoot = forwardRef(
4287
- ({ children, className }, ref) => {
4327
+ ({ children, orientation = "vertical", className }, ref) => {
4328
+ const items = Children.toArray(children);
4288
4329
  return /* @__PURE__ */ jsx(
4289
4330
  "div",
4290
4331
  {
4291
4332
  ref,
4292
4333
  "data-react-fancy-timeline": "",
4293
- className: cn("flex flex-col", className),
4294
- children
4334
+ "data-orientation": orientation,
4335
+ className: cn(
4336
+ orientation === "vertical" ? "flex flex-col" : "flex flex-row items-center overflow-x-auto",
4337
+ className
4338
+ ),
4339
+ children: items.map((child, i) => /* @__PURE__ */ jsx(TimelineContext.Provider, { value: { orientation, index: i }, children: child }, i))
4295
4340
  }
4296
4341
  );
4297
4342
  }
@@ -4457,24 +4502,22 @@ function PopoverTrigger({ children }) {
4457
4502
  });
4458
4503
  }
4459
4504
  PopoverTrigger.displayName = "PopoverTrigger";
4460
- function useOutsideClick(ref, handler, enabled = true) {
4505
+ function useOutsideClick(ref, handler, enabled = true, ignoreRef) {
4461
4506
  useEffect(() => {
4462
4507
  if (!enabled) return;
4463
4508
  const listener = (event) => {
4464
4509
  const el = ref.current;
4465
4510
  if (!el || el.contains(event.target)) return;
4511
+ if (ignoreRef?.current?.contains(event.target)) return;
4466
4512
  handler(event);
4467
4513
  };
4468
- const raf = requestAnimationFrame(() => {
4469
- document.addEventListener("mousedown", listener);
4470
- document.addEventListener("touchstart", listener);
4471
- });
4514
+ document.addEventListener("mousedown", listener);
4515
+ document.addEventListener("touchstart", listener);
4472
4516
  return () => {
4473
- cancelAnimationFrame(raf);
4474
4517
  document.removeEventListener("mousedown", listener);
4475
4518
  document.removeEventListener("touchstart", listener);
4476
4519
  };
4477
- }, [ref, handler, enabled]);
4520
+ }, [ref, handler, enabled, ignoreRef]);
4478
4521
  }
4479
4522
  function useEscapeKey(handler, enabled = true) {
4480
4523
  useEffect(() => {
@@ -4528,7 +4571,7 @@ function PopoverContent({ children, className }) {
4528
4571
  enabled: open
4529
4572
  });
4530
4573
  const close = useCallback(() => setOpen(false), [setOpen]);
4531
- useOutsideClick(outsideRef, close, open);
4574
+ useOutsideClick(outsideRef, close, open, anchorRef);
4532
4575
  useEscapeKey(close, open);
4533
4576
  const { mounted, className: animClass, ref: animRef } = useAnimation({
4534
4577
  open,
@@ -4613,7 +4656,7 @@ function DropdownItems({ children, className }) {
4613
4656
  setOpen(false);
4614
4657
  setActiveIndex(-1);
4615
4658
  }, [setOpen, setActiveIndex]);
4616
- useOutsideClick(outsideRef, close, open);
4659
+ useOutsideClick(outsideRef, close, open, anchorRef);
4617
4660
  useEscapeKey(close, open);
4618
4661
  const { mounted, className: animClass, ref: animRef } = useAnimation({
4619
4662
  open,
@@ -4700,6 +4743,7 @@ function DropdownSeparator({ className }) {
4700
4743
  return /* @__PURE__ */ jsx(
4701
4744
  "div",
4702
4745
  {
4746
+ "data-react-fancy-dropdown-separator": "",
4703
4747
  role: "separator",
4704
4748
  className: cn(
4705
4749
  "my-1 h-px bg-zinc-200 dark:bg-zinc-700",
@@ -4753,7 +4797,7 @@ function ContextMenuTrigger({
4753
4797
  },
4754
4798
  [ctx]
4755
4799
  );
4756
- return /* @__PURE__ */ jsx("div", { onContextMenu: handleContextMenu, className: cn(className), children });
4800
+ return /* @__PURE__ */ jsx("div", { "data-react-fancy-context-menu-trigger": "", onContextMenu: handleContextMenu, className: cn(className), children });
4757
4801
  }
4758
4802
  ContextMenuTrigger.displayName = "ContextMenuTrigger";
4759
4803
  function ContextMenuContent({
@@ -4803,6 +4847,7 @@ function ContextMenuItem({
4803
4847
  "button",
4804
4848
  {
4805
4849
  type: "button",
4850
+ "data-react-fancy-context-menu-item": "",
4806
4851
  role: "menuitem",
4807
4852
  disabled,
4808
4853
  "aria-disabled": disabled,
@@ -4826,6 +4871,7 @@ function ContextMenuSeparator({ className }) {
4826
4871
  return /* @__PURE__ */ jsx(
4827
4872
  "div",
4828
4873
  {
4874
+ "data-react-fancy-context-menu-separator": "",
4829
4875
  role: "separator",
4830
4876
  className: cn("my-1 h-px bg-zinc-200 dark:bg-zinc-700", className)
4831
4877
  }
@@ -5565,7 +5611,7 @@ function BreadcrumbsDropdown({ items, activeLabel }) {
5565
5611
  const ref = useRef(null);
5566
5612
  useOutsideClick(ref, () => setOpen(false), open);
5567
5613
  useEscapeKey(() => setOpen(false), open);
5568
- return /* @__PURE__ */ jsxs("div", { ref, className: "relative flex md:hidden", children: [
5614
+ return /* @__PURE__ */ jsxs("div", { ref, "data-react-fancy-breadcrumbs-dropdown": "", className: "relative flex md:hidden", children: [
5569
5615
  /* @__PURE__ */ jsxs(
5570
5616
  "button",
5571
5617
  {
@@ -7087,6 +7133,7 @@ function ChartLine({
7087
7133
  "div",
7088
7134
  {
7089
7135
  ref: containerRef,
7136
+ "data-react-fancy-chart-line": "",
7090
7137
  className: cn("relative", className),
7091
7138
  onMouseMove: handleMouseMove,
7092
7139
  onMouseLeave: () => setHoverInfo(null),
@@ -7247,7 +7294,7 @@ function ChartPie({
7247
7294
  const rect = containerRef.current.getBoundingClientRect();
7248
7295
  setTooltipPos({ x: e.clientX - rect.left, y: e.clientY - rect.top });
7249
7296
  };
7250
- return /* @__PURE__ */ jsxs("div", { ref: containerRef, className: cn("relative inline-flex items-center gap-6", className), onMouseMove: handleMouseMove, children: [
7297
+ return /* @__PURE__ */ jsxs("div", { ref: containerRef, "data-react-fancy-chart-pie": "", className: cn("relative inline-flex items-center gap-6", className), onMouseMove: handleMouseMove, children: [
7251
7298
  /* @__PURE__ */ jsx("svg", { width: size, height: size, children: slices.map((slice, i) => /* @__PURE__ */ jsxs("g", { children: [
7252
7299
  /* @__PURE__ */ jsx(
7253
7300
  "path",
@@ -7405,7 +7452,7 @@ function ChartStackedBar({
7405
7452
  setTooltipPos({ x: e.clientX - rect.left, y: e.clientY - rect.top });
7406
7453
  };
7407
7454
  const svgProps = responsive ? { viewBox: `0 0 ${width} ${height}`, width: "100%", preserveAspectRatio: "xMidYMid meet" } : { width, height };
7408
- return /* @__PURE__ */ jsxs("div", { ref: containerRef, className: cn("relative", className), onMouseMove: handleMouseMove, children: [
7455
+ return /* @__PURE__ */ jsxs("div", { ref: containerRef, "data-react-fancy-chart-stacked-bar": "", className: cn("relative", className), onMouseMove: handleMouseMove, children: [
7409
7456
  /* @__PURE__ */ jsxs("svg", { ...svgProps, height: responsive ? void 0 : height, children: [
7410
7457
  grid && /* @__PURE__ */ jsx(
7411
7458
  ChartGrid,