@wheelhouse/ui 0.2.16 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/blocks/floating-menu-widget/floating-menu-widget.d.ts +4 -1
  2. package/dist/blocks/floating-menu-widget/floating-menu-widget.d.ts.map +1 -1
  3. package/dist/blocks/floating-menu-widget/floating-menu-widget.js +70 -22
  4. package/dist/blocks/floating-menu-widget/floating-menu-widget.stories.d.ts +1 -0
  5. package/dist/blocks/floating-menu-widget/floating-menu-widget.stories.d.ts.map +1 -1
  6. package/dist/blocks/floating-menu-widget/floating-menu-widget.stories.js +3 -0
  7. package/dist/blocks/floating-menu-widget/index.d.ts +1 -1
  8. package/dist/blocks/floating-menu-widget/index.d.ts.map +1 -1
  9. package/dist/components/badge/badge.d.ts +3 -3
  10. package/dist/components/badge/badge.js +3 -3
  11. package/dist/components/button/button.d.ts +8 -8
  12. package/dist/components/button/button.js +15 -15
  13. package/dist/components/button-group/button-group.js +3 -3
  14. package/dist/components/combobox/combobox.js +1 -1
  15. package/dist/components/data-grid/data-grid-column-filter.js +1 -1
  16. package/dist/components/data-grid/data-grid-column-header.js +1 -1
  17. package/dist/components/data-grid/data-grid-pagination.js +4 -4
  18. package/dist/components/data-grid/data-grid-table-dnd-rows.js +2 -2
  19. package/dist/components/data-grid/data-grid-table-dnd.js +1 -1
  20. package/dist/components/dialog/dialog.js +1 -1
  21. package/dist/components/filters/filter-date-metric-value.js +1 -1
  22. package/dist/components/input/input.js +4 -4
  23. package/dist/components/input-group/input-group.d.ts +1 -1
  24. package/dist/components/input-group/input-group.js +7 -7
  25. package/dist/components/native-select/native-select.js +1 -1
  26. package/dist/components/number-field/number-field.js +4 -4
  27. package/dist/components/select/select.js +1 -1
  28. package/dist/components/sheet/sheet.js +1 -1
  29. package/dist/components/sidebar/sidebar.js +6 -6
  30. package/dist/components/textarea/textarea.js +1 -1
  31. package/dist/components/toggle/toggle.d.ts +3 -3
  32. package/dist/components/toggle/toggle.d.ts.map +1 -1
  33. package/dist/components/toggle/toggle.js +3 -3
  34. package/dist/tsconfig.tsbuildinfo +1 -1
  35. package/package.json +1 -1
@@ -15,10 +15,10 @@ export function NumberFieldGroup({ className, ...props }) {
15
15
  return (_jsx(NumberFieldPrimitive.Group, { className: cn("relative flex w-full justify-between rounded-lg border border-input bg-background text-base text-foreground shadow-xs/5 ring-ring/24 transition-shadow not-dark:bg-clip-padding before:pointer-events-none before:absolute before:inset-0 before:rounded-[calc(var(--radius-lg)-1px)] not-data-disabled:not-focus-within:not-aria-invalid:before:shadow-[0_1px_--theme(--color-black/4%)] focus-within:border-ring focus-within:ring-[3px] has-autofill:bg-foreground/4 has-aria-invalid:border-destructive/36 focus-within:has-aria-invalid:border-destructive/64 focus-within:has-aria-invalid:ring-destructive/48 dark:bg-input/32 dark:not-data-disabled:not-focus-within:not-aria-invalid:before:shadow-[0_-1px_--theme(--color-white/6%)] dark:has-autofill:bg-foreground/8 dark:has-aria-invalid:ring-destructive/24 data-disabled:pointer-events-none data-disabled:opacity-64 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [[data-disabled],:focus-within,[aria-invalid]]:shadow-none", className), "data-slot": "number-field-group", ...props }));
16
16
  }
17
17
  export function NumberFieldDecrement({ className, children, ...props }) {
18
- return (_jsx(NumberFieldPrimitive.Decrement, { className: cn('relative flex shrink-0 cursor-pointer items-center justify-center rounded-s-[calc(var(--radius-lg)-1px)] px-[calc(--spacing(3)-1px)] transition-colors hover:bg-accent in-data-[size=sm]:px-[calc(--spacing(2.5)-1px)] pointer-coarse:after:absolute pointer-coarse:after:size-full pointer-coarse:after:min-h-11 pointer-coarse:after:min-w-11', className), "data-slot": "number-field-decrement", ...props, children: children ?? _jsx(MinusIcon, { className: "size-3" }) }));
18
+ return (_jsx(NumberFieldPrimitive.Decrement, { className: cn('relative flex shrink-0 cursor-pointer items-center justify-center rounded-s-[calc(var(--radius-lg)-1px)] px-[calc(--spacing(2.5)-1px)] transition-colors hover:bg-accent in-data-[size=sm]:px-[calc(--spacing(2)-1px)] pointer-coarse:after:absolute pointer-coarse:after:size-full pointer-coarse:after:min-h-11 pointer-coarse:after:min-w-11', className), "data-slot": "number-field-decrement", ...props, children: children ?? _jsx(MinusIcon, { className: "size-3" }) }));
19
19
  }
20
20
  export function NumberFieldIncrement({ className, children, ...props }) {
21
- return (_jsx(NumberFieldPrimitive.Increment, { className: cn('relative flex shrink-0 cursor-pointer items-center justify-center rounded-e-[calc(var(--radius-lg)-1px)] px-[calc(--spacing(3)-1px)] transition-colors hover:bg-accent in-data-[size=sm]:px-[calc(--spacing(2.5)-1px)] pointer-coarse:after:absolute pointer-coarse:after:size-full pointer-coarse:after:min-h-11 pointer-coarse:after:min-w-11', className), "data-slot": "number-field-increment", ...props, children: children ?? _jsx(PlusIcon, { className: "size-3" }) }));
21
+ return (_jsx(NumberFieldPrimitive.Increment, { className: cn('relative flex shrink-0 cursor-pointer items-center justify-center rounded-e-[calc(var(--radius-lg)-1px)] px-[calc(--spacing(2.5)-1px)] transition-colors hover:bg-accent in-data-[size=sm]:px-[calc(--spacing(2)-1px)] pointer-coarse:after:absolute pointer-coarse:after:size-full pointer-coarse:after:min-h-11 pointer-coarse:after:min-w-11', className), "data-slot": "number-field-increment", ...props, children: children ?? _jsx(PlusIcon, { className: "size-3" }) }));
22
22
  }
23
23
  /**
24
24
  * Static prefix or suffix that renders inside `NumberFieldGroup` (currency symbol, unit label, small icon).
@@ -31,10 +31,10 @@ export function NumberFieldAddon({ className, align = 'inline-start', ...props }
31
31
  if (e.target.closest('button'))
32
32
  return;
33
33
  e.currentTarget.parentElement?.querySelector('input')?.focus();
34
- }, className: cn("flex shrink-0 cursor-text items-center justify-center px-3 text-sm text-muted-foreground select-none in-data-[size=sm]:px-2.5 [&>svg]:pointer-events-none [&>svg:not([class*='size-'])]:size-4", align === 'inline-start' && 'order-first rounded-s-[calc(var(--radius-lg)-1px)] pe-0', align === 'inline-end' && 'order-last rounded-e-[calc(var(--radius-lg)-1px)] ps-0', className), ...props }));
34
+ }, className: cn("flex shrink-0 cursor-text items-center justify-center px-2.5 text-sm text-muted-foreground select-none in-data-[size=sm]:px-2 [&>svg]:pointer-events-none [&>svg:not([class*='size-'])]:size-3.5", align === 'inline-start' && 'order-first rounded-s-[calc(var(--radius-lg)-1px)] pe-0', align === 'inline-end' && 'order-last rounded-e-[calc(var(--radius-lg)-1px)] ps-0', className), ...props }));
35
35
  }
36
36
  export function NumberFieldInput({ className, ...props }) {
37
- return (_jsx(NumberFieldPrimitive.Input, { className: cn('h-8.5 w-full min-w-0 grow bg-transparent px-[calc(--spacing(3)-1px)] text-center leading-8.5 tabular-nums outline-none [transition:background-color_5000000s_ease-in-out_0s] in-data-[size=lg]:h-9.5 in-data-[size=lg]:leading-9.5 in-data-[size=sm]:h-7.5 in-data-[size=sm]:px-[calc(--spacing(2.5)-1px)] in-data-[size=sm]:leading-7.5 sm:h-7.5 sm:leading-7.5 sm:in-data-[size=lg]:h-8.5 sm:in-data-[size=lg]:leading-8.5 sm:in-data-[size=sm]:h-6.5 sm:in-data-[size=sm]:leading-8.5', className), "data-slot": "number-field-input", ...props }));
37
+ return (_jsx(NumberFieldPrimitive.Input, { className: cn('h-7.5 w-full min-w-0 grow bg-transparent px-[calc(--spacing(2.5)-1px)] text-center leading-7.5 tabular-nums outline-none [transition:background-color_5000000s_ease-in-out_0s] in-data-[size=lg]:h-8.5 in-data-[size=lg]:leading-8.5 in-data-[size=sm]:h-6.5 in-data-[size=sm]:px-[calc(--spacing(2)-1px)] in-data-[size=sm]:leading-6.5 sm:h-6.5 sm:leading-6.5 sm:in-data-[size=lg]:h-7.5 sm:in-data-[size=lg]:leading-7.5 sm:in-data-[size=sm]:h-5.5 sm:in-data-[size=sm]:leading-5.5', className), "data-slot": "number-field-input", ...props }));
38
38
  }
39
39
  export function NumberFieldScrubArea({ className, label, ...props }) {
40
40
  const context = React.useContext(NumberFieldContext);
@@ -21,7 +21,7 @@ function SelectValue({ className, ...props }) {
21
21
  }
22
22
  /** Button that opens the list popup; shows a chevron icon. */
23
23
  function SelectTrigger({ className, size = 'default', children, ...props }) {
24
- return (_jsxs(SelectPrimitive.Trigger, { "data-slot": "select-trigger", "data-size": size, className: cn("flex w-fit items-center justify-between gap-1.5 rounded-lg border border-input bg-transparent py-2 pr-2 pl-2.5 text-sm whitespace-nowrap transition-colors outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 data-placeholder:text-muted-foreground data-[size=default]:h-8 data-[size=sm]:h-7 data-[size=sm]:rounded-[min(var(--radius-md),10px)] *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-1.5 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className), ...props, children: [children, _jsx(SelectPrimitive.Icon, { render: _jsx(ChevronDown, { className: "pointer-events-none size-4 text-muted-foreground" }) })] }));
24
+ return (_jsxs(SelectPrimitive.Trigger, { "data-slot": "select-trigger", "data-size": size, className: cn("flex w-fit items-center justify-between gap-1.5 rounded-lg border border-input bg-transparent py-2 pr-2 pl-2.5 text-sm whitespace-nowrap transition-colors outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 data-placeholder:text-muted-foreground data-[size=default]:h-7 data-[size=default]:rounded-[min(var(--radius-md),10px)] data-[size=sm]:h-6 data-[size=sm]:rounded-[min(var(--radius-md),10px)] *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-1.5 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className), ...props, children: [children, _jsx(SelectPrimitive.Icon, { render: _jsx(ChevronDown, { className: "pointer-events-none size-4 text-muted-foreground" }) })] }));
25
25
  }
26
26
  /** Portal, positioner, and scrollable list surface for options. */
27
27
  function SelectContent({ className, children, side = 'bottom', sideOffset = 4, align = 'center', alignOffset = 0, alignItemWithTrigger = true, ...props }) {
@@ -21,7 +21,7 @@ function SheetOverlay({ className, ...props }) {
21
21
  return (_jsx(SheetPrimitive.Backdrop, { "data-slot": "sheet-overlay", className: cn('fixed inset-0 z-50 bg-black/10 transition-opacity duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0 supports-backdrop-filter:backdrop-blur-xs', className), ...props }));
22
22
  }
23
23
  function SheetContent({ className, children, side = 'right', showCloseButton = true, ...props }) {
24
- return (_jsxs(SheetPortal, { children: [_jsx(SheetOverlay, {}), _jsxs(SheetPrimitive.Popup, { "data-slot": "sheet-content", "data-side": side, className: cn('fixed z-50 flex flex-col gap-4 bg-popover bg-clip-padding text-sm text-popover-foreground shadow-lg transition duration-200 ease-in-out data-ending-style:opacity-0 data-starting-style:opacity-0 data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=bottom]:data-ending-style:translate-y-[2.5rem] data-[side=bottom]:data-starting-style:translate-y-[2.5rem] data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-r data-[side=left]:data-ending-style:translate-x-[-2.5rem] data-[side=left]:data-starting-style:translate-x-[-2.5rem] data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-l data-[side=right]:data-ending-style:translate-x-[2.5rem] data-[side=right]:data-starting-style:translate-x-[2.5rem] data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=top]:data-ending-style:translate-y-[-2.5rem] data-[side=top]:data-starting-style:translate-y-[-2.5rem] data-[side=left]:sm:max-w-sm data-[side=right]:sm:max-w-sm', className), ...props, children: [children, showCloseButton && (_jsxs(SheetPrimitive.Close, { "data-slot": "sheet-close", render: _jsx(Button, { variant: "ghost", className: "absolute top-3 right-3", size: "icon-sm" }), children: [_jsx(X, {}), _jsx("span", { className: "sr-only", children: "Close" })] }))] })] }));
24
+ return (_jsxs(SheetPortal, { children: [_jsx(SheetOverlay, {}), _jsxs(SheetPrimitive.Popup, { "data-slot": "sheet-content", "data-side": side, className: cn('fixed z-50 flex flex-col gap-4 bg-popover bg-clip-padding text-sm text-popover-foreground shadow-lg transition duration-200 ease-in-out data-ending-style:opacity-0 data-starting-style:opacity-0 data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=bottom]:data-ending-style:translate-y-[2.5rem] data-[side=bottom]:data-starting-style:translate-y-[2.5rem] data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-r data-[side=left]:data-ending-style:translate-x-[-2.5rem] data-[side=left]:data-starting-style:translate-x-[-2.5rem] data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-l data-[side=right]:data-ending-style:translate-x-[2.5rem] data-[side=right]:data-starting-style:translate-x-[2.5rem] data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=top]:data-ending-style:translate-y-[-2.5rem] data-[side=top]:data-starting-style:translate-y-[-2.5rem] data-[side=left]:sm:max-w-sm data-[side=right]:sm:max-w-sm', className), ...props, children: [children, showCloseButton && (_jsxs(SheetPrimitive.Close, { "data-slot": "sheet-close", render: _jsx(Button, { variant: "ghost", className: "absolute top-3 right-3", size: "icon" }), children: [_jsx(X, {}), _jsx("span", { className: "sr-only", children: "Close" })] }))] })] }));
25
25
  }
26
26
  function SheetHeader({ className, ...props }) {
27
27
  return _jsx("div", { "data-slot": "sheet-header", className: cn('flex flex-col gap-0.5 p-4', className), ...props });
@@ -98,7 +98,7 @@ function Sidebar({ side = 'left', variant = 'sidebar', collapsible = 'offcanvas'
98
98
  }
99
99
  function SidebarTrigger({ className, onClick, ...props }) {
100
100
  const { toggleSidebar } = useSidebar();
101
- return (_jsxs(Button, { "data-sidebar": "trigger", "data-slot": "sidebar-trigger", variant: "ghost", size: "icon-sm", className: cn(className), onClick: (event) => {
101
+ return (_jsxs(Button, { "data-sidebar": "trigger", "data-slot": "sidebar-trigger", variant: "ghost", size: "icon", className: cn(className), onClick: (event) => {
102
102
  onClick?.(event);
103
103
  toggleSidebar();
104
104
  }, ...props, children: [_jsx(PanelLeftIcon, {}), _jsx("span", { className: "sr-only", children: "Toggle Sidebar" })] }));
@@ -170,8 +170,8 @@ const sidebarMenuButtonVariants = cva('peer/menu-button group/menu-button flex w
170
170
  outline: 'bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]',
171
171
  },
172
172
  size: {
173
- default: 'h-8 text-sm',
174
- sm: 'h-7 text-xs',
173
+ default: 'h-7 text-sm',
174
+ sm: 'h-6 text-xs',
175
175
  lg: 'h-12 text-sm group-data-[collapsible=icon]:p-0!',
176
176
  },
177
177
  },
@@ -209,7 +209,7 @@ function SidebarMenuAction({ className, render, showOnHover = false, ...props })
209
209
  return useRender({
210
210
  defaultTagName: 'button',
211
211
  props: mergeProps({
212
- className: cn('absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[size=default]/menu-button:top-1.5 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-1 after:absolute after:-inset-2 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 md:after:hidden [&>svg]:size-4 [&>svg]:shrink-0', showOnHover &&
212
+ className: cn('absolute top-1 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[size=default]/menu-button:top-1 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-0.5 after:absolute after:-inset-2 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 md:after:hidden [&>svg]:size-4 [&>svg]:shrink-0', showOnHover &&
213
213
  'group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 peer-data-active/menu-button:text-sidebar-accent-foreground aria-expanded:opacity-100 md:opacity-0', className),
214
214
  }, props),
215
215
  render,
@@ -220,7 +220,7 @@ function SidebarMenuAction({ className, render, showOnHover = false, ...props })
220
220
  });
221
221
  }
222
222
  function SidebarMenuBadge({ className, ...props }) {
223
- return (_jsx("div", { "data-slot": "sidebar-menu-badge", "data-sidebar": "menu-badge", className: cn('pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium text-sidebar-foreground tabular-nums select-none group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[size=default]/menu-button:top-1.5 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-1 peer-data-active/menu-button:text-sidebar-accent-foreground', className), ...props }));
223
+ return (_jsx("div", { "data-slot": "sidebar-menu-badge", "data-sidebar": "menu-badge", className: cn('pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium text-sidebar-foreground tabular-nums select-none group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[size=default]/menu-button:top-1 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-0.5 peer-data-active/menu-button:text-sidebar-accent-foreground', className), ...props }));
224
224
  }
225
225
  function SidebarMenuSkeleton({ className, showIcon = false, ...props }) {
226
226
  // Random width between 50 to 90%.
@@ -241,7 +241,7 @@ function SidebarMenuSubButton({ render, size = 'md', isActive = false, className
241
241
  return useRender({
242
242
  defaultTagName: 'a',
243
243
  props: mergeProps({
244
- className: cn('flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground ring-sidebar-ring outline-hidden group-data-[collapsible=icon]:hidden hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[size=md]:text-sm data-[size=sm]:text-xs data-active:bg-sidebar-accent data-active:text-sidebar-accent-foreground [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground', className),
244
+ className: cn('flex h-6 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground ring-sidebar-ring outline-hidden group-data-[collapsible=icon]:hidden hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[size=md]:text-sm data-[size=sm]:text-xs data-active:bg-sidebar-accent data-active:text-sidebar-accent-foreground [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground', className),
245
245
  }, props),
246
246
  render,
247
247
  state: {
@@ -5,6 +5,6 @@ import { cn } from '../../lib/utils';
5
5
  * Multi-line text input with design-system borders, focus rings, and invalid states.
6
6
  */
7
7
  const Textarea = React.forwardRef(function Textarea({ className, ...props }, ref) {
8
- return (_jsx("textarea", { ref: ref, "data-slot": "textarea", className: cn('flex field-sizing-content min-h-16 w-full rounded-lg border border-input bg-transparent px-2.5 py-2 text-base transition-colors outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40', className), ...props }));
8
+ return (_jsx("textarea", { ref: ref, "data-slot": "textarea", className: cn('flex field-sizing-content min-h-16 w-full rounded-lg border border-input bg-transparent px-2.5 py-1.5 text-sm transition-colors outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40', className), ...props }));
9
9
  });
10
10
  export { Textarea };
@@ -5,9 +5,9 @@ declare const toggleVariantStyles: {
5
5
  readonly outline: "border border-input bg-transparent hover:bg-muted";
6
6
  };
7
7
  declare const toggleSizeStyles: {
8
- readonly default: "h-8 min-w-8 px-2.5 text-base has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2";
9
- readonly sm: "h-7 min-w-7 rounded-[min(var(--radius-md),12px)] px-2.5 text-sm has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5";
10
- readonly lg: "h-9 min-w-9 px-2.5 text-base has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2";
8
+ readonly default: "h-7 min-w-7 rounded-[min(var(--radius-md),12px)] px-2.5 text-sm has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5";
9
+ readonly sm: "h-6 min-w-6 rounded-[min(var(--radius-md),10px)] px-2 text-xs has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3";
10
+ readonly lg: "h-8 min-w-8 px-2.5 text-base has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2";
11
11
  };
12
12
  export declare const toggleVariantKeys: (keyof typeof toggleVariantStyles)[];
13
13
  export declare const toggleSizeKeys: (keyof typeof toggleSizeStyles)[];
@@ -1 +1 @@
1
- {"version":3,"file":"toggle.d.ts","sourceRoot":"","sources":["../../../src/components/toggle/toggle.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAIlE,QAAA,MAAM,mBAAmB;;;CAGf,CAAC;AAEX,QAAA,MAAM,gBAAgB;;;;CAIZ,CAAC;AAEX,eAAO,MAAM,iBAAiB,EAAuC,CAAC,MAAM,OAAO,mBAAmB,CAAC,EAAE,CAAC;AAE1G,eAAO,MAAM,cAAc,EAAoC,CAAC,MAAM,OAAO,gBAAgB,CAAC,EAAE,CAAC;AAEjG,QAAA,MAAM,cAAc;;;8EAYnB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,eAAe,CAAC,KAAK,GAAG,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/G;;;GAGG;AACH,iBAAS,MAAM,CAAC,EAAE,SAAS,EAAE,OAAmB,EAAE,IAAgB,EAAE,GAAG,KAAK,EAAE,EAAE,WAAW,2CAE1F;AAED,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"toggle.d.ts","sourceRoot":"","sources":["../../../src/components/toggle/toggle.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAIlE,QAAA,MAAM,mBAAmB;;;CAGf,CAAC;AAEX,QAAA,MAAM,gBAAgB;;;;CAKZ,CAAC;AAEX,eAAO,MAAM,iBAAiB,EAAuC,CAAC,MAAM,OAAO,mBAAmB,CAAC,EAAE,CAAC;AAE1G,eAAO,MAAM,cAAc,EAAoC,CAAC,MAAM,OAAO,gBAAgB,CAAC,EAAE,CAAC;AAEjG,QAAA,MAAM,cAAc;;;8EAYnB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,eAAe,CAAC,KAAK,GAAG,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/G;;;GAGG;AACH,iBAAS,MAAM,CAAC,EAAE,SAAS,EAAE,OAAmB,EAAE,IAAgB,EAAE,GAAG,KAAK,EAAE,EAAE,WAAW,2CAE1F;AAED,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC"}
@@ -7,9 +7,9 @@ const toggleVariantStyles = {
7
7
  outline: 'border border-input bg-transparent hover:bg-muted',
8
8
  };
9
9
  const toggleSizeStyles = {
10
- default: 'h-8 min-w-8 px-2.5 text-base has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2',
11
- sm: "h-7 min-w-7 rounded-[min(var(--radius-md),12px)] px-2.5 text-sm has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5",
12
- lg: 'h-9 min-w-9 px-2.5 text-base has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2',
10
+ default: "h-7 min-w-7 rounded-[min(var(--radius-md),12px)] px-2.5 text-sm has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5",
11
+ sm: "h-6 min-w-6 rounded-[min(var(--radius-md),10px)] px-2 text-xs has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3",
12
+ lg: 'h-8 min-w-8 px-2.5 text-base has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2',
13
13
  };
14
14
  export const toggleVariantKeys = Object.keys(toggleVariantStyles);
15
15
  export const toggleSizeKeys = Object.keys(toggleSizeStyles);