@waveso/ui 0.8.0 → 0.9.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.
Files changed (90) hide show
  1. package/dist/accordion.d.ts +1 -1
  2. package/dist/accordion.js +1 -1
  3. package/dist/action-bar.d.ts +5 -1
  4. package/dist/action-bar.js +5 -1
  5. package/dist/alert-dialog.d.ts +4 -2
  6. package/dist/alert-dialog.js +8 -4
  7. package/dist/alert.d.ts +1 -1
  8. package/dist/alert.js +1 -1
  9. package/dist/animate.d.ts +14 -4
  10. package/dist/autocomplete.d.ts +1 -1
  11. package/dist/autocomplete.js +4 -4
  12. package/dist/avatar.d.ts +1 -1
  13. package/dist/badge.d.ts +2 -2
  14. package/dist/breadcrumb.d.ts +1 -1
  15. package/dist/button-group.d.ts +3 -3
  16. package/dist/button-group.js +1 -0
  17. package/dist/button.d.ts +3 -3
  18. package/dist/button.js +3 -1
  19. package/dist/card.d.ts +1 -1
  20. package/dist/checkbox.d.ts +1 -1
  21. package/dist/checkbox.js +1 -1
  22. package/dist/collapsible.d.ts +1 -1
  23. package/dist/combobox.d.ts +8 -7
  24. package/dist/combobox.js +2 -2
  25. package/dist/context-menu.d.ts +1 -1
  26. package/dist/context-menu.js +2 -2
  27. package/dist/dialog.d.ts +4 -7
  28. package/dist/dialog.js +4 -8
  29. package/dist/direction.d.ts +7 -2
  30. package/dist/drawer.d.ts +6 -1
  31. package/dist/drawer.js +31 -28
  32. package/dist/encrypted-text.d.ts +1 -1
  33. package/dist/form.d.ts +1 -1
  34. package/dist/infinite-scroll.d.ts +4 -5
  35. package/dist/infinite-scroll.js +2 -1
  36. package/dist/input-group.d.ts +3 -3
  37. package/dist/input-group.js +3 -3
  38. package/dist/input-otp.d.ts +1 -1
  39. package/dist/input-otp.js +1 -1
  40. package/dist/input.d.ts +3 -2
  41. package/dist/input.js +1 -1
  42. package/dist/item.d.ts +2 -2
  43. package/dist/item.js +2 -2
  44. package/dist/kbd.d.ts +1 -0
  45. package/dist/kbd.js +1 -0
  46. package/dist/label.d.ts +1 -1
  47. package/dist/lib/internal-icons.d.ts +2 -8
  48. package/dist/lib/internal-icons.js +3 -10
  49. package/dist/masonry.d.ts +1 -1
  50. package/dist/menu.d.ts +1 -1
  51. package/dist/menu.js +2 -2
  52. package/dist/menubar.d.ts +1 -1
  53. package/dist/pagination.d.ts +1 -1
  54. package/dist/popover.d.ts +8 -1
  55. package/dist/popover.js +2 -2
  56. package/dist/preview-card.d.ts +5 -2
  57. package/dist/preview-card.js +2 -2
  58. package/dist/progress.d.ts +1 -1
  59. package/dist/progress.js +3 -3
  60. package/dist/radio-group.d.ts +1 -1
  61. package/dist/radio.d.ts +1 -1
  62. package/dist/radio.js +1 -1
  63. package/dist/scroll-area.d.ts +1 -1
  64. package/dist/scroll-area.js +1 -1
  65. package/dist/select.d.ts +1 -1
  66. package/dist/select.js +1 -1
  67. package/dist/separator.d.ts +1 -1
  68. package/dist/sidebar.d.ts +73 -50
  69. package/dist/sidebar.js +2 -2
  70. package/dist/skeleton.d.ts +2 -1
  71. package/dist/skeleton.js +1 -0
  72. package/dist/slider.d.ts +1 -1
  73. package/dist/spinner.d.ts +2 -1
  74. package/dist/spinner.js +1 -0
  75. package/dist/styles.css +13 -9
  76. package/dist/switch.d.ts +1 -1
  77. package/dist/switch.js +1 -1
  78. package/dist/table.d.ts +1 -1
  79. package/dist/tabs.d.ts +1 -1
  80. package/dist/tabs.js +1 -1
  81. package/dist/textarea.d.ts +1 -1
  82. package/dist/textarea.js +1 -1
  83. package/dist/toast.d.ts +6 -5
  84. package/dist/toast.js +4 -4
  85. package/dist/toggle-group.d.ts +1 -1
  86. package/dist/toggle-group.js +6 -6
  87. package/dist/toggle.d.ts +1 -1
  88. package/dist/toggle.js +1 -1
  89. package/dist/tooltip.d.ts +1 -1
  90. package/package.json +1 -1
@@ -26,4 +26,4 @@ declare function AccordionContent({
26
26
  ...props
27
27
  }: AccordionContentProps): _$react_jsx_runtime0.JSX.Element;
28
28
  //#endregion
29
- export { Accordion, AccordionContent, AccordionItem, AccordionTrigger };
29
+ export { Accordion, AccordionContent, AccordionContentProps, AccordionItem, AccordionItemProps, AccordionProps, AccordionTrigger, AccordionTriggerProps };
package/dist/accordion.js CHANGED
@@ -25,7 +25,7 @@ function AccordionTrigger({ className, children, ...props }) {
25
25
  className: "flex",
26
26
  children: /* @__PURE__ */ jsxs(Accordion$1.Trigger, {
27
27
  "data-slot": "accordion-trigger",
28
- className: cn("cursor-clickable focus-visible:ring-focus/50 focus-visible:border-focus focus-visible:after:border-focus **:data-[slot=accordion-trigger-icon]:text-muted group/accordion-trigger relative flex flex-1 items-start justify-between rounded-md border border-transparent py-2.5 text-left text-sm font-medium motion-color outline-none hover:underline focus-visible:ring-3 aria-disabled:pointer-events-none aria-disabled:opacity-50 **:data-[slot=accordion-trigger-icon]:ml-auto **:data-[slot=accordion-trigger-icon]:size-4", className),
28
+ className: cn("cursor-clickable focus-visible:ring-focus/50 focus-visible:border-focus focus-visible:after:border-focus **:data-[slot=accordion-trigger-icon]:text-muted group/accordion-trigger relative flex flex-1 items-start justify-between rounded-md border border-transparent py-2.5 text-left text-sm font-medium motion-color outline-hidden hover:underline focus-visible:ring-3 aria-disabled:pointer-events-none aria-disabled:opacity-50 **:data-[slot=accordion-trigger-icon]:ml-auto **:data-[slot=accordion-trigger-icon]:size-4", className),
29
29
  ...props,
30
30
  children: [
31
31
  children,
@@ -24,7 +24,7 @@ interface ActionBarProviderProps {
24
24
  * users get) when guarded navigation is blocked.
25
25
  */
26
26
  blockedMessage?: string;
27
- /** Additional className for the bar's outer wrapper. */
27
+ /** Additional className for the bar's inner content box (`data-slot="action-bar-content"`). */
28
28
  className?: string;
29
29
  }
30
30
  /**
@@ -38,6 +38,10 @@ interface ActionBarProviderProps {
38
38
  * - Navigation guard with Discord-style page jiggle
39
39
  * - `beforeunload` guard for browser close/refresh
40
40
  *
41
+ * @remarks
42
+ * Requires the optional `motion` peer dependency for its enter/exit
43
+ * transition. Install `motion` alongside `@waveso/ui` to use this component.
44
+ *
41
45
  * @example
42
46
  * ```tsx
43
47
  * // Root layout — once
@@ -35,6 +35,10 @@ const ActionBarContext = React.createContext(null);
35
35
  * - Navigation guard with Discord-style page jiggle
36
36
  * - `beforeunload` guard for browser close/refresh
37
37
  *
38
+ * @remarks
39
+ * Requires the optional `motion` peer dependency for its enter/exit
40
+ * transition. Install `motion` alongside `@waveso/ui` to use this component.
41
+ *
38
42
  * @example
39
43
  * ```tsx
40
44
  * // Root layout — once
@@ -197,7 +201,7 @@ function ActionBarProvider({ children, message = "You have unsaved changes", plu
197
201
  className: "fixed bottom-6 left-1/2 z-50",
198
202
  children: /* @__PURE__ */ jsxs("div", {
199
203
  "data-slot": "action-bar-content",
200
- className: cn("flex items-center gap-6 rounded-lg border border-line/60 bg-surface px-5 py-2.5 shadow-lg ring-1 ring-line backdrop-blur-sm", className),
204
+ className: cn("flex items-center gap-6 rounded-lg border border-line/60 bg-surface px-5 py-2.5 shadow-lg ring-1 ring-line", className),
201
205
  children: [/* @__PURE__ */ jsx("span", {
202
206
  "data-slot": "action-bar-message",
203
207
  className: cn("whitespace-nowrap text-sm font-medium", saveError ? "text-destructive" : "text-contrast"),
@@ -16,7 +16,7 @@ type AlertDialogFooterProps = React.ComponentProps<"div">;
16
16
  type AlertDialogMediaProps = React.ComponentProps<"div">;
17
17
  type AlertDialogTitleProps = React.ComponentProps<typeof AlertDialog$1.Title>;
18
18
  type AlertDialogDescriptionProps = React.ComponentProps<typeof AlertDialog$1.Description>;
19
- type AlertDialogActionProps = React.ComponentProps<typeof Button>;
19
+ type AlertDialogActionProps = React.ComponentProps<typeof AlertDialog$1.Close> & Pick<React.ComponentProps<typeof Button>, "variant" | "size">;
20
20
  type AlertDialogCancelProps = React.ComponentProps<typeof AlertDialog$1.Close> & Pick<React.ComponentProps<typeof Button>, "variant" | "size">;
21
21
  declare function AlertDialog({
22
22
  ...props
@@ -58,6 +58,8 @@ declare function AlertDialogDescription({
58
58
  }: AlertDialogDescriptionProps): _$react_jsx_runtime0.JSX.Element;
59
59
  declare function AlertDialogAction({
60
60
  className,
61
+ variant,
62
+ size,
61
63
  ...props
62
64
  }: AlertDialogActionProps): _$react_jsx_runtime0.JSX.Element;
63
65
  declare function AlertDialogCancel({
@@ -67,4 +69,4 @@ declare function AlertDialogCancel({
67
69
  ...props
68
70
  }: AlertDialogCancelProps): _$react_jsx_runtime0.JSX.Element;
69
71
  //#endregion
70
- export { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogMedia, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger };
72
+ export { AlertDialog, AlertDialogAction, AlertDialogActionProps, AlertDialogCancel, AlertDialogCancelProps, AlertDialogContent, AlertDialogContentProps, AlertDialogDescription, AlertDialogDescriptionProps, AlertDialogFooter, AlertDialogFooterProps, AlertDialogHeader, AlertDialogHeaderProps, AlertDialogMedia, AlertDialogMediaProps, AlertDialogOverlay, AlertDialogOverlayProps, AlertDialogPortal, AlertDialogPortalProps, AlertDialogProps, AlertDialogTitle, AlertDialogTitleProps, AlertDialogTrigger, AlertDialogTriggerProps };
@@ -34,7 +34,7 @@ function AlertDialogContent({ className, size = "default", ...props }) {
34
34
  return /* @__PURE__ */ jsxs(AlertDialogPortal, { children: [/* @__PURE__ */ jsx(AlertDialogOverlay, {}), /* @__PURE__ */ jsx(AlertDialog$1.Popup, {
35
35
  "data-slot": "alert-dialog-content",
36
36
  "data-size": size,
37
- className: cn("motion-scale-lg bg-foundation ring-contrast/10 group/alert-dialog-content fixed top-1/2 left-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 gap-4 rounded-lg p-4 ring-1 outline-none data-[size=default]:max-w-xs data-[size=sm]:max-w-xs data-[size=lg]:max-w-lg data-[size=xl]:max-w-xl data-[size=default]:sm:max-w-sm data-[size=lg]:sm:max-w-lg data-[size=xl]:sm:max-w-xl", className),
37
+ className: cn("motion-scale-lg bg-foundation ring-contrast/10 group/alert-dialog-content fixed top-1/2 left-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 gap-4 rounded-lg p-4 ring-1 outline-hidden data-[size=default]:max-w-xs data-[size=sm]:max-w-xs data-[size=lg]:max-w-lg data-[size=xl]:max-w-xl data-[size=default]:sm:max-w-sm data-[size=lg]:sm:max-w-lg data-[size=xl]:sm:max-w-xl", className),
38
38
  ...props
39
39
  })] });
40
40
  }
@@ -73,10 +73,14 @@ function AlertDialogDescription({ className, ...props }) {
73
73
  ...props
74
74
  });
75
75
  }
76
- function AlertDialogAction({ className, ...props }) {
77
- return /* @__PURE__ */ jsx(Button, {
76
+ function AlertDialogAction({ className, variant, size, ...props }) {
77
+ return /* @__PURE__ */ jsx(AlertDialog$1.Close, {
78
78
  "data-slot": "alert-dialog-action",
79
- className: cn(className),
79
+ className,
80
+ render: /* @__PURE__ */ jsx(Button, {
81
+ variant,
82
+ size
83
+ }),
80
84
  ...props
81
85
  });
82
86
  }
package/dist/alert.d.ts CHANGED
@@ -29,4 +29,4 @@ declare function AlertAction({
29
29
  ...props
30
30
  }: AlertActionProps): _$react_jsx_runtime0.JSX.Element;
31
31
  //#endregion
32
- export { Alert, AlertAction, AlertDescription, AlertTitle };
32
+ export { Alert, AlertAction, AlertActionProps, AlertDescription, AlertDescriptionProps, AlertProps, AlertTitle, AlertTitleProps, alertVariants };
package/dist/alert.js CHANGED
@@ -40,4 +40,4 @@ function AlertAction({ className, ...props }) {
40
40
  });
41
41
  }
42
42
  //#endregion
43
- export { Alert, AlertAction, AlertDescription, AlertTitle };
43
+ export { Alert, AlertAction, AlertDescription, AlertTitle, alertVariants };
package/dist/animate.d.ts CHANGED
@@ -1,10 +1,20 @@
1
1
  import * as _$react from "react";
2
2
  import { ReactElement } from "react";
3
3
  import * as _$react_jsx_runtime0 from "react/jsx-runtime";
4
- import { Transition } from "motion/react";
5
4
 
6
5
  //#region src/animate.d.ts
7
6
  type Direction = "up" | "down" | "left" | "right";
7
+ /**
8
+ * Transition override for the entrance components. Only the two fields that map
9
+ * cleanly onto a CSS transition are supported — `duration` (seconds) and `ease`
10
+ * (a CSS `<timing-function>` string, e.g. `"ease-out"` or `"cubic-bezier(…)"`).
11
+ * motion/react's full `Transition` type (springs, keyframe arrays, camelCase
12
+ * eases) would silently produce invalid CSS here, so it is intentionally narrowed.
13
+ */
14
+ type AnimateTransition = {
15
+ duration?: number;
16
+ ease?: string;
17
+ };
8
18
  interface AnimateOnViewProps {
9
19
  children: ReactElement;
10
20
  /** Delay in seconds before animation starts. Default: 0 */
@@ -26,7 +36,7 @@ interface AnimateOnViewProps {
26
36
  /** Trigger once or every time it enters view. Default: true */
27
37
  once?: boolean;
28
38
  /** Custom transition override */
29
- transition?: Transition;
39
+ transition?: AnimateTransition;
30
40
  }
31
41
  interface AnimateInProps {
32
42
  children: ReactElement;
@@ -47,7 +57,7 @@ interface AnimateInProps {
47
57
  /** Spring easing with overshoot. Default: false */
48
58
  spring?: boolean;
49
59
  /** Custom transition override */
50
- transition?: Transition;
60
+ transition?: AnimateTransition;
51
61
  }
52
62
  interface StaggerProps {
53
63
  children: ReactElement[];
@@ -189,4 +199,4 @@ declare function Float({
189
199
  paused
190
200
  }: FloatProps): _$react_jsx_runtime0.JSX.Element;
191
201
  //#endregion
192
- export { AnimateIn, type AnimateInProps, AnimateOnView, type AnimateOnViewProps, type Direction, Float, type FloatProps, Pulse, type PulseProps, Stagger, type StaggerProps };
202
+ export { AnimateIn, type AnimateInProps, AnimateOnView, type AnimateOnViewProps, type AnimateTransition, type Direction, Float, type FloatProps, Pulse, type PulseProps, Stagger, type StaggerProps };
@@ -110,4 +110,4 @@ declare function AutocompleteContent({
110
110
  ...props
111
111
  }: AutocompleteContentProps): _$react_jsx_runtime0.JSX.Element;
112
112
  //#endregion
113
- export { Autocomplete, AutocompleteArrow, AutocompleteBackdrop, AutocompleteClear, AutocompleteCollection, AutocompleteContent, AutocompleteEmpty, AutocompleteGroup, AutocompleteGroupLabel, AutocompleteIcon, AutocompleteInput, AutocompleteItem, AutocompleteList, AutocompletePopup, AutocompletePortal, AutocompletePositioner, AutocompleteRow, AutocompleteSeparator, AutocompleteStatus, AutocompleteTrigger, AutocompleteValue };
113
+ export { Autocomplete, AutocompleteArrow, AutocompleteArrowProps, AutocompleteBackdrop, AutocompleteBackdropProps, AutocompleteClear, AutocompleteClearProps, AutocompleteCollection, AutocompleteCollectionProps, AutocompleteContent, AutocompleteContentProps, AutocompleteEmpty, AutocompleteEmptyProps, AutocompleteGroup, AutocompleteGroupLabel, AutocompleteGroupLabelProps, AutocompleteGroupProps, AutocompleteIcon, AutocompleteIconProps, AutocompleteInput, AutocompleteInputProps, AutocompleteItem, AutocompleteItemProps, AutocompleteList, AutocompleteListProps, AutocompletePopup, AutocompletePopupProps, AutocompletePortal, AutocompletePortalProps, AutocompletePositioner, AutocompletePositionerProps, AutocompleteProps, AutocompleteRow, AutocompleteRowProps, AutocompleteSeparator, AutocompleteSeparatorProps, AutocompleteStatus, AutocompleteStatusProps, AutocompleteTrigger, AutocompleteTriggerProps, AutocompleteValue, AutocompleteValueProps };
@@ -13,7 +13,7 @@ function Autocomplete({ ...props }) {
13
13
  function AutocompleteInput({ className, ...props }) {
14
14
  return /* @__PURE__ */ jsx(Autocomplete$1.Input, {
15
15
  "data-slot": "autocomplete-input",
16
- className: cn("dark:bg-edge/30 border-edge focus-visible:border-focus focus-visible:ring-focus/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 disabled:bg-edge/50 dark:disabled:bg-edge/80 placeholder:text-soft h-8 w-full min-w-0 rounded-md border bg-transparent px-2.5 py-1 text-base transition-colors outline-none focus-visible:ring-3 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-3 md:text-sm", className),
16
+ className: cn("dark:bg-edge/30 border-edge focus-visible:border-focus focus-visible:ring-focus/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 disabled:bg-edge/50 dark:disabled:bg-edge/80 placeholder:text-soft h-8 w-full min-w-0 rounded-md border bg-transparent px-2.5 py-1 text-base transition-colors outline-hidden focus-visible:ring-3 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-3 md:text-sm", className),
17
17
  ...props
18
18
  });
19
19
  }
@@ -47,7 +47,7 @@ function AutocompleteValue({ ...props }) {
47
47
  function AutocompletePortal({ className, ...props }) {
48
48
  return /* @__PURE__ */ jsx(Autocomplete$1.Portal, {
49
49
  "data-slot": "autocomplete-portal",
50
- className: cn(className),
50
+ className,
51
51
  ...props
52
52
  });
53
53
  }
@@ -61,7 +61,7 @@ function AutocompleteBackdrop({ className, ...props }) {
61
61
  function AutocompletePositioner({ className, ...props }) {
62
62
  return /* @__PURE__ */ jsx(Autocomplete$1.Positioner, {
63
63
  "data-slot": "autocomplete-positioner",
64
- className: cn(className),
64
+ className,
65
65
  ...props
66
66
  });
67
67
  }
@@ -103,7 +103,7 @@ function AutocompleteList({ className, ...props }) {
103
103
  function AutocompleteRow({ className, ...props }) {
104
104
  return /* @__PURE__ */ jsx(Autocomplete$1.Row, {
105
105
  "data-slot": "autocomplete-row",
106
- className: cn(className),
106
+ className,
107
107
  ...props
108
108
  });
109
109
  }
package/dist/avatar.d.ts CHANGED
@@ -37,4 +37,4 @@ declare function AvatarGroupCount({
37
37
  ...props
38
38
  }: AvatarGroupCountProps): _$react_jsx_runtime0.JSX.Element;
39
39
  //#endregion
40
- export { Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage };
40
+ export { Avatar, AvatarBadge, AvatarBadgeProps, AvatarFallback, AvatarFallbackProps, AvatarGroup, AvatarGroupCount, AvatarGroupCountProps, AvatarGroupProps, AvatarImage, AvatarImageProps, AvatarProps };
package/dist/badge.d.ts CHANGED
@@ -5,7 +5,7 @@ import * as _$class_variance_authority_types0 from "class-variance-authority/typ
5
5
 
6
6
  //#region src/badge.d.ts
7
7
  declare const badgeVariants: (props?: ({
8
- variant?: "default" | "destructive" | "link" | "success" | "warning" | "secondary" | "outline" | "ghost" | null | undefined;
8
+ variant?: "default" | "destructive" | "link" | "outline" | "success" | "warning" | "secondary" | "ghost" | null | undefined;
9
9
  } & _$class_variance_authority_types0.ClassProp) | undefined) => string;
10
10
  type BadgeProps = useRender.ComponentProps<"span"> & VariantProps<typeof badgeVariants>;
11
11
  declare function Badge({
@@ -15,4 +15,4 @@ declare function Badge({
15
15
  ...props
16
16
  }: BadgeProps): _$react.ReactElement<unknown, string | _$react.JSXElementConstructor<any>>;
17
17
  //#endregion
18
- export { Badge, badgeVariants };
18
+ export { Badge, BadgeProps, badgeVariants };
@@ -40,4 +40,4 @@ declare function BreadcrumbEllipsis({
40
40
  ...props
41
41
  }: BreadcrumbEllipsisProps): _$react_jsx_runtime0.JSX.Element;
42
42
  //#endregion
43
- export { Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator };
43
+ export { Breadcrumb, BreadcrumbEllipsis, BreadcrumbEllipsisProps, BreadcrumbItem, BreadcrumbItemProps, BreadcrumbLink, BreadcrumbLinkProps, BreadcrumbList, BreadcrumbListProps, BreadcrumbPage, BreadcrumbPageProps, BreadcrumbProps, BreadcrumbSeparator, BreadcrumbSeparatorProps };
@@ -1,5 +1,5 @@
1
1
  import { Separator } from "./separator.js";
2
- import * as _$react from "react";
2
+ import * as React from "react";
3
3
  import * as _$react_jsx_runtime0 from "react/jsx-runtime";
4
4
  import { VariantProps } from "class-variance-authority";
5
5
  import { useRender } from "@base-ui/react/use-render";
@@ -21,11 +21,11 @@ declare function ButtonGroupText({
21
21
  className,
22
22
  render,
23
23
  ...props
24
- }: ButtonGroupTextProps): _$react.ReactElement<unknown, string | _$react.JSXElementConstructor<any>>;
24
+ }: ButtonGroupTextProps): React.ReactElement<unknown, string | React.JSXElementConstructor<any>>;
25
25
  declare function ButtonGroupSeparator({
26
26
  className,
27
27
  orientation,
28
28
  ...props
29
29
  }: ButtonGroupSeparatorProps): _$react_jsx_runtime0.JSX.Element;
30
30
  //#endregion
31
- export { ButtonGroup, ButtonGroupSeparator, ButtonGroupText, buttonGroupVariants };
31
+ export { ButtonGroup, ButtonGroupProps, ButtonGroupSeparator, ButtonGroupSeparatorProps, ButtonGroupText, ButtonGroupTextProps, buttonGroupVariants };
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
  import { cn } from "./lib/utils.js";
3
3
  import { Separator } from "./separator.js";
4
+ import "react";
4
5
  import { jsx } from "react/jsx-runtime";
5
6
  import { cva } from "class-variance-authority";
6
7
  import { mergeProps } from "@base-ui/react/merge-props";
package/dist/button.d.ts CHANGED
@@ -6,8 +6,8 @@ import * as _$class_variance_authority_types0 from "class-variance-authority/typ
6
6
 
7
7
  //#region src/button.d.ts
8
8
  declare const buttonVariants: (props?: ({
9
- variant?: "default" | "destructive" | "link" | "success" | "secondary" | "outline" | "ghost" | null | undefined;
10
- size?: "default" | "xs" | "sm" | "icon-xs" | "icon-sm" | "icon" | "lg" | "xl" | "icon-lg" | null | undefined;
9
+ variant?: "default" | "destructive" | "link" | "outline" | "success" | "secondary" | "ghost" | null | undefined;
10
+ size?: "default" | "icon" | "sm" | "xs" | "lg" | "xl" | "icon-xs" | "icon-sm" | "icon-lg" | null | undefined;
11
11
  } & _$class_variance_authority_types0.ClassProp) | undefined) => string;
12
12
  type ButtonProps = React.ComponentProps<typeof Button$1> & VariantProps<typeof buttonVariants>;
13
13
  declare function Button({
@@ -17,4 +17,4 @@ declare function Button({
17
17
  ...props
18
18
  }: ButtonProps): _$react_jsx_runtime0.JSX.Element;
19
19
  //#endregion
20
- export { Button, buttonVariants };
20
+ export { Button, ButtonProps, buttonVariants };
package/dist/button.js CHANGED
@@ -5,7 +5,7 @@ import { jsx } from "react/jsx-runtime";
5
5
  import { Button as Button$1 } from "@base-ui/react/button";
6
6
  import { cva } from "class-variance-authority";
7
7
  //#region src/button.tsx
8
- const buttonVariants = cva("cursor-clickable focus-visible:border-focus focus-visible:ring-focus/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 rounded-md border border-transparent bg-clip-padding text-sm font-medium focus-visible:ring-3 aria-invalid:ring-3 [&_svg:not([class*='size-'])]:size-4 inline-flex items-center justify-center whitespace-nowrap motion-color disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none shrink-0 [&_svg]:shrink-0 outline-none group/button select-none", {
8
+ const buttonVariants = cva("cursor-clickable focus-visible:border-focus focus-visible:ring-focus/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 rounded-md border border-transparent bg-clip-padding text-sm font-medium focus-visible:ring-3 aria-invalid:ring-3 [&_svg:not([class*='size-'])]:size-4 inline-flex items-center justify-center whitespace-nowrap motion-color disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none shrink-0 [&_svg]:shrink-0 outline-hidden group/button select-none", {
9
9
  variants: {
10
10
  variant: {
11
11
  default: "bg-primary text-white hover:bg-primary/80",
@@ -36,6 +36,8 @@ const buttonVariants = cva("cursor-clickable focus-visible:border-focus focus-vi
36
36
  function Button({ className, variant = "default", size = "default", ...props }) {
37
37
  return /* @__PURE__ */ jsx(Button$1, {
38
38
  "data-slot": "button",
39
+ "data-variant": variant,
40
+ "data-size": size,
39
41
  nativeButton: props.render ? false : void 0,
40
42
  className: cn(buttonVariants({
41
43
  variant,
package/dist/card.d.ts CHANGED
@@ -41,4 +41,4 @@ declare function CardFooter({
41
41
  ...props
42
42
  }: CardFooterProps): _$react_jsx_runtime0.JSX.Element;
43
43
  //#endregion
44
- export { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle };
44
+ export { Card, CardAction, CardActionProps, CardContent, CardContentProps, CardDescription, CardDescriptionProps, CardFooter, CardFooterProps, CardHeader, CardHeaderProps, CardProps, CardTitle, CardTitleProps };
@@ -9,4 +9,4 @@ declare function Checkbox({
9
9
  ...props
10
10
  }: CheckboxProps): _$react_jsx_runtime0.JSX.Element;
11
11
  //#endregion
12
- export { Checkbox };
12
+ export { Checkbox, CheckboxProps };
package/dist/checkbox.js CHANGED
@@ -8,7 +8,7 @@ import { Checkbox as Checkbox$1 } from "@base-ui/react/checkbox";
8
8
  function Checkbox({ className, ...props }) {
9
9
  return /* @__PURE__ */ jsx(Checkbox$1.Root, {
10
10
  "data-slot": "checkbox",
11
- className: cn("cursor-clickable border-edge dark:bg-edge/30 data-checked:bg-primary data-indeterminate:bg-primary data-checked:text-white data-indeterminate:text-white dark:data-checked:bg-primary dark:data-indeterminate:bg-primary data-checked:border-primary data-indeterminate:border-primary aria-invalid:aria-checked:border-primary aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 focus-visible:border-focus focus-visible:ring-focus/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 peer relative flex size-4 shrink-0 items-center justify-center rounded-[4px] border transition-colors outline-none group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:ring-3 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-3", className),
11
+ className: cn("cursor-clickable border-edge dark:bg-edge/30 data-checked:bg-primary data-indeterminate:bg-primary data-checked:text-white data-indeterminate:text-white dark:data-checked:bg-primary dark:data-indeterminate:bg-primary data-checked:border-primary data-indeterminate:border-primary aria-invalid:aria-checked:border-primary aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 focus-visible:border-focus focus-visible:ring-focus/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 peer relative flex size-4 shrink-0 items-center justify-center rounded-[4px] border transition-colors outline-hidden group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:ring-3 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-3", className),
12
12
  ...props,
13
13
  children: /* @__PURE__ */ jsxs(Checkbox$1.Indicator, {
14
14
  "data-slot": "checkbox-indicator",
@@ -17,4 +17,4 @@ declare function CollapsibleContent({
17
17
  ...props
18
18
  }: CollapsibleContentProps): _$react_jsx_runtime0.JSX.Element;
19
19
  //#endregion
20
- export { Collapsible, CollapsibleContent, CollapsibleTrigger };
20
+ export { Collapsible, CollapsibleContent, CollapsibleContentProps, CollapsibleProps, CollapsibleTrigger, CollapsibleTriggerProps };
@@ -7,7 +7,8 @@ type ComboboxProps = React.ComponentProps<typeof Combobox$1.Root>;
7
7
  type ComboboxValueProps = React.ComponentProps<typeof Combobox$1.Value>;
8
8
  type ComboboxTriggerProps = React.ComponentProps<typeof Combobox$1.Trigger>;
9
9
  type ComboboxClearProps = React.ComponentProps<typeof Combobox$1.Clear>;
10
- type ComboboxInputProps = React.ComponentProps<typeof Combobox$1.Input>;
10
+ type ComboboxInputBaseProps = React.ComponentProps<typeof Combobox$1.Input>;
11
+ type ComboboxPortalProps = React.ComponentProps<typeof Combobox$1.Portal>;
11
12
  type ComboboxPositionerProps = React.ComponentProps<typeof Combobox$1.Positioner>;
12
13
  type ComboboxPopupProps = React.ComponentProps<typeof Combobox$1.Popup>;
13
14
  type ComboboxListProps = React.ComponentProps<typeof Combobox$1.List>;
@@ -18,13 +19,13 @@ type ComboboxCollectionProps = React.ComponentProps<typeof Combobox$1.Collection
18
19
  type ComboboxEmptyProps = React.ComponentProps<typeof Combobox$1.Empty>;
19
20
  type ComboboxSeparatorProps = React.ComponentProps<typeof Combobox$1.Separator>;
20
21
  type ComboboxChipsProps = React.ComponentProps<typeof Combobox$1.Chips>;
21
- type ComboboxChipProps = React.ComponentProps<typeof Combobox$1.Chip>;
22
+ type ComboboxChipBaseProps = React.ComponentProps<typeof Combobox$1.Chip>;
22
23
  type ComboboxChipsInputProps = React.ComponentProps<typeof Combobox$1.Input>;
23
- type ComboboxInputWrapperProps = ComboboxInputProps & {
24
+ type ComboboxInputProps = ComboboxInputBaseProps & {
24
25
  showTrigger?: boolean;
25
26
  showClear?: boolean;
26
27
  };
27
- type ComboboxChipWrapperProps = ComboboxChipProps & {
28
+ type ComboboxChipProps = ComboboxChipBaseProps & {
28
29
  showRemove?: boolean;
29
30
  };
30
31
  type ComboboxContentProps = ComboboxPopupProps & Pick<ComboboxPositionerProps, "side" | "align" | "sideOffset" | "alignOffset" | "anchor">;
@@ -50,7 +51,7 @@ declare function ComboboxInput({
50
51
  showTrigger,
51
52
  showClear,
52
53
  ...props
53
- }: ComboboxInputWrapperProps): _$react_jsx_runtime0.JSX.Element;
54
+ }: ComboboxInputProps): _$react_jsx_runtime0.JSX.Element;
54
55
  declare function ComboboxContent({
55
56
  className,
56
57
  side,
@@ -97,11 +98,11 @@ declare function ComboboxChip({
97
98
  children,
98
99
  showRemove,
99
100
  ...props
100
- }: ComboboxChipWrapperProps): _$react_jsx_runtime0.JSX.Element;
101
+ }: ComboboxChipProps): _$react_jsx_runtime0.JSX.Element;
101
102
  declare function ComboboxChipsInput({
102
103
  className,
103
104
  ...props
104
105
  }: ComboboxChipsInputProps): _$react_jsx_runtime0.JSX.Element;
105
106
  declare function useComboboxAnchor(): React.RefObject<HTMLDivElement | null>;
106
107
  //#endregion
107
- export { Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxClear, ComboboxCollection, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxLabel, ComboboxList, ComboboxSeparator, ComboboxTrigger, ComboboxValue, useComboboxAnchor };
108
+ export { Combobox, ComboboxChip, ComboboxChipProps, ComboboxChips, ComboboxChipsInput, ComboboxChipsInputProps, ComboboxChipsProps, ComboboxClear, ComboboxClearProps, ComboboxCollection, ComboboxCollectionProps, ComboboxContent, ComboboxContentProps, ComboboxEmpty, ComboboxEmptyProps, ComboboxGroup, ComboboxGroupProps, ComboboxInput, ComboboxInputProps, ComboboxItem, ComboboxItemProps, ComboboxLabel, ComboboxLabelProps, ComboboxList, ComboboxListProps, ComboboxPortalProps, ComboboxPositionerProps, ComboboxProps, ComboboxSeparator, ComboboxSeparatorProps, ComboboxTrigger, ComboboxTriggerProps, ComboboxValue, ComboboxValueProps, useComboboxAnchor };
package/dist/combobox.js CHANGED
@@ -119,7 +119,7 @@ function ComboboxItem({ className, children, ...props }) {
119
119
  function ComboboxGroup({ className, ...props }) {
120
120
  return /* @__PURE__ */ jsx(Combobox$1.Group, {
121
121
  "data-slot": "combobox-group",
122
- className: cn(className),
122
+ className,
123
123
  ...props
124
124
  });
125
125
  }
@@ -177,7 +177,7 @@ function ComboboxChip({ className, children, showRemove = true, ...props }) {
177
177
  function ComboboxChipsInput({ className, ...props }) {
178
178
  return /* @__PURE__ */ jsx(Combobox$1.Input, {
179
179
  "data-slot": "combobox-chip-input",
180
- className: cn("min-w-16 flex-1 outline-none", className),
180
+ className: cn("min-w-16 flex-1 outline-hidden", className),
181
181
  ...props
182
182
  });
183
183
  }
@@ -104,4 +104,4 @@ declare function ContextMenuShortcut({
104
104
  ...props
105
105
  }: ContextMenuShortcutProps): _$react_jsx_runtime0.JSX.Element;
106
106
  //#endregion
107
- export { ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger };
107
+ export { ContextMenu, ContextMenuCheckboxItem, ContextMenuCheckboxItemProps, ContextMenuContent, ContextMenuContentProps, ContextMenuGroup, ContextMenuGroupProps, ContextMenuItem, ContextMenuItemProps, ContextMenuLabel, ContextMenuLabelProps, ContextMenuPortal, ContextMenuPortalProps, ContextMenuProps, ContextMenuRadioGroup, ContextMenuRadioGroupProps, ContextMenuRadioItem, ContextMenuRadioItemProps, ContextMenuSeparator, ContextMenuSeparatorProps, ContextMenuShortcut, ContextMenuShortcutProps, ContextMenuSub, ContextMenuSubContent, ContextMenuSubContentProps, ContextMenuSubProps, ContextMenuSubTrigger, ContextMenuSubTriggerProps, ContextMenuTrigger, ContextMenuTriggerProps, type RestoreFocusOnClose };
@@ -28,14 +28,14 @@ function ContextMenuTrigger({ className, ...props }) {
28
28
  function ContextMenuContent({ className, align = "start", alignOffset = 4, side = "right", sideOffset = 0, restoreFocusOnClose, finalFocus, ...props }) {
29
29
  return /* @__PURE__ */ jsx(ContextMenu$1.Portal, { children: /* @__PURE__ */ jsx(ContextMenu$1.Positioner, {
30
30
  "data-slot": "context-menu-positioner",
31
- className: "isolate z-50 outline-none",
31
+ className: "isolate z-50 outline-hidden",
32
32
  align,
33
33
  alignOffset,
34
34
  side,
35
35
  sideOffset,
36
36
  children: /* @__PURE__ */ jsx(ContextMenu$1.Popup, {
37
37
  "data-slot": "context-menu-content",
38
- className: cn("motion-pop-md ring-contrast/10 bg-elevated text-contrast z-50 max-h-(--available-height) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md p-1 shadow-md ring-1 outline-none", className),
38
+ className: cn("motion-pop-md ring-contrast/10 bg-elevated text-contrast z-50 max-h-(--available-height) min-w-36 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md p-1 shadow-md ring-1 outline-hidden", className),
39
39
  finalFocus: resolveFinalFocus(restoreFocusOnClose, finalFocus),
40
40
  ...props
41
41
  })
package/dist/dialog.d.ts CHANGED
@@ -26,9 +26,8 @@ type DialogDescriptionProps = React.ComponentProps<typeof Dialog$1.Description>;
26
26
  type DialogContentProps = DialogPopupProps & {
27
27
  showCloseButton?: boolean;
28
28
  };
29
- type DialogFooterProps = React.ComponentProps<"div"> & {
30
- showCloseButton?: boolean;
31
- };
29
+ type DialogHeaderProps = React.ComponentProps<"div">;
30
+ type DialogFooterProps = React.ComponentProps<"div">;
32
31
  declare function Dialog({
33
32
  disablePointerDismissal,
34
33
  ...props
@@ -55,11 +54,9 @@ declare function DialogContent({
55
54
  declare function DialogHeader({
56
55
  className,
57
56
  ...props
58
- }: React.ComponentProps<"div">): _$react_jsx_runtime0.JSX.Element;
57
+ }: DialogHeaderProps): _$react_jsx_runtime0.JSX.Element;
59
58
  declare function DialogFooter({
60
59
  className,
61
- showCloseButton,
62
- children,
63
60
  ...props
64
61
  }: DialogFooterProps): _$react_jsx_runtime0.JSX.Element;
65
62
  declare function DialogTitle({
@@ -71,4 +68,4 @@ declare function DialogDescription({
71
68
  ...props
72
69
  }: DialogDescriptionProps): _$react_jsx_runtime0.JSX.Element;
73
70
  //#endregion
74
- export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger };
71
+ export { Dialog, DialogClose, DialogCloseProps, DialogContent, DialogContentProps, DialogDescription, DialogDescriptionProps, DialogFooter, DialogFooterProps, DialogHeader, DialogHeaderProps, DialogOverlay, DialogOverlayProps, DialogPopupProps, DialogPortal, DialogPortalProps, DialogProps, DialogTitle, DialogTitleProps, DialogTrigger, DialogTriggerProps };
package/dist/dialog.js CHANGED
@@ -41,7 +41,7 @@ function DialogOverlay({ className, ...props }) {
41
41
  function DialogContent({ className, children, showCloseButton = true, ...props }) {
42
42
  return /* @__PURE__ */ jsxs(DialogPortal, { children: [/* @__PURE__ */ jsx(DialogOverlay, {}), /* @__PURE__ */ jsxs(Dialog$1.Popup, {
43
43
  "data-slot": "dialog-content",
44
- className: cn("motion-scale-lg bg-foundation ring-contrast/10 fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-lg p-4 text-sm ring-1 outline-none sm:max-w-sm", className),
44
+ className: cn("motion-scale-lg bg-foundation ring-contrast/10 fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-lg p-4 text-sm ring-1 outline-hidden sm:max-w-sm", className),
45
45
  ...props,
46
46
  children: [children, showCloseButton && /* @__PURE__ */ jsxs(Dialog$1.Close, {
47
47
  "data-slot": "dialog-close",
@@ -64,15 +64,11 @@ function DialogHeader({ className, ...props }) {
64
64
  ...props
65
65
  });
66
66
  }
67
- function DialogFooter({ className, showCloseButton = false, children, ...props }) {
68
- return /* @__PURE__ */ jsxs("div", {
67
+ function DialogFooter({ className, ...props }) {
68
+ return /* @__PURE__ */ jsx("div", {
69
69
  "data-slot": "dialog-footer",
70
70
  className: cn("bg-secondary/50 -mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-lg border-t border-line p-4 sm:flex-row sm:justify-end", className),
71
- ...props,
72
- children: [children, showCloseButton && /* @__PURE__ */ jsx(Dialog$1.Close, {
73
- render: /* @__PURE__ */ jsx(Button, { variant: "outline" }),
74
- children: "Close"
75
- })]
71
+ ...props
76
72
  });
77
73
  }
78
74
  function DialogTitle({ className, ...props }) {
@@ -1,2 +1,7 @@
1
- import { DirectionProvider, useDirection } from "@base-ui/react/direction-provider";
2
- export { DirectionProvider, useDirection };
1
+ import * as React from "react";
2
+ import { DirectionProvider, DirectionProvider as DirectionProvider$1, useDirection } from "@base-ui/react/direction-provider";
3
+
4
+ //#region src/direction.d.ts
5
+ type DirectionProviderProps = React.ComponentProps<typeof DirectionProvider$1>;
6
+ //#endregion
7
+ export { DirectionProvider, DirectionProviderProps, useDirection };
package/dist/drawer.d.ts CHANGED
@@ -8,6 +8,7 @@ type DrawerTriggerProps = React.ComponentProps<typeof Drawer$1.Trigger>;
8
8
  type DrawerPortalProps = React.ComponentProps<typeof Drawer$1.Portal>;
9
9
  type DrawerCloseProps = React.ComponentProps<typeof Drawer$1.Close>;
10
10
  type DrawerOverlayProps = React.ComponentProps<typeof Drawer$1.Backdrop>;
11
+ type DrawerViewportProps = React.ComponentProps<typeof Drawer$1.Viewport>;
11
12
  type DrawerPopupProps = React.ComponentProps<typeof Drawer$1.Popup>;
12
13
  type DrawerTitleProps = React.ComponentProps<typeof Drawer$1.Title>;
13
14
  type DrawerDescriptionProps = React.ComponentProps<typeof Drawer$1.Description>;
@@ -32,6 +33,10 @@ declare function DrawerOverlay({
32
33
  className,
33
34
  ...props
34
35
  }: DrawerOverlayProps): _$react_jsx_runtime0.JSX.Element;
36
+ declare function DrawerViewport({
37
+ className,
38
+ ...props
39
+ }: DrawerViewportProps): _$react_jsx_runtime0.JSX.Element;
35
40
  declare function DrawerContent({
36
41
  className,
37
42
  children,
@@ -55,4 +60,4 @@ declare function DrawerDescription({
55
60
  ...props
56
61
  }: DrawerDescriptionProps): _$react_jsx_runtime0.JSX.Element;
57
62
  //#endregion
58
- export { Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger };
63
+ export { Drawer, DrawerClose, DrawerCloseProps, DrawerContent, DrawerContentProps, DrawerDescription, DrawerDescriptionProps, DrawerFooter, DrawerFooterProps, DrawerHeader, DrawerHeaderProps, DrawerOverlay, DrawerOverlayProps, DrawerPopupProps, DrawerPortal, DrawerPortalProps, DrawerProps, DrawerTitle, DrawerTitleProps, DrawerTrigger, DrawerTriggerProps, DrawerViewport, DrawerViewportProps };