@assure-one/design-system 1.5.0 → 1.6.1

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.ts CHANGED
@@ -1838,6 +1838,71 @@ interface SpinnerProps extends React.HTMLAttributes<HTMLSpanElement>, VariantPro
1838
1838
  }
1839
1839
  declare const Spinner: React$1.ForwardRefExoticComponent<SpinnerProps & React$1.RefAttributes<HTMLSpanElement>>;
1840
1840
 
1841
+ /**
1842
+ * StackedBarChart — vertical stacked-column chart with a y-axis, gridlines,
1843
+ * an x-axis label row, an optional legend, and a cursor-following tooltip.
1844
+ *
1845
+ * Pure renderer. The caller supplies `series` (the stacking order + colors +
1846
+ * legend labels) and `bars` (one column each, with per-series `values`). The
1847
+ * chart computes a "nice" y-scale, draws evenly spaced gridline ticks, stacks
1848
+ * each column from the bottom up in `series` order, and animates the columns
1849
+ * growing on mount (respecting `prefers-reduced-motion`).
1850
+ *
1851
+ * Colors are token-driven: each series uses its own `color` when given, else
1852
+ * it falls back to the tokenized chart ramp (`--color-chart-1..4`). Pass DS
1853
+ * semantic tokens (e.g. `var(--color-priority-high)`) to make the segments
1854
+ * read as the same visual language as `PriorityIcon` / `StatusDot`.
1855
+ *
1856
+ * Stacking order: `series[0]` sits at the **bottom** of every column and later
1857
+ * series stack upward. The built-in legend renders in `series` order.
1858
+ */
1859
+ interface StackedBarSeries {
1860
+ /** Stable key matched against each bar's `values`. */
1861
+ key: string;
1862
+ /** Human label, shown in the legend and the segment tooltip. */
1863
+ label: string;
1864
+ /**
1865
+ * CSS color for this series' segments (any valid color string, including a
1866
+ * `var(--token)`). Falls back to the chart ramp when omitted.
1867
+ */
1868
+ color?: string;
1869
+ }
1870
+ interface StackedBarDatum {
1871
+ /**
1872
+ * X-axis label under the column. `ReactNode` so callers can prepend a status
1873
+ * dot, icon, etc. For the tooltip, set `tooltipLabel` (or pass a string here).
1874
+ */
1875
+ label: React.ReactNode;
1876
+ /** Plain-text column label for the tooltip. Defaults to `label` if it's a string. */
1877
+ tooltipLabel?: string;
1878
+ /** Segment values keyed by series `key`. Missing or zero entries are skipped. */
1879
+ values: Record<string, number>;
1880
+ }
1881
+ interface StackedBarChartProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "children"> {
1882
+ /** One entry per column, left to right. */
1883
+ bars: StackedBarDatum[];
1884
+ /** Stacking order + colors + legend labels. `series[0]` is the bottom segment. */
1885
+ series: StackedBarSeries[];
1886
+ /** Plot height in px (excludes the legend and axis label rows). Default `200`. */
1887
+ height?: number;
1888
+ /** Number of y-axis intervals (gridlines = `tickCount + 1`, including 0). Default `4`. */
1889
+ tickCount?: number;
1890
+ /** Format a value for the y-axis ticks and the tooltip. Default `toLocaleString`. */
1891
+ formatValue?: (value: number) => string;
1892
+ /** Render the y-axis tick gutter + gridlines. Default `true`. */
1893
+ showYAxis?: boolean;
1894
+ /** Render the x-axis label row under the plot. Default `true`. */
1895
+ showXAxis?: boolean;
1896
+ /** Render the built-in legend above the plot. Default `true`. */
1897
+ showLegend?: boolean;
1898
+ /**
1899
+ * Minimum width per column in px. When the columns can't all fit, the plot
1900
+ * scrolls horizontally (y-axis stays pinned). `0` (default) = columns fill.
1901
+ */
1902
+ minBarWidth?: number;
1903
+ }
1904
+ declare const StackedBarChart: React$1.ForwardRefExoticComponent<StackedBarChartProps & React$1.RefAttributes<HTMLDivElement>>;
1905
+
1841
1906
  /**
1842
1907
  * StarRating — display-only rating atom built on lucide `Star`. Supports
1843
1908
  * fractional ratings (half-star fill via clip path) and a sized cva variant.
@@ -3295,6 +3360,84 @@ interface DataTablePaginationProps extends Omit<React.HTMLAttributes<HTMLElement
3295
3360
  */
3296
3361
  declare const DataTablePagination: React$1.ForwardRefExoticComponent<DataTablePaginationProps & React$1.RefAttributes<HTMLElement>>;
3297
3362
 
3363
+ /**
3364
+ * DataTableView — config-driven table on top of the composition
3365
+ * `DataTable*` primitives. Every list/table screen is just a config:
3366
+ * `columns` + `data` (+ optional `filters` / `searchKeys` / sort). The
3367
+ * wrapper owns the search / filter / sort / pagination *state*; the table
3368
+ * chrome, sortable headers, and pagination all come from the existing
3369
+ * `DataTable` family (no fork, no second table chrome).
3370
+ *
3371
+ * It complements — does not replace — the composition API: reach for the
3372
+ * raw `DataTable*` parts when a screen needs bespoke cells or layout; reach
3373
+ * for `DataTableView` when the table is "columns + rows + the usual
3374
+ * toolbar." Render helpers (`StagePill`, `Assignee`, `MoneyCell`,
3375
+ * `TagsCell`) cover the recurring cell shapes.
3376
+ */
3377
+ type TableRowData = Record<string, unknown>;
3378
+ interface DataTableViewColumn<Row extends TableRowData> {
3379
+ key: string;
3380
+ header: string;
3381
+ /** Column width. Fixed px (`"120px"`) sets a hard width; a grid-style
3382
+ * `"minmax(190px,1.5fr)"` is read as a `min-width` and the column flexes. */
3383
+ width?: string;
3384
+ sortable?: boolean;
3385
+ align?: "right";
3386
+ /** Custom sort accessor (e.g. a numeric `lastDays` behind a "5h ago" label). */
3387
+ sortValue?: (row: Row) => string | number | null | undefined;
3388
+ /** Custom cell renderer; defaults to the raw field value. */
3389
+ render?: (row: Row) => ReactNode;
3390
+ }
3391
+ interface DataTableViewFilter<Row extends TableRowData> {
3392
+ key: string;
3393
+ label?: string;
3394
+ allLabel?: string;
3395
+ options: (string | {
3396
+ value: string;
3397
+ label: string;
3398
+ })[];
3399
+ match: (row: Row, value: string) => boolean;
3400
+ }
3401
+ interface DataTableViewProps<Row extends TableRowData> {
3402
+ columns: DataTableViewColumn<Row>[];
3403
+ data: Row[];
3404
+ filters?: DataTableViewFilter<Row>[];
3405
+ searchKeys?: string[];
3406
+ searchPlaceholder?: string;
3407
+ initialSort?: {
3408
+ key: string;
3409
+ dir: SortDirection;
3410
+ } | null;
3411
+ onRowClick?: (row: Row) => void;
3412
+ rowKey?: string;
3413
+ pageSize?: number;
3414
+ /** Plural noun for the footer / empty state, e.g. "clients". */
3415
+ itemLabel?: string;
3416
+ className?: string;
3417
+ }
3418
+ declare function DataTableView<Row extends TableRowData>({ columns, data, filters, searchKeys, searchPlaceholder, initialSort, onRowClick, rowKey, pageSize, itemLabel, className, }: DataTableViewProps<Row>): react_jsx_runtime.JSX.Element;
3419
+ type TableTone = "slate" | "blue" | "violet" | "amber" | "ok" | "rose";
3420
+ /** Em-dash placeholder for empty cells. */
3421
+ declare function Dash(): react_jsx_runtime.JSX.Element;
3422
+ /** StagePill — colored stage/status pill for `column.render`. */
3423
+ declare function StagePill({ tone, dot, children, }: {
3424
+ tone?: TableTone;
3425
+ dot?: boolean;
3426
+ children: ReactNode;
3427
+ }): react_jsx_runtime.JSX.Element;
3428
+ /** Assignee — grey avatar + name, or "Unassigned". */
3429
+ declare function Assignee({ name }: {
3430
+ name?: string | null;
3431
+ }): react_jsx_runtime.JSX.Element;
3432
+ /** MoneyCell — `$1,234` or an em-dash when falsy/zero. */
3433
+ declare function MoneyCell({ value }: {
3434
+ value?: number | null;
3435
+ }): react_jsx_runtime.JSX.Element;
3436
+ /** TagsCell — first tag + "+N" overflow. */
3437
+ declare function TagsCell({ items }: {
3438
+ items?: string[];
3439
+ }): react_jsx_runtime.JSX.Element;
3440
+
3298
3441
  /**
3299
3442
  * Detail layout composites — two-column layout: a sticky left rail (the
3300
3443
  * "spine", 320px) holding identity + key facts, and a scrollable main
@@ -4104,4 +4247,4 @@ declare namespace SignatureEditor {
4104
4247
 
4105
4248
  declare function cn(...inputs: ClassValue[]): string;
4106
4249
 
4107
- export { AIReceiptPanel, type AIReceiptPanelProps, type AIReceiptResult, Accordion, AccordionContent, AccordionItem, AccordionTrigger, type ActivityDotVariant, ActivityEventItem, type ActivityEventItemProps, ActivityItem, type ActivityItemProps, ActivityList, type ActivityListProps, AiDraftCard, type AiDraftCardProps, type AiDraftState, Alert, AlertCircleIcon, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, type AlertProps, AlertTitle, AlertTriangleIcon, AlertTriangleSolidIcon, AppHeader, AppHeaderActions, type AppHeaderActionsProps, AppHeaderBreadcrumb, type AppHeaderBreadcrumbProps, type AppHeaderProps, AppHeaderSearch, type AppHeaderSearchProps, AppHeaderTitle, type AppHeaderTitleProps, AreaChart, type AreaChartProps, type AreaPoint, ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowRightSmallIcon, ArrowUpIcon, AspectRatio, AssureAuditBrandIcon, AssureBooksBrandIcon, AssureProBrandIcon, AssureTaxBrandIcon, AtSignIcon, AttachmentChip, type AttachmentChipProps, AttentionItem, type AttentionItemProps, type AttentionUrgency, Avatar, Badge, type BadgeProps, BarChartIcon, BellIcon, Blockquote, BoldIcon, BottomNav, type BottomNavProps, type BottomNavTab, type BrandIconProps, Breadcrumb, BreadcrumbItem, type BreadcrumbItemProps, BreadcrumbLink, type BreadcrumbLinkProps, BreadcrumbList, type BreadcrumbListProps, BreadcrumbPage, type BreadcrumbPageProps, type BreadcrumbProps, BreadcrumbSeparator, type BreadcrumbSeparatorProps, BriefcaseIcon, Building2Icon, BuildingIcon, BulkActionBar, BulkActionBarAction, type BulkActionBarActionProps, type BulkActionBarProps, BulkActionBarSeparator, type BulkActionBarVariant, Button, type ButtonProps, COUNTRY_CODES, Calendar, type CalendarHighlight, type CalendarHighlightColor, CalendarIcon, type CalendarProps, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, type CardVariants, CategoryDivider, type CategoryDividerProps, CategoryTag, type CategoryTagProps, type CategoryTone, type ChannelTabItem, ChannelTabs, type ChannelTabsProps, type ChannelTone, ChatBubbleIcon, CheckCircle2Icon, CheckCircleSolidIcon, CheckIcon, Checkbox, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ChevronsUpDownIcon, CircleDotIcon, CircleIcon, ClientRailGroupHeader, type ClientRailGroupHeaderProps, ClientRailItem, type ClientRailItemProps, ClientSelect, type ClientSelectOption, ClipboardCheckIcon, ClockIcon, CloseIcon, Collapsible, CollapsibleContent, CollapsibleTrigger, ComingSoon, type ComingSoonProps, CommandIcon, type CommandItem, CommandPalette, ConfirmActionButton, type ConfirmActionButtonProps, Content, type ContentProps, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, CopyButton, CopyIcon, CornerDownLeftIcon, type CountryCode, CountryFlag, CountrySelect, CreditCardIcon, DATE_DISPLAY_PLACEHOLDER, DangerAction, type DangerActionProps, DashGrid, type DashGridProps, type DashWidget, DataItem, DataTable, DataTableBody, type DataTableBodyProps, DataTableCell, DataTableCellDue, type DataTableCellDueProps, DataTableCellId, DataTableCellMono, DataTableCellName, type DataTableCellProps, DataTableCheckbox, type DataTableCheckboxProps, DataTableHead, type DataTableHeadProps, DataTableHeader, type DataTableHeaderProps, DataTablePagination, type DataTablePaginationProps, type DataTableProps, DataTableResultsCount, type DataTableResultsCountProps, DataTableRow, type DataTableRowProps, DataTableSearch, type DataTableSearchProps, DataTableSpacer, type DataTableSpacerProps, DataTableToolbar, type DataTableToolbarProps, DatePicker, DateRangePicker, type DateRangeValue, DetailGrid, type DetailGridProps, DetailMain, type DetailMainProps, DetailSpine, DetailSpineHeader, type DetailSpineHeaderProps, type DetailSpineProps, DetailSpineSection, type DetailSpineSectionProps, DetailSpineStats, type DetailSpineStatsProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DismissibleChip, DocumentFileCard, type DocumentFileCardProps, DocumentFileRow, type DocumentFileRowProps, DocumentIcon, type DocumentItemState, DocumentRequestField, type DocumentRequestFieldProps, DocumentsWorkspaceLayout, type DocumentsWorkspaceLayoutProps, DollarSignIcon, DonutChart, type DonutChartProps, type DonutSegment, DownloadIcon, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmailMessageCard, type EmailMessageCardProps, EmptyState, type EmptyStateProps, EngagementCard, type EngagementCardProps, EngagementTimeline, type EngagementTimelineProps, EngagementTimelineStep, type EngagementTimelineStepProps, EyeIcon, EyeOffIcon, Eyebrow, type EyebrowProps, FileChip, type FileChipProps, FileIcon, type FileKind, FileReturnIcon, FileTextIcon, FileTypeBadge, type FileTypeBadgeProps, type FileTypeTone, FileUpload, FilterChip, type FilterChipProps, FilterIcon, FlagIcon, FolderClosedIcon, type FolderNode, FolderOpenIcon, FolderPlusIcon, FolderTree, type FolderTreeProps, FolderUpIcon, FormError, FormSection, FormSuccess, GlobeIcon, GoogleBrandIcon, HelpCircleIcon, HistoryIcon, HomeIcon, HoverCard, HoverCardContent, HoverCardPortal, HoverCardTrigger, IconAction, type IconActionProps, IconTile, type IconTileProps, InboxIcon, InfoCircleSolidIcon, InfoIcon, Input, type InputVariants, IntentBadge, type IntentBadgeProps, type IntentTone, ItalicIcon, Kanban, KanbanCard, type KanbanCardProps, KanbanColumn, type KanbanColumnProps, KanbanIcon, type KanbanProps, KbdHint, type KbdHintProps, KeyIcon, type KeyboardShortcut, type KeyboardShortcutSection, KeyboardShortcutsDialog, type KeyboardShortcutsDialogProps, KpiCard, type KpiCardProps, type KpiDelta, Label, LandmarkIcon, LayoutDashboardIcon, LayoutGridIcon, LayoutListIcon, LightningIcon, Link2Icon, LinkAction, type LinkActionProps, LinkButton, LinkIcon, ListChecksIcon, ListIcon, ListOrderedIcon, LoaderIcon, LoadingRows, LockIcon, LockKeyholeIcon, LockOpenIcon, LogOutIcon, Logo, MailIcon, Main, type MainProps, MapPinIcon, MasterDetailLayout, type MasterDetailLayoutProps, MenuIcon, MessageBubble, MessageBubbleAction, type MessageBubbleActionProps, type MessageBubbleProps, MessageBubbleTombstone, type MessageBubbleTombstoneProps, MessageCircleIcon, MessageCircleWarningIcon, MessageComposer, type MessageComposerProps, MetadataGrid, MicrosoftBrandIcon, MinusIcon, type MissingDocumentItem, MissingDocumentsPanel, type MissingDocumentsPanelProps, MonitorIcon, MoonIcon, MoreHorizontalIcon, MoveIcon, MultiFilterPill, MultiSelectField, MutedSpec, type MutedSpecProps, NewMenu, type NewMenuAction, type NewMenuGroup, type NewMenuProps, NotificationFilter, type NotificationFilterProps, type NotificationFilterValue, NotificationItem, type NotificationItemProps, NotificationList, type NotificationListProps, NotificationPanel, NotificationPanelFooter, type NotificationPanelFooterProps, NotificationPanelHeader, type NotificationPanelHeaderProps, type NotificationPanelProps, Numeric, type NumericProps, OTPInput, PageHeader, type PageHeaderProps, PageHeaderSep, type PageHeaderSepProps, PageHeaderSpec, type PageHeaderSpecProps, Pagination, type PaginationProps, PaletteIcon, PanelLeftCloseIcon, PanelLeftIcon, PaperclipIcon, PauseIcon, PenSignIcon, PenToolIcon, PencilIcon, PhoneCountryInput, PhoneIcon, PhoneInput, type PillStatus, PlayIcon, PlusIcon, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverPortal, PopoverTrigger, PrimaryAction, type PrimaryActionProps, type Priority, PriorityIcon, type PriorityIconProps, ProgressBar, type ProgressBarProps, ProgressRing, type ProgressRingProps, type QuickReplyChip, RadioGroup, RadioGroupItem, type RankedBar, RankedBars, type RankedBarsProps, ReceiptIcon, ReplyIcon, ResponsiveDialog, type ResponsiveDialogProps, RotateCcwIcon, RouteTransition, type RouteTransitionProps, SERVICE_TONES, SaveIcon, ScrollArea, ScrollBar, SearchIcon, SearchInput, type SearchInputVariants, SearchSelect, type SearchSelectOption, SecondaryAction, type SecondaryActionProps, Section, SectionHead, SectionHeader, SegmentedProgress, type SegmentedProgressProps, type SegmentedTone, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, type SelectOption, type SelectProps, SelectRoot, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, SelectableKpiCard, type SelectableKpiCardProps, SendIcon, Separator, type ServiceTone, SettingsIcon, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Shell, type ShellProps, ShieldIcon, SideDrawer, Sidebar, SidebarBrand, type SidebarBrandProps, SidebarBrandSwitcher, type SidebarBrandSwitcherItem, type SidebarBrandSwitcherProps, SidebarBrandSwitcherTile, SidebarBrandText, type SidebarBrandTextProps, SidebarFooter, type SidebarFooterProps, SidebarLink, SidebarLinkAction, type SidebarLinkActionProps, SidebarLinkBadge, type SidebarLinkBadgeProps, type SidebarLinkBadgeVariants, SidebarLinkGroup, type SidebarLinkGroupProps, SidebarLinkLabel, type SidebarLinkLabelProps, type SidebarLinkProps, SidebarPinButton, type SidebarPinButtonProps, type SidebarProps, SidebarProvider, type SidebarProviderProps, SidebarSection, type SidebarSectionProps, type SidebarState, SidebarTrigger, type SidebarTriggerProps, SidebarUser, type SidebarUserProps, SignatureEditor, type SignatureEditorProps, Skeleton, SkeletonCircle, SkeletonText, SlashIcon, Slider, SmartphoneIcon, type SortDirection, SparkleIcon, SparklesIcon, Spinner, type SpinnerProps, StarIcon, StarRating, type StarRatingProps, Stat, StatusDot, type StatusDotProps, StatusIcon, type StatusIconProps, StatusPill, type StatusPillProps, type StatusState, type Step, Stepper, type StepperProps, StickyActionBar, type StickyActionBarProps, StopIcon, StrikethroughIcon, SubmitButton, SuggestionPills, type SuggestionPillsProps, SuiteProgress, type SuiteProgressProps, type SuiteProgressSize, type SuiteProgressTone, SunIcon, Switch, Table, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableFooter, type TableFooterProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, TableIcon, type TableProps, TableRow, type TableRowProps, Tabs, TabsContent, TabsList, TabsTrigger, TagIcon, TeamIcon, TeamMemberSelect, Textarea, type TextareaVariants, TimeLogger, TimeLoggerActions, type TimeLoggerActionsProps, TimeLoggerBillable, type TimeLoggerBillableProps, TimeLoggerContextRow, type TimeLoggerContextRowProps, TimeLoggerEntry, TimeLoggerEntryList, type TimeLoggerEntryListProps, type TimeLoggerEntryProps, TimeLoggerField, type TimeLoggerFieldProps, TimeLoggerFooter, type TimeLoggerFooterProps, TimeLoggerHeader, type TimeLoggerHeaderProps, TimeLoggerNotes, type TimeLoggerNotesProps, type TimeLoggerPhase, type TimeLoggerProps, type TimeLoggerTier, TimeLoggerTimer, type TimeLoggerTimerProps, type TimelineState, ToastProvider, ToggleGroup, ToggleGroupItem, Toolbar, type ToolbarProps, Tooltip, TooltipContent, TooltipPortal, TooltipProvider, TooltipTrigger, Trash2Icon, TrashIcon, TrendingDownIcon, TrendingUpIcon, UnderlineIcon, UploadIcon, type UseStopwatchReturn, UserCircleIcon, UserIcon, UsersIcon, VisuallyHidden, WorkflowIcon, XCircleSolidIcon, XIcon, YEAR_DISPLAY_PLACEHOLDER, ZoomInIcon, ZoomOutIcon, alertVariants, applyMask, applyYearMask, attachmentChipVariants, badgeVariants, buttonVariants, cardVariants, cn, dateToIso, displayToIso, fileTypeBadgeVariants, fileTypeFromName, filterChipVariants, formatClock, formatCurrency, formatDuration, getFlagEmoji, iconTileVariants, inputVariants, isoToDate, isoToDisplay, isoToYear, labelVariants, parseDuration, parsePhoneForEditing, progressBarVariants, progressRingVariants, searchInputVariants, serviceToneLabel, serviceToneStyle, sidebarLinkBadgeVariants, spinnerVariants, starRatingVariants, statusDotVariants, suiteProgressFillVariants, textareaVariants, useSidebarPeekLock, useSidebarState, useStopwatch, useToast, yearToIso };
4250
+ export { AIReceiptPanel, type AIReceiptPanelProps, type AIReceiptResult, Accordion, AccordionContent, AccordionItem, AccordionTrigger, type ActivityDotVariant, ActivityEventItem, type ActivityEventItemProps, ActivityItem, type ActivityItemProps, ActivityList, type ActivityListProps, AiDraftCard, type AiDraftCardProps, type AiDraftState, Alert, AlertCircleIcon, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, type AlertProps, AlertTitle, AlertTriangleIcon, AlertTriangleSolidIcon, AppHeader, AppHeaderActions, type AppHeaderActionsProps, AppHeaderBreadcrumb, type AppHeaderBreadcrumbProps, type AppHeaderProps, AppHeaderSearch, type AppHeaderSearchProps, AppHeaderTitle, type AppHeaderTitleProps, AreaChart, type AreaChartProps, type AreaPoint, ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowRightSmallIcon, ArrowUpIcon, AspectRatio, Assignee, AssureAuditBrandIcon, AssureBooksBrandIcon, AssureProBrandIcon, AssureTaxBrandIcon, AtSignIcon, AttachmentChip, type AttachmentChipProps, AttentionItem, type AttentionItemProps, type AttentionUrgency, Avatar, Badge, type BadgeProps, BarChartIcon, BellIcon, Blockquote, BoldIcon, BottomNav, type BottomNavProps, type BottomNavTab, type BrandIconProps, Breadcrumb, BreadcrumbItem, type BreadcrumbItemProps, BreadcrumbLink, type BreadcrumbLinkProps, BreadcrumbList, type BreadcrumbListProps, BreadcrumbPage, type BreadcrumbPageProps, type BreadcrumbProps, BreadcrumbSeparator, type BreadcrumbSeparatorProps, BriefcaseIcon, Building2Icon, BuildingIcon, BulkActionBar, BulkActionBarAction, type BulkActionBarActionProps, type BulkActionBarProps, BulkActionBarSeparator, type BulkActionBarVariant, Button, type ButtonProps, COUNTRY_CODES, Calendar, type CalendarHighlight, type CalendarHighlightColor, CalendarIcon, type CalendarProps, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, type CardVariants, CategoryDivider, type CategoryDividerProps, CategoryTag, type CategoryTagProps, type CategoryTone, type ChannelTabItem, ChannelTabs, type ChannelTabsProps, type ChannelTone, ChatBubbleIcon, CheckCircle2Icon, CheckCircleSolidIcon, CheckIcon, Checkbox, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ChevronsUpDownIcon, CircleDotIcon, CircleIcon, ClientRailGroupHeader, type ClientRailGroupHeaderProps, ClientRailItem, type ClientRailItemProps, ClientSelect, type ClientSelectOption, ClipboardCheckIcon, ClockIcon, CloseIcon, Collapsible, CollapsibleContent, CollapsibleTrigger, ComingSoon, type ComingSoonProps, CommandIcon, type CommandItem, CommandPalette, ConfirmActionButton, type ConfirmActionButtonProps, Content, type ContentProps, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, CopyButton, CopyIcon, CornerDownLeftIcon, type CountryCode, CountryFlag, CountrySelect, CreditCardIcon, DATE_DISPLAY_PLACEHOLDER, DangerAction, type DangerActionProps, Dash, DashGrid, type DashGridProps, type DashWidget, DataItem, DataTable, DataTableBody, type DataTableBodyProps, DataTableCell, DataTableCellDue, type DataTableCellDueProps, DataTableCellId, DataTableCellMono, DataTableCellName, type DataTableCellProps, DataTableCheckbox, type DataTableCheckboxProps, DataTableHead, type DataTableHeadProps, DataTableHeader, type DataTableHeaderProps, DataTablePagination, type DataTablePaginationProps, type DataTableProps, DataTableResultsCount, type DataTableResultsCountProps, DataTableRow, type DataTableRowProps, DataTableSearch, type DataTableSearchProps, DataTableSpacer, type DataTableSpacerProps, DataTableToolbar, type DataTableToolbarProps, DataTableView, type DataTableViewColumn, type DataTableViewFilter, type DataTableViewProps, DatePicker, DateRangePicker, type DateRangeValue, DetailGrid, type DetailGridProps, DetailMain, type DetailMainProps, DetailSpine, DetailSpineHeader, type DetailSpineHeaderProps, type DetailSpineProps, DetailSpineSection, type DetailSpineSectionProps, DetailSpineStats, type DetailSpineStatsProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DismissibleChip, DocumentFileCard, type DocumentFileCardProps, DocumentFileRow, type DocumentFileRowProps, DocumentIcon, type DocumentItemState, DocumentRequestField, type DocumentRequestFieldProps, DocumentsWorkspaceLayout, type DocumentsWorkspaceLayoutProps, DollarSignIcon, DonutChart, type DonutChartProps, type DonutSegment, DownloadIcon, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmailMessageCard, type EmailMessageCardProps, EmptyState, type EmptyStateProps, EngagementCard, type EngagementCardProps, EngagementTimeline, type EngagementTimelineProps, EngagementTimelineStep, type EngagementTimelineStepProps, EyeIcon, EyeOffIcon, Eyebrow, type EyebrowProps, FileChip, type FileChipProps, FileIcon, type FileKind, FileReturnIcon, FileTextIcon, FileTypeBadge, type FileTypeBadgeProps, type FileTypeTone, FileUpload, FilterChip, type FilterChipProps, FilterIcon, FlagIcon, FolderClosedIcon, type FolderNode, FolderOpenIcon, FolderPlusIcon, FolderTree, type FolderTreeProps, FolderUpIcon, FormError, FormSection, FormSuccess, GlobeIcon, GoogleBrandIcon, HelpCircleIcon, HistoryIcon, HomeIcon, HoverCard, HoverCardContent, HoverCardPortal, HoverCardTrigger, IconAction, type IconActionProps, IconTile, type IconTileProps, InboxIcon, InfoCircleSolidIcon, InfoIcon, Input, type InputVariants, IntentBadge, type IntentBadgeProps, type IntentTone, ItalicIcon, Kanban, KanbanCard, type KanbanCardProps, KanbanColumn, type KanbanColumnProps, KanbanIcon, type KanbanProps, KbdHint, type KbdHintProps, KeyIcon, type KeyboardShortcut, type KeyboardShortcutSection, KeyboardShortcutsDialog, type KeyboardShortcutsDialogProps, KpiCard, type KpiCardProps, type KpiDelta, Label, LandmarkIcon, LayoutDashboardIcon, LayoutGridIcon, LayoutListIcon, LightningIcon, Link2Icon, LinkAction, type LinkActionProps, LinkButton, LinkIcon, ListChecksIcon, ListIcon, ListOrderedIcon, LoaderIcon, LoadingRows, LockIcon, LockKeyholeIcon, LockOpenIcon, LogOutIcon, Logo, MailIcon, Main, type MainProps, MapPinIcon, MasterDetailLayout, type MasterDetailLayoutProps, MenuIcon, MessageBubble, MessageBubbleAction, type MessageBubbleActionProps, type MessageBubbleProps, MessageBubbleTombstone, type MessageBubbleTombstoneProps, MessageCircleIcon, MessageCircleWarningIcon, MessageComposer, type MessageComposerProps, MetadataGrid, MicrosoftBrandIcon, MinusIcon, type MissingDocumentItem, MissingDocumentsPanel, type MissingDocumentsPanelProps, MoneyCell, MonitorIcon, MoonIcon, MoreHorizontalIcon, MoveIcon, MultiFilterPill, MultiSelectField, MutedSpec, type MutedSpecProps, NewMenu, type NewMenuAction, type NewMenuGroup, type NewMenuProps, NotificationFilter, type NotificationFilterProps, type NotificationFilterValue, NotificationItem, type NotificationItemProps, NotificationList, type NotificationListProps, NotificationPanel, NotificationPanelFooter, type NotificationPanelFooterProps, NotificationPanelHeader, type NotificationPanelHeaderProps, type NotificationPanelProps, Numeric, type NumericProps, OTPInput, PageHeader, type PageHeaderProps, PageHeaderSep, type PageHeaderSepProps, PageHeaderSpec, type PageHeaderSpecProps, Pagination, type PaginationProps, PaletteIcon, PanelLeftCloseIcon, PanelLeftIcon, PaperclipIcon, PauseIcon, PenSignIcon, PenToolIcon, PencilIcon, PhoneCountryInput, PhoneIcon, PhoneInput, type PillStatus, PlayIcon, PlusIcon, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverPortal, PopoverTrigger, PrimaryAction, type PrimaryActionProps, type Priority, PriorityIcon, type PriorityIconProps, ProgressBar, type ProgressBarProps, ProgressRing, type ProgressRingProps, type QuickReplyChip, RadioGroup, RadioGroupItem, type RankedBar, RankedBars, type RankedBarsProps, ReceiptIcon, ReplyIcon, ResponsiveDialog, type ResponsiveDialogProps, RotateCcwIcon, RouteTransition, type RouteTransitionProps, SERVICE_TONES, SaveIcon, ScrollArea, ScrollBar, SearchIcon, SearchInput, type SearchInputVariants, SearchSelect, type SearchSelectOption, SecondaryAction, type SecondaryActionProps, Section, SectionHead, SectionHeader, SegmentedProgress, type SegmentedProgressProps, type SegmentedTone, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, type SelectOption, type SelectProps, SelectRoot, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, SelectableKpiCard, type SelectableKpiCardProps, SendIcon, Separator, type ServiceTone, SettingsIcon, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Shell, type ShellProps, ShieldIcon, SideDrawer, Sidebar, SidebarBrand, type SidebarBrandProps, SidebarBrandSwitcher, type SidebarBrandSwitcherItem, type SidebarBrandSwitcherProps, SidebarBrandSwitcherTile, SidebarBrandText, type SidebarBrandTextProps, SidebarFooter, type SidebarFooterProps, SidebarLink, SidebarLinkAction, type SidebarLinkActionProps, SidebarLinkBadge, type SidebarLinkBadgeProps, type SidebarLinkBadgeVariants, SidebarLinkGroup, type SidebarLinkGroupProps, SidebarLinkLabel, type SidebarLinkLabelProps, type SidebarLinkProps, SidebarPinButton, type SidebarPinButtonProps, type SidebarProps, SidebarProvider, type SidebarProviderProps, SidebarSection, type SidebarSectionProps, type SidebarState, SidebarTrigger, type SidebarTriggerProps, SidebarUser, type SidebarUserProps, SignatureEditor, type SignatureEditorProps, Skeleton, SkeletonCircle, SkeletonText, SlashIcon, Slider, SmartphoneIcon, type SortDirection, SparkleIcon, SparklesIcon, Spinner, type SpinnerProps, StackedBarChart, type StackedBarChartProps, type StackedBarDatum, type StackedBarSeries, StagePill, StarIcon, StarRating, type StarRatingProps, Stat, StatusDot, type StatusDotProps, StatusIcon, type StatusIconProps, StatusPill, type StatusPillProps, type StatusState, type Step, Stepper, type StepperProps, StickyActionBar, type StickyActionBarProps, StopIcon, StrikethroughIcon, SubmitButton, SuggestionPills, type SuggestionPillsProps, SuiteProgress, type SuiteProgressProps, type SuiteProgressSize, type SuiteProgressTone, SunIcon, Switch, Table, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableFooter, type TableFooterProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, TableIcon, type TableProps, TableRow, type TableRowData, type TableRowProps, type TableTone, Tabs, TabsContent, TabsList, TabsTrigger, TagIcon, TagsCell, TeamIcon, TeamMemberSelect, Textarea, type TextareaVariants, TimeLogger, TimeLoggerActions, type TimeLoggerActionsProps, TimeLoggerBillable, type TimeLoggerBillableProps, TimeLoggerContextRow, type TimeLoggerContextRowProps, TimeLoggerEntry, TimeLoggerEntryList, type TimeLoggerEntryListProps, type TimeLoggerEntryProps, TimeLoggerField, type TimeLoggerFieldProps, TimeLoggerFooter, type TimeLoggerFooterProps, TimeLoggerHeader, type TimeLoggerHeaderProps, TimeLoggerNotes, type TimeLoggerNotesProps, type TimeLoggerPhase, type TimeLoggerProps, type TimeLoggerTier, TimeLoggerTimer, type TimeLoggerTimerProps, type TimelineState, ToastProvider, ToggleGroup, ToggleGroupItem, Toolbar, type ToolbarProps, Tooltip, TooltipContent, TooltipPortal, TooltipProvider, TooltipTrigger, Trash2Icon, TrashIcon, TrendingDownIcon, TrendingUpIcon, UnderlineIcon, UploadIcon, type UseStopwatchReturn, UserCircleIcon, UserIcon, UsersIcon, VisuallyHidden, WorkflowIcon, XCircleSolidIcon, XIcon, YEAR_DISPLAY_PLACEHOLDER, ZoomInIcon, ZoomOutIcon, alertVariants, applyMask, applyYearMask, attachmentChipVariants, badgeVariants, buttonVariants, cardVariants, cn, dateToIso, displayToIso, fileTypeBadgeVariants, fileTypeFromName, filterChipVariants, formatClock, formatCurrency, formatDuration, getFlagEmoji, iconTileVariants, inputVariants, isoToDate, isoToDisplay, isoToYear, labelVariants, parseDuration, parsePhoneForEditing, progressBarVariants, progressRingVariants, searchInputVariants, serviceToneLabel, serviceToneStyle, sidebarLinkBadgeVariants, spinnerVariants, starRatingVariants, statusDotVariants, suiteProgressFillVariants, textareaVariants, useSidebarPeekLock, useSidebarState, useStopwatch, useToast, yearToIso };
package/dist/index.js CHANGED
@@ -8104,6 +8104,207 @@ var Slider = React38.forwardRef(
8104
8104
  }
8105
8105
  );
8106
8106
  Slider.displayName = SliderPrimitive.Root.displayName;
8107
+ var RAMP3 = [
8108
+ "var(--color-chart-1)",
8109
+ "var(--color-chart-2)",
8110
+ "var(--color-chart-3)",
8111
+ "var(--color-chart-4)"
8112
+ ];
8113
+ var Y_GUTTER = 30;
8114
+ var defaultFormat2 = (n) => n.toLocaleString();
8115
+ function niceScale(max, tickCount) {
8116
+ if (max <= 0 || !Number.isFinite(max)) {
8117
+ return { niceMax: tickCount, ticks: Array.from({ length: tickCount + 1 }, (_, i) => i) };
8118
+ }
8119
+ const rawStep = max / tickCount;
8120
+ const mag = Math.pow(10, Math.floor(Math.log10(rawStep)));
8121
+ const norm = rawStep / mag;
8122
+ const niceNorm = norm <= 1 ? 1 : norm <= 2 ? 2 : norm <= 3 ? 3 : norm <= 5 ? 5 : 10;
8123
+ const niceStep = niceNorm * mag;
8124
+ const niceMax = niceStep * tickCount;
8125
+ const ticks = Array.from({ length: tickCount + 1 }, (_, i) => i * niceStep);
8126
+ return { niceMax, ticks };
8127
+ }
8128
+ var StackedBarChart = forwardRef(
8129
+ function StackedBarChart2({
8130
+ bars,
8131
+ series,
8132
+ height = 200,
8133
+ tickCount = 4,
8134
+ formatValue = defaultFormat2,
8135
+ showYAxis = true,
8136
+ showXAxis = true,
8137
+ showLegend = true,
8138
+ minBarWidth = 0,
8139
+ className,
8140
+ ...props
8141
+ }, ref) {
8142
+ const anchorRef = useRef(null);
8143
+ const [hover, setHover] = useState(null);
8144
+ const [mounted, setMounted] = useState(false);
8145
+ useEffect(() => setMounted(true), []);
8146
+ const colorFor = useCallback(
8147
+ (key) => {
8148
+ const idx = series.findIndex((s) => s.key === key);
8149
+ return series[idx]?.color ?? RAMP3[idx % RAMP3.length];
8150
+ },
8151
+ [series]
8152
+ );
8153
+ const rawMax = bars.reduce((peak, bar) => {
8154
+ const total = series.reduce((sum, s) => sum + Math.max(0, bar.values[s.key] ?? 0), 0);
8155
+ return Math.max(peak, total);
8156
+ }, 0);
8157
+ const { niceMax, ticks } = niceScale(rawMax, tickCount);
8158
+ const handleMove = useCallback(
8159
+ (e, h) => {
8160
+ const rect = anchorRef.current?.getBoundingClientRect();
8161
+ if (!rect) return;
8162
+ setHover({ ...h, x: e.clientX - rect.left, y: e.clientY - rect.top });
8163
+ },
8164
+ []
8165
+ );
8166
+ return /* @__PURE__ */ jsxs("div", { ref, className: cn("w-full", className), ...props, children: [
8167
+ showLegend && /* @__PURE__ */ jsx("div", { className: "mb-3 flex flex-wrap items-center gap-x-4 gap-y-1.5", children: series.map((s) => /* @__PURE__ */ jsxs("span", { className: "text-fg-3 inline-flex items-center gap-1.5 text-xs", children: [
8168
+ /* @__PURE__ */ jsx(
8169
+ "span",
8170
+ {
8171
+ "aria-hidden": true,
8172
+ className: "size-2.5 rounded-[3px]",
8173
+ style: { background: s.color ?? colorFor(s.key) }
8174
+ }
8175
+ ),
8176
+ s.label
8177
+ ] }, s.key)) }),
8178
+ /* @__PURE__ */ jsxs("div", { ref: anchorRef, className: "relative flex gap-2", children: [
8179
+ showYAxis && /* @__PURE__ */ jsx(
8180
+ "div",
8181
+ {
8182
+ className: "text-fg-4 relative shrink-0 text-[11px] tabular-nums",
8183
+ style: { width: Y_GUTTER, height },
8184
+ "aria-hidden": true,
8185
+ children: ticks.map((t) => /* @__PURE__ */ jsx(
8186
+ "span",
8187
+ {
8188
+ className: "absolute right-0 -translate-y-1/2 leading-none",
8189
+ style: { bottom: `${t / niceMax * 100}%` },
8190
+ children: formatValue(t)
8191
+ },
8192
+ t
8193
+ ))
8194
+ }
8195
+ ),
8196
+ /* @__PURE__ */ jsx("div", { className: cn("min-w-0 flex-1", minBarWidth > 0 && "overflow-x-auto"), children: /* @__PURE__ */ jsxs("div", { style: { minWidth: minBarWidth > 0 ? bars.length * minBarWidth : void 0 }, children: [
8197
+ /* @__PURE__ */ jsxs("div", { className: "relative", style: { height }, children: [
8198
+ ticks.map((t) => /* @__PURE__ */ jsx(
8199
+ "div",
8200
+ {
8201
+ "aria-hidden": true,
8202
+ className: "border-rule absolute inset-x-0 border-t",
8203
+ style: { bottom: `${t / niceMax * 100}%` }
8204
+ },
8205
+ t
8206
+ )),
8207
+ /* @__PURE__ */ jsx("div", { className: "absolute inset-0 flex items-end gap-3", children: bars.map((bar, barIndex) => {
8208
+ const total = series.reduce(
8209
+ (sum, s) => sum + Math.max(0, bar.values[s.key] ?? 0),
8210
+ 0
8211
+ );
8212
+ const tipLabel = bar.tooltipLabel ?? (typeof bar.label === "string" ? bar.label : "");
8213
+ return /* @__PURE__ */ jsx(
8214
+ "div",
8215
+ {
8216
+ className: "flex h-full flex-1 items-end",
8217
+ style: { minWidth: minBarWidth || void 0 },
8218
+ children: /* @__PURE__ */ jsxs("div", { className: "flex h-full w-full flex-col-reverse overflow-hidden rounded-t-[5px]", children: [
8219
+ series.map((s, sIdx) => {
8220
+ const value = Math.max(0, bar.values[s.key] ?? 0);
8221
+ if (value <= 0) return null;
8222
+ const targetPct = value / niceMax * 100;
8223
+ const color = s.color ?? RAMP3[sIdx % RAMP3.length];
8224
+ const dimmed = hover != null && (hover.barIndex !== barIndex || hover.seriesKey !== s.key);
8225
+ return (
8226
+ // Segment is a labeled graphic (role="img" + aria-label exposes
8227
+ // the value); the hover tooltip is a supplementary pointer affordance.
8228
+ // eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions
8229
+ /* @__PURE__ */ jsx(
8230
+ "div",
8231
+ {
8232
+ role: "img",
8233
+ "aria-label": `${tipLabel} ${s.label}: ${formatValue(value)}`,
8234
+ className: "w-full transition-[height,opacity] duration-[var(--duration-slow)] ease-[var(--ease-out-quart)] motion-reduce:transition-none",
8235
+ style: {
8236
+ height: `${mounted ? targetPct : 0}%`,
8237
+ background: color,
8238
+ opacity: dimmed ? 0.4 : 1,
8239
+ transitionDelay: mounted ? `${barIndex * 60}ms` : "0ms"
8240
+ },
8241
+ onMouseEnter: (e) => handleMove(e, {
8242
+ barIndex,
8243
+ seriesKey: s.key,
8244
+ label: s.label,
8245
+ value,
8246
+ color
8247
+ }),
8248
+ onMouseMove: (e) => handleMove(e, {
8249
+ barIndex,
8250
+ seriesKey: s.key,
8251
+ label: s.label,
8252
+ value,
8253
+ color
8254
+ }),
8255
+ onMouseLeave: () => setHover(null)
8256
+ },
8257
+ s.key
8258
+ )
8259
+ );
8260
+ }),
8261
+ total <= 0 && /* @__PURE__ */ jsx("div", { className: "h-px w-full", "aria-hidden": true })
8262
+ ] })
8263
+ },
8264
+ barIndex
8265
+ );
8266
+ }) })
8267
+ ] }),
8268
+ showXAxis && /* @__PURE__ */ jsx("div", { className: "text-fg-3 mt-2 flex gap-3 text-[11px]", children: bars.map((bar, i) => /* @__PURE__ */ jsx(
8269
+ "div",
8270
+ {
8271
+ className: "flex flex-1 items-center justify-center gap-1.5 truncate text-center",
8272
+ style: { minWidth: minBarWidth || void 0 },
8273
+ children: bar.label
8274
+ },
8275
+ i
8276
+ )) })
8277
+ ] }) }),
8278
+ hover && /* @__PURE__ */ jsxs(
8279
+ "div",
8280
+ {
8281
+ className: "bg-fg text-bg pointer-events-none absolute z-[var(--z-tooltip)] -translate-x-1/2 -translate-y-[calc(100%+10px)] rounded-[var(--radius-icon)] px-2 py-1 text-center whitespace-nowrap shadow-[var(--shadow-pop)]",
8282
+ style: { left: hover.x, top: hover.y },
8283
+ children: [
8284
+ /* @__PURE__ */ jsxs("span", { className: "flex items-center gap-1.5 text-xs font-semibold tabular-nums", children: [
8285
+ /* @__PURE__ */ jsx(
8286
+ "span",
8287
+ {
8288
+ "aria-hidden": true,
8289
+ className: "size-2 rounded-[2px]",
8290
+ style: { background: hover.color }
8291
+ }
8292
+ ),
8293
+ formatValue(hover.value)
8294
+ ] }),
8295
+ /* @__PURE__ */ jsx("span", { className: "block text-[10px] opacity-70", children: (() => {
8296
+ const col = bars[hover.barIndex];
8297
+ const colLabel = col?.tooltipLabel ?? (typeof col?.label === "string" ? col.label : "");
8298
+ return colLabel ? `${colLabel} \xB7 ${hover.label}` : hover.label;
8299
+ })() })
8300
+ ]
8301
+ }
8302
+ )
8303
+ ] })
8304
+ ] });
8305
+ }
8306
+ );
8307
+ StackedBarChart.displayName = "StackedBarChart";
8107
8308
  var starRatingVariants = cva("flex items-center gap-0.5", {
8108
8309
  variants: {
8109
8310
  sizeVariant: {
@@ -12102,6 +12303,197 @@ var DataTablePagination = forwardRef(
12102
12303
  }
12103
12304
  );
12104
12305
  DataTablePagination.displayName = "DataTablePagination";
12306
+ var ALL = "__all";
12307
+ function colStyle(width) {
12308
+ if (!width) return void 0;
12309
+ const flexible = width.match(/minmax\(\s*([\d.]+)px/);
12310
+ if (flexible) return { minWidth: `${flexible[1]}px` };
12311
+ return { width, minWidth: width };
12312
+ }
12313
+ function DataTableView({
12314
+ columns,
12315
+ data,
12316
+ filters = [],
12317
+ searchKeys = [],
12318
+ searchPlaceholder = "Search\u2026",
12319
+ initialSort = null,
12320
+ onRowClick,
12321
+ rowKey = "id",
12322
+ pageSize = 15,
12323
+ itemLabel = "items",
12324
+ className
12325
+ }) {
12326
+ const [search, setSearch] = useState("");
12327
+ const [filterValues, setFilterValues] = useState({});
12328
+ const [sort, setSort] = useState(initialSort);
12329
+ const [page, setPage] = useState(1);
12330
+ const setFilter = (key, value) => {
12331
+ setFilterValues((prev) => ({ ...prev, [key]: value }));
12332
+ setPage(1);
12333
+ };
12334
+ const processed = useMemo(() => {
12335
+ const query = search.trim().toLowerCase();
12336
+ let rows = data.filter((row) => {
12337
+ for (const filter of filters) {
12338
+ const value = filterValues[filter.key];
12339
+ if (value && value !== ALL && !filter.match(row, value)) return false;
12340
+ }
12341
+ if (query && searchKeys.length) {
12342
+ const hit = searchKeys.some(
12343
+ (key) => String(row[key] ?? "").toLowerCase().includes(query)
12344
+ );
12345
+ if (!hit) return false;
12346
+ }
12347
+ return true;
12348
+ });
12349
+ if (sort) {
12350
+ const col = columns.find((c) => c.key === sort.key);
12351
+ const accessor = col?.sortValue ?? ((row) => row[sort.key]);
12352
+ const dir = sort.dir === "asc" ? 1 : -1;
12353
+ rows = [...rows].sort((a, b) => {
12354
+ let av = accessor(a);
12355
+ let bv = accessor(b);
12356
+ if (typeof av === "string") av = av.toLowerCase();
12357
+ if (typeof bv === "string") bv = bv.toLowerCase();
12358
+ if (av == null) av = sort.dir === "asc" ? "\uFFFF" : "";
12359
+ if (bv == null) bv = sort.dir === "asc" ? "\uFFFF" : "";
12360
+ return av < bv ? -dir : av > bv ? dir : 0;
12361
+ });
12362
+ }
12363
+ return rows;
12364
+ }, [data, filters, filterValues, search, searchKeys, sort, columns]);
12365
+ const total = processed.length;
12366
+ const pageCount = Math.max(1, Math.ceil(total / pageSize));
12367
+ const current = Math.min(page, pageCount);
12368
+ const pageRows = processed.slice((current - 1) * pageSize, current * pageSize);
12369
+ const hasToolbar = searchKeys.length > 0 || filters.length > 0;
12370
+ return /* @__PURE__ */ jsxs(DataTable, { withToolbar: hasToolbar, className, children: [
12371
+ hasToolbar && /* @__PURE__ */ jsxs(DataTableToolbar, { children: [
12372
+ searchKeys.length > 0 && /* @__PURE__ */ jsx(
12373
+ DataTableSearch,
12374
+ {
12375
+ placeholder: searchPlaceholder,
12376
+ value: search,
12377
+ onChange: (e) => {
12378
+ setSearch(e.target.value);
12379
+ setPage(1);
12380
+ }
12381
+ }
12382
+ ),
12383
+ filters.map((filter) => {
12384
+ const options = [
12385
+ { value: ALL, label: filter.allLabel ?? `All ${filter.label ?? ""}`.trim() },
12386
+ ...filter.options.map((o) => typeof o === "string" ? { value: o, label: o } : o)
12387
+ ];
12388
+ return /* @__PURE__ */ jsx(
12389
+ Select,
12390
+ {
12391
+ options,
12392
+ value: filterValues[filter.key] ?? ALL,
12393
+ onValueChange: (value) => setFilter(filter.key, value),
12394
+ "aria-label": filter.label ?? filter.key,
12395
+ className: "w-auto min-w-[150px]"
12396
+ },
12397
+ filter.key
12398
+ );
12399
+ }),
12400
+ /* @__PURE__ */ jsx(DataTableSpacer, {}),
12401
+ /* @__PURE__ */ jsx(DataTableResultsCount, { current: total, total: data.length })
12402
+ ] }),
12403
+ /* @__PURE__ */ jsxs("table", { className: "table-auto", children: [
12404
+ /* @__PURE__ */ jsx("colgroup", { children: columns.map((c) => /* @__PURE__ */ jsx("col", { style: colStyle(c.width) }, c.key)) }),
12405
+ /* @__PURE__ */ jsx(DataTableHead, { children: /* @__PURE__ */ jsx(DataTableRow, { children: columns.map(
12406
+ (c) => c.sortable ? /* @__PURE__ */ jsx(
12407
+ DataTableHeader,
12408
+ {
12409
+ sortable: true,
12410
+ sort: sort?.key === c.key ? sort.dir : null,
12411
+ onSortChange: (next) => setSort(next ? { key: c.key, dir: next } : null),
12412
+ className: c.align === "right" ? "text-right [&>button]:ml-auto" : void 0,
12413
+ children: c.header
12414
+ },
12415
+ c.key
12416
+ ) : /* @__PURE__ */ jsx(DataTableHeader, { className: c.align === "right" ? "text-right" : void 0, children: c.header }, c.key)
12417
+ ) }) }),
12418
+ /* @__PURE__ */ jsx(DataTableBody, { children: pageRows.length === 0 ? /* @__PURE__ */ jsx("tr", { children: /* @__PURE__ */ jsxs(DataTableCell, { colSpan: columns.length, className: "text-fg-3 py-12 text-center", children: [
12419
+ "No ",
12420
+ itemLabel,
12421
+ " match your filters."
12422
+ ] }) }) : pageRows.map((row) => /* @__PURE__ */ jsx(
12423
+ DataTableRow,
12424
+ {
12425
+ onClick: onRowClick ? () => onRowClick(row) : void 0,
12426
+ className: onRowClick ? "cursor-pointer" : void 0,
12427
+ children: columns.map((c) => /* @__PURE__ */ jsx(DataTableCell, { className: c.align === "right" ? "text-right" : void 0, children: c.render ? c.render(row) : row[c.key] ?? /* @__PURE__ */ jsx(Dash, {}) }, c.key))
12428
+ },
12429
+ String(row[rowKey])
12430
+ )) })
12431
+ ] }),
12432
+ /* @__PURE__ */ jsx(
12433
+ DataTablePagination,
12434
+ {
12435
+ current,
12436
+ total,
12437
+ pageSize,
12438
+ onPageChange: setPage
12439
+ }
12440
+ )
12441
+ ] });
12442
+ }
12443
+ var toneClass = {
12444
+ slate: "bg-bg-3 text-fg-3",
12445
+ blue: "bg-[color-mix(in_oklab,var(--color-brand-audit)_14%,transparent)] text-[color:var(--color-brand-audit)]",
12446
+ violet: "bg-pro-bg text-pro-fg",
12447
+ amber: "bg-warning-bg text-warning-fg",
12448
+ ok: "bg-success-bg text-success-fg",
12449
+ rose: "bg-danger-bg text-danger-fg"
12450
+ };
12451
+ function Dash() {
12452
+ return /* @__PURE__ */ jsx("span", { className: "text-fg-5", children: "\u2014" });
12453
+ }
12454
+ function StagePill({
12455
+ tone = "slate",
12456
+ dot = true,
12457
+ children
12458
+ }) {
12459
+ return /* @__PURE__ */ jsxs(
12460
+ "span",
12461
+ {
12462
+ className: cn(
12463
+ "inline-flex items-center gap-1.5 rounded-pill px-2 py-0.5 text-xs font-medium",
12464
+ toneClass[tone]
12465
+ ),
12466
+ children: [
12467
+ dot && /* @__PURE__ */ jsx("span", { "aria-hidden": "true", className: "size-1.5 rounded-full bg-current" }),
12468
+ children
12469
+ ]
12470
+ }
12471
+ );
12472
+ }
12473
+ function Assignee({ name }) {
12474
+ if (!name) return /* @__PURE__ */ jsx("span", { className: "text-fg-4 text-[13px]", children: "Unassigned" });
12475
+ return /* @__PURE__ */ jsxs("span", { className: "flex items-center gap-2", children: [
12476
+ /* @__PURE__ */ jsx(Avatar, { name, size: "xs" }),
12477
+ /* @__PURE__ */ jsx("span", { className: "text-fg-2 truncate text-[13px]", children: name })
12478
+ ] });
12479
+ }
12480
+ function MoneyCell({ value }) {
12481
+ if (!value) return /* @__PURE__ */ jsx(Dash, {});
12482
+ return /* @__PURE__ */ jsxs("span", { className: "text-fg font-medium tabular-nums", children: [
12483
+ "$",
12484
+ value.toLocaleString()
12485
+ ] });
12486
+ }
12487
+ function TagsCell({ items = [] }) {
12488
+ if (items.length === 0) return /* @__PURE__ */ jsx(Dash, {});
12489
+ return /* @__PURE__ */ jsxs("span", { className: "flex items-center gap-1.5", children: [
12490
+ /* @__PURE__ */ jsx("span", { className: "bg-bg-2 text-fg-3 border-rule rounded-pill border px-2 py-0.5 text-xs", children: items[0] }),
12491
+ items.length > 1 && /* @__PURE__ */ jsxs("span", { className: "text-fg-4 text-xs tabular-nums", children: [
12492
+ "+",
12493
+ items.length - 1
12494
+ ] })
12495
+ ] });
12496
+ }
12105
12497
  var DetailGrid = forwardRef(function DetailGrid2({ className, ...props }, ref) {
12106
12498
  return /* @__PURE__ */ jsx(
12107
12499
  "div",
@@ -13807,6 +14199,6 @@ function SignatureEditor({
13807
14199
  }
13808
14200
  SignatureEditor.displayName = "SignatureEditor";
13809
14201
 
13810
- export { AIReceiptPanel, Accordion, AccordionContent, AccordionItem, AccordionTrigger, ActivityEventItem, ActivityItem, ActivityList, AiDraftCard, Alert, AlertCircleIcon, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AlertTriangleIcon, AlertTriangleSolidIcon, AppHeader, AppHeaderActions, AppHeaderBreadcrumb, AppHeaderSearch, AppHeaderTitle, AreaChart, ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowRightSmallIcon, ArrowUpIcon, AspectRatio, AssureAuditBrandIcon, AssureBooksBrandIcon, AssureProBrandIcon, AssureTaxBrandIcon, AtSignIcon, AttachmentChip, AttentionItem, Avatar, Badge, BarChartIcon, BellIcon, Blockquote, BoldIcon, BottomNav, Breadcrumb, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, BriefcaseIcon, Building2Icon, BuildingIcon, BulkActionBar, BulkActionBarAction, BulkActionBarSeparator, Button, COUNTRY_CODES, Calendar, CalendarIcon, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, CategoryDivider, CategoryTag, ChannelTabs, ChatBubbleIcon, CheckCircle2Icon, CheckCircleSolidIcon, CheckIcon, Checkbox, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ChevronsUpDownIcon, CircleDotIcon, CircleIcon, ClientRailGroupHeader, ClientRailItem, ClientSelect, ClipboardCheckIcon, ClockIcon, CloseIcon, Collapsible, CollapsibleContent, CollapsibleTrigger, ComingSoon, CommandIcon, CommandPalette, ConfirmActionButton, Content16 as Content, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, CopyButton, CopyIcon, CornerDownLeftIcon, CountryFlag, CountrySelect, CreditCardIcon, DATE_DISPLAY_PLACEHOLDER, DangerAction, DashGrid, DataItem, DataTable, DataTableBody, DataTableCell, DataTableCellDue, DataTableCellId, DataTableCellMono, DataTableCellName, DataTableCheckbox, DataTableHead, DataTableHeader, DataTablePagination, DataTableResultsCount, DataTableRow, DataTableSearch, DataTableSpacer, DataTableToolbar, DatePicker, DateRangePicker, DetailGrid, DetailMain, DetailSpine, DetailSpineHeader, DetailSpineSection, DetailSpineStats, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DismissibleChip, DocumentFileCard, DocumentFileRow, DocumentIcon, DocumentRequestField, DocumentsWorkspaceLayout, DollarSignIcon, DonutChart, DownloadIcon, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmailMessageCard, EmptyState, EngagementCard, EngagementTimeline, EngagementTimelineStep, EyeIcon, EyeOffIcon, Eyebrow, FileChip, FileIcon, FileReturnIcon, FileTextIcon, FileTypeBadge, FileUpload, FilterChip, FilterIcon, FlagIcon, FolderClosedIcon, FolderOpenIcon, FolderPlusIcon, FolderTree, FolderUpIcon, FormError, FormSection, FormSuccess, GlobeIcon, GoogleBrandIcon, HelpCircleIcon, HistoryIcon, HomeIcon, HoverCard, HoverCardContent, HoverCardPortal, HoverCardTrigger, IconAction, IconTile, InboxIcon, InfoCircleSolidIcon, InfoIcon, Input, IntentBadge, ItalicIcon, Kanban, KanbanCard, KanbanColumn, KanbanIcon, KbdHint, KeyIcon, KeyboardShortcutsDialog, KpiCard, Label4 as Label, LandmarkIcon, LayoutDashboardIcon, LayoutGridIcon, LayoutListIcon, LightningIcon, Link2Icon, LinkAction, LinkButton, LinkIcon, ListChecksIcon, ListIcon, ListOrderedIcon, LoaderIcon, LoadingRows, LockIcon, LockKeyholeIcon, LockOpenIcon, LogOutIcon, Logo, MailIcon, Main, MapPinIcon, MasterDetailLayout, MenuIcon, MessageBubble, MessageBubbleAction, MessageBubbleTombstone, MessageCircleIcon, MessageCircleWarningIcon, MessageComposer, MetadataGrid, MicrosoftBrandIcon, MinusIcon, MissingDocumentsPanel, MonitorIcon, MoonIcon, MoreHorizontalIcon, MoveIcon, MultiFilterPill, MultiSelectField, MutedSpec, NewMenu, NotificationFilter, NotificationItem, NotificationList, NotificationPanel, NotificationPanelFooter, NotificationPanelHeader, Numeric, OTPInput, PageHeader, PageHeaderSep, PageHeaderSpec, Pagination, PaletteIcon, PanelLeftCloseIcon, PanelLeftIcon, PaperclipIcon, PauseIcon, PenSignIcon, PenToolIcon, PencilIcon, PhoneCountryInput, PhoneIcon, PhoneInput, PlayIcon, PlusIcon, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverPortal, PopoverTrigger, PrimaryAction, PriorityIcon, ProgressBar, ProgressRing, RadioGroup3 as RadioGroup, RadioGroupItem, RankedBars, ReceiptIcon, ReplyIcon, ResponsiveDialog, RotateCcwIcon, RouteTransition, SERVICE_TONES, SaveIcon, ScrollArea, ScrollBar, SearchIcon, SearchInput, SearchSelect, SecondaryAction, Section, SectionHead, SectionHeader, SegmentedProgress, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectRoot, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, SelectableKpiCard, SendIcon, Separator4 as Separator, SettingsIcon, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Shell, ShieldIcon, SideDrawer, Sidebar, SidebarBrand, SidebarBrandSwitcher, SidebarBrandSwitcherTile, SidebarBrandText, SidebarFooter, SidebarLink, SidebarLinkAction, SidebarLinkBadge, SidebarLinkGroup, SidebarLinkLabel, SidebarPinButton, SidebarProvider, SidebarSection, SidebarTrigger, SidebarUser, SignatureEditor, Skeleton, SkeletonCircle, SkeletonText, SlashIcon, Slider, SmartphoneIcon, SparkleIcon, SparklesIcon, Spinner, StarIcon, StarRating, Stat, StatusDot, StatusIcon, StatusPill, Stepper, StickyActionBar, StopIcon, StrikethroughIcon, SubmitButton, SuggestionPills, SuiteProgress, SunIcon, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableIcon, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, TagIcon, TeamIcon, TeamMemberSelect, Textarea, TimeLogger, TimeLoggerActions, TimeLoggerBillable, TimeLoggerContextRow, TimeLoggerEntry, TimeLoggerEntryList, TimeLoggerField, TimeLoggerFooter, TimeLoggerHeader, TimeLoggerNotes, TimeLoggerTimer, ToastProvider, ToggleGroup, ToggleGroupItem, Toolbar, Tooltip, TooltipContent, TooltipPortal, TooltipProvider, TooltipTrigger, Trash2Icon, TrashIcon, TrendingDownIcon, TrendingUpIcon, UnderlineIcon, UploadIcon, UserCircleIcon, UserIcon, UsersIcon, VisuallyHidden, WorkflowIcon, XCircleSolidIcon, XIcon, YEAR_DISPLAY_PLACEHOLDER, ZoomInIcon, ZoomOutIcon, alertVariants, applyMask, applyYearMask, attachmentChipVariants, badgeVariants, buttonVariants, cardVariants, cn, colors, dateToIso, displayToIso, fileTypeBadgeVariants, fileTypeFromName, filterChipVariants, formatClock, formatCurrency, formatDuration, getFlagEmoji, iconTileVariants, inputVariants, isoToDate, isoToDisplay, isoToYear, labelVariants, parseDuration, parsePhoneForEditing, progressBarVariants, progressRingVariants, radii, reference, searchInputVariants, serviceToneLabel, serviceToneStyle, shadows, sidebarLinkBadgeVariants, spacing, spinnerVariants, starRatingVariants, statusDotVariants, suiteProgressFillVariants, surfaces, systemTokens, textareaVariants, typography, useSidebarPeekLock, useSidebarState, useStopwatch, useToast, yearToIso };
14202
+ export { AIReceiptPanel, Accordion, AccordionContent, AccordionItem, AccordionTrigger, ActivityEventItem, ActivityItem, ActivityList, AiDraftCard, Alert, AlertCircleIcon, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AlertTriangleIcon, AlertTriangleSolidIcon, AppHeader, AppHeaderActions, AppHeaderBreadcrumb, AppHeaderSearch, AppHeaderTitle, AreaChart, ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowRightSmallIcon, ArrowUpIcon, AspectRatio, Assignee, AssureAuditBrandIcon, AssureBooksBrandIcon, AssureProBrandIcon, AssureTaxBrandIcon, AtSignIcon, AttachmentChip, AttentionItem, Avatar, Badge, BarChartIcon, BellIcon, Blockquote, BoldIcon, BottomNav, Breadcrumb, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, BriefcaseIcon, Building2Icon, BuildingIcon, BulkActionBar, BulkActionBarAction, BulkActionBarSeparator, Button, COUNTRY_CODES, Calendar, CalendarIcon, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, CategoryDivider, CategoryTag, ChannelTabs, ChatBubbleIcon, CheckCircle2Icon, CheckCircleSolidIcon, CheckIcon, Checkbox, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, ChevronsUpDownIcon, CircleDotIcon, CircleIcon, ClientRailGroupHeader, ClientRailItem, ClientSelect, ClipboardCheckIcon, ClockIcon, CloseIcon, Collapsible, CollapsibleContent, CollapsibleTrigger, ComingSoon, CommandIcon, CommandPalette, ConfirmActionButton, Content16 as Content, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, CopyButton, CopyIcon, CornerDownLeftIcon, CountryFlag, CountrySelect, CreditCardIcon, DATE_DISPLAY_PLACEHOLDER, DangerAction, Dash, DashGrid, DataItem, DataTable, DataTableBody, DataTableCell, DataTableCellDue, DataTableCellId, DataTableCellMono, DataTableCellName, DataTableCheckbox, DataTableHead, DataTableHeader, DataTablePagination, DataTableResultsCount, DataTableRow, DataTableSearch, DataTableSpacer, DataTableToolbar, DataTableView, DatePicker, DateRangePicker, DetailGrid, DetailMain, DetailSpine, DetailSpineHeader, DetailSpineSection, DetailSpineStats, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DismissibleChip, DocumentFileCard, DocumentFileRow, DocumentIcon, DocumentRequestField, DocumentsWorkspaceLayout, DollarSignIcon, DonutChart, DownloadIcon, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmailMessageCard, EmptyState, EngagementCard, EngagementTimeline, EngagementTimelineStep, EyeIcon, EyeOffIcon, Eyebrow, FileChip, FileIcon, FileReturnIcon, FileTextIcon, FileTypeBadge, FileUpload, FilterChip, FilterIcon, FlagIcon, FolderClosedIcon, FolderOpenIcon, FolderPlusIcon, FolderTree, FolderUpIcon, FormError, FormSection, FormSuccess, GlobeIcon, GoogleBrandIcon, HelpCircleIcon, HistoryIcon, HomeIcon, HoverCard, HoverCardContent, HoverCardPortal, HoverCardTrigger, IconAction, IconTile, InboxIcon, InfoCircleSolidIcon, InfoIcon, Input, IntentBadge, ItalicIcon, Kanban, KanbanCard, KanbanColumn, KanbanIcon, KbdHint, KeyIcon, KeyboardShortcutsDialog, KpiCard, Label4 as Label, LandmarkIcon, LayoutDashboardIcon, LayoutGridIcon, LayoutListIcon, LightningIcon, Link2Icon, LinkAction, LinkButton, LinkIcon, ListChecksIcon, ListIcon, ListOrderedIcon, LoaderIcon, LoadingRows, LockIcon, LockKeyholeIcon, LockOpenIcon, LogOutIcon, Logo, MailIcon, Main, MapPinIcon, MasterDetailLayout, MenuIcon, MessageBubble, MessageBubbleAction, MessageBubbleTombstone, MessageCircleIcon, MessageCircleWarningIcon, MessageComposer, MetadataGrid, MicrosoftBrandIcon, MinusIcon, MissingDocumentsPanel, MoneyCell, MonitorIcon, MoonIcon, MoreHorizontalIcon, MoveIcon, MultiFilterPill, MultiSelectField, MutedSpec, NewMenu, NotificationFilter, NotificationItem, NotificationList, NotificationPanel, NotificationPanelFooter, NotificationPanelHeader, Numeric, OTPInput, PageHeader, PageHeaderSep, PageHeaderSpec, Pagination, PaletteIcon, PanelLeftCloseIcon, PanelLeftIcon, PaperclipIcon, PauseIcon, PenSignIcon, PenToolIcon, PencilIcon, PhoneCountryInput, PhoneIcon, PhoneInput, PlayIcon, PlusIcon, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverPortal, PopoverTrigger, PrimaryAction, PriorityIcon, ProgressBar, ProgressRing, RadioGroup3 as RadioGroup, RadioGroupItem, RankedBars, ReceiptIcon, ReplyIcon, ResponsiveDialog, RotateCcwIcon, RouteTransition, SERVICE_TONES, SaveIcon, ScrollArea, ScrollBar, SearchIcon, SearchInput, SearchSelect, SecondaryAction, Section, SectionHead, SectionHeader, SegmentedProgress, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectRoot, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, SelectableKpiCard, SendIcon, Separator4 as Separator, SettingsIcon, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Shell, ShieldIcon, SideDrawer, Sidebar, SidebarBrand, SidebarBrandSwitcher, SidebarBrandSwitcherTile, SidebarBrandText, SidebarFooter, SidebarLink, SidebarLinkAction, SidebarLinkBadge, SidebarLinkGroup, SidebarLinkLabel, SidebarPinButton, SidebarProvider, SidebarSection, SidebarTrigger, SidebarUser, SignatureEditor, Skeleton, SkeletonCircle, SkeletonText, SlashIcon, Slider, SmartphoneIcon, SparkleIcon, SparklesIcon, Spinner, StackedBarChart, StagePill, StarIcon, StarRating, Stat, StatusDot, StatusIcon, StatusPill, Stepper, StickyActionBar, StopIcon, StrikethroughIcon, SubmitButton, SuggestionPills, SuiteProgress, SunIcon, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableIcon, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, TagIcon, TagsCell, TeamIcon, TeamMemberSelect, Textarea, TimeLogger, TimeLoggerActions, TimeLoggerBillable, TimeLoggerContextRow, TimeLoggerEntry, TimeLoggerEntryList, TimeLoggerField, TimeLoggerFooter, TimeLoggerHeader, TimeLoggerNotes, TimeLoggerTimer, ToastProvider, ToggleGroup, ToggleGroupItem, Toolbar, Tooltip, TooltipContent, TooltipPortal, TooltipProvider, TooltipTrigger, Trash2Icon, TrashIcon, TrendingDownIcon, TrendingUpIcon, UnderlineIcon, UploadIcon, UserCircleIcon, UserIcon, UsersIcon, VisuallyHidden, WorkflowIcon, XCircleSolidIcon, XIcon, YEAR_DISPLAY_PLACEHOLDER, ZoomInIcon, ZoomOutIcon, alertVariants, applyMask, applyYearMask, attachmentChipVariants, badgeVariants, buttonVariants, cardVariants, cn, colors, dateToIso, displayToIso, fileTypeBadgeVariants, fileTypeFromName, filterChipVariants, formatClock, formatCurrency, formatDuration, getFlagEmoji, iconTileVariants, inputVariants, isoToDate, isoToDisplay, isoToYear, labelVariants, parseDuration, parsePhoneForEditing, progressBarVariants, progressRingVariants, radii, reference, searchInputVariants, serviceToneLabel, serviceToneStyle, shadows, sidebarLinkBadgeVariants, spacing, spinnerVariants, starRatingVariants, statusDotVariants, suiteProgressFillVariants, surfaces, systemTokens, textareaVariants, typography, useSidebarPeekLock, useSidebarState, useStopwatch, useToast, yearToIso };
13811
14203
  //# sourceMappingURL=index.js.map
13812
14204
  //# sourceMappingURL=index.js.map