@stll/ui 0.24.0 → 0.25.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/components/button-variants.d.ts +2 -2
- package/dist/components/sidebar.d.ts +2 -2
- package/dist/components/workspace-shell.js +2 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/inspector/chrome.js +2 -2
- package/dist/kanban/card-shell.d.ts +12 -2
- package/dist/kanban/card-shell.js +27 -9
- package/dist/kanban/column-band-header.d.ts +5 -2
- package/dist/kanban/column-band-header.js +11 -8
- package/dist/kanban/column-header.js +13 -7
- package/dist/kanban/grouping.js +15 -4
- package/dist/kanban/layout-tokens.d.ts +29 -6
- package/dist/kanban/layout-tokens.js +29 -6
- package/dist/kanban/sticky-lane.js +1 -1
- package/dist/kanban/subgroup-board.js +4 -14
- package/dist/lib/control-size.d.ts +1 -1
- package/dist/lib/overlay-layer.d.ts +14 -1
- package/dist/lib/overlay-layer.js +14 -1
- package/dist/review/review-decision-actions.js +2 -1
- package/dist/review/review-diff-text.js +2 -1
- package/package.json +3 -3
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
*/
|
|
11
11
|
declare const buttonAccessibleDisabledClass = "cursor-not-allowed opacity-64";
|
|
12
12
|
declare const buttonVariants: (props?: ({
|
|
13
|
-
size?: "
|
|
14
|
-
variant?: "
|
|
13
|
+
size?: "xs" | "sm" | "icon" | "default" | "chip" | "icon-lg" | "icon-sm" | "icon-xl" | "icon-xs" | "lg" | "xl" | null | undefined;
|
|
14
|
+
variant?: "link" | "destructive" | "outline" | "default" | "destructive-outline" | "ghost" | "secondary" | null | undefined;
|
|
15
15
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
16
16
|
//#endregion
|
|
17
17
|
export { buttonAccessibleDisabledClass, buttonVariants };
|
|
@@ -82,8 +82,8 @@ declare const SidebarGroupContent: ({ className, ...props }: React.ComponentProp
|
|
|
82
82
|
declare const SidebarMenu: ({ className, ...props }: React.ComponentProps<"ul">) => import("react").JSX.Element;
|
|
83
83
|
declare const SidebarMenuItem: ({ className, ...props }: React.ComponentProps<"li">) => import("react").JSX.Element;
|
|
84
84
|
declare const sidebarMenuButtonVariants: (props?: ({
|
|
85
|
-
variant?: "
|
|
86
|
-
size?: "
|
|
85
|
+
variant?: "outline" | "default" | null | undefined;
|
|
86
|
+
size?: "sm" | "default" | "lg" | "rail" | null | undefined;
|
|
87
87
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
88
88
|
declare const SidebarMenuButton: ({ asChild, isActive, variant, size, tooltip, className, ...props }: React.ComponentProps<"button"> & {
|
|
89
89
|
asChild?: boolean;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "../lib/utils.js";
|
|
3
|
+
import { SHELL_CHROME_LAYER_CLASS_NAME } from "../lib/overlay-layer.js";
|
|
3
4
|
import { useIsMobile } from "../hooks/use-mobile.js";
|
|
4
5
|
import { InspectorRail, InspectorRailCell, InspectorRailContent, InspectorRailFooter, InspectorRailIconButton } from "../inspector/chrome.js";
|
|
5
6
|
import { Sheet, SheetContent as SheetPopup, SheetTitle, SheetTrigger } from "./sheet.js";
|
|
@@ -43,7 +44,7 @@ const WorkspaceShell = ({ children, endDock, navigation, topBar }) => {
|
|
|
43
44
|
className: cn("bg-background relative flex w-full min-w-0 flex-1 flex-col overflow-hidden", "md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ms-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ms-2"),
|
|
44
45
|
"data-slot": "workspace-shell-main",
|
|
45
46
|
children: [/* @__PURE__ */ jsx("div", {
|
|
46
|
-
className: "bg-background sticky top-0
|
|
47
|
+
className: cn("bg-background sticky top-0 shrink-0", SHELL_CHROME_LAYER_CLASS_NAME),
|
|
47
48
|
"data-slot": "workspace-shell-top-bar",
|
|
48
49
|
children: topBar({ compactNavigationTrigger })
|
|
49
50
|
}), /* @__PURE__ */ jsx("div", {
|
package/dist/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { CalendarDateRange, ResourceCalendarLaneLayout, ResourceCalendarLanePlac
|
|
|
3
3
|
import { ResourceCalendar, ResourceCalendarColumn, ResourceCalendarEntry, ResourceCalendarEntryTone, ResourceCalendarResource } from "./calendar/resource-calendar.js";
|
|
4
4
|
import "./calendar/index.js";
|
|
5
5
|
import { Accordion, AccordionContent as AccordionPanel, AccordionItem, AccordionTrigger } from "./components/accordion.js";
|
|
6
|
-
import { BOARD_DRAG_OVERLAY_Z_INDEX, OVERLAY_COLLISION_PADDING, OVERLAY_LAYER_CLASS_NAMES, OverlayLayer } from "./lib/overlay-layer.js";
|
|
6
|
+
import { BOARD_DRAG_OVERLAY_Z_INDEX, OVERLAY_COLLISION_PADDING, OVERLAY_LAYER_CLASS_NAMES, OverlayLayer, SHELL_CHROME_LAYER_CLASS_NAME } from "./lib/overlay-layer.js";
|
|
7
7
|
import { AlertDialog, AlertDialogBackdrop, AlertDialogClose, AlertDialogContent as AlertDialogPopup, AlertDialogCreateHandle, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogPanel, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertDialogViewport } from "./components/alert-dialog.js";
|
|
8
8
|
import { APPLICATION_RAIL_BUTTON_SIZE, APPLICATION_RAIL_ICON_SIZE, APPLICATION_RAIL_WIDTH, ApplicationRail, ApplicationRailButton, ApplicationRailContent, ApplicationRailFooter, ApplicationRailHeader, ApplicationRailMenu, ApplicationRailSeparator } from "./components/application-rail.js";
|
|
9
9
|
import { Avatar, AvatarFallback, AvatarImage } from "./components/avatar.js";
|
|
@@ -99,4 +99,4 @@ import { ReviewDiffDeletion, ReviewDiffInsertion, ReviewDiffSegment, ReviewDiffS
|
|
|
99
99
|
import { ReviewOutOfDateNotice, ReviewOutOfDateReason, ReviewOutOfDateTone } from "./review/review-out-of-date-notice.js";
|
|
100
100
|
import { ReviewStatusBadge, ReviewStatusSize, ReviewStatusTone, ReviewStatusVariant } from "./review/review-status-badge.js";
|
|
101
101
|
import { ReviewSeverityDot, ReviewSeverityLevel, ReviewStatusDot, reviewSeverityTone } from "./review/review-severity-dot.js";
|
|
102
|
-
export { APPLICATION_RAIL_BUTTON_SIZE, APPLICATION_RAIL_ICON_SIZE, APPLICATION_RAIL_WIDTH, Accordion, AccordionPanel as AccordionContent, AccordionPanel, AccordionItem, AccordionTrigger, AlertDialog, AlertDialogBackdrop, AlertDialogBackdrop as AlertDialogOverlay, AlertDialogClose, AlertDialogPopup as AlertDialogContent, AlertDialogPopup, AlertDialogCreateHandle, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogPanel, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertDialogViewport, AnchoredToastProvider, ApplicationRail, ApplicationRailButton, ApplicationRailContent, ApplicationRailFooter, ApplicationRailHeader, ApplicationRailMenu, ApplicationRailSeparator, Avatar, AvatarFallback, AvatarImage, BOARD_DRAG_OVERLAY_Z_INDEX, type BidiDirection, BidiText, type BidiTextProps, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, type BuildKanbanBoardMatrixParams, Button, CONTROL_SIZE, CONTROL_SIZES, CalendarCell, type CalendarDateRange, CalendarEntryButton, CalendarEntrySurface, CalendarGrid, CalendarHeaderCell, CalendarHeaderRow, Checkbox, ColorPicker, ColorPickerContent, type ColorPickerContentProps, type ColorPickerProps, type ColorPreset, ColorVariants, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxClear, ComboboxCollection, ComboboxEmpty, ComboboxGroup, ComboboxGroupLabel, ComboboxInput, ComboboxItem, ComboboxList, ComboboxPopup, ComboboxRow, ComboboxSeparator, ComboboxStatus, ComboboxTrigger, ComboboxValue, Command, CommandCollection, CommandDialog, CommandDialogPopup, CommandDialogTrigger, CommandEmpty, CommandFooter, CommandGroup, CommandGroupLabel, CommandInput, CommandItem, CommandList, CommandPanel, CommandSeparator, CommandShortcut, type ControlSize, type CreateKanbanDropIntentParams, DEFAULT_PRESETS, DataTable, type DataTableAriaSort, type DataTableColumn, type DataTableProps, type DataTableRowAction, DatePickerPopover, type DatePickerPopoverProps, DestructiveActionConfirmation, DestructiveConfirmDialog, type DestructiveConfirmDialogProps, Dialog, DialogBackdrop, DialogBackdrop as DialogOverlay, DialogClose, DialogPopup as DialogContent, DialogPopup, DialogCreateHandle, DialogDescription, DialogFooter, DialogHeader, DialogPanel, DialogPortal, DialogTitle, DialogTrigger, DialogViewport, DirectionalIcon, DiscordLogoIcon, Menu as DropdownMenu, Menu, MenuCheckboxItem as DropdownMenuCheckboxItem, MenuCheckboxItem, MenuPopup as DropdownMenuContent, MenuPopup, MenuCreateHandle as DropdownMenuCreateHandle, MenuCreateHandle, MenuGroup as DropdownMenuGroup, MenuGroup, MenuItem as DropdownMenuItem, MenuItem, MenuGroupLabel as DropdownMenuLabel, MenuGroupLabel, MenuPortal as DropdownMenuPortal, MenuPortal, MenuRadioGroup as DropdownMenuRadioGroup, MenuRadioGroup, MenuRadioItem as DropdownMenuRadioItem, MenuRadioItem, MenuSeparator as DropdownMenuSeparator, MenuSeparator, MenuShortcut as DropdownMenuShortcut, MenuShortcut, MenuSub as DropdownMenuSub, MenuSub, MenuSubPopup as DropdownMenuSubContent, MenuSubPopup, MenuSubTrigger as DropdownMenuSubTrigger, MenuSubTrigger, MenuTrigger as DropdownMenuTrigger, MenuTrigger, Field, FieldControl, FieldDescription, FieldError, FieldItem, FieldLabel, FieldValidity, Form, Frame, FrameDescription, FrameFooter, FrameHeader, FramePanel, FrameTitle, GitHubLogoIcon, HexColorPicker, type HexColorPickerProps, PreviewCard as HoverCard, PreviewCard, PreviewCardPopup as HoverCardContent, PreviewCardPopup, PreviewCardTrigger as HoverCardTrigger, PreviewCardTrigger, INSPECTOR_CONTENT_MIN_WIDTH, INSPECTOR_EDITOR_MIN_WIDTH, INSPECTOR_PANE_DEFAULT_WIDTH, INSPECTOR_PANE_KEYBOARD_PAGE_STEP, INSPECTOR_PANE_KEYBOARD_STEP, INSPECTOR_PANE_MAX_WIDTH, INSPECTOR_PANE_MIN_WIDTH, INSPECTOR_RAIL_WIDTH, Input, InputGroup, InputGroupAddon, InputGroupInput, InputGroupText, InputGroupTextarea, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, type InputProps, Inspector, InspectorActions, InspectorContent, InspectorDescription, InspectorDock, InspectorEmptyRow, InspectorEntityTab, InspectorFacetBar, InspectorHeader, InspectorHeaderText, InspectorProperty, InspectorPropertyLabel, InspectorPropertyList, InspectorPropertyValue, InspectorRail, InspectorRailCell, InspectorRailContent, InspectorRailFooter, InspectorRailIconButton, InspectorRailTab, InspectorSection, InspectorSectionTitle, InspectorTab, InspectorTabList, InspectorTabPanel, InspectorTabs, InspectorTitle, KANBAN_BAND_CAPTION_ROW_HEIGHT, KANBAN_BAND_CAPTION_ROW_HEIGHT_PX, KANBAN_BAND_PEEK_DELAY_MS, KANBAN_BAND_PEEK_LINGER_MS, KANBAN_BOARD_AUTO_SCROLL_OPTIONS, KANBAN_BOARD_AUTO_SCROLL_SOURCES, KANBAN_BOARD_AXES, KANBAN_BOARD_COLLISION_DETECTION, KANBAN_CARD_DRAG_MIME, KANBAN_CARD_STICKY_TOP_VAR, KANBAN_CHROME_ROW_HEIGHT, KANBAN_CHROME_ROW_HEIGHT_PX, KANBAN_COLLAPSED_BAND_WIDTH_CLASS, KANBAN_COLLAPSED_BAND_WIDTH_PX, KANBAN_COLUMN_GAP_PX, KANBAN_COLUMN_WIDTH_CLASS, KANBAN_COLUMN_WIDTH_PX, KANBAN_DIRECTIONS, KANBAN_DRAG_OVERLAY_Z_INDEX, KANBAN_HORIZONTAL_EDGES, KANBAN_MOUSE_ACTIVATION_DISTANCE, KANBAN_SORTABLE_ACTIVATION_MODES, KANBAN_STICKY_TOP_VAR, KANBAN_TOUCH_ACTIVATION_CONSTRAINT, KANBAN_VIRTUAL_CELL_PAGINATION, type KanbanBandToggleActivation, type KanbanBoardAxis, type KanbanBoardCell, type KanbanBoardColumn, type KanbanBoardCoordinate, type KanbanBoardDestination, type KanbanBoardLane, type KanbanBoardMatrix, type KanbanBuiltInGroup, KanbanCardDragSurface, type KanbanCardDragSurfaceProps, type KanbanCardFieldSelection, KanbanCardShell, type KanbanCardShellProps, KanbanCellAction, type KanbanCellActionProps, type KanbanCellVirtualNavigation, KanbanCollapsedBandCaption, type KanbanCollapsedBandCaptionProps, type KanbanColumnBand, KanbanColumnBandHeader, type KanbanColumnBandHeaderProps, type KanbanColumnBandSpan, KanbanColumnHeader, type KanbanColumnHeaderProps, type KanbanDirection, type KanbanDragCancelEvent, type KanbanDragEndEvent, KanbanDragHandle, type KanbanDragHandleProps, type KanbanDragOverEvent, type KanbanDragStartEvent, type KanbanDropAxisChange, type KanbanDropIntent, type KanbanGroup, type KanbanGroupOption, type KanbanGrouping, type KanbanHorizontalEdge, type KanbanSchema, type KanbanSortableActivationMode, type KanbanSortableBindings, KanbanSortableBoard, type KanbanSortableBoardProps, type KanbanSortableCellPosition, KanbanSortableColumns, type KanbanSortableColumnsProps, KanbanSortableList, type KanbanSortableListProps, type KanbanSubgroupBandHeaderContext, KanbanSubgroupBoard, type KanbanSubgroupBoardProps, type KanbanSubgroupCellContext, type KanbanSubgroupCollapsedBandCellContext, type KanbanSubgroupColumnHeaderContext, type KanbanSubgroupLaneColumnActionContext, type KanbanSubgroupLaneColumnSummaryContext, type KanbanSubgroupLaneIdentityContext, KanbanVirtualCell, type KanbanVirtualCellPagination, type KanbanVirtualCellProps, type KanbanVirtualCellSortableContext, type KanbanVirtualScrollRequest, Label, MenuPreviewLayout, OVERLAY_COLLISION_PADDING, OVERLAY_LAYER_CLASS_NAMES, OptionColor, type OrderKanbanCellsByColumnsParams, OutlineItem, OutlineRail, OutlineRailProps, OverlayLayer, PROPERTY_ROW_GRID, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Popover, PopoverClose, PopoverPopup as PopoverContent, PopoverPopup, PopoverCreateHandle, PopoverDescription, PopoverPanel, PopoverTitle, PopoverTrigger, PreviewCardPrimitive, PreviewPane, type RegisterKanbanBoardAutoScrollOptions, type RegisterKanbanCardDragOptions, type ResolveKanbanGroupValueParams, type ResolveKanbanGroupingParams, ResourceCalendar, type ResourceCalendarColumn, type ResourceCalendarEntry, type ResourceCalendarEntryTone, type ResourceCalendarLaneLayout, type ResourceCalendarLanePlacement, type ResourceCalendarPlacement, type ResourceCalendarResource, ReviewAuthorAvatar, ReviewCommentAuthor, ReviewCommentCard, ReviewDecisionActions, ReviewDecisionSize, ReviewDecisionState, ReviewDiffDeletion, ReviewDiffInsertion, ReviewDiffSegment, ReviewDiffSegmentType, ReviewDiffText, ReviewOutOfDateNotice, ReviewOutOfDateReason, ReviewOutOfDateTone, ReviewSeverityDot, ReviewSeverityLevel, ReviewStatusBadge, ReviewStatusDot, ReviewStatusSize, ReviewStatusTone, ReviewStatusVariant, SIDEBAR_WIDTH_ICON_PX, SIDEBAR_WIDTH_PX, SIDE_RAIL_CONTAINER_CLASS, SIDE_RAIL_ICON_BUTTON_SIZE, SIDE_RAIL_TAB_ICON_SIZE, SIDE_RAIL_WIDTH, ScrollArea, ScrollBar, ScrollToTop, ScrollToTopProps, SecretInput, type SecretInputProps, SegmentedIconToggle, Select, SelectPopup as SelectContent, SelectPopup, SelectGroup, SelectGroupLabel, SelectItem, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetBackdrop, SheetBackdrop as SheetOverlay, SheetClose, SheetPopup as SheetContent, SheetPopup, SheetDescription, SheetFooter, SheetHeader, SheetPanel, SheetPortal, type SheetSide, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, type SortDirection, SortableHead, StellaMark, StellaWordmarkLatin, TOAST_RIGHT_OFFSET_VAR, TOOLBAR_ROW_HEIGHT, TOOLBAR_ROW_HEIGHT_PX, TRACKED_DELETION_STYLE, TRACKED_INSERTION_STYLE, Table, TableBody, TableCaption, TableCell, type TableColumnCapabilities, type TableColumnDescriptor, TableFooter, TableHead, TableHeader, TableRow, type TableSchema, Tabs, TabsPanel as TabsContent, TabsPanel, TabsList, TabsTab, TabsTab as TabsTrigger, TextSeparator, Textarea, type TextareaProps, type ToastPosition, ToastProvider, Tooltip, TooltipPopup as TooltipContent, TooltipPopup, TooltipCreateHandle, TooltipProvider, TooltipTrigger, UNKNOWN_AUTHOR_LABEL, type UseKanbanDropTargetOptions, type UseKanbanSortableOptions, UserText, type WorkspaceCompactNavigation, WorkspaceEndRail, type WorkspaceEndRailChatAction, type WorkspaceEndRailProps, type WorkspaceNavigation, WorkspaceShell, type WorkspaceShellProps, type WorkspaceTopBarContext, assertConsecutiveCalendarDates, buildKanbanBoardMatrix, buttonAccessibleDisabledClass, buttonVariants, cn, composeRefs, containedEventHandler, containedHandler, contentDir, createKanbanDropIntent, duplicateColumnIds, emptyColor, entityTabGlyph, findTableColumn, getFirstWeekday, getInitials, getKanbanBoardColumnIdentity, getKanbanBoardLaneIdentity, getKanbanGroupingPropertyId, getKanbanGroups, getKanbanHorizontalEdge, getLocaleWeekInfo, getResourceCalendarPlacement, getWeekendDays, hasKanbanColumnBands, hideableColumnIds, isKanbanGroupingRenderable, isStructuredInputType, kanbanKeyboardCoordinates, layoutResourceCalendarEntries, nextCalendarDate, optionColors, orderKanbanCellsByColumns, parsePersistedPaneWidth, registerKanbanBoardAutoScroll, registerKanbanCardDrag, resolveDragWidth, resolveInspectorDockWidth, resolveInspectorPaneMaxWidth, resolveInspectorPaneWidth, resolveKanbanColumnBands, resolveKanbanGroupOptions, resolveKanbanGrouping, resolveKeyboardWidth, resolveOptionColor, reviewDiffSegmentKeys, reviewSeverityTone, selectKanbanCardFieldIds, selectKanbanRows, shouldForceSidebarCollapsed, sortableColumnIds, stellaToast, tableColumnIds, tableColumnSizing, useComboboxFilter, useContentDir, useDestructiveActionConfirmation, useInspectorPaneWidth, useIsMobile, useKanbanDropTarget, useKanbanSortable, useKanbanSortableSensors, useLatest, useSidebar, useSidebarInlineSize, useViewportWidth, visibleColumnIds };
|
|
102
|
+
export { APPLICATION_RAIL_BUTTON_SIZE, APPLICATION_RAIL_ICON_SIZE, APPLICATION_RAIL_WIDTH, Accordion, AccordionPanel as AccordionContent, AccordionPanel, AccordionItem, AccordionTrigger, AlertDialog, AlertDialogBackdrop, AlertDialogBackdrop as AlertDialogOverlay, AlertDialogClose, AlertDialogPopup as AlertDialogContent, AlertDialogPopup, AlertDialogCreateHandle, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogPanel, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertDialogViewport, AnchoredToastProvider, ApplicationRail, ApplicationRailButton, ApplicationRailContent, ApplicationRailFooter, ApplicationRailHeader, ApplicationRailMenu, ApplicationRailSeparator, Avatar, AvatarFallback, AvatarImage, BOARD_DRAG_OVERLAY_Z_INDEX, type BidiDirection, BidiText, type BidiTextProps, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, type BuildKanbanBoardMatrixParams, Button, CONTROL_SIZE, CONTROL_SIZES, CalendarCell, type CalendarDateRange, CalendarEntryButton, CalendarEntrySurface, CalendarGrid, CalendarHeaderCell, CalendarHeaderRow, Checkbox, ColorPicker, ColorPickerContent, type ColorPickerContentProps, type ColorPickerProps, type ColorPreset, ColorVariants, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxClear, ComboboxCollection, ComboboxEmpty, ComboboxGroup, ComboboxGroupLabel, ComboboxInput, ComboboxItem, ComboboxList, ComboboxPopup, ComboboxRow, ComboboxSeparator, ComboboxStatus, ComboboxTrigger, ComboboxValue, Command, CommandCollection, CommandDialog, CommandDialogPopup, CommandDialogTrigger, CommandEmpty, CommandFooter, CommandGroup, CommandGroupLabel, CommandInput, CommandItem, CommandList, CommandPanel, CommandSeparator, CommandShortcut, type ControlSize, type CreateKanbanDropIntentParams, DEFAULT_PRESETS, DataTable, type DataTableAriaSort, type DataTableColumn, type DataTableProps, type DataTableRowAction, DatePickerPopover, type DatePickerPopoverProps, DestructiveActionConfirmation, DestructiveConfirmDialog, type DestructiveConfirmDialogProps, Dialog, DialogBackdrop, DialogBackdrop as DialogOverlay, DialogClose, DialogPopup as DialogContent, DialogPopup, DialogCreateHandle, DialogDescription, DialogFooter, DialogHeader, DialogPanel, DialogPortal, DialogTitle, DialogTrigger, DialogViewport, DirectionalIcon, DiscordLogoIcon, Menu as DropdownMenu, Menu, MenuCheckboxItem as DropdownMenuCheckboxItem, MenuCheckboxItem, MenuPopup as DropdownMenuContent, MenuPopup, MenuCreateHandle as DropdownMenuCreateHandle, MenuCreateHandle, MenuGroup as DropdownMenuGroup, MenuGroup, MenuItem as DropdownMenuItem, MenuItem, MenuGroupLabel as DropdownMenuLabel, MenuGroupLabel, MenuPortal as DropdownMenuPortal, MenuPortal, MenuRadioGroup as DropdownMenuRadioGroup, MenuRadioGroup, MenuRadioItem as DropdownMenuRadioItem, MenuRadioItem, MenuSeparator as DropdownMenuSeparator, MenuSeparator, MenuShortcut as DropdownMenuShortcut, MenuShortcut, MenuSub as DropdownMenuSub, MenuSub, MenuSubPopup as DropdownMenuSubContent, MenuSubPopup, MenuSubTrigger as DropdownMenuSubTrigger, MenuSubTrigger, MenuTrigger as DropdownMenuTrigger, MenuTrigger, Field, FieldControl, FieldDescription, FieldError, FieldItem, FieldLabel, FieldValidity, Form, Frame, FrameDescription, FrameFooter, FrameHeader, FramePanel, FrameTitle, GitHubLogoIcon, HexColorPicker, type HexColorPickerProps, PreviewCard as HoverCard, PreviewCard, PreviewCardPopup as HoverCardContent, PreviewCardPopup, PreviewCardTrigger as HoverCardTrigger, PreviewCardTrigger, INSPECTOR_CONTENT_MIN_WIDTH, INSPECTOR_EDITOR_MIN_WIDTH, INSPECTOR_PANE_DEFAULT_WIDTH, INSPECTOR_PANE_KEYBOARD_PAGE_STEP, INSPECTOR_PANE_KEYBOARD_STEP, INSPECTOR_PANE_MAX_WIDTH, INSPECTOR_PANE_MIN_WIDTH, INSPECTOR_RAIL_WIDTH, Input, InputGroup, InputGroupAddon, InputGroupInput, InputGroupText, InputGroupTextarea, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, type InputProps, Inspector, InspectorActions, InspectorContent, InspectorDescription, InspectorDock, InspectorEmptyRow, InspectorEntityTab, InspectorFacetBar, InspectorHeader, InspectorHeaderText, InspectorProperty, InspectorPropertyLabel, InspectorPropertyList, InspectorPropertyValue, InspectorRail, InspectorRailCell, InspectorRailContent, InspectorRailFooter, InspectorRailIconButton, InspectorRailTab, InspectorSection, InspectorSectionTitle, InspectorTab, InspectorTabList, InspectorTabPanel, InspectorTabs, InspectorTitle, KANBAN_BAND_CAPTION_ROW_HEIGHT, KANBAN_BAND_CAPTION_ROW_HEIGHT_PX, KANBAN_BAND_PEEK_DELAY_MS, KANBAN_BAND_PEEK_LINGER_MS, KANBAN_BOARD_AUTO_SCROLL_OPTIONS, KANBAN_BOARD_AUTO_SCROLL_SOURCES, KANBAN_BOARD_AXES, KANBAN_BOARD_COLLISION_DETECTION, KANBAN_CARD_DRAG_MIME, KANBAN_CARD_STICKY_TOP_VAR, KANBAN_CHROME_ROW_HEIGHT, KANBAN_CHROME_ROW_HEIGHT_PX, KANBAN_COLLAPSED_BAND_WIDTH_CLASS, KANBAN_COLLAPSED_BAND_WIDTH_PX, KANBAN_COLUMN_GAP_PX, KANBAN_COLUMN_WIDTH_CLASS, KANBAN_COLUMN_WIDTH_PX, KANBAN_DIRECTIONS, KANBAN_DRAG_OVERLAY_Z_INDEX, KANBAN_HORIZONTAL_EDGES, KANBAN_MOUSE_ACTIVATION_DISTANCE, KANBAN_SORTABLE_ACTIVATION_MODES, KANBAN_STICKY_TOP_VAR, KANBAN_TOUCH_ACTIVATION_CONSTRAINT, KANBAN_VIRTUAL_CELL_PAGINATION, type KanbanBandToggleActivation, type KanbanBoardAxis, type KanbanBoardCell, type KanbanBoardColumn, type KanbanBoardCoordinate, type KanbanBoardDestination, type KanbanBoardLane, type KanbanBoardMatrix, type KanbanBuiltInGroup, KanbanCardDragSurface, type KanbanCardDragSurfaceProps, type KanbanCardFieldSelection, KanbanCardShell, type KanbanCardShellProps, KanbanCellAction, type KanbanCellActionProps, type KanbanCellVirtualNavigation, KanbanCollapsedBandCaption, type KanbanCollapsedBandCaptionProps, type KanbanColumnBand, KanbanColumnBandHeader, type KanbanColumnBandHeaderProps, type KanbanColumnBandSpan, KanbanColumnHeader, type KanbanColumnHeaderProps, type KanbanDirection, type KanbanDragCancelEvent, type KanbanDragEndEvent, KanbanDragHandle, type KanbanDragHandleProps, type KanbanDragOverEvent, type KanbanDragStartEvent, type KanbanDropAxisChange, type KanbanDropIntent, type KanbanGroup, type KanbanGroupOption, type KanbanGrouping, type KanbanHorizontalEdge, type KanbanSchema, type KanbanSortableActivationMode, type KanbanSortableBindings, KanbanSortableBoard, type KanbanSortableBoardProps, type KanbanSortableCellPosition, KanbanSortableColumns, type KanbanSortableColumnsProps, KanbanSortableList, type KanbanSortableListProps, type KanbanSubgroupBandHeaderContext, KanbanSubgroupBoard, type KanbanSubgroupBoardProps, type KanbanSubgroupCellContext, type KanbanSubgroupCollapsedBandCellContext, type KanbanSubgroupColumnHeaderContext, type KanbanSubgroupLaneColumnActionContext, type KanbanSubgroupLaneColumnSummaryContext, type KanbanSubgroupLaneIdentityContext, KanbanVirtualCell, type KanbanVirtualCellPagination, type KanbanVirtualCellProps, type KanbanVirtualCellSortableContext, type KanbanVirtualScrollRequest, Label, MenuPreviewLayout, OVERLAY_COLLISION_PADDING, OVERLAY_LAYER_CLASS_NAMES, OptionColor, type OrderKanbanCellsByColumnsParams, OutlineItem, OutlineRail, OutlineRailProps, OverlayLayer, PROPERTY_ROW_GRID, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Popover, PopoverClose, PopoverPopup as PopoverContent, PopoverPopup, PopoverCreateHandle, PopoverDescription, PopoverPanel, PopoverTitle, PopoverTrigger, PreviewCardPrimitive, PreviewPane, type RegisterKanbanBoardAutoScrollOptions, type RegisterKanbanCardDragOptions, type ResolveKanbanGroupValueParams, type ResolveKanbanGroupingParams, ResourceCalendar, type ResourceCalendarColumn, type ResourceCalendarEntry, type ResourceCalendarEntryTone, type ResourceCalendarLaneLayout, type ResourceCalendarLanePlacement, type ResourceCalendarPlacement, type ResourceCalendarResource, ReviewAuthorAvatar, ReviewCommentAuthor, ReviewCommentCard, ReviewDecisionActions, ReviewDecisionSize, ReviewDecisionState, ReviewDiffDeletion, ReviewDiffInsertion, ReviewDiffSegment, ReviewDiffSegmentType, ReviewDiffText, ReviewOutOfDateNotice, ReviewOutOfDateReason, ReviewOutOfDateTone, ReviewSeverityDot, ReviewSeverityLevel, ReviewStatusBadge, ReviewStatusDot, ReviewStatusSize, ReviewStatusTone, ReviewStatusVariant, SHELL_CHROME_LAYER_CLASS_NAME, SIDEBAR_WIDTH_ICON_PX, SIDEBAR_WIDTH_PX, SIDE_RAIL_CONTAINER_CLASS, SIDE_RAIL_ICON_BUTTON_SIZE, SIDE_RAIL_TAB_ICON_SIZE, SIDE_RAIL_WIDTH, ScrollArea, ScrollBar, ScrollToTop, ScrollToTopProps, SecretInput, type SecretInputProps, SegmentedIconToggle, Select, SelectPopup as SelectContent, SelectPopup, SelectGroup, SelectGroupLabel, SelectItem, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetBackdrop, SheetBackdrop as SheetOverlay, SheetClose, SheetPopup as SheetContent, SheetPopup, SheetDescription, SheetFooter, SheetHeader, SheetPanel, SheetPortal, type SheetSide, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, type SortDirection, SortableHead, StellaMark, StellaWordmarkLatin, TOAST_RIGHT_OFFSET_VAR, TOOLBAR_ROW_HEIGHT, TOOLBAR_ROW_HEIGHT_PX, TRACKED_DELETION_STYLE, TRACKED_INSERTION_STYLE, Table, TableBody, TableCaption, TableCell, type TableColumnCapabilities, type TableColumnDescriptor, TableFooter, TableHead, TableHeader, TableRow, type TableSchema, Tabs, TabsPanel as TabsContent, TabsPanel, TabsList, TabsTab, TabsTab as TabsTrigger, TextSeparator, Textarea, type TextareaProps, type ToastPosition, ToastProvider, Tooltip, TooltipPopup as TooltipContent, TooltipPopup, TooltipCreateHandle, TooltipProvider, TooltipTrigger, UNKNOWN_AUTHOR_LABEL, type UseKanbanDropTargetOptions, type UseKanbanSortableOptions, UserText, type WorkspaceCompactNavigation, WorkspaceEndRail, type WorkspaceEndRailChatAction, type WorkspaceEndRailProps, type WorkspaceNavigation, WorkspaceShell, type WorkspaceShellProps, type WorkspaceTopBarContext, assertConsecutiveCalendarDates, buildKanbanBoardMatrix, buttonAccessibleDisabledClass, buttonVariants, cn, composeRefs, containedEventHandler, containedHandler, contentDir, createKanbanDropIntent, duplicateColumnIds, emptyColor, entityTabGlyph, findTableColumn, getFirstWeekday, getInitials, getKanbanBoardColumnIdentity, getKanbanBoardLaneIdentity, getKanbanGroupingPropertyId, getKanbanGroups, getKanbanHorizontalEdge, getLocaleWeekInfo, getResourceCalendarPlacement, getWeekendDays, hasKanbanColumnBands, hideableColumnIds, isKanbanGroupingRenderable, isStructuredInputType, kanbanKeyboardCoordinates, layoutResourceCalendarEntries, nextCalendarDate, optionColors, orderKanbanCellsByColumns, parsePersistedPaneWidth, registerKanbanBoardAutoScroll, registerKanbanCardDrag, resolveDragWidth, resolveInspectorDockWidth, resolveInspectorPaneMaxWidth, resolveInspectorPaneWidth, resolveKanbanColumnBands, resolveKanbanGroupOptions, resolveKanbanGrouping, resolveKeyboardWidth, resolveOptionColor, reviewDiffSegmentKeys, reviewSeverityTone, selectKanbanCardFieldIds, selectKanbanRows, shouldForceSidebarCollapsed, sortableColumnIds, stellaToast, tableColumnIds, tableColumnSizing, useComboboxFilter, useContentDir, useDestructiveActionConfirmation, useInspectorPaneWidth, useIsMobile, useKanbanDropTarget, useKanbanSortable, useKanbanSortableSensors, useLatest, useSidebar, useSidebarInlineSize, useViewportWidth, visibleColumnIds };
|
package/dist/index.js
CHANGED
|
@@ -2,7 +2,7 @@ import { cn, composeRefs } from "./lib/utils.js";
|
|
|
2
2
|
import { Accordion, AccordionContent as AccordionPanel, AccordionItem, AccordionTrigger } from "./components/accordion.js";
|
|
3
3
|
import { PROPERTY_ROW_GRID, SIDE_RAIL_CONTAINER_CLASS, SIDE_RAIL_ICON_BUTTON_SIZE, SIDE_RAIL_TAB_ICON_SIZE, SIDE_RAIL_WIDTH, TOOLBAR_ROW_HEIGHT, TOOLBAR_ROW_HEIGHT_PX } from "./inspector/layout-tokens.js";
|
|
4
4
|
import { APPLICATION_RAIL_BUTTON_SIZE, APPLICATION_RAIL_ICON_SIZE, APPLICATION_RAIL_WIDTH, ApplicationRail, ApplicationRailButton, ApplicationRailContent, ApplicationRailFooter, ApplicationRailHeader, ApplicationRailMenu, ApplicationRailSeparator } from "./components/application-rail.js";
|
|
5
|
-
import { BOARD_DRAG_OVERLAY_Z_INDEX, OVERLAY_COLLISION_PADDING, OVERLAY_LAYER_CLASS_NAMES } from "./lib/overlay-layer.js";
|
|
5
|
+
import { BOARD_DRAG_OVERLAY_Z_INDEX, OVERLAY_COLLISION_PADDING, OVERLAY_LAYER_CLASS_NAMES, SHELL_CHROME_LAYER_CLASS_NAME } from "./lib/overlay-layer.js";
|
|
6
6
|
import { Tooltip, TooltipContent as TooltipPopup, TooltipCreateHandle, TooltipProvider, TooltipTrigger } from "./components/tooltip.js";
|
|
7
7
|
import { AlertDialog, AlertDialogBackdrop, AlertDialogClose, AlertDialogContent as AlertDialogPopup, AlertDialogCreateHandle, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogPanel, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertDialogViewport } from "./components/alert-dialog.js";
|
|
8
8
|
import { useIsMobile } from "./hooks/use-mobile.js";
|
|
@@ -95,4 +95,4 @@ import { ReviewDiffDeletion, ReviewDiffInsertion, ReviewDiffText, TRACKED_DELETI
|
|
|
95
95
|
import { ReviewOutOfDateNotice } from "./review/review-out-of-date-notice.js";
|
|
96
96
|
import { ReviewSeverityDot, ReviewStatusDot, reviewSeverityTone } from "./review/review-severity-dot.js";
|
|
97
97
|
import { ReviewStatusBadge } from "./review/review-status-badge.js";
|
|
98
|
-
export { APPLICATION_RAIL_BUTTON_SIZE, APPLICATION_RAIL_ICON_SIZE, APPLICATION_RAIL_WIDTH, Accordion, AccordionPanel as AccordionContent, AccordionPanel, AccordionItem, AccordionTrigger, AlertDialog, AlertDialogBackdrop, AlertDialogBackdrop as AlertDialogOverlay, AlertDialogClose, AlertDialogPopup as AlertDialogContent, AlertDialogPopup, AlertDialogCreateHandle, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogPanel, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertDialogViewport, AnchoredToastProvider, ApplicationRail, ApplicationRailButton, ApplicationRailContent, ApplicationRailFooter, ApplicationRailHeader, ApplicationRailMenu, ApplicationRailSeparator, Avatar, AvatarFallback, AvatarImage, BOARD_DRAG_OVERLAY_Z_INDEX, BidiText, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, CONTROL_SIZE, CONTROL_SIZES, CalendarCell, CalendarEntryButton, CalendarEntrySurface, CalendarGrid, CalendarHeaderCell, CalendarHeaderRow, Checkbox, ColorPicker, ColorPickerContent, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxClear, ComboboxCollection, ComboboxEmpty, ComboboxGroup, ComboboxGroupLabel, ComboboxInput, ComboboxItem, ComboboxList, ComboboxPopup, ComboboxRow, ComboboxSeparator, ComboboxStatus, ComboboxTrigger, ComboboxValue, Command, CommandCollection, CommandDialog, CommandDialogPopup, CommandDialogTrigger, CommandEmpty, CommandFooter, CommandGroup, CommandGroupLabel, CommandInput, CommandItem, CommandList, CommandPanel, CommandSeparator, CommandShortcut, DEFAULT_PRESETS, DataTable, DatePickerPopover, DestructiveActionConfirmation, DestructiveConfirmDialog, Dialog, DialogBackdrop, DialogBackdrop as DialogOverlay, DialogClose, DialogPopup as DialogContent, DialogPopup, DialogCreateHandle, DialogDescription, DialogFooter, DialogHeader, DialogPanel, DialogPortal, DialogTitle, DialogTrigger, DialogViewport, DirectionalIcon, DiscordLogoIcon, Menu as DropdownMenu, Menu, MenuCheckboxItem as DropdownMenuCheckboxItem, MenuCheckboxItem, MenuPopup as DropdownMenuContent, MenuPopup, MenuCreateHandle as DropdownMenuCreateHandle, MenuCreateHandle, MenuGroup as DropdownMenuGroup, MenuGroup, MenuItem as DropdownMenuItem, MenuItem, MenuGroupLabel as DropdownMenuLabel, MenuGroupLabel, MenuPortal as DropdownMenuPortal, MenuPortal, MenuRadioGroup as DropdownMenuRadioGroup, MenuRadioGroup, MenuRadioItem as DropdownMenuRadioItem, MenuRadioItem, MenuSeparator as DropdownMenuSeparator, MenuSeparator, MenuShortcut as DropdownMenuShortcut, MenuShortcut, MenuSub as DropdownMenuSub, MenuSub, MenuSubPopup as DropdownMenuSubContent, MenuSubPopup, MenuSubTrigger as DropdownMenuSubTrigger, MenuSubTrigger, MenuTrigger as DropdownMenuTrigger, MenuTrigger, Field, FieldControl, FieldDescription, FieldError, FieldItem, FieldLabel, FieldValidity, Form, Frame, FrameDescription, FrameFooter, FrameHeader, FramePanel, FrameTitle, GitHubLogoIcon, HexColorPicker, PreviewCard as HoverCard, PreviewCard, PreviewCardPopup as HoverCardContent, PreviewCardPopup, PreviewCardTrigger as HoverCardTrigger, PreviewCardTrigger, INSPECTOR_CONTENT_MIN_WIDTH, INSPECTOR_EDITOR_MIN_WIDTH, INSPECTOR_PANE_DEFAULT_WIDTH, INSPECTOR_PANE_KEYBOARD_PAGE_STEP, INSPECTOR_PANE_KEYBOARD_STEP, INSPECTOR_PANE_MAX_WIDTH, INSPECTOR_PANE_MIN_WIDTH, INSPECTOR_RAIL_WIDTH, Input, InputGroup, InputGroupAddon, InputGroupInput, InputGroupText, InputGroupTextarea, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, Inspector, InspectorActions, InspectorContent, InspectorDescription, InspectorDock, InspectorEmptyRow, InspectorEntityTab, InspectorFacetBar, InspectorHeader, InspectorHeaderText, InspectorProperty, InspectorPropertyLabel, InspectorPropertyList, InspectorPropertyValue, InspectorRail, InspectorRailCell, InspectorRailContent, InspectorRailFooter, InspectorRailIconButton, InspectorRailTab, InspectorSection, InspectorSectionTitle, InspectorTab, InspectorTabList, InspectorTabPanel, InspectorTabs, InspectorTitle, KANBAN_BAND_CAPTION_ROW_HEIGHT, KANBAN_BAND_CAPTION_ROW_HEIGHT_PX, KANBAN_BAND_PEEK_DELAY_MS, KANBAN_BAND_PEEK_LINGER_MS, KANBAN_BOARD_AUTO_SCROLL_OPTIONS, KANBAN_BOARD_AUTO_SCROLL_SOURCES, KANBAN_BOARD_AXES, KANBAN_BOARD_COLLISION_DETECTION, KANBAN_CARD_DRAG_MIME, KANBAN_CARD_STICKY_TOP_VAR, KANBAN_CHROME_ROW_HEIGHT, KANBAN_CHROME_ROW_HEIGHT_PX, KANBAN_COLLAPSED_BAND_WIDTH_CLASS, KANBAN_COLLAPSED_BAND_WIDTH_PX, KANBAN_COLUMN_GAP_PX, KANBAN_COLUMN_WIDTH_CLASS, KANBAN_COLUMN_WIDTH_PX, KANBAN_DIRECTIONS, KANBAN_DRAG_OVERLAY_Z_INDEX, KANBAN_HORIZONTAL_EDGES, KANBAN_MOUSE_ACTIVATION_DISTANCE, KANBAN_SORTABLE_ACTIVATION_MODES, KANBAN_STICKY_TOP_VAR, KANBAN_TOUCH_ACTIVATION_CONSTRAINT, KANBAN_VIRTUAL_CELL_PAGINATION, KanbanCardDragSurface, KanbanCardShell, KanbanCellAction, KanbanCollapsedBandCaption, KanbanColumnBandHeader, KanbanColumnHeader, KanbanDragHandle, KanbanSortableBoard, KanbanSortableColumns, KanbanSortableList, KanbanSubgroupBoard, KanbanVirtualCell, Label, MenuPreviewLayout, OVERLAY_COLLISION_PADDING, OVERLAY_LAYER_CLASS_NAMES, OutlineRail, PROPERTY_ROW_GRID, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Popover, PopoverClose, PopoverPopup as PopoverContent, PopoverPopup, PopoverCreateHandle, PopoverDescription, PopoverPanel, PopoverTitle, PopoverTrigger, PreviewCardPrimitive, PreviewPane, ResourceCalendar, ReviewAuthorAvatar, ReviewCommentCard, ReviewDecisionActions, ReviewDiffDeletion, ReviewDiffInsertion, ReviewDiffText, ReviewOutOfDateNotice, ReviewSeverityDot, ReviewStatusBadge, ReviewStatusDot, SIDEBAR_WIDTH_ICON_PX, SIDEBAR_WIDTH_PX, SIDE_RAIL_CONTAINER_CLASS, SIDE_RAIL_ICON_BUTTON_SIZE, SIDE_RAIL_TAB_ICON_SIZE, SIDE_RAIL_WIDTH, ScrollArea, ScrollBar, ScrollToTop, SecretInput, SegmentedIconToggle, Select, SelectPopup as SelectContent, SelectPopup, SelectGroup, SelectGroupLabel, SelectItem, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetBackdrop, SheetBackdrop as SheetOverlay, SheetClose, SheetPopup as SheetContent, SheetPopup, SheetDescription, SheetFooter, SheetHeader, SheetPanel, SheetPortal, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, SortableHead, StellaMark, StellaWordmarkLatin, TOAST_RIGHT_OFFSET_VAR, TOOLBAR_ROW_HEIGHT, TOOLBAR_ROW_HEIGHT_PX, TRACKED_DELETION_STYLE, TRACKED_INSERTION_STYLE, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsPanel as TabsContent, TabsPanel, TabsList, TabsTab, TabsTab as TabsTrigger, TextSeparator, Textarea, ToastProvider, Tooltip, TooltipPopup as TooltipContent, TooltipPopup, TooltipCreateHandle, TooltipProvider, TooltipTrigger, UNKNOWN_AUTHOR_LABEL, UserText, WorkspaceEndRail, WorkspaceShell, assertConsecutiveCalendarDates, buildKanbanBoardMatrix, buttonAccessibleDisabledClass, buttonVariants, cn, composeRefs, containedEventHandler, containedHandler, contentDir, createKanbanDropIntent, duplicateColumnIds, emptyColor, entityTabGlyph, findTableColumn, getFirstWeekday, getInitials, getKanbanBoardColumnIdentity, getKanbanBoardLaneIdentity, getKanbanGroupingPropertyId, getKanbanGroups, getKanbanHorizontalEdge, getLocaleWeekInfo, getResourceCalendarPlacement, getWeekendDays, hasKanbanColumnBands, hideableColumnIds, isKanbanGroupingRenderable, isStructuredInputType, kanbanKeyboardCoordinates, layoutResourceCalendarEntries, nextCalendarDate, optionColors, orderKanbanCellsByColumns, parsePersistedPaneWidth, registerKanbanBoardAutoScroll, registerKanbanCardDrag, resolveDragWidth, resolveInspectorDockWidth, resolveInspectorPaneMaxWidth, resolveInspectorPaneWidth, resolveKanbanColumnBands, resolveKanbanGroupOptions, resolveKanbanGrouping, resolveKeyboardWidth, resolveOptionColor, reviewDiffSegmentKeys, reviewSeverityTone, selectKanbanCardFieldIds, selectKanbanRows, shouldForceSidebarCollapsed, sortableColumnIds, stellaToast, tableColumnIds, tableColumnSizing, useComboboxFilter, useContentDir, useDestructiveActionConfirmation, useInspectorPaneWidth, useIsMobile, useKanbanDropTarget, useKanbanSortable, useKanbanSortableSensors, useLatest, useSidebar, useSidebarInlineSize, useViewportWidth, visibleColumnIds };
|
|
98
|
+
export { APPLICATION_RAIL_BUTTON_SIZE, APPLICATION_RAIL_ICON_SIZE, APPLICATION_RAIL_WIDTH, Accordion, AccordionPanel as AccordionContent, AccordionPanel, AccordionItem, AccordionTrigger, AlertDialog, AlertDialogBackdrop, AlertDialogBackdrop as AlertDialogOverlay, AlertDialogClose, AlertDialogPopup as AlertDialogContent, AlertDialogPopup, AlertDialogCreateHandle, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogPanel, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertDialogViewport, AnchoredToastProvider, ApplicationRail, ApplicationRailButton, ApplicationRailContent, ApplicationRailFooter, ApplicationRailHeader, ApplicationRailMenu, ApplicationRailSeparator, Avatar, AvatarFallback, AvatarImage, BOARD_DRAG_OVERLAY_Z_INDEX, BidiText, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, CONTROL_SIZE, CONTROL_SIZES, CalendarCell, CalendarEntryButton, CalendarEntrySurface, CalendarGrid, CalendarHeaderCell, CalendarHeaderRow, Checkbox, ColorPicker, ColorPickerContent, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxClear, ComboboxCollection, ComboboxEmpty, ComboboxGroup, ComboboxGroupLabel, ComboboxInput, ComboboxItem, ComboboxList, ComboboxPopup, ComboboxRow, ComboboxSeparator, ComboboxStatus, ComboboxTrigger, ComboboxValue, Command, CommandCollection, CommandDialog, CommandDialogPopup, CommandDialogTrigger, CommandEmpty, CommandFooter, CommandGroup, CommandGroupLabel, CommandInput, CommandItem, CommandList, CommandPanel, CommandSeparator, CommandShortcut, DEFAULT_PRESETS, DataTable, DatePickerPopover, DestructiveActionConfirmation, DestructiveConfirmDialog, Dialog, DialogBackdrop, DialogBackdrop as DialogOverlay, DialogClose, DialogPopup as DialogContent, DialogPopup, DialogCreateHandle, DialogDescription, DialogFooter, DialogHeader, DialogPanel, DialogPortal, DialogTitle, DialogTrigger, DialogViewport, DirectionalIcon, DiscordLogoIcon, Menu as DropdownMenu, Menu, MenuCheckboxItem as DropdownMenuCheckboxItem, MenuCheckboxItem, MenuPopup as DropdownMenuContent, MenuPopup, MenuCreateHandle as DropdownMenuCreateHandle, MenuCreateHandle, MenuGroup as DropdownMenuGroup, MenuGroup, MenuItem as DropdownMenuItem, MenuItem, MenuGroupLabel as DropdownMenuLabel, MenuGroupLabel, MenuPortal as DropdownMenuPortal, MenuPortal, MenuRadioGroup as DropdownMenuRadioGroup, MenuRadioGroup, MenuRadioItem as DropdownMenuRadioItem, MenuRadioItem, MenuSeparator as DropdownMenuSeparator, MenuSeparator, MenuShortcut as DropdownMenuShortcut, MenuShortcut, MenuSub as DropdownMenuSub, MenuSub, MenuSubPopup as DropdownMenuSubContent, MenuSubPopup, MenuSubTrigger as DropdownMenuSubTrigger, MenuSubTrigger, MenuTrigger as DropdownMenuTrigger, MenuTrigger, Field, FieldControl, FieldDescription, FieldError, FieldItem, FieldLabel, FieldValidity, Form, Frame, FrameDescription, FrameFooter, FrameHeader, FramePanel, FrameTitle, GitHubLogoIcon, HexColorPicker, PreviewCard as HoverCard, PreviewCard, PreviewCardPopup as HoverCardContent, PreviewCardPopup, PreviewCardTrigger as HoverCardTrigger, PreviewCardTrigger, INSPECTOR_CONTENT_MIN_WIDTH, INSPECTOR_EDITOR_MIN_WIDTH, INSPECTOR_PANE_DEFAULT_WIDTH, INSPECTOR_PANE_KEYBOARD_PAGE_STEP, INSPECTOR_PANE_KEYBOARD_STEP, INSPECTOR_PANE_MAX_WIDTH, INSPECTOR_PANE_MIN_WIDTH, INSPECTOR_RAIL_WIDTH, Input, InputGroup, InputGroupAddon, InputGroupInput, InputGroupText, InputGroupTextarea, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, Inspector, InspectorActions, InspectorContent, InspectorDescription, InspectorDock, InspectorEmptyRow, InspectorEntityTab, InspectorFacetBar, InspectorHeader, InspectorHeaderText, InspectorProperty, InspectorPropertyLabel, InspectorPropertyList, InspectorPropertyValue, InspectorRail, InspectorRailCell, InspectorRailContent, InspectorRailFooter, InspectorRailIconButton, InspectorRailTab, InspectorSection, InspectorSectionTitle, InspectorTab, InspectorTabList, InspectorTabPanel, InspectorTabs, InspectorTitle, KANBAN_BAND_CAPTION_ROW_HEIGHT, KANBAN_BAND_CAPTION_ROW_HEIGHT_PX, KANBAN_BAND_PEEK_DELAY_MS, KANBAN_BAND_PEEK_LINGER_MS, KANBAN_BOARD_AUTO_SCROLL_OPTIONS, KANBAN_BOARD_AUTO_SCROLL_SOURCES, KANBAN_BOARD_AXES, KANBAN_BOARD_COLLISION_DETECTION, KANBAN_CARD_DRAG_MIME, KANBAN_CARD_STICKY_TOP_VAR, KANBAN_CHROME_ROW_HEIGHT, KANBAN_CHROME_ROW_HEIGHT_PX, KANBAN_COLLAPSED_BAND_WIDTH_CLASS, KANBAN_COLLAPSED_BAND_WIDTH_PX, KANBAN_COLUMN_GAP_PX, KANBAN_COLUMN_WIDTH_CLASS, KANBAN_COLUMN_WIDTH_PX, KANBAN_DIRECTIONS, KANBAN_DRAG_OVERLAY_Z_INDEX, KANBAN_HORIZONTAL_EDGES, KANBAN_MOUSE_ACTIVATION_DISTANCE, KANBAN_SORTABLE_ACTIVATION_MODES, KANBAN_STICKY_TOP_VAR, KANBAN_TOUCH_ACTIVATION_CONSTRAINT, KANBAN_VIRTUAL_CELL_PAGINATION, KanbanCardDragSurface, KanbanCardShell, KanbanCellAction, KanbanCollapsedBandCaption, KanbanColumnBandHeader, KanbanColumnHeader, KanbanDragHandle, KanbanSortableBoard, KanbanSortableColumns, KanbanSortableList, KanbanSubgroupBoard, KanbanVirtualCell, Label, MenuPreviewLayout, OVERLAY_COLLISION_PADDING, OVERLAY_LAYER_CLASS_NAMES, OutlineRail, PROPERTY_ROW_GRID, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Popover, PopoverClose, PopoverPopup as PopoverContent, PopoverPopup, PopoverCreateHandle, PopoverDescription, PopoverPanel, PopoverTitle, PopoverTrigger, PreviewCardPrimitive, PreviewPane, ResourceCalendar, ReviewAuthorAvatar, ReviewCommentCard, ReviewDecisionActions, ReviewDiffDeletion, ReviewDiffInsertion, ReviewDiffText, ReviewOutOfDateNotice, ReviewSeverityDot, ReviewStatusBadge, ReviewStatusDot, SHELL_CHROME_LAYER_CLASS_NAME, SIDEBAR_WIDTH_ICON_PX, SIDEBAR_WIDTH_PX, SIDE_RAIL_CONTAINER_CLASS, SIDE_RAIL_ICON_BUTTON_SIZE, SIDE_RAIL_TAB_ICON_SIZE, SIDE_RAIL_WIDTH, ScrollArea, ScrollBar, ScrollToTop, SecretInput, SegmentedIconToggle, Select, SelectPopup as SelectContent, SelectPopup, SelectGroup, SelectGroupLabel, SelectItem, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetBackdrop, SheetBackdrop as SheetOverlay, SheetClose, SheetPopup as SheetContent, SheetPopup, SheetDescription, SheetFooter, SheetHeader, SheetPanel, SheetPortal, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, SortableHead, StellaMark, StellaWordmarkLatin, TOAST_RIGHT_OFFSET_VAR, TOOLBAR_ROW_HEIGHT, TOOLBAR_ROW_HEIGHT_PX, TRACKED_DELETION_STYLE, TRACKED_INSERTION_STYLE, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsPanel as TabsContent, TabsPanel, TabsList, TabsTab, TabsTab as TabsTrigger, TextSeparator, Textarea, ToastProvider, Tooltip, TooltipPopup as TooltipContent, TooltipPopup, TooltipCreateHandle, TooltipProvider, TooltipTrigger, UNKNOWN_AUTHOR_LABEL, UserText, WorkspaceEndRail, WorkspaceShell, assertConsecutiveCalendarDates, buildKanbanBoardMatrix, buttonAccessibleDisabledClass, buttonVariants, cn, composeRefs, containedEventHandler, containedHandler, contentDir, createKanbanDropIntent, duplicateColumnIds, emptyColor, entityTabGlyph, findTableColumn, getFirstWeekday, getInitials, getKanbanBoardColumnIdentity, getKanbanBoardLaneIdentity, getKanbanGroupingPropertyId, getKanbanGroups, getKanbanHorizontalEdge, getLocaleWeekInfo, getResourceCalendarPlacement, getWeekendDays, hasKanbanColumnBands, hideableColumnIds, isKanbanGroupingRenderable, isStructuredInputType, kanbanKeyboardCoordinates, layoutResourceCalendarEntries, nextCalendarDate, optionColors, orderKanbanCellsByColumns, parsePersistedPaneWidth, registerKanbanBoardAutoScroll, registerKanbanCardDrag, resolveDragWidth, resolveInspectorDockWidth, resolveInspectorPaneMaxWidth, resolveInspectorPaneWidth, resolveKanbanColumnBands, resolveKanbanGroupOptions, resolveKanbanGrouping, resolveKeyboardWidth, resolveOptionColor, reviewDiffSegmentKeys, reviewSeverityTone, selectKanbanCardFieldIds, selectKanbanRows, shouldForceSidebarCollapsed, sortableColumnIds, stellaToast, tableColumnIds, tableColumnSizing, useComboboxFilter, useContentDir, useDestructiveActionConfirmation, useInspectorPaneWidth, useIsMobile, useKanbanDropTarget, useKanbanSortable, useKanbanSortableSensors, useLatest, useSidebar, useSidebarInlineSize, useViewportWidth, visibleColumnIds };
|
package/dist/inspector/chrome.js
CHANGED
|
@@ -45,7 +45,7 @@ const InspectorRailCell = ({ className, ...props }) => /* @__PURE__ */ jsx("div"
|
|
|
45
45
|
});
|
|
46
46
|
/** Scroll owner for rail tabs and other middle actions. */
|
|
47
47
|
const InspectorRailContent = ({ className, ...props }) => /* @__PURE__ */ jsx("div", {
|
|
48
|
-
className: cn("flex min-h-0 flex-1 flex-col overflow-x-hidden overflow-y-auto overscroll-contain", className),
|
|
48
|
+
className: cn("scrollbar-subtle flex min-h-0 flex-1 flex-col overflow-x-hidden overflow-y-auto overscroll-contain", className),
|
|
49
49
|
"data-slot": "inspector-rail-content",
|
|
50
50
|
...props
|
|
51
51
|
});
|
|
@@ -110,7 +110,7 @@ const InspectorActions = ({ className, ...props }) => /* @__PURE__ */ jsx("div",
|
|
|
110
110
|
* being navigable.
|
|
111
111
|
*/
|
|
112
112
|
const InspectorContent = ({ className, ...props }) => /* @__PURE__ */ jsx("div", {
|
|
113
|
-
className: cn("flex min-h-0 flex-1 flex-col overflow-x-hidden overflow-y-auto overscroll-contain", className),
|
|
113
|
+
className: cn("scrollbar-subtle flex min-h-0 flex-1 flex-col overflow-x-hidden overflow-y-auto overscroll-contain", className),
|
|
114
114
|
"data-slot": "inspector-content",
|
|
115
115
|
...props
|
|
116
116
|
});
|
|
@@ -11,8 +11,18 @@ type KanbanCardShellProps = {
|
|
|
11
11
|
* bare icon buttons; `"always"` (the default) leaves a caller's own overlay
|
|
12
12
|
* exactly where it put it.
|
|
13
13
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
14
|
+
* While they are hidden they are also inert: they take no pointer events at
|
|
15
|
+
* all, so a touch anywhere over the card — including the corner they will
|
|
16
|
+
* appear in — reaches the card itself. A hidden overlay that still answered
|
|
17
|
+
* a press would sit as a small dead zone on every card, and a long press
|
|
18
|
+
* landing in it would never start the card's drag.
|
|
19
|
+
*
|
|
20
|
+
* Each pointer has its own way in. A pointer that hovers reveals them by
|
|
21
|
+
* hovering the card; the keyboard reveals them by tabbing into them, which
|
|
22
|
+
* being inert to a pointer never blocked. A finger has neither, so `active`
|
|
23
|
+
* is its route: the card a tap opened shows its actions for as long as it
|
|
24
|
+
* stays open. A board that never marks a card active leaves touch without
|
|
25
|
+
* one, and should keep `"always"`.
|
|
16
26
|
*/
|
|
17
27
|
actionsVisibility?: "always" | "hover" | undefined;
|
|
18
28
|
/**
|
|
@@ -31,6 +31,7 @@ const KanbanCardShell = ({ children, actions, actionsVisibility = "always", stic
|
|
|
31
31
|
] });
|
|
32
32
|
if (!onOpen) return /* @__PURE__ */ jsx("div", {
|
|
33
33
|
className: "group/card",
|
|
34
|
+
"data-active": active ? "true" : void 0,
|
|
34
35
|
ref: dragRef,
|
|
35
36
|
children: /* @__PURE__ */ jsx("div", {
|
|
36
37
|
className: cn(CARD_CLASS, active && ACTIVE_CLASS, className),
|
|
@@ -40,6 +41,7 @@ const KanbanCardShell = ({ children, actions, actionsVisibility = "always", stic
|
|
|
40
41
|
});
|
|
41
42
|
return /* @__PURE__ */ jsx("div", {
|
|
42
43
|
className: "group/card",
|
|
44
|
+
"data-active": active ? "true" : void 0,
|
|
43
45
|
ref: dragRef,
|
|
44
46
|
children: /* @__PURE__ */ jsx("div", {
|
|
45
47
|
className: cn(CARD_CLASS, "cursor-pointer transition-shadow hover:shadow-md", active && ACTIVE_CLASS, className),
|
|
@@ -69,24 +71,40 @@ const ACTIVE_CLASS = "ring-primary/30 ring-2";
|
|
|
69
71
|
* gradient layer over the opaque page background instead, which is the card's
|
|
70
72
|
* own surface at full opacity whatever the token turns out to be.
|
|
71
73
|
*
|
|
72
|
-
*
|
|
73
|
-
* flow content
|
|
74
|
-
*
|
|
75
|
-
*
|
|
74
|
+
* The row takes a layer of its own. Being positioned only beats the card's
|
|
75
|
+
* flow content: a card whose body carries positioned controls of its own (a
|
|
76
|
+
* band of selects at its foot, say) renders them after the row, and tree order
|
|
77
|
+
* alone paints them straight over the name of the card they belong to. An
|
|
78
|
+
* overlay meant to stay reachable over the row takes the same layer and wins
|
|
79
|
+
* on tree order, which is what the hover `actions` slot below does; a caller
|
|
80
|
+
* anchoring its own always-visible overlay to that corner does the same.
|
|
76
81
|
*/
|
|
77
|
-
const STICKY_HEADER_CLASS = "bg-background bg-[linear-gradient(var(--color-card),var(--color-card))] sticky mb-2 border-b pb-2";
|
|
82
|
+
const STICKY_HEADER_CLASS = "bg-background bg-[linear-gradient(var(--color-card),var(--color-card))] sticky z-10 mb-2 border-b pb-2";
|
|
78
83
|
/**
|
|
79
84
|
* Where the shell puts the actions it reveals on hover.
|
|
80
85
|
*
|
|
81
86
|
* The overlay takes a layer of its own here, unlike the always-visible slot:
|
|
82
87
|
* it has to stay over the pinned identity row that leads the same corner, and
|
|
83
|
-
* the row
|
|
84
|
-
* menu holds the actions on through its
|
|
85
|
-
* trigger would disappear from under the
|
|
88
|
+
* the row now takes a layer too. Sharing it is enough, because the overlay is
|
|
89
|
+
* rendered after the row. An open menu holds the actions on through its
|
|
90
|
+
* trigger's `aria-expanded`, or the trigger would disappear from under the
|
|
91
|
+
* popup it just opened.
|
|
86
92
|
*
|
|
87
93
|
* The fade is decoration: a reader who asked for less motion still gets the
|
|
88
94
|
* actions, they simply arrive at once.
|
|
95
|
+
*
|
|
96
|
+
* Every state that shows them also makes them answer a pointer again, and
|
|
97
|
+
* nothing else does: an invisible overlay that still took a press would leave
|
|
98
|
+
* a small dead zone in the corner of every card, and on a touch device that
|
|
99
|
+
* dead zone swallows the long press that starts the card's drag. Hiding alone
|
|
100
|
+
* would not have been enough — a transparent element is still the topmost hit.
|
|
101
|
+
* Focus is unaffected by `pointer-events`, so the keyboard path is untouched.
|
|
102
|
+
*
|
|
103
|
+
* The active card is what leaves a finger a way in, since it has neither
|
|
104
|
+
* hover nor tab: the card a tap opened keeps its actions out while it is
|
|
105
|
+
* open. It reads the state off the group rather than its own card box, so
|
|
106
|
+
* the pair stays in one class string.
|
|
89
107
|
*/
|
|
90
|
-
const HOVER_ACTIONS_CLASS = "absolute end-1.5 top-1.5 z-10 flex items-center gap-0.5 opacity-0 transition-opacity group-hover/card:opacity-100 focus-within:opacity-100 has-[[aria-expanded=true]]:opacity-100 motion-reduce:transition-none
|
|
108
|
+
const HOVER_ACTIONS_CLASS = "absolute end-1.5 top-1.5 z-10 flex items-center gap-0.5 opacity-0 pointer-events-none transition-opacity group-hover/card:pointer-events-auto group-hover/card:opacity-100 group-data-[active=true]/card:pointer-events-auto group-data-[active=true]/card:opacity-100 focus-within:pointer-events-auto focus-within:opacity-100 has-[[aria-expanded=true]]:pointer-events-auto has-[[aria-expanded=true]]:opacity-100 motion-reduce:transition-none";
|
|
91
109
|
//#endregion
|
|
92
110
|
export { KanbanCardShell };
|
|
@@ -31,8 +31,11 @@ type KanbanColumnBandHeaderProps = {
|
|
|
31
31
|
};
|
|
32
32
|
/**
|
|
33
33
|
* The band line above a run of columns: one `KANBAN_BAND_CAPTION_ROW_HEIGHT`
|
|
34
|
-
* row of toggle, swatch, name, and count
|
|
35
|
-
*
|
|
34
|
+
* row of toggle, swatch, name, and count.
|
|
35
|
+
*
|
|
36
|
+
* The line carries the chrome row height and sets its name a step heavier than
|
|
37
|
+
* a column title, because the band names the columns under it: a smaller label
|
|
38
|
+
* on a shorter line read as subordinate to the very columns it groups.
|
|
36
39
|
* Folded, only the toggle remains in this line; the band's name moves down
|
|
37
40
|
* into the narrow column body, where the height is already there.
|
|
38
41
|
*/
|
|
@@ -1,39 +1,42 @@
|
|
|
1
1
|
import { cn } from "../lib/utils.js";
|
|
2
2
|
import { DirectionalIcon } from "../components/directional-icon.js";
|
|
3
|
-
import "./layout-tokens.js";
|
|
3
|
+
import { KANBAN_CHROME_TOGGLE_COARSE_TARGET_CLASS } from "./layout-tokens.js";
|
|
4
4
|
import { ChevronDownIcon } from "lucide-react";
|
|
5
5
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
6
6
|
//#region src/kanban/column-band-header.tsx
|
|
7
7
|
/**
|
|
8
8
|
* The band line above a run of columns: one `KANBAN_BAND_CAPTION_ROW_HEIGHT`
|
|
9
|
-
* row of toggle, swatch, name, and count
|
|
10
|
-
*
|
|
9
|
+
* row of toggle, swatch, name, and count.
|
|
10
|
+
*
|
|
11
|
+
* The line carries the chrome row height and sets its name a step heavier than
|
|
12
|
+
* a column title, because the band names the columns under it: a smaller label
|
|
13
|
+
* on a shorter line read as subordinate to the very columns it groups.
|
|
11
14
|
* Folded, only the toggle remains in this line; the band's name moves down
|
|
12
15
|
* into the narrow column body, where the height is already there.
|
|
13
16
|
*/
|
|
14
17
|
const KanbanColumnBandHeader = ({ title, swatch, meta, collapsed, compact = collapsed, toggleLabel, onCollapsedChange, actions }) => /* @__PURE__ */ jsxs("div", {
|
|
15
|
-
className: cn("flex items-center gap-1", "h-
|
|
18
|
+
className: cn("flex items-center gap-1", "h-9", compact ? "justify-center" : "pe-1"),
|
|
16
19
|
"data-collapsed": collapsed ? "" : void 0,
|
|
17
20
|
"data-compact": compact ? "" : void 0,
|
|
18
21
|
"data-slot": "kanban-column-band-header",
|
|
19
22
|
children: [/* @__PURE__ */ jsx("button", {
|
|
20
23
|
"aria-expanded": !collapsed,
|
|
21
24
|
"aria-label": toggleLabel,
|
|
22
|
-
className: "hover:bg-muted/60 text-muted-foreground hover:text-foreground flex size-
|
|
25
|
+
className: cn("hover:bg-muted/60 text-muted-foreground hover:text-foreground flex size-7 shrink-0 items-center justify-center rounded-md transition-[background-color]", KANBAN_CHROME_TOGGLE_COARSE_TARGET_CLASS),
|
|
23
26
|
onClick: (event) => onCollapsedChange(!collapsed, { viaPointer: event.detail > 0 }),
|
|
24
27
|
title: toggleLabel,
|
|
25
28
|
type: "button",
|
|
26
29
|
children: /* @__PURE__ */ jsx(DirectionalIcon, {
|
|
27
|
-
className: cn("size-
|
|
30
|
+
className: cn("size-4 transition-transform", collapsed && "-rotate-90"),
|
|
28
31
|
flip: collapsed,
|
|
29
32
|
icon: ChevronDownIcon
|
|
30
33
|
})
|
|
31
34
|
}), compact ? null : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
32
35
|
swatch,
|
|
33
36
|
/* @__PURE__ */ jsxs("span", {
|
|
34
|
-
className: "flex min-w-0 flex-1 items-baseline gap-1.5 truncate text-
|
|
37
|
+
className: "flex min-w-0 flex-1 items-baseline gap-1.5 truncate text-sm font-semibold",
|
|
35
38
|
children: [title, meta !== void 0 && /* @__PURE__ */ jsx("span", {
|
|
36
|
-
className: "text-muted-foreground font-normal tabular-nums",
|
|
39
|
+
className: "text-muted-foreground text-xs font-normal tabular-nums",
|
|
37
40
|
children: meta
|
|
38
41
|
})]
|
|
39
42
|
}),
|
|
@@ -14,13 +14,19 @@ import { jsx, jsxs } from "react/jsx-runtime";
|
|
|
14
14
|
const KanbanColumnHeader = ({ swatch, title, meta, calculation, dragHandle, actions, className }) => /* @__PURE__ */ jsxs("div", {
|
|
15
15
|
className: cn("flex items-center gap-2 px-3", "h-9", className),
|
|
16
16
|
children: [
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
children:
|
|
23
|
-
|
|
17
|
+
/* @__PURE__ */ jsx("div", {
|
|
18
|
+
className: "flex min-w-0 flex-1",
|
|
19
|
+
children: /* @__PURE__ */ jsxs("div", {
|
|
20
|
+
className: "sticky start-0 z-10 flex w-fit max-w-full items-center gap-2 bg-inherit",
|
|
21
|
+
"data-kanban-column-title": "",
|
|
22
|
+
children: [swatch, /* @__PURE__ */ jsxs("span", {
|
|
23
|
+
className: "flex min-w-0 flex-1 items-center gap-1.5 truncate",
|
|
24
|
+
children: [title, meta !== void 0 && /* @__PURE__ */ jsx("span", {
|
|
25
|
+
className: "text-muted-foreground text-xs",
|
|
26
|
+
children: meta
|
|
27
|
+
})]
|
|
28
|
+
})]
|
|
29
|
+
})
|
|
24
30
|
}),
|
|
25
31
|
calculation,
|
|
26
32
|
dragHandle,
|
package/dist/kanban/grouping.js
CHANGED
|
@@ -1,4 +1,15 @@
|
|
|
1
|
+
import { panic } from "better-result";
|
|
1
2
|
//#region src/kanban/grouping.ts
|
|
3
|
+
/**
|
|
4
|
+
* Kanban grouping: which columns a board has, and which rows may appear on it.
|
|
5
|
+
*
|
|
6
|
+
* The module never inspects a row. A caller describes its board with a
|
|
7
|
+
* `KanbanSchema`: the properties a board may group by, plus the built-in group
|
|
8
|
+
* resolvers for columns that do not come from a property (a status enum, a kind
|
|
9
|
+
* enum). The column list, the uncategorized bucket, and the row scope all
|
|
10
|
+
* derive from that description, so grouping has no opinion about what is being
|
|
11
|
+
* grouped.
|
|
12
|
+
*/
|
|
2
13
|
/** Resolve a stored group-by id against a schema. */
|
|
3
14
|
const resolveKanbanGrouping = ({ groupBy, schema }) => {
|
|
4
15
|
if (groupBy === "") return { type: "none" };
|
|
@@ -22,7 +33,7 @@ const getKanbanGroupingPropertyId = (grouping) => {
|
|
|
22
33
|
case "none": return null;
|
|
23
34
|
case "built-in":
|
|
24
35
|
case "property": return grouping.propertyId;
|
|
25
|
-
default: return grouping;
|
|
36
|
+
default: return panic(`Unhandled grouping: ${String(grouping)}`);
|
|
26
37
|
}
|
|
27
38
|
};
|
|
28
39
|
/**
|
|
@@ -36,7 +47,7 @@ const isKanbanGroupingRenderable = (grouping) => {
|
|
|
36
47
|
case "none": return false;
|
|
37
48
|
case "built-in": return grouping.group.options.length > 0;
|
|
38
49
|
case "property": return true;
|
|
39
|
-
default: return grouping;
|
|
50
|
+
default: return panic(`Unhandled grouping: ${String(grouping)}`);
|
|
40
51
|
}
|
|
41
52
|
};
|
|
42
53
|
/** The rows a grouping can place on the board, in their incoming order. */
|
|
@@ -45,7 +56,7 @@ const selectKanbanRows = (rows, grouping) => {
|
|
|
45
56
|
case "none": return [];
|
|
46
57
|
case "built-in": return grouping.group.selectRows ? grouping.group.selectRows(rows) : [...rows];
|
|
47
58
|
case "property": return [...rows];
|
|
48
|
-
default: return grouping;
|
|
59
|
+
default: return panic(`Unhandled grouping: ${String(grouping)}`);
|
|
49
60
|
}
|
|
50
61
|
};
|
|
51
62
|
/** The static column options for a grouping, excluding uncategorized. */
|
|
@@ -54,7 +65,7 @@ const resolveKanbanGroupOptions = (grouping) => {
|
|
|
54
65
|
case "none": return [];
|
|
55
66
|
case "built-in": return grouping.group.options;
|
|
56
67
|
case "property": return grouping.options;
|
|
57
|
-
default: return grouping;
|
|
68
|
+
default: return panic(`Unhandled grouping: ${String(grouping)}`);
|
|
58
69
|
}
|
|
59
70
|
};
|
|
60
71
|
/** Append the uncategorized bucket (null value) after the options. */
|
|
@@ -9,6 +9,14 @@
|
|
|
9
9
|
* rows on a single rhythm and keeps the pixel value that offsets a sticky
|
|
10
10
|
* control in step with the class that draws the row.
|
|
11
11
|
*/
|
|
12
|
+
/**
|
|
13
|
+
* Where the board's chrome stacks: its header block at `z-20`, a lane's own
|
|
14
|
+
* row at `z-10` under it. Both stay below the shell's chrome
|
|
15
|
+
* (`SHELL_CHROME_LAYER_CLASS_NAME`), which pins a top bar around whatever the
|
|
16
|
+
* board is rendered in: when the shell's content column rather than the board
|
|
17
|
+
* is the scroll container, board and shell chrome are pinned in the same
|
|
18
|
+
* scroller, and equal z-indexes would leave paint order to decide.
|
|
19
|
+
*/
|
|
12
20
|
/**
|
|
13
21
|
* The column header row and a lane's rows: a *fixed* height, tighter than the
|
|
14
22
|
* inspector's 48px toolbar row, because a board shows three of these before
|
|
@@ -18,11 +26,26 @@
|
|
|
18
26
|
declare const KANBAN_CHROME_ROW_HEIGHT: "h-9";
|
|
19
27
|
declare const KANBAN_CHROME_ROW_HEIGHT_PX: 36;
|
|
20
28
|
/**
|
|
21
|
-
* The band caption line,
|
|
22
|
-
*
|
|
23
|
-
*
|
|
29
|
+
* The band caption line, on the chrome row height like everything else: a band
|
|
30
|
+
* names the run of columns under it, so its caption reads as their parent. A
|
|
31
|
+
* shorter line with a smaller label read as a note *about* the header row, and
|
|
32
|
+
* left a group looking subordinate to its own columns.
|
|
33
|
+
*
|
|
34
|
+
* Still named for the caption, because that row is the one a caller composes
|
|
35
|
+
* against when it renders a band header of its own.
|
|
36
|
+
*/
|
|
37
|
+
declare const KANBAN_BAND_CAPTION_ROW_HEIGHT: "h-9";
|
|
38
|
+
declare const KANBAN_BAND_CAPTION_ROW_HEIGHT_PX: 36;
|
|
39
|
+
/**
|
|
40
|
+
* A finger's 44px target on a control the chrome row keeps at its own height.
|
|
41
|
+
*
|
|
42
|
+
* The same pseudo-element the shared `Button` extends its own targets with:
|
|
43
|
+
* the visible control keeps the row's height, and only the touch surface
|
|
44
|
+
* grows. The surface is a fixed 44px centred on the control rather than an
|
|
45
|
+
* inset off its edges, so a 28px toggle and a 36px one both reach the same
|
|
46
|
+
* distance either way, and neither spills into the row underneath: an inset
|
|
47
|
+
* grows a short control downwards by whatever it is short by.
|
|
24
48
|
*/
|
|
25
|
-
declare const
|
|
26
|
-
declare const KANBAN_BAND_CAPTION_ROW_HEIGHT_PX: 28;
|
|
49
|
+
declare const KANBAN_CHROME_TOGGLE_COARSE_TARGET_CLASS = "relative pointer-coarse:after:absolute pointer-coarse:after:inset-x-0 pointer-coarse:after:top-1/2 pointer-coarse:after:h-11 pointer-coarse:after:-translate-y-1/2";
|
|
27
50
|
//#endregion
|
|
28
|
-
export { KANBAN_BAND_CAPTION_ROW_HEIGHT, KANBAN_BAND_CAPTION_ROW_HEIGHT_PX, KANBAN_CHROME_ROW_HEIGHT, KANBAN_CHROME_ROW_HEIGHT_PX };
|
|
51
|
+
export { KANBAN_BAND_CAPTION_ROW_HEIGHT, KANBAN_BAND_CAPTION_ROW_HEIGHT_PX, KANBAN_CHROME_ROW_HEIGHT, KANBAN_CHROME_ROW_HEIGHT_PX, KANBAN_CHROME_TOGGLE_COARSE_TARGET_CLASS };
|
|
@@ -10,6 +10,14 @@
|
|
|
10
10
|
* control in step with the class that draws the row.
|
|
11
11
|
*/
|
|
12
12
|
/**
|
|
13
|
+
* Where the board's chrome stacks: its header block at `z-20`, a lane's own
|
|
14
|
+
* row at `z-10` under it. Both stay below the shell's chrome
|
|
15
|
+
* (`SHELL_CHROME_LAYER_CLASS_NAME`), which pins a top bar around whatever the
|
|
16
|
+
* board is rendered in: when the shell's content column rather than the board
|
|
17
|
+
* is the scroll container, board and shell chrome are pinned in the same
|
|
18
|
+
* scroller, and equal z-indexes would leave paint order to decide.
|
|
19
|
+
*/
|
|
20
|
+
/**
|
|
13
21
|
* The column header row and a lane's rows: a *fixed* height, tighter than the
|
|
14
22
|
* inspector's 48px toolbar row, because a board shows three of these before
|
|
15
23
|
* the first card and each one costs the cards their space. Fixed rather than
|
|
@@ -18,11 +26,26 @@
|
|
|
18
26
|
const KANBAN_CHROME_ROW_HEIGHT = "h-9";
|
|
19
27
|
const KANBAN_CHROME_ROW_HEIGHT_PX = 36;
|
|
20
28
|
/**
|
|
21
|
-
* The band caption line,
|
|
22
|
-
*
|
|
23
|
-
*
|
|
29
|
+
* The band caption line, on the chrome row height like everything else: a band
|
|
30
|
+
* names the run of columns under it, so its caption reads as their parent. A
|
|
31
|
+
* shorter line with a smaller label read as a note *about* the header row, and
|
|
32
|
+
* left a group looking subordinate to its own columns.
|
|
33
|
+
*
|
|
34
|
+
* Still named for the caption, because that row is the one a caller composes
|
|
35
|
+
* against when it renders a band header of its own.
|
|
36
|
+
*/
|
|
37
|
+
const KANBAN_BAND_CAPTION_ROW_HEIGHT = "h-9";
|
|
38
|
+
const KANBAN_BAND_CAPTION_ROW_HEIGHT_PX = 36;
|
|
39
|
+
/**
|
|
40
|
+
* A finger's 44px target on a control the chrome row keeps at its own height.
|
|
41
|
+
*
|
|
42
|
+
* The same pseudo-element the shared `Button` extends its own targets with:
|
|
43
|
+
* the visible control keeps the row's height, and only the touch surface
|
|
44
|
+
* grows. The surface is a fixed 44px centred on the control rather than an
|
|
45
|
+
* inset off its edges, so a 28px toggle and a 36px one both reach the same
|
|
46
|
+
* distance either way, and neither spills into the row underneath: an inset
|
|
47
|
+
* grows a short control downwards by whatever it is short by.
|
|
24
48
|
*/
|
|
25
|
-
const
|
|
26
|
-
const KANBAN_BAND_CAPTION_ROW_HEIGHT_PX = 28;
|
|
49
|
+
const KANBAN_CHROME_TOGGLE_COARSE_TARGET_CLASS = "relative pointer-coarse:after:absolute pointer-coarse:after:inset-x-0 pointer-coarse:after:top-1/2 pointer-coarse:after:h-11 pointer-coarse:after:-translate-y-1/2";
|
|
27
50
|
//#endregion
|
|
28
|
-
export { KANBAN_BAND_CAPTION_ROW_HEIGHT, KANBAN_BAND_CAPTION_ROW_HEIGHT_PX, KANBAN_CHROME_ROW_HEIGHT, KANBAN_CHROME_ROW_HEIGHT_PX };
|
|
51
|
+
export { KANBAN_BAND_CAPTION_ROW_HEIGHT, KANBAN_BAND_CAPTION_ROW_HEIGHT_PX, KANBAN_CHROME_ROW_HEIGHT, KANBAN_CHROME_ROW_HEIGHT_PX, KANBAN_CHROME_TOGGLE_COARSE_TARGET_CLASS };
|
|
@@ -59,7 +59,7 @@ const KanbanCollapsedBandCaption = ({ className, label, meta }) => /* @__PURE__
|
|
|
59
59
|
className: cn("text-muted-foreground sticky flex w-full flex-col items-center gap-2 self-start py-2 text-xs", KANBAN_STICKY_TOP_CLASS, className),
|
|
60
60
|
"data-kanban-collapsed-band-caption": "",
|
|
61
61
|
children: [/* @__PURE__ */ jsx("span", {
|
|
62
|
-
className: "max-h-40 truncate font-
|
|
62
|
+
className: "max-h-40 truncate font-semibold [writing-mode:vertical-rl]",
|
|
63
63
|
children: label
|
|
64
64
|
}), /* @__PURE__ */ jsx("span", {
|
|
65
65
|
className: "tabular-nums",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { cn } from "../lib/utils.js";
|
|
2
2
|
import { DirectionalIcon } from "../components/directional-icon.js";
|
|
3
3
|
import { KANBAN_STICKY_TOP_CLASS, KANBAN_STICKY_TOP_VAR, KanbanCollapsedBandCaption } from "./sticky-lane.js";
|
|
4
|
-
import "./layout-tokens.js";
|
|
4
|
+
import { KANBAN_CHROME_TOGGLE_COARSE_TARGET_CLASS } from "./layout-tokens.js";
|
|
5
5
|
import { KanbanColumnBandHeader } from "./column-band-header.js";
|
|
6
6
|
import { KANBAN_COLLAPSED_BAND_WIDTH_CLASS, KANBAN_COLUMN_WIDTH_CLASS, resolveKanbanColumnBands } from "./column-bands.js";
|
|
7
7
|
import { KANBAN_CARD_DRAG_MIME } from "./drag-interactions.js";
|
|
@@ -21,17 +21,6 @@ import { useEffect, useMemo, useRef, useState } from "react";
|
|
|
21
21
|
* to be.
|
|
22
22
|
*/
|
|
23
23
|
const LANE_ROW_HEIGHT_PX = 72;
|
|
24
|
-
/**
|
|
25
|
-
* A finger's 44px target on a toggle the chrome row keeps at 36px.
|
|
26
|
-
*
|
|
27
|
-
* The same pseudo-element the shared `Button` extends its own targets with:
|
|
28
|
-
* the visible control keeps the row's height, and only the touch surface
|
|
29
|
-
* grows. It grows evenly above and below rather than downwards, so the extra
|
|
30
|
-
* reach stops well short of the controls a caller renders in the summaries
|
|
31
|
-
* under it — those sit at the far end of their own column, not under the
|
|
32
|
-
* lane's name.
|
|
33
|
-
*/
|
|
34
|
-
const LANE_TOGGLE_COARSE_TARGET_CLASS = "relative pointer-coarse:after:absolute pointer-coarse:after:inset-x-0 pointer-coarse:after:-inset-y-1 pointer-coarse:after:min-h-11";
|
|
35
24
|
const groupValueKey = (value) => value === null ? "null" : `value:${value.length}:${value}`;
|
|
36
25
|
const columnKey = (column) => column.type === "group" ? `group:${groupValueKey(column.group.value)}` : `destination:${column.destination.id}`;
|
|
37
26
|
const spanKey = (span) => span.band === null ? `single:${span.columns.map(columnKey).join("|")}` : `band:${span.band.id}`;
|
|
@@ -361,10 +350,11 @@ const KanbanSubgroupBoard = ({ matrix, renderColumnHeader, renderLaneIdentity, r
|
|
|
361
350
|
className: cn("bg-background sticky z-10", KANBAN_STICKY_TOP_CLASS),
|
|
362
351
|
"data-kanban-lane-row": "",
|
|
363
352
|
children: [/* @__PURE__ */ jsx("div", {
|
|
364
|
-
className: cn("sticky start-0 flex w-fit items-center", "h-9"),
|
|
353
|
+
className: cn("bg-background sticky start-0 z-10 flex w-fit items-center", "h-9"),
|
|
354
|
+
"data-kanban-lane-identity": "",
|
|
365
355
|
children: /* @__PURE__ */ jsxs("button", {
|
|
366
356
|
"aria-expanded": !collapsed,
|
|
367
|
-
className: cn("hover:bg-muted/60 flex items-center gap-2 rounded-lg px-2 text-start transition-[background-color]", "h-9",
|
|
357
|
+
className: cn("hover:bg-muted/60 flex items-center gap-2 rounded-lg px-2 text-start transition-[background-color]", "h-9", KANBAN_CHROME_TOGGLE_COARSE_TARGET_CLASS),
|
|
368
358
|
onClick: () => setLaneCollapsed(group, count, !collapsed),
|
|
369
359
|
type: "button",
|
|
370
360
|
children: [
|
|
@@ -5,6 +5,6 @@ declare const CONTROL_SIZE: Readonly<{
|
|
|
5
5
|
readonly lg: "lg";
|
|
6
6
|
}>;
|
|
7
7
|
type ControlSize = (typeof CONTROL_SIZE)[keyof typeof CONTROL_SIZE];
|
|
8
|
-
declare const CONTROL_SIZES: readonly ("
|
|
8
|
+
declare const CONTROL_SIZES: readonly ("sm" | "default" | "lg")[];
|
|
9
9
|
//#endregion
|
|
10
10
|
export { CONTROL_SIZE, CONTROL_SIZES, type ControlSize };
|
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
//#region src/lib/overlay-layer.d.ts
|
|
2
2
|
declare const BOARD_DRAG_OVERLAY_Z_INDEX = 75;
|
|
3
|
+
/**
|
|
4
|
+
* The shell's own sticky chrome: its top bar, and anything else the shell pins
|
|
5
|
+
* around a view.
|
|
6
|
+
*
|
|
7
|
+
* Not part of the ladder below, which is for portalled surfaces: this one
|
|
8
|
+
* stays in flow, so it only ever competes with the sticky chrome a view paints
|
|
9
|
+
* inside the shell's scroller. A kanban board pins its header at z-20 and a
|
|
10
|
+
* lane's row at z-10, and when the shell's content column (not the board) is
|
|
11
|
+
* the scroll container the two tie and paint order decides which one wins.
|
|
12
|
+
* Stated one step above that, and far below every portalled surface here,
|
|
13
|
+
* which must still cover the shell.
|
|
14
|
+
*/
|
|
15
|
+
declare const SHELL_CHROME_LAYER_CLASS_NAME = "z-30";
|
|
3
16
|
declare const OVERLAY_LAYER_CLASS_NAMES: {
|
|
4
17
|
/** Docked composer, suggestion chips, and other in-pane floating chrome. */
|
|
5
18
|
readonly chrome: "z-[80]";
|
|
@@ -27,4 +40,4 @@ type OverlayLayer = keyof typeof OVERLAY_LAYER_CLASS_NAMES;
|
|
|
27
40
|
*/
|
|
28
41
|
declare const OVERLAY_COLLISION_PADDING = 8;
|
|
29
42
|
//#endregion
|
|
30
|
-
export { BOARD_DRAG_OVERLAY_Z_INDEX, OVERLAY_COLLISION_PADDING, OVERLAY_LAYER_CLASS_NAMES, OverlayLayer };
|
|
43
|
+
export { BOARD_DRAG_OVERLAY_Z_INDEX, OVERLAY_COLLISION_PADDING, OVERLAY_LAYER_CLASS_NAMES, OverlayLayer, SHELL_CHROME_LAYER_CLASS_NAME };
|
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
//#region src/lib/overlay-layer.ts
|
|
2
2
|
const BOARD_DRAG_OVERLAY_Z_INDEX = 75;
|
|
3
|
+
/**
|
|
4
|
+
* The shell's own sticky chrome: its top bar, and anything else the shell pins
|
|
5
|
+
* around a view.
|
|
6
|
+
*
|
|
7
|
+
* Not part of the ladder below, which is for portalled surfaces: this one
|
|
8
|
+
* stays in flow, so it only ever competes with the sticky chrome a view paints
|
|
9
|
+
* inside the shell's scroller. A kanban board pins its header at z-20 and a
|
|
10
|
+
* lane's row at z-10, and when the shell's content column (not the board) is
|
|
11
|
+
* the scroll container the two tie and paint order decides which one wins.
|
|
12
|
+
* Stated one step above that, and far below every portalled surface here,
|
|
13
|
+
* which must still cover the shell.
|
|
14
|
+
*/
|
|
15
|
+
const SHELL_CHROME_LAYER_CLASS_NAME = "z-30";
|
|
3
16
|
const OVERLAY_LAYER_CLASS_NAMES = {
|
|
4
17
|
/** Docked composer, suggestion chips, and other in-pane floating chrome. */
|
|
5
18
|
chrome: "z-[80]",
|
|
@@ -26,4 +39,4 @@ const OVERLAY_LAYER_CLASS_NAMES = {
|
|
|
26
39
|
*/
|
|
27
40
|
const OVERLAY_COLLISION_PADDING = 8;
|
|
28
41
|
//#endregion
|
|
29
|
-
export { BOARD_DRAG_OVERLAY_Z_INDEX, OVERLAY_COLLISION_PADDING, OVERLAY_LAYER_CLASS_NAMES };
|
|
42
|
+
export { BOARD_DRAG_OVERLAY_Z_INDEX, OVERLAY_COLLISION_PADDING, OVERLAY_LAYER_CLASS_NAMES, SHELL_CHROME_LAYER_CLASS_NAME };
|
|
@@ -2,6 +2,7 @@ import { cn } from "../lib/utils.js";
|
|
|
2
2
|
import { Button } from "../components/button.js";
|
|
3
3
|
import { CheckIcon, RotateCcwIcon, XIcon } from "lucide-react";
|
|
4
4
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
+
import { panic } from "better-result";
|
|
5
6
|
//#region src/review/review-decision-actions.tsx
|
|
6
7
|
/** Accept / reject / revert / reopen, in one shape, for every review surface. */
|
|
7
8
|
const ReviewDecisionActions = ({ state, onAccept, onReject, onRevert, onReopen, size = "sm", acceptLabel, rejectLabel, revertLabel, reopenLabel, acceptTooltip, rejectTooltip, disabled = false, className }) => {
|
|
@@ -67,7 +68,7 @@ const renderControls = ({ acceptLabel, acceptTooltip, disabled, onAccept, onReje
|
|
|
67
68
|
variant: "ghost",
|
|
68
69
|
children: /* @__PURE__ */ jsx(RotateCcwIcon, {})
|
|
69
70
|
})] });
|
|
70
|
-
default: return
|
|
71
|
+
default: return panic(`Unhandled state: ${String(state)}`);
|
|
71
72
|
}
|
|
72
73
|
};
|
|
73
74
|
//#endregion
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { cn } from "../lib/utils.js";
|
|
2
2
|
import { jsx } from "react/jsx-runtime";
|
|
3
|
+
import { panic } from "better-result";
|
|
3
4
|
//#region src/review/review-diff-text.tsx
|
|
4
5
|
const TRACKED_DELETION_STYLE = {
|
|
5
6
|
color: "color-mix(in oklch, var(--destructive) 35%, var(--muted-foreground))",
|
|
@@ -60,7 +61,7 @@ const ReviewDiffSegmentSpan = ({ segment }) => {
|
|
|
60
61
|
case "equal": return /* @__PURE__ */ jsx("span", { children: segment.text });
|
|
61
62
|
default:
|
|
62
63
|
segment.type;
|
|
63
|
-
return
|
|
64
|
+
return panic(`Unhandled type: ${String(segment.type)}`);
|
|
64
65
|
}
|
|
65
66
|
};
|
|
66
67
|
//#endregion
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stll/ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.25.1",
|
|
4
4
|
"description": "Stella's design system: bidi-aware React primitives built on Base UI, the dockable inspector pane, and the Tailwind v4 theme they are styled with.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"base-ui",
|
|
@@ -581,7 +581,7 @@
|
|
|
581
581
|
"typecheck": "bun ../../packages/scripts/src/tsc-native.ts --noEmit",
|
|
582
582
|
"lint": "cd ../.. && bun --bun oxlint -c oxlint.config.ts --report-unused-disable-directives-severity=error --deny-warnings --type-aware packages/ui",
|
|
583
583
|
"lint:fix": "cd ../.. && bun --bun oxlint -c oxlint.config.ts --type-aware --fix packages/ui",
|
|
584
|
-
"format": "oxfmt .",
|
|
584
|
+
"format": "bun ../../scripts/run-oxfmt.ts .",
|
|
585
585
|
"prepack": "bun run build"
|
|
586
586
|
},
|
|
587
587
|
"dependencies": {
|
|
@@ -604,7 +604,7 @@
|
|
|
604
604
|
"@tanstack/react-virtual": "^3.14.10",
|
|
605
605
|
"@types/react": "^19.2.17",
|
|
606
606
|
"@types/react-dom": "^19.2.3",
|
|
607
|
-
"bun-types": "1.4.
|
|
607
|
+
"bun-types": "1.4.2",
|
|
608
608
|
"react": "^19.2.8",
|
|
609
609
|
"react-dom": "^19.2.8",
|
|
610
610
|
"tailwindcss": "4.3.3",
|