@wow-two-beta/ui 0.0.9 → 0.0.11

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.
Files changed (86) hide show
  1. package/dist/chunk-52DFDWY3.js +678 -0
  2. package/dist/chunk-52DFDWY3.js.map +1 -0
  3. package/dist/{chunk-SBVWECJP.js → chunk-PFM3IQKM.js} +882 -6
  4. package/dist/chunk-PFM3IQKM.js.map +1 -0
  5. package/dist/{chunk-55Y2JOBV.js → chunk-VTLWHUMD.js} +3 -3
  6. package/dist/{chunk-55Y2JOBV.js.map → chunk-VTLWHUMD.js.map} +1 -1
  7. package/dist/{chunk-CZ6FQILQ.js → chunk-YANOG5YR.js} +21 -3
  8. package/dist/chunk-YANOG5YR.js.map +1 -0
  9. package/dist/{chunk-3KGYKBW6.js → chunk-ZTHJ5OTI.js} +3 -3
  10. package/dist/{chunk-3KGYKBW6.js.map → chunk-ZTHJ5OTI.js.map} +1 -1
  11. package/dist/display/index.js +2 -2
  12. package/dist/forms/_dateUtils.d.ts +36 -0
  13. package/dist/forms/_dateUtils.d.ts.map +1 -0
  14. package/dist/forms/calendar/Calendar.d.ts +21 -0
  15. package/dist/forms/calendar/Calendar.d.ts.map +1 -0
  16. package/dist/forms/calendar/index.d.ts +2 -0
  17. package/dist/forms/calendar/index.d.ts.map +1 -0
  18. package/dist/forms/dateField/DateField.d.ts +11 -0
  19. package/dist/forms/dateField/DateField.d.ts.map +1 -0
  20. package/dist/forms/dateField/index.d.ts +2 -0
  21. package/dist/forms/dateField/index.d.ts.map +1 -0
  22. package/dist/forms/datePicker/DatePicker.d.ts +17 -0
  23. package/dist/forms/datePicker/DatePicker.d.ts.map +1 -0
  24. package/dist/forms/datePicker/index.d.ts +2 -0
  25. package/dist/forms/datePicker/index.d.ts.map +1 -0
  26. package/dist/forms/dateRangePicker/DateRangePicker.d.ts +18 -0
  27. package/dist/forms/dateRangePicker/DateRangePicker.d.ts.map +1 -0
  28. package/dist/forms/dateRangePicker/index.d.ts +2 -0
  29. package/dist/forms/dateRangePicker/index.d.ts.map +1 -0
  30. package/dist/forms/index.d.ts +7 -0
  31. package/dist/forms/index.d.ts.map +1 -1
  32. package/dist/forms/index.js +2 -2
  33. package/dist/forms/rangeCalendar/RangeCalendar.d.ts +17 -0
  34. package/dist/forms/rangeCalendar/RangeCalendar.d.ts.map +1 -0
  35. package/dist/forms/rangeCalendar/index.d.ts +2 -0
  36. package/dist/forms/rangeCalendar/index.d.ts.map +1 -0
  37. package/dist/forms/timeField/TimeField.d.ts +13 -0
  38. package/dist/forms/timeField/TimeField.d.ts.map +1 -0
  39. package/dist/forms/timeField/index.d.ts +2 -0
  40. package/dist/forms/timeField/index.d.ts.map +1 -0
  41. package/dist/forms/timePicker/TimePicker.d.ts +16 -0
  42. package/dist/forms/timePicker/TimePicker.d.ts.map +1 -0
  43. package/dist/forms/timePicker/index.d.ts +2 -0
  44. package/dist/forms/timePicker/index.d.ts.map +1 -0
  45. package/dist/index.d.ts +1 -0
  46. package/dist/index.d.ts.map +1 -1
  47. package/dist/index.js +5 -4
  48. package/dist/nav/index.js +2 -2
  49. package/dist/overlays/alertDialog/AlertDialog.d.ts +29 -0
  50. package/dist/overlays/alertDialog/AlertDialog.d.ts.map +1 -0
  51. package/dist/overlays/alertDialog/index.d.ts +2 -0
  52. package/dist/overlays/alertDialog/index.d.ts.map +1 -0
  53. package/dist/overlays/backdrop/Backdrop.d.ts +17 -0
  54. package/dist/overlays/backdrop/Backdrop.d.ts.map +1 -0
  55. package/dist/overlays/backdrop/index.d.ts +2 -0
  56. package/dist/overlays/backdrop/index.d.ts.map +1 -0
  57. package/dist/overlays/dialog/Dialog.d.ts +63 -0
  58. package/dist/overlays/dialog/Dialog.d.ts.map +1 -0
  59. package/dist/overlays/dialog/index.d.ts +2 -0
  60. package/dist/overlays/dialog/index.d.ts.map +1 -0
  61. package/dist/overlays/drawer/Drawer.d.ts +57 -0
  62. package/dist/overlays/drawer/Drawer.d.ts.map +1 -0
  63. package/dist/overlays/drawer/index.d.ts +2 -0
  64. package/dist/overlays/drawer/index.d.ts.map +1 -0
  65. package/dist/overlays/hoverCard/HoverCard.d.ts +37 -0
  66. package/dist/overlays/hoverCard/HoverCard.d.ts.map +1 -0
  67. package/dist/overlays/hoverCard/index.d.ts +2 -0
  68. package/dist/overlays/hoverCard/index.d.ts.map +1 -0
  69. package/dist/overlays/index.d.ts +7 -0
  70. package/dist/overlays/index.d.ts.map +1 -0
  71. package/dist/overlays/index.js +11 -0
  72. package/dist/overlays/index.js.map +1 -0
  73. package/dist/overlays/popover/Popover.d.ts +31 -0
  74. package/dist/overlays/popover/Popover.d.ts.map +1 -0
  75. package/dist/overlays/popover/index.d.ts +2 -0
  76. package/dist/overlays/popover/index.d.ts.map +1 -0
  77. package/dist/primitives/index.d.ts +1 -0
  78. package/dist/primitives/index.d.ts.map +1 -1
  79. package/dist/primitives/index.js +1 -1
  80. package/dist/primitives/overlayArrow/OverlayArrow.d.ts +19 -0
  81. package/dist/primitives/overlayArrow/OverlayArrow.d.ts.map +1 -0
  82. package/dist/primitives/overlayArrow/index.d.ts +2 -0
  83. package/dist/primitives/overlayArrow/index.d.ts.map +1 -0
  84. package/package.json +5 -1
  85. package/dist/chunk-CZ6FQILQ.js.map +0 -1
  86. package/dist/chunk-SBVWECJP.js.map +0 -1
package/dist/index.d.ts CHANGED
@@ -8,4 +8,5 @@ export * from './feedback';
8
8
  export * from './forms';
9
9
  export * from './layout';
10
10
  export * from './nav';
11
+ export * from './overlays';
11
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAG3C,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAG3C,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -1,9 +1,10 @@
1
- export { CharacterCount, Checkbox, CheckboxField, CheckboxGroup, ChoiceCard, Combobox, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxSeparator, CurrencyInput, EmailInput, Fieldset, FilePicker, FormErrorMessage, FormField, FormHelperText, InputAddon, InputGroup, Label, LabeledInput, Legend, Listbox, ListboxEmpty, ListboxGroup, ListboxItem, ListboxSeparator, MaskedInput, MultiSelect, MultiSelectContent, MultiSelectItem, MultiSelectTags, MultiSelectTrigger, NumberInput, PasswordInput, PasswordStrength, PercentInput, PinInput, Radio, RadioField, RadioGroup, SearchInput, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Slider, Switch, SwitchField, TelInput, TextInput, Textarea, UrlInput } from './chunk-SBVWECJP.js';
1
+ export { Calendar, CharacterCount, Checkbox, CheckboxField, CheckboxGroup, ChoiceCard, Combobox, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxSeparator, CurrencyInput, DateField, DatePicker, DateRangePicker, EmailInput, Fieldset, FilePicker, FormErrorMessage, FormField, FormHelperText, InputAddon, InputGroup, Label, LabeledInput, Legend, Listbox, ListboxEmpty, ListboxGroup, ListboxItem, ListboxSeparator, MaskedInput, MultiSelect, MultiSelectContent, MultiSelectItem, MultiSelectTags, MultiSelectTrigger, NumberInput, PasswordInput, PasswordStrength, PercentInput, PinInput, Radio, RadioField, RadioGroup, RangeCalendar, SearchInput, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Slider, Switch, SwitchField, TelInput, TextInput, Textarea, TimeField, TimePicker, UrlInput } from './chunk-PFM3IQKM.js';
2
2
  export { AspectRatio, Box, Center, Cluster, Container, Flex, Frame, Grid, HStack, Inline, ScrollArea, Spacer, Stack, TwoColumn, VStack, containerVariants, gridVariants, stackVariants } from './chunk-NKGNOOXJ.js';
3
- export { Breadcrumb, ContextMenu, ContextMenuContent, ContextMenuTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuTrigger, Menu, MenuGroup, MenuItem, MenuLabel, MenuSeparator, Menubar, MenubarContent, MenubarMenu, MenubarTrigger, NavItem, Pagination, menuItemVariants, menuLabelVariants, menuSeparatorVariants, menuVariants } from './chunk-3KGYKBW6.js';
3
+ export { Breadcrumb, ContextMenu, ContextMenuContent, ContextMenuTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuTrigger, Menu, MenuGroup, MenuItem, MenuLabel, MenuSeparator, Menubar, MenubarContent, MenubarMenu, MenubarTrigger, NavItem, Pagination, menuItemVariants, menuLabelVariants, menuSeparatorVariants, menuVariants } from './chunk-ZTHJ5OTI.js';
4
+ export { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, Backdrop, Dialog, DialogBody, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, HoverCard, HoverCardArrow, HoverCardContent, HoverCardTrigger, Popover, PopoverArrow, PopoverContent, PopoverTrigger } from './chunk-52DFDWY3.js';
4
5
  export { Button, ButtonGroup, CopyButton, DisclosureButton, FAB, IconButton, Link, OverlayButton, SegmentedControl, ToggleButton, ToggleButtonGroup, buttonVariants, fabVariants, iconButtonVariants, linkVariants, overlayButtonVariants, toggleButtonVariants } from './chunk-D5CHR6RX.js';
5
- export { Avatar, AvatarGroup, Badge, BadgeOverlay, Card, Code, CountBadge, DescriptionList, EmptyState, Heading, Highlight, Image, InfoRow, Kbd, KeyboardShortcut, Mark, NotificationDot, Quote, SectionHeader, Separator, Snippet, Stat, Status, Tag, Text, Tooltip, avatarVariants, badgeVariants, codeVariants, headingVariants, tagVariants, textVariants } from './chunk-55Y2JOBV.js';
6
- export { primitives_exports as primitives } from './chunk-CZ6FQILQ.js';
6
+ export { Avatar, AvatarGroup, Badge, BadgeOverlay, Card, Code, CountBadge, DescriptionList, EmptyState, Heading, Highlight, Image, InfoRow, Kbd, KeyboardShortcut, Mark, NotificationDot, Quote, SectionHeader, Separator, Snippet, Stat, Status, Tag, Text, Tooltip, avatarVariants, badgeVariants, codeVariants, headingVariants, tagVariants, textVariants } from './chunk-VTLWHUMD.js';
7
+ export { primitives_exports as primitives } from './chunk-YANOG5YR.js';
7
8
  export { hooks_exports as hooks } from './chunk-4P2TFUVW.js';
8
9
  import './chunk-33IOXQYO.js';
9
10
  import './chunk-KDXJQNB6.js';
package/dist/nav/index.js CHANGED
@@ -1,5 +1,5 @@
1
- export { Breadcrumb, ContextMenu, ContextMenuContent, ContextMenuTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuTrigger, Menu, MenuGroup, MenuItem, MenuLabel, MenuSeparator, Menubar, MenubarContent, MenubarMenu, MenubarTrigger, NavItem, Pagination, menuItemVariants, menuLabelVariants, menuSeparatorVariants, menuVariants } from '../chunk-3KGYKBW6.js';
2
- import '../chunk-CZ6FQILQ.js';
1
+ export { Breadcrumb, ContextMenu, ContextMenuContent, ContextMenuTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuTrigger, Menu, MenuGroup, MenuItem, MenuLabel, MenuSeparator, Menubar, MenubarContent, MenubarMenu, MenubarTrigger, NavItem, Pagination, menuItemVariants, menuLabelVariants, menuSeparatorVariants, menuVariants } from '../chunk-ZTHJ5OTI.js';
2
+ import '../chunk-YANOG5YR.js';
3
3
  import '../chunk-4P2TFUVW.js';
4
4
  import '../chunk-33IOXQYO.js';
5
5
  import '../chunk-KDXJQNB6.js';
@@ -0,0 +1,29 @@
1
+ import { type ButtonHTMLAttributes, type ReactNode } from 'react';
2
+ import { DialogBody, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, type DialogProps, type DialogContentProps } from '../dialog';
3
+ export type AlertDialogProps = Omit<DialogProps, 'role' | 'dismissOnOutsideClick'>;
4
+ export declare function AlertDialog(props: AlertDialogProps): import("react/jsx-runtime").JSX.Element;
5
+ export declare const AlertDialogContent: import("react").ForwardRefExoticComponent<DialogContentProps & import("react").RefAttributes<HTMLDivElement>>;
6
+ export interface AlertDialogActionProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {
7
+ /** Runs before the dialog closes. */
8
+ onAction?: () => void;
9
+ children: ReactNode;
10
+ }
11
+ export declare const AlertDialogAction: import("react").ForwardRefExoticComponent<AlertDialogActionProps & import("react").RefAttributes<HTMLButtonElement>>;
12
+ export interface AlertDialogCancelProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {
13
+ children: ReactNode;
14
+ }
15
+ export declare const AlertDialogCancel: import("react").ForwardRefExoticComponent<AlertDialogCancelProps & import("react").RefAttributes<HTMLButtonElement>>;
16
+ type AlertDialogComponent = typeof AlertDialog & {
17
+ Trigger: typeof DialogTrigger;
18
+ Content: typeof AlertDialogContent;
19
+ Header: typeof DialogHeader;
20
+ Title: typeof DialogTitle;
21
+ Description: typeof DialogDescription;
22
+ Body: typeof DialogBody;
23
+ Footer: typeof DialogFooter;
24
+ Action: typeof AlertDialogAction;
25
+ Cancel: typeof AlertDialogCancel;
26
+ };
27
+ declare const _default: AlertDialogComponent;
28
+ export default _default;
29
+ //# sourceMappingURL=AlertDialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AlertDialog.d.ts","sourceRoot":"","sources":["../../../src/overlays/alertDialog/AlertDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,oBAAoB,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE9E,OAAO,EAEL,UAAU,EAEV,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,aAAa,EAEb,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACxB,MAAM,WAAW,CAAC;AAEnB,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,uBAAuB,CAAC,CAAC;AAEnF,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,2CAElD;AAED,eAAO,MAAM,kBAAkB,+GAI9B,CAAC;AAEF,MAAM,WAAW,sBACf,SAAQ,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC;IACjE,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,eAAO,MAAM,iBAAiB,sHAoB7B,CAAC;AAEF,MAAM,WAAW,sBACf,SAAQ,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC;IACjE,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,eAAO,MAAM,iBAAiB,sHAe7B,CAAC;AAEF,KAAK,oBAAoB,GAAG,OAAO,WAAW,GAAG;IAC/C,OAAO,EAAE,OAAO,aAAa,CAAC;IAC9B,OAAO,EAAE,OAAO,kBAAkB,CAAC;IACnC,MAAM,EAAE,OAAO,YAAY,CAAC;IAC5B,KAAK,EAAE,OAAO,WAAW,CAAC;IAC1B,WAAW,EAAE,OAAO,iBAAiB,CAAC;IACtC,IAAI,EAAE,OAAO,UAAU,CAAC;IACxB,MAAM,EAAE,OAAO,YAAY,CAAC;IAC5B,MAAM,EAAE,OAAO,iBAAiB,CAAC;IACjC,MAAM,EAAE,OAAO,iBAAiB,CAAC;CAClC,CAAC;wBAY4B,oBAAoB;AAAlD,wBAAmD"}
@@ -0,0 +1,2 @@
1
+ export { AlertDialog, AlertDialogContent, AlertDialogAction, AlertDialogCancel, type AlertDialogProps, type AlertDialogActionProps, type AlertDialogCancelProps, } from './AlertDialog';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/overlays/alertDialog/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,GAC5B,MAAM,eAAe,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { type HTMLAttributes } from 'react';
2
+ export interface BackdropProps extends HTMLAttributes<HTMLDivElement> {
3
+ /** Mount state. Default `true`. */
4
+ open?: boolean;
5
+ /** Apply backdrop-blur. */
6
+ blur?: boolean;
7
+ /** When `'none'`, clicks pass through. Default `'auto'`. */
8
+ pointerEvents?: 'auto' | 'none';
9
+ /** Skip the Portal wrap — render in place. */
10
+ inline?: boolean;
11
+ }
12
+ /**
13
+ * Fixed-position scrim. Used by Dialog / Drawer / LoadingOverlay; also a
14
+ * public component for custom overlay surfaces.
15
+ */
16
+ export declare const Backdrop: import("react").ForwardRefExoticComponent<BackdropProps & import("react").RefAttributes<HTMLDivElement>>;
17
+ //# sourceMappingURL=Backdrop.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Backdrop.d.ts","sourceRoot":"","sources":["../../../src/overlays/backdrop/Backdrop.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AAIxD,MAAM,WAAW,aAAc,SAAQ,cAAc,CAAC,cAAc,CAAC;IACnE,mCAAmC;IACnC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,2BAA2B;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,4DAA4D;IAC5D,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,8CAA8C;IAC9C,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ,0GAmBnB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { Backdrop, type BackdropProps } from './Backdrop';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/overlays/backdrop/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,63 @@
1
+ import { type ButtonHTMLAttributes, type HTMLAttributes, type ReactNode } from 'react';
2
+ export interface DialogProps {
3
+ open?: boolean;
4
+ defaultOpen?: boolean;
5
+ onOpenChange?: (open: boolean) => void;
6
+ dismissOnOutsideClick?: boolean;
7
+ dismissOnEscape?: boolean;
8
+ /** Internal — `AlertDialog` overrides this. */
9
+ role?: 'dialog' | 'alertdialog';
10
+ children: ReactNode;
11
+ }
12
+ export declare function Dialog({ open: openProp, defaultOpen, onOpenChange, dismissOnOutsideClick, dismissOnEscape, role, children, }: DialogProps): import("react/jsx-runtime").JSX.Element;
13
+ export interface DialogTriggerProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {
14
+ asChild?: boolean;
15
+ children: ReactNode;
16
+ }
17
+ export declare const DialogTrigger: import("react").ForwardRefExoticComponent<DialogTriggerProps & import("react").RefAttributes<HTMLButtonElement>>;
18
+ export interface DialogContentProps extends HTMLAttributes<HTMLDivElement> {
19
+ /** Disable the default backdrop. */
20
+ hideBackdrop?: boolean;
21
+ /** Apply backdrop blur. */
22
+ blur?: boolean;
23
+ children: ReactNode;
24
+ }
25
+ export declare const DialogContent: import("react").ForwardRefExoticComponent<DialogContentProps & import("react").RefAttributes<HTMLDivElement>>;
26
+ export interface DialogHeaderProps extends HTMLAttributes<HTMLDivElement> {
27
+ children: ReactNode;
28
+ }
29
+ export declare function DialogHeader({ className, children, ...rest }: DialogHeaderProps): import("react/jsx-runtime").JSX.Element;
30
+ export interface DialogTitleProps extends HTMLAttributes<HTMLHeadingElement> {
31
+ children: ReactNode;
32
+ }
33
+ export declare function DialogTitle({ className, children, ...rest }: DialogTitleProps): import("react/jsx-runtime").JSX.Element;
34
+ export interface DialogDescriptionProps extends HTMLAttributes<HTMLParagraphElement> {
35
+ children: ReactNode;
36
+ }
37
+ export declare function DialogDescription({ className, children, ...rest }: DialogDescriptionProps): import("react/jsx-runtime").JSX.Element;
38
+ export interface DialogBodyProps extends HTMLAttributes<HTMLDivElement> {
39
+ children: ReactNode;
40
+ }
41
+ export declare function DialogBody({ className, children, ...rest }: DialogBodyProps): import("react/jsx-runtime").JSX.Element;
42
+ export interface DialogFooterProps extends HTMLAttributes<HTMLDivElement> {
43
+ children: ReactNode;
44
+ }
45
+ export declare function DialogFooter({ className, children, ...rest }: DialogFooterProps): import("react/jsx-runtime").JSX.Element;
46
+ export interface DialogCloseProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {
47
+ asChild?: boolean;
48
+ children?: ReactNode;
49
+ }
50
+ export declare const DialogClose: import("react").ForwardRefExoticComponent<DialogCloseProps & import("react").RefAttributes<HTMLButtonElement>>;
51
+ type DialogComponent = typeof Dialog & {
52
+ Trigger: typeof DialogTrigger;
53
+ Content: typeof DialogContent;
54
+ Header: typeof DialogHeader;
55
+ Title: typeof DialogTitle;
56
+ Description: typeof DialogDescription;
57
+ Body: typeof DialogBody;
58
+ Footer: typeof DialogFooter;
59
+ Close: typeof DialogClose;
60
+ };
61
+ declare const _default: DialogComponent;
62
+ export default _default;
63
+ //# sourceMappingURL=Dialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../src/overlays/dialog/Dialog.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { Dialog, DialogTrigger, DialogContent, DialogHeader, DialogTitle, DialogDescription, DialogBody, DialogFooter, DialogClose, type DialogProps, type DialogTriggerProps, type DialogContentProps, type DialogHeaderProps, type DialogTitleProps, type DialogDescriptionProps, type DialogBodyProps, type DialogFooterProps, type DialogCloseProps, } from './Dialog';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/overlays/dialog/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,aAAa,EACb,aAAa,EACb,YAAY,EACZ,WAAW,EACX,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,WAAW,EACX,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,GACtB,MAAM,UAAU,CAAC"}
@@ -0,0 +1,57 @@
1
+ import { type ButtonHTMLAttributes, type HTMLAttributes, type ReactNode } from 'react';
2
+ export type DrawerSide = 'top' | 'right' | 'bottom' | 'left';
3
+ export interface DrawerProps {
4
+ open?: boolean;
5
+ defaultOpen?: boolean;
6
+ onOpenChange?: (open: boolean) => void;
7
+ side?: DrawerSide;
8
+ dismissOnOutsideClick?: boolean;
9
+ dismissOnEscape?: boolean;
10
+ children: ReactNode;
11
+ }
12
+ export declare function Drawer({ open: openProp, defaultOpen, onOpenChange, side, dismissOnOutsideClick, dismissOnEscape, children, }: DrawerProps): import("react/jsx-runtime").JSX.Element;
13
+ export interface DrawerTriggerProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {
14
+ asChild?: boolean;
15
+ children: ReactNode;
16
+ }
17
+ export declare const DrawerTrigger: import("react").ForwardRefExoticComponent<DrawerTriggerProps & import("react").RefAttributes<HTMLButtonElement>>;
18
+ export interface DrawerContentProps extends HTMLAttributes<HTMLDivElement> {
19
+ hideBackdrop?: boolean;
20
+ blur?: boolean;
21
+ children: ReactNode;
22
+ }
23
+ export declare const DrawerContent: import("react").ForwardRefExoticComponent<DrawerContentProps & import("react").RefAttributes<HTMLDivElement>>;
24
+ export interface DrawerHeaderProps extends HTMLAttributes<HTMLDivElement> {
25
+ children: ReactNode;
26
+ }
27
+ export declare function DrawerHeader({ className, children, ...rest }: DrawerHeaderProps): import("react/jsx-runtime").JSX.Element;
28
+ export declare function DrawerTitle({ className, children, ...rest }: HTMLAttributes<HTMLHeadingElement> & {
29
+ children: ReactNode;
30
+ }): import("react/jsx-runtime").JSX.Element;
31
+ export declare function DrawerDescription({ className, children, ...rest }: HTMLAttributes<HTMLParagraphElement> & {
32
+ children: ReactNode;
33
+ }): import("react/jsx-runtime").JSX.Element;
34
+ export declare function DrawerBody({ className, children, ...rest }: HTMLAttributes<HTMLDivElement> & {
35
+ children: ReactNode;
36
+ }): import("react/jsx-runtime").JSX.Element;
37
+ export declare function DrawerFooter({ className, children, ...rest }: HTMLAttributes<HTMLDivElement> & {
38
+ children: ReactNode;
39
+ }): import("react/jsx-runtime").JSX.Element;
40
+ export interface DrawerCloseProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {
41
+ asChild?: boolean;
42
+ children?: ReactNode;
43
+ }
44
+ export declare const DrawerClose: import("react").ForwardRefExoticComponent<DrawerCloseProps & import("react").RefAttributes<HTMLButtonElement>>;
45
+ type DrawerComponent = typeof Drawer & {
46
+ Trigger: typeof DrawerTrigger;
47
+ Content: typeof DrawerContent;
48
+ Header: typeof DrawerHeader;
49
+ Title: typeof DrawerTitle;
50
+ Description: typeof DrawerDescription;
51
+ Body: typeof DrawerBody;
52
+ Footer: typeof DrawerFooter;
53
+ Close: typeof DrawerClose;
54
+ };
55
+ declare const _default: DrawerComponent;
56
+ export default _default;
57
+ //# sourceMappingURL=Drawer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Drawer.d.ts","sourceRoot":"","sources":["../../../src/overlays/drawer/Drawer.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { Drawer, DrawerTrigger, DrawerContent, DrawerHeader, DrawerTitle, DrawerDescription, DrawerBody, DrawerFooter, DrawerClose, type DrawerProps, type DrawerTriggerProps, type DrawerContentProps, type DrawerHeaderProps, type DrawerCloseProps, type DrawerSide, } from './Drawer';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/overlays/drawer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,aAAa,EACb,aAAa,EACb,YAAY,EACZ,WAAW,EACX,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,WAAW,EACX,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,UAAU,GAChB,MAAM,UAAU,CAAC"}
@@ -0,0 +1,37 @@
1
+ import { type HTMLAttributes, type ReactElement, type ReactNode, type Ref } from 'react';
2
+ import { type AnchoredPositionerProps, type OverlayArrowProps } from '../../primitives';
3
+ export interface HoverCardProps {
4
+ open?: boolean;
5
+ defaultOpen?: boolean;
6
+ onOpenChange?: (open: boolean) => void;
7
+ openDelay?: number;
8
+ closeDelay?: number;
9
+ placement?: AnchoredPositionerProps['placement'];
10
+ offset?: number;
11
+ children: ReactNode;
12
+ }
13
+ export declare function HoverCard({ open: openProp, defaultOpen, onOpenChange, openDelay, closeDelay, placement, offset, children, }: HoverCardProps): import("react/jsx-runtime").JSX.Element;
14
+ export interface HoverCardTriggerProps {
15
+ asChild?: boolean;
16
+ children: ReactElement;
17
+ }
18
+ export declare function HoverCardTrigger({ children }: HoverCardTriggerProps): ReactElement<{
19
+ ref?: Ref<HTMLElement>;
20
+ onPointerEnter?: (e: React.PointerEvent) => void;
21
+ onPointerLeave?: (e: React.PointerEvent) => void;
22
+ onFocus?: (e: React.FocusEvent) => void;
23
+ onBlur?: (e: React.FocusEvent) => void;
24
+ }, string | import("react").JSXElementConstructor<any>>;
25
+ export interface HoverCardContentProps extends HTMLAttributes<HTMLDivElement> {
26
+ children: ReactNode;
27
+ }
28
+ export declare const HoverCardContent: import("react").ForwardRefExoticComponent<HoverCardContentProps & import("react").RefAttributes<HTMLDivElement>>;
29
+ export declare function HoverCardArrow({ className, ...rest }: OverlayArrowProps): import("react/jsx-runtime").JSX.Element;
30
+ type HoverCardComponent = typeof HoverCard & {
31
+ Trigger: typeof HoverCardTrigger;
32
+ Content: typeof HoverCardContent;
33
+ Arrow: typeof HoverCardArrow;
34
+ };
35
+ declare const _default: HoverCardComponent;
36
+ export default _default;
37
+ //# sourceMappingURL=HoverCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HoverCard.d.ts","sourceRoot":"","sources":["../../../src/overlays/hoverCard/HoverCard.tsx"],"names":[],"mappings":"AAAA,OAAO,EASL,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,GAAG,EACT,MAAM,OAAO,CAAC;AAGf,OAAO,EAIL,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACvB,MAAM,kBAAkB,CAAC;AAqB1B,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,uBAAuB,CAAC,WAAW,CAAC,CAAC;IACjD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,wBAAgB,SAAS,CAAC,EACxB,IAAI,EAAE,QAAQ,EACd,WAAmB,EACnB,YAAY,EACZ,SAAe,EACf,UAAgB,EAChB,SAAoB,EACpB,MAAU,EACV,QAAQ,GACT,EAAE,cAAc,2CAwChB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,YAAY,CAAC;CACxB;AAED,wBAAgB,gBAAgB,CAAC,EAAE,QAAQ,EAAE,EAAE,qBAAqB;UAI1D,GAAG,CAAC,WAAW,CAAC;qBACL,CAAC,CAAC,EAAE,KAAK,CAAC,YAAY,KAAK,IAAI;qBAC/B,CAAC,CAAC,EAAE,KAAK,CAAC,YAAY,KAAK,IAAI;cACtC,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI;aAC9B,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI;wDAwBzC;AAED,MAAM,WAAW,qBAAsB,SAAQ,cAAc,CAAC,cAAc,CAAC;IAC3E,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,eAAO,MAAM,gBAAgB,kHAkC5B,CAAC;AAEF,wBAAgB,cAAc,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,iBAAiB,2CAEvE;AAED,KAAK,kBAAkB,GAAG,OAAO,SAAS,GAAG;IAC3C,OAAO,EAAE,OAAO,gBAAgB,CAAC;IACjC,OAAO,EAAE,OAAO,gBAAgB,CAAC;IACjC,KAAK,EAAE,OAAO,cAAc,CAAC;CAC9B,CAAC;wBAM0B,kBAAkB;AAA9C,wBAA+C"}
@@ -0,0 +1,2 @@
1
+ export { HoverCard, HoverCardTrigger, HoverCardContent, HoverCardArrow, type HoverCardProps, type HoverCardTriggerProps, type HoverCardContentProps, } from './HoverCard';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/overlays/hoverCard/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,GAC3B,MAAM,aAAa,CAAC"}
@@ -0,0 +1,7 @@
1
+ export * from './backdrop';
2
+ export * from './dialog';
3
+ export * from './alertDialog';
4
+ export * from './drawer';
5
+ export * from './popover';
6
+ export * from './hoverCard';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/overlays/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
@@ -0,0 +1,11 @@
1
+ export { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, Backdrop, Dialog, DialogBody, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, HoverCard, HoverCardArrow, HoverCardContent, HoverCardTrigger, Popover, PopoverArrow, PopoverContent, PopoverTrigger } from '../chunk-52DFDWY3.js';
2
+ import '../chunk-YANOG5YR.js';
3
+ import '../chunk-4P2TFUVW.js';
4
+ import '../chunk-33IOXQYO.js';
5
+ import '../chunk-KDXJQNB6.js';
6
+ import '../chunk-BMBIZLO4.js';
7
+ import '../chunk-DN7WBRIV.js';
8
+ import '../chunk-KZ4VFY2T.js';
9
+ import '../chunk-PZ5AY32C.js';
10
+ //# sourceMappingURL=index.js.map
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
@@ -0,0 +1,31 @@
1
+ import { type ButtonHTMLAttributes, type HTMLAttributes, type ReactNode } from 'react';
2
+ import { type AnchoredPositionerProps, type OverlayArrowProps } from '../../primitives';
3
+ export interface PopoverProps {
4
+ open?: boolean;
5
+ defaultOpen?: boolean;
6
+ onOpenChange?: (open: boolean) => void;
7
+ placement?: AnchoredPositionerProps['placement'];
8
+ offset?: number;
9
+ dismissOnOutsideClick?: boolean;
10
+ dismissOnEscape?: boolean;
11
+ children: ReactNode;
12
+ }
13
+ export declare function Popover({ open: openProp, defaultOpen, onOpenChange, placement, offset, dismissOnOutsideClick, dismissOnEscape, children, }: PopoverProps): import("react/jsx-runtime").JSX.Element;
14
+ export interface PopoverTriggerProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {
15
+ asChild?: boolean;
16
+ children: ReactNode;
17
+ }
18
+ export declare const PopoverTrigger: import("react").ForwardRefExoticComponent<PopoverTriggerProps & import("react").RefAttributes<HTMLButtonElement>>;
19
+ export interface PopoverContentProps extends HTMLAttributes<HTMLDivElement> {
20
+ children: ReactNode;
21
+ }
22
+ export declare const PopoverContent: import("react").ForwardRefExoticComponent<PopoverContentProps & import("react").RefAttributes<HTMLDivElement>>;
23
+ export declare function PopoverArrow({ className, ...rest }: OverlayArrowProps): import("react/jsx-runtime").JSX.Element;
24
+ type PopoverComponent = typeof Popover & {
25
+ Trigger: typeof PopoverTrigger;
26
+ Content: typeof PopoverContent;
27
+ Arrow: typeof PopoverArrow;
28
+ };
29
+ declare const _default: PopoverComponent;
30
+ export default _default;
31
+ //# sourceMappingURL=Popover.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Popover.d.ts","sourceRoot":"","sources":["../../../src/overlays/popover/Popover.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAIf,OAAO,EAML,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACvB,MAAM,kBAAkB,CAAC;AAoB1B,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,SAAS,CAAC,EAAE,uBAAuB,CAAC,WAAW,CAAC,CAAC;IACjD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,wBAAgB,OAAO,CAAC,EACtB,IAAI,EAAE,QAAQ,EACd,WAAmB,EACnB,YAAY,EACZ,SAAoB,EACpB,MAAU,EACV,qBAA4B,EAC5B,eAAsB,EACtB,QAAQ,GACT,EAAE,YAAY,2CAsBd;AAED,MAAM,WAAW,mBACf,SAAQ,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC;IACjE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,eAAO,MAAM,cAAc,mHAsB1B,CAAC;AAEF,MAAM,WAAW,mBAAoB,SAAQ,cAAc,CAAC,cAAc,CAAC;IACzE,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,eAAO,MAAM,cAAc,gHA0C1B,CAAC;AAEF,wBAAgB,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,iBAAiB,2CAErE;AAED,KAAK,gBAAgB,GAAG,OAAO,OAAO,GAAG;IACvC,OAAO,EAAE,OAAO,cAAc,CAAC;IAC/B,OAAO,EAAE,OAAO,cAAc,CAAC;IAC/B,KAAK,EAAE,OAAO,YAAY,CAAC;CAC5B,CAAC;wBAMwB,gBAAgB;AAA1C,wBAA2C"}
@@ -0,0 +1,2 @@
1
+ export { Popover, PopoverTrigger, PopoverContent, PopoverArrow, type PopoverProps, type PopoverTriggerProps, type PopoverContentProps, } from './Popover';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/overlays/popover/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,cAAc,EACd,cAAc,EACd,YAAY,EACZ,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,GACzB,MAAM,WAAW,CAAC"}
@@ -11,4 +11,5 @@ export * from './rovingFocusGroup';
11
11
  export * from './collection';
12
12
  export * from './formControlContext';
13
13
  export * from './scrollLockProvider';
14
+ export * from './overlayArrow';
14
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/primitives/index.ts"],"names":[],"mappings":"AAGA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/primitives/index.ts"],"names":[],"mappings":"AAGA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,YAAY,CAAC;AAC3B,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC"}
@@ -1,4 +1,4 @@
1
- export { AccessibleIcon, AnchoredPositioner, DirectionProvider, DismissableLayer, FocusScope, FormControlProvider, Portal, Presence, RovingFocusGroup, ScrollLockProvider, VisuallyHidden, createCollection, useDirection, useFormControl, useRovingFocusItem } from '../chunk-CZ6FQILQ.js';
1
+ export { AccessibleIcon, AnchoredPositioner, DirectionProvider, DismissableLayer, FocusScope, FormControlProvider, OverlayArrow, Portal, Presence, RovingFocusGroup, ScrollLockProvider, VisuallyHidden, createCollection, useDirection, useFormControl, useRovingFocusItem } from '../chunk-YANOG5YR.js';
2
2
  export { Slot } from '../chunk-33IOXQYO.js';
3
3
  import '../chunk-KDXJQNB6.js';
4
4
  import '../chunk-DN7WBRIV.js';
@@ -0,0 +1,19 @@
1
+ import { type SVGAttributes } from 'react';
2
+ export interface OverlayArrowProps extends SVGAttributes<SVGSVGElement> {
3
+ /** Arrow width in px. Default 12. */
4
+ width?: number;
5
+ /** Arrow height in px. Default 6. */
6
+ height?: number;
7
+ }
8
+ /**
9
+ * Tip-arrow primitive for floating overlays (Tooltip, Popover, HoverCard).
10
+ *
11
+ * Renders a minimal SVG triangle with `fill="currentColor"` — color follows
12
+ * the consuming overlay's background via Tailwind's `text-*` utilities.
13
+ *
14
+ * Pair with Floating UI's `arrow()` middleware to position. The middleware
15
+ * exposes the arrow's `x` / `y` offset on the resolved data; consumers apply
16
+ * those as inline styles to the wrapping span.
17
+ */
18
+ export declare const OverlayArrow: import("react").ForwardRefExoticComponent<OverlayArrowProps & import("react").RefAttributes<SVGSVGElement>>;
19
+ //# sourceMappingURL=OverlayArrow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OverlayArrow.d.ts","sourceRoot":"","sources":["../../../src/primitives/overlayArrow/OverlayArrow.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAEvD,MAAM,WAAW,iBAAkB,SAAQ,aAAa,CAAC,aAAa,CAAC;IACrE,qCAAqC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,YAAY,6GAgBxB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { OverlayArrow, type OverlayArrowProps } from './OverlayArrow';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/primitives/overlayArrow/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,gBAAgB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wow-two-beta/ui",
3
- "version": "0.0.9",
3
+ "version": "0.0.11",
4
4
  "description": "Beta-forever React UI library for the wow-two ecosystem.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -76,6 +76,10 @@
76
76
  "import": "./dist/nav/index.js",
77
77
  "types": "./dist/nav/index.d.ts"
78
78
  },
79
+ "./overlays": {
80
+ "import": "./dist/overlays/index.js",
81
+ "types": "./dist/overlays/index.d.ts"
82
+ },
79
83
  "./styles.css": "./dist/index.css"
80
84
  },
81
85
  "scripts": {
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/primitives/index.ts","../src/primitives/portal/Portal.tsx","../src/primitives/visuallyHidden/VisuallyHidden.tsx","../src/primitives/presence/Presence.tsx","../src/primitives/directionProvider/DirectionProvider.tsx","../src/primitives/accessibleIcon/AccessibleIcon.tsx","../src/primitives/focusScope/FocusScope.tsx","../src/primitives/dismissableLayer/DismissableLayer.tsx","../src/primitives/anchoredPositioner/AnchoredPositioner.tsx","../src/primitives/rovingFocusGroup/RovingFocusGroup.tsx","../src/primitives/collection/Collection.tsx","../src/primitives/formControlContext/FormControlContext.tsx","../src/primitives/scrollLockProvider/ScrollLockProvider.tsx"],"names":["jsx","isValidElement","cloneElement","RadixFocusScope","forwardRef","useRef","useEffect","offset","offsetMiddleware","createContext","useState","useContext","useId","useCallback","useMemo","Fragment"],"mappings":"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","file":"chunk-CZ6FQILQ.js","sourcesContent":["// L2 — headless primitives. Behavior + a11y, no visual styling beyond layout.\n// Foundation layer; cannot import upward (enforced by ESLint boundaries).\n\nexport * from './slot';\nexport * from './portal';\nexport * from './visuallyHidden';\nexport * from './presence';\nexport * from './directionProvider';\nexport * from './accessibleIcon';\nexport * from './focusScope';\nexport * from './dismissableLayer';\nexport * from './anchoredPositioner';\nexport * from './rovingFocusGroup';\nexport * from './collection';\nexport * from './formControlContext';\nexport * from './scrollLockProvider';\n","import { type ReactNode } from 'react';\nimport { createPortal } from 'react-dom';\n\nexport interface PortalProps {\n children: ReactNode;\n /** Container to render into. Default: `document.body`. */\n container?: HTMLElement | null;\n /** Optional named layer — sets `data-portal-name` on the wrapper. */\n name?: string;\n}\n\n/**\n * Render children into a different DOM node (default `document.body`).\n * Client-only — package targets pure CSR consumers.\n */\nexport function Portal({ children, container, name }: PortalProps): ReactNode {\n const target = container ?? document.body;\n return createPortal(<div data-portal-name={name}>{children}</div>, target);\n}\n","import { forwardRef, type HTMLAttributes } from 'react';\nimport { cn } from '../../utils/cn';\n\nexport type VisuallyHiddenProps = HTMLAttributes<HTMLSpanElement>;\n\n/**\n * Visually hidden span — content removed from the visual layout but still\n * announced to screen readers. Use for accessible labels on icon-only\n * affordances and live-region announcements.\n */\nexport const VisuallyHidden = forwardRef<HTMLSpanElement, VisuallyHiddenProps>(\n ({ className, ...props }, ref) => (\n <span\n ref={ref}\n className={cn(\n 'absolute h-px w-px overflow-hidden whitespace-nowrap border-0 p-0',\n 'm-[-1px] [clip:rect(0_0_0_0)] [clip-path:inset(50%)]',\n className,\n )}\n {...props}\n />\n ),\n);\nVisuallyHidden.displayName = 'VisuallyHidden';\n","import {\n cloneElement,\n isValidElement,\n useEffect,\n useRef,\n useState,\n type ReactElement,\n type Ref,\n} from 'react';\nimport { composeRefs } from '../../utils/composeRefs';\n\nexport interface PresenceProps {\n /** Whether the content should be present. Toggle false to trigger exit. */\n present: boolean;\n /** Single React element child — receives `ref` and `data-state` (\"open\" | \"closed\"). */\n children: ReactElement;\n}\n\n/**\n * Defer unmount until the child's exit animation/transition finishes.\n * Pass `present={false}` to start the exit; the child stays mounted with\n * `data-state=\"closed\"` until `animationend`/`transitionend` fires.\n */\nexport function Presence({ present, children }: PresenceProps): ReactElement | null {\n const [rendered, setRendered] = useState(present);\n const ref = useRef<HTMLElement | null>(null);\n\n useEffect(() => {\n if (present) {\n setRendered(true);\n return;\n }\n const node = ref.current;\n if (!node) {\n setRendered(false);\n return;\n }\n const cs = getComputedStyle(node);\n const hasAnim = cs.animationName !== 'none' && cs.animationDuration !== '0s';\n const hasTrans = cs.transitionDuration !== '0s';\n if (!hasAnim && !hasTrans) {\n setRendered(false);\n return;\n }\n const onEnd = () => setRendered(false);\n node.addEventListener('animationend', onEnd);\n node.addEventListener('transitionend', onEnd);\n return () => {\n node.removeEventListener('animationend', onEnd);\n node.removeEventListener('transitionend', onEnd);\n };\n }, [present]);\n\n if (!rendered || !isValidElement(children)) return null;\n const child = children as ReactElement<{ ref?: Ref<HTMLElement> }> & { ref?: Ref<HTMLElement> };\n return cloneElement(child, {\n ref: composeRefs(ref, child.ref),\n 'data-state': present ? 'open' : 'closed',\n } as Partial<typeof child.props>);\n}\n","import { createContext, useContext, type ReactNode } from 'react';\n\nexport type Direction = 'ltr' | 'rtl';\n\nconst DirectionContext = createContext<Direction>('ltr');\n\nexport interface DirectionProviderProps {\n dir: Direction;\n children: ReactNode;\n}\n\n/**\n * Provide reading direction to descendants. Components that mirror in RTL\n * (Tabs arrow keys, Slider, Carousel, etc.) read this via `useDirection()`.\n */\nexport function DirectionProvider({ dir, children }: DirectionProviderProps) {\n return <DirectionContext.Provider value={dir}>{children}</DirectionContext.Provider>;\n}\n\nexport function useDirection(): Direction {\n return useContext(DirectionContext);\n}\n","import { cloneElement, isValidElement, type ReactElement } from 'react';\nimport { VisuallyHidden } from '../visuallyHidden/VisuallyHidden';\n\nexport interface AccessibleIconProps {\n /** Required accessible label for the icon. */\n label: string;\n /** Single icon element — will receive `aria-hidden` so SR reads only the label. */\n children: ReactElement;\n}\n\n/**\n * Wrap an icon-only element with an accessible label. The icon is hidden\n * from assistive tech and a `VisuallyHidden` sibling provides the label.\n */\nexport function AccessibleIcon({ label, children }: AccessibleIconProps) {\n const icon = isValidElement(children)\n ? cloneElement(children as ReactElement<{ 'aria-hidden'?: boolean | string; focusable?: string }>, {\n 'aria-hidden': 'true',\n focusable: 'false',\n })\n : children;\n return (\n <>\n {icon}\n <VisuallyHidden>{label}</VisuallyHidden>\n </>\n );\n}\n","import { FocusScope as RadixFocusScope } from '@radix-ui/react-focus-scope';\n\nexport type FocusScopeProps = React.ComponentProps<typeof RadixFocusScope>;\n\n/**\n * Trap focus within children. On unmount, returns focus to the previously\n * focused element. Pass `loop` to wrap Tab navigation; `trapped` to enable\n * the trap (default true while mounted).\n *\n * Wraps `@radix-ui/react-focus-scope` — battle-tested implementation.\n */\nexport const FocusScope = RadixFocusScope;\n","import {\n forwardRef,\n useEffect,\n useRef,\n type HTMLAttributes,\n} from 'react';\nimport { composeRefs } from '../../utils/composeRefs';\n\ninterface LayerEntry {\n node: HTMLElement;\n onEscape?: (event: KeyboardEvent) => void;\n onOutsidePointerDown?: (event: PointerEvent) => void;\n}\n\nconst layerStack: LayerEntry[] = [];\n\nexport interface DismissableLayerProps extends HTMLAttributes<HTMLDivElement> {\n /** Called when Escape is pressed and this is the topmost layer. */\n onEscape?: (event: KeyboardEvent) => void;\n /** Called when a pointerdown lands outside this layer's DOM and this is topmost. */\n onOutsidePointerDown?: (event: PointerEvent) => void;\n /** Disable the Escape listener for this layer. */\n disableEscape?: boolean;\n /** Disable the outside-pointer-down listener for this layer. */\n disableOutsideClick?: boolean;\n}\n\n/**\n * Stack-aware dismissal layer. Multiple layers may stack (modal > popover);\n * only the topmost reacts to Escape / outside click. Used as the base of\n * Modal, Drawer, Popover, Menu, HoverCard, ContextMenu.\n */\nexport const DismissableLayer = forwardRef<HTMLDivElement, DismissableLayerProps>(\n (\n { onEscape, onOutsidePointerDown, disableEscape, disableOutsideClick, ...props },\n forwardedRef,\n ) => {\n const ref = useRef<HTMLDivElement | null>(null);\n\n useEffect(() => {\n const node = ref.current;\n if (!node) return;\n const entry: LayerEntry = { node, onEscape, onOutsidePointerDown };\n layerStack.push(entry);\n return () => {\n const idx = layerStack.indexOf(entry);\n if (idx >= 0) layerStack.splice(idx, 1);\n };\n }, [onEscape, onOutsidePointerDown]);\n\n useEffect(() => {\n if (disableEscape) return;\n const onKeyDown = (e: KeyboardEvent) => {\n if (e.key !== 'Escape') return;\n const top = layerStack[layerStack.length - 1];\n if (top && top.node === ref.current) top.onEscape?.(e);\n };\n document.addEventListener('keydown', onKeyDown);\n return () => document.removeEventListener('keydown', onKeyDown);\n }, [disableEscape]);\n\n useEffect(() => {\n if (disableOutsideClick) return;\n const onPointer = (e: PointerEvent) => {\n const top = layerStack[layerStack.length - 1];\n if (!top || top.node !== ref.current) return;\n const target = e.target as Node | null;\n if (!target || ref.current?.contains(target)) return;\n top.onOutsidePointerDown?.(e);\n };\n document.addEventListener('pointerdown', onPointer, true);\n return () => document.removeEventListener('pointerdown', onPointer, true);\n }, [disableOutsideClick]);\n\n return <div ref={composeRefs(forwardedRef, ref)} {...props} />;\n },\n);\nDismissableLayer.displayName = 'DismissableLayer';\n","import {\n autoUpdate,\n flip,\n offset as offsetMiddleware,\n shift,\n useFloating,\n type Placement,\n} from '@floating-ui/react';\nimport { forwardRef, type HTMLAttributes, type ReactNode } from 'react';\nimport { composeRefs } from '../../utils/composeRefs';\n\nexport interface AnchoredPositionerProps extends HTMLAttributes<HTMLDivElement> {\n /** The element the floating layer should be anchored to. */\n anchor: HTMLElement | null;\n /** Floating UI placement. Default `bottom`. */\n placement?: Placement;\n /** Distance between anchor and floating element in px. Default 8. */\n offset?: number;\n /** Render the floating element only when open. */\n open?: boolean;\n children: ReactNode;\n}\n\n/**\n * Position children relative to an anchor element using Floating UI.\n * Auto-flips and shifts to stay in viewport. Use as the positioning surface\n * for Tooltip, Popover, Menu, HoverCard.\n */\nexport const AnchoredPositioner = forwardRef<HTMLDivElement, AnchoredPositionerProps>(\n (\n { anchor, placement = 'bottom', offset = 8, open = true, children, style, ...props },\n forwardedRef,\n ) => {\n const { refs, floatingStyles } = useFloating({\n open,\n placement,\n middleware: [offsetMiddleware(offset), flip(), shift({ padding: 8 })],\n whileElementsMounted: autoUpdate,\n elements: { reference: anchor },\n });\n\n if (!open) return null;\n\n return (\n <div\n ref={composeRefs(forwardedRef, refs.setFloating)}\n style={{ ...floatingStyles, ...style }}\n {...props}\n >\n {children}\n </div>\n );\n },\n);\nAnchoredPositioner.displayName = 'AnchoredPositioner';\n","import {\n createContext,\n useCallback,\n useContext,\n useEffect,\n useId,\n useMemo,\n useRef,\n useState,\n type HTMLAttributes,\n type KeyboardEvent,\n type ReactNode,\n} from 'react';\n\nexport type Orientation = 'horizontal' | 'vertical' | 'both';\n\ninterface RovingFocusContextValue {\n register: (id: string) => void;\n unregister: (id: string) => void;\n focusedId: string | null;\n setFocusedId: (id: string) => void;\n onItemKeyDown: (event: KeyboardEvent, id: string) => void;\n}\n\nconst RovingFocusContext = createContext<RovingFocusContextValue | null>(null);\n\nexport interface RovingFocusGroupProps extends HTMLAttributes<HTMLDivElement> {\n orientation?: Orientation;\n loop?: boolean;\n children: ReactNode;\n}\n\n/**\n * Provide arrow-key navigation for a group of focusable children. Children\n * call `useRovingFocusItem()` to register and receive `tabIndex` / event\n * handlers. Used by Tabs, ToggleGroup, RadioGroup, Menu.\n */\nexport function RovingFocusGroup({\n orientation = 'horizontal',\n loop = true,\n children,\n ...props\n}: RovingFocusGroupProps) {\n const items = useRef<string[]>([]);\n const [focusedId, setFocusedId] = useState<string | null>(null);\n\n const register = useCallback((id: string) => {\n if (!items.current.includes(id)) items.current.push(id);\n setFocusedId((current) => current ?? id);\n }, []);\n\n const unregister = useCallback((id: string) => {\n items.current = items.current.filter((i) => i !== id);\n }, []);\n\n const onItemKeyDown = useCallback(\n (event: KeyboardEvent, id: string) => {\n const list = items.current;\n const idx = list.indexOf(id);\n if (idx === -1) return;\n const isVert = orientation === 'vertical' || orientation === 'both';\n const isHoriz = orientation === 'horizontal' || orientation === 'both';\n let next = idx;\n if ((event.key === 'ArrowRight' && isHoriz) || (event.key === 'ArrowDown' && isVert)) {\n next = idx + 1;\n if (next >= list.length) next = loop ? 0 : list.length - 1;\n } else if ((event.key === 'ArrowLeft' && isHoriz) || (event.key === 'ArrowUp' && isVert)) {\n next = idx - 1;\n if (next < 0) next = loop ? list.length - 1 : 0;\n } else if (event.key === 'Home') {\n next = 0;\n } else if (event.key === 'End') {\n next = list.length - 1;\n } else {\n return;\n }\n event.preventDefault();\n const id2 = list[next];\n if (id2) setFocusedId(id2);\n },\n [orientation, loop],\n );\n\n const value = useMemo(\n () => ({ register, unregister, focusedId, setFocusedId, onItemKeyDown }),\n [register, unregister, focusedId, onItemKeyDown],\n );\n\n return (\n <RovingFocusContext.Provider value={value}>\n <div role=\"group\" {...props}>\n {children}\n </div>\n </RovingFocusContext.Provider>\n );\n}\n\nexport interface UseRovingFocusItemReturn {\n ref: (node: HTMLElement | null) => void;\n tabIndex: 0 | -1;\n onKeyDown: (event: KeyboardEvent) => void;\n onFocus: () => void;\n 'data-roving-focus-item': boolean;\n}\n\n/**\n * Inside a `RovingFocusGroup`, returns props to spread onto a focusable item.\n * Outside, returns inert props (tabIndex 0).\n */\nexport function useRovingFocusItem(): UseRovingFocusItemReturn {\n const context = useContext(RovingFocusContext);\n const id = useId();\n const ref = useRef<HTMLElement | null>(null);\n\n useEffect(() => {\n context?.register(id);\n return () => context?.unregister(id);\n }, [context, id]);\n\n useEffect(() => {\n if (context?.focusedId === id && ref.current && document.activeElement !== ref.current) {\n ref.current.focus();\n }\n }, [context?.focusedId, id]);\n\n return {\n ref: (node) => {\n ref.current = node;\n },\n tabIndex: !context || context.focusedId === id ? 0 : -1,\n onKeyDown: (e) => context?.onItemKeyDown(e, id),\n onFocus: () => context?.setFocusedId(id),\n 'data-roving-focus-item': true,\n };\n}\n","import {\n createContext,\n useCallback,\n useContext,\n useMemo,\n useState,\n type Context,\n type ReactNode,\n} from 'react';\n\nexport interface CollectionContextValue<T> {\n items: T[];\n register: (item: T) => void;\n unregister: (item: T) => void;\n}\n\n/**\n * Factory for a typed children-registry context. Compound components\n * (Menu, Tabs, Listbox) use this so the parent can iterate ordered children\n * without prop-drilling.\n */\nexport function createCollection<T>(): {\n Provider: (props: { children: ReactNode }) => ReactNode;\n useCollection: () => CollectionContextValue<T>;\n Context: Context<CollectionContextValue<T> | null>;\n} {\n const CollectionContext = createContext<CollectionContextValue<T> | null>(null);\n\n function Provider({ children }: { children: ReactNode }) {\n const [items, setItems] = useState<T[]>([]);\n const register = useCallback((item: T) => {\n setItems((prev) => (prev.includes(item) ? prev : [...prev, item]));\n }, []);\n const unregister = useCallback((item: T) => {\n setItems((prev) => prev.filter((i) => i !== item));\n }, []);\n const value = useMemo(() => ({ items, register, unregister }), [items, register, unregister]);\n return <CollectionContext.Provider value={value}>{children}</CollectionContext.Provider>;\n }\n\n function useCollection(): CollectionContextValue<T> {\n const ctx = useContext(CollectionContext);\n if (!ctx) {\n throw new Error('useCollection must be used inside its Provider');\n }\n return ctx;\n }\n\n return { Provider, useCollection, Context: CollectionContext };\n}\n","import { createContext, useContext, type ReactNode } from 'react';\nimport { useId } from '../../hooks/useId';\n\nexport interface FormControlContextValue {\n id: string;\n labelId: string;\n helperId: string;\n errorId: string;\n isInvalid: boolean;\n isDisabled: boolean;\n isRequired: boolean;\n isReadOnly: boolean;\n}\n\nconst Context = createContext<FormControlContextValue | null>(null);\n\nexport interface FormControlProviderProps {\n /** Override the auto-generated id (also used as control's `id`). */\n id?: string;\n isInvalid?: boolean;\n isDisabled?: boolean;\n isRequired?: boolean;\n isReadOnly?: boolean;\n children: ReactNode;\n}\n\n/**\n * Wires Label ↔ control ↔ HelperText/ErrorMessage via stable IDs and shared\n * state flags. Used by `FormField` (L4) — atoms (Input, Label, etc.) read\n * via `useFormControl()` to get the right `id`/`htmlFor`/`aria-describedby`.\n */\nexport function FormControlProvider({\n id: providedId,\n isInvalid = false,\n isDisabled = false,\n isRequired = false,\n isReadOnly = false,\n children,\n}: FormControlProviderProps) {\n const generatedId = useId();\n const id = providedId ?? generatedId;\n const value: FormControlContextValue = {\n id,\n labelId: `${id}-label`,\n helperId: `${id}-helper`,\n errorId: `${id}-error`,\n isInvalid,\n isDisabled,\n isRequired,\n isReadOnly,\n };\n return <Context.Provider value={value}>{children}</Context.Provider>;\n}\n\n/**\n * Read the surrounding form-control context. Returns `null` when used\n * outside a provider — atoms gracefully degrade to standalone mode.\n */\nexport function useFormControl(): FormControlContextValue | null {\n return useContext(Context);\n}\n","import { type ReactNode } from 'react';\nimport { useScrollLock } from '../../hooks/useScrollLock';\n\nexport interface ScrollLockProviderProps {\n enabled?: boolean;\n children: ReactNode;\n}\n\n/**\n * Component wrapper around `useScrollLock` — handy when scroll lock should\n * follow a child's mount lifecycle (e.g. inside a Modal's portal).\n * Multiple wrappers stack; lock releases when the count reaches zero.\n */\nexport function ScrollLockProvider({ enabled = true, children }: ScrollLockProviderProps) {\n useScrollLock(enabled);\n return <>{children}</>;\n}\n"]}