@humain/ui 2.2.2 → 2.2.3
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/templates/AppShell/AppShell.d.ts +4 -2
- package/dist/components/templates/AppShell/index.d.ts +1 -1
- package/dist/components/templates/AppSidebar/AppSidebar.constants.d.ts +4 -0
- package/dist/components/templates/AppSidebar/AppSidebar.d.ts +1 -0
- package/dist/index.js +19 -18
- package/dist/index217.js +6 -24
- package/dist/index217.js.map +1 -1
- package/dist/index218.js +20 -23
- package/dist/index218.js.map +1 -1
- package/dist/index219.js +20 -95
- package/dist/index219.js.map +1 -1
- package/dist/index220.js +92 -88
- package/dist/index220.js.map +1 -1
- package/dist/index221.js +97 -29
- package/dist/index221.js.map +1 -1
- package/dist/index222.js +24 -470
- package/dist/index222.js.map +1 -1
- package/dist/index223.js +450 -196
- package/dist/index223.js.map +1 -1
- package/dist/index224.js +199 -754
- package/dist/index224.js.map +1 -1
- package/dist/index225.js +777 -61
- package/dist/index225.js.map +1 -1
- package/dist/index226.js +58 -181
- package/dist/index226.js.map +1 -1
- package/dist/index227.js +175 -259
- package/dist/index227.js.map +1 -1
- package/dist/index228.js +246 -172
- package/dist/index228.js.map +1 -1
- package/dist/index229.js +195 -32
- package/dist/index229.js.map +1 -1
- package/dist/index230.js +12 -40
- package/dist/index230.js.map +1 -1
- package/dist/index231.js +23 -26
- package/dist/index231.js.map +1 -1
- package/dist/index232.js +45 -22
- package/dist/index232.js.map +1 -1
- package/dist/index233.js +27 -48
- package/dist/index233.js.map +1 -1
- package/dist/index234.js +52 -26
- package/dist/index234.js.map +1 -1
- package/dist/index235.js +40 -225
- package/dist/index235.js.map +1 -1
- package/dist/index236.js +217 -39
- package/dist/index236.js.map +1 -1
- package/dist/index237.js +50 -0
- package/dist/index237.js.map +1 -0
- package/dist/styles.css +1 -1
- package/dist/wc/{sidebar.js → AppSidebar.constants.js} +80 -78
- package/dist/wc/AppSidebar.constants.js.map +1 -0
- package/dist/wc/hf-app-shell.js +346 -343
- package/dist/wc/hf-app-shell.js.map +1 -1
- package/dist/wc/hf-app-sidebar.js +65 -62
- package/dist/wc/hf-app-sidebar.js.map +1 -1
- package/dist/wc-react/{sidebar.js → AppSidebar.constants.js} +89 -87
- package/dist/wc-react/AppSidebar.constants.js.map +1 -0
- package/dist/wc-react/hf-app-shell.js +383 -380
- package/dist/wc-react/hf-app-shell.js.map +1 -1
- package/dist/wc-react/hf-app-sidebar.js +69 -66
- package/dist/wc-react/hf-app-sidebar.js.map +1 -1
- package/package.json +1 -1
- package/skills/humain-ui/SKILL.md +1 -1
- package/skills/humain-ui-wc/SKILL.md +1 -1
- package/skills/humain-ui-wc.skill +0 -0
- package/skills/humain-ui.skill +0 -0
- package/dist/wc/sidebar.js.map +0 -1
- package/dist/wc-react/sidebar.js.map +0 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
+
import { APP_SIDEBAR_COLLAPSED_WIDTH, APP_SIDEBAR_EXPANDED_WIDTH } from '../AppSidebar/AppSidebar.constants';
|
|
2
3
|
import { AppShellContent } from './AppShellContent.js';
|
|
3
4
|
import { AppShellPanel, type AppShellPanelProps } from './AppShellPanel.js';
|
|
4
5
|
export interface AppShellProps extends React.ComponentProps<'div'> {
|
|
@@ -45,7 +46,8 @@ declare namespace AppShellRoot {
|
|
|
45
46
|
}
|
|
46
47
|
export interface AppShellSidebarProps extends React.ComponentProps<'div'> {
|
|
47
48
|
/**
|
|
48
|
-
* Explicit width override — bypasses auto-detection.
|
|
49
|
+
* Explicit width override — bypasses auto-detection. Manual widths are
|
|
50
|
+
* protected by AppSidebar's canonical collapsed width to prevent clipping.
|
|
49
51
|
* When omitted, the sidebar auto-sizes based on the child
|
|
50
52
|
* SidebarProvider's expanded/collapsed state.
|
|
51
53
|
*/
|
|
@@ -97,4 +99,4 @@ declare const AppShell: typeof AppShellRoot & {
|
|
|
97
99
|
};
|
|
98
100
|
export type { AppShellContentProps } from './AppShellContent.js';
|
|
99
101
|
export type { AppShellPanelProps } from './AppShellPanel.js';
|
|
100
|
-
export { AppShell, AppShellContent, AppShellHeader, AppShellPanel, AppShellRoot, AppShellSidebar, appShellBackgrounds, };
|
|
102
|
+
export { APP_SIDEBAR_COLLAPSED_WIDTH, APP_SIDEBAR_EXPANDED_WIDTH, AppShell, AppShellContent, AppShellHeader, AppShellPanel, AppShellRoot, AppShellSidebar, appShellBackgrounds, };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export type { AppShellContentProps, AppShellHeaderProps, AppShellPanelProps, AppShellProps, AppShellSidebarProps, } from './AppShell.js';
|
|
2
|
-
export { AppShell, AppShellContent, AppShellHeader, AppShellPanel, AppShellRoot, AppShellSidebar, appShellBackgrounds, } from './AppShell.js';
|
|
2
|
+
export { APP_SIDEBAR_COLLAPSED_WIDTH, APP_SIDEBAR_EXPANDED_WIDTH, AppShell, AppShellContent, AppShellHeader, AppShellPanel, AppShellRoot, AppShellSidebar, appShellBackgrounds, } from './AppShell.js';
|
|
3
3
|
export type { AppShellContextValue, PanelExpansionInfo, PanelLayoutInfo, PanelPosition, } from './AppShellContext.js';
|
|
4
4
|
export { PanelExpansionContext, PanelIndexContext, PanelLayoutContext, useAppShell, usePanelExpansion, } from './AppShellContext.js';
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/** Canonical expanded width shared by AppSidebar and AppShell.Sidebar. */
|
|
2
|
+
export declare const APP_SIDEBAR_EXPANDED_WIDTH = "280px";
|
|
3
|
+
/** Canonical collapsed width shared by AppSidebar and AppShell.Sidebar. */
|
|
4
|
+
export declare const APP_SIDEBAR_COLLAPSED_WIDTH = "116px";
|
|
@@ -235,5 +235,6 @@ export declare const AppSidebar: typeof AppSidebarRoot & {
|
|
|
235
235
|
Skeleton: typeof AppSidebarSkeleton;
|
|
236
236
|
};
|
|
237
237
|
export { MOBILE_BREAKPOINT, useIsMobile } from '../../../hooks/use-mobile.js';
|
|
238
|
+
export { APP_SIDEBAR_COLLAPSED_WIDTH, APP_SIDEBAR_EXPANDED_WIDTH, } from './AppSidebar.constants';
|
|
238
239
|
export type { AppSidebarAccountProps as AccountProps, AppSidebarChatItemProps as ChatItemProps, AppSidebarChatListProps as ChatListProps, AppSidebarChatListSkeletonProps as ChatListSkeletonProps, AppSidebarNavItemProps as NavItemProps, AppSidebarNavProps as NavProps, AppSidebarNavSectionProps as NavSectionProps, AppSidebarNavSkeletonProps as NavSkeletonProps, AppSidebarNavSubProps as NavSubProps, AppSidebarSkeletonProps as SkeletonProps, AppSidebarSlotProps as SlotProps, };
|
|
239
240
|
export { chatItemVariants, navItemVariants, Sidebar, SidebarAccountSkeleton, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInset, SidebarMenu, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarNavSkeleton, SidebarProvider, SidebarTrigger, useSidebar, };
|
package/dist/index.js
CHANGED
|
@@ -139,21 +139,22 @@ import { Popover as PopoverCompound, PopoverDescription, PopoverHeader, PopoverP
|
|
|
139
139
|
import { Sheet, SheetBackdrop as Backdrop$3, SheetBody as Body$1, SheetClose as Close$2, SheetDescription as Description$3, SheetDivider as Divider, SheetFooter as Footer$3, SheetHeader as Header$3, SheetPopup as Popup$4, SheetPortal as Portal$4, SheetRoot as Root$4, SheetSection as Section, SheetTitle as Title$3, SheetTrigger as Trigger$4, SheetViewport as Viewport$3 } from "./index212.js";
|
|
140
140
|
import { MOBILE_BREAKPOINT, useIsMobile } from "./index215.js";
|
|
141
141
|
import { Sidebar as SidebarCompound, SidebarAccountSkeleton, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInset, SidebarMenu, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarNavSkeleton, SidebarProvider, SidebarTrigger, useSidebar } from "./index216.js";
|
|
142
|
-
import {
|
|
143
|
-
import {
|
|
144
|
-
import {
|
|
145
|
-
import {
|
|
146
|
-
import {
|
|
147
|
-
import {
|
|
148
|
-
import {
|
|
149
|
-
import {
|
|
150
|
-
import {
|
|
151
|
-
import {
|
|
152
|
-
import {
|
|
153
|
-
import {
|
|
154
|
-
import {
|
|
155
|
-
import {
|
|
156
|
-
import {
|
|
157
|
-
import {
|
|
158
|
-
import {
|
|
159
|
-
export { AIAsciiDiagram, AIChart, AIClarificationCard, AICodeBlock, AICodeBlockContent, AICodeBlockHeader, AIComponent, AIContainerCompound as AIContainer, AIContainerContext, AIContextIndicator, AIEmptyState, AIEmptyStateActions, AIEmptyStateDescription, AIEmptyStateIcon, AIEmptyStateRoot, AIEmptyStateSuggestionGrid, AIEmptyStateTitle, AIFeedbackBar, AIFeedbackIcons, AIForm, AIInput, AIInputActionBar, AIInputActions, AIInputAttachButton, AIInputFilePreview, AIInputLeadingIcon, AIInputRoot, AIInputSendButton, AIInputTextArea, AIInteractionContext, AIInteractionProvider, AILoadingDots, AIMermaidDiagram, AIMessage, AIMessageActions, AIMessageAttachmentPreview, AIMessageAttachments, AIMessageAvatar, AIMessageBubble, AIMessageContent, AIMessageCopyButton, AIMessageHeader, AIMessageListButton, AIMessageReactions, AIMessageRoot, AIMessageThumbsDown, AIMessageThumbsUp, AIMessageTypingIndicator, AIPromptSuggestion, AIPromptSuggestionCard, AIPromptSuggestionList, AIPulseText, AIQuickActions, AIReasoningBlock, AIReasoningContent, AIReasoningTrigger, AIResponseStream, AIScrollAnchor, AIScrollButton, AISelect, AISource, AISourceContent, AISourceList, AISourceTrigger, StepIcon as AIStepIcon, AIStepItem, AISteps, AISystemMessage, AISystemMessageBanner, AITable, AITextShimmer, AIThinkingBar, AIThinkingLoader, AIToolCall, AIToolCallHeader, AIToolCallList, AIToolRun, AITypingIndicator, AITypingText, AccordionCompound as Accordion, AccordionCardNamespace as AccordionCard, AccordionCardContent, AccordionCardEdit, AccordionCardHeader, AccordionCardTitle, AccordionCardTrigger, AccordionContent, AccordionItem, AccordionTrigger, ActionButton, ActivityFeed, ActivityFeedItem, AdvancedRating, Alert, AlertDescription, AlertDialog, Action as AlertDialogAction, Backdrop as AlertDialogBackdrop, Cancel as AlertDialogCancel, Description as AlertDialogDescription, Footer as AlertDialogFooter, Header as AlertDialogHeader, Media as AlertDialogMedia, Popup as AlertDialogPopup, Portal as AlertDialogPortal, Root as AlertDialogRoot, Title as AlertDialogTitle, Trigger as AlertDialogTrigger, Viewport as AlertDialogViewport, AlertTitle, AppShell, AppShellCard, AppShellContent, AppShellHeader, AppShellPanel, AppShellRoot, AppShellSidebar, AppSidebar, AreaChart, AuthAsidePanel, AuthPageLayout, Autocomplete, Avatar, AvatarGroup, Badge, BadgeDot, BarChart, BrandIcon, BreadcrumbCompound as Breadcrumb, BreadcrumbEllipsis, BreadcrumbHomeLink, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, Calendar, CalendarActions, CalendarContent, CalendarHeader, CalendarNavigation, CalendarSearch, CalendarTitle, CalendarViewSwitcher, Card, Carousel, CarouselNav, CarouselVisual, ChartCard, ChartLegend, Checkbox, CheckboxGroup, ClearButton, CodeSnippet, Collapsible, CollapsibleContent, CollapsibleTrigger, ComboboxContent, ComboboxGroup, ComboboxHeader, ComboboxItem, ComboboxMenu, ComboboxRoot, ComboboxSeparator, ComboboxShortcut, ComboboxTrigger, CommandMenu, CommandMenuFooter, CommandMenuGroupHeader, CommandMenuItem, CommandMenuPanel, CommandShortcutBadge, CompactActionButton, ContextMenu, CheckboxItem as ContextMenuCheckboxItem, Group as ContextMenuGroup, Item as ContextMenuItem, Label as ContextMenuLabel, Popup$1 as ContextMenuPopup, Portal$1 as ContextMenuPortal, RadioGroup as ContextMenuRadioGroup, RadioItem as ContextMenuRadioItem, Root$1 as ContextMenuRoot, Separator as ContextMenuSeparator, Shortcut as ContextMenuShortcut, Sub as ContextMenuSub, SubPopup as ContextMenuSubPopup, SubTrigger as ContextMenuSubTrigger, Trigger$1 as ContextMenuTrigger, CountdownTimer, DEFAULT_CHART_COLORS, DEFAULT_DONUT_COLORS, DEFAULT_PIE_COLORS, DataTable, DataTableActionsCell, DataTableAvatarCell, DataTableBadgesCell, DataTableCell, DataTableCellRoot, DataTableProgressCell, DataTableRatingCell, DataTableSparklineCell, DataTableSwitchCell, DataTableTextCell, DataTableToolbar, DataTableTrendCell, DateFilterButton, DatePicker, DateRangeFilterButton, DateRangePicker, Dialog, Action$1 as DialogAction, Backdrop$1 as DialogBackdrop, Body as DialogBody, Cancel$1 as DialogCancel, Close as DialogClose, Description$1 as DialogDescription, Footer$1 as DialogFooter, Header$1 as DialogHeader, HeaderContent as DialogHeaderContent, Icon as DialogIcon, Popup$2 as DialogPopup, Portal$2 as DialogPortal, Root$2 as DialogRoot, Title$1 as DialogTitle, Trigger$2 as DialogTrigger, Viewport$1 as DialogViewport, DisplayValue, DonutChart, Dot, DotCircleSpinner, Drawer, Backdrop$2 as DrawerBackdrop, Close$1 as DrawerClose, Description$2 as DrawerDescription, Footer$2 as DrawerFooter, Handle as DrawerHandle, Header$2 as DrawerHeader, Popup$3 as DrawerPopup, Portal$3 as DrawerPortal, Root$3 as DrawerRoot, Title$2 as DrawerTitle, Trigger$3 as DrawerTrigger, Viewport$2 as DrawerViewport, DropdownMenu, EmptyState, EmptyStateBackgroundPattern, EmptyStateIllustration, FadeText, FeaturedIcon, FeedbackButton, Field, FieldBottom, FieldBottomRight, FieldControl, FieldDescription, FieldError, FieldLabel, FieldTop, FieldTopRight, Fieldset, FileInput, FileTypeIcon, FileUpload, FileUploadArea, FileUploadItem, FooterNavIcon, FooterNavText, ForgotPasswordPage, Form, GroupingControls, History, HistoryValue, HorizontalBarChart, HoverCardCompound as HoverCard, HoverCardPopup, HoverCardTrigger, ICONS, InlineCTA, Input, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, Item$1 as Item, KIND_TO_FILE, Kbd, KbdGroup, LineChart, LineSimpleSpinner, LineSpinner, LoadingIndicator, LoginPage, MAC_KEYS, MOBILE_BREAKPOINT, MetricCard, MetricChange, MetricItem, MetricMiniChart, NavAccountMenu, NavAccountMenuAccount, NavAccountMenuContent, NavAccountMenuFooter, NavAccountMenuHeader, NavAccountMenuItem, NavAccountMenuSection, NavAccountMenuSeparator, NavAccountMenuThemeSwitch, NavAccountMenuTrigger, NotificationPanel, NotificationPanelItem, NotificationSection, NumberInput, PageBackground, PageHeader, Pagination, PaginationDots, PanelExpansionContext, PanelIndexContext, PanelLayoutContext, PieChart, PopoverCompound as Popover, PopoverDescription, PopoverHeader, PopoverPopup, PopoverRoot, PopoverTitle, PopoverTrigger, Progress, RadarChart, RadialChart, RadioGroup$1 as RadioGroup, Rating, RegisterPage, ResetPasswordPage, ResizableHandle, ResizablePanel, ResizablePanelGroup, RichTextarea, RichTextareaToolbar, SIZE_MAP, ScrollArea, ScrollBar, SectionHeader, Select, SelectCompound, SelectGroup, SelectGroupLabel, SelectItem, SelectPopup, SelectRoot, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectTriggerIcon, SelectValue, Separator$1 as Separator, Sheet, Backdrop$3 as SheetBackdrop, Body$1 as SheetBody, Close$2 as SheetClose, Description$3 as SheetDescription, Divider as SheetDivider, Footer$3 as SheetFooter, Header$3 as SheetHeader, Popup$4 as SheetPopup, Portal$4 as SheetPortal, Root$4 as SheetRoot, Section as SheetSection, Title$3 as SheetTitle, Trigger$4 as SheetTrigger, Viewport$3 as SheetViewport, Shortcut$1 as Shortcut, SidebarCompound as Sidebar, SidebarAccountSkeleton, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInset, SidebarMenu, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarNavSkeleton, SidebarProvider, SidebarTrigger, Skeleton, Slider, SliderBase, SonnerItem, SortableHeader, SourceFavicon, SparklineChart, StatusIcon, StepsCompound as Steps, StepsItem, StepsSubtext, SubmitButton, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsIndicator, TabsList, TabsTrigger, TabsTriggerWithCount, Textarea, ThemeProvider, ThemeScript, ThinkingIndicator, TimePicker, ToastContent, Toaster, Toggle, ToggleGroup, ToggleGroupItem, ToolCallSection, ToolbarButton, ToolbarDivider, TooltipCompound as Tooltip, TooltipAvatar, TooltipBadge, TooltipContent, TooltipIcon, TooltipImage, TooltipPopup, TooltipProvider, TooltipRoot, TooltipSubtitle, TooltipTitle, TooltipTrigger, TwoFactorAuthenticationPage, TypewriterText, VerifyEmailPage as VerifyEmail, VerifyEmailPage, WIN_KEYS, WorkflowAddNode, WorkflowCircleNode, WorkflowComment, WorkflowConnection, WorkflowNode, WorkflowPort, activityFeedVariants, activityItemVariants, stepIconVariants as aiStepIconVariants, stepItemVariants as aiStepItemVariants, stepsContainerVariants as aiStepsContainerVariants, alertVariants, analyzePaste, appShellBackgrounds, areaChartVariants, arrowVariants, asciiDiagramVariants, asciiToSvg, badgeVariants, bannerVariants, barChartVariants, breadcrumbItemVariants, buttonVariants, chatItemVariants, cn, codeBlockVariants, codeSnippetVariants, comboboxContentVariants, comboboxTriggerVariants, contentVariants, createSelectColumn, dataTableCellVariants, dataTableHeaderCellVariants, dataTableRowVariants, dataTableVariants, defaultFooterHints, detectPasteKind, footerVariants as dialogFooterVariants, headerVariants as dialogHeaderVariants, iconVariants as dialogIconVariants, popupVariants as dialogPopupVariants, donutChartVariants, extensionColors, feedbackBarVariants, feedbackButtonVariants, fileInputSizeClasses, fileUploadAreaVariants, fileUploadItemVariants, formatInteractionForLLM, getThemeScript, historyEventCategoryConfig, historyHeaderActionConfig, horizontalBarChartVariants, indicatorVariants, inlineCTAVariants, sizeClasses as inputSizeClasses, stateClasses as inputStateClasses, inputVariants, isAsciiDiagram, itemVariants, kbdGroupVariants, kbdVariants, lineChartVariants, lineNumberVariants, loadingIndicatorVariants, loadingTextVariants, looksLikeAsciiDiagram, looksLikeSimpleAscii, mapKindToFile, messageBubbleVariants, messageVariants, metricCardVariants, metricChangeVariants, metricItemVariants, metricMiniChartVariants, triggerVariants as navAccountMenuTriggerVariants, navItemVariants, notificationDotVariants, notificationPanelVariants, pageHeaderVariants, paginationDotIndicatorVariants, paginationDotsVariants, pieChartVariants, progressVariants, promptSuggestionVariants, radarChartVariants, radialChartVariants, reasoningBlockVariants, renderActionElement, sanitizeKey, scrollButtonVariants, segmentVariants, shimmerPresets, shouldConvertPaste, sonnerToast, sourceVariants, statusIconVariants, stepConnectorVariants, stepIndicatorVariants, stepLabelVariants, stepSubtextVariants, systemMessageIconVariants, systemMessageVariants, tabsListVariants, tabsTriggerVariants, textShimmerVariants, toast, toggleVariants, toolCallVariants, tooltipVariants, tryAsciiToSvg, useAIInputContext, useAIInteraction, useAIMessageContext, useAccordionCard, useAppShell, useCalendarContext, useDataTable, useDropZone, useFieldContextOptional, useFieldControlProps, useInteractionHandler, useIsMobile, usePanelExpansion, useScrollToBottom, useSidebar, useTextStream, useTheme, useThemeOptional, validateAIToolRunSnapshot };
|
|
142
|
+
import { APP_SIDEBAR_COLLAPSED_WIDTH, APP_SIDEBAR_EXPANDED_WIDTH } from "./index217.js";
|
|
143
|
+
import { PanelExpansionContext, PanelIndexContext, PanelLayoutContext, useAppShell, usePanelExpansion } from "./index218.js";
|
|
144
|
+
import { AppShellContent } from "./index219.js";
|
|
145
|
+
import { AppShellPanel } from "./index221.js";
|
|
146
|
+
import { AppShell, AppShellHeader, AppShellRoot, AppShellSidebar, appShellBackgrounds } from "./index223.js";
|
|
147
|
+
import { AppShellCard } from "./index224.js";
|
|
148
|
+
import { AppSidebar, chatItemVariants, navItemVariants } from "./index225.js";
|
|
149
|
+
import { PageBackground } from "./index226.js";
|
|
150
|
+
import { AuthAsidePanel, AuthPageLayout, renderActionElement } from "./index227.js";
|
|
151
|
+
import { NavAccountMenu, NavAccountMenuAccount, NavAccountMenuContent, NavAccountMenuFooter, NavAccountMenuHeader, NavAccountMenuItem, NavAccountMenuSection, NavAccountMenuSeparator, NavAccountMenuThemeSwitch, NavAccountMenuTrigger, navAccountMenuTriggerVariants as triggerVariants } from "./index228.js";
|
|
152
|
+
import { ForgotPasswordPage } from "./index230.js";
|
|
153
|
+
import { LoginPage } from "./index231.js";
|
|
154
|
+
import { RegisterPage } from "./index232.js";
|
|
155
|
+
import { ResetPasswordPage } from "./index233.js";
|
|
156
|
+
import { TwoFactorAuthenticationPage } from "./index234.js";
|
|
157
|
+
import { VerifyEmail as VerifyEmailPage } from "./index235.js";
|
|
158
|
+
import { formatInteractionForLLM } from "./index236.js";
|
|
159
|
+
import { useInteractionHandler } from "./index237.js";
|
|
160
|
+
export { AIAsciiDiagram, AIChart, AIClarificationCard, AICodeBlock, AICodeBlockContent, AICodeBlockHeader, AIComponent, AIContainerCompound as AIContainer, AIContainerContext, AIContextIndicator, AIEmptyState, AIEmptyStateActions, AIEmptyStateDescription, AIEmptyStateIcon, AIEmptyStateRoot, AIEmptyStateSuggestionGrid, AIEmptyStateTitle, AIFeedbackBar, AIFeedbackIcons, AIForm, AIInput, AIInputActionBar, AIInputActions, AIInputAttachButton, AIInputFilePreview, AIInputLeadingIcon, AIInputRoot, AIInputSendButton, AIInputTextArea, AIInteractionContext, AIInteractionProvider, AILoadingDots, AIMermaidDiagram, AIMessage, AIMessageActions, AIMessageAttachmentPreview, AIMessageAttachments, AIMessageAvatar, AIMessageBubble, AIMessageContent, AIMessageCopyButton, AIMessageHeader, AIMessageListButton, AIMessageReactions, AIMessageRoot, AIMessageThumbsDown, AIMessageThumbsUp, AIMessageTypingIndicator, AIPromptSuggestion, AIPromptSuggestionCard, AIPromptSuggestionList, AIPulseText, AIQuickActions, AIReasoningBlock, AIReasoningContent, AIReasoningTrigger, AIResponseStream, AIScrollAnchor, AIScrollButton, AISelect, AISource, AISourceContent, AISourceList, AISourceTrigger, StepIcon as AIStepIcon, AIStepItem, AISteps, AISystemMessage, AISystemMessageBanner, AITable, AITextShimmer, AIThinkingBar, AIThinkingLoader, AIToolCall, AIToolCallHeader, AIToolCallList, AIToolRun, AITypingIndicator, AITypingText, APP_SIDEBAR_COLLAPSED_WIDTH, APP_SIDEBAR_EXPANDED_WIDTH, AccordionCompound as Accordion, AccordionCardNamespace as AccordionCard, AccordionCardContent, AccordionCardEdit, AccordionCardHeader, AccordionCardTitle, AccordionCardTrigger, AccordionContent, AccordionItem, AccordionTrigger, ActionButton, ActivityFeed, ActivityFeedItem, AdvancedRating, Alert, AlertDescription, AlertDialog, Action as AlertDialogAction, Backdrop as AlertDialogBackdrop, Cancel as AlertDialogCancel, Description as AlertDialogDescription, Footer as AlertDialogFooter, Header as AlertDialogHeader, Media as AlertDialogMedia, Popup as AlertDialogPopup, Portal as AlertDialogPortal, Root as AlertDialogRoot, Title as AlertDialogTitle, Trigger as AlertDialogTrigger, Viewport as AlertDialogViewport, AlertTitle, AppShell, AppShellCard, AppShellContent, AppShellHeader, AppShellPanel, AppShellRoot, AppShellSidebar, AppSidebar, AreaChart, AuthAsidePanel, AuthPageLayout, Autocomplete, Avatar, AvatarGroup, Badge, BadgeDot, BarChart, BrandIcon, BreadcrumbCompound as Breadcrumb, BreadcrumbEllipsis, BreadcrumbHomeLink, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, Calendar, CalendarActions, CalendarContent, CalendarHeader, CalendarNavigation, CalendarSearch, CalendarTitle, CalendarViewSwitcher, Card, Carousel, CarouselNav, CarouselVisual, ChartCard, ChartLegend, Checkbox, CheckboxGroup, ClearButton, CodeSnippet, Collapsible, CollapsibleContent, CollapsibleTrigger, ComboboxContent, ComboboxGroup, ComboboxHeader, ComboboxItem, ComboboxMenu, ComboboxRoot, ComboboxSeparator, ComboboxShortcut, ComboboxTrigger, CommandMenu, CommandMenuFooter, CommandMenuGroupHeader, CommandMenuItem, CommandMenuPanel, CommandShortcutBadge, CompactActionButton, ContextMenu, CheckboxItem as ContextMenuCheckboxItem, Group as ContextMenuGroup, Item as ContextMenuItem, Label as ContextMenuLabel, Popup$1 as ContextMenuPopup, Portal$1 as ContextMenuPortal, RadioGroup as ContextMenuRadioGroup, RadioItem as ContextMenuRadioItem, Root$1 as ContextMenuRoot, Separator as ContextMenuSeparator, Shortcut as ContextMenuShortcut, Sub as ContextMenuSub, SubPopup as ContextMenuSubPopup, SubTrigger as ContextMenuSubTrigger, Trigger$1 as ContextMenuTrigger, CountdownTimer, DEFAULT_CHART_COLORS, DEFAULT_DONUT_COLORS, DEFAULT_PIE_COLORS, DataTable, DataTableActionsCell, DataTableAvatarCell, DataTableBadgesCell, DataTableCell, DataTableCellRoot, DataTableProgressCell, DataTableRatingCell, DataTableSparklineCell, DataTableSwitchCell, DataTableTextCell, DataTableToolbar, DataTableTrendCell, DateFilterButton, DatePicker, DateRangeFilterButton, DateRangePicker, Dialog, Action$1 as DialogAction, Backdrop$1 as DialogBackdrop, Body as DialogBody, Cancel$1 as DialogCancel, Close as DialogClose, Description$1 as DialogDescription, Footer$1 as DialogFooter, Header$1 as DialogHeader, HeaderContent as DialogHeaderContent, Icon as DialogIcon, Popup$2 as DialogPopup, Portal$2 as DialogPortal, Root$2 as DialogRoot, Title$1 as DialogTitle, Trigger$2 as DialogTrigger, Viewport$1 as DialogViewport, DisplayValue, DonutChart, Dot, DotCircleSpinner, Drawer, Backdrop$2 as DrawerBackdrop, Close$1 as DrawerClose, Description$2 as DrawerDescription, Footer$2 as DrawerFooter, Handle as DrawerHandle, Header$2 as DrawerHeader, Popup$3 as DrawerPopup, Portal$3 as DrawerPortal, Root$3 as DrawerRoot, Title$2 as DrawerTitle, Trigger$3 as DrawerTrigger, Viewport$2 as DrawerViewport, DropdownMenu, EmptyState, EmptyStateBackgroundPattern, EmptyStateIllustration, FadeText, FeaturedIcon, FeedbackButton, Field, FieldBottom, FieldBottomRight, FieldControl, FieldDescription, FieldError, FieldLabel, FieldTop, FieldTopRight, Fieldset, FileInput, FileTypeIcon, FileUpload, FileUploadArea, FileUploadItem, FooterNavIcon, FooterNavText, ForgotPasswordPage, Form, GroupingControls, History, HistoryValue, HorizontalBarChart, HoverCardCompound as HoverCard, HoverCardPopup, HoverCardTrigger, ICONS, InlineCTA, Input, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, Item$1 as Item, KIND_TO_FILE, Kbd, KbdGroup, LineChart, LineSimpleSpinner, LineSpinner, LoadingIndicator, LoginPage, MAC_KEYS, MOBILE_BREAKPOINT, MetricCard, MetricChange, MetricItem, MetricMiniChart, NavAccountMenu, NavAccountMenuAccount, NavAccountMenuContent, NavAccountMenuFooter, NavAccountMenuHeader, NavAccountMenuItem, NavAccountMenuSection, NavAccountMenuSeparator, NavAccountMenuThemeSwitch, NavAccountMenuTrigger, NotificationPanel, NotificationPanelItem, NotificationSection, NumberInput, PageBackground, PageHeader, Pagination, PaginationDots, PanelExpansionContext, PanelIndexContext, PanelLayoutContext, PieChart, PopoverCompound as Popover, PopoverDescription, PopoverHeader, PopoverPopup, PopoverRoot, PopoverTitle, PopoverTrigger, Progress, RadarChart, RadialChart, RadioGroup$1 as RadioGroup, Rating, RegisterPage, ResetPasswordPage, ResizableHandle, ResizablePanel, ResizablePanelGroup, RichTextarea, RichTextareaToolbar, SIZE_MAP, ScrollArea, ScrollBar, SectionHeader, Select, SelectCompound, SelectGroup, SelectGroupLabel, SelectItem, SelectPopup, SelectRoot, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectTriggerIcon, SelectValue, Separator$1 as Separator, Sheet, Backdrop$3 as SheetBackdrop, Body$1 as SheetBody, Close$2 as SheetClose, Description$3 as SheetDescription, Divider as SheetDivider, Footer$3 as SheetFooter, Header$3 as SheetHeader, Popup$4 as SheetPopup, Portal$4 as SheetPortal, Root$4 as SheetRoot, Section as SheetSection, Title$3 as SheetTitle, Trigger$4 as SheetTrigger, Viewport$3 as SheetViewport, Shortcut$1 as Shortcut, SidebarCompound as Sidebar, SidebarAccountSkeleton, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInset, SidebarMenu, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarNavSkeleton, SidebarProvider, SidebarTrigger, Skeleton, Slider, SliderBase, SonnerItem, SortableHeader, SourceFavicon, SparklineChart, StatusIcon, StepsCompound as Steps, StepsItem, StepsSubtext, SubmitButton, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsIndicator, TabsList, TabsTrigger, TabsTriggerWithCount, Textarea, ThemeProvider, ThemeScript, ThinkingIndicator, TimePicker, ToastContent, Toaster, Toggle, ToggleGroup, ToggleGroupItem, ToolCallSection, ToolbarButton, ToolbarDivider, TooltipCompound as Tooltip, TooltipAvatar, TooltipBadge, TooltipContent, TooltipIcon, TooltipImage, TooltipPopup, TooltipProvider, TooltipRoot, TooltipSubtitle, TooltipTitle, TooltipTrigger, TwoFactorAuthenticationPage, TypewriterText, VerifyEmailPage as VerifyEmail, VerifyEmailPage, WIN_KEYS, WorkflowAddNode, WorkflowCircleNode, WorkflowComment, WorkflowConnection, WorkflowNode, WorkflowPort, activityFeedVariants, activityItemVariants, stepIconVariants as aiStepIconVariants, stepItemVariants as aiStepItemVariants, stepsContainerVariants as aiStepsContainerVariants, alertVariants, analyzePaste, appShellBackgrounds, areaChartVariants, arrowVariants, asciiDiagramVariants, asciiToSvg, badgeVariants, bannerVariants, barChartVariants, breadcrumbItemVariants, buttonVariants, chatItemVariants, cn, codeBlockVariants, codeSnippetVariants, comboboxContentVariants, comboboxTriggerVariants, contentVariants, createSelectColumn, dataTableCellVariants, dataTableHeaderCellVariants, dataTableRowVariants, dataTableVariants, defaultFooterHints, detectPasteKind, footerVariants as dialogFooterVariants, headerVariants as dialogHeaderVariants, iconVariants as dialogIconVariants, popupVariants as dialogPopupVariants, donutChartVariants, extensionColors, feedbackBarVariants, feedbackButtonVariants, fileInputSizeClasses, fileUploadAreaVariants, fileUploadItemVariants, formatInteractionForLLM, getThemeScript, historyEventCategoryConfig, historyHeaderActionConfig, horizontalBarChartVariants, indicatorVariants, inlineCTAVariants, sizeClasses as inputSizeClasses, stateClasses as inputStateClasses, inputVariants, isAsciiDiagram, itemVariants, kbdGroupVariants, kbdVariants, lineChartVariants, lineNumberVariants, loadingIndicatorVariants, loadingTextVariants, looksLikeAsciiDiagram, looksLikeSimpleAscii, mapKindToFile, messageBubbleVariants, messageVariants, metricCardVariants, metricChangeVariants, metricItemVariants, metricMiniChartVariants, triggerVariants as navAccountMenuTriggerVariants, navItemVariants, notificationDotVariants, notificationPanelVariants, pageHeaderVariants, paginationDotIndicatorVariants, paginationDotsVariants, pieChartVariants, progressVariants, promptSuggestionVariants, radarChartVariants, radialChartVariants, reasoningBlockVariants, renderActionElement, sanitizeKey, scrollButtonVariants, segmentVariants, shimmerPresets, shouldConvertPaste, sonnerToast, sourceVariants, statusIconVariants, stepConnectorVariants, stepIndicatorVariants, stepLabelVariants, stepSubtextVariants, systemMessageIconVariants, systemMessageVariants, tabsListVariants, tabsTriggerVariants, textShimmerVariants, toast, toggleVariants, toolCallVariants, tooltipVariants, tryAsciiToSvg, useAIInputContext, useAIInteraction, useAIMessageContext, useAccordionCard, useAppShell, useCalendarContext, useDataTable, useDropZone, useFieldContextOptional, useFieldControlProps, useInteractionHandler, useIsMobile, usePanelExpansion, useScrollToBottom, useSidebar, useTextStream, useTheme, useThemeOptional, validateAIToolRunSnapshot };
|
package/dist/index217.js
CHANGED
|
@@ -1,27 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
var
|
|
4
|
-
/**
|
|
5
|
-
|
|
6
|
-
*/
|
|
7
|
-
function useAppShell() {
|
|
8
|
-
return React$1.useContext(AppShellContext);
|
|
9
|
-
}
|
|
10
|
-
var AppShellProvider = AppShellContext.Provider;
|
|
11
|
-
/**
|
|
12
|
-
* Internal context for passing the panel index from Panel to Content.
|
|
13
|
-
* Content reads this to determine its position in connected mode.
|
|
14
|
-
*/
|
|
15
|
-
var PanelIndexContext = React$1.createContext(0);
|
|
16
|
-
var PanelLayoutContext = React$1.createContext({
|
|
17
|
-
visible: true,
|
|
18
|
-
isMobile: false
|
|
19
|
-
});
|
|
20
|
-
var PanelExpansionContext = React$1.createContext(null);
|
|
21
|
-
function usePanelExpansion() {
|
|
22
|
-
return React$1.useContext(PanelExpansionContext);
|
|
23
|
-
}
|
|
1
|
+
//#region src/components/templates/AppSidebar/AppSidebar.constants.ts
|
|
2
|
+
/** Canonical expanded width shared by AppSidebar and AppShell.Sidebar. */
|
|
3
|
+
var APP_SIDEBAR_EXPANDED_WIDTH = "280px";
|
|
4
|
+
/** Canonical collapsed width shared by AppSidebar and AppShell.Sidebar. */
|
|
5
|
+
var APP_SIDEBAR_COLLAPSED_WIDTH = "116px";
|
|
24
6
|
//#endregion
|
|
25
|
-
export {
|
|
7
|
+
export { APP_SIDEBAR_COLLAPSED_WIDTH, APP_SIDEBAR_EXPANDED_WIDTH };
|
|
26
8
|
|
|
27
9
|
//# sourceMappingURL=index217.js.map
|
package/dist/index217.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index217.js","names":[],"sources":["../src/components/templates/
|
|
1
|
+
{"version":3,"file":"index217.js","names":[],"sources":["../src/components/templates/AppSidebar/AppSidebar.constants.ts"],"sourcesContent":["/** Canonical expanded width shared by AppSidebar and AppShell.Sidebar. */\nexport const APP_SIDEBAR_EXPANDED_WIDTH = '280px';\n\n/** Canonical collapsed width shared by AppSidebar and AppShell.Sidebar. */\nexport const APP_SIDEBAR_COLLAPSED_WIDTH = '116px';\n"],"mappings":";;AACA,IAAa,6BAA6B;;AAG1C,IAAa,8BAA8B"}
|
package/dist/index218.js
CHANGED
|
@@ -1,30 +1,27 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { cn } from "./index2.js";
|
|
3
|
-
import { PanelIndexContext, useAppShell } from "./index217.js";
|
|
4
1
|
import * as React$1 from "react";
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
//#region src/components/templates/AppShell/AppShellContext.ts
|
|
3
|
+
var AppShellContext = React$1.createContext(null);
|
|
7
4
|
/**
|
|
8
|
-
*
|
|
9
|
-
* Solid background, shadow-sm elevation, rounded corners, subtle border.
|
|
10
|
-
*
|
|
11
|
-
* In connected mode, reads AppShellContext + PanelIndexContext to adapt
|
|
12
|
-
* border-radius based on panel position (first/last/only).
|
|
5
|
+
* Read AppShell layout context. Returns null when used outside AppShell.Root.
|
|
13
6
|
*/
|
|
14
|
-
function
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
7
|
+
function useAppShell() {
|
|
8
|
+
return React$1.useContext(AppShellContext);
|
|
9
|
+
}
|
|
10
|
+
var AppShellProvider = AppShellContext.Provider;
|
|
11
|
+
/**
|
|
12
|
+
* Internal context for passing the panel index from Panel to Content.
|
|
13
|
+
* Content reads this to determine its position in connected mode.
|
|
14
|
+
*/
|
|
15
|
+
var PanelIndexContext = React$1.createContext(0);
|
|
16
|
+
var PanelLayoutContext = React$1.createContext({
|
|
17
|
+
visible: true,
|
|
18
|
+
isMobile: false
|
|
19
|
+
});
|
|
20
|
+
var PanelExpansionContext = React$1.createContext(null);
|
|
21
|
+
function usePanelExpansion() {
|
|
22
|
+
return React$1.useContext(PanelExpansionContext);
|
|
25
23
|
}
|
|
26
|
-
AppShellContent.displayName = "AppShell.Content";
|
|
27
24
|
//#endregion
|
|
28
|
-
export {
|
|
25
|
+
export { AppShellContext, AppShellProvider, PanelExpansionContext, PanelIndexContext, PanelLayoutContext, useAppShell, usePanelExpansion };
|
|
29
26
|
|
|
30
27
|
//# sourceMappingURL=index218.js.map
|
package/dist/index218.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index218.js","names":[],"sources":["../src/components/templates/AppShell/
|
|
1
|
+
{"version":3,"file":"index218.js","names":[],"sources":["../src/components/templates/AppShell/AppShellContext.ts"],"sourcesContent":["import * as React from 'react';\n\nexport type PanelPosition = 'only' | 'first' | 'last';\n\nexport interface AppShellContextValue {\n /** Whether the shell is in connected (joined-edge) mode */\n connected: boolean;\n /** Number of visible Panel children */\n panelCount: number;\n /** Get the position of a panel by its index among visible panels */\n getPanelPosition: (index: number) => PanelPosition;\n}\n\nconst AppShellContext = React.createContext<AppShellContextValue | null>(null);\n\n/**\n * Read AppShell layout context. Returns null when used outside AppShell.Root.\n */\nfunction useAppShell(): AppShellContextValue | null {\n return React.useContext(AppShellContext);\n}\n\nconst AppShellProvider = AppShellContext.Provider;\n\n/**\n * Internal context for passing the panel index from Panel to Content.\n * Content reads this to determine its position in connected mode.\n */\nconst PanelIndexContext = React.createContext<number>(0);\n\n/**\n * Per-panel layout state provided by Root. Replaces cloneElement style injection.\n * Panel reads this to self-manage visibility, mobile sizing, and ARIA attributes.\n */\nexport interface PanelLayoutInfo {\n /** Whether this panel is visible (false = hidden overflow panel or non-expanded sibling) */\n visible: boolean;\n /** How hidden desktop panels should leave layout. Animated keeps the flex item in-flow briefly. */\n collapseMode?: 'animated' | 'removed';\n /** Whether we're in mobile viewport */\n isMobile: boolean;\n /** ARIA tab ID for tabpanel association (set when mobile tab bar is active) */\n tabId?: string;\n /** ARIA panel ID for tabpanel role (set when mobile tab bar is active) */\n panelId?: string;\n /** Whether Root owns panel sizing, such as through ResizablePanel */\n sizeManagedByRoot?: boolean;\n /** Root-owned expansion override */\n expanded?: boolean;\n /** Root-owned expansion change callback */\n onExpandedChange?: (expanded: boolean) => void;\n}\n\nconst PanelLayoutContext = React.createContext<PanelLayoutInfo>({\n visible: true,\n isMobile: false,\n});\n\nexport interface PanelExpansionInfo {\n expanded: boolean;\n onExpandedChange?: (expanded: boolean) => void;\n}\n\nconst PanelExpansionContext = React.createContext<PanelExpansionInfo | null>(\n null,\n);\n\nfunction usePanelExpansion(): PanelExpansionInfo | null {\n return React.useContext(PanelExpansionContext);\n}\n\nexport {\n AppShellContext,\n AppShellProvider,\n PanelExpansionContext,\n PanelIndexContext,\n PanelLayoutContext,\n useAppShell,\n usePanelExpansion,\n};\n"],"mappings":";;AAaA,IAAM,kBAAkB,QAAM,cAA2C,IAAI;;;;AAK7E,SAAS,cAA2C;CAClD,OAAO,QAAM,WAAW,eAAe;AACzC;AAEA,IAAM,mBAAmB,gBAAgB;;;;;AAMzC,IAAM,oBAAoB,QAAM,cAAsB,CAAC;AAyBvD,IAAM,qBAAqB,QAAM,cAA+B;CAC9D,SAAS;CACT,UAAU;AACZ,CAAC;AAOD,IAAM,wBAAwB,QAAM,cAClC,IACF;AAEA,SAAS,oBAA+C;CACtD,OAAO,QAAM,WAAW,qBAAqB;AAC/C"}
|
package/dist/index219.js
CHANGED
|
@@ -1,105 +1,30 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { cn } from "./index2.js";
|
|
3
|
-
import {
|
|
3
|
+
import { PanelIndexContext, useAppShell } from "./index218.js";
|
|
4
4
|
import * as React$1 from "react";
|
|
5
|
-
import { jsx
|
|
6
|
-
//#region src/components/templates/AppShell/
|
|
7
|
-
function getMobileTabKey(panel, fallbackLabel) {
|
|
8
|
-
return panel.key ?? panel.label ?? fallbackLabel;
|
|
9
|
-
}
|
|
5
|
+
import { jsx } from "react/jsx-runtime";
|
|
6
|
+
//#region src/components/templates/AppShell/AppShellContent.tsx
|
|
10
7
|
/**
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
8
|
+
* Card wrapper providing Figma-designed visual treatment for panel content.
|
|
9
|
+
* Solid background, shadow-sm elevation, rounded corners, subtle border.
|
|
10
|
+
*
|
|
11
|
+
* In connected mode, reads AppShellContext + PanelIndexContext to adapt
|
|
12
|
+
* border-radius based on panel position (first/last/only).
|
|
14
13
|
*/
|
|
15
|
-
function
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
break;
|
|
26
|
-
case "Home":
|
|
27
|
-
nextIndex = 0;
|
|
28
|
-
break;
|
|
29
|
-
case "End":
|
|
30
|
-
nextIndex = panels.length - 1;
|
|
31
|
-
break;
|
|
32
|
-
default: return;
|
|
33
|
-
}
|
|
34
|
-
e.preventDefault();
|
|
35
|
-
onActiveChange(nextIndex);
|
|
36
|
-
const tabList = tabListRef.current;
|
|
37
|
-
if (tabList) tabList.querySelectorAll("[role=\"tab\"]")[nextIndex]?.focus();
|
|
38
|
-
}, [
|
|
39
|
-
activeIndex,
|
|
40
|
-
panels.length,
|
|
41
|
-
onActiveChange
|
|
42
|
-
]);
|
|
43
|
-
const [indicator, setIndicator] = React$1.useState(null);
|
|
44
|
-
React$1.useEffect(() => {
|
|
45
|
-
const tabList = tabListRef.current;
|
|
46
|
-
if (!tabList || panels.length <= 1) return;
|
|
47
|
-
const activeBtn = tabList.querySelectorAll("[role=\"tab\"]")[activeIndex];
|
|
48
|
-
if (!activeBtn) return;
|
|
49
|
-
const left = activeBtn.offsetLeft;
|
|
50
|
-
const width = activeBtn.offsetWidth;
|
|
51
|
-
setIndicator((prev) => prev && prev.left === left && prev.width === width ? prev : {
|
|
52
|
-
left,
|
|
53
|
-
width
|
|
54
|
-
});
|
|
55
|
-
}, [activeIndex, panels.length]);
|
|
56
|
-
const sidebarTrigger = onSidebarOpen ? /* @__PURE__ */ jsx("button", {
|
|
57
|
-
type: "button",
|
|
58
|
-
onClick: onSidebarOpen,
|
|
59
|
-
className: cn("flex min-h-11 min-w-11 items-center justify-center rounded-lg", "text-secondary-foreground hover:bg-accent", "active:scale-[0.95]", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", "transition-colors motion-reduce:transition-none"),
|
|
60
|
-
"aria-label": "Open sidebar",
|
|
61
|
-
children: /* @__PURE__ */ jsx(Menu, { className: "size-5" })
|
|
62
|
-
}) : null;
|
|
63
|
-
if (panels.length <= 1) return sidebarTrigger ? /* @__PURE__ */ jsx("div", {
|
|
64
|
-
"data-slot": "app-shell-mobile-tab-bar",
|
|
65
|
-
className: "flex h-12 shrink-0 items-center px-3",
|
|
66
|
-
children: sidebarTrigger
|
|
67
|
-
}) : null;
|
|
68
|
-
return /* @__PURE__ */ jsxs("div", {
|
|
69
|
-
"data-slot": "app-shell-mobile-tab-bar",
|
|
70
|
-
className: "flex h-12 shrink-0 items-center gap-1 px-3",
|
|
71
|
-
children: [sidebarTrigger, /* @__PURE__ */ jsxs("div", {
|
|
72
|
-
ref: tabListRef,
|
|
73
|
-
role: "tablist",
|
|
74
|
-
className: "relative flex gap-1",
|
|
75
|
-
onKeyDown: handleKeyDown,
|
|
76
|
-
children: [indicator && /* @__PURE__ */ jsx("div", {
|
|
77
|
-
className: cn("absolute top-1/2 -translate-y-1/2 h-9 rounded-lg bg-accent", "transition-[left,width] duration-200 ease-[cubic-bezier(0.16,1,0.3,1)]", "motion-reduce:transition-none"),
|
|
78
|
-
style: {
|
|
79
|
-
left: indicator.left,
|
|
80
|
-
width: indicator.width
|
|
81
|
-
},
|
|
82
|
-
"aria-hidden": "true"
|
|
83
|
-
}), panels.map((panel, panelPosition) => {
|
|
84
|
-
const label = panel.label || `Panel ${panelPosition + 1}`;
|
|
85
|
-
const isActive = panelPosition === activeIndex;
|
|
86
|
-
return /* @__PURE__ */ jsx("button", {
|
|
87
|
-
id: baseId ? `${baseId}-tab-${panelPosition}` : void 0,
|
|
88
|
-
type: "button",
|
|
89
|
-
role: "tab",
|
|
90
|
-
"aria-selected": isActive,
|
|
91
|
-
"aria-controls": baseId ? `${baseId}-tabpanel-${panelPosition}` : void 0,
|
|
92
|
-
tabIndex: isActive ? 0 : -1,
|
|
93
|
-
onClick: () => onActiveChange(panelPosition),
|
|
94
|
-
className: cn("relative z-10 rounded-lg px-3 min-h-9 text-sm font-medium", "transition-colors duration-150 motion-reduce:transition-none", "active:scale-[0.97]", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", isActive ? "text-foreground" : "text-secondary-foreground hover:text-foreground"),
|
|
95
|
-
children: label
|
|
96
|
-
}, getMobileTabKey(panel, label));
|
|
97
|
-
})]
|
|
98
|
-
})]
|
|
14
|
+
function AppShellContent({ className, children, ...props }) {
|
|
15
|
+
const context = useAppShell();
|
|
16
|
+
const connected = context?.connected ?? false;
|
|
17
|
+
const panelIndex = React$1.useContext(PanelIndexContext);
|
|
18
|
+
const position = connected && context ? context.getPanelPosition(panelIndex) : null;
|
|
19
|
+
return /* @__PURE__ */ jsx("div", {
|
|
20
|
+
"data-slot": "app-shell-content",
|
|
21
|
+
className: cn("flex flex-col h-full min-h-0 overflow-clip", "bg-background dark:bg-surface-1", "border border-border", "shadow-sm", !connected && "rounded-2xl", connected && position === "only" && "rounded-2xl", connected && position === "first" && ["rounded-ss-2xl rounded-es-2xl", "rounded-se-none rounded-ee-none"], connected && position === "last" && ["rounded-ss-none rounded-es-none", "rounded-se-2xl rounded-ee-2xl"], className),
|
|
22
|
+
...props,
|
|
23
|
+
children
|
|
99
24
|
});
|
|
100
25
|
}
|
|
101
|
-
|
|
26
|
+
AppShellContent.displayName = "AppShell.Content";
|
|
102
27
|
//#endregion
|
|
103
|
-
export {
|
|
28
|
+
export { AppShellContent };
|
|
104
29
|
|
|
105
30
|
//# sourceMappingURL=index219.js.map
|
package/dist/index219.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index219.js","names":[],"sources":["../src/components/templates/AppShell/
|
|
1
|
+
{"version":3,"file":"index219.js","names":[],"sources":["../src/components/templates/AppShell/AppShellContent.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { cn } from '@/lib/utils';\nimport { PanelIndexContext, useAppShell } from './AppShellContext';\n\nexport interface AppShellContentProps extends React.ComponentProps<'div'> {}\n\n/**\n * Card wrapper providing Figma-designed visual treatment for panel content.\n * Solid background, shadow-sm elevation, rounded corners, subtle border.\n *\n * In connected mode, reads AppShellContext + PanelIndexContext to adapt\n * border-radius based on panel position (first/last/only).\n */\nfunction AppShellContent({\n className,\n children,\n ...props\n}: AppShellContentProps) {\n const context = useAppShell();\n const connected = context?.connected ?? false;\n\n // Read panel index from PanelIndexContext (set by Root via provider)\n const panelIndex = React.useContext(PanelIndexContext);\n const position =\n connected && context ? context.getPanelPosition(panelIndex) : null;\n\n return (\n <div\n data-slot=\"app-shell-content\"\n className={cn(\n // Core layout\n 'flex flex-col h-full min-h-0 overflow-clip',\n // Figma card styles\n 'bg-background dark:bg-surface-1',\n 'border border-border',\n 'shadow-sm',\n // Border radius: connected mode adapts per position\n !connected && 'rounded-2xl',\n connected && position === 'only' && 'rounded-2xl',\n connected &&\n position === 'first' && [\n 'rounded-ss-2xl rounded-es-2xl',\n 'rounded-se-none rounded-ee-none',\n ],\n connected &&\n position === 'last' && [\n 'rounded-ss-none rounded-es-none',\n 'rounded-se-2xl rounded-ee-2xl',\n ],\n className,\n )}\n {...props}\n >\n {children}\n </div>\n );\n}\n\nAppShellContent.displayName = 'AppShell.Content';\n\nexport { AppShellContent };\n"],"mappings":";;;;;;;;;;;;;AAeA,SAAS,gBAAgB,EACvB,WACA,UACA,GAAG,SACoB;CACvB,MAAM,UAAU,YAAY;CAC5B,MAAM,YAAY,SAAS,aAAa;CAGxC,MAAM,aAAa,QAAM,WAAW,iBAAiB;CACrD,MAAM,WACJ,aAAa,UAAU,QAAQ,iBAAiB,UAAU,IAAI;CAEhE,OACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GAET,8CAEA,mCACA,wBACA,aAEA,CAAC,aAAa,eACd,aAAa,aAAa,UAAU,eACpC,aACE,aAAa,WAAW,CACtB,iCACA,iCACF,GACF,aACE,aAAa,UAAU,CACrB,mCACA,+BACF,GACF,SACF;EACA,GAAI;EAEH;CACE,CAAA;AAET;AAEA,gBAAgB,cAAc"}
|