@ship-it-ui/ui 0.0.4 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { ClassValue } from 'clsx';
2
2
  export { ClassValue } from 'clsx';
3
3
  import * as react from 'react';
4
- import { useEffect, KeyboardEvent, RefObject, ButtonHTMLAttributes, ReactNode, HTMLAttributes, InputHTMLAttributes, TextareaHTMLAttributes, AnchorHTMLAttributes, Ref, LabelHTMLAttributes, FC, SVGAttributes } from 'react';
4
+ import { useEffect, KeyboardEvent, RefObject, ButtonHTMLAttributes, ReactNode, HTMLAttributes, InputHTMLAttributes, TextareaHTMLAttributes, AnchorHTMLAttributes, Ref, LabelHTMLAttributes, FC, SVGAttributes, MouseEventHandler } from 'react';
5
5
  import * as class_variance_authority_types from 'class-variance-authority/types';
6
6
  import { VariantProps } from 'class-variance-authority';
7
7
  import * as RadixCheckbox from '@radix-ui/react-checkbox';
@@ -154,6 +154,7 @@ declare function useTheme(): {
154
154
  declare const buttonStyles: (props?: ({
155
155
  variant?: "primary" | "secondary" | "ghost" | "outline" | "destructive" | "success" | "link" | null | undefined;
156
156
  size?: "sm" | "md" | "lg" | null | undefined;
157
+ density?: "comfortable" | "touch" | null | undefined;
157
158
  fullWidth?: boolean | null | undefined;
158
159
  } & class_variance_authority_types.ClassProp) | undefined) => string;
159
160
  interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonStyles> {
@@ -174,6 +175,7 @@ declare const Button: react.ForwardRefExoticComponent<ButtonProps & react.RefAtt
174
175
  declare const iconButtonStyles: (props?: ({
175
176
  variant?: "primary" | "secondary" | "ghost" | "outline" | "destructive" | "success" | null | undefined;
176
177
  size?: "sm" | "md" | "lg" | null | undefined;
178
+ density?: "comfortable" | "touch" | null | undefined;
177
179
  } & class_variance_authority_types.ClassProp) | undefined) => string;
178
180
  interface IconButtonProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'>, VariantProps<typeof iconButtonStyles> {
179
181
  /** The glyph or icon node to render. Pure decoration — set `aria-label` for screen readers. */
@@ -248,6 +250,11 @@ declare const FAB: react.ForwardRefExoticComponent<FABProps & react.RefAttribute
248
250
  interface CheckboxProps extends Omit<RadixCheckbox.CheckboxProps, 'asChild' | 'children'> {
249
251
  /** Optional inline label rendered to the right of the box. */
250
252
  label?: ReactNode;
253
+ /**
254
+ * `'comfortable'` (default) renders the desktop checkbox. `'touch'` bumps the
255
+ * box to 22×22 inside a 44pt-min row so the whole label is tappable.
256
+ */
257
+ density?: 'comfortable' | 'touch';
251
258
  }
252
259
  /**
253
260
  * Tri-state checkbox. Set `checked="indeterminate"` for the dash-mark state used
@@ -287,6 +294,7 @@ declare function Field({ label, hint, error, required, className, children, ...p
287
294
  declare const inputWrapperStyles: (props?: ({
288
295
  size?: "sm" | "md" | "lg" | null | undefined;
289
296
  tone?: "default" | "err" | null | undefined;
297
+ density?: "comfortable" | "touch" | null | undefined;
290
298
  } & class_variance_authority_types.ClassProp) | undefined) => string;
291
299
  interface InputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size'>, VariantProps<typeof inputWrapperStyles> {
292
300
  /** Element rendered to the left of the input (an `IconGlyph`, `@`, etc.). */
@@ -305,6 +313,12 @@ interface SearchInputProps extends InputHTMLAttributes<HTMLInputElement> {
305
313
  shortcut?: string;
306
314
  /** Pixel width or any CSS length. Defaults to `360px`. */
307
315
  width?: number | string;
316
+ /**
317
+ * `'comfortable'` (default) renders the desktop 36px-tall pill. `'touch'`
318
+ * bumps to 44pt for thumb tapping and removes the kbd shortcut by default
319
+ * (consumers can still pass `shortcut` explicitly).
320
+ */
321
+ density?: 'comfortable' | 'touch';
308
322
  }
309
323
  /**
310
324
  * The hero search field — taller than a regular Input, with a leading magnifying-glass
@@ -432,6 +446,11 @@ interface SwitchProps extends Omit<RadixSwitch.SwitchProps, 'asChild' | 'childre
432
446
  label?: ReactNode;
433
447
  /** Visual size. Default `md`. */
434
448
  size?: 'sm' | 'md';
449
+ /**
450
+ * `'comfortable'` (default) renders the desktop switch. `'touch'` swaps to the
451
+ * mobile track/thumb dimensions (50×30) for thumb-friendly toggling.
452
+ */
453
+ density?: 'comfortable' | 'touch';
435
454
  }
436
455
  declare const Switch: react.ForwardRefExoticComponent<SwitchProps & react.RefAttributes<HTMLButtonElement>>;
437
456
 
@@ -494,6 +513,7 @@ declare const Badge: react.ForwardRefExoticComponent<BadgeProps & react.RefAttri
494
513
  declare const cardStyles: (props?: ({
495
514
  variant?: "ghost" | "default" | "elevated" | null | undefined;
496
515
  interactive?: boolean | null | undefined;
516
+ density?: "comfortable" | "touch" | null | undefined;
497
517
  } & class_variance_authority_types.ClassProp) | undefined) => string;
498
518
  interface CardProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'>, VariantProps<typeof cardStyles> {
499
519
  /** Render a header row with this title (and optional `actions`). */
@@ -577,6 +597,11 @@ interface ChipProps extends HTMLAttributes<HTMLSpanElement> {
577
597
  * Mirrors the `Tag` API — pass `onRemove` and the X is rendered automatically.
578
598
  */
579
599
  onRemove?: () => void;
600
+ /**
601
+ * `'comfortable'` (default) renders the desktop chip at 26px tall.
602
+ * `'touch'` swaps to a roomier 32px chip with larger text for mobile filter strips.
603
+ */
604
+ density?: 'comfortable' | 'touch';
580
605
  children: ReactNode;
581
606
  }
582
607
  /**
@@ -743,19 +768,39 @@ interface DialogProps extends RadixDialog.DialogProps {
743
768
  }
744
769
  declare function Dialog({ title, description, footer, width, children, ...rootProps }: DialogProps): react_jsx_runtime.JSX.Element;
745
770
 
746
- type DrawerSide = 'left' | 'right';
771
+ type DrawerSide = 'left' | 'right' | 'bottom';
747
772
  interface DrawerProps extends RadixDialog.DialogProps {
748
773
  /** Side the drawer slides in from. */
749
774
  side?: DrawerSide;
750
775
  /** Title rendered in the drawer header (with built-in close button). */
751
776
  title?: ReactNode;
752
- /** Width override. Defaults to 420. */
777
+ /**
778
+ * Width override. Defaults to 420 for left/right sides; ignored for `bottom`
779
+ * (a bottom sheet always spans the full viewport width).
780
+ */
753
781
  width?: number | string;
782
+ /**
783
+ * Height override for the `bottom` side. Pass a number (px) or any CSS length
784
+ * (e.g. `'85vh'`). Defaults to `'85vh'` — leaves a 15vh peek of the underlying
785
+ * surface, matching iOS bottom-sheet conventions.
786
+ */
787
+ height?: number | string;
788
+ /**
789
+ * Show the drag-handle pill at the top of the sheet. Defaults to `true` for
790
+ * `side="bottom"`, ignored for left/right. The handle is visual only — full
791
+ * gesture-driven dismissal is left to consumer code (Radix Dialog already
792
+ * handles ESC, overlay click, and focus trap).
793
+ */
794
+ handle?: boolean;
754
795
  children?: ReactNode;
755
796
  }
756
797
  /**
757
798
  * Side-panel overlay. Same focus-trap + ESC + backdrop semantics as Dialog,
758
799
  * just slid in from the side.
800
+ *
801
+ * `side="bottom"` produces a mobile bottom sheet: full-width, rounded top
802
+ * corners (`--radius-m-sheet`), slide-up animation, and an optional drag
803
+ * handle (`handle`, defaults to `true`).
759
804
  */
760
805
  declare const Drawer: react.ForwardRefExoticComponent<DrawerProps & react.RefAttributes<HTMLDivElement>>;
761
806
 
@@ -1387,6 +1432,25 @@ interface HealthScoreProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'>
1387
1432
  }
1388
1433
  declare const HealthScore: react.ForwardRefExoticComponent<HealthScoreProps & react.RefAttributes<HTMLDivElement>>;
1389
1434
 
1435
+ /**
1436
+ * LargeTitle — iOS-style oversized headline block. Renders an optional eyebrow
1437
+ * (small uppercase mono label) above a 30px headline, with an optional trailing
1438
+ * slot (typically an avatar or icon button) on the right.
1439
+ *
1440
+ * Place at the top of a scrolling screen. Pair with `<Topbar density="touch" />`
1441
+ * for the scroll-revealing pattern: hide the Topbar title until the LargeTitle
1442
+ * scrolls under the bar.
1443
+ */
1444
+ interface LargeTitleProps extends Omit<HTMLAttributes<HTMLElement>, 'title'> {
1445
+ /** Headline text. */
1446
+ title: ReactNode;
1447
+ /** Optional eyebrow label rendered above the title. Small, uppercase, mono. */
1448
+ eyebrow?: ReactNode;
1449
+ /** Optional right-aligned slot (avatar, settings button, etc.). */
1450
+ trailing?: ReactNode;
1451
+ }
1452
+ declare const LargeTitle: react.ForwardRefExoticComponent<LargeTitleProps & react.RefAttributes<HTMLElement>>;
1453
+
1390
1454
  /**
1391
1455
  * Menubar — desktop-style horizontal menu strip (File, Edit, View, …) built on
1392
1456
  * Radix Menubar. Owns ARIA + keyboard semantics; ShipIt owns styling.
@@ -1538,6 +1602,25 @@ interface ProgressProps extends Omit<HTMLAttributes<HTMLDivElement>, 'role'>, Va
1538
1602
  }
1539
1603
  declare const Progress: react.ForwardRefExoticComponent<ProgressProps & react.RefAttributes<HTMLDivElement>>;
1540
1604
 
1605
+ /**
1606
+ * PullToRefresh — controlled visual indicator for the pull-to-refresh
1607
+ * interaction. Renders the rotating arrow + state label that appears at the
1608
+ * top of a scrolling list as the user pulls.
1609
+ *
1610
+ * This is the *visual* primitive only. The gesture (touch tracking, threshold
1611
+ * detection, async refresh) is left to the consumer because that wiring is
1612
+ * app-specific (router refresh, query invalidation, route reload, etc.). Pass
1613
+ * the current `state` and the indicator updates to match.
1614
+ */
1615
+ type PullToRefreshState = 'idle' | 'pulling' | 'ready' | 'loading';
1616
+ interface PullToRefreshProps extends HTMLAttributes<HTMLDivElement> {
1617
+ /** Current state. Drive this from your gesture handler. */
1618
+ state?: PullToRefreshState;
1619
+ /** Override the default state label. */
1620
+ label?: ReactNode;
1621
+ }
1622
+ declare const PullToRefresh: react.ForwardRefExoticComponent<PullToRefreshProps & react.RefAttributes<HTMLDivElement>>;
1623
+
1541
1624
  /**
1542
1625
  * Sidebar — primary app navigation column. A simple flex column with the
1543
1626
  * panel background and a right border. Compose with `<NavItem>` and
@@ -1663,6 +1746,43 @@ interface StepperProps extends HTMLAttributes<HTMLOListElement> {
1663
1746
  }
1664
1747
  declare const Stepper: react.ForwardRefExoticComponent<StepperProps & react.RefAttributes<HTMLOListElement>>;
1665
1748
 
1749
+ /**
1750
+ * TabBar — mobile bottom navigation. Renders an evenly-spaced row of items
1751
+ * (typically 4–5) with optional `elevated` styling for one center action.
1752
+ *
1753
+ * Active state can be controlled (`value` + `onValueChange`) or uncontrolled
1754
+ * (`defaultValue`). The bar sits at the bottom of the screen; pair with
1755
+ * `pb-[env(safe-area-inset-bottom)]` on the surrounding scroll container to
1756
+ * respect the iOS home indicator.
1757
+ */
1758
+ interface TabBarItem {
1759
+ /** Stable identifier — what `value` / `onValueChange` reference. */
1760
+ id: string;
1761
+ /** Short label rendered under the icon. */
1762
+ label: ReactNode;
1763
+ /** Glyph node — pass an SVG, IconGlyph, or string emoji. */
1764
+ icon: ReactNode;
1765
+ /** Optional unread / count badge rendered top-right of the icon. */
1766
+ badge?: ReactNode;
1767
+ /**
1768
+ * Render this slot as an elevated pill (the center "Ask"-style action). Only
1769
+ * one item should set this true. Disables the active-color treatment for
1770
+ * this slot since it's always the focal action.
1771
+ */
1772
+ elevated?: boolean;
1773
+ disabled?: boolean;
1774
+ }
1775
+ interface TabBarProps extends Omit<HTMLAttributes<HTMLElement>, 'defaultValue'> {
1776
+ items: TabBarItem[];
1777
+ /** Controlled active item id. */
1778
+ value?: string;
1779
+ /** Uncontrolled initial active item id. */
1780
+ defaultValue?: string;
1781
+ /** Fired when a tab is activated. */
1782
+ onValueChange?: (id: string) => void;
1783
+ }
1784
+ declare const TabBar: react.ForwardRefExoticComponent<TabBarProps & react.RefAttributes<HTMLElement>>;
1785
+
1666
1786
  /**
1667
1787
  * Tabs — two visual styles built on Radix Tabs.
1668
1788
  *
@@ -1763,17 +1883,43 @@ interface ActivityTimelineProps extends HTMLAttributes<HTMLOListElement> {
1763
1883
  declare const ActivityTimeline: react.ForwardRefExoticComponent<ActivityTimelineProps & react.RefAttributes<HTMLOListElement>>;
1764
1884
 
1765
1885
  /**
1766
- * Topbar — slim header strip across the top of an app surface. The title
1767
- * lives on the left, the rest of the row is yours via `actions` (search,
1768
- * settings, avatar, etc.).
1886
+ * Topbar — slim header strip across the top of an app surface.
1887
+ *
1888
+ * Default (`density="comfortable"`) renders the 52px desktop header with a
1889
+ * title on the left and `actions` on the right. Pass `density="touch"` for the
1890
+ * 56px mobile page-header variant that adds an optional `back` button and an
1891
+ * `eyebrow` line (small uppercase mono label) above the title — the same shape
1892
+ * the Mobile Library uses as its in-app nav bar.
1769
1893
  */
1770
1894
  interface TopbarProps extends Omit<HTMLAttributes<HTMLElement>, 'title'> {
1771
1895
  /** Title rendered on the left. */
1772
1896
  title?: ReactNode;
1897
+ /**
1898
+ * Eyebrow label rendered above the title (small uppercase mono). Touch density
1899
+ * only — silently ignored on desktop density to avoid two header tiers stacking.
1900
+ */
1901
+ eyebrow?: ReactNode;
1773
1902
  /** Left-of-title slot — typically a logo or breadcrumbs. */
1774
1903
  leading?: ReactNode;
1775
- /** Right-side action group. Rendered with `gap-3`. */
1904
+ /**
1905
+ * Renders the back-arrow button at the start (before `leading`). Pass
1906
+ * `back={true}` for the declarative form and wire the handler via `onBack`,
1907
+ * or pass `back={handler}` directly. Touch-density only; ignored on
1908
+ * desktop density.
1909
+ */
1910
+ back?: boolean | MouseEventHandler<HTMLButtonElement>;
1911
+ /**
1912
+ * Handler for the back button when `back={true}`. Ignored when `back` is
1913
+ * itself a function — in that case `back` is the handler.
1914
+ */
1915
+ onBack?: MouseEventHandler<HTMLButtonElement>;
1916
+ /** Right-side action group. Rendered with `gap-3` (desktop) or `gap-1` (touch). */
1776
1917
  actions?: ReactNode;
1918
+ /**
1919
+ * `'comfortable'` (default) → desktop 52px header. `'touch'` → mobile 56px
1920
+ * page-header with optional back button + eyebrow.
1921
+ */
1922
+ density?: 'comfortable' | 'touch';
1777
1923
  }
1778
1924
  declare const Topbar: react.ForwardRefExoticComponent<TopbarProps & react.RefAttributes<HTMLElement>>;
1779
1925
 
@@ -1871,4 +2017,4 @@ interface WizardDialogProps {
1871
2017
  }
1872
2018
  declare const WizardDialog: react.ForwardRefExoticComponent<WizardDialogProps & react.RefAttributes<HTMLDivElement>>;
1873
2019
 
1874
- export { type ActivityActor, type ActivityEvent, ActivityTimeline, type ActivityTimelineProps, Alert, AlertDialog, AlertDialogAction, AlertDialogCancel, type AlertDialogProps, AlertDialogRoot, AlertDialogTrigger, type AlertProps, type AlertTone, Avatar, AvatarGroup, type AvatarGroupProps, type AvatarProps, type AvatarSize, type AvatarStatus, Badge, type BadgeProps, Banner, type BannerProps, type BannerTone, Breadcrumbs, type BreadcrumbsProps, Button, ButtonGroup, type ButtonGroupProps, type ButtonProps, Calendar, type CalendarProps, Card, CardLink, type CardLinkProps, type CardProps, Checkbox, type CheckboxProps, Chip, type ChipProps, Combobox, type ComboboxOption, type ComboboxProps, CommandPalette, type CommandPaletteGroup, type CommandPaletteItem, type CommandPaletteProps, ContextMenu, ContextMenuContent, ContextMenuItem, type ContextMenuItemProps, ContextMenuPortal, ContextMenuRoot, ContextMenuSeparator, ContextMenuTrigger, Crumb, type CrumbProps, DataTable, type DataTableColumn, type DataTableProps, type DataTableSort, DatePicker, type DatePickerProps, Dialog, DialogClose, DialogContent, type DialogContentProps, DialogOverlay, DialogPortal, type DialogProps, DialogRoot, DialogTrigger, Dots, type DotsProps, Drawer, type DrawerProps, type DrawerSide, DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRoot, DropdownMenuTrigger, Dropzone, type DropzoneProps, EmptyState, type EmptyStateProps, FAB, type FABProps, Field, type FieldProps, FileChip, type FileChipProps, type FilterFacet, type FilterFacetOption, FilterPanel, type FilterPanelProps, type FilterPanelValue, HealthScore, type HealthScoreBreakdownEntry, type HealthScoreProps, HoverCard, HoverCardContent, HoverCardPortal, type HoverCardProps, HoverCardRoot, HoverCardTrigger, IconButton, type IconButtonProps, Input, type InputProps, Kbd, type KbdProps, MenuCheckboxItem, MenuItem, type MenuItemProps, MenuSeparator, Menubar, MenubarContent, MenubarItem, type MenubarItemProps, MenubarMenu, MenubarSeparator, MenubarTrigger, NavBar, type NavBarItem, type NavBarOrientation, type NavBarProps, NavItem, type NavItemProps, NavSection, type NavSectionProps, type NormalizedOption, OTP, type OTPHandle, type OTPProps, OnboardingChecklist, type OnboardingChecklistProps, type OnboardingItem, type OnboardingItemStatus, Pagination, type PaginationProps, Popover, PopoverAnchor, PopoverArrow, PopoverClose, PopoverContent, PopoverPortal, PopoverRoot, PopoverTrigger, Progress, type ProgressProps, RadialProgress, type RadialProgressProps, type RadialTone, Radio, RadioGroup, type RadioGroupProps, type RadioProps, ScrollArea, type ScrollAreaProps, type ScrollAreaType, SearchInput, type SearchInputProps, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, type SelectOption, type SelectProps, SelectRoot, SelectTrigger, SelectValue, Sheet, type SheetProps, Sidebar, type SidebarProps, Skeleton, SkeletonGroup, type SkeletonGroupProps, type SkeletonProps, Slider, type SliderProps, Sparkline, type SparklineProps, Spinner, type SpinnerProps, SplitButton, type SplitButtonProps, StatCard, type StatCardProps, type StatTrend, StatusDot, type StatusDotProps, type StatusState, type StepState, Stepper, type StepperProps, type StepperStep, Switch, type SwitchProps, Tab, type TabProps, Tabs, TabsContent, TabsList, type TabsProps, type TabsVariantProps, Tag, type TagProps, Textarea, type TextareaProps, type Theme, Timeline, type TimelineEvent, type TimelineEventTone, TimelineItem, type TimelineItemProps, type TimelineProps, ToastCard, type ToastInput, ToastProvider, type ToastVariant, Tooltip, TooltipArrow, TooltipContent, TooltipPortal, type TooltipProps, TooltipProvider, TooltipRoot, TooltipTrigger, Topbar, type TopbarProps, Tree, type TreeItem, type TreeProps, type UseControllableStateProps, type UseKeyboardListOptions, type UseKeyboardListResult, type WizardContext, WizardDialog, type WizardDialogProps, type WizardStep, badgeStyles, buttonStyles, cardStyles, cn, filterCommandItems, formatRelative, iconButtonStyles, useControllableState, useDisclosure, useEscape, useIsomorphicLayoutEffect, useKeyboardList, useOutsideClick, useTheme, useToast };
2020
+ export { type ActivityActor, type ActivityEvent, ActivityTimeline, type ActivityTimelineProps, Alert, AlertDialog, AlertDialogAction, AlertDialogCancel, type AlertDialogProps, AlertDialogRoot, AlertDialogTrigger, type AlertProps, type AlertTone, Avatar, AvatarGroup, type AvatarGroupProps, type AvatarProps, type AvatarSize, type AvatarStatus, Badge, type BadgeProps, Banner, type BannerProps, type BannerTone, Breadcrumbs, type BreadcrumbsProps, Button, ButtonGroup, type ButtonGroupProps, type ButtonProps, Calendar, type CalendarProps, Card, CardLink, type CardLinkProps, type CardProps, Checkbox, type CheckboxProps, Chip, type ChipProps, Combobox, type ComboboxOption, type ComboboxProps, CommandPalette, type CommandPaletteGroup, type CommandPaletteItem, type CommandPaletteProps, ContextMenu, ContextMenuContent, ContextMenuItem, type ContextMenuItemProps, ContextMenuPortal, ContextMenuRoot, ContextMenuSeparator, ContextMenuTrigger, Crumb, type CrumbProps, DataTable, type DataTableColumn, type DataTableProps, type DataTableSort, DatePicker, type DatePickerProps, Dialog, DialogClose, DialogContent, type DialogContentProps, DialogOverlay, DialogPortal, type DialogProps, DialogRoot, DialogTrigger, Dots, type DotsProps, Drawer, type DrawerProps, type DrawerSide, DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRoot, DropdownMenuTrigger, Dropzone, type DropzoneProps, EmptyState, type EmptyStateProps, FAB, type FABProps, Field, type FieldProps, FileChip, type FileChipProps, type FilterFacet, type FilterFacetOption, FilterPanel, type FilterPanelProps, type FilterPanelValue, HealthScore, type HealthScoreBreakdownEntry, type HealthScoreProps, HoverCard, HoverCardContent, HoverCardPortal, type HoverCardProps, HoverCardRoot, HoverCardTrigger, IconButton, type IconButtonProps, Input, type InputProps, Kbd, type KbdProps, LargeTitle, type LargeTitleProps, MenuCheckboxItem, MenuItem, type MenuItemProps, MenuSeparator, Menubar, MenubarContent, MenubarItem, type MenubarItemProps, MenubarMenu, MenubarSeparator, MenubarTrigger, NavBar, type NavBarItem, type NavBarOrientation, type NavBarProps, NavItem, type NavItemProps, NavSection, type NavSectionProps, type NormalizedOption, OTP, type OTPHandle, type OTPProps, OnboardingChecklist, type OnboardingChecklistProps, type OnboardingItem, type OnboardingItemStatus, Pagination, type PaginationProps, Popover, PopoverAnchor, PopoverArrow, PopoverClose, PopoverContent, PopoverPortal, PopoverRoot, PopoverTrigger, Progress, type ProgressProps, PullToRefresh, type PullToRefreshProps, type PullToRefreshState, RadialProgress, type RadialProgressProps, type RadialTone, Radio, RadioGroup, type RadioGroupProps, type RadioProps, ScrollArea, type ScrollAreaProps, type ScrollAreaType, SearchInput, type SearchInputProps, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, type SelectOption, type SelectProps, SelectRoot, SelectTrigger, SelectValue, Sheet, type SheetProps, Sidebar, type SidebarProps, Skeleton, SkeletonGroup, type SkeletonGroupProps, type SkeletonProps, Slider, type SliderProps, Sparkline, type SparklineProps, Spinner, type SpinnerProps, SplitButton, type SplitButtonProps, StatCard, type StatCardProps, type StatTrend, StatusDot, type StatusDotProps, type StatusState, type StepState, Stepper, type StepperProps, type StepperStep, Switch, type SwitchProps, Tab, TabBar, type TabBarItem, type TabBarProps, type TabProps, Tabs, TabsContent, TabsList, type TabsProps, type TabsVariantProps, Tag, type TagProps, Textarea, type TextareaProps, type Theme, Timeline, type TimelineEvent, type TimelineEventTone, TimelineItem, type TimelineItemProps, type TimelineProps, ToastCard, type ToastInput, ToastProvider, type ToastVariant, Tooltip, TooltipArrow, TooltipContent, TooltipPortal, type TooltipProps, TooltipProvider, TooltipRoot, TooltipTrigger, Topbar, type TopbarProps, Tree, type TreeItem, type TreeProps, type UseControllableStateProps, type UseKeyboardListOptions, type UseKeyboardListResult, type WizardContext, WizardDialog, type WizardDialogProps, type WizardStep, badgeStyles, buttonStyles, cardStyles, cn, filterCommandItems, formatRelative, iconButtonStyles, useControllableState, useDisclosure, useEscape, useIsomorphicLayoutEffect, useKeyboardList, useOutsideClick, useTheme, useToast };
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { ClassValue } from 'clsx';
2
2
  export { ClassValue } from 'clsx';
3
3
  import * as react from 'react';
4
- import { useEffect, KeyboardEvent, RefObject, ButtonHTMLAttributes, ReactNode, HTMLAttributes, InputHTMLAttributes, TextareaHTMLAttributes, AnchorHTMLAttributes, Ref, LabelHTMLAttributes, FC, SVGAttributes } from 'react';
4
+ import { useEffect, KeyboardEvent, RefObject, ButtonHTMLAttributes, ReactNode, HTMLAttributes, InputHTMLAttributes, TextareaHTMLAttributes, AnchorHTMLAttributes, Ref, LabelHTMLAttributes, FC, SVGAttributes, MouseEventHandler } from 'react';
5
5
  import * as class_variance_authority_types from 'class-variance-authority/types';
6
6
  import { VariantProps } from 'class-variance-authority';
7
7
  import * as RadixCheckbox from '@radix-ui/react-checkbox';
@@ -154,6 +154,7 @@ declare function useTheme(): {
154
154
  declare const buttonStyles: (props?: ({
155
155
  variant?: "primary" | "secondary" | "ghost" | "outline" | "destructive" | "success" | "link" | null | undefined;
156
156
  size?: "sm" | "md" | "lg" | null | undefined;
157
+ density?: "comfortable" | "touch" | null | undefined;
157
158
  fullWidth?: boolean | null | undefined;
158
159
  } & class_variance_authority_types.ClassProp) | undefined) => string;
159
160
  interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonStyles> {
@@ -174,6 +175,7 @@ declare const Button: react.ForwardRefExoticComponent<ButtonProps & react.RefAtt
174
175
  declare const iconButtonStyles: (props?: ({
175
176
  variant?: "primary" | "secondary" | "ghost" | "outline" | "destructive" | "success" | null | undefined;
176
177
  size?: "sm" | "md" | "lg" | null | undefined;
178
+ density?: "comfortable" | "touch" | null | undefined;
177
179
  } & class_variance_authority_types.ClassProp) | undefined) => string;
178
180
  interface IconButtonProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'>, VariantProps<typeof iconButtonStyles> {
179
181
  /** The glyph or icon node to render. Pure decoration — set `aria-label` for screen readers. */
@@ -248,6 +250,11 @@ declare const FAB: react.ForwardRefExoticComponent<FABProps & react.RefAttribute
248
250
  interface CheckboxProps extends Omit<RadixCheckbox.CheckboxProps, 'asChild' | 'children'> {
249
251
  /** Optional inline label rendered to the right of the box. */
250
252
  label?: ReactNode;
253
+ /**
254
+ * `'comfortable'` (default) renders the desktop checkbox. `'touch'` bumps the
255
+ * box to 22×22 inside a 44pt-min row so the whole label is tappable.
256
+ */
257
+ density?: 'comfortable' | 'touch';
251
258
  }
252
259
  /**
253
260
  * Tri-state checkbox. Set `checked="indeterminate"` for the dash-mark state used
@@ -287,6 +294,7 @@ declare function Field({ label, hint, error, required, className, children, ...p
287
294
  declare const inputWrapperStyles: (props?: ({
288
295
  size?: "sm" | "md" | "lg" | null | undefined;
289
296
  tone?: "default" | "err" | null | undefined;
297
+ density?: "comfortable" | "touch" | null | undefined;
290
298
  } & class_variance_authority_types.ClassProp) | undefined) => string;
291
299
  interface InputProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size'>, VariantProps<typeof inputWrapperStyles> {
292
300
  /** Element rendered to the left of the input (an `IconGlyph`, `@`, etc.). */
@@ -305,6 +313,12 @@ interface SearchInputProps extends InputHTMLAttributes<HTMLInputElement> {
305
313
  shortcut?: string;
306
314
  /** Pixel width or any CSS length. Defaults to `360px`. */
307
315
  width?: number | string;
316
+ /**
317
+ * `'comfortable'` (default) renders the desktop 36px-tall pill. `'touch'`
318
+ * bumps to 44pt for thumb tapping and removes the kbd shortcut by default
319
+ * (consumers can still pass `shortcut` explicitly).
320
+ */
321
+ density?: 'comfortable' | 'touch';
308
322
  }
309
323
  /**
310
324
  * The hero search field — taller than a regular Input, with a leading magnifying-glass
@@ -432,6 +446,11 @@ interface SwitchProps extends Omit<RadixSwitch.SwitchProps, 'asChild' | 'childre
432
446
  label?: ReactNode;
433
447
  /** Visual size. Default `md`. */
434
448
  size?: 'sm' | 'md';
449
+ /**
450
+ * `'comfortable'` (default) renders the desktop switch. `'touch'` swaps to the
451
+ * mobile track/thumb dimensions (50×30) for thumb-friendly toggling.
452
+ */
453
+ density?: 'comfortable' | 'touch';
435
454
  }
436
455
  declare const Switch: react.ForwardRefExoticComponent<SwitchProps & react.RefAttributes<HTMLButtonElement>>;
437
456
 
@@ -494,6 +513,7 @@ declare const Badge: react.ForwardRefExoticComponent<BadgeProps & react.RefAttri
494
513
  declare const cardStyles: (props?: ({
495
514
  variant?: "ghost" | "default" | "elevated" | null | undefined;
496
515
  interactive?: boolean | null | undefined;
516
+ density?: "comfortable" | "touch" | null | undefined;
497
517
  } & class_variance_authority_types.ClassProp) | undefined) => string;
498
518
  interface CardProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'>, VariantProps<typeof cardStyles> {
499
519
  /** Render a header row with this title (and optional `actions`). */
@@ -577,6 +597,11 @@ interface ChipProps extends HTMLAttributes<HTMLSpanElement> {
577
597
  * Mirrors the `Tag` API — pass `onRemove` and the X is rendered automatically.
578
598
  */
579
599
  onRemove?: () => void;
600
+ /**
601
+ * `'comfortable'` (default) renders the desktop chip at 26px tall.
602
+ * `'touch'` swaps to a roomier 32px chip with larger text for mobile filter strips.
603
+ */
604
+ density?: 'comfortable' | 'touch';
580
605
  children: ReactNode;
581
606
  }
582
607
  /**
@@ -743,19 +768,39 @@ interface DialogProps extends RadixDialog.DialogProps {
743
768
  }
744
769
  declare function Dialog({ title, description, footer, width, children, ...rootProps }: DialogProps): react_jsx_runtime.JSX.Element;
745
770
 
746
- type DrawerSide = 'left' | 'right';
771
+ type DrawerSide = 'left' | 'right' | 'bottom';
747
772
  interface DrawerProps extends RadixDialog.DialogProps {
748
773
  /** Side the drawer slides in from. */
749
774
  side?: DrawerSide;
750
775
  /** Title rendered in the drawer header (with built-in close button). */
751
776
  title?: ReactNode;
752
- /** Width override. Defaults to 420. */
777
+ /**
778
+ * Width override. Defaults to 420 for left/right sides; ignored for `bottom`
779
+ * (a bottom sheet always spans the full viewport width).
780
+ */
753
781
  width?: number | string;
782
+ /**
783
+ * Height override for the `bottom` side. Pass a number (px) or any CSS length
784
+ * (e.g. `'85vh'`). Defaults to `'85vh'` — leaves a 15vh peek of the underlying
785
+ * surface, matching iOS bottom-sheet conventions.
786
+ */
787
+ height?: number | string;
788
+ /**
789
+ * Show the drag-handle pill at the top of the sheet. Defaults to `true` for
790
+ * `side="bottom"`, ignored for left/right. The handle is visual only — full
791
+ * gesture-driven dismissal is left to consumer code (Radix Dialog already
792
+ * handles ESC, overlay click, and focus trap).
793
+ */
794
+ handle?: boolean;
754
795
  children?: ReactNode;
755
796
  }
756
797
  /**
757
798
  * Side-panel overlay. Same focus-trap + ESC + backdrop semantics as Dialog,
758
799
  * just slid in from the side.
800
+ *
801
+ * `side="bottom"` produces a mobile bottom sheet: full-width, rounded top
802
+ * corners (`--radius-m-sheet`), slide-up animation, and an optional drag
803
+ * handle (`handle`, defaults to `true`).
759
804
  */
760
805
  declare const Drawer: react.ForwardRefExoticComponent<DrawerProps & react.RefAttributes<HTMLDivElement>>;
761
806
 
@@ -1387,6 +1432,25 @@ interface HealthScoreProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'>
1387
1432
  }
1388
1433
  declare const HealthScore: react.ForwardRefExoticComponent<HealthScoreProps & react.RefAttributes<HTMLDivElement>>;
1389
1434
 
1435
+ /**
1436
+ * LargeTitle — iOS-style oversized headline block. Renders an optional eyebrow
1437
+ * (small uppercase mono label) above a 30px headline, with an optional trailing
1438
+ * slot (typically an avatar or icon button) on the right.
1439
+ *
1440
+ * Place at the top of a scrolling screen. Pair with `<Topbar density="touch" />`
1441
+ * for the scroll-revealing pattern: hide the Topbar title until the LargeTitle
1442
+ * scrolls under the bar.
1443
+ */
1444
+ interface LargeTitleProps extends Omit<HTMLAttributes<HTMLElement>, 'title'> {
1445
+ /** Headline text. */
1446
+ title: ReactNode;
1447
+ /** Optional eyebrow label rendered above the title. Small, uppercase, mono. */
1448
+ eyebrow?: ReactNode;
1449
+ /** Optional right-aligned slot (avatar, settings button, etc.). */
1450
+ trailing?: ReactNode;
1451
+ }
1452
+ declare const LargeTitle: react.ForwardRefExoticComponent<LargeTitleProps & react.RefAttributes<HTMLElement>>;
1453
+
1390
1454
  /**
1391
1455
  * Menubar — desktop-style horizontal menu strip (File, Edit, View, …) built on
1392
1456
  * Radix Menubar. Owns ARIA + keyboard semantics; ShipIt owns styling.
@@ -1538,6 +1602,25 @@ interface ProgressProps extends Omit<HTMLAttributes<HTMLDivElement>, 'role'>, Va
1538
1602
  }
1539
1603
  declare const Progress: react.ForwardRefExoticComponent<ProgressProps & react.RefAttributes<HTMLDivElement>>;
1540
1604
 
1605
+ /**
1606
+ * PullToRefresh — controlled visual indicator for the pull-to-refresh
1607
+ * interaction. Renders the rotating arrow + state label that appears at the
1608
+ * top of a scrolling list as the user pulls.
1609
+ *
1610
+ * This is the *visual* primitive only. The gesture (touch tracking, threshold
1611
+ * detection, async refresh) is left to the consumer because that wiring is
1612
+ * app-specific (router refresh, query invalidation, route reload, etc.). Pass
1613
+ * the current `state` and the indicator updates to match.
1614
+ */
1615
+ type PullToRefreshState = 'idle' | 'pulling' | 'ready' | 'loading';
1616
+ interface PullToRefreshProps extends HTMLAttributes<HTMLDivElement> {
1617
+ /** Current state. Drive this from your gesture handler. */
1618
+ state?: PullToRefreshState;
1619
+ /** Override the default state label. */
1620
+ label?: ReactNode;
1621
+ }
1622
+ declare const PullToRefresh: react.ForwardRefExoticComponent<PullToRefreshProps & react.RefAttributes<HTMLDivElement>>;
1623
+
1541
1624
  /**
1542
1625
  * Sidebar — primary app navigation column. A simple flex column with the
1543
1626
  * panel background and a right border. Compose with `<NavItem>` and
@@ -1663,6 +1746,43 @@ interface StepperProps extends HTMLAttributes<HTMLOListElement> {
1663
1746
  }
1664
1747
  declare const Stepper: react.ForwardRefExoticComponent<StepperProps & react.RefAttributes<HTMLOListElement>>;
1665
1748
 
1749
+ /**
1750
+ * TabBar — mobile bottom navigation. Renders an evenly-spaced row of items
1751
+ * (typically 4–5) with optional `elevated` styling for one center action.
1752
+ *
1753
+ * Active state can be controlled (`value` + `onValueChange`) or uncontrolled
1754
+ * (`defaultValue`). The bar sits at the bottom of the screen; pair with
1755
+ * `pb-[env(safe-area-inset-bottom)]` on the surrounding scroll container to
1756
+ * respect the iOS home indicator.
1757
+ */
1758
+ interface TabBarItem {
1759
+ /** Stable identifier — what `value` / `onValueChange` reference. */
1760
+ id: string;
1761
+ /** Short label rendered under the icon. */
1762
+ label: ReactNode;
1763
+ /** Glyph node — pass an SVG, IconGlyph, or string emoji. */
1764
+ icon: ReactNode;
1765
+ /** Optional unread / count badge rendered top-right of the icon. */
1766
+ badge?: ReactNode;
1767
+ /**
1768
+ * Render this slot as an elevated pill (the center "Ask"-style action). Only
1769
+ * one item should set this true. Disables the active-color treatment for
1770
+ * this slot since it's always the focal action.
1771
+ */
1772
+ elevated?: boolean;
1773
+ disabled?: boolean;
1774
+ }
1775
+ interface TabBarProps extends Omit<HTMLAttributes<HTMLElement>, 'defaultValue'> {
1776
+ items: TabBarItem[];
1777
+ /** Controlled active item id. */
1778
+ value?: string;
1779
+ /** Uncontrolled initial active item id. */
1780
+ defaultValue?: string;
1781
+ /** Fired when a tab is activated. */
1782
+ onValueChange?: (id: string) => void;
1783
+ }
1784
+ declare const TabBar: react.ForwardRefExoticComponent<TabBarProps & react.RefAttributes<HTMLElement>>;
1785
+
1666
1786
  /**
1667
1787
  * Tabs — two visual styles built on Radix Tabs.
1668
1788
  *
@@ -1763,17 +1883,43 @@ interface ActivityTimelineProps extends HTMLAttributes<HTMLOListElement> {
1763
1883
  declare const ActivityTimeline: react.ForwardRefExoticComponent<ActivityTimelineProps & react.RefAttributes<HTMLOListElement>>;
1764
1884
 
1765
1885
  /**
1766
- * Topbar — slim header strip across the top of an app surface. The title
1767
- * lives on the left, the rest of the row is yours via `actions` (search,
1768
- * settings, avatar, etc.).
1886
+ * Topbar — slim header strip across the top of an app surface.
1887
+ *
1888
+ * Default (`density="comfortable"`) renders the 52px desktop header with a
1889
+ * title on the left and `actions` on the right. Pass `density="touch"` for the
1890
+ * 56px mobile page-header variant that adds an optional `back` button and an
1891
+ * `eyebrow` line (small uppercase mono label) above the title — the same shape
1892
+ * the Mobile Library uses as its in-app nav bar.
1769
1893
  */
1770
1894
  interface TopbarProps extends Omit<HTMLAttributes<HTMLElement>, 'title'> {
1771
1895
  /** Title rendered on the left. */
1772
1896
  title?: ReactNode;
1897
+ /**
1898
+ * Eyebrow label rendered above the title (small uppercase mono). Touch density
1899
+ * only — silently ignored on desktop density to avoid two header tiers stacking.
1900
+ */
1901
+ eyebrow?: ReactNode;
1773
1902
  /** Left-of-title slot — typically a logo or breadcrumbs. */
1774
1903
  leading?: ReactNode;
1775
- /** Right-side action group. Rendered with `gap-3`. */
1904
+ /**
1905
+ * Renders the back-arrow button at the start (before `leading`). Pass
1906
+ * `back={true}` for the declarative form and wire the handler via `onBack`,
1907
+ * or pass `back={handler}` directly. Touch-density only; ignored on
1908
+ * desktop density.
1909
+ */
1910
+ back?: boolean | MouseEventHandler<HTMLButtonElement>;
1911
+ /**
1912
+ * Handler for the back button when `back={true}`. Ignored when `back` is
1913
+ * itself a function — in that case `back` is the handler.
1914
+ */
1915
+ onBack?: MouseEventHandler<HTMLButtonElement>;
1916
+ /** Right-side action group. Rendered with `gap-3` (desktop) or `gap-1` (touch). */
1776
1917
  actions?: ReactNode;
1918
+ /**
1919
+ * `'comfortable'` (default) → desktop 52px header. `'touch'` → mobile 56px
1920
+ * page-header with optional back button + eyebrow.
1921
+ */
1922
+ density?: 'comfortable' | 'touch';
1777
1923
  }
1778
1924
  declare const Topbar: react.ForwardRefExoticComponent<TopbarProps & react.RefAttributes<HTMLElement>>;
1779
1925
 
@@ -1871,4 +2017,4 @@ interface WizardDialogProps {
1871
2017
  }
1872
2018
  declare const WizardDialog: react.ForwardRefExoticComponent<WizardDialogProps & react.RefAttributes<HTMLDivElement>>;
1873
2019
 
1874
- export { type ActivityActor, type ActivityEvent, ActivityTimeline, type ActivityTimelineProps, Alert, AlertDialog, AlertDialogAction, AlertDialogCancel, type AlertDialogProps, AlertDialogRoot, AlertDialogTrigger, type AlertProps, type AlertTone, Avatar, AvatarGroup, type AvatarGroupProps, type AvatarProps, type AvatarSize, type AvatarStatus, Badge, type BadgeProps, Banner, type BannerProps, type BannerTone, Breadcrumbs, type BreadcrumbsProps, Button, ButtonGroup, type ButtonGroupProps, type ButtonProps, Calendar, type CalendarProps, Card, CardLink, type CardLinkProps, type CardProps, Checkbox, type CheckboxProps, Chip, type ChipProps, Combobox, type ComboboxOption, type ComboboxProps, CommandPalette, type CommandPaletteGroup, type CommandPaletteItem, type CommandPaletteProps, ContextMenu, ContextMenuContent, ContextMenuItem, type ContextMenuItemProps, ContextMenuPortal, ContextMenuRoot, ContextMenuSeparator, ContextMenuTrigger, Crumb, type CrumbProps, DataTable, type DataTableColumn, type DataTableProps, type DataTableSort, DatePicker, type DatePickerProps, Dialog, DialogClose, DialogContent, type DialogContentProps, DialogOverlay, DialogPortal, type DialogProps, DialogRoot, DialogTrigger, Dots, type DotsProps, Drawer, type DrawerProps, type DrawerSide, DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRoot, DropdownMenuTrigger, Dropzone, type DropzoneProps, EmptyState, type EmptyStateProps, FAB, type FABProps, Field, type FieldProps, FileChip, type FileChipProps, type FilterFacet, type FilterFacetOption, FilterPanel, type FilterPanelProps, type FilterPanelValue, HealthScore, type HealthScoreBreakdownEntry, type HealthScoreProps, HoverCard, HoverCardContent, HoverCardPortal, type HoverCardProps, HoverCardRoot, HoverCardTrigger, IconButton, type IconButtonProps, Input, type InputProps, Kbd, type KbdProps, MenuCheckboxItem, MenuItem, type MenuItemProps, MenuSeparator, Menubar, MenubarContent, MenubarItem, type MenubarItemProps, MenubarMenu, MenubarSeparator, MenubarTrigger, NavBar, type NavBarItem, type NavBarOrientation, type NavBarProps, NavItem, type NavItemProps, NavSection, type NavSectionProps, type NormalizedOption, OTP, type OTPHandle, type OTPProps, OnboardingChecklist, type OnboardingChecklistProps, type OnboardingItem, type OnboardingItemStatus, Pagination, type PaginationProps, Popover, PopoverAnchor, PopoverArrow, PopoverClose, PopoverContent, PopoverPortal, PopoverRoot, PopoverTrigger, Progress, type ProgressProps, RadialProgress, type RadialProgressProps, type RadialTone, Radio, RadioGroup, type RadioGroupProps, type RadioProps, ScrollArea, type ScrollAreaProps, type ScrollAreaType, SearchInput, type SearchInputProps, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, type SelectOption, type SelectProps, SelectRoot, SelectTrigger, SelectValue, Sheet, type SheetProps, Sidebar, type SidebarProps, Skeleton, SkeletonGroup, type SkeletonGroupProps, type SkeletonProps, Slider, type SliderProps, Sparkline, type SparklineProps, Spinner, type SpinnerProps, SplitButton, type SplitButtonProps, StatCard, type StatCardProps, type StatTrend, StatusDot, type StatusDotProps, type StatusState, type StepState, Stepper, type StepperProps, type StepperStep, Switch, type SwitchProps, Tab, type TabProps, Tabs, TabsContent, TabsList, type TabsProps, type TabsVariantProps, Tag, type TagProps, Textarea, type TextareaProps, type Theme, Timeline, type TimelineEvent, type TimelineEventTone, TimelineItem, type TimelineItemProps, type TimelineProps, ToastCard, type ToastInput, ToastProvider, type ToastVariant, Tooltip, TooltipArrow, TooltipContent, TooltipPortal, type TooltipProps, TooltipProvider, TooltipRoot, TooltipTrigger, Topbar, type TopbarProps, Tree, type TreeItem, type TreeProps, type UseControllableStateProps, type UseKeyboardListOptions, type UseKeyboardListResult, type WizardContext, WizardDialog, type WizardDialogProps, type WizardStep, badgeStyles, buttonStyles, cardStyles, cn, filterCommandItems, formatRelative, iconButtonStyles, useControllableState, useDisclosure, useEscape, useIsomorphicLayoutEffect, useKeyboardList, useOutsideClick, useTheme, useToast };
2020
+ export { type ActivityActor, type ActivityEvent, ActivityTimeline, type ActivityTimelineProps, Alert, AlertDialog, AlertDialogAction, AlertDialogCancel, type AlertDialogProps, AlertDialogRoot, AlertDialogTrigger, type AlertProps, type AlertTone, Avatar, AvatarGroup, type AvatarGroupProps, type AvatarProps, type AvatarSize, type AvatarStatus, Badge, type BadgeProps, Banner, type BannerProps, type BannerTone, Breadcrumbs, type BreadcrumbsProps, Button, ButtonGroup, type ButtonGroupProps, type ButtonProps, Calendar, type CalendarProps, Card, CardLink, type CardLinkProps, type CardProps, Checkbox, type CheckboxProps, Chip, type ChipProps, Combobox, type ComboboxOption, type ComboboxProps, CommandPalette, type CommandPaletteGroup, type CommandPaletteItem, type CommandPaletteProps, ContextMenu, ContextMenuContent, ContextMenuItem, type ContextMenuItemProps, ContextMenuPortal, ContextMenuRoot, ContextMenuSeparator, ContextMenuTrigger, Crumb, type CrumbProps, DataTable, type DataTableColumn, type DataTableProps, type DataTableSort, DatePicker, type DatePickerProps, Dialog, DialogClose, DialogContent, type DialogContentProps, DialogOverlay, DialogPortal, type DialogProps, DialogRoot, DialogTrigger, Dots, type DotsProps, Drawer, type DrawerProps, type DrawerSide, DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRoot, DropdownMenuTrigger, Dropzone, type DropzoneProps, EmptyState, type EmptyStateProps, FAB, type FABProps, Field, type FieldProps, FileChip, type FileChipProps, type FilterFacet, type FilterFacetOption, FilterPanel, type FilterPanelProps, type FilterPanelValue, HealthScore, type HealthScoreBreakdownEntry, type HealthScoreProps, HoverCard, HoverCardContent, HoverCardPortal, type HoverCardProps, HoverCardRoot, HoverCardTrigger, IconButton, type IconButtonProps, Input, type InputProps, Kbd, type KbdProps, LargeTitle, type LargeTitleProps, MenuCheckboxItem, MenuItem, type MenuItemProps, MenuSeparator, Menubar, MenubarContent, MenubarItem, type MenubarItemProps, MenubarMenu, MenubarSeparator, MenubarTrigger, NavBar, type NavBarItem, type NavBarOrientation, type NavBarProps, NavItem, type NavItemProps, NavSection, type NavSectionProps, type NormalizedOption, OTP, type OTPHandle, type OTPProps, OnboardingChecklist, type OnboardingChecklistProps, type OnboardingItem, type OnboardingItemStatus, Pagination, type PaginationProps, Popover, PopoverAnchor, PopoverArrow, PopoverClose, PopoverContent, PopoverPortal, PopoverRoot, PopoverTrigger, Progress, type ProgressProps, PullToRefresh, type PullToRefreshProps, type PullToRefreshState, RadialProgress, type RadialProgressProps, type RadialTone, Radio, RadioGroup, type RadioGroupProps, type RadioProps, ScrollArea, type ScrollAreaProps, type ScrollAreaType, SearchInput, type SearchInputProps, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, type SelectOption, type SelectProps, SelectRoot, SelectTrigger, SelectValue, Sheet, type SheetProps, Sidebar, type SidebarProps, Skeleton, SkeletonGroup, type SkeletonGroupProps, type SkeletonProps, Slider, type SliderProps, Sparkline, type SparklineProps, Spinner, type SpinnerProps, SplitButton, type SplitButtonProps, StatCard, type StatCardProps, type StatTrend, StatusDot, type StatusDotProps, type StatusState, type StepState, Stepper, type StepperProps, type StepperStep, Switch, type SwitchProps, Tab, TabBar, type TabBarItem, type TabBarProps, type TabProps, Tabs, TabsContent, TabsList, type TabsProps, type TabsVariantProps, Tag, type TagProps, Textarea, type TextareaProps, type Theme, Timeline, type TimelineEvent, type TimelineEventTone, TimelineItem, type TimelineItemProps, type TimelineProps, ToastCard, type ToastInput, ToastProvider, type ToastVariant, Tooltip, TooltipArrow, TooltipContent, TooltipPortal, type TooltipProps, TooltipProvider, TooltipRoot, TooltipTrigger, Topbar, type TopbarProps, Tree, type TreeItem, type TreeProps, type UseControllableStateProps, type UseKeyboardListOptions, type UseKeyboardListResult, type WizardContext, WizardDialog, type WizardDialogProps, type WizardStep, badgeStyles, buttonStyles, cardStyles, cn, filterCommandItems, formatRelative, iconButtonStyles, useControllableState, useDisclosure, useEscape, useIsomorphicLayoutEffect, useKeyboardList, useOutsideClick, useTheme, useToast };