@etus/ui 0.4.0-beta.16 → 0.4.0-beta.17
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/{chunk-VORFH6HQ.js → chunk-37KLBMFQ.js} +3 -3
- package/dist/chunk-37KLBMFQ.js.map +1 -0
- package/dist/{chunk-FCIF6H6E.js → chunk-4KOJTZVU.js} +3 -3
- package/dist/{chunk-FCIF6H6E.js.map → chunk-4KOJTZVU.js.map} +1 -1
- package/dist/{chunk-5U5XAOES.js → chunk-TNDW52VZ.js} +56 -24
- package/dist/chunk-TNDW52VZ.js.map +1 -0
- package/dist/{chunk-COZXTBIU.js → chunk-W3JVNX35.js} +28 -9
- package/dist/chunk-W3JVNX35.js.map +1 -0
- package/dist/components/advanced/ReportBuilder/index.js +2 -2
- package/dist/components/advanced/index.js +10 -10
- package/dist/components/data-display/index.js +18 -18
- package/dist/components/feedback/index.js +2 -2
- package/dist/components/forms/index.js +11 -11
- package/dist/components/index.js +103 -103
- package/dist/components/layout/index.js +4 -4
- package/dist/components/navigation/AccountSwitch/index.js +1 -1
- package/dist/components/navigation/LogoConta/index.js +1 -1
- package/dist/components/navigation/Sidebar/index.js +1 -1
- package/dist/components/navigation/index.js +9 -9
- package/dist/components/primitives/index.js +10 -10
- package/dist/components/workflow/index.js +6 -6
- package/dist/index.d.ts +33 -11
- package/dist/index.js +103 -103
- package/package.json +1 -1
- package/dist/chunk-5U5XAOES.js.map +0 -1
- package/dist/chunk-COZXTBIU.js.map +0 -1
- package/dist/chunk-VORFH6HQ.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/navigation/Sidebar/Sidebar.variants.ts","../src/components/navigation/Sidebar/Sidebar.tsx"],"names":["open"],"mappings":"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","file":"chunk-TNDW52VZ.js","sourcesContent":["import { cva } from \"class-variance-authority\"\n\n/* eslint-disable sonarjs/no-duplicate-string -- Tailwind class combinations naturally repeat in variant definitions */\n\n/**\n * Common peer menu button position styles\n */\nconst PEER_SIZE_POSITIONS = [\n \"peer-data-[size=sm]/menu-button:top-1\",\n \"peer-data-[size=default]/menu-button:top-1.5\",\n \"peer-data-[size=lg]/menu-button:top-2.5\",\n]\n\n/**\n * SidebarProvider wrapper variant styles\n */\nexport const sidebarProviderVariants = cva([\n \"group/sidebar-wrapper has-data-[variant=inset]:bg-sidebar flex min-h-svh w-full\",\n])\n\n/**\n * Sidebar (non-collapsible) variant styles\n */\nexport const sidebarNonCollapsibleVariants = cva([\n \"bg-sidebar text-sidebar-foreground flex h-full w-(--sidebar-width) flex-col\",\n])\n\n/**\n * Sidebar mobile content variant styles\n */\nexport const sidebarMobileVariants = cva([\n \"bg-sidebar text-sidebar-foreground w-(--sidebar-width) p-0 [&>button]:hidden\",\n])\n\n/**\n * Sidebar desktop wrapper variant styles\n */\nexport const sidebarDesktopVariants = cva([\n \"group peer text-sidebar-foreground hidden md:block\",\n])\n\n/**\n * Sidebar gap variant styles\n */\nexport const sidebarGapVariants = cva([\n \"relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear\",\n \"group-data-[collapsible=offcanvas]:w-0\",\n \"group-data-[side=right]:rotate-180\",\n])\n\n/**\n * Sidebar container variant styles\n */\nexport const sidebarContainerVariants = cva([\n \"fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex\",\n])\n\n/**\n * Sidebar inner variant styles\n */\nexport const sidebarInnerVariants = cva([\n \"bg-sidebar group-data-[variant=floating]:border-sidebar-border flex h-full w-full flex-col\",\n \"group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:shadow-sm\",\n])\n\n/**\n * SidebarTrigger variant styles\n */\nexport const sidebarTriggerVariants = cva([\"size-7\"])\n\n/**\n * SidebarRail variant styles\n */\nexport const sidebarRailVariants = cva([\n \"hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear\",\n \"group-data-[side=left]:-right-4 group-data-[side=right]:left-0\",\n \"after:absolute after:inset-y-0 after:left-1/2 after:w-0.5 sm:flex\",\n \"in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize\",\n \"[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize\",\n \"hover:group-data-[collapsible=offcanvas]:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full\",\n \"[[data-side=left][data-collapsible=offcanvas]_&]:-right-2\",\n \"[[data-side=right][data-collapsible=offcanvas]_&]:-left-2\",\n])\n\n/**\n * SidebarInset variant styles\n */\nexport const sidebarInsetVariants = cva([\n \"bg-background relative flex w-full flex-1 flex-col\",\n \"md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0\",\n \"md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm\",\n \"md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2\",\n \"peer-data-[mode=dual]:bg-[color:var(--sidebar-background,var(--sidebar))] peer-data-[mode=dual]:flex peer-data-[mode=dual]:flex-col peer-data-[mode=dual]:gap-3 peer-data-[mode=dual]:pt-5\",\n])\n\n/**\n * SidebarInput variant styles\n */\nexport const sidebarInputVariants = cva([\n \"bg-background h-8 w-full shadow-none\",\n])\n\n/**\n * SidebarHeader variant styles\n *\n * Dual mode consumes sidebar.tokens.json (Figma 1092:542 panel header):\n * - padding-x = 16px (--sidebar-panel-header-padding-x)\n * - padding-top = 28px (--sidebar-panel-padding-top) when at top of panel\n *\n * Single mode consumes the container spec (Figma 1091:8941/8942):\n * - padding-x = 12px, padding-top = 24px (--sidebar-container-padding-*)\n * - gap = 24px between logo row and account switch (--sidebar-rail-group-gap)\n */\nexport const sidebarHeaderVariants = cva([\n \"flex flex-col gap-2 p-2\",\n \"group-data-[mode=dual]/sidebar-wrapper:gap-0\",\n \"group-data-[mode=dual]/sidebar-wrapper:px-[var(--sidebar-panel-header-padding-x)]\",\n \"group-data-[mode=dual]/sidebar-wrapper:pt-[var(--sidebar-panel-padding-top)]\",\n \"group-data-[mode=dual]/sidebar-wrapper:pb-0\",\n \"group-data-[mode=single]/sidebar-wrapper:gap-[var(--sidebar-rail-group-gap)]\",\n \"group-data-[mode=single]/sidebar-wrapper:px-[var(--sidebar-container-padding-x)]\",\n \"group-data-[mode=single]/sidebar-wrapper:pt-[var(--sidebar-container-padding-y)]\",\n \"group-data-[mode=single]/sidebar-wrapper:pb-0\",\n])\n\n/**\n * SidebarFooter variant styles\n *\n * Single mode consumes the container spec (Figma 1091:8941/8942 bottom block):\n * - padding-x = 12px, padding-bottom = 24px (--sidebar-container-padding-*)\n * - gap = 20px between toggle / settings / avatar (--sidebar-rail-item-gap)\n */\nexport const sidebarFooterVariants = cva([\n \"flex flex-col gap-2 p-2\",\n \"group-data-[mode=single]/sidebar-wrapper:gap-[var(--sidebar-rail-item-gap)]\",\n \"group-data-[mode=single]/sidebar-wrapper:px-[var(--sidebar-container-padding-x)]\",\n \"group-data-[mode=single]/sidebar-wrapper:pb-[var(--sidebar-container-padding-y)]\",\n \"group-data-[mode=single]/sidebar-wrapper:pt-0\",\n])\n\n/**\n * SidebarSeparator variant styles\n */\nexport const sidebarSeparatorVariants = cva([\n \"bg-sidebar-border mx-2 w-auto\",\n])\n\n/**\n * SidebarContent variant styles\n */\nexport const sidebarContentVariants = cva([\n \"flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden\",\n // Single mode — nav block sits inside the container padding, 24px below the\n // header block (Figma 1091:8942: container px-12, section gap-24)\n \"group-data-[mode=single]/sidebar-wrapper:px-[var(--sidebar-container-padding-x)]\",\n \"group-data-[mode=single]/sidebar-wrapper:pt-[var(--sidebar-rail-group-gap)]\",\n // Dual mode — section spacing comes from each group's pt (--sidebar-panel-gap);\n // the base gap-2 would add +8px between sections (Figma 1092:542 has 28, not 36)\n \"group-data-[mode=dual]/sidebar-wrapper:gap-0\",\n])\n\n/**\n * SidebarGroup variant styles\n *\n * Dual mode consumes sidebar.tokens.json (Figma 1092:542 Sub Categoria block):\n * - padding-x = 8px (--sidebar-section-padding-x)\n * - vertical gap with header handled by panel gap (--sidebar-panel-gap = 28px)\n */\nexport const sidebarGroupVariants = cva([\n \"relative flex w-full min-w-0 flex-col p-2\",\n \"group-data-[mode=dual]/sidebar-wrapper:px-[var(--sidebar-section-padding-x)]\",\n \"group-data-[mode=dual]/sidebar-wrapper:pt-[var(--sidebar-panel-gap)]\",\n \"group-data-[mode=dual]/sidebar-wrapper:gap-[var(--sidebar-section-gap)]\",\n // Single mode — the nav list has no wrapper padding of its own (Figma\n // 1091:8942); SidebarContent carries the container padding\n \"group-data-[mode=single]/sidebar-wrapper:p-0\",\n])\n\n/**\n * SidebarGroupLabel variant styles\n *\n * Dual mode consumes sidebar.tokens.json (Figma 1092:542 section title \"Dashboards\"):\n * - padding-x = 8px (--sidebar-section-title-padding-x)\n * - font 10px Regular leading-1 (not 12px uppercase!)\n * - color = muted-foreground tertiary\n */\nexport const sidebarGroupLabelVariants = cva([\n \"text-sidebar-foreground/70 ring-sidebar-ring flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium\",\n \"outline-hidden transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2\",\n \"[&>svg]:size-4 [&>svg]:shrink-0\",\n \"group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0\",\n \"group-data-[mode]/sidebar-wrapper:h-auto\",\n \"group-data-[mode]/sidebar-wrapper:px-[var(--sidebar-section-title-padding-x)]\",\n \"group-data-[mode]/sidebar-wrapper:py-0\",\n \"group-data-[mode]/sidebar-wrapper:text-[length:var(--sidebar-section-title-font-size)]\",\n \"group-data-[mode]/sidebar-wrapper:font-[var(--sidebar-section-title-font-weight)]\",\n \"group-data-[mode]/sidebar-wrapper:leading-[var(--sidebar-section-title-line-height)]\",\n \"group-data-[mode]/sidebar-wrapper:tracking-normal\",\n \"group-data-[mode]/sidebar-wrapper:normal-case\",\n \"group-data-[mode]/sidebar-wrapper:text-[color:var(--sidebar-section-title-color)]\",\n])\n\n/**\n * SidebarGroupAction variant styles\n */\nexport const sidebarGroupActionVariants = cva([\n \"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\",\n \"absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded-md p-0\",\n \"outline-hidden transition-transform focus-visible:ring-2\",\n \"[&>svg]:size-4 [&>svg]:shrink-0\",\n \"after:absolute after:-inset-2 md:after:hidden\",\n \"group-data-[collapsible=icon]:hidden\",\n])\n\n/**\n * SidebarGroupContent variant styles\n */\nexport const sidebarGroupContentVariants = cva([\n \"w-full text-sm\",\n])\n\n/**\n * SidebarMenu variant styles\n *\n * Figma spacing differs per variant:\n * - Single (Expanded 1091:8942): gap-y 20px between items (--sidebar-rail-item-gap)\n * - Dual panel (1092:542): gap-y 8px between sub-items (--sidebar-section-content-gap)\n */\nexport const sidebarMenuVariants = cva([\n \"flex w-full min-w-0 flex-col gap-1\",\n \"group-data-[mode=single]:gap-[var(--sidebar-rail-item-gap)]\",\n \"group-data-[mode=dual]:gap-[var(--sidebar-section-content-gap)]\",\n \"group-data-[mode=dual]:px-[var(--sidebar-section-content-padding-x)]\",\n])\n\n/**\n * SidebarMenuItem variant styles\n */\nexport const sidebarMenuItemVariants = cva([\n \"group/menu-item relative\",\n])\n\n/**\n * SidebarMenuButton variant styles\n */\nexport const sidebarMenuButtonVariants = cva(\n [\n \"peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm\",\n \"outline-hidden ring-sidebar-ring transition-[width,height,padding]\",\n \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\",\n \"focus-visible:ring-2\",\n \"active:bg-sidebar-accent active:text-sidebar-accent-foreground\",\n \"disabled:pointer-events-none disabled:opacity-50\",\n \"group-has-data-[sidebar=menu-action]/menu-item:pr-8\",\n \"aria-disabled:pointer-events-none aria-disabled:opacity-50\",\n \"data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground\",\n \"data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground\",\n \"group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2!\",\n \"[&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0\",\n // Dual mode — consumes Figma 1092:446 nav-item tokens:\n // padding 8px, radius 4px, gap 12px, font 14px Regular leading-1,\n // color muted-foreground default / foreground active, icon 20px\n \"group-data-[mode]/sidebar-wrapper:p-[var(--sidebar-nav-item-padding)]\",\n \"group-data-[mode]/sidebar-wrapper:rounded-[var(--sidebar-nav-item-radius)]\",\n \"group-data-[mode]/sidebar-wrapper:gap-[var(--sidebar-nav-item-gap)]\",\n \"group-data-[mode]/sidebar-wrapper:text-[length:var(--sidebar-nav-item-font-size)]\",\n \"group-data-[mode]/sidebar-wrapper:font-[var(--sidebar-nav-item-font-weight)]\",\n \"group-data-[mode]/sidebar-wrapper:leading-[var(--sidebar-nav-item-line-height)]\",\n \"group-data-[mode]/sidebar-wrapper:text-[color:var(--sidebar-nav-item-fg-default)]\",\n \"group-data-[mode]/sidebar-wrapper:[&>svg]:size-[var(--sidebar-nav-item-icon-size)]\",\n \"group-data-[mode]/sidebar-wrapper:hover:bg-[color:var(--sidebar-nav-item-bg-hover)]\",\n \"group-data-[mode]/sidebar-wrapper:hover:text-[color:var(--sidebar-nav-item-fg-active)]\",\n // Scoped `!` so the token-mode active bg/fg wins the Tailwind v4 stacked-variant\n // cascade over the base `data-[active=true]:bg-sidebar-accent` (which otherwise wins\n // by sort order). Idiomatic here (cf. `size-8!`/`p-2!` above). Gated on data-mode →\n // legacy sidebars (no data-mode) keep the shadcn mint; fixes single + dual alike.\n \"group-data-[mode]/sidebar-wrapper:data-[active=true]:bg-[color:var(--sidebar-nav-item-bg-hover)]!\",\n \"group-data-[mode]/sidebar-wrapper:data-[active=true]:text-[color:var(--sidebar-nav-item-fg-active)]!\",\n ],\n {\n variants: {\n variant: {\n default:\n \"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\",\n outline:\n \"bg-background shadow-[0_0_0_1px_var(--sidebar-border)] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_var(--sidebar-accent)]\",\n },\n size: {\n default: \"h-8 text-sm\",\n sm: \"h-7 text-xs\",\n lg: \"h-12 text-sm group-data-[collapsible=icon]:p-0!\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n)\n\n/**\n * SidebarRailButton variant styles\n *\n * Consumes sidebar.tokens.json sub-tokens (Figma 1087:204 Nav Item, status=Default/Active):\n * - padding 8px, radius 4px (rounded-md)\n * - icon size 20px (was 16px — Figma canonical)\n * - fg default = muted-foreground, active = foreground\n * - bg hover/active = muted\n */\nexport const sidebarRailButtonVariants = cva(\n [\n \"inline-flex items-center justify-center transition-colors shrink-0\",\n \"p-[var(--sidebar-rail-item-padding)]\",\n \"rounded-[var(--sidebar-rail-item-radius)]\",\n \"outline-hidden ring-sidebar-ring focus-visible:ring-2\",\n \"disabled:pointer-events-none disabled:opacity-50\",\n \"[&>svg]:size-[var(--sidebar-rail-item-icon-size)] [&>svg]:shrink-0\",\n ],\n {\n variants: {\n isActive: {\n true: \"bg-[color:var(--sidebar-rail-item-bg-hover)] text-[color:var(--sidebar-rail-item-fg-active)]\",\n false: \"bg-[color:var(--sidebar-rail-item-bg-default)] text-[color:var(--sidebar-rail-item-fg-default)] hover:bg-[color:var(--sidebar-rail-item-bg-hover)] hover:text-[color:var(--sidebar-rail-item-fg-active)]\",\n },\n },\n defaultVariants: {\n isActive: false,\n },\n }\n)\n\n/**\n * SidebarMenuAction variant styles\n */\nexport const sidebarMenuActionVariants = cva([\n \"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\",\n \"peer-hover/menu-button:text-sidebar-accent-foreground\",\n \"absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0\",\n \"outline-hidden transition-transform focus-visible:ring-2\",\n \"[&>svg]:size-4 [&>svg]:shrink-0\",\n \"after:absolute after:-inset-2 md:after:hidden\",\n ...PEER_SIZE_POSITIONS,\n \"group-data-[collapsible=icon]:hidden\",\n])\n\n/**\n * SidebarMenuAction showOnHover variant styles\n */\nexport const sidebarMenuActionShowOnHoverVariants = cva([\n \"peer-data-[active=true]/menu-button:text-sidebar-accent-foreground\",\n \"group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100\",\n \"data-[state=open]:opacity-100 md:opacity-0\",\n])\n\n/**\n * SidebarMenuBadge variant styles\n */\nexport const sidebarMenuBadgeVariants = cva([\n \"text-sidebar-foreground pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center\",\n \"rounded-md px-1 text-xs font-medium tabular-nums select-none\",\n \"peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground\",\n ...PEER_SIZE_POSITIONS,\n \"group-data-[collapsible=icon]:hidden\",\n])\n\n/**\n * SidebarMenuSkeleton variant styles\n */\nexport const sidebarMenuSkeletonVariants = cva([\n \"flex h-8 items-center gap-2 rounded-md px-2\",\n])\n\n/**\n * SidebarMenuSub variant styles\n */\nexport const sidebarMenuSubVariants = cva([\n \"border-sidebar-border mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l px-2.5 py-0.5\",\n \"group-data-[collapsible=icon]:hidden\",\n])\n\n/**\n * SidebarMenuSubItem variant styles\n */\nexport const sidebarMenuSubItemVariants = cva([\n \"group/menu-sub-item relative\",\n])\n\n/**\n * SidebarMenuSubButton variant styles\n */\nexport const sidebarMenuSubButtonVariants = cva(\n [\n \"text-sidebar-foreground ring-sidebar-ring hover:bg-sidebar-accent hover:text-sidebar-accent-foreground\",\n \"active:bg-sidebar-accent active:text-sidebar-accent-foreground\",\n \"[&>svg]:text-sidebar-accent-foreground\",\n \"flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2\",\n \"outline-hidden focus-visible:ring-2\",\n \"disabled:pointer-events-none disabled:opacity-50\",\n \"aria-disabled:pointer-events-none aria-disabled:opacity-50\",\n \"[&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0\",\n \"data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground\",\n \"group-data-[collapsible=icon]:hidden\",\n ],\n {\n variants: {\n size: {\n sm: \"text-xs\",\n md: \"text-sm\",\n },\n },\n defaultVariants: {\n size: \"md\",\n },\n }\n)\n","\"use client\"\n\nimport type {\n SidebarContentProps,\n SidebarContextProps,\n SidebarFooterProps,\n SidebarGroupActionProps,\n SidebarGroupContentProps,\n SidebarGroupLabelProps,\n SidebarGroupProps,\n SidebarHeaderProps,\n SidebarInputProps,\n SidebarInsetProps,\n SidebarMenuActionProps,\n SidebarMenuBadgeProps,\n SidebarMenuButtonProps,\n SidebarMenuItemProps,\n SidebarMenuProps,\n SidebarMenuSkeletonProps,\n SidebarMenuSubButtonProps,\n SidebarMenuSubItemProps,\n SidebarMenuSubProps,\n SidebarPanelContentProps,\n SidebarProps,\n SidebarProviderProps,\n SidebarRailButtonProps,\n SidebarRailContentProps,\n SidebarRailProps,\n SidebarSeparatorProps,\n SidebarTriggerProps,\n} from \"./Sidebar.types\"\n\nimport { Slot } from \"@radix-ui/react-slot\"\nimport { ChevronsUpDown, MoonIcon, PanelLeftCloseIcon, PanelLeftIcon, SunIcon } from \"lucide-react\"\nimport * as React from \"react\"\n\nimport { useIsMobile } from \"../../../hooks/use-mobile\"\nimport { cn } from \"../../../lib/utils\"\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"../../feedback/Tooltip\"\nimport { TextInput } from \"../../forms/TextInput\"\nimport {\n Sheet,\n SheetContent,\n SheetDescription,\n SheetHeader,\n SheetTitle,\n} from \"../../layout/Sheet\"\nimport { Avatar } from \"../../primitives/Avatar\"\nimport { Button } from \"../../primitives/Button\"\nimport { Divider } from \"../../primitives/Divider\"\nimport { SkeletonLoader } from \"../../primitives/SkeletonLoader\"\nimport {\n sidebarContainerVariants,\n sidebarContentVariants,\n sidebarDesktopVariants,\n sidebarFooterVariants,\n sidebarGapVariants,\n sidebarGroupActionVariants,\n sidebarGroupContentVariants,\n sidebarGroupLabelVariants,\n sidebarGroupVariants,\n sidebarHeaderVariants,\n sidebarInnerVariants,\n sidebarInputVariants,\n sidebarInsetVariants,\n sidebarMenuActionShowOnHoverVariants,\n sidebarMenuActionVariants,\n sidebarMenuBadgeVariants,\n sidebarMenuButtonVariants,\n sidebarMenuItemVariants,\n sidebarMenuSkeletonVariants,\n sidebarMenuSubButtonVariants,\n sidebarMenuSubItemVariants,\n sidebarMenuSubVariants,\n sidebarMenuVariants,\n sidebarMobileVariants,\n sidebarNonCollapsibleVariants,\n sidebarProviderVariants,\n sidebarRailButtonVariants,\n sidebarRailVariants,\n sidebarSeparatorVariants,\n sidebarTriggerVariants,\n} from \"./Sidebar.variants\"\n\n// App-level constants — NOT design tokens. Persistence + keyboard config.\n// Width tokens read from CSS vars (--sidebar-width, --sidebar-width-icon,\n// --sidebar-width-mobile, --sidebar-rail-width, --sidebar-panel-width)\n// emitted by @etus/tokens. See packages/tokens/src/components/sidebar.tokens.json.\nconst SIDEBAR_COOKIE_NAME = \"sidebar_state\"\nconst SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7\nconst SIDEBAR_KEYBOARD_SHORTCUT = \"b\"\n\nconst SidebarContext = React.createContext<null | SidebarContextProps>(null)\n\n/**\n * useSidebar - Hook to access sidebar context.\n *\n * Must be used within a SidebarProvider.\n */\nfunction useSidebar() {\n const context = React.use(SidebarContext)\n if (!context) {\n throw new Error(\"useSidebar must be used within a SidebarProvider.\")\n }\n\n return context\n}\n\n/**\n * SidebarProvider - Context provider for sidebar state management.\n *\n * Provides state for expanded/collapsed, mobile/desktop, and keyboard shortcuts.\n *\n * @example\n * <SidebarProvider>\n * <Sidebar>...</Sidebar>\n * <SidebarInset>...</SidebarInset>\n * </SidebarProvider>\n */\nfunction SidebarProvider({\n defaultOpen = true,\n mode,\n open: openProp,\n onOpenChange: setOpenProp,\n className,\n style,\n children,\n ...props\n}: SidebarProviderProps) {\n const isMobile = useIsMobile()\n const [openMobile, setOpenMobile] = React.useState(false)\n\n // This is the internal state of the sidebar.\n // We use openProp and setOpenProp for control from outside the component.\n const [internalOpen, setInternalOpen] = React.useState(defaultOpen)\n const open = openProp ?? internalOpen\n const cookieTimeoutRef = React.useRef<ReturnType<typeof setTimeout>>(undefined)\n const persistCookie = React.useCallback((openState: boolean) => {\n clearTimeout(cookieTimeoutRef.current)\n cookieTimeoutRef.current = setTimeout(() => {\n document.cookie = `${SIDEBAR_COOKIE_NAME}=${String(openState)}; path=/; max-age=${String(SIDEBAR_COOKIE_MAX_AGE)}`\n }, 300)\n }, [])\n\n const setOpen = React.useCallback(\n (value: ((value: boolean) => boolean) | boolean) => {\n if (typeof value === \"function\") {\n if (setOpenProp) {\n const resolved = value(open)\n setOpenProp(resolved)\n persistCookie(resolved)\n } else {\n setInternalOpen((prev) => {\n const next = value(prev)\n persistCookie(next)\n return next\n })\n }\n } else {\n if (setOpenProp) {\n setOpenProp(value)\n } else {\n setInternalOpen(value)\n }\n persistCookie(value)\n }\n },\n [setOpenProp, open, persistCookie]\n )\n\n // Helper to toggle the sidebar.\n const toggleSidebar = React.useCallback(() => {\n if (isMobile) { setOpenMobile((open) => !open); } else { setOpen((open) => !open); }\n }, [isMobile, setOpen, setOpenMobile])\n\n // Adds a keyboard shortcut to toggle the sidebar.\n React.useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (event.repeat) return\n if (\n event.key === SIDEBAR_KEYBOARD_SHORTCUT &&\n (event.metaKey || event.ctrlKey)\n ) {\n event.preventDefault()\n toggleSidebar()\n }\n }\n\n window.addEventListener(\"keydown\", handleKeyDown)\n return () => { window.removeEventListener(\"keydown\", handleKeyDown); }\n }, [toggleSidebar])\n\n // We add a state so that we can do data-state=\"expanded\" or \"collapsed\".\n // This makes it easier to style the sidebar with Tailwind classes.\n const state = open ? \"expanded\" : \"collapsed\"\n\n const contextValue = React.useMemo<SidebarContextProps>(\n () => ({\n state,\n open,\n setOpen,\n isMobile,\n mode,\n openMobile,\n setOpenMobile,\n toggleSidebar,\n }),\n [state, open, setOpen, isMobile, mode, openMobile, setOpenMobile, toggleSidebar]\n )\n\n return (\n <SidebarContext value={contextValue}>\n <TooltipProvider delayDuration={0}>\n <div\n style={\n {\n // Mode \"dual\" overrides --sidebar-width and --sidebar-width-icon to compose\n // rail + panel widths. Single mode uses the base token values from\n // @etus/tokens (--sidebar-width, --sidebar-width-icon) without override.\n ...(mode === \"dual\" && {\n \"--sidebar-width\": \"calc(var(--sidebar-rail-width) + var(--sidebar-panel-width))\",\n \"--sidebar-width-icon\": \"var(--sidebar-rail-width)\",\n }),\n ...style,\n } as React.CSSProperties\n }\n className={cn(sidebarProviderVariants(), className)}\n data-mode={mode}\n data-slot=\"sidebar-wrapper\"\n {...props}\n >\n {children}\n </div>\n </TooltipProvider>\n </SidebarContext>\n )\n}\n\n/**\n * SidebarDualMode - Private dual-mode rendering path (icon rail + text panel).\n *\n * Desktop: fixed sidebar with rail and panel children side by side.\n * Mobile: falls back to Sheet with panel content only (rail hidden).\n */\nfunction SidebarDualMode({\n side = \"left\",\n className,\n children,\n ...props\n}: SidebarProps) {\n const { isMobile, state, openMobile, setOpenMobile } = useSidebar()\n\n if (isMobile) {\n return (\n <Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n <SheetContent\n style={\n {\n \"--sidebar-width\": \"var(--sidebar-width-mobile)\",\n } as React.CSSProperties\n }\n className={cn(sidebarMobileVariants())}\n data-mobile=\"true\"\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar\"\n side={side}\n >\n <SheetHeader className=\"sr-only\">\n <SheetTitle>Sidebar</SheetTitle>\n <SheetDescription>Displays the mobile sidebar.</SheetDescription>\n </SheetHeader>\n <nav aria-label=\"Main navigation\" className=\"flex h-full w-full flex-col\">{children}</nav>\n </SheetContent>\n </Sheet>\n )\n }\n\n return (\n <div\n className={cn(sidebarDesktopVariants())}\n data-collapsible={state === \"collapsed\" ? \"icon\" : \"\"}\n data-mode=\"dual\"\n data-side={side}\n data-slot=\"sidebar\"\n data-state={state}\n data-variant=\"sidebar\"\n >\n {/* Gap spacer transitions between rail-only and rail+panel widths */}\n <div\n className={cn(\n sidebarGapVariants(),\n \"group-data-[collapsible=icon]:w-(--sidebar-width-icon)\"\n )}\n data-slot=\"sidebar-gap\"\n />\n <div\n className={cn(\n sidebarContainerVariants(),\n side === \"left\" ? \"left-0\" : \"right-0\",\n \"group-data-[collapsible=icon]:w-(--sidebar-width-icon)\",\n className\n )}\n data-slot=\"sidebar-container\"\n {...props}\n >\n <nav\n aria-label=\"Main navigation\"\n className=\"flex h-full w-full flex-row\"\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar-inner\"\n >\n {children}\n </nav>\n </div>\n </div>\n )\n}\n\n/**\n * Sidebar - The main sidebar component.\n *\n * Supports multiple variants and collapsible modes.\n * When `mode=\"dual\"` is set on SidebarProvider, delegates to SidebarDualMode.\n */\nfunction Sidebar({\n side = \"left\",\n variant = \"sidebar\",\n collapsible = \"offcanvas\",\n className,\n children,\n ...props\n}: SidebarProps) {\n const { isMobile, mode, state, openMobile, setOpenMobile } = useSidebar()\n\n if (mode === \"dual\") {\n return (\n <SidebarDualMode className={className} side={side} {...props}>\n {children}\n </SidebarDualMode>\n )\n }\n\n if (collapsible === \"none\") {\n return (\n <nav\n aria-label=\"Main navigation\"\n className={cn(sidebarNonCollapsibleVariants(), className)}\n data-slot=\"sidebar\"\n {...props}\n >\n {children}\n </nav>\n )\n }\n\n if (isMobile) {\n return (\n <Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n <SheetContent\n style={\n {\n \"--sidebar-width\": \"var(--sidebar-width-mobile)\",\n } as React.CSSProperties\n }\n className={cn(sidebarMobileVariants())}\n data-mobile=\"true\"\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar\"\n side={side}\n >\n <SheetHeader className=\"sr-only\">\n <SheetTitle>Sidebar</SheetTitle>\n <SheetDescription>Displays the mobile sidebar.</SheetDescription>\n </SheetHeader>\n <nav aria-label=\"Main navigation\" className=\"flex h-full w-full flex-col\">{children}</nav>\n </SheetContent>\n </Sheet>\n )\n }\n\n return (\n <div\n className={cn(sidebarDesktopVariants())}\n data-collapsible={state === \"collapsed\" ? collapsible : \"\"}\n data-mode={mode}\n data-side={side}\n data-slot=\"sidebar\"\n data-state={state}\n data-variant={variant}\n >\n {/* This is what handles the sidebar gap on desktop */}\n <div\n className={cn(\n sidebarGapVariants(),\n variant === \"floating\" || variant === \"inset\"\n ? \"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]\"\n : \"group-data-[collapsible=icon]:w-(--sidebar-width-icon)\"\n )}\n data-slot=\"sidebar-gap\"\n />\n <div\n className={cn(\n sidebarContainerVariants(),\n side === \"left\"\n ? \"left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]\"\n : \"right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]\",\n // Adjust the padding for floating and inset variants.\n variant === \"floating\" || variant === \"inset\"\n ? \"p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]\"\n : \"group-data-[collapsible=icon]:w-(--sidebar-width-icon)\",\n className\n )}\n data-slot=\"sidebar-container\"\n {...props}\n >\n <nav\n aria-label=\"Main navigation\"\n className={cn(sidebarInnerVariants())}\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar-inner\"\n >\n {children}\n </nav>\n </div>\n </div>\n )\n}\n\n/**\n * SidebarTrigger - Button to toggle the sidebar.\n */\nfunction SidebarTrigger({\n className,\n onClick,\n ...props\n}: SidebarTriggerProps) {\n const { toggleSidebar, state } = useSidebar()\n\n return (\n <Button\n aria-expanded={state === \"expanded\"}\n className={cn(sidebarTriggerVariants(), className)}\n data-sidebar=\"trigger\"\n data-slot=\"sidebar-trigger\"\n size=\"icon\"\n variant=\"ghost\"\n onClick={(event, payload) => {\n onClick?.(event, payload)\n toggleSidebar()\n }}\n {...props}\n >\n <PanelLeftIcon />\n <span className=\"sr-only\">Toggle Sidebar</span>\n </Button>\n )\n}\n\n/**\n * SidebarRail - Clickable edge to toggle sidebar.\n */\nfunction SidebarRail({ className, ...props }: SidebarRailProps) {\n const { toggleSidebar } = useSidebar()\n\n return (\n <button\n aria-label=\"Toggle Sidebar\"\n className={cn(sidebarRailVariants(), className)}\n data-sidebar=\"rail\"\n data-slot=\"sidebar-rail\"\n tabIndex={-1}\n title=\"Toggle Sidebar\"\n onClick={toggleSidebar}\n {...props}\n />\n )\n}\n\n/**\n * SidebarInset - Main content area adjacent to sidebar.\n */\nfunction SidebarInset({ className, ...props }: SidebarInsetProps) {\n return (\n <main\n className={cn(sidebarInsetVariants(), className)}\n data-slot=\"sidebar-inset\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarInput - Input field styled for sidebar.\n */\nfunction SidebarInput({\n className,\n ...props\n}: SidebarInputProps) {\n return (\n <TextInput\n className={cn(sidebarInputVariants(), className)}\n data-sidebar=\"input\"\n data-slot=\"sidebar-input\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarHeader - Header section of the sidebar.\n */\nfunction SidebarHeader({ className, ...props }: SidebarHeaderProps) {\n return (\n <div\n className={cn(sidebarHeaderVariants(), className)}\n data-sidebar=\"header\"\n data-slot=\"sidebar-header\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarFooter - Footer section of the sidebar.\n */\nfunction SidebarFooter({ className, ...props }: SidebarFooterProps) {\n return (\n <div\n className={cn(sidebarFooterVariants(), className)}\n data-sidebar=\"footer\"\n data-slot=\"sidebar-footer\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarSeparator - Divider for sidebar sections.\n */\nfunction SidebarSeparator({\n className,\n ...props\n}: SidebarSeparatorProps) {\n return (\n <Divider\n className={cn(sidebarSeparatorVariants(), className)}\n data-sidebar=\"separator\"\n data-slot=\"sidebar-separator\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarContent - Main scrollable content area.\n */\nfunction SidebarContent({ className, ...props }: SidebarContentProps) {\n return (\n <div\n className={cn(sidebarContentVariants(), className)}\n data-sidebar=\"content\"\n data-slot=\"sidebar-content\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarGroup - Group container for sidebar items.\n */\nfunction SidebarGroup({ className, ...props }: SidebarGroupProps) {\n return (\n <div\n className={cn(sidebarGroupVariants(), className)}\n data-sidebar=\"group\"\n data-slot=\"sidebar-group\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarGroupLabel - Label for a sidebar group.\n */\nfunction SidebarGroupLabel({\n className,\n asChild = false,\n ...props\n}: SidebarGroupLabelProps) {\n const Comp = asChild ? Slot : \"div\"\n\n return (\n <Comp\n className={cn(sidebarGroupLabelVariants(), className)}\n data-sidebar=\"group-label\"\n data-slot=\"sidebar-group-label\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarGroupAction - Action button for a sidebar group.\n */\nfunction SidebarGroupAction({\n className,\n asChild = false,\n ...props\n}: SidebarGroupActionProps) {\n const Comp = asChild ? Slot : \"button\"\n\n return (\n <Comp\n className={cn(sidebarGroupActionVariants(), className)}\n data-sidebar=\"group-action\"\n data-slot=\"sidebar-group-action\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarGroupContent - Content container for a sidebar group.\n */\nfunction SidebarGroupContent({\n className,\n ...props\n}: SidebarGroupContentProps) {\n return (\n <div\n className={cn(sidebarGroupContentVariants(), className)}\n data-sidebar=\"group-content\"\n data-slot=\"sidebar-group-content\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarMenu - Menu list container.\n */\nfunction SidebarMenu({ className, ...props }: SidebarMenuProps) {\n return (\n <ul\n className={cn(sidebarMenuVariants(), className)}\n data-sidebar=\"menu\"\n data-slot=\"sidebar-menu\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarMenuItem - Individual menu item.\n */\nfunction SidebarMenuItem({ className, ...props }: SidebarMenuItemProps) {\n return (\n <li\n className={cn(sidebarMenuItemVariants(), className)}\n data-sidebar=\"menu-item\"\n data-slot=\"sidebar-menu-item\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarMenuButton - Interactive menu button with variants.\n */\nfunction SidebarMenuButton({\n asChild = false,\n isActive = false,\n variant = \"default\",\n size = \"default\",\n tooltip,\n className,\n ...props\n}: SidebarMenuButtonProps) {\n const Comp = asChild ? Slot : \"button\"\n const { isMobile, state } = useSidebar()\n\n const button = (\n <Comp\n className={cn(sidebarMenuButtonVariants({ variant, size }), className)}\n data-active={isActive}\n data-sidebar=\"menu-button\"\n data-size={size}\n data-slot=\"sidebar-menu-button\"\n {...props}\n />\n )\n\n if (!tooltip) {\n return button\n }\n\n if (typeof tooltip === \"string\") {\n tooltip = {\n children: tooltip,\n }\n }\n\n return (\n <Tooltip>\n <TooltipTrigger asChild>{button}</TooltipTrigger>\n <TooltipContent\n align=\"center\"\n hidden={state !== \"collapsed\" || isMobile}\n side=\"right\"\n {...tooltip}\n />\n </Tooltip>\n )\n}\n\n/**\n * SidebarMenuAction - Action button within a menu item.\n */\nfunction SidebarMenuAction({\n className,\n asChild = false,\n showOnHover = false,\n ...props\n}: SidebarMenuActionProps) {\n const Comp = asChild ? Slot : \"button\"\n\n return (\n <Comp\n className={cn(\n sidebarMenuActionVariants(),\n showOnHover && sidebarMenuActionShowOnHoverVariants(),\n className\n )}\n data-sidebar=\"menu-action\"\n data-slot=\"sidebar-menu-action\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarMenuBadge - Badge displayed in a menu item.\n */\nfunction SidebarMenuBadge({\n className,\n ...props\n}: SidebarMenuBadgeProps) {\n return (\n <div\n className={cn(sidebarMenuBadgeVariants(), className)}\n data-sidebar=\"menu-badge\"\n data-slot=\"sidebar-menu-badge\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarMenuSkeleton - Loading skeleton for menu items.\n */\nfunction SidebarMenuSkeleton({\n className,\n showIcon = false,\n ...props\n}: SidebarMenuSkeletonProps) {\n const skeletonId = React.useId()\n // Deterministic width between 50 to 90% based on component id.\n const width = React.useMemo(() => {\n let hash = 0\n for (let i = 0; i < skeletonId.length; i += 1) {\n hash = Math.trunc(hash * 31 + skeletonId.charCodeAt(i))\n }\n const normalized = Math.abs(hash) % 41 + 50\n return `${String(normalized)}%`\n }, [skeletonId])\n\n return (\n <div\n className={cn(sidebarMenuSkeletonVariants(), className)}\n data-sidebar=\"menu-skeleton\"\n data-slot=\"sidebar-menu-skeleton\"\n {...props}\n >\n {showIcon && (\n <SkeletonLoader\n className=\"size-4 rounded-md\"\n data-sidebar=\"menu-skeleton-icon\"\n />\n )}\n <SkeletonLoader\n style={\n {\n \"--skeleton-width\": width,\n } as React.CSSProperties\n }\n className=\"h-4 max-w-(--skeleton-width) flex-1\"\n data-sidebar=\"menu-skeleton-text\"\n />\n </div>\n )\n}\n\n/**\n * SidebarMenuSub - Submenu container.\n */\nfunction SidebarMenuSub({ className, ...props }: SidebarMenuSubProps) {\n return (\n <ul\n className={cn(sidebarMenuSubVariants(), className)}\n data-sidebar=\"menu-sub\"\n data-slot=\"sidebar-menu-sub\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarMenuSubItem - Individual submenu item.\n */\nfunction SidebarMenuSubItem({\n className,\n ...props\n}: SidebarMenuSubItemProps) {\n return (\n <li\n className={cn(sidebarMenuSubItemVariants(), className)}\n data-sidebar=\"menu-sub-item\"\n data-slot=\"sidebar-menu-sub-item\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarMenuSubButton - Interactive button within a submenu.\n */\nfunction SidebarMenuSubButton({\n asChild = false,\n size = \"md\",\n isActive = false,\n className,\n ...props\n}: SidebarMenuSubButtonProps) {\n const Comp = asChild ? Slot : \"a\"\n\n return (\n <Comp\n className={cn(sidebarMenuSubButtonVariants({ size }), className)}\n data-active={isActive}\n data-sidebar=\"menu-sub-button\"\n data-size={size}\n data-slot=\"sidebar-menu-sub-button\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarRailContent - Icon rail zone in dual mode (always visible, 64px wide).\n *\n * Owns the Figma rail-column layout (1091:8943): container padding 12/24,\n * top/bottom blocks pinned apart, 24px between stacked blocks. Spacing\n * between items inside a block is composition — wrap them in an element with\n * `gap-[var(--sidebar-rail-item-gap)]` (20px).\n */\nfunction SidebarRailContent({\n className,\n ...props\n}: SidebarRailContentProps) {\n const { isMobile, mode } = useSidebar()\n\n if (isMobile && mode === \"dual\") return null\n\n return (\n <div\n className={cn(\n \"flex h-full w-[var(--rail-width)] shrink-0 flex-col items-center justify-between\",\n \"gap-[var(--sidebar-rail-group-gap)]\",\n \"px-[var(--sidebar-container-padding-x)] py-[var(--sidebar-container-padding-y)]\",\n \"border-r border-[color:var(--rail-border)]\",\n \"bg-[color:var(--rail-background)]\",\n className\n )}\n data-sidebar=\"rail-content\"\n data-slot=\"sidebar-rail-content\"\n {...props}\n />\n )\n}\n\n/**\n * SidebarRailButton - Icon button for the sidebar rail (32×32).\n *\n * Supports active/inactive states with Figma-aligned sizing.\n */\nfunction SidebarRailButton({\n isActive = false,\n tooltip,\n className,\n ...props\n}: SidebarRailButtonProps) {\n const button = (\n <button\n className={cn(sidebarRailButtonVariants({ isActive: isActive ?? undefined }), className)}\n data-active={isActive}\n data-sidebar=\"rail-button\"\n data-slot=\"sidebar-rail-button\"\n {...props}\n />\n )\n\n if (!tooltip) {\n return button\n }\n\n return (\n <Tooltip>\n <TooltipTrigger asChild>{button}</TooltipTrigger>\n <TooltipContent side=\"right\">{tooltip}</TooltipContent>\n </Tooltip>\n )\n}\n\n/**\n * SidebarPanelContent - Text panel zone in dual mode (toggleable, 13.5rem wide).\n *\n * Collapses to width 0 when sidebar state is \"collapsed\".\n */\nfunction SidebarPanelContent({\n className,\n ...props\n}: SidebarPanelContentProps) {\n const { open } = useSidebar()\n\n return (\n <div\n className={cn(\n \"flex h-full flex-col overflow-hidden\",\n \"w-[var(--sidebar-panel-width)]\",\n // Figma 1092:542 — panel bottom padding = 80px\n \"pb-[var(--sidebar-panel-padding-bottom)]\",\n \"bg-sidebar text-sidebar-foreground\",\n \"transition-[width,opacity] duration-200 ease-linear motion-reduce:transition-none\",\n !open && \"w-0 opacity-0\",\n className\n )}\n data-sidebar=\"panel-content\"\n data-slot=\"sidebar-panel-content\"\n data-state={open ? \"expanded\" : \"collapsed\"}\n {...props}\n />\n )\n}\n\n/* ─────────────────────────────────────────────────────────────\n * Sub-componentes alinhados aos Figma nodes:\n * - Sidebar / Logo (1087-323) → SidebarLogo\n * - Sidebar / Avatar (1088-627) → SidebarAvatar\n * - Sidebar / Color Mode Toggle (1089-324) → SidebarThemeToggle\n * Valores numéricos pinados em docs/proposals/sidebar-filetree-components/\n * 11-Prototype-values.md (seção 9).\n * ─────────────────────────────────────────────────────────────*/\n\nfunction SevenLogo({ className, ...props }: React.SVGProps<SVGSVGElement>) {\n return (\n <svg\n aria-hidden=\"true\"\n className={className}\n fill=\"none\"\n viewBox=\"0 0 447 421\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...props}\n >\n <rect\n height=\"420.697\"\n rx=\"52.3255\"\n style={{ fill: \"var(--brand-primary-500, var(--primary))\" }}\n width=\"446.511\"\n />\n <path\n clipRule=\"evenodd\"\n d=\"M297.097 126.658C313.023 126.661 327.15 131.593 337.759 140.229L337.772 140.241C342.56 143.898 346.681 148.278 349.989 153.277C360.539 169.219 361.562 189.733 351.524 207.699C341.313 225.975 325.169 234.706 307.327 237.12C289.856 239.483 270.755 235.793 253.953 229.106C257.099 236.591 262.271 243.904 268.869 249.321C273.202 252.609 278.097 255.077 283.391 256.278C304.929 261.165 323.562 252.744 336.549 236.264L337.34 235.261L365.526 256.947L365.513 256.964L366.897 258.029L366.095 259.055C346.033 284.695 314.063 300.49 276.874 292.052C264.669 289.283 254.128 283.966 245.384 276.913L245.377 276.907L245.36 276.894L245.353 276.888L244.889 276.528C224.237 260.353 213.344 234.603 213.866 209.528C213.876 209.081 214.479 202.313 214.479 202.313C214.479 202.313 218.001 182.504 224.799 169.993C237.562 146.503 261.564 126.651 297.097 126.658ZM298.448 163.313C276.722 163.308 261.843 176.856 255.022 192.602C262.048 196.07 269.076 198.519 275.811 199.995C299.647 205.218 314.251 197.954 319.102 189.272C322.736 182.767 322.06 176.535 318.957 171.845C318.134 170.602 317.053 169.35 315.692 168.179L315.341 167.93L314.978 167.684C311.174 165.165 305.764 163.314 298.448 163.313Z\"\n fill=\"black\"\n fillRule=\"evenodd\"\n />\n <path\n d=\"M246.018 186.67C268.826 199.868 252.621 219.225 249.886 226.823C212.772 211.745 200.922 187.978 177.479 169.658C158.128 154.537 139.239 156.58 131.217 162.056C127.067 164.888 125.582 168.878 125.582 173.623C125.582 176.588 126.375 179.159 127.957 181.334C129.538 183.509 131.716 185.286 134.484 186.67C137.449 188.054 140.808 189.34 144.562 190.526L170.368 198.237C183.616 202.192 193.804 208.125 200.922 216.034C208.237 223.942 211.893 233.632 211.893 245.099C211.893 254.788 209.323 263.391 204.182 270.905C199.041 278.22 191.923 283.954 182.828 288.106C173.732 292.258 163.052 294.336 150.792 294.336C133.591 294.336 118.561 290.28 105.709 282.174C93.0569 273.87 84.3585 262.7 79.613 248.665L108.679 234.724C112.831 243.818 118.564 250.937 125.88 256.078C133.393 261.218 141.698 263.789 150.792 263.789C157.911 263.789 163.551 262.204 167.703 259.04C171.853 255.878 173.925 251.727 173.926 246.588C173.926 243.426 173.039 240.854 171.261 238.877C169.679 236.702 167.402 234.917 164.436 233.533C161.668 231.952 158.604 230.665 155.243 229.677L128.85 222.264C115.206 218.309 104.818 212.276 97.7 204.169C90.7811 196.063 87.3242 186.473 87.3242 175.401C87.3242 165.515 89.7943 156.912 94.7376 149.596C99.8784 142.083 106.897 136.249 115.794 132.097C137.208 122.527 166.002 124.69 188.861 140.375C214.713 158.114 223.21 173.473 246.018 186.67Z\"\n fill=\"black\"\n />\n </svg>\n )\n}\n\ninterface SidebarLogoProps extends Omit<React.ComponentProps<\"div\">, \"onClick\"> {\n brand?: string\n collapseLabel?: string\n mark?: React.ReactNode\n onClick?: (event: React.MouseEvent) => void\n showCollapse?: boolean\n sub?: string\n}\n\n/**\n * SidebarLogo — branding header inside `<SidebarHeader>`.\n *\n * Renders a logomark + brand name + (optional) sub line + (optional) collapse trigger.\n * Aligned with Figma node `Sidebar / Logo` (1087-323).\n *\n * Default `mark` is the Seven brand logo. Pass a custom `mark` to override.\n *\n * @example\n * <SidebarHeader>\n * <SidebarLogo brand=\"ETUS · DAM\" showCollapse />\n * </SidebarHeader>\n */\nfunction SidebarLogo({\n mark = <SevenLogo className=\"size-full\" />,\n brand,\n sub,\n showCollapse = false,\n collapseLabel = \"Colapsar painel\",\n onClick,\n className,\n ...props\n}: SidebarLogoProps) {\n const { toggleSidebar } = useSidebar()\n return (\n <div\n className={cn(\n // Figma 1087:507 — logo↔brand gap = 12px; in token mode (data-mode set)\n // the row has no padding of its own: SidebarHeader carries the container\n // padding (px-12 pt-24)\n \"flex items-center gap-3 px-3.5 pt-4 pb-3\",\n \"group-data-[mode]/sidebar-wrapper:p-0\",\n className,\n )}\n data-slot=\"sidebar-logo\"\n {...props}\n >\n {mark && (\n <button\n className={cn(\n \"grid place-items-center shrink-0 size-[var(--sidebar-logo-size)] rounded-[var(--sidebar-logo-radius)]\",\n \"bg-[color:var(--sidebar-logo-background)] text-[color:var(--sidebar-logo-foreground)]\",\n onClick && \"cursor-pointer transition-transform hover:translate-y-px active:translate-y-0.5 motion-reduce:transform-none\",\n )}\n aria-label={brand ?? \"Home\"}\n data-slot=\"sidebar-logo-mark\"\n type=\"button\"\n onClick={onClick}\n >\n {mark}\n </button>\n )}\n {(brand ?? sub) && (\n <div className=\"flex flex-col min-w-0 flex-1 leading-tight group-data-[collapsible=icon]:hidden\" data-slot=\"sidebar-logo-meta\">\n {brand && (\n <span\n className=\"text-[18px] font-semibold leading-6 truncate\"\n data-slot=\"sidebar-logo-brand\"\n >\n {brand}\n </span>\n )}\n {sub && (\n <span\n className=\"text-[11px] text-[color:var(--muted-foreground)] truncate\"\n data-slot=\"sidebar-logo-sub\"\n >\n {sub}\n </span>\n )}\n </div>\n )}\n {showCollapse && (\n <button\n className={cn(\n // Figma 1087:507 Close — 32px button (p-4) with 16px PanelLeftClose\n \"grid place-items-center shrink-0 size-8 rounded-md\",\n \"bg-transparent text-[color:var(--muted-foreground)] cursor-pointer\",\n \"transition-colors hover:bg-[color:var(--muted)] hover:text-[color:var(--foreground)]\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[color:var(--ring)]\",\n \"group-data-[collapsible=icon]:hidden\",\n )}\n aria-label={collapseLabel}\n data-slot=\"sidebar-logo-collapse\"\n type=\"button\"\n onClick={() => { toggleSidebar(); }}\n >\n <PanelLeftCloseIcon size={16} />\n </button>\n )}\n </div>\n )\n}\n\ninterface SidebarAvatarProps {\n \"aria-label\"?: string\n avatar?: React.ComponentProps<typeof Avatar>\n className?: string\n compact?: boolean\n email?: string\n name?: string\n onClick?: (event: React.MouseEvent<HTMLButtonElement>) => void\n showChevron?: boolean\n}\n\n/**\n * SidebarAvatar — user-identity footer button inside `<SidebarFooter>`.\n *\n * Renders avatar + name + email + (optional) chevron, opens user menu on click.\n * Aligned with Figma node `Sidebar / Avatar` (1088-627).\n *\n * @example\n * <SidebarFooter>\n * <SidebarAvatar\n * avatar={{ initials: \"CR\", tone: \"mint\", size: \"sm\" }}\n * name=\"Camila Reis\"\n * email=\"camila@etus.com.br\"\n * onClick={() => userMenu.toggle()}\n * />\n * <SidebarThemeToggle />\n * </SidebarFooter>\n */\nfunction SidebarAvatar({\n avatar,\n name,\n email,\n showChevron = true,\n compact = false,\n onClick,\n className,\n \"aria-label\": ariaLabel,\n}: SidebarAvatarProps) {\n return (\n <button\n className={cn(\n // Figma 1088:626 — row padding = 4px, avatar↔text gap = 10px\n \"flex items-center gap-2.5 p-1 flex-1 min-w-0 rounded-md text-left\",\n \"bg-transparent cursor-pointer transition-colors hover:bg-[color:var(--muted)]\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[color:var(--ring)]\",\n className,\n )}\n aria-haspopup={onClick ? \"menu\" : undefined}\n aria-label={ariaLabel ?? (name ? `User menu — ${name}` : \"User menu\")}\n data-compact={compact || undefined}\n data-slot=\"sidebar-avatar\"\n type=\"button\"\n onClick={onClick}\n >\n {avatar && (\n <Avatar\n size=\"sm\"\n {...avatar}\n />\n )}\n {!compact && (name ?? email) && (\n <span className=\"flex flex-col min-w-0 flex-1 leading-tight group-data-[collapsible=icon]:hidden\" data-slot=\"sidebar-avatar-meta\">\n {name && (\n <span className=\"text-sm font-bold leading-5 text-[color:var(--foreground)] truncate\" data-slot=\"sidebar-avatar-name\">\n {name}\n </span>\n )}\n {email && (\n <span className=\"text-xs text-[color:var(--muted-foreground)] truncate\" data-slot=\"sidebar-avatar-email\">\n {email}\n </span>\n )}\n </span>\n )}\n {!compact && showChevron && (\n <ChevronsUpDown\n aria-hidden=\"true\"\n className=\"shrink-0 text-[color:var(--muted-foreground)] group-data-[collapsible=icon]:hidden\"\n data-slot=\"sidebar-avatar-chevron\"\n size={16}\n />\n )}\n </button>\n )\n}\n\ninterface SidebarThemeToggleProps {\n className?: string\n darkIcon?: React.ReactNode\n label?: (mode: \"dark\" | \"light\") => string\n lightIcon?: React.ReactNode\n mode?: \"dark\" | \"light\"\n onToggle?: (next: \"dark\" | \"light\") => void\n size?: \"default\" | \"sm\"\n}\n\n/**\n * useSidebarTheme — internal hook to read/write `class=\"dark\"|\"light\"` on `<html>`.\n *\n * Persists choice to localStorage under \"seven-theme\". Reacts to external changes\n * via a MutationObserver on `<html>.class`. Used by SidebarThemeToggle when no\n * `mode` prop is provided (uncontrolled mode).\n */\nfunction useSidebarTheme(): readonly [\"dark\" | \"light\", () => void] {\n const read = React.useCallback((): \"dark\" | \"light\" => {\n if (typeof document === \"undefined\") return \"light\"\n const html = document.documentElement\n if (html.classList.contains(\"dark\")) return \"dark\"\n if (html.classList.contains(\"light\")) return \"light\"\n return typeof window !== \"undefined\" && window.matchMedia(\"(prefers-color-scheme: dark)\").matches\n ? \"dark\"\n : \"light\"\n }, [])\n const [mode, setMode] = React.useState<\"dark\" | \"light\">(read)\n React.useEffect(() => {\n if (typeof document === \"undefined\") return\n const obs = new MutationObserver(() => { setMode(read()); })\n obs.observe(document.documentElement, { attributes: true, attributeFilter: [\"class\"] })\n return () => { obs.disconnect(); }\n }, [read])\n const toggle = React.useCallback(() => {\n if (typeof document === \"undefined\") return\n const next: \"dark\" | \"light\" = mode === \"dark\" ? \"light\" : \"dark\"\n const html = document.documentElement\n html.classList.remove(\"dark\", \"light\")\n html.classList.add(next)\n try { localStorage.setItem(\"seven-theme\", next) } catch {\n // localStorage may be unavailable (private browsing, SSR); fail silently\n }\n setMode(next)\n }, [mode])\n return [mode, toggle] as const\n}\n\n/**\n * SidebarThemeToggle — sun/moon button that flips `<html>` class between\n * `light` and `dark`. Use inside `<SidebarFooter>` next to `<SidebarAvatar>`.\n *\n * Aligned with Figma node `Sidebar / Color Mode Toggle` (1089-324).\n *\n * @example\n * // Uncontrolled — reads/writes html.classList + localStorage\n * <SidebarThemeToggle />\n *\n * @example\n * // Controlled\n * <SidebarThemeToggle mode={themeStore.mode} onToggle={themeStore.set} />\n */\nfunction SidebarThemeToggle({\n mode: controlledMode,\n onToggle,\n lightIcon,\n darkIcon,\n label = (m) => (m === \"dark\" ? \"Modo de cor: Escuro\" : \"Modo de cor: Claro\"),\n size = \"default\",\n className,\n}: SidebarThemeToggleProps) {\n const [internalMode, internalToggle] = useSidebarTheme()\n const mode = controlledMode ?? internalMode\n const isDark = mode === \"dark\"\n const handleClick = () => {\n if (onToggle) {\n onToggle(isDark ? \"light\" : \"dark\")\n } else {\n internalToggle()\n }\n }\n const iconSize = size === \"sm\" ? 11 : 12\n return (\n <button\n className={cn(\n \"flex items-center gap-[var(--sidebar-theme-toggle-gap)] rounded-md p-2 text-left cursor-pointer\",\n \"bg-transparent transition-colors hover:bg-[color:var(--muted)]\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[color:var(--ring)]\",\n // Figma 1091:8942/1095:1288 — the toggle row has no padding of its own;\n // the pill sits flush with the container edge, unlike nav items (p-2)\n \"group-data-[mode]/sidebar-wrapper:p-0\",\n className,\n )}\n aria-checked={isDark}\n aria-label={label(mode)}\n data-mode={mode}\n data-slot=\"sidebar-theme-toggle\"\n role=\"switch\"\n title={label(mode)}\n type=\"button\"\n onClick={handleClick}\n >\n {/* Pill switch — knob slides + swaps icon to reflect the active mode (Figma 1089:324) */}\n <span\n aria-hidden\n className={cn(\n \"relative flex h-[var(--sidebar-theme-toggle-track-height)] w-[var(--sidebar-theme-toggle-track-width)] shrink-0 items-center rounded-full px-0.5 transition-colors\",\n isDark ? \"bg-[color:var(--sidebar-theme-toggle-track-bg-dark)]\" : \"bg-[color:var(--sidebar-theme-toggle-track-bg-light)]\",\n )}\n >\n <span\n className={cn(\n \"grid size-[var(--sidebar-theme-toggle-knob-size)] place-items-center rounded-full bg-[color:var(--sidebar-theme-toggle-knob-bg)] text-[color:var(--sidebar-theme-toggle-knob-fg)] shadow-sm transition-transform duration-200\",\n isDark && \"translate-x-3\",\n )}\n >\n {isDark\n ? (darkIcon ?? <MoonIcon size={iconSize} />)\n : (lightIcon ?? <SunIcon size={iconSize} />)}\n </span>\n </span>\n {/* Label — hidden when the sidebar is collapsed to icons */}\n <span className=\"truncate text-[14px] text-[color:var(--muted-foreground)] group-data-[collapsible=icon]:hidden\">\n {label(mode)}\n </span>\n </button>\n )\n}\n\nexport {\n Sidebar,\n SidebarAvatar,\n SidebarContent,\n SidebarFooter,\n SidebarGroup,\n SidebarGroupAction,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarInput,\n SidebarInset,\n SidebarLogo,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarPanelContent,\n SidebarProvider,\n SidebarRail,\n SidebarRailButton,\n SidebarRailContent,\n SidebarSeparator,\n SidebarThemeToggle,\n SidebarTrigger,\n useSidebar,\n}\n"]}
|
|
@@ -23,7 +23,7 @@ function AccountSwitchItemContent({
|
|
|
23
23
|
isCurrent
|
|
24
24
|
}) {
|
|
25
25
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
26
|
-
/* @__PURE__ */ jsxs(Avatar, { size: "xs", children: [
|
|
26
|
+
account.logo ?? /* @__PURE__ */ jsxs(Avatar, { size: "xs", children: [
|
|
27
27
|
account.avatarSrc && /* @__PURE__ */ jsx(AvatarImage, { alt: account.name, src: account.avatarSrc }),
|
|
28
28
|
/* @__PURE__ */ jsx(AvatarFallback, { children: account.avatarFallback ?? account.name.charAt(0) })
|
|
29
29
|
] }),
|
|
@@ -115,8 +115,14 @@ function AccountSwitch({
|
|
|
115
115
|
"button",
|
|
116
116
|
{
|
|
117
117
|
className: cn(
|
|
118
|
-
"inline-flex min-w-0 items-center gap-2 h-[var(--input-size-md-h)] border
|
|
119
|
-
triggerShape === "pill" ? "rounded-full pl-1.5 pr-3" :
|
|
118
|
+
"inline-flex min-w-0 items-center gap-2 h-[var(--input-size-md-h)] border transition-colors hover:bg-accent/50 focus-visible:ring-2 focus-visible:ring-ring focus-visible:outline-none",
|
|
119
|
+
triggerShape === "pill" ? "rounded-full pl-1.5 pr-3 bg-card text-card-foreground" : [
|
|
120
|
+
// Figma 1138:2522 "Input" — bg background, border input, radius md;
|
|
121
|
+
// inside an icon-collapsed sidebar only the logo remains (2418:9772)
|
|
122
|
+
"rounded-[var(--radius-md)] px-3 bg-background text-foreground",
|
|
123
|
+
"border-[color:var(--input-border-default)]",
|
|
124
|
+
"group-data-[collapsible=icon]:px-2"
|
|
125
|
+
],
|
|
120
126
|
className
|
|
121
127
|
),
|
|
122
128
|
"data-placement": placement,
|
|
@@ -125,7 +131,7 @@ function AccountSwitch({
|
|
|
125
131
|
...props,
|
|
126
132
|
children: [
|
|
127
133
|
currentAccount && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
128
|
-
/* @__PURE__ */ jsxs(Avatar, { size: "xs", children: [
|
|
134
|
+
currentAccount.logo ?? /* @__PURE__ */ jsxs(Avatar, { size: "xs", children: [
|
|
129
135
|
currentAccount.avatarSrc && /* @__PURE__ */ jsx(
|
|
130
136
|
AvatarImage,
|
|
131
137
|
{
|
|
@@ -135,13 +141,26 @@ function AccountSwitch({
|
|
|
135
141
|
),
|
|
136
142
|
/* @__PURE__ */ jsx(AvatarFallback, { children: currentAccount.avatarFallback ?? currentAccount.name.charAt(0) })
|
|
137
143
|
] }),
|
|
138
|
-
/* @__PURE__ */ jsx(
|
|
144
|
+
/* @__PURE__ */ jsx(
|
|
145
|
+
"span",
|
|
146
|
+
{
|
|
147
|
+
className: cn(
|
|
148
|
+
"truncate max-w-[var(--account-switch-name-max-width)]",
|
|
149
|
+
// Figma 1138:2523 — rect/sidebar name is 16px regular muted-foreground
|
|
150
|
+
triggerShape === "pill" ? "text-sm font-medium" : "text-base font-normal text-muted-foreground group-data-[collapsible=icon]:hidden"
|
|
151
|
+
),
|
|
152
|
+
children: currentAccount.name
|
|
153
|
+
}
|
|
154
|
+
)
|
|
139
155
|
] }),
|
|
140
156
|
/* @__PURE__ */ jsx(
|
|
141
157
|
ChevronsUpDown,
|
|
142
158
|
{
|
|
143
|
-
|
|
144
|
-
|
|
159
|
+
className: cn(
|
|
160
|
+
"text-muted-foreground shrink-0 ml-auto",
|
|
161
|
+
triggerShape === "pill" ? "size-3.5" : "size-4 group-data-[collapsible=icon]:hidden"
|
|
162
|
+
),
|
|
163
|
+
"aria-hidden": "true"
|
|
145
164
|
}
|
|
146
165
|
)
|
|
147
166
|
]
|
|
@@ -172,5 +191,5 @@ function AccountSwitch({
|
|
|
172
191
|
}
|
|
173
192
|
|
|
174
193
|
export { AccountSwitch };
|
|
175
|
-
//# sourceMappingURL=chunk-
|
|
176
|
-
//# sourceMappingURL=chunk-
|
|
194
|
+
//# sourceMappingURL=chunk-W3JVNX35.js.map
|
|
195
|
+
//# sourceMappingURL=chunk-W3JVNX35.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/navigation/AccountSwitch/AccountSwitch.tsx"],"names":[],"mappings":"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","file":"chunk-W3JVNX35.js","sourcesContent":["\"use client\";\n\nimport type {\n AccountSwitchAccount,\n AccountSwitchProps,\n} from \"./AccountSwitch.types\";\n\nimport { Check, ChevronsUpDown } from \"lucide-react\";\n\nimport { cn } from \"../../../lib/utils\";\nimport { Avatar, AvatarFallback, AvatarImage } from \"../../primitives/Avatar\";\nimport { Badge } from \"../../primitives/Badge\";\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuGroup,\n DropdownMenuItem,\n DropdownMenuLabel,\n DropdownMenuSeparator,\n DropdownMenuSub,\n DropdownMenuSubContent,\n DropdownMenuSubTrigger,\n DropdownMenuTrigger,\n} from \"../DropdownMenu\";\n\nconst MAX_NAVIGATION_DEPTH = 3;\n\nfunction getCurrentAccount(\n accounts: AccountSwitchAccount[],\n): AccountSwitchAccount | undefined {\n for (const account of accounts) {\n if (account.isCurrent) {\n return account;\n }\n\n const currentChild = getCurrentAccount(account.children ?? []);\n if (currentChild) {\n return currentChild;\n }\n }\n\n return undefined;\n}\n\nfunction AccountSwitchItemContent({\n account,\n isCurrent,\n}: {\n account: AccountSwitchAccount;\n isCurrent: boolean;\n}) {\n return (\n <>\n {account.logo ?? (\n <Avatar size=\"xs\">\n {account.avatarSrc && (\n <AvatarImage alt={account.name} src={account.avatarSrc} />\n )}\n <AvatarFallback>\n {account.avatarFallback ?? account.name.charAt(0)}\n </AvatarFallback>\n </Avatar>\n )}\n <span className=\"min-w-0 flex-1 truncate\">{account.name}</span>\n {account.plan && (\n <Badge\n color={account.plan === \"PRO\" ? \"primary\" : \"muted\"}\n size=\"sm\"\n type=\"pill-color\"\n >\n {account.plan}\n </Badge>\n )}\n {isCurrent && (\n <Check aria-hidden=\"true\" className=\"size-3.5 text-primary\" />\n )}\n </>\n );\n}\n\nfunction AccountSwitch({\n className,\n accounts,\n triggerShape = \"pill\",\n placement = \"sidebar\",\n header,\n footer,\n onSelect,\n ...props\n}: AccountSwitchProps) {\n const currentAccount = getCurrentAccount(accounts) ?? accounts[0];\n const contentAlign = placement === \"header\" ? \"end\" : \"start\";\n\n const handleSelect = (account: AccountSwitchAccount) => {\n if (!account.disabled && account.id !== currentAccount?.id) {\n onSelect?.(account);\n }\n };\n\n const renderAccountItem = (account: AccountSwitchAccount, depth: number) => {\n const children =\n depth < MAX_NAVIGATION_DEPTH ? (account.children ?? []) : [];\n const hasChildren = children.length > 0;\n const isCurrent = account.id === currentAccount?.id;\n const stateProps = {\n \"aria-current\": isCurrent ? (\"true\" as const) : undefined,\n \"data-selected\": isCurrent ? \"true\" : undefined,\n };\n\n if (hasChildren) {\n return (\n <DropdownMenuSub key={account.id}>\n <DropdownMenuSubTrigger\n className={cn(\n \"flex min-w-0 items-center gap-2\",\n isCurrent && \"bg-accent text-accent-foreground\",\n )}\n data-account-switch-level={depth}\n disabled={account.disabled}\n {...stateProps}\n >\n <AccountSwitchItemContent account={account} isCurrent={isCurrent} />\n </DropdownMenuSubTrigger>\n <DropdownMenuSubContent\n className=\"min-w-[var(--account-switch-content-min-width)]\"\n data-account-switch-level={depth + 1}\n >\n <DropdownMenuGroup>\n {children.map((childAccount) =>\n renderAccountItem(childAccount, depth + 1),\n )}\n </DropdownMenuGroup>\n </DropdownMenuSubContent>\n </DropdownMenuSub>\n );\n }\n\n return (\n <DropdownMenuItem\n key={account.id}\n className={cn(\n \"flex min-w-0 items-center gap-2\",\n isCurrent && \"bg-accent text-accent-foreground\",\n )}\n data-account-switch-level={depth}\n disabled={account.disabled}\n onClick={() => {\n handleSelect(account);\n }}\n {...stateProps}\n >\n <AccountSwitchItemContent account={account} isCurrent={isCurrent} />\n </DropdownMenuItem>\n );\n };\n\n return (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <button\n className={cn(\n \"inline-flex min-w-0 items-center gap-2 h-[var(--input-size-md-h)] border transition-colors hover:bg-accent/50 focus-visible:ring-2 focus-visible:ring-ring focus-visible:outline-none\",\n triggerShape === \"pill\"\n ? \"rounded-full pl-1.5 pr-3 bg-card text-card-foreground\"\n : [\n // Figma 1138:2522 \"Input\" — bg background, border input, radius md;\n // inside an icon-collapsed sidebar only the logo remains (2418:9772)\n \"rounded-[var(--radius-md)] px-3 bg-background text-foreground\",\n \"border-[color:var(--input-border-default)]\",\n \"group-data-[collapsible=icon]:px-2\",\n ],\n className,\n )}\n data-placement={placement}\n data-slot=\"account-switch-trigger\"\n type=\"button\"\n {...props}\n >\n {currentAccount && (\n <>\n {currentAccount.logo ?? (\n <Avatar size=\"xs\">\n {currentAccount.avatarSrc && (\n <AvatarImage\n alt={currentAccount.name}\n src={currentAccount.avatarSrc}\n />\n )}\n <AvatarFallback>\n {currentAccount.avatarFallback ??\n currentAccount.name.charAt(0)}\n </AvatarFallback>\n </Avatar>\n )}\n <span\n className={cn(\n \"truncate max-w-[var(--account-switch-name-max-width)]\",\n // Figma 1138:2523 — rect/sidebar name is 16px regular muted-foreground\n triggerShape === \"pill\"\n ? \"text-sm font-medium\"\n : \"text-base font-normal text-muted-foreground group-data-[collapsible=icon]:hidden\",\n )}\n >\n {currentAccount.name}\n </span>\n </>\n )}\n <ChevronsUpDown\n className={cn(\n \"text-muted-foreground shrink-0 ml-auto\",\n triggerShape === \"pill\"\n ? \"size-3.5\"\n : \"size-4 group-data-[collapsible=icon]:hidden\",\n )}\n aria-hidden=\"true\"\n />\n </button>\n </DropdownMenuTrigger>\n <DropdownMenuContent\n align={contentAlign}\n className=\"min-w-[var(--account-switch-content-min-width)]\"\n data-placement={placement}\n data-slot=\"account-switch-content\"\n >\n {header && (\n <>\n <div className=\"px-2 py-1.5\">{header}</div>\n <DropdownMenuSeparator />\n </>\n )}\n <DropdownMenuLabel className=\"text-xs font-medium text-muted-foreground uppercase tracking-wider\">\n Contas\n </DropdownMenuLabel>\n <DropdownMenuGroup>\n {accounts.map((account) => renderAccountItem(account, 1))}\n </DropdownMenuGroup>\n {footer && (\n <>\n <DropdownMenuSeparator />\n {footer}\n </>\n )}\n </DropdownMenuContent>\n </DropdownMenu>\n );\n}\n\nexport { AccountSwitch };\n"]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
export { ReportBuilder } from '../../../chunk-
|
|
1
|
+
export { ReportBuilder } from '../../../chunk-4KOJTZVU.js';
|
|
2
2
|
import '../../../chunk-U74PNG4S.js';
|
|
3
|
+
import '../../../chunk-GAMOVEZD.js';
|
|
3
4
|
import '../../../chunk-WBE6VQOO.js';
|
|
4
5
|
import '../../../chunk-XETKCF73.js';
|
|
5
6
|
import '../../../chunk-DYDXGWH2.js';
|
|
6
|
-
import '../../../chunk-GAMOVEZD.js';
|
|
7
7
|
import '../../../chunk-AFCSDND5.js';
|
|
8
8
|
import '../../../chunk-HRNDJU7D.js';
|
|
9
9
|
import '../../../chunk-UP2VWCW5.js';
|
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
import '../../chunk-5ZWFIDO2.js';
|
|
2
|
-
export {
|
|
3
|
-
export { ReportBuilder } from '../../chunk-
|
|
4
|
-
export { RichTextBubbleMenuContent as RichTextBubbleMenu, RichTextEditor, RichTextFloatingMenuContent as RichTextFloatingMenu, RichTextToolbar, richTextEditorBubbleMenuVariants, richTextEditorContentVariants, richTextEditorFloatingMenuVariants, richTextEditorPlaceholderVariants, richTextEditorToolbarButtonVariants, richTextEditorToolbarVariants, richTextEditorVariants } from '../../chunk-X3AXEE3S.js';
|
|
2
|
+
export { Portal, portalContainerVariants, portalContentVariants, portalOverlayVariants } from '../../chunk-L2XR5IFJ.js';
|
|
3
|
+
export { ReportBuilder } from '../../chunk-4KOJTZVU.js';
|
|
5
4
|
export { AdvancedSearchInput, Search, SearchEmpty, SearchFilters, SearchHighlight, SearchHistory, SearchLoading, SearchResultGroup, SearchResultItem, SearchResults, searchEmptyVariants, searchFilterVariants, searchFiltersContainerVariants, searchGroupHeadingVariants, searchHighlightVariants, searchHistoryHeaderVariants, searchInputVariants, searchInputWrapperVariants, searchLoadingVariants, searchResultIconVariants, searchResultItemVariants, searchResultsVariants, searchVariants } from '../../chunk-ESLSPRYA.js';
|
|
6
|
-
export {
|
|
5
|
+
export { RichTextBubbleMenuContent as RichTextBubbleMenu, RichTextEditor, RichTextFloatingMenuContent as RichTextFloatingMenu, RichTextToolbar, richTextEditorBubbleMenuVariants, richTextEditorContentVariants, richTextEditorFloatingMenuVariants, richTextEditorPlaceholderVariants, richTextEditorToolbarButtonVariants, richTextEditorToolbarVariants, richTextEditorVariants } from '../../chunk-X3AXEE3S.js';
|
|
7
6
|
export { SortableList, SortableListDragHandle, SortableListItem, sortableListHandleVariants, sortableListItemVariants, sortableListOverlayVariants, sortableListVariants } from '../../chunk-LNY2EXOV.js';
|
|
7
|
+
export { ChangeIndicator, VersionActions, VersionBadge, VersionControl, VersionDiff, VersionItem, VersionList, VersionTimeline, changeIndicatorVariants, diffLineVariants, versionBadgeVariants, versionControlVariants, versionItemVariants, versionTimelineConnectorVariants, versionTimelineMarkerVariants } from '../../chunk-FPCRGFNY.js';
|
|
8
8
|
export { DefaultFallback, ErrorBoundary, errorBoundaryActionVariants, errorBoundaryCardVariants, errorBoundaryFallbackVariants, errorBoundaryIconVariants, errorBoundaryMessageVariants, errorBoundaryStackVariants, errorBoundaryTitleVariants } from '../../chunk-D2V2HKLX.js';
|
|
9
9
|
export { EventCalendar, EventCalendarAgenda, EventCalendarDay, EventCalendarEvent, EventCalendarHeader, EventCalendarMonth, EventCalendarWeek, eventCalendarAgendaItemVariants, eventCalendarCellVariants, eventCalendarDayNumberVariants, eventCalendarEventVariants, eventCalendarHeaderVariants, eventCalendarTimeSlotVariants, eventCalendarVariants, eventCalendarViewButtonVariants, getEventVariant } from '../../chunk-T6XRYT6Q.js';
|
|
10
|
-
export { FileUpload, FileUploadAvatar, FileUploadDropzone, FileUploadInline, FileUploadList, FileUploadPreview, FileUploadProgressBar, FileUploadTrigger } from '../../chunk-B6KQKQ4S.js';
|
|
11
10
|
export { FileDropzone, fileDropzoneVariants } from '../../chunk-2Q4I4VDB.js';
|
|
11
|
+
export { FileUpload, FileUploadAvatar, FileUploadDropzone, FileUploadInline, FileUploadList, FileUploadPreview, FileUploadProgressBar, FileUploadTrigger } from '../../chunk-B6KQKQ4S.js';
|
|
12
12
|
export { FilePreview, filePreviewActionButtonVariants, filePreviewActionsVariants, filePreviewContentVariants, filePreviewFallbackVariants, filePreviewInfoVariants, filePreviewVariants } from '../../chunk-V7WEN4SD.js';
|
|
13
|
+
export { MarkdownEditor, MarkdownHelp, MarkdownPreview, MarkdownToolbar } from '../../chunk-7EGN7IGY.js';
|
|
13
14
|
export { FilterBuilder, FilterGroupComponent as FilterGroup, FilterPreview, FilterRuleComponent as FilterRule, FilterToolbar, combinatorToggleVariants, emptyStateVariants, filterBuilderVariants, filterGroupHeaderVariants, filterGroupVariants, filterPreviewVariants, filterRuleVariants, filterToolbarVariants, isFilterGroup, isFilterRule, ruleFieldVariants, ruleOperatorVariants, ruleValueVariants, rulesContainerVariants } from '../../chunk-W7S7GPU5.js';
|
|
14
|
-
export { Portal, portalContainerVariants, portalContentVariants, portalOverlayVariants } from '../../chunk-L2XR5IFJ.js';
|
|
15
|
-
import '../../chunk-NGR4HFVA.js';
|
|
16
15
|
import '../../chunk-U74PNG4S.js';
|
|
17
|
-
|
|
16
|
+
import '../../chunk-NGR4HFVA.js';
|
|
17
|
+
export { DndContext, DragHandle, DragOverlay, Draggable, Droppable, SortableContext, SortableItem, arrayMove, closestCenter, closestCorners, dragHandleVariants, dragOverlayVariants, draggableVariants, droppableVariants, horizontalListSortingStrategy, pointerWithin, rectIntersection, rectSortingStrategy, rectSwappingStrategy, sortableItemVariants, verticalListSortingStrategy } from '../../chunk-BIUVOZQG.js';
|
|
18
18
|
import '../../chunk-UPYT2XM5.js';
|
|
19
19
|
export { AssetManager, AssetManagerEmpty, AssetManagerGrid, AssetManagerItem, AssetManagerList, AssetManagerSidebar, AssetManagerToolbar, AssetManagerUploader, assetManagerContentVariants, assetManagerEmptyVariants, assetManagerGridVariants, assetManagerItemInfoVariants, assetManagerItemVariants, assetManagerLoadingVariants, assetManagerSidebarVariants, assetManagerThumbnailVariants, assetManagerToolbarVariants, assetManagerUploaderVariants, assetManagerVariants } from '../../chunk-YCZ6M6EF.js';
|
|
20
|
+
export { Calendar, CalendarDayButton, calendarContainerVariants, calendarDayButtonVariants, calendarDayCellVariants, calendarDisabledVariants, calendarNavButtonVariants, calendarOutsideVariants, calendarRangeEndVariants, calendarRangeMiddleVariants, calendarRangeStartVariants, calendarTodayIndicatorVariants, calendarTodayVariants } from '../../chunk-YUHPTV2A.js';
|
|
20
21
|
export { Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, commandEmptyVariants, commandGroupVariants, commandInputClearVariants, commandInputIconVariants, commandInputVariants, commandInputWrapperVariants, commandItemVariants, commandListVariants, commandSeparatorVariants, commandShortcutVariants, commandVariants } from '../../chunk-JRWQHBJC.js';
|
|
21
|
-
|
|
22
|
+
import '../../chunk-GAMOVEZD.js';
|
|
22
23
|
import '../../chunk-WBE6VQOO.js';
|
|
23
24
|
import '../../chunk-XETKCF73.js';
|
|
24
25
|
import '../../chunk-PWCMCMDN.js';
|
|
25
26
|
import '../../chunk-DYDXGWH2.js';
|
|
26
|
-
import '../../chunk-GAMOVEZD.js';
|
|
27
27
|
import '../../chunk-AFCSDND5.js';
|
|
28
28
|
import '../../chunk-7TF5PVEU.js';
|
|
29
29
|
import '../../chunk-TAZPML2P.js';
|
|
@@ -1,44 +1,44 @@
|
|
|
1
1
|
import '../../chunk-FES2I2OT.js';
|
|
2
2
|
export { Tracker } from '../../chunk-GPW57XOW.js';
|
|
3
|
-
export { Timeline, TimelineConnector, TimelineContent, TimelineItemComponent as TimelineItem, TimelineMarker, timelineItemVariants, timelineMarkerVariants, timelineVariants } from '../../chunk-NCLOPI6U.js';
|
|
4
3
|
export { VirtualTable } from '../../chunk-IZC5YFGO.js';
|
|
5
|
-
export { LineChart } from '../../chunk-ZPAWUKJI.js';
|
|
6
|
-
export { List, ListItem, ListItemActions, ListItemContent, listItemVariants, listVariants } from '../../chunk-7HT32DZG.js';
|
|
7
|
-
export { MarkerBar, markerBarContainerVariants, markerBarMarkerVariants, markerBarMarkerWrapperVariants, markerBarRangeVariants } from '../../chunk-X4YUWX7H.js';
|
|
8
|
-
export { RadarChart } from '../../chunk-BQMQULAC.js';
|
|
9
4
|
export { PieChart } from '../../chunk-BFBGESUI.js';
|
|
5
|
+
export { RadarChart } from '../../chunk-BQMQULAC.js';
|
|
10
6
|
export { RadialChart } from '../../chunk-2XJWE2XR.js';
|
|
11
|
-
export { SingleStat } from '../../chunk-D6TH3EGA.js';
|
|
12
7
|
export { ScatterChart } from '../../chunk-AEE5GDNA.js';
|
|
13
|
-
export {
|
|
14
|
-
export {
|
|
15
|
-
export { Heatmap, HeatmapCell, HeatmapLegend, heatmapVariants } from '../../chunk-6GWO7JNP.js';
|
|
16
|
-
export { HoverCard, HoverCardContent, HoverCardTrigger } from '../../chunk-VWW3DJKI.js';
|
|
8
|
+
export { SingleStat } from '../../chunk-D6TH3EGA.js';
|
|
9
|
+
export { Timeline, TimelineConnector, TimelineContent, TimelineItemComponent as TimelineItem, TimelineMarker, timelineItemVariants, timelineMarkerVariants, timelineVariants } from '../../chunk-NCLOPI6U.js';
|
|
17
10
|
export { ImageGallery, ImageGalleryItem } from '../../chunk-3NLWCX2F.js';
|
|
18
|
-
export {
|
|
11
|
+
export { HoverCard, HoverCardContent, HoverCardTrigger } from '../../chunk-VWW3DJKI.js';
|
|
19
12
|
export { KPICard, KPICardGroup } from '../../chunk-7J5OM4ZD.js';
|
|
20
13
|
export { Sparkline } from '../../chunk-2VHARFMD.js';
|
|
14
|
+
export { Item, ItemActions, ItemContent, ItemDescription, ItemFooter, ItemGroup, ItemHeader, ItemMedia, ItemSeparator, ItemTitle, itemMediaVariants, itemVariants } from '../../chunk-VZZ3HP7G.js';
|
|
21
15
|
export { Lightbox } from '../../chunk-2FJJOHHH.js';
|
|
22
|
-
|
|
23
|
-
export {
|
|
24
|
-
export {
|
|
25
|
-
export { Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptyTitle, emptyMediaVariants } from '../../chunk-2NY6DDLO.js';
|
|
16
|
+
export { MarkerBar, markerBarContainerVariants, markerBarMarkerVariants, markerBarMarkerWrapperVariants, markerBarRangeVariants } from '../../chunk-X4YUWX7H.js';
|
|
17
|
+
export { List, ListItem, ListItemActions, ListItemContent, listItemVariants, listVariants } from '../../chunk-7HT32DZG.js';
|
|
18
|
+
export { LineChart } from '../../chunk-ZPAWUKJI.js';
|
|
26
19
|
export { DeltaBar } from '../../chunk-DNAGXK2C.js';
|
|
20
|
+
export { Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptyTitle, emptyMediaVariants } from '../../chunk-2NY6DDLO.js';
|
|
27
21
|
export { FeatureItem, featureItemVariants } from '../../chunk-K4MYVFWQ.js';
|
|
28
22
|
export { DataTable, DataTableBooleanCell, DataTableCurrencyCell, DataTableDateCell, DataTableProgressCell, DataTableRatingCell, downloadFile, exportToCSV, exportToExcel, exportToPDF, tableToCSV } from '../../chunk-P27ERD6W.js';
|
|
29
23
|
import '../../chunk-3W7FXRO5.js';
|
|
30
24
|
export { Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow } from '../../chunk-5SUD32RK.js';
|
|
31
25
|
export { FunnelChart } from '../../chunk-ZPCELVWJ.js';
|
|
32
|
-
export {
|
|
33
|
-
export {
|
|
26
|
+
export { Feed, FeedItemComponent as FeedItem, FeedSkeleton, feedItemVariants, feedVariants } from '../../chunk-B7ZLPQSO.js';
|
|
27
|
+
export { GaugeChart, gaugeChartVariants } from '../../chunk-5KTMPLDK.js';
|
|
28
|
+
export { Heatmap, HeatmapCell, HeatmapLegend, heatmapVariants } from '../../chunk-6GWO7JNP.js';
|
|
34
29
|
export { BarList } from '../../chunk-WMG2MMJF.js';
|
|
35
|
-
export { Callout, calloutVariants } from '../../chunk-XLTSCY22.js';
|
|
36
30
|
export { Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious } from '../../chunk-2YSZPUQZ.js';
|
|
37
31
|
export { CategoryBar } from '../../chunk-H4ANCFZG.js';
|
|
32
|
+
export { ChartCard, chartCardChartVariants, chartCardHeaderVariants, chartCardPreviousValueVariants, chartCardTitleVariants, chartCardValueContainerVariants, chartCardValueVariants, chartCardVariants } from '../../chunk-3KOLK3OB.js';
|
|
33
|
+
import '../../chunk-G6SIIN2B.js';
|
|
38
34
|
export { ComboChart } from '../../chunk-3MJNJKAF.js';
|
|
35
|
+
export { DashboardCard, DashboardCardContent, DashboardCardFooter, DashboardCardHeader, DashboardCardTitle, DashboardCardValue, dashboardCardContentVariants, dashboardCardFooterVariants, dashboardCardHeaderVariants, dashboardCardTitleVariants, dashboardCardValueVariants, dashboardCardVariants } from '../../chunk-SM4AZOEP.js';
|
|
39
36
|
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, accordionContentInnerVariants, accordionContentVariants, accordionItemVariants, accordionTriggerVariants } from '../../chunk-6SHOL6WR.js';
|
|
40
37
|
export { AreaChart } from '../../chunk-HJ4E6YPW.js';
|
|
38
|
+
export { Banner, bannerVariants } from '../../chunk-F7XARQUW.js';
|
|
39
|
+
export { BarChart } from '../../chunk-IMUBWKZC.js';
|
|
41
40
|
export { ChartContainer, ChartLegend, ChartLegendContent, ChartStyle, ChartTooltip, ChartTooltipContent } from '../../chunk-7I6KK6QE.js';
|
|
41
|
+
export { Callout, calloutVariants } from '../../chunk-XLTSCY22.js';
|
|
42
42
|
import '../../chunk-K45MMHLA.js';
|
|
43
43
|
import '../../chunk-4Y72SPNL.js';
|
|
44
44
|
import '../../chunk-45D4O7RK.js';
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import '../../chunk-MVOENLOZ.js';
|
|
2
|
+
export { Toaster } from '../../chunk-JDTAG7KZ.js';
|
|
2
3
|
export { UpdatesWidget } from '../../chunk-46ESMCEQ.js';
|
|
3
4
|
export { ErrorPage, errorDefaults } from '../../chunk-CYIFWQ5Y.js';
|
|
4
5
|
export { Message, messageVariants } from '../../chunk-DL7D5F7B.js';
|
|
5
6
|
export { FocusTrap } from '../../chunk-OQCGQG47.js';
|
|
6
|
-
export { Notification, NotificationDismissButton, notificationVariants, unreadDotVariants } from '../../chunk-U2CXFKRK.js';
|
|
7
7
|
export { Modal } from '../../chunk-VAVE4ZJF.js';
|
|
8
|
-
export {
|
|
8
|
+
export { Notification, NotificationDismissButton, notificationVariants, unreadDotVariants } from '../../chunk-U2CXFKRK.js';
|
|
9
9
|
export { Alert, AlertDescription, AlertTitle, alertVariants } from '../../chunk-G2MAGZHQ.js';
|
|
10
10
|
export { ConfirmModal } from '../../chunk-ZP4HYVDG.js';
|
|
11
11
|
export { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger } from '../../chunk-P7D6S6GX.js';
|
|
@@ -1,50 +1,50 @@
|
|
|
1
1
|
import '../../chunk-345S7BBL.js';
|
|
2
2
|
export { URLInput, urlLinkIconVariants, urlValidationIconVariants } from '../../chunk-TQBUBD3E.js';
|
|
3
|
-
export {
|
|
3
|
+
export { SuccessMessage, successMessageVariants } from '../../chunk-EVUHEBWX.js';
|
|
4
4
|
export { Slider, sliderLabelVariants, sliderMarkContainerVariants, sliderMarkLabelVariants, sliderMarkTickVariants, sliderMarkVariants, sliderRangeVariants, sliderRootVariants, sliderThumbVariants, sliderTooltipVariants, sliderTrackVariants } from '../../chunk-Z4KW5VW6.js';
|
|
5
5
|
export { Switch, switchThumbVariants, switchVariants } from '../../chunk-HAEZLC7V.js';
|
|
6
|
-
export { SuccessMessage, successMessageVariants } from '../../chunk-EVUHEBWX.js';
|
|
7
6
|
export { TagsInput, tagsInputInputVariants, tagsInputVariants } from '../../chunk-UPK5B2FL.js';
|
|
8
7
|
export { TimePicker, timeItemVariants, timePickerTriggerVariants, timeScrollListVariants } from '../../chunk-G2V7D7VC.js';
|
|
9
|
-
export {
|
|
8
|
+
export { TextareaField, textareaFieldDescriptionVariants, textareaFieldErrorVariants, textareaFieldLabelVariants, textareaFieldVariants } from '../../chunk-U2R47SPY.js';
|
|
10
9
|
export { PaymentInput, cardTypes, detectCardType, formatCardNumber, getCardBrandName, getCardConfig, getCardDigits, paymentInputIconVariants, paymentInputInputVariants, paymentInputVariants, validateCardNumber } from '../../chunk-6ZAMTPGN.js';
|
|
11
|
-
export { RadioCardGroup, RadioCardGroupItem, radioCardGroupItemContentVariants, radioCardGroupItemDescriptionVariants, radioCardGroupItemDotVariants, radioCardGroupItemIconVariants, radioCardGroupItemIndicatorVariants, radioCardGroupItemTitleVariants, radioCardGroupItemVariants, radioCardGroupVariants } from '../../chunk-S6ORCWM2.js';
|
|
12
|
-
export { RadioButton, radioButtonIndicatorVariants, radioButtonLabelVariants, radioButtonVariants, radioButtonWrapperVariants } from '../../chunk-XYYOV5GW.js';
|
|
13
10
|
export { PhoneInput, defaultCountries, findCountryByCode, findCountryByDialCode, formatPhoneNumber, getPhoneDigits, phoneInputCountryButtonVariants, phoneInputDropdownVariants, phoneInputInputVariants, phoneInputOptionVariants, phoneInputVariants } from '../../chunk-OEXQ2MOY.js';
|
|
11
|
+
export { RadioButton, radioButtonIndicatorVariants, radioButtonLabelVariants, radioButtonVariants, radioButtonWrapperVariants } from '../../chunk-XYYOV5GW.js';
|
|
12
|
+
export { RadioCardGroup, RadioCardGroupItem, radioCardGroupItemContentVariants, radioCardGroupItemDescriptionVariants, radioCardGroupItemDotVariants, radioCardGroupItemIconVariants, radioCardGroupItemIndicatorVariants, radioCardGroupItemTitleVariants, radioCardGroupItemVariants, radioCardGroupVariants } from '../../chunk-S6ORCWM2.js';
|
|
14
13
|
export { RadioGroup, RadioGroupItem } from '../../chunk-FRDYXDAE.js';
|
|
15
14
|
export { radioGroupIndicatorVariants, radioGroupItemVariants, radioGroupVariants } from '../../chunk-ONTUN5XH.js';
|
|
16
15
|
export { Rating, ratingItemVariants, ratingVariants } from '../../chunk-EVZ2GZU4.js';
|
|
17
16
|
export { SearchInput, searchClearButtonVariants, searchIconVariants } from '../../chunk-JPA2VQRW.js';
|
|
18
|
-
export { HelpText, helpTextIconVariants, helpTextVariants } from '../../chunk-YMYXWHDU.js';
|
|
19
|
-
export { IftaLabel } from '../../chunk-YACIRNVP.js';
|
|
20
17
|
export { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, inputGroupAddonVariants, inputGroupButtonVariants, inputGroupInputVariants, inputGroupTextareaVariants, inputGroupVariants } from '../../chunk-UYC7M3FM.js';
|
|
21
|
-
export {
|
|
18
|
+
export { IftaLabel } from '../../chunk-YACIRNVP.js';
|
|
22
19
|
export { InputOTPField, inputOTPFieldDescriptionVariants, inputOTPFieldErrorVariants, inputOTPFieldLabelVariants, inputOTPFieldVariants } from '../../chunk-VBJ26PZJ.js';
|
|
23
20
|
export { InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, inputOTPCaretInnerStyles, inputOTPCaretStyles, inputOTPContainerVariants, inputOTPGroupVariants, inputOTPSlotVariants } from '../../chunk-N3I6GA4I.js';
|
|
21
|
+
export { MultiSelect } from '../../chunk-IOWHM7ZY.js';
|
|
24
22
|
export { NativeSelect, NativeSelectOptGroup, NativeSelectOption, nativeSelectIconVariants, nativeSelectLeftIconVariants, nativeSelectVariants, nativeSelectWithLeftIconPadding, nativeSelectWrapperVariants } from '../../chunk-XOGMDABS.js';
|
|
25
|
-
export {
|
|
23
|
+
export { PasswordInput, passwordToggleVariants } from '../../chunk-ZKK7L7H7.js';
|
|
26
24
|
export { EmailInput, emailValidationIconVariants } from '../../chunk-N4UTBJRY.js';
|
|
27
25
|
export { ErrorMessage, errorMessageIconVariants, errorMessageListVariants, errorMessageVariants } from '../../chunk-UA3OQAHJ.js';
|
|
28
|
-
export { Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle, fieldContentVariants, fieldDescriptionVariants, fieldErrorVariants, fieldGroupVariants, fieldLabelVariants, fieldLegendVariants, fieldSeparatorVariants, fieldSetVariants, fieldTitleVariants, fieldVariants } from '../../chunk-G7PBPX3K.js';
|
|
29
26
|
export { DateRangeInput, DateRangePicker, DateRangePresets, dateRangeInputContainerVariants, dateRangeInputFieldVariants, dateRangePickerFooterVariants, dateRangePickerTriggerVariants, dateRangePresetVariants, dateRangePresetsContainerVariants, defaultPresets } from '../../chunk-WXBC3D2N.js';
|
|
27
|
+
export { Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle, fieldContentVariants, fieldDescriptionVariants, fieldErrorVariants, fieldGroupVariants, fieldLabelVariants, fieldLegendVariants, fieldSeparatorVariants, fieldSetVariants, fieldTitleVariants, fieldVariants } from '../../chunk-G7PBPX3K.js';
|
|
30
28
|
export { FloatLabel } from '../../chunk-ZARZYMBM.js';
|
|
31
29
|
export { Form, FormControl, FormDescription, FormField, FormFieldContext, FormItem, FormItemContext, FormLabel, FormMessage, formDescriptionVariants, formItemVariants, formLabelVariants, formMessageVariants, useFormField } from '../../chunk-NCT5WXKG.js';
|
|
30
|
+
export { HelpText, helpTextIconVariants, helpTextVariants } from '../../chunk-YMYXWHDU.js';
|
|
32
31
|
export { FormValidation, formValidationVariants } from '../../chunk-AEHYYTFW.js';
|
|
33
32
|
export { Autocomplete } from '../../chunk-G5TWK7L3.js';
|
|
34
33
|
export { CheckboxGroup, CheckboxGroupItem, checkboxGroupDescriptionVariants, checkboxGroupHeaderVariants, checkboxGroupItemWrapperVariants, checkboxGroupLabelVariants, checkboxGroupVariants } from '../../chunk-LQVQ7SHG.js';
|
|
35
34
|
export { ColorPicker, colorPickerPreviewVariants, colorPickerSwatchVariants, colorPickerTriggerVariants } from '../../chunk-WKWLKGNI.js';
|
|
36
35
|
export { Combobox } from '../../chunk-4RSHPKHB.js';
|
|
36
|
+
export { DatePicker, datePickerTriggerVariants } from '../../chunk-EYSTEGV5.js';
|
|
37
37
|
import '../../chunk-CNRV2IGH.js';
|
|
38
38
|
export { Textarea, textareaVariants } from '../../chunk-U6EOAIPK.js';
|
|
39
39
|
import '../../chunk-2ROFZG3A.js';
|
|
40
40
|
export { NumberInput, numberInputPaddingVariants, numberStepperButtonVariants, numberStepperVariants } from '../../chunk-U74PNG4S.js';
|
|
41
41
|
import '../../chunk-YUHPTV2A.js';
|
|
42
|
+
import '../../chunk-GAMOVEZD.js';
|
|
42
43
|
import '../../chunk-WG5IYG7X.js';
|
|
43
44
|
export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, selectContentVariants, selectItemVariants, selectLabelVariants, selectScrollButtonVariants, selectSeparatorVariants, selectTriggerVariants } from '../../chunk-WBE6VQOO.js';
|
|
44
45
|
export { Checkbox, checkboxIconVariants, checkboxVariants } from '../../chunk-XETKCF73.js';
|
|
45
46
|
export { TextInput } from '../../chunk-PWCMCMDN.js';
|
|
46
47
|
export { inputIconVariants, inputVariants, inputWrapperVariants } from '../../chunk-DYDXGWH2.js';
|
|
47
|
-
import '../../chunk-GAMOVEZD.js';
|
|
48
48
|
import '../../chunk-AFCSDND5.js';
|
|
49
49
|
import '../../chunk-7TF5PVEU.js';
|
|
50
50
|
import '../../chunk-TAZPML2P.js';
|