@tutti-os/ui-system 0.0.188 → 0.0.190

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.
@@ -52,6 +52,41 @@ declare function CardFooter({ className, ...props }: React$1.ComponentProps<"div
52
52
 
53
53
  declare function Checkbox({ className, ...props }: React$1.ComponentProps<typeof Checkbox$1.Root>): react_jsx_runtime.JSX.Element;
54
54
 
55
+ interface ComboboxOption {
56
+ description?: string;
57
+ disabled?: boolean;
58
+ /** Extra strings the search filter matches beyond value and label. */
59
+ keywords?: readonly string[];
60
+ label: string;
61
+ value: string;
62
+ }
63
+ interface ComboboxProps {
64
+ align?: "center" | "end" | "start";
65
+ /**
66
+ * Offer the typed query as a selectable value when it matches no option.
67
+ * The caller localizes the row through customValueLabel.
68
+ */
69
+ allowCustomValue?: boolean;
70
+ "aria-label"?: string;
71
+ className?: string;
72
+ contentClassName?: string;
73
+ contentStyle?: React$1.CSSProperties;
74
+ customValueLabel?: (query: string) => React$1.ReactNode;
75
+ disabled?: boolean;
76
+ emptyMessage?: React$1.ReactNode;
77
+ onValueChange: (value: string) => void;
78
+ options: readonly ComboboxOption[];
79
+ placeholder?: string;
80
+ searchPlaceholder?: string;
81
+ value: string;
82
+ }
83
+ /**
84
+ * Searchable single-value picker composed from Popover and Input. Unlike
85
+ * Select, the open surface is query-driven with a fixed-height option list,
86
+ * and it can accept a typed value that is not in the option catalog.
87
+ */
88
+ declare function Combobox({ align, allowCustomValue, "aria-label": ariaLabel, className, contentClassName, contentStyle, customValueLabel, disabled, emptyMessage, onValueChange, options, placeholder, searchPlaceholder, value }: ComboboxProps): react_jsx_runtime.JSX.Element;
89
+
55
90
  type ConfirmationDialogTone = "default" | "destructive";
56
91
  declare function ConfirmationDialog({ cancelLabel, children, className, confirmBusy, confirmDisabled, confirmLabel, description, disableCloseWhileBusy, footer, hideConfirmButton, onCancel, onConfirm, onOpenChange, open, overlayClassName, portaled, tone, title }: {
57
92
  cancelLabel: React$1.ReactNode;
@@ -470,4 +505,4 @@ interface ViewportMenuSurfaceProps extends Omit<React$1.HTMLAttributes<HTMLDivEl
470
505
  }
471
506
  declare const ViewportMenuSurface: React$1.ForwardRefExoticComponent<ViewportMenuSurfaceProps & React$1.RefAttributes<HTMLDivElement>>;
472
507
 
473
- export { Badge, BareIconButton, type BareIconButtonProps, Button, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, ConfirmationDialog, type ConfirmationDialogTone, ContextMenu, ContextMenuContent, ContextMenuItem, ContextMenuSeparator, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, DatePicker, type DatePickerLabels, type DatePickerProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Input, MentionPill, type MentionPillFileKind, type MentionPillKind, type MentionPillProps, type MenuPoint, type MenuPointAlignment, type MenuSize, MenuSurface, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverPortal, PopoverTrigger, RadioIndicator, type RadioIndicatorProps, ResizableHandle, ResizablePanel, ResizablePanelGroup, ScrollArea, ScrollBar, type SectionTabItem, SectionTabs, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectSplitColumn, SelectSplitColumnItems, SelectSplitColumnLabel, SelectSplitDivider, SelectSplitLayout, SelectTrigger, SelectValue, Separator, ShortcutBadge, Sortable, SortableContent, SortableItem, SortableItemHandle, SortableOverlay, type SortableProps, Spinner, type SpinnerProps, StatusDot, Switch, Textarea, ToastClose, ToastDescription, ToastProvider, ToastRoot, ToastTitle, ToastViewport, Toaster, Tooltip, TooltipContent, TooltipPortal, TooltipProvider, TooltipTrigger, TruncatingPillLabel, type TruncatingPillLabelProps, type UnderlineTabItem, UnderlineTabs, type ViewportMenuPlacement, ViewportMenuSurface, type ViewportMenuSurfaceProps, badgeVariants, buttonVariants, menuItemClassName, menuItemIndicatorClassName, menuItemWithIndicatorClassName, menuSurfaceClassName, statusDotVariants, toastVariants, useTextOverflow };
508
+ export { Badge, BareIconButton, type BareIconButtonProps, Button, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, Combobox, type ComboboxOption, ConfirmationDialog, type ConfirmationDialogTone, ContextMenu, ContextMenuContent, ContextMenuItem, ContextMenuSeparator, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, DatePicker, type DatePickerLabels, type DatePickerProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Input, MentionPill, type MentionPillFileKind, type MentionPillKind, type MentionPillProps, type MenuPoint, type MenuPointAlignment, type MenuSize, MenuSurface, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverPortal, PopoverTrigger, RadioIndicator, type RadioIndicatorProps, ResizableHandle, ResizablePanel, ResizablePanelGroup, ScrollArea, ScrollBar, type SectionTabItem, SectionTabs, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectSplitColumn, SelectSplitColumnItems, SelectSplitColumnLabel, SelectSplitDivider, SelectSplitLayout, SelectTrigger, SelectValue, Separator, ShortcutBadge, Sortable, SortableContent, SortableItem, SortableItemHandle, SortableOverlay, type SortableProps, Spinner, type SpinnerProps, StatusDot, Switch, Textarea, ToastClose, ToastDescription, ToastProvider, ToastRoot, ToastTitle, ToastViewport, Toaster, Tooltip, TooltipContent, TooltipPortal, TooltipProvider, TooltipTrigger, TruncatingPillLabel, type TruncatingPillLabelProps, type UnderlineTabItem, UnderlineTabs, type ViewportMenuPlacement, ViewportMenuSurface, type ViewportMenuSurfaceProps, badgeVariants, buttonVariants, menuItemClassName, menuItemIndicatorClassName, menuItemWithIndicatorClassName, menuSurfaceClassName, statusDotVariants, toastVariants, useTextOverflow };
@@ -10,6 +10,7 @@ import {
10
10
  CardHeader,
11
11
  CardTitle,
12
12
  Checkbox,
13
+ Combobox,
13
14
  ConfirmationDialog,
14
15
  ContextMenu,
15
16
  ContextMenuContent,
@@ -122,7 +123,7 @@ import {
122
123
  toast,
123
124
  toastVariants,
124
125
  useTextOverflow
125
- } from "../chunk-45TFBBVS.js";
126
+ } from "../chunk-S74ESIMT.js";
126
127
  import "../chunk-LD3MNTUQ.js";
127
128
  import "../chunk-DGPY4WP3.js";
128
129
  export {
@@ -137,6 +138,7 @@ export {
137
138
  CardHeader,
138
139
  CardTitle,
139
140
  Checkbox,
141
+ Combobox,
140
142
  ConfirmationDialog,
141
143
  ContextMenu,
142
144
  ContextMenuContent,
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { Badge, BareIconButton, BareIconButtonProps, Button, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, ConfirmationDialog, ConfirmationDialogTone, ContextMenu, ContextMenuContent, ContextMenuItem, ContextMenuSeparator, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, DatePicker, DatePickerLabels, DatePickerProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Input, MentionPill, MentionPillFileKind, MentionPillKind, MentionPillProps, MenuPoint, MenuPointAlignment, MenuSize, MenuSurface, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverPortal, PopoverTrigger, RadioIndicator, RadioIndicatorProps, ResizableHandle, ResizablePanel, ResizablePanelGroup, ScrollArea, ScrollBar, SectionTabItem, SectionTabs, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectSplitColumn, SelectSplitColumnItems, SelectSplitColumnLabel, SelectSplitDivider, SelectSplitLayout, SelectTrigger, SelectValue, Separator, ShortcutBadge, Sortable, SortableContent, SortableItem, SortableItemHandle, SortableOverlay, SortableProps, Spinner, SpinnerProps, StatusDot, Switch, Textarea, ToastClose, ToastDescription, ToastProvider, ToastRoot, ToastTitle, ToastViewport, Toaster, Tooltip, TooltipContent, TooltipPortal, TooltipProvider, TooltipTrigger, TruncatingPillLabel, TruncatingPillLabelProps, UnderlineTabItem, UnderlineTabs, ViewportMenuPlacement, ViewportMenuSurface, ViewportMenuSurfaceProps, badgeVariants, buttonVariants, menuItemClassName, menuItemIndicatorClassName, menuItemWithIndicatorClassName, menuSurfaceClassName, statusDotVariants, toastVariants, useTextOverflow } from './components/index.js';
1
+ export { Badge, BareIconButton, BareIconButtonProps, Button, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, Combobox, ComboboxOption, ConfirmationDialog, ConfirmationDialogTone, ContextMenu, ContextMenuContent, ContextMenuItem, ContextMenuSeparator, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, DatePicker, DatePickerLabels, DatePickerProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Input, MentionPill, MentionPillFileKind, MentionPillKind, MentionPillProps, MenuPoint, MenuPointAlignment, MenuSize, MenuSurface, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverPortal, PopoverTrigger, RadioIndicator, RadioIndicatorProps, ResizableHandle, ResizablePanel, ResizablePanelGroup, ScrollArea, ScrollBar, SectionTabItem, SectionTabs, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectSplitColumn, SelectSplitColumnItems, SelectSplitColumnLabel, SelectSplitDivider, SelectSplitLayout, SelectTrigger, SelectValue, Separator, ShortcutBadge, Sortable, SortableContent, SortableItem, SortableItemHandle, SortableOverlay, SortableProps, Spinner, SpinnerProps, StatusDot, Switch, Textarea, ToastClose, ToastDescription, ToastProvider, ToastRoot, ToastTitle, ToastViewport, Toaster, Tooltip, TooltipContent, TooltipPortal, TooltipProvider, TooltipTrigger, TruncatingPillLabel, TruncatingPillLabelProps, UnderlineTabItem, UnderlineTabs, ViewportMenuPlacement, ViewportMenuSurface, ViewportMenuSurfaceProps, badgeVariants, buttonVariants, menuItemClassName, menuItemIndicatorClassName, menuItemWithIndicatorClassName, menuSurfaceClassName, statusDotVariants, toastVariants, useTextOverflow } from './components/index.js';
2
2
  export { AddIcon, AddLinedIcon, AgentSessionsIcon, AppWindowIcon, ArrowLeftIcon, ArrowRightIcon, AskLinedIcon, BillingIcon, CapabilityIcon, ChatIcon, CheckIcon, ChevronDownIcon, ChevronUpIcon, ChromeIcon, CloseEyesIcon, CloseIcon, CollapseLinedIcon, CopyIcon, CreateChatIcon, CreditsIcon, DarkModeIcon, DashboardIcon, DeleteIcon, DirectoryIcon, DiscordIcon, DownloadIcon, EditIcon, EyeIcon, FailedFilledIcon, FailedLinedIcon, FeedbackIcon, FileCodeIcon, FileCreateIcon, FileIcon, FileLinedIcon, FileTextIcon, FolderFailedFilledIcon, FolderFailedIcon, FolderFilledIcon, FolderIcon, FolderOpenLinedIcon, GitHubBrandIcon, GoogleBrandIcon, GridBottomLinedIcon, GridHorizontalLinedIcon, GridLeftLinedIcon, GridRightLinedIcon, GridTopLinedIcon, GridVerticalLinedIcon, GripVerticalIcon, GuideIcon, HealthIcon, IconProps, ImageFileIcon, ImageGenerateIcon, ImportLinedIcon, InspectIcon, IssueIcon, KeyboardFilledIcon, KeyboardIcon, LaunchIcon, LayoutMenuIcon, LayoutPresetIcon, LayoutPresetIconProps, LightModeIcon, LinkIcon, LoadingIcon, LoadingIconProps, LocateFolderIcon, LockGridHorizontalLinedIcon, LockGridVerticalLinedIcon, LockLayoutLinedIcon, MaximizeIcon, MessageSquareTextIcon, MinimizeIcon, MoreHorizontalIcon, NavAgentsIcon, NavApplicationsFilledIcon, NavApplicationsLinedIcon, NavLaunchIcon, NewWorkspaceIcon, NewWorkspaceLinedIcon, NoWorkspaceLinedIcon, OpenLinkLinedIcon, OpenSessionsIcon, OverviewLayoutIcon, PanelIcon, PauseIcon, PinFilledIcon, PinIcon, PlatformIcon, PlayIcon, ProductDocIcon, ProductIcon, RecentLinedIcon, RefreshIcon, RestoreIcon, RoomsHintIcon, SearchIcon, SettingsIcon, SignOutIcon, SuccessFilledIcon, SuccessLinedIcon, TaskIcon, TerminalLinedIcon, ThinkingIcon, ToolsIcon, TuttiMark, UnavailableChatIcon, UninstallIcon, UpgradeArrowIcon, UploadFolderIcon, UploadIcon, UserLinedIcon, VideoFileIcon, ViewGridLinedIcon, ViewListLinedIcon, WarningFilledIcon, WarningLinedIcon, WeChatIcon, WebIcon, WebScrapeIcon, WindowTrafficLightIcon, WindowTrafficLightIconName, WindowTrafficLightIconProps } from './icons/index.js';
3
3
  export { TuttiDateLocale, formatTuttiDateTime, formatTuttiShortDateTime, getCurrentTuttiDateLocale } from './date-format.js';
4
4
  export { cn } from './utils.js';
package/dist/index.js CHANGED
@@ -10,6 +10,7 @@ import {
10
10
  CardHeader,
11
11
  CardTitle,
12
12
  Checkbox,
13
+ Combobox,
13
14
  ConfirmationDialog,
14
15
  ContextMenu,
15
16
  ContextMenuContent,
@@ -122,7 +123,7 @@ import {
122
123
  toast,
123
124
  toastVariants,
124
125
  useTextOverflow
125
- } from "./chunk-45TFBBVS.js";
126
+ } from "./chunk-S74ESIMT.js";
126
127
  import {
127
128
  formatTuttiDateTime,
128
129
  formatTuttiShortDateTime,
@@ -284,6 +285,7 @@ export {
284
285
  CloseEyesIcon,
285
286
  CloseIcon,
286
287
  CollapseLinedIcon,
288
+ Combobox,
287
289
  ConfirmationDialog,
288
290
  ContextMenu,
289
291
  ContextMenuContent,
@@ -1187,6 +1187,26 @@
1187
1187
  "Prefer this exported toast API over direct sonner imports so consumers stay on the UI-system notification wrapper."
1188
1188
  ]
1189
1189
  },
1190
+ {
1191
+ "id": "combobox",
1192
+ "layer": "base",
1193
+ "name": "Combobox",
1194
+ "export": "Combobox",
1195
+ "from": "@tutti-os/ui-system/components",
1196
+ "category": "composition",
1197
+ "status": "stable",
1198
+ "source": "src/components/combobox/index.tsx",
1199
+ "description": "Searchable single-value picker with a fixed-height option list and optional custom typed values.",
1200
+ "useCases": [
1201
+ "Large option catalogs",
1202
+ "Model or identifier selection",
1203
+ "Free-form value entry with suggestions"
1204
+ ],
1205
+ "migrationHints": [
1206
+ "Replace local Popover+Input search dropdowns with the shared Combobox so filtering, keyboard navigation, and tokens stay aligned."
1207
+ ],
1208
+ "storyboard": true
1209
+ },
1190
1210
  {
1191
1211
  "id": "checkbox",
1192
1212
  "layer": "base",
@@ -1188,6 +1188,26 @@ var components_default = {
1188
1188
  "Prefer this exported toast API over direct sonner imports so consumers stay on the UI-system notification wrapper."
1189
1189
  ]
1190
1190
  },
1191
+ {
1192
+ id: "combobox",
1193
+ layer: "base",
1194
+ name: "Combobox",
1195
+ export: "Combobox",
1196
+ from: "@tutti-os/ui-system/components",
1197
+ category: "composition",
1198
+ status: "stable",
1199
+ source: "src/components/combobox/index.tsx",
1200
+ description: "Searchable single-value picker with a fixed-height option list and optional custom typed values.",
1201
+ useCases: [
1202
+ "Large option catalogs",
1203
+ "Model or identifier selection",
1204
+ "Free-form value entry with suggestions"
1205
+ ],
1206
+ migrationHints: [
1207
+ "Replace local Popover+Input search dropdowns with the shared Combobox so filtering, keyboard navigation, and tokens stay aligned."
1208
+ ],
1209
+ storyboard: true
1210
+ },
1191
1211
  {
1192
1212
  id: "checkbox",
1193
1213
  layer: "base",