@overmap-ai/blocks 1.0.37 → 1.0.38

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.
@@ -1 +1 @@
1
- {"version":3,"file":"blocks.js","sources":["../src/cva/floating.ts","../src/cva/radius.ts","../src/Provider/context.ts","../src/Provider/hooks.ts","../src/Provider/Provider.tsx","../src/AlertDialog/cva.ts","../src/AlertDialog/Content.tsx","../src/AlertDialog/context.ts","../src/AlertDialog/hooks.ts","../src/ButtonGroup/context.ts","../src/ButtonGroup/ButtonGroup.tsx","../src/ButtonGroup/hooks.ts","../src/Buttons/cva.ts","../src/Buttons/Button.tsx","../src/Buttons/IconButton.tsx","../src/AlertDialog/Provider.tsx","../src/AlertDialog/index.ts","../src/Avatar/context.ts","../src/Avatar/cva.ts","../src/Avatar/Fallback.tsx","../src/Avatar/Image.tsx","../src/Avatar/Root.tsx","../src/Avatar/index.ts","../src/Badge/cva.ts","../src/Badge/Badge.tsx","../src/Card/cva.ts","../src/Card/Card.tsx","../src/Checkbox/Indicator.tsx","../src/Checkbox/cva.ts","../src/Checkbox/Root.tsx","../src/Checkbox/index.ts","../src/SelectContext/context.ts","../node_modules/@react-hook/passive-layout-effect/dist/module/index.js","../node_modules/@react-hook/latest/dist/module/index.js","../node_modules/@react-hook/resize-observer/dist/module/index.js","../src/utils.ts","../src/SelectContext/MultiSelectProvider.tsx","../src/SelectContext/SingleSelectProvider.tsx","../src/CheckboxGroup/context.ts","../src/CheckboxGroup/Item.tsx","../src/CheckboxGroup/ItemIndicator.tsx","../src/CheckboxGroup/utils.ts","../src/CheckboxGroup/Root.tsx","../src/CheckboxGroup/SelectAllItem.tsx","../src/CheckboxGroup/index.ts","../src/CollapsibleTree/context.ts","../src/CollapsibleTree/CollapsibleTree.tsx","../src/CommandMenu/context.ts","../src/CommandMenu/utils.ts","../src/CommandMenu/CheckboxIndicator.tsx","../src/CommandMenu/cva.ts","../src/CommandMenu/Item.tsx","../src/CommandMenu/CheckboxItem.tsx","../src/CommandMenu/Content.tsx","../src/CommandMenu/Empty.tsx","../src/CommandMenu/Group.tsx","../src/CommandMenu/Input.tsx","../src/CommandMenu/List.tsx","../src/CommandMenu/MultiSelectGroup.tsx","../src/CommandMenu/MultiSelectItem.tsx","../src/CommandMenu/Overlay.tsx","../src/CommandMenu/Page.tsx","../src/CommandMenu/Pages.tsx","../src/CommandMenu/PageTriggerItem.tsx","../src/CommandMenu/RadioGroup.tsx","../src/CommandMenu/RadioItem.tsx","../src/CommandMenu/Root.tsx","../src/CommandMenu/SelectAllItem.tsx","../src/CommandMenu/SelectedIndicator.tsx","../src/CommandMenu/Separator.tsx","../src/CommandMenu/Trigger.tsx","../src/CommandMenu/index.ts","../src/DayPicker/Chevron.tsx","../src/DayPicker/cva.ts","../src/DayPicker/DayPicker.tsx","../src/Dialog/context.ts","../src/Dialog/hooks.ts","../src/Dialog/Content.tsx","../src/Dialog/Overlay.tsx","../src/Dialog/Root.tsx","../src/Dialog/index.ts","../src/Heading/constants.ts","../src/Heading/cva.ts","../src/Heading/Heading.tsx","../src/HoverCard/Arrow.tsx","../src/HoverCard/cva.ts","../src/HoverCard/Content.tsx","../src/HoverCard/index.ts","../src/HoverUtility/HoverUtility.tsx","../src/Input/context.ts","../src/Input/cva.ts","../src/Input/Field.tsx","../src/Input/Root.tsx","../src/Input/Slot.tsx","../src/Input/index.ts","../src/Layout/context.ts","../src/Layout/Container.tsx","../src/Layout/Root.tsx","../src/SlideOut/utils.ts","../src/SlideOut/SlideOut.tsx","../src/Layout/SlideOut.tsx","../src/Layout/SlideOutOverlay.tsx","../src/Menu/constants.ts","../src/Menu/utils.ts","../src/Layout/SlideOutTrigger.tsx","../src/Layout/index.ts","../src/Link/cva.ts","../src/Link/Link.tsx","../src/CheckedIndicator/context.ts","../src/CheckedIndicator/CheckedIndicator.tsx","../src/Menu/cva.ts","../src/Menu/root/context.ts","../src/Menu/root/Root.tsx","../src/Menu/Content/context.ts","../src/Menu/Content/Content.tsx","../src/Menu/Sub/context.ts","../src/Menu/Sub/Sub.tsx","../src/Menu/Item/Item.tsx","../src/Menu/CheckboxItem/CheckboxItem.tsx","../src/Menu/CheckboxItemIndicator/CheckboxItemIndicator.tsx","../src/Menu/ClickTrigger/ClickTrigger.tsx","../src/Menu/ContextTrigger/ContextTrigger.tsx","../src/Menu/Group/Group.tsx","../src/Menu/Input/Field.tsx","../src/Menu/Input/Root.tsx","../src/Menu/Input/Slot.tsx","../src/Menu/Label/Label.tsx","../src/Menu/MultiSelectGroup/MultiSelectGroup.tsx","../src/Menu/SelectedIndicator/context.ts","../src/Menu/SelectedIndicator/SelectedIndicator.tsx","../src/Menu/MultiSelectItem/MultiSelectItem.tsx","../src/Menu/Pages/context.ts","../src/Menu/Pages/Pages.tsx","../src/Menu/PageContent/PageContent.tsx","../src/Menu/PageTrigger/PageTrigger.tsx","../src/Menu/Scroll/Scroll.tsx","../src/Menu/SelectAll/SelectAllItem.tsx","../src/Menu/SelectGroup/SelectGroup.tsx","../src/Menu/SelectItem/SelectItem.tsx","../src/Menu/Separator/Separator.tsx","../src/Menu/SubContent/SubContent.tsx","../src/Menu/SubTrigger/SubTrigger.tsx","../src/Menu/VirtualTrigger/VirtualTrigger.tsx","../src/Menu/index.ts","../src/RiIcon/RiIcon.tsx","../src/OvermapErrorBoundary/OvermapErrorBoundary.tsx","../src/Popover/Arrow.tsx","../src/Popover/cva.ts","../src/Popover/Content.tsx","../src/Popover/index.ts","../src/Progress/cva.ts","../src/Progress/Progress.tsx","../src/RadioCards/context.ts","../src/RadioCards/cva.ts","../src/RadioCards/Item.tsx","../src/RadioCards/Root.tsx","../src/RadioCards/index.ts","../src/RadioGroup/Indicator.tsx","../src/RadioGroup/context.ts","../src/RadioGroup/cva.ts","../src/RadioGroup/Item.tsx","../src/RadioGroup/Root.tsx","../src/RadioGroup/index.ts","../src/SegmentedControl/cva.ts","../src/SegmentedControl/context.ts","../src/SegmentedControl/hooks.ts","../src/SegmentedControl/Item.tsx","../src/SegmentedControl/Root.tsx","../src/SegmentedControl/index.ts","../src/SegmentedTabs/context.ts","../src/SegmentedTabs/cva.ts","../src/SegmentedTabs/List.tsx","../src/SegmentedTabs/Root.tsx","../src/SegmentedTabs/Trigger.tsx","../src/SegmentedTabs/index.ts","../src/Separator/cva.ts","../src/Separator/Separator.tsx","../src/Slider/cva.ts","../src/Slider/Slider.tsx","../src/Spinner/Spinner.tsx","../src/Switch/context.ts","../src/Switch/cva.ts","../src/Switch/Root.tsx","../src/Switch/Thumb.tsx","../src/Switch/index.ts","../src/Table/Body.tsx","../src/Table/context.ts","../src/Table/cva.ts","../src/Table/Cell.tsx","../src/Table/ColumnHeaderCell.tsx","../src/Table/Footer.tsx","../src/Table/Header.tsx","../src/Table/Root.tsx","../src/Table/Row.tsx","../src/Table/RowHeaderCell.tsx","../src/Table/index.ts","../src/Tabs/context.ts","../src/Tabs/cva.ts","../src/Tabs/List.tsx","../src/Tabs/Root.tsx","../src/Tabs/hooks.ts","../src/Tabs/Trigger.tsx","../src/Tabs/index.ts","../src/Text/cva.ts","../src/Text/Text.tsx","../src/TextArea/cva.ts","../src/TextArea/TextArea.tsx","../src/Toast/cva.ts","../src/Toast/Toast.tsx","../src/Toast/ToastContext.ts","../src/Toast/ToastProvider.tsx","../src/ToggleButton/cva.ts","../src/ToggleButton/BaseToggleButton.tsx","../src/ToggleButton/IconToggleButton.tsx","../src/ToggleButton/ToggleButton.tsx","../src/ToggleGroup/context.ts","../src/ToggleGroup/cva.ts","../src/ToggleGroup/BaseItem.tsx","../src/ToggleGroup/IconItem.tsx","../src/ToggleGroup/Item.tsx","../src/ToggleGroup/Root.tsx","../src/ToggleGroup/index.ts","../src/Tooltip/Arrow.tsx","../src/Tooltip/cva.ts","../src/Tooltip/Content.tsx","../src/Tooltip/index.ts"],"sourcesContent":["import { cva } from \"class-variance-authority\"\n\nexport const floating = cva(\n\t[\n\t\t\"data-[state=open]:animate-in\",\n\t\t\"data-[state=open]:fade-in-0\",\n\t\t\"data-[state=open]:zoom-in-95\",\n\t\t\"data-[state=closed]:animate-out\",\n\t\t\"data-[state=closed]:fade-out-0\",\n\t\t\"data-[state=closed]:zoom-out-95\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tshadow: {\n\t\t\t\t\"1\": [\"shadow-xs\"],\n\t\t\t\t\"2\": [\"shadow-sm\"],\n\t\t\t\t\"3\": [\"shadow-md\"],\n\t\t\t\t\"4\": [\"shadow-lg\"],\n\t\t\t\t\"5\": [\"shadow-xl\"],\n\t\t\t},\n\t\t\tside: {\n\t\t\t\ttop: [\"data-[side=top]:slide-in-from-bottom-2\"],\n\t\t\t\tright: [\"data-[side=right]:slide-in-from-left-2\"],\n\t\t\t\tbottom: [\"data-[side=bottom]:slide-in-from-top-2\"],\n\t\t\t\tleft: [\"data-[side=left]:slide-in-from-right-2\"],\n\t\t\t},\n\t\t},\n\t},\n)\n","import { cva } from \"class-variance-authority\"\n\nexport const radiusCva = cva([], {\n\tvariants: {\n\t\tmaxLarge: {\n\t\t\ttrue: [],\n\t\t\tfalse: [],\n\t\t},\n\t\tradius: {\n\t\t\tnone: [\"rounded-none\"],\n\t\t\txs: [\"rounded-xs\"],\n\t\t\tsm: [\"rounded-sm\"],\n\t\t\tmd: [\"rounded-md\"],\n\t\t\tlg: [\"rounded-lg\"],\n\t\t\txl: [],\n\t\t\tfull: [],\n\t\t},\n\t},\n\tcompoundVariants: [\n\t\t{\n\t\t\tmaxLarge: true,\n\t\t\tradius: \"xl\",\n\t\t\tclassName: [\"rounded-lg\"],\n\t\t},\n\t\t{\n\t\t\tmaxLarge: true,\n\t\t\tradius: \"full\",\n\t\t\tclassName: [\"rounded-lg\"],\n\t\t},\n\t\t{\n\t\t\tmaxLarge: false,\n\t\t\tradius: \"xl\",\n\t\t\tclassName: [\"rounded-xl\"],\n\t\t},\n\t\t{\n\t\t\tmaxLarge: false,\n\t\t\tradius: \"full\",\n\t\t\tclassName: [\"rounded-full\"],\n\t\t},\n\t],\n})\n","import { createContext } from \"react\"\n\nimport type { ComponentRadius } from \"./typings\"\n\nexport interface IProviderContext {\n\taccentColor: string\n\tradius: ComponentRadius\n}\n\nexport const ProviderContext = createContext({} as IProviderContext)\n","import { useContext } from \"react\"\n\nimport { ProviderContext } from \"./context\"\n\nexport const useProvider = () => {\n\tconst context = useContext(ProviderContext)\n\n\tif (!context) {\n\t\tthrow new Error(\"useProvider must be used within a Provider\")\n\t}\n\n\treturn context\n}\n","import { PropsWithChildren, useMemo } from \"react\"\n\nimport { ProviderContext } from \"./context\"\nimport type { ComponentRadius } from \"./typings\"\n\nexport interface ProviderProps extends PropsWithChildren {\n\taccentColor: string\n\tradius?: ComponentRadius\n}\n\nexport const Provider = (props: ProviderProps) => {\n\tconst { accentColor, radius = \"md\", children } = props\n\n\tconst contextValue = useMemo(\n\t\t() => ({\n\t\t\taccentColor,\n\t\t\tradius,\n\t\t}),\n\t\t[accentColor, radius],\n\t)\n\n\treturn <ProviderContext.Provider value={contextValue}>{children}</ProviderContext.Provider>\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const dialogOverlay = cva([\n\t\"fixed\",\n\t\"inset-0\",\n\n\t// background\n\t\"bg-(--black-a6)\",\n\t\"dark:bg-(--black-a8)\",\n\n\t// background and border\n\t\"duration-200\",\n\t\"data-[state='open']:animate-in\",\n\t\"data-[state='open']:fade-in-0\",\n\t\"data-[state='closed']:animate-out\",\n\t\"data-[state='closed']:fade-out-0\",\n])\n\nexport const dialogContent = cva(\n\t[\n\t\t\"h-max\",\n\t\t\"max-h-3/4\",\n\t\t\"overflow-hidden\",\n\t\t\"w-full\",\n\n\t\t// background and border\n\t\t\"shadow-md\",\n\t\t\"bg-(--color-background)\",\n\t\t\"dark:bg-(--base-2)\",\n\t\t\"ring-1\",\n\t\t\"ring-(--base-6)\",\n\t\t\"[scrollbar-width:thin]\",\n\t\t\"[scrollbar-color:var(--base-6)_transparent]\",\n\n\t\t// positioning\n\t\t\"fixed\",\n\t\t\"left-[50%]\",\n\t\t\"top-[50%]\",\n\t\t\"translate-x-[-50%]\",\n\t\t\"translate-y-[-50%]\",\n\n\t\t// animation\n\t\t\"duration-200\",\n\t\t\"data-[state='open']:animate-in\",\n\t\t\"data-[state='open']:fade-in-0\",\n\t\t\"data-[state='open']:zoom-in-95\",\n\t\t\"data-[state='closed']:animate-out\",\n\t\t\"data-[state='closed']:fade-out-0\",\n\t\t\"data-[state='closed']:zoom-out-95\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"text-xs\", \"p-2\", \"max-w-xs\"],\n\t\t\t\tsm: [\"text-sm\", \"p-3\", \"max-w-sm\"],\n\t\t\t\tmd: [\"text-md\", \"p-4\", \"max-w-md\"],\n\t\t\t\tlg: [\"text-lg\", \"p-5\", \"max-w-lg\"],\n\t\t\t\txl: [\"text-xl\", \"p-6\", \"max-w-xl\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n","import * as RadixAlertDialog from \"@radix-ui/react-alert-dialog\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { dialogContent, dialogOverlay } from \"./cva\"\nimport { AlertDialogVariantProps } from \"./typings\"\n\nexport interface AlertDialogContentProps extends RadixAlertDialog.AlertDialogContentProps, AlertDialogVariantProps {\n\tcontainer?: RadixAlertDialog.AlertDialogPortalProps[\"container\"]\n}\n\nexport const AlertDialogContent = forwardRef<HTMLDivElement, AlertDialogContentProps>((props, ref) => {\n\tconst { radius } = useProvider()\n\tconst { className, size, container, ...rest } = props\n\n\treturn (\n\t\t<RadixAlertDialog.Portal container={container}>\n\t\t\t<RadixAlertDialog.Overlay className={dialogOverlay({})} data-floating-content=\"\" />\n\t\t\t<RadixAlertDialog.Content\n\t\t\t\tclassName={cx(dialogContent({ size }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\t\tref={ref}\n\t\t\t\tdata-floating-content=\"\"\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t</RadixAlertDialog.Portal>\n\t)\n})\nAlertDialogContent.displayName = \"AlertDialogContent\"\n","import { createContext } from \"react\"\n\nimport { AlertDialogOptions } from \"./typings\"\n\ntype AlertDialogContextType = (options: AlertDialogOptions) => void\n\nexport const AlertDialogContext = createContext<AlertDialogContextType>(() => {\n\tthrow new Error(\"No AlertDialogProvider found\")\n})\n","import { useContext } from \"react\"\n\nimport { AlertDialogContext } from \"./context\"\n\nexport const useAlertDialog = () => {\n\tconst alertDialogContext = useContext(AlertDialogContext)\n\tif (!alertDialogContext) {\n\t\tthrow new Error(\"No AlertDialogProvider found\")\n\t}\n\treturn alertDialogContext\n}\n","import { createContext } from \"react\"\n\nimport type { ButtonSize, ButtonVariant } from \"../Buttons\"\nimport type { ComponentRadius } from \"../Provider\"\n\nexport interface IButtonGroupContext {\n\tvariant: ButtonVariant\n\tsize: ButtonSize\n\tradius: ComponentRadius\n\taccentColor: string\n}\n\nexport const ButtonGroupContext = createContext<IButtonGroupContext>({} as IButtonGroupContext)\n","import { ComponentProps, PropsWithoutRef, useMemo } from \"react\"\n\nimport type { ButtonVariantProps } from \"../Buttons\"\nimport { useProvider } from \"../Provider\"\nimport type { AccentColorProps } from \"../typings\"\nimport { ButtonGroupContext } from \"./context\"\n\nexport interface ButtonGroupProps\n\textends PropsWithoutRef<ComponentProps<\"div\">>,\n\t\tButtonVariantProps,\n\t\tAccentColorProps {}\n\nexport const ButtonGroup = (props: ButtonGroupProps) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tchildren,\n\t\tvariant = \"solid\",\n\t\tsize = \"md\",\n\t\tradius = providerContext.radius,\n\t\taccentColor = providerContext.accentColor,\n\t\t...rest\n\t} = props\n\n\tconst value = useMemo(\n\t\t() => ({\n\t\t\tvariant,\n\t\t\tsize,\n\t\t\tradius,\n\t\t\taccentColor,\n\t\t}),\n\t\t[accentColor, radius, size, variant],\n\t)\n\n\treturn (\n\t\t<div {...rest}>\n\t\t\t<ButtonGroupContext.Provider value={value}>{children}</ButtonGroupContext.Provider>\n\t\t</div>\n\t)\n}\nButtonGroup.displayName = \"Buttons\"\n","import { useContext } from \"react\"\n\nimport { ButtonGroupContext } from \"./context\"\n\nexport const useButtonGroup = () => useContext(ButtonGroupContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const buttonCva = cva(\n\t[\n\t\t\"inline-flex\",\n\t\t\"items-center\",\n\t\t\"justify-center\",\n\t\t\"shrink-0\",\n\t\t\"whitespace-nowrap\",\n\t\t\"text-center\",\n\t\t\"align-top\",\n\n\t\t// select\n\t\t\"cursor-pointer\",\n\t\t\"select-none\",\n\n\t\t// focus\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-(--accent-a8)\",\n\t\t\"focus-visible:outline-offset-2\",\n\n\t\t// disabled\n\t\t\"disabled:opacity-50\",\n\t\t\"disabled:pointer-events-none\",\n\n\t\t\"transition-[background,color,box-shadow]\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsolid: [\n\t\t\t\t\t\"ring-(--accent-9)\",\n\t\t\t\t\t\"bg-(--accent-9)\",\n\t\t\t\t\t\"hover:bg-(--accent-10)\",\n\t\t\t\t\t\"text-(--accent-contrast)\",\n\t\t\t\t\t\"active:brightness-110\",\n\n\t\t\t\t\t// trigger state\n\t\t\t\t\t\"data-[state='open']:bg-(--accent-10)\",\n\t\t\t\t],\n\t\t\t\tsoft: [\n\t\t\t\t\t\"bg-(--accent-a3)\",\n\t\t\t\t\t\"hover:bg-(--accent-a4)\",\n\t\t\t\t\t\"active:bg-(--accent-a5)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\n\t\t\t\t\t// trigger state\n\t\t\t\t\t\"data-[state='open']:bg-(--accent-a4)\",\n\t\t\t\t],\n\t\t\t\tghost: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"hover:bg-(--accent-a3)\",\n\t\t\t\t\t\"active:bg-(--accent-a4)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\n\t\t\t\t\t// trigger state\n\t\t\t\t\t\"data-[state='open']:bg-(--accent-a3)\",\n\t\t\t\t],\n\t\t\t\tsurface: [\n\t\t\t\t\t\"bg-(--accent-surface)\",\n\t\t\t\t\t\"hover:inset-ring-(--accent-a8)\",\n\t\t\t\t\t\"active:bg-(--accent-a3)\",\n\t\t\t\t\t\"inset-ring\",\n\t\t\t\t\t\"inset-ring-(--accent-a7)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"data-[state='open']:bg-(--accent-a4)\",\n\t\t\t\t],\n\t\t\t\toutline: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"inset-ring\",\n\t\t\t\t\t\"inset-ring-(--accent-a7)\",\n\t\t\t\t\t\"hover:inset-ring-(--accent-a8)\",\n\t\t\t\t\t\"hover:bg-(--accent-a3)\",\n\t\t\t\t\t\"active:bg-(--accent-a4)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"data-[state='open']:inset-ring-(--accent-a8)\",\n\t\t\t\t\t\"data-[state='open']:bg-(--accent-a3)\",\n\t\t\t\t],\n\t\t\t\tfill: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"inset-ring\",\n\t\t\t\t\t\"inset-ring-(--accent-a3)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"hover:inset-ring-0\",\n\t\t\t\t\t\"hover:bg-(--accent-a3)\",\n\t\t\t\t\t\"hover:text-(--accent-a12)\",\n\t\t\t\t\t\"active:bg-(--accent-a4)\",\n\t\t\t\t\t\"data-[state='open']:inset-ring-0\",\n\t\t\t\t\t\"data-[state='open']:bg-(--accent-a3)\",\n\t\t\t\t],\n\t\t\t},\n\t\t\ticon: {\n\t\t\t\ttrue: [],\n\t\t\t\tfalse: [],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"h-6\", \"text-xs\", \"gap-1.5\"],\n\t\t\t\tsm: [\"h-7\", \"text-sm\", \"gap-1.75\"],\n\t\t\t\tmd: [\"h-8\", \"text-base\", \"gap-2\"],\n\t\t\t\tlg: [\"h-9\", \"text-lg\", \"gap-2.25\"],\n\t\t\t\txl: [\"h-10\", \"text-xl\", \"gap-2.5\"],\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"w-6\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"px-3\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"w-7\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"px-3.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"w-8\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"px-4\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"w-9\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"px-4.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"w-10\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"px-5\",\n\t\t\t},\n\t\t],\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t\ticon: false,\n\t\t\tvariant: \"solid\",\n\t\t},\n\t},\n)\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, memo, PropsWithoutRef } from \"react\"\n\nimport { useButtonGroup } from \"../ButtonGroup\"\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { buttonCva } from \"./cva\"\nimport type { ButtonVariantProps } from \"./typings\"\n\nexport interface ButtonProps extends ButtonVariantProps, PropsWithoutRef<ComponentProps<\"button\">> {}\n\nexport const Button = memo(\n\tforwardRef<HTMLButtonElement, ButtonProps>((props, ref) => {\n\t\tconst providerContext = useProvider()\n\t\tconst buttonsContext = useButtonGroup()\n\t\tconst {\n\t\t\tchildren,\n\t\t\tclassName,\n\t\t\tvariant = buttonsContext.variant,\n\t\t\tsize = buttonsContext.size,\n\t\t\tradius = buttonsContext.radius ?? providerContext.radius,\n\t\t\taccentColor = buttonsContext.accentColor ?? providerContext.accentColor,\n\t\t\t...rest\n\t\t} = props\n\t\treturn (\n\t\t\t<button\n\t\t\t\tclassName={cx(\n\t\t\t\t\tbuttonCva({ size, icon: false, variant }),\n\t\t\t\t\tradiusCva({ radius, maxLarge: false }),\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\tref={ref}\n\t\t\t\tdata-accent-color={accentColor}\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</button>\n\t\t)\n\t}),\n)\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, memo, PropsWithoutRef } from \"react\"\n\nimport { useButtonGroup } from \"../ButtonGroup\"\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport type { AccentColorProps } from \"../typings\"\nimport { buttonCva } from \"./cva\"\nimport type { ButtonVariantProps } from \"./typings\"\n\nexport interface IconButtonProps\n\textends ButtonVariantProps,\n\t\tPropsWithoutRef<ComponentProps<\"button\">>,\n\t\tAccentColorProps {}\n\nexport const IconButton = memo(\n\tforwardRef<HTMLButtonElement, IconButtonProps>((props, ref) => {\n\t\tconst providerContext = useProvider()\n\t\tconst buttonsContext = useButtonGroup()\n\t\tconst {\n\t\t\tchildren,\n\t\t\tclassName,\n\t\t\tvariant = buttonsContext.variant,\n\t\t\tsize = buttonsContext.size,\n\t\t\tradius = buttonsContext.radius ?? providerContext.radius,\n\t\t\taccentColor = buttonsContext.accentColor ?? providerContext.accentColor,\n\t\t\t...rest\n\t\t} = props\n\t\treturn (\n\t\t\t<button\n\t\t\t\tclassName={cx(\n\t\t\t\t\tbuttonCva({ size, icon: true, variant }),\n\t\t\t\t\tradiusCva({ radius, maxLarge: false }),\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\tref={ref}\n\t\t\t\tdata-accent-color={accentColor}\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</button>\n\t\t)\n\t}),\n)\n","import * as RadixAlertDialog from \"@radix-ui/react-alert-dialog\"\nimport { PropsWithChildren, useCallback, useState } from \"react\"\n\nimport { Button } from \"../Buttons\"\nimport { AlertDialogContent } from \"./Content\"\nimport { AlertDialogContext } from \"./context\"\nimport { AlertDialogOptions } from \"./typings\"\n\nexport const AlertDialogProvider = (props: PropsWithChildren) => {\n\tconst { children } = props\n\n\tconst [open, setOpen] = useState(false)\n\tconst [options, setOptions] = useState<AlertDialogOptions | null>(null)\n\n\tconst handleOpenChange = useCallback(\n\t\t(open: boolean) => {\n\t\t\tsetOpen(open)\n\n\t\t\tif (open) return\n\n\t\t\toptions?.onClose?.()\n\t\t},\n\t\t[options],\n\t)\n\n\tconst openAlertDialog = useCallback(\n\t\t(config: AlertDialogOptions) => {\n\t\t\tif (open) throw new Error(\"AlertDialog is already open\")\n\t\t\tsetOpen(true)\n\t\t\tsetOptions({\n\t\t\t\tsize: \"md\",\n\t\t\t\taction: \"Confirm\",\n\t\t\t\tcancel: \"Cancel\",\n\t\t\t\t...config,\n\t\t\t})\n\t\t},\n\t\t[open],\n\t)\n\n\treturn (\n\t\t<AlertDialogContext.Provider value={openAlertDialog}>\n\t\t\t{children}\n\t\t\t<RadixAlertDialog.Root open={open} onOpenChange={handleOpenChange}>\n\t\t\t\t<AlertDialogContent size={options?.size}>\n\t\t\t\t\t<div className=\"flex flex-col gap-4\">\n\t\t\t\t\t\t<div className=\"flex flex-col gap-1\">\n\t\t\t\t\t\t\t<RadixAlertDialog.Title className=\"font-medium\">{options?.title}</RadixAlertDialog.Title>\n\t\t\t\t\t\t\t<RadixAlertDialog.Description>{options?.description}</RadixAlertDialog.Description>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className=\"flex justify-end gap-2\">\n\t\t\t\t\t\t\t<RadixAlertDialog.Cancel onClick={options?.onCancel}>\n\t\t\t\t\t\t\t\t<Button variant=\"soft\" size={options?.size} accentColor=\"base\">\n\t\t\t\t\t\t\t\t\t{options?.cancel}\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</RadixAlertDialog.Cancel>\n\t\t\t\t\t\t\t<RadixAlertDialog.Action onClick={options?.onAction}>\n\t\t\t\t\t\t\t\t<Button variant=\"solid\" size={options?.size}>\n\t\t\t\t\t\t\t\t\t{options?.action}\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</RadixAlertDialog.Action>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</AlertDialogContent>\n\t\t\t</RadixAlertDialog.Root>\n\t\t</AlertDialogContext.Provider>\n\t)\n}\n","import * as RadixAlertDialog from \"@radix-ui/react-alert-dialog\"\n\nimport { AlertDialogContent } from \"./Content\"\n\nexport * from \"./Content\"\nexport * from \"./hooks\"\nexport * from \"./Provider\"\nexport * from \"./typings\"\n\nexport const AlertDialog = {\n\tContent: AlertDialogContent,\n\tTrigger: RadixAlertDialog.Trigger,\n\tRoot: RadixAlertDialog.Root,\n\tTitle: RadixAlertDialog.Title,\n\tDescription: RadixAlertDialog.Description,\n\tAction: RadixAlertDialog.Action,\n\tCancel: RadixAlertDialog.Cancel,\n}\n","import { createContext } from \"react\"\n\nimport type { AvatarVariant } from \"./typings\"\n\ninterface IAvatarContext {\n\tvariant: AvatarVariant\n}\n\nexport const AvatarContext = createContext({} as IAvatarContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const avatar = cva([\"shrink-0\", \"select-none\", \"inline-block\", \"align-middle\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"h-6\", \"w-6\", \"text-xs\"],\n\t\t\tsm: [\"h-7\", \"w-7\", \"text-sm\"],\n\t\t\tmd: [\"h-8\", \"w-8\", \"text-base\"],\n\t\t\tlg: [\"h-9\", \"w-9\", \"text-lg\"],\n\t\t\txl: [\"h-10\", \"w-10\", \"text-xl\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n})\n\nexport const avatarFallback = cva([\"flex\", \"items-center\", \"justify-center\", \"size-full\", \"rounded-[inherit]\"], {\n\tvariants: {\n\t\tvariant: {\n\t\t\tsolid: [\"bg-(--accent-9)\", \"text-(--accent-contrast)\"],\n\t\t\tsoft: [\"bg-(--accent-a3)\", \"text-(--accent-a11)\"],\n\t\t\toutline: [\"bg-transparent\", \"inset-ring\", \"inset-ring-(--accent-a7)\", \"text-(--accent-a11)\"],\n\t\t\tsurface: [\"bg-(--accent-surface)\", \"inset-ring\", \"inset-ring-(--accent-a7)\", \"text-(--accent-a11)\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tvariant: \"solid\",\n\t},\n})\n","import * as RadixAvatar from \"@radix-ui/react-avatar\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef, useContext } from \"react\"\n\nimport { AvatarContext } from \"./context\"\nimport { avatarFallback } from \"./cva\"\n\nexport interface AvatarFallbackProps extends RadixAvatar.AvatarFallbackProps {}\n\nexport const AvatarFallback = forwardRef<HTMLSpanElement, AvatarFallbackProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\tconst { variant } = useContext(AvatarContext)\n\n\treturn <RadixAvatar.AvatarFallback className={cx(avatarFallback({ variant }), className)} ref={ref} {...rest} />\n})\nAvatarFallback.displayName = \"AvatarFallback\"\n","import * as RadixAvatar from \"@radix-ui/react-avatar\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nexport interface AvatarImageProps extends RadixAvatar.AvatarImageProps {}\n\nexport const AvatarImage = forwardRef<HTMLImageElement, AvatarImageProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn (\n\t\t<RadixAvatar.Image\n\t\t\tclassName={cx(\"object-cover\", \"rounded-[inherit]\", \"w-full\", \"h-full\", className)}\n\t\t\tref={ref}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nAvatarImage.displayName = \"AvatarImage\"\n","import * as RadixAvatar from \"@radix-ui/react-avatar\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { AvatarContext } from \"./context\"\nimport { avatar } from \"./cva\"\nimport type { AvatarVariantProps } from \"./typings\"\n\nexport interface AvatarRootProps extends RadixAvatar.AvatarProps, AvatarVariantProps {}\n\nexport const AvatarRoot = forwardRef<HTMLSpanElement, AvatarRootProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tsize,\n\t\tvariant = \"solid\",\n\t\taccentColor = providerContext.accentColor,\n\t\tradius = providerContext.radius,\n\t\tchildren,\n\t\t...rest\n\t} = props\n\treturn (\n\t\t<RadixAvatar.Root\n\t\t\tclassName={cx(avatar({ size }), radiusCva({ radius, maxLarge: false }), className)}\n\t\t\tref={ref}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<AvatarContext.Provider value={{ variant }}>{children}</AvatarContext.Provider>\n\t\t</RadixAvatar.Root>\n\t)\n})\nAvatarRoot.displayName = \"AvatarRoot\"\n","import { AvatarFallback } from \"./Fallback\"\nimport { AvatarImage } from \"./Image\"\nimport { AvatarRoot } from \"./Root\"\n\nexport * from \"./Fallback\"\nexport * from \"./Image\"\nexport * from \"./Root\"\nexport * from \"./typings\"\n\nexport const Avatar = {\n\tFallback: AvatarFallback,\n\tImage: AvatarImage,\n\tRoot: AvatarRoot,\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const badge = cva([\"inline-flex\", \"items-center\", \"shrink-0\", \"whitespace-nowrap\"], {\n\tvariants: {\n\t\ticon: {\n\t\t\ttrue: [\"justify-center\"],\n\t\t\tfalse: [],\n\t\t},\n\t\tsize: {\n\t\t\txs: [\"h-6\", \"text-xs\", \"gap-1.5\"],\n\t\t\tsm: [\"h-7\", \"text-sm\", \"gap-1.75\"],\n\t\t\tmd: [\"h-8\", \"text-base\", \"gap-2\"],\n\t\t\tlg: [\"h-9\", \"text-lg\", \"gap-2.25\"],\n\t\t\txl: [\"h-10\", \"text-xl\", \"gap-2.5\"],\n\t\t},\n\t\tvariant: {\n\t\t\tsolid: [\"bg-(--accent-9)\", \"text-(--accent-contrast)\"],\n\t\t\tsoft: [\"bg-(--accent-a3)\", \"text-(--accent-a11)\"],\n\t\t\toutline: [\"bg-transparent\", \"inset-ring\", \"inset-ring-(--accent-a7)\", \"text-(--accent-a11)\"],\n\t\t\tsurface: [\"bg-(--accent-surface)\", \"inset-ring\", \"inset-ring-(--accent-a7)\", \"text-(--accent-a11)\"],\n\t\t\tfill: [\"bg-transparent\", \"inset-ring\", \"inset-ring-(--accent-a3)\", \"text-(--accent-a11)\"],\n\t\t},\n\t},\n\tcompoundVariants: [\n\t\t{\n\t\t\ticon: true,\n\t\t\tsize: \"xs\",\n\t\t\tclassName: \"w-6\",\n\t\t},\n\t\t{\n\t\t\ticon: false,\n\t\t\tsize: \"xs\",\n\t\t\tclassName: \"px-3\",\n\t\t},\n\t\t{\n\t\t\ticon: true,\n\t\t\tsize: \"sm\",\n\t\t\tclassName: \"w-7\",\n\t\t},\n\t\t{\n\t\t\ticon: false,\n\t\t\tsize: \"sm\",\n\t\t\tclassName: \"px-3.5\",\n\t\t},\n\t\t{\n\t\t\ticon: true,\n\t\t\tsize: \"md\",\n\t\t\tclassName: \"w-8\",\n\t\t},\n\t\t{\n\t\t\ticon: false,\n\t\t\tsize: \"md\",\n\t\t\tclassName: \"px-4\",\n\t\t},\n\t\t{\n\t\t\ticon: true,\n\t\t\tsize: \"lg\",\n\t\t\tclassName: \"w-9\",\n\t\t},\n\t\t{\n\t\t\ticon: false,\n\t\t\tsize: \"lg\",\n\t\t\tclassName: \"px-4.5\",\n\t\t},\n\t\t{\n\t\t\ticon: true,\n\t\t\tsize: \"xl\",\n\t\t\tclassName: \"w-10\",\n\t\t},\n\t\t{\n\t\t\ticon: false,\n\t\t\tsize: \"xl\",\n\t\t\tclassName: \"px-5\",\n\t\t},\n\t],\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t\tvariant: \"solid\",\n\t\ticon: false,\n\t},\n})\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { badge } from \"./cva\"\nimport type { BadgeVariantProps } from \"./typings\"\n\nexport interface BadgeProps extends ComponentProps<\"span\">, BadgeVariantProps {}\n\nexport const Badge = forwardRef<HTMLSpanElement, BadgeProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tchildren,\n\t\tclassName,\n\t\taccentColor = providerContext.accentColor,\n\t\tradius = providerContext.radius,\n\t\tvariant,\n\t\tsize,\n\t\ticon,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<span\n\t\t\tclassName={cx(badge({ variant, size, icon }), radiusCva({ radius, maxLarge: false }), className)}\n\t\t\tref={ref}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{children}\n\t\t</span>\n\t)\n})\nBadge.displayName = \"Badge\"\n","import { cva } from \"class-variance-authority\"\n\nexport const cardCva = cva([], {\n\tvariants: {\n\t\tvariant: {\n\t\t\tsoft: [\"bg-(--accent-a2)\"],\n\t\t\tsurface: [\"bg-(--accent-a2)\", \"inset-ring\", \"inset-ring-(--accent-a6)\"],\n\t\t\toutline: [\"inset-ring-1\", \"inset-ring-(--accent-a6)\"],\n\t\t},\n\t\tsize: {\n\t\t\txs: [\"p-2\"],\n\t\t\tsm: [\"p-3\"],\n\t\t\tmd: [\"p-4\"],\n\t\t\tlg: [\"p-5\"],\n\t\t\txl: [\"p-6\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t\tvariant: \"surface\",\n\t},\n})\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { cardCva } from \"./cva\"\nimport type { CardVariantProps } from \"./typings\"\n\nexport interface CardProps extends PropsWithoutRef<ComponentProps<\"div\">>, CardVariantProps {}\n\nexport const Card = forwardRef<HTMLDivElement, CardProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tsize = \"md\",\n\t\tvariant = \"surface\",\n\t\taccentColor = \"base\",\n\t\tradius = providerContext.radius,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<div\n\t\t\tref={ref}\n\t\t\tclassName={cx(cardCva({ size, variant }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nCard.displayName = \"Card\"\n","import * as RadixCheckbox from \"@radix-ui/react-checkbox\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nexport interface CheckboxIndicatorProps extends RadixCheckbox.CheckboxIndicatorProps {}\n\nexport const CheckboxIndicator = forwardRef<HTMLSpanElement, CheckboxIndicatorProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn (\n\t\t<RadixCheckbox.CheckboxIndicator\n\t\t\tclassName={cx(\"flex items-center justify-center\", className)}\n\t\t\tref={ref}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nCheckboxIndicator.displayName = \"CheckboxIndicator\"\n","import { cva } from \"class-variance-authority\"\n\nexport const checkbox = cva(\n\t[\n\t\t\"shrink-0\",\n\t\t\"align-top\",\n\n\t\t// select\n\t\t\"cursor-pointer\",\n\t\t\"select-none\",\n\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-offset-2\",\n\t\t\"focus-visible:outline-(--accent-a8)\",\n\n\t\t// disabled\n\t\t\"disabled:opacity-50\",\n\t\t\"disabled:pointer-events-none\",\n\n\t\t\"transition-[background,color,box-shadow]\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsurface: [\n\t\t\t\t\t\"inset-ring\",\n\t\t\t\t\t\"inset-ring-(--base-a7)\",\n\t\t\t\t\t\"bg-(--base-surface)\",\n\t\t\t\t\t\"data-[state='checked']:bg-(--accent-indicator)\",\n\t\t\t\t\t\"data-[state='checked']:inset-ring-(--accent-indicator)\",\n\t\t\t\t\t\"text-(--accent-contrast)\",\n\t\t\t\t],\n\t\t\t\tsoft: [\"bg-(--accent-a5)\", \"text-(--accent-a11)\"],\n\t\t\t\toutline: [\"bg-transparent\", \"inset-ring\", \"inset-ring-(--accent-a7)\", \"text-(--accent-a11)\"],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"size-4\", \"text-xs\"],\n\t\t\t\tsm: [\"size-5\", \"text-sm\"],\n\t\t\t\tmd: [\"size-6\", \"text-base\"],\n\t\t\t\tlg: [\"size-7\", \"text-lg\"],\n\t\t\t\txl: [\"size-8\", \"text-xl\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tvariant: \"surface\",\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n","import * as RadixCheckbox from \"@radix-ui/react-checkbox\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { checkbox } from \"./cva\"\nimport type { CheckboxVariantProps } from \"./typings\"\n\nexport interface CheckboxRootProps extends CheckboxVariantProps, RadixCheckbox.CheckboxProps {}\n\nexport const CheckboxRoot = forwardRef<HTMLButtonElement, CheckboxRootProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tvariant,\n\t\tsize,\n\t\tradius = providerContext.radius,\n\t\taccentColor = providerContext.accentColor,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<RadixCheckbox.Root\n\t\t\tclassName={cx(checkbox({ variant, size }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\tref={ref}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nCheckboxRoot.displayName = \"CheckboxRoot\"\n","import { CheckboxIndicator } from \"./Indicator\"\nimport { CheckboxRoot } from \"./Root\"\n\nexport * from \"./Indicator\"\nexport * from \"./Root\"\nexport * from \"./typings\"\n\nexport const Checkbox = {\n\tRoot: CheckboxRoot,\n\tIndicator: CheckboxIndicator,\n}\n","import { createContext } from \"react\"\n\nexport interface ISelectContext<TValue> {\n\tselectValue: (value: TValue) => void\n\tselected: (value: TValue) => boolean\n}\n\nexport const SelectContext = createContext({} as ISelectContext<never>)\n\nexport interface IMultiSelectContext<TValue> {\n\tselectValue: (value: TValue) => void\n\tselected: (value: TValue) => boolean\n\tregisterValue: (value: TValue) => () => void\n\tallSelected: boolean\n\tsomeSelected: boolean\n\ttoggleSelectAll: () => void\n}\n\nexport const MultiSelectContext = createContext({} as IMultiSelectContext<never>)\n","import React from 'react';\nconst usePassiveLayoutEffect = React[typeof document !== 'undefined' && document.createElement !== void 0 ? 'useLayoutEffect' : 'useEffect'];\nexport default usePassiveLayoutEffect;","import * as React from 'react';\n\nconst useLatest = current => {\n const storedValue = React.useRef(current);\n React.useEffect(() => {\n storedValue.current = current;\n });\n return storedValue;\n};\n\nexport default useLatest;","/* eslint-disable no-return-assign */\n/* eslint-disable no-underscore-dangle */\n\nimport useLayoutEffect from '@react-hook/passive-layout-effect';\nimport useLatest from '@react-hook/latest';\n\n/**\n * A React hook that fires a callback whenever ResizeObserver detects a change to its size\n *\n * @param target A React ref created by `useRef()` or an HTML element\n * @param callback Invoked with a single `ResizeObserverEntry` any time\n * the `target` resizes\n */\n\nfunction _ref() {}\nfunction useResizeObserver(target, callback, options = {}) {\n const resizeObserver = getResizeObserver(options.polyfill);\n const storedCallback = useLatest(callback);\n useLayoutEffect(() => {\n let didUnsubscribe = false;\n const targetEl = target && 'current' in target ? target.current : target;\n if (!targetEl) return _ref;\n function cb(entry, observer) {\n if (didUnsubscribe) return;\n storedCallback.current(entry, observer);\n }\n resizeObserver.subscribe(targetEl, cb);\n return () => {\n didUnsubscribe = true;\n resizeObserver.unsubscribe(targetEl, cb);\n };\n }, [target, resizeObserver, storedCallback]);\n return resizeObserver.observer;\n}\nfunction createResizeObserver(polyfill) {\n let ticking = false;\n let allEntries = [];\n const callbacks = new Map();\n const observer = new (polyfill || window.ResizeObserver)((entries, obs) => {\n allEntries = allEntries.concat(entries);\n function _ref2() {\n const triggered = new Set();\n for (let i = 0; i < allEntries.length; i++) {\n if (triggered.has(allEntries[i].target)) continue;\n triggered.add(allEntries[i].target);\n const cbs = callbacks.get(allEntries[i].target);\n cbs === null || cbs === void 0 ? void 0 : cbs.forEach(cb => cb(allEntries[i], obs));\n }\n allEntries = [];\n ticking = false;\n }\n if (!ticking) {\n window.requestAnimationFrame(_ref2);\n }\n ticking = true;\n });\n return {\n observer,\n subscribe(target, callback) {\n var _callbacks$get;\n observer.observe(target);\n const cbs = (_callbacks$get = callbacks.get(target)) !== null && _callbacks$get !== void 0 ? _callbacks$get : [];\n cbs.push(callback);\n callbacks.set(target, cbs);\n },\n unsubscribe(target, callback) {\n var _callbacks$get2;\n const cbs = (_callbacks$get2 = callbacks.get(target)) !== null && _callbacks$get2 !== void 0 ? _callbacks$get2 : [];\n if (cbs.length === 1) {\n observer.unobserve(target);\n callbacks.delete(target);\n return;\n }\n const cbIndex = cbs.indexOf(callback);\n if (cbIndex !== -1) cbs.splice(cbIndex, 1);\n callbacks.set(target, cbs);\n }\n };\n}\nlet _resizeObserver;\nconst getResizeObserver = polyfill => !_resizeObserver ? _resizeObserver = createResizeObserver(polyfill) : _resizeObserver;\nexport default useResizeObserver;","import useResizeObserver from \"@react-hook/resize-observer\"\nimport type * as React from \"react\"\nimport {\n\tDispatch,\n\tmemo,\n\tRefObject,\n\tSetStateAction,\n\tSyntheticEvent,\n\tuseCallback,\n\tuseEffect,\n\tuseLayoutEffect,\n\tuseState,\n} from \"react\"\nimport { useMediaQuery } from \"react-responsive\"\n\nimport type { ViewportSizes } from \"./typings\"\n\nexport interface ViewportSize {\n\tsize: ViewportSizes\n\tprevSize: ViewportSizes\n\txs: boolean\n\tsm: boolean\n\tmd: boolean\n\tlg: boolean\n\txl: boolean\n}\n\n// TODO: this should be moved to /web\n// note that this is a pretty poor way of setting this up, the better way would be to use a context at the highest level\n// in the React component tree to result in the useMediaQuery hook being called a minimal number of times. Then any components\n// that need to subscribe to the viewport size can use the context to get the current viewport size.\n/** Return value needs to be deconstructed since the object returned is not memoized */\n\ninterface useViewportSizeProps {\n\txs: number | string\n\tsm: number | string\n\tmd: number | string\n\tlg: number | string\n\txl: number | string\n}\n\nexport const useViewportSize = (props: useViewportSizeProps): ViewportSize => {\n\tconst { xs: xsProps, sm: smProps, md: mdProps, lg: lgProps, xl: xlProps } = props\n\tconst [prevSize, setPrevSize] = useState<ViewportSize[\"size\"]>(\"initial\")\n\tconst [size, setSize] = useState<ViewportSize[\"size\"]>(\"initial\")\n\t// These specific Breakpoints are from Radix, see https://www.radix-ui.com/themes/docs/theme/breakpoints\n\tconst xs = useMediaQuery({ minWidth: xsProps })\n\tconst sm = useMediaQuery({ minWidth: smProps })\n\tconst md = useMediaQuery({ minWidth: mdProps })\n\tconst lg = useMediaQuery({ minWidth: lgProps })\n\tconst xl = useMediaQuery({ minWidth: xlProps })\n\n\tuseLayoutEffect(() => {\n\t\tsetSize((prev) => {\n\t\t\tsetPrevSize(prev)\n\t\t\treturn xl ? \"xl\" : lg ? \"lg\" : md ? \"md\" : sm ? \"sm\" : xs ? \"xs\" : \"initial\"\n\t\t})\n\t}, [lg, md, sm, xl, xs])\n\n\treturn { size, prevSize, xs, sm, md, lg, xl }\n}\n\n/** utility used for stopping Event propagation.\n * @return stopPropagation a callback that calls stopPropagation on a general event */\nexport const useStopEventPropagation = () => {\n\treturn useCallback((event: Event) => {\n\t\tevent.stopPropagation()\n\t}, [])\n}\n\n/** custom hook use for providing filter functionality based on a text input field\n * @param filterFunction make sure this is wrapped in a useCallback\n * @param values items that should be filtered on (of type T) */\nexport function useTextFilter<T>(\n\tvalues: T[],\n\tfilterFunction: (value: T, filterValue: string) => boolean,\n): [T[], string, Dispatch<SetStateAction<string>>] {\n\tconst [filteredOptions, setFilteredOptions] = useState<T[]>([])\n\tconst [filterValue, setFilterValue] = useState<string>(\"\")\n\n\tuseEffect(() => {\n\t\tsetFilteredOptions(values.filter((value) => filterFunction(value, filterValue)))\n\t}, [filterFunction, filterValue, values])\n\n\treturn [filteredOptions, filterValue, setFilterValue]\n}\n\nexport const useSize = (target: RefObject<HTMLDivElement>): DOMRectReadOnly | undefined => {\n\tconst [size, setSize] = useState<DOMRectReadOnly>()\n\n\tuseLayoutEffect(() => {\n\t\tsetSize(target.current?.getBoundingClientRect())\n\t}, [target])\n\n\tconst handleResize = useCallback((entry: ResizeObserverEntry) => {\n\t\tconst rect = entry.contentRect\n\t\tsetSize(rect)\n\t}, [])\n\n\t// Where the magic happens\n\tuseResizeObserver<HTMLDivElement>(target, handleResize)\n\treturn size\n}\n\nexport const genericMemo: <T>(component: T) => T = memo\n\nexport function useControlledState<TState>(\n\tinitialState: TState,\n\tstate?: TState,\n\tsetState?: (state: TState) => void,\n): [TState, (state: TState) => void] {\n\tconst [uncontrolledState, setUncontrolledState] = useState<TState>(initialState)\n\n\t// allow for uncontrolled state to be set\n\tconst handleStateChange = useCallback(\n\t\t(state: TState) => {\n\t\t\tsetUncontrolledState(state)\n\t\t\tsetState?.(state)\n\t\t},\n\t\t[setState],\n\t)\n\n\t// keep the uncontrolled state in sync with the controlled state\n\tuseEffect(() => {\n\t\tif (state !== undefined) {\n\t\t\tsetUncontrolledState(state)\n\t\t}\n\t}, [state])\n\n\treturn [state ?? uncontrolledState, handleStateChange]\n}\n\ntype RefCleanup<T> = Exclude<ReturnType<React.RefCallback<T>>, void>\n\nexport function mergeRefs<T>(refs: Array<React.Ref<T> | undefined>): React.RefCallback<T> {\n\treturn (value) => {\n\t\tconst cleanups = refs.reduce((cleanups, ref) => {\n\t\t\tif (typeof ref === \"function\") {\n\t\t\t\tconst cleanup = ref(value)\n\t\t\t\tif (typeof cleanup === \"function\") {\n\t\t\t\t\tcleanups.push(cleanup)\n\t\t\t\t} else {\n\t\t\t\t\t// simulate previous ref cleanup behavior\n\t\t\t\t\tcleanups.push(() => {\n\t\t\t\t\t\tref(null)\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t} else if (ref != null) {\n\t\t\t\tref.current = value\n\t\t\t\t// simulate previous ref cleanup behavior\n\t\t\t\tcleanups.push(() => {\n\t\t\t\t\tref.current = null\n\t\t\t\t})\n\t\t\t}\n\t\t\treturn cleanups\n\t\t}, [] as RefCleanup<T>[])\n\n\t\treturn () => {\n\t\t\tcleanups.forEach((cleanup) => {\n\t\t\t\tcleanup()\n\t\t\t})\n\t\t}\n\t}\n}\n\nexport const stopPropagation = (e: SyntheticEvent) => {\n\te.stopPropagation()\n}\n","import { PropsWithChildren, useCallback, useMemo, useState } from \"react\"\n\nimport { genericMemo, useControlledState } from \"../utils\"\nimport { MultiSelectContext } from \"./context\"\nimport type { MultiSelectProps } from \"./typings\"\n\nexport const MultiSelectProvider = genericMemo(function MultiSelectProvider<TValue>(\n\tprops: PropsWithChildren<MultiSelectProps<TValue>>,\n) {\n\tconst { children, defaultValues, values: controlledValues, onValuesChange } = props\n\n\tconst [itemValueMapping, setItemValueMapping] = useState<Set<TValue>>(new Set())\n\tconst [values, setValues] = useControlledState(defaultValues ?? [], controlledValues, onValuesChange)\n\n\tconst registerValue = useCallback((value: TValue) => {\n\t\tsetItemValueMapping((prev) => {\n\t\t\tconst newSet = new Set(prev)\n\t\t\tnewSet.add(value)\n\t\t\treturn newSet\n\t\t})\n\n\t\treturn () => {\n\t\t\tsetItemValueMapping((prev) => {\n\t\t\t\tconst newSet = new Set(prev)\n\t\t\t\tnewSet.delete(value)\n\t\t\t\treturn newSet\n\t\t\t})\n\t\t}\n\t}, [])\n\n\tconst selected = useCallback((value: TValue) => values.includes(value), [values])\n\n\tconst selectValue = useCallback(\n\t\t(value: TValue) => {\n\t\t\tif (selected(value)) {\n\t\t\t\tsetValues(values.filter((v) => v !== value))\n\t\t\t} else {\n\t\t\t\tsetValues([...values, value])\n\t\t\t}\n\t\t},\n\t\t[selected, setValues, values],\n\t)\n\n\tconst allSelected = useMemo(() => {\n\t\treturn Array.from(itemValueMapping.values()).every((value) => values.includes(value))\n\t}, [itemValueMapping, values])\n\n\tconst someSelected = useMemo(() => {\n\t\treturn Array.from(itemValueMapping.values()).some((value) => values.includes(value))\n\t}, [itemValueMapping, values])\n\n\tconst toggleSelectAll = useCallback(() => {\n\t\tif (allSelected) {\n\t\t\tsetValues([])\n\t\t} else {\n\t\t\tsetValues(Array.from(itemValueMapping.values()))\n\t\t}\n\t}, [allSelected, itemValueMapping, setValues])\n\n\tconst contextValue = useMemo(\n\t\t() => ({ selected, selectValue, allSelected, someSelected, toggleSelectAll, registerValue }),\n\t\t[allSelected, registerValue, selectValue, selected, someSelected, toggleSelectAll],\n\t)\n\n\treturn <MultiSelectContext value={contextValue}>{children}</MultiSelectContext>\n})\n","import { PropsWithChildren, useCallback, useMemo } from \"react\"\n\nimport { genericMemo, useControlledState } from \"../utils\"\nimport { SelectContext } from \"./context\"\nimport type { SingleSelectNotRequiredProps, SingleSelectRequiredProps } from \"./typings\"\n\nexport const SingleSelectRequiredProvider = genericMemo(function SingleSelectRequiredProvider<TValue>(\n\tprops: PropsWithChildren<SingleSelectRequiredProps<TValue>>,\n) {\n\tconst { children, defaultValue, value, onValueChange } = props\n\n\t// REASON: we are expecting the user to specify a defaultValue or value, otherwise use of component is invalid\n\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\t// @ts-expect-error\n\tconst [controlledValue, setControlledValue] = useControlledState<TValue>(defaultValue, value, onValueChange)\n\n\tconst selected = useCallback((v: TValue) => v === controlledValue, [controlledValue])\n\n\tconst selectValue = useCallback(\n\t\t(v: TValue) => {\n\t\t\tif (selected(v)) return\n\t\t\tsetControlledValue(v)\n\t\t},\n\t\t[selected, setControlledValue],\n\t)\n\n\tconst contextValue = useMemo(() => ({ selected, selectValue }), [selectValue, selected])\n\n\treturn <SelectContext value={contextValue}>{children}</SelectContext>\n})\n\nexport const SingleSelectNotRequiredProvider = genericMemo(function SingleSelectNotRequiredProvider<TValue>(\n\tprops: PropsWithChildren<SingleSelectNotRequiredProps<TValue>>,\n) {\n\tconst { children, defaultValue = undefined, value: controlledValue, onValueChange } = props\n\n\tconst [value, setValue] = useControlledState(defaultValue, controlledValue, onValueChange)\n\n\tconst selected = useCallback((v: TValue) => v === value, [value])\n\n\tconst selectValue = useCallback(\n\t\t(v: TValue) => {\n\t\t\tsetValue(selected(v) ? undefined : v)\n\t\t},\n\t\t[selected, setValue],\n\t)\n\n\tconst contextValue = useMemo(() => ({ selected, selectValue }), [selected, selectValue])\n\n\treturn <SelectContext value={contextValue}>{children}</SelectContext>\n})\n","import * as RadixCheckbox from \"@radix-ui/react-checkbox\"\nimport { ComponentProps, createContext } from \"react\"\n\nimport { ComponentRadius } from \"../Provider\"\nimport { CheckboxGroupSize, CheckboxGroupVariant } from \"./typings\"\n\nexport interface ICheckboxGroupContext {\n\tname?: string\n\trequired?: ComponentProps<typeof RadixCheckbox.Root>[\"required\"]\n\tdisabled?: ComponentProps<typeof RadixCheckbox.Root>[\"disabled\"]\n\tsize: CheckboxGroupSize\n\tvariant: CheckboxGroupVariant\n\tradius: ComponentRadius\n}\n\nexport const CheckboxGroupContext = createContext({} as ICheckboxGroupContext)\n","import * as RadixCheckbox from \"@radix-ui/react-checkbox\"\nimport { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, memo, use, useCallback, useLayoutEffect } from \"react\"\n\nimport { checkbox } from \"../Checkbox/cva\"\nimport { radiusCva } from \"../cva\"\nimport { IMultiSelectContext, MultiSelectContext } from \"../SelectContext\"\nimport { CheckboxGroupContext } from \"./context\"\nimport type { CheckboxGroupVariantProps } from \"./typings\"\n\nexport interface CheckboxGroupItemProps\n\textends Omit<\n\t\t\tComponentPropsWithRef<typeof RadixCheckbox.Root>,\n\t\t\t\"checked\" | \"defaultChecked\" | \"onCheckedChange\" | \"name\"\n\t\t>,\n\t\tCheckboxGroupVariantProps {\n\tvalue: string\n}\n\nexport const CheckboxGroupItem = memo<CheckboxGroupItemProps>((props) => {\n\tconst groupContext = use(CheckboxGroupContext)\n\tconst {\n\t\tref,\n\t\tclassName,\n\t\tvalue,\n\t\taccentColor,\n\t\tdisabled,\n\t\tvariant = groupContext.variant,\n\t\tsize = groupContext.size,\n\t\tradius = groupContext.radius,\n\t\t...rest\n\t} = props\n\tconst { selected, selectValue, registerValue } = use(MultiSelectContext) as IMultiSelectContext<string> // safe cast\n\n\tuseLayoutEffect(() => {\n\t\treturn registerValue(value)\n\t}, [registerValue, value])\n\n\tconst isChecked = selected(value)\n\tconst isDisabled = groupContext.disabled || disabled\n\n\tconst handleCheckedChange = useCallback(() => {\n\t\tselectValue(value)\n\t}, [selectValue, value])\n\n\treturn (\n\t\t<RadixCheckbox.Root\n\t\t\tref={ref}\n\t\t\tclassName={cx(checkbox({ variant, size }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\tname={groupContext.name}\n\t\t\trequired={groupContext.required}\n\t\t\tdisabled={isDisabled}\n\t\t\tvalue={value}\n\t\t\tchecked={isChecked}\n\t\t\tonCheckedChange={handleCheckedChange}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nCheckboxGroupItem.displayName = \"CheckboxGroupItem\"\n","import * as RadixCheckbox from \"@radix-ui/react-checkbox\"\nimport { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, memo } from \"react\"\n\nexport interface CheckboxGroupItemIndicatorProps extends ComponentPropsWithRef<typeof RadixCheckbox.Indicator> {}\n\nexport const CheckboxGroupItemIndicator = memo<CheckboxGroupItemIndicatorProps>((props) => {\n\tconst { ref, className, ...rest } = props\n\n\treturn <RadixCheckbox.Indicator className={cx(\"flex items-center justify-center\", className)} ref={ref} {...rest} />\n})\nCheckboxGroupItemIndicator.displayName = \"CheckboxGroupItemIndicator\"\n","export function getBooleanState(value: boolean) {\n\treturn value ? \"true\" : \"false\"\n}\n","import * as RadixCheckbox from \"@radix-ui/react-checkbox\"\nimport { ComponentProps, ComponentPropsWithRef, memo, useMemo } from \"react\"\n\nimport { useProvider } from \"../Provider\"\nimport { MultiSelectProvider } from \"../SelectContext\"\nimport type { MultiSelectProps } from \"../SelectContext/typings\"\nimport { CheckboxGroupContext } from \"./context\"\nimport type { CheckboxGroupVariantProps } from \"./typings\"\nimport { getBooleanState } from \"./utils\"\n\nexport interface CheckboxGroupRootProps\n\textends MultiSelectProps<string>,\n\t\tComponentPropsWithRef<\"div\">,\n\t\tCheckboxGroupVariantProps {\n\tname?: string\n\trequired?: ComponentProps<typeof RadixCheckbox.Root>[\"required\"]\n\tdisabled?: ComponentProps<typeof RadixCheckbox.Root>[\"disabled\"]\n}\n\nexport const CheckboxGroupRoot = memo<CheckboxGroupRootProps>((props) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tref,\n\t\tdefaultValues,\n\t\tvalues,\n\t\tonValuesChange,\n\t\tchildren,\n\t\tname,\n\t\trequired,\n\t\tdisabled,\n\t\taccentColor = providerContext.accentColor,\n\t\tradius = providerContext.radius,\n\t\tvariant = \"surface\",\n\t\tsize = \"md\",\n\t\t...rest\n\t} = props\n\n\tconst contextValue = useMemo(\n\t\t() => ({\n\t\t\tname,\n\t\t\trequired,\n\t\t\tdisabled,\n\t\t\tsize,\n\t\t\tvariant,\n\t\t\tradius,\n\t\t}),\n\t\t[disabled, name, radius, required, size, variant],\n\t)\n\n\treturn (\n\t\t<div\n\t\t\tref={ref}\n\t\t\trole=\"group\"\n\t\t\tdata-disabled={getBooleanState(!!disabled)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\taria-disabled={getBooleanState(!!disabled)}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<CheckboxGroupContext.Provider value={contextValue}>\n\t\t\t\t<MultiSelectProvider<string>\n\t\t\t\t\tdefaultValues={defaultValues}\n\t\t\t\t\tvalues={values}\n\t\t\t\t\tonValuesChange={onValuesChange}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</MultiSelectProvider>\n\t\t\t</CheckboxGroupContext.Provider>\n\t\t</div>\n\t)\n})\nCheckboxGroupRoot.displayName = \"CheckboxGroupRoot\"\n","import * as RadixCheckbox from \"@radix-ui/react-checkbox\"\nimport { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, memo, use } from \"react\"\n\nimport { checkbox } from \"../Checkbox/cva\"\nimport { radiusCva } from \"../cva\"\nimport { IMultiSelectContext, MultiSelectContext } from \"../SelectContext\"\nimport { CheckboxGroupContext } from \"./context\"\nimport type { CheckboxGroupVariantProps } from \"./typings\"\n\nexport interface CheckboxGroupSelectAllItemProps\n\textends Omit<\n\t\t\tComponentPropsWithRef<typeof RadixCheckbox.Root>,\n\t\t\t\"checked\" | \"defaultChecked\" | \"onCheckedChange\" | \"name\"\n\t\t>,\n\t\tCheckboxGroupVariantProps {}\n\nexport const CheckboxGroupSelectAllItem = memo<CheckboxGroupSelectAllItemProps>((props) => {\n\tconst groupContext = use(CheckboxGroupContext)\n\tconst {\n\t\tref,\n\t\tclassName,\n\t\taccentColor,\n\t\tdisabled,\n\t\tvariant = groupContext.variant,\n\t\tsize = groupContext.size,\n\t\tradius = groupContext.radius,\n\t\t...rest\n\t} = props\n\tconst { allSelected, someSelected, toggleSelectAll } = use(MultiSelectContext) as IMultiSelectContext<string> // safe cast\n\n\tconst checked = allSelected ? true : someSelected ? \"indeterminate\" : false\n\tconst isDisabled = groupContext.disabled || disabled\n\n\treturn (\n\t\t<RadixCheckbox.Root\n\t\t\tref={ref}\n\t\t\tclassName={cx(checkbox({ variant, size }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\tname={groupContext.name}\n\t\t\trequired={groupContext.required}\n\t\t\tdisabled={isDisabled}\n\t\t\tchecked={checked}\n\t\t\tonCheckedChange={toggleSelectAll}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nCheckboxGroupSelectAllItem.displayName = \"CheckboxGroupSelectAllItem\"\n","import { CheckboxGroupItem } from \"./Item\"\nimport { CheckboxGroupItemIndicator } from \"./ItemIndicator\"\nimport { CheckboxGroupRoot } from \"./Root\"\nimport { CheckboxGroupSelectAllItem } from \"./SelectAllItem\"\n\nexport * from \"./Item\"\nexport * from \"./ItemIndicator\"\nexport * from \"./Root\"\nexport * from \"./SelectAllItem\"\nexport * from \"./typings\"\n\nexport const CheckboxGroup = {\n\tRoot: CheckboxGroupRoot,\n\tItem: CheckboxGroupItem,\n\tSelectAllItem: CheckboxGroupSelectAllItem,\n\tItemIndicator: CheckboxGroupItemIndicator,\n}\n","import { createContext, CSSProperties, useContext } from \"react\"\n\nimport { NodeCallbacks, NodeRenderer } from \"./typings\"\n\ninterface ICollapsibleTreeContext<TMeta> extends NodeCallbacks<TMeta> {\n\tnodeClassName?: string\n\tnodeStyles?: CSSProperties\n\tdisabled: boolean\n\tnodeRenderer: NodeRenderer<TMeta>\n}\n\nexport const CollapsibleTreeContext = createContext<ICollapsibleTreeContext<never>>(\n\t{} as ICollapsibleTreeContext<unknown>,\n)\n\nexport function useCollapsibleTreeContext<TMeta>() {\n\treturn useContext(CollapsibleTreeContext) as ICollapsibleTreeContext<TMeta>\n}\n","import * as RadixPrimitiveCollapsible from \"@radix-ui/react-collapsible\"\nimport { cx } from \"class-variance-authority\"\nimport { useCallback, useMemo, useState } from \"react\"\n\nimport { genericMemo } from \"../utils\"\nimport { CollapsibleTreeContext, useCollapsibleTreeContext } from \"./context\"\nimport { CollapsibleTreeProps, TreeNodeProps } from \"./typings\"\n\nconst CollapsibleNode = genericMemo(function <TMeta>(props: TreeNodeProps<TMeta> & { level?: number }) {\n\tconst { meta, nodes, level = 0, disabled } = props\n\t/** controlling the open state to allow a developer to specify what element is responsible for triggering the open\n\t * and closing of the collapsible. */\n\tconst [controlledOpenState, setControlledOpenState] = useState<boolean>(false)\n\n\tconst {\n\t\tnodeRenderer,\n\t\tdisabled: disabledFromContext,\n\t\tonNodeOpen,\n\t\tonNodeClose,\n\t\tonNodeClick,\n\t\tnodeStyles,\n\t\tnodeClassName,\n\t} = useCollapsibleTreeContext<TMeta>()\n\n\t// Want to overwrite the global disabled state if defined specifically for a node\n\tconst isDisabled = disabled ?? disabledFromContext\n\n\tconst handleClick = useCallback(() => {\n\t\tif (onNodeClick) onNodeClick(meta)\n\t}, [meta, onNodeClick])\n\n\tconst toggleOpenState = useCallback(() => {\n\t\tsetControlledOpenState(!controlledOpenState)\n\n\t\t// If moving from closed to open, call onNodeOpen\n\t\tif (!controlledOpenState && onNodeOpen) onNodeOpen(meta)\n\n\t\t// If moving from open to closed, call onNodeClose\n\t\tif (controlledOpenState && onNodeClose) onNodeClose(meta)\n\t}, [meta, onNodeClose, onNodeOpen, controlledOpenState])\n\n\tconst { children, style, className } = useMemo(() => {\n\t\treturn nodeRenderer({\n\t\t\tmeta,\n\t\t\ttoggleOpen: toggleOpenState,\n\t\t\topen: controlledOpenState,\n\t\t\tdisabled: isDisabled,\n\t\t})\n\t}, [isDisabled, meta, nodeRenderer, toggleOpenState, controlledOpenState])\n\n\tconst combinedStyles = useMemo(\n\t\t() => ({\n\t\t\t// want node specific styles to overwrite and global node styles\n\t\t\t...nodeStyles,\n\t\t\t...style,\n\t\t}),\n\t\t[nodeStyles, style],\n\t)\n\n\treturn (\n\t\t<RadixPrimitiveCollapsible.Root asChild open={controlledOpenState} disabled={isDisabled}>\n\t\t\t<div className=\"flex w-full flex-col\">\n\t\t\t\t<div\n\t\t\t\t\tonClick={handleClick}\n\t\t\t\t\tclassName={cx(nodeClassName, \"flex w-full shrink-0 items-center\", className)}\n\t\t\t\t\tstyle={combinedStyles}\n\t\t\t\t\t// These are useful, and another way to style the TreeNode based on its open or disabled state\n\t\t\t\t\tdata-state={controlledOpenState ? \"open\" : \"closed\"}\n\t\t\t\t\tdata-disabled={isDisabled}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</div>\n\t\t\t\t{nodes && nodes.length > 0 && (\n\t\t\t\t\t<RadixPrimitiveCollapsible.Content asChild>\n\t\t\t\t\t\t<div className=\"flex h-max w-full flex-col pl-2\">\n\t\t\t\t\t\t\t{nodes.map((treeNodeProps, index) => (\n\t\t\t\t\t\t\t\t<CollapsibleNode<TMeta>\n\t\t\t\t\t\t\t\t\tlevel={level + 1}\n\t\t\t\t\t\t\t\t\tkey={`${level},${index}`}\n\t\t\t\t\t\t\t\t\t{...treeNodeProps}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</RadixPrimitiveCollapsible.Content>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</RadixPrimitiveCollapsible.Root>\n\t)\n})\n\n/** The Collapsible Tree Component is a reusable UI element that displays hierarchical data in a tree structure.\n * Nodes in the tree can be expanded or collapsed to show or hide their children, allowing for an intuitive and\n * space-efficient way to navigate complex data structures.*/\nexport const CollapsibleTree = genericMemo(function <TMeta>(props: CollapsibleTreeProps<TMeta>) {\n\tconst {\n\t\tnodes,\n\t\tdisabled = false,\n\t\tnodeClassName,\n\t\tnodeStyles,\n\t\tonNodeClick,\n\t\tonNodeClose,\n\t\tonNodeOpen,\n\t\tnodeRenderer,\n\t\t...rest\n\t} = props\n\treturn (\n\t\t<CollapsibleTreeContext.Provider\n\t\t\tvalue={{\n\t\t\t\tnodeRenderer,\n\t\t\t\tnodeClassName,\n\t\t\t\tnodeStyles,\n\t\t\t\tdisabled,\n\t\t\t\tonNodeClick,\n\t\t\t\tonNodeClose,\n\t\t\t\tonNodeOpen,\n\t\t\t}}\n\t\t>\n\t\t\t<div className=\"flex h-max w-full flex-col\" {...rest}>\n\t\t\t\t{nodes.map((treeNodeProps, index) => (\n\t\t\t\t\t<CollapsibleNode<TMeta> key={`${0},${index}`} {...treeNodeProps} />\n\t\t\t\t))}\n\t\t\t</div>\n\t\t</CollapsibleTreeContext.Provider>\n\t)\n})\n","import { createContext } from \"react\"\n\nimport type { ComponentRadius } from \"../Provider\"\nimport type { CheckedState, CommandMenuSize, CommandMenuVariant } from \"./typings\"\n\ninterface ICommandMenuContext {\n\tsize: CommandMenuSize\n\tvariant: CommandMenuVariant\n\tradius: ComponentRadius\n}\n\nexport const CommandMenuContext = createContext<ICommandMenuContext>({} as ICommandMenuContext)\n\nexport const SelectedIndicatorContext = createContext<boolean>(false)\n\nexport const CheckboxIndicatorContext = createContext<CheckedState>(false)\n\nexport interface IMenuPagesContext {\n\tpage: string\n\tsetPage: (page: string) => void\n}\n\nexport const CommandMenuPageContext = createContext({} as IMenuPagesContext)\n\nexport interface ICommandMenuDialogContext {\n\topen: boolean\n\tsetOpen: (open: boolean) => void\n}\n\nexport const CommandMenuDialogContext = createContext({} as ICommandMenuDialogContext)\n","import type { CheckedState } from \"../CheckedIndicator\"\n\nexport function getSelectedState(selected: boolean) {\n\treturn selected ? \"selected\" : \"unselected\"\n}\n\nexport function getCheckedState(checked: CheckedState) {\n\treturn checked === true ? \"checked\" : checked === false ? \"unchecked\" : \"indeterminate\"\n}\n\nexport function getActiveState(active: boolean) {\n\treturn active ? \"active\" : \"inactive\"\n}\n","import { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, ReactNode, use, useMemo } from \"react\"\n\nimport { CheckboxIndicatorContext } from \"./context\"\nimport type { CheckedState } from \"./typings\"\nimport { getCheckedState } from \"./utils\"\n\nexport interface CommandMenuCheckboxIndicatorProps extends Omit<ComponentPropsWithRef<\"span\">, \"children\"> {\n\tchildren: ReactNode | ((checked: CheckedState) => ReactNode)\n}\n\nexport const CommandMenuCheckboxIndicator = (props: CommandMenuCheckboxIndicatorProps) => {\n\tconst { ref, className, children, ...rest } = props\n\tconst checkedState = use(CheckboxIndicatorContext)\n\n\t// Memoize the children rendering based on checked state\n\tconst computedChildren = useMemo(() => {\n\t\treturn typeof children === \"function\" ? children(checkedState) : children\n\t}, [checkedState, children])\n\n\treturn (\n\t\t<span\n\t\t\tref={ref}\n\t\t\tdata-state={getCheckedState(checkedState)}\n\t\t\tclassName={cx(\n\t\t\t\t\"inline-block size-max\",\n\t\t\t\t{\n\t\t\t\t\tinvisible: checkedState === false,\n\t\t\t\t},\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{computedChildren}\n\t\t</span>\n\t)\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const commandMenuContentCva = cva(\n\t[\n\t\t\"ring\",\n\t\t\"ring-(--base-6)\",\n\t\t\"shadow-md\",\n\t\t\"fixed\",\n\t\t\"max-w-lg\",\n\t\t\"size-full\",\n\t\t\"h-max\",\n\t\t\"overflow-hidden\",\n\t\t\"bg-(--color-background)\",\n\t\t\"dark:bg-(--base-2)\",\n\t\t\"outline-none\",\n\t\t\"top-[15%]\",\n\t\t\"left-1/2\",\n\t\t\"-translate-x-1/2\",\n\t\t\"data-[state='open']:animate-in\",\n\t\t\"data-[state='open']:fade-in-0\",\n\t\t\"data-[state='closed']:animate-out\",\n\t\t\"data-[state='closed']:fade-out-0\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"text-sm\"],\n\t\t\t\tsm: [\"text-base\"],\n\t\t\t\tmd: [\"text-base\"],\n\t\t\t\tlg: [\"text-lg\"],\n\t\t\t\txl: [\"text-lg\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n\nexport const commandMenuOverlayCva = cva([\n\t\"fixed\",\n\t\"inset-0\",\n\t\"duration-200\",\n\t\"bg-(--black-a6)\",\n\t\"dark:bg-(--black-a8)\",\n\t\"data-[state='open']:animate-in\",\n\t\"data-[state='open']:fade-in-0\",\n\t\"data-[state='closed']:animate-out\",\n\t\"data-[state='closed']:fade-out-0\",\n])\n\nexport const commandMenuListCva = cva(\n\t[\"[scrollbar-width:thin]\", \"[scrollbar-color:var(--base-6)_transparent]\", \"overflow-auto\", \"h-max\", \"max-h-100\"],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"py-1.75\", \"scroll-py-1.75\"],\n\t\t\t\tsm: [\"py-2\", \"scroll-py-2\"],\n\t\t\t\tmd: [\"py-2.25\", \"scroll-py-2.25\"],\n\t\t\t\tlg: [\"py-2.5\", \"scroll-py-2.5\"],\n\t\t\t\txl: [\"py-2.75\", \"scroll-py-2.75\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n\nexport const commandMenuInputCva = cva([\"outline-none\", \"w-full\", \"placeholder-(--base-a9)\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"h-12\", \"px-5.25\", \"text-base\"],\n\t\t\tsm: [\"h-13\", \"px-6\", \"text-lg\"],\n\t\t\tmd: [\"h-14\", \"px-6.75\", \"text-lg\"],\n\t\t\tlg: [\"h-15\", \"px-8.5\", \"text-xl\"],\n\t\t\txl: [\"h-16\", \"px-9.25\", \"text-xl\"],\n\t\t},\n\t},\n})\n\nexport const commandMenuSeparatorCva = cva([\"h-px\", \"bg-(--base-a6)\", \"w-full\"], {\n\tvariants: {\n\t\tspacing: {\n\t\t\ttrue: [],\n\t\t\tfalse: [],\n\t\t},\n\t\tsize: {\n\t\t\txs: [],\n\t\t\tsm: [],\n\t\t\tmd: [],\n\t\t\tlg: [],\n\t\t\txl: [],\n\t\t},\n\t},\n\tcompoundVariants: [\n\t\t{ spacing: true, size: \"xs\", className: [\"my-1.75\"] },\n\t\t{ spacing: true, size: \"sm\", className: [\"my-2\"] },\n\t\t{ spacing: true, size: \"md\", className: [\"my-2.25\"] },\n\t\t{ spacing: true, size: \"lg\", className: [\"my-2.5\"] },\n\t\t{ spacing: true, size: \"xl\", className: [\"my-2.75\"] },\n\t],\n})\n\nexport const commandMenuItemCva = cva(\n\t[\n\t\t\"relative\",\n\t\t\"flex\",\n\t\t\"items-center\",\n\t\t\"outline-none\",\n\n\t\t// select\n\t\t\"select-none\",\n\n\t\t// cursor\n\t\t\"cursor-pointer\",\n\n\t\t// disabled\n\t\t\"data-[disabled=true]:text-(--base-a8)\",\n\t\t\"data-[disabled=true]:pointer-events-none\",\n\n\t\t// after\n\t\t\"after:absolute\",\n\t\t\"after:bg-transparent\",\n\t\t\"after:z-[-1]\",\n\t\t\"after:inset-y-0\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"py-2.5\", \"gap-3.5\", \"px-5.25\", \"after:inset-x-1.75\"],\n\t\t\t\tsm: [\"py-2.5\", \"gap-4\", \"px-6\", \"after:inset-x-2\"],\n\t\t\t\tmd: [\"py-3\", \"gap-4.5\", \"px-6.75\", \"after:inset-x-2.25\"],\n\t\t\t\tlg: [\"py-3\", \"gap-5\", \"px-7.5\", \"after:inset-x-2.5\"],\n\t\t\t\txl: [\"py-3.25\", \"gap-5.5\", \"px-8.25\", \"after:inset-x-2.75\"],\n\t\t\t},\n\t\t\tvariant: {\n\t\t\t\tsolid: [\n\t\t\t\t\t\"text-(--base-12)\",\n\t\t\t\t\t\"data-[selected=true]:text-(--accent-contrast)\",\n\t\t\t\t\t\"data-[selected=true]:after:bg-(--accent-a9)\",\n\t\t\t\t\t\"data-[selected=true]:active:after:brightness-110\",\n\t\t\t\t],\n\t\t\t\tsoft: [\n\t\t\t\t\t\"text-(--base-12)\",\n\t\t\t\t\t\"data-[selected=true]:after:bg-(--accent-a3)\",\n\t\t\t\t\t\"data-[selected=true]:active:after:bg-(--accent-a4)\",\n\t\t\t\t],\n\t\t\t},\n\t\t\tradius: {\n\t\t\t\tnone: [\"after:rounded-none\"],\n\t\t\t\txs: [\"after:rounded-xs\"],\n\t\t\t\tsm: [\"after:rounded-sm\"],\n\t\t\t\tmd: [\"after:rounded-md\"],\n\t\t\t\tlg: [\"after:rounded-lg\"],\n\t\t\t\txl: [\"after:rounded-xl\"],\n\t\t\t\tfull: [\"after:rounded-full\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t\tvariant: \"soft\",\n\t\t},\n\t},\n)\n\nexport const commandMenuEmptyCva = cva([\"flex\", \"justify-center\", \"text-(--base-a11)\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"py-3.5\"],\n\t\t\tsm: [\"py-4\"],\n\t\t\tmd: [\"py-4.5\"],\n\t\t\tlg: [\"py-5\"],\n\t\t\txl: [\"py-5.5\"],\n\t\t},\n\t},\n})\n\nexport const commandMenuGroupCva = cva(\n\t[\n\t\t\"[&_[cmdk-group-heading]]:text-(--base-a10)\",\n\t\t\"[&_[cmdk-group-heading]]:flex\",\n\t\t\"[&_[cmdk-group-heading]]:items-center\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:px-2.5\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:py-1\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:text-xs\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:gap-2.5\",\n\t\t\t\t],\n\t\t\t\tsm: [\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:px-2.75\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:py-1\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:text-sm\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:gap-2.75\",\n\t\t\t\t],\n\t\t\t\tmd: [\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:px-3\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:py-1.25\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:text-sm\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:gap-3\",\n\t\t\t\t],\n\t\t\t\tlg: [\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:px-3.25\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:py-1.25\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:text-base\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:gap-3.25\",\n\t\t\t\t],\n\t\t\t\txl: [\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:px-3.5\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:py-1.25\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:text-base\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:gap-3.5\",\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n)\n","import { cx } from \"class-variance-authority\"\nimport { CommandItem } from \"cmdk\"\nimport { ComponentPropsWithRef, memo, use, useCallback } from \"react\"\n\nimport { CommandMenuContext, CommandMenuDialogContext } from \"./context\"\nimport { commandMenuItemCva } from \"./cva\"\n\nexport interface CommandMenuItemProps extends Omit<ComponentPropsWithRef<typeof CommandItem>, \"value\" | \"onSelect\"> {\n\tcloseOnSelect?: boolean\n\tfilterValue?: string\n\tonSelect?: () => void\n}\n\nexport const CommandMenuItem = memo<CommandMenuItemProps>((props) => {\n\tconst { className, ref, closeOnSelect = true, onSelect, filterValue, ...rest } = props\n\n\tconst { size, variant, radius } = use(CommandMenuContext)\n\tconst { setOpen } = use(CommandMenuDialogContext)\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\n\t\tif (closeOnSelect) {\n\t\t\tsetOpen(false)\n\t\t}\n\t}, [closeOnSelect, onSelect, setOpen])\n\n\treturn (\n\t\t<CommandItem\n\t\t\tclassName={cx(commandMenuItemCva({ size, variant, radius }), className)}\n\t\t\tref={ref}\n\t\t\tonSelect={handleSelect}\n\t\t\tvalue={filterValue}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nCommandMenuItem.displayName = \"CommandMenuItem\"\n","import { useCallback } from \"react\"\n\nimport { CheckboxIndicatorContext } from \"./context\"\nimport { CommandMenuItem, CommandMenuItemProps } from \"./Item\"\nimport type { CheckedState } from \"./typings\"\nimport { getCheckedState } from \"./utils\"\n\nexport interface CommandMenuCheckboxItemProps extends CommandMenuItemProps {\n\tchecked: CheckedState\n\tonCheckedChange: (checked: boolean) => void\n}\n\nexport const CommandMenuCheckboxItem = (props: CommandMenuCheckboxItemProps) => {\n\tconst { children, ref, checked, onCheckedChange, onSelect, ...rest } = props\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\n\t\t// TODO: should send an event here that contains the value and then can prevent default for more control\n\t\t// if (e.defaultPrevented) return\n\n\t\tonCheckedChange(checked !== true)\n\t}, [checked, onCheckedChange, onSelect])\n\n\treturn (\n\t\t<CheckboxIndicatorContext value={checked}>\n\t\t\t<CommandMenuItem ref={ref} onSelect={handleSelect} data-state={getCheckedState(checked)} {...rest}>\n\t\t\t\t{children}\n\t\t\t</CommandMenuItem>\n\t\t</CheckboxIndicatorContext>\n\t)\n}\n","import {\n\tDialogContent,\n\tDialogContentProps,\n\tDialogDescription,\n\tDialogPortal,\n\tDialogPortalProps,\n\tDialogTitle,\n} from \"@radix-ui/react-dialog\"\nimport { cx } from \"class-variance-authority\"\nimport { CommandRoot } from \"cmdk\"\nimport { ComponentPropsWithRef, memo, useMemo } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { CommandMenuContext } from \"./context\"\nimport { commandMenuContentCva } from \"./cva\"\nimport type { CommandMenuVariantProps } from \"./typings\"\n\nexport interface CommandMenuContentProps\n\textends ComponentPropsWithRef<typeof CommandRoot>,\n\t\tPick<\n\t\t\tDialogContentProps,\n\t\t\t| \"forceMount\"\n\t\t\t| \"onOpenAutoFocus\"\n\t\t\t| \"onCloseAutoFocus\"\n\t\t\t| \"onEscapeKeyDown\"\n\t\t\t| \"onPointerDownOutside\"\n\t\t\t| \"onInteractOutside\"\n\t\t>,\n\t\tPick<DialogPortalProps, \"container\">,\n\t\tCommandMenuVariantProps {}\n\nexport const CommandMenuContent = memo<CommandMenuContentProps>((props) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tchildren,\n\t\tclassName,\n\t\tref,\n\t\t// DialogContent props\n\t\tforceMount,\n\t\tonOpenAutoFocus,\n\t\tonCloseAutoFocus,\n\t\tonEscapeKeyDown,\n\t\tonPointerDownOutside,\n\t\tonInteractOutside,\n\t\t// CommandMenuVariantProps\n\t\tvariant = \"soft\",\n\t\tsize = \"md\",\n\t\taccentColor = \"base\",\n\t\tradius = providerContext.radius,\n\t\t...rest\n\t} = props\n\n\tconst contextValue = useMemo(() => {\n\t\treturn {\n\t\t\tvariant,\n\t\t\tsize,\n\t\t\tradius,\n\t\t}\n\t}, [radius, size, variant])\n\n\treturn (\n\t\t<DialogPortal>\n\t\t\t<DialogContent\n\t\t\t\tforceMount={forceMount}\n\t\t\t\tonOpenAutoFocus={onOpenAutoFocus}\n\t\t\t\tonCloseAutoFocus={onCloseAutoFocus}\n\t\t\t\tonEscapeKeyDown={onEscapeKeyDown}\n\t\t\t\tonPointerDownOutside={onPointerDownOutside}\n\t\t\t\tonInteractOutside={onInteractOutside}\n\t\t\t\tdata-floating-content=\"\"\n\t\t\t\tasChild\n\t\t\t>\n\t\t\t\t<CommandRoot\n\t\t\t\t\tclassName={cx(commandMenuContentCva({ size }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\t\t\tref={ref}\n\t\t\t\t\tdata-accent-color={accentColor}\n\t\t\t\t\t{...rest}\n\t\t\t\t>\n\t\t\t\t\t<DialogTitle className=\"sr-only\">{props.label}</DialogTitle>\n\t\t\t\t\t<DialogDescription className=\"sr-only\">Use the command menu to trigger commands.</DialogDescription>\n\t\t\t\t\t<CommandMenuContext value={contextValue}>{children}</CommandMenuContext>\n\t\t\t\t</CommandRoot>\n\t\t\t</DialogContent>\n\t\t</DialogPortal>\n\t)\n})\nCommandMenuContent.displayName = \"CommandMenuContent\"\n","import { cx } from \"class-variance-authority\"\nimport { CommandEmpty } from \"cmdk\"\nimport { ComponentPropsWithRef, memo, use } from \"react\"\n\nimport { CommandMenuContext } from \"./context\"\nimport { commandMenuEmptyCva } from \"./cva\"\n\nexport interface CommandMenuEmptyProps extends ComponentPropsWithRef<typeof CommandEmpty> {}\n\nexport const CommandMenuEmpty = memo<CommandMenuEmptyProps>((props) => {\n\tconst { className, ref, ...rest } = props\n\n\tconst { size } = use(CommandMenuContext)\n\n\treturn <CommandEmpty className={cx(commandMenuEmptyCva({ size }), className)} ref={ref} {...rest} />\n})\nCommandMenuEmpty.displayName = \"CommandMenuEmpty\"\n","import { cx } from \"class-variance-authority\"\nimport { CommandGroup } from \"cmdk\"\nimport { ComponentPropsWithRef, memo, use } from \"react\"\n\nimport { CommandMenuContext } from \"./context\"\nimport { commandMenuGroupCva } from \"./cva\"\n\nexport interface CommandMenuGroupProps extends ComponentPropsWithRef<typeof CommandGroup> {}\n\nexport const CommandMenuGroup = memo<CommandMenuGroupProps>((props) => {\n\tconst { className, ref, ...rest } = props\n\n\tconst { size } = use(CommandMenuContext)\n\n\treturn <CommandGroup className={cx(commandMenuGroupCva({ size }), className)} ref={ref} {...rest} />\n})\nCommandMenuGroup.displayName = \"CommandMenuGroup\"\n","import { cx } from \"class-variance-authority\"\nimport { CommandInput } from \"cmdk\"\nimport { ComponentPropsWithRef, memo, use } from \"react\"\n\nimport { CommandMenuContext } from \"./context\"\nimport { commandMenuInputCva } from \"./cva\"\n\nexport interface CommandMenuInputProps extends ComponentPropsWithRef<typeof CommandInput> {}\n\nexport const CommandMenuInput = memo<CommandMenuInputProps>((props) => {\n\tconst { className, ref, ...rest } = props\n\n\tconst { size } = use(CommandMenuContext)\n\n\treturn <CommandInput className={cx(commandMenuInputCva({ size }), className)} ref={ref} {...rest} />\n})\nCommandMenuInput.displayName = \"CommandMenuInput\"\n","import { cx } from \"class-variance-authority\"\nimport { CommandList, useCommandState } from \"cmdk\"\nimport { ComponentPropsWithRef, memo, use } from \"react\"\n\nimport { CommandMenuContext } from \"./context\"\nimport { commandMenuListCva } from \"./cva\"\n\nexport interface CommandMenuListProps extends ComponentPropsWithRef<typeof CommandList> {}\n\nexport const CommandMenuList = memo<CommandMenuListProps>((props) => {\n\tconst { className, ref, ...rest } = props\n\n\tconst { size } = use(CommandMenuContext)\n\tconst filterCount = useCommandState((state) => state.filtered.count)\n\n\treturn (\n\t\t<CommandList\n\t\t\tclassName={cx(commandMenuListCva({ size }), className)}\n\t\t\tref={ref}\n\t\t\thidden={filterCount === 0}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nCommandMenuList.displayName = \"CommandMenuList\"\n","import { MultiSelectProvider } from \"../SelectContext\"\nimport type { MultiSelectProps } from \"../SelectContext/typings\"\nimport { genericMemo } from \"../utils\"\nimport { CommandMenuGroup, CommandMenuGroupProps } from \"./Group\"\n\nexport interface CommandMenuMultiSelectGroupProps<TValue> extends CommandMenuGroupProps, MultiSelectProps<TValue> {}\n\nexport const CommandMenuMultiSelectGroup = genericMemo(function CommandMenuMultiSelectGroup<TValue>(\n\tprops: CommandMenuMultiSelectGroupProps<TValue>,\n) {\n\tconst { children, ref, defaultValues, values, onValuesChange, ...rest } = props\n\n\treturn (\n\t\t<MultiSelectProvider<TValue> values={values} onValuesChange={onValuesChange} defaultValues={defaultValues}>\n\t\t\t<CommandMenuGroup ref={ref} aria-multiselectable {...rest}>\n\t\t\t\t{children}\n\t\t\t</CommandMenuGroup>\n\t\t</MultiSelectProvider>\n\t)\n})\n","import { use, useCallback, useLayoutEffect } from \"react\"\n\nimport { IMultiSelectContext, MultiSelectContext } from \"../SelectContext\"\nimport { genericMemo } from \"../utils\"\nimport { SelectedIndicatorContext } from \"./context\"\nimport { CommandMenuItem, CommandMenuItemProps } from \"./Item\"\nimport { getSelectedState } from \"./utils\"\n\nexport interface CommandMenuMultiSelectItemProps<TValue> extends CommandMenuItemProps {\n\tvalue: TValue\n}\n\nexport const CommandMenuMultiSelectItem = genericMemo(function <TValue>(\n\tprops: CommandMenuMultiSelectItemProps<TValue>,\n) {\n\tconst { children, ref, value, onSelect, closeOnSelect = false, ...rest } = props\n\tconst {\n\t\tselected,\n\t\tselectValue: handleSelectValue,\n\t\tregisterValue,\n\t} = use(MultiSelectContext) as IMultiSelectContext<TValue> // safe cast\n\n\tuseLayoutEffect(() => {\n\t\treturn registerValue(value)\n\t}, [registerValue, value])\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\n\t\t// TODO: should send an event here that contains the value and then can prevent default for more control\n\t\t// if (e.defaultPrevented) return\n\n\t\thandleSelectValue(value)\n\t}, [handleSelectValue, onSelect, value])\n\n\tconst isSelected = selected(value)\n\n\treturn (\n\t\t<SelectedIndicatorContext value={isSelected}>\n\t\t\t<CommandMenuItem\n\t\t\t\tref={ref}\n\t\t\t\tonSelect={handleSelect}\n\t\t\t\tdata-state={getSelectedState(isSelected)}\n\t\t\t\taria-selected={isSelected}\n\t\t\t\tcloseOnSelect={closeOnSelect}\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</CommandMenuItem>\n\t\t</SelectedIndicatorContext>\n\t)\n})\n","import type { DialogOverlayProps, DialogPortalProps } from \"@radix-ui/react-dialog\"\nimport { DialogOverlay, DialogPortal } from \"@radix-ui/react-dialog\"\nimport { cx } from \"class-variance-authority\"\nimport { memo } from \"react\"\n\nimport { commandMenuOverlayCva } from \"./cva\"\n\nexport interface CommandMenuOverlayProps extends DialogOverlayProps, Pick<DialogPortalProps, \"container\"> {}\n\nexport const CommandMenuOverlay = memo<CommandMenuOverlayProps>((props) => {\n\tconst { container, className, ...rest } = props\n\n\treturn (\n\t\t<DialogPortal container={container}>\n\t\t\t<DialogOverlay className={cx(commandMenuOverlayCva(), className)} data-floating-content=\"\" {...rest} />\n\t\t</DialogPortal>\n\t)\n})\nCommandMenuOverlay.displayName = \"CommandMenuOverlay\"\n","import { ComponentPropsWithRef, use, useMemo } from \"react\"\n\nimport { CommandMenuPageContext } from \"./context\"\nimport { getActiveState } from \"./utils\"\n\nexport interface CommandMenuPageProps extends ComponentPropsWithRef<\"div\"> {\n\tpage: string\n}\n\nexport const CommandMenuPage = (props: CommandMenuPageProps) => {\n\tconst { children, ref, page, ...rest } = props\n\tconst { page: activePage } = use(CommandMenuPageContext)\n\n\tconst isActive = useMemo(() => page === activePage, [page, activePage])\n\n\treturn (\n\t\t<div ref={ref} data-active={getActiveState(isActive)} hidden={!isActive} {...rest}>\n\t\t\t{isActive ? children : null}\n\t\t</div>\n\t)\n}\n","import { PropsWithChildren } from \"react\"\n\nimport { useControlledState } from \"../utils\"\nimport { CommandMenuPageContext } from \"./context\"\n\nexport interface CommandMenuPagesProps extends PropsWithChildren {\n\tdefaultPage?: string\n\tpage?: string\n\tonPageChange?: (page: string) => void\n}\n\nexport const CommandMenuPages = (props: CommandMenuPagesProps) => {\n\tconst { children, defaultPage = \"\", page: controlledPage, onPageChange } = props\n\n\tconst [page, setPage] = useControlledState(defaultPage, controlledPage, onPageChange)\n\n\treturn <CommandMenuPageContext value={{ page, setPage }}>{children}</CommandMenuPageContext>\n}\n","import { use, useCallback, useMemo } from \"react\"\n\nimport { CommandMenuPageContext, SelectedIndicatorContext } from \"./context\"\nimport { CommandMenuItem, CommandMenuItemProps } from \"./Item\"\nimport { getActiveState } from \"./utils\"\n\nexport interface CommandMenuPageTriggerItemProps extends CommandMenuItemProps {\n\tpage: string\n}\n\nexport const CommandMenuPageTriggerItem = (props: CommandMenuPageTriggerItemProps) => {\n\tconst { ref, page, onSelect, closeOnSelect = false, ...rest } = props\n\tconst { page: activePage, setPage } = use(CommandMenuPageContext)\n\n\tconst isActive = useMemo(() => page === activePage, [page, activePage])\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\n\t\t// TODO: should send an event here that contains the value and then can prevent default for more control\n\t\t// if (e.defaultPrevented) return\n\n\t\tsetPage(page)\n\t}, [onSelect, page, setPage])\n\n\treturn (\n\t\t<SelectedIndicatorContext value={isActive}>\n\t\t\t<CommandMenuItem\n\t\t\t\tref={ref}\n\t\t\t\tonSelect={handleSelect}\n\t\t\t\tdata-state={getActiveState(isActive)}\n\t\t\t\tcloseOnSelect={closeOnSelect}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t</SelectedIndicatorContext>\n\t)\n}\n","import { SingleSelectNotRequiredProvider, SingleSelectRequiredProvider } from \"../SelectContext\"\nimport { SingleSelectProps } from \"../SelectContext/typings\"\nimport { genericMemo } from \"../utils\"\nimport { CommandMenuGroup, CommandMenuGroupProps } from \"./Group\"\n\nexport type CommandMenuRadioGroupProps<TValue> = SingleSelectProps<TValue> &\n\tOmit<CommandMenuGroupProps, \"defaultValue\" | \"value\">\n\nexport const CommandMenuRadioGroup = genericMemo(function CommandMenuRadioGroup<TValue>(\n\tprops: CommandMenuRadioGroupProps<TValue>,\n) {\n\tconst { children, ref, required, defaultValue, value, onValueChange, ...rest } = props\n\n\treturn (\n\t\t<CommandMenuGroup ref={ref} role=\"radiogroup\" {...rest}>\n\t\t\t{required ? (\n\t\t\t\t<SingleSelectRequiredProvider<TValue>\n\t\t\t\t\tdefaultValue={defaultValue}\n\t\t\t\t\tvalue={value}\n\t\t\t\t\tonValueChange={onValueChange}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</SingleSelectRequiredProvider>\n\t\t\t) : (\n\t\t\t\t<SingleSelectNotRequiredProvider<TValue>\n\t\t\t\t\tdefaultValue={defaultValue}\n\t\t\t\t\tvalue={value}\n\t\t\t\t\tonValueChange={onValueChange}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</SingleSelectNotRequiredProvider>\n\t\t\t)}\n\t\t</CommandMenuGroup>\n\t)\n})\n","import { use, useCallback } from \"react\"\n\nimport { ISelectContext, SelectContext } from \"../SelectContext\"\nimport { genericMemo } from \"../utils\"\nimport { SelectedIndicatorContext } from \"./context\"\nimport { CommandMenuItem, CommandMenuItemProps } from \"./Item\"\nimport { getSelectedState } from \"./utils\"\n\nexport interface CommandMenuRadioItemProps<TValue> extends CommandMenuItemProps {\n\tvalue: TValue\n}\n\nexport const CommandMenuRadioItem = genericMemo(function <TValue>(props: CommandMenuRadioItemProps<TValue>) {\n\tconst { children, ref, value, onSelect, ...rest } = props\n\tconst { selected, selectValue } = use(SelectContext) as ISelectContext<TValue> // safe cast\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\n\t\t// TODO: should send an event here that contains the value and then can prevent default for more control\n\t\t// if (e.defaultPrevented) return\n\n\t\tselectValue(value)\n\t}, [onSelect, selectValue, value])\n\n\tconst isSelected = selected(value)\n\n\treturn (\n\t\t<SelectedIndicatorContext value={isSelected}>\n\t\t\t<CommandMenuItem ref={ref} onSelect={handleSelect} data-state={getSelectedState(isSelected)} {...rest}>\n\t\t\t\t{children}\n\t\t\t</CommandMenuItem>\n\t\t</SelectedIndicatorContext>\n\t)\n})\n","import type { DialogProps } from \"@radix-ui/react-dialog\"\nimport * as RadixDialog from \"@radix-ui/react-dialog\"\nimport { memo, useMemo } from \"react\"\n\nimport { useControlledState } from \"../utils\"\nimport { CommandMenuDialogContext } from \"./context\"\n\nexport interface CommandMenuRootProps extends DialogProps {}\n\nexport const CommandMenuRoot = memo<CommandMenuRootProps>((props) => {\n\tconst { children, defaultOpen, open: controlledOpen, onOpenChange, modal } = props\n\n\tconst [open, setOpen] = useControlledState(defaultOpen ?? false, controlledOpen, onOpenChange)\n\n\tconst contextValue = useMemo(() => {\n\t\treturn {\n\t\t\topen,\n\t\t\tsetOpen,\n\t\t}\n\t}, [open, setOpen])\n\n\treturn (\n\t\t<RadixDialog.Root defaultOpen={defaultOpen} open={open} onOpenChange={setOpen} modal={modal}>\n\t\t\t<CommandMenuDialogContext value={contextValue}>{children}</CommandMenuDialogContext>\n\t\t</RadixDialog.Root>\n\t)\n})\nCommandMenuRoot.displayName = \"CommandMenuRoot\"\n","import { use, useCallback } from \"react\"\n\nimport { IMultiSelectContext, MultiSelectContext } from \"../SelectContext\"\nimport { genericMemo } from \"../utils\"\nimport { CheckboxIndicatorContext } from \"./context\"\nimport { CommandMenuItem, CommandMenuItemProps } from \"./Item\"\nimport type { CheckedState } from \"./typings\"\nimport { getCheckedState } from \"./utils\"\n\nexport interface CommandMenuSelectAllItemProps extends CommandMenuItemProps {}\n\nexport const CommandMenuSelectAllItem = genericMemo(function <TValue>(props: CommandMenuSelectAllItemProps) {\n\tconst { ref, onSelect, closeOnSelect = false, ...rest } = props\n\tconst { allSelected, someSelected, toggleSelectAll } = use(MultiSelectContext) as IMultiSelectContext<TValue> // safe cast\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\n\t\t// TODO: should send an event here that contains the value and then can prevent default for more control\n\t\t// if (e.defaultPrevented) return\n\n\t\ttoggleSelectAll()\n\t}, [onSelect, toggleSelectAll])\n\n\tconst selectedState: CheckedState = allSelected ? true : someSelected ? \"indeterminate\" : false\n\n\treturn (\n\t\t<CheckboxIndicatorContext value={selectedState}>\n\t\t\t<CommandMenuItem\n\t\t\t\tref={ref}\n\t\t\t\trole=\"menuitemcheckbox\"\n\t\t\t\tonSelect={handleSelect}\n\t\t\t\tdata-state={getCheckedState(selectedState)}\n\t\t\t\tcloseOnSelect={closeOnSelect}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t</CheckboxIndicatorContext>\n\t)\n})\n","import { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, ReactNode, use, useMemo } from \"react\"\n\nimport { SelectedIndicatorContext } from \"./context\"\nimport { getSelectedState } from \"./utils\"\n\nexport interface CommandMenuSelectedIndicatorProps extends Omit<ComponentPropsWithRef<\"span\">, \"children\"> {\n\tchildren: ReactNode | ((selected: boolean) => ReactNode)\n}\n\nexport const CommandMenuSelectedIndicator = (props: CommandMenuSelectedIndicatorProps) => {\n\tconst { ref, className, children, ...rest } = props\n\tconst isSelected = use(SelectedIndicatorContext)\n\n\tconst computedChildren = useMemo(() => {\n\t\treturn typeof children === \"function\" ? children(isSelected) : children\n\t}, [isSelected, children])\n\n\treturn (\n\t\t<span\n\t\t\tref={ref}\n\t\t\tdata-state={getSelectedState(isSelected)}\n\t\t\tclassName={cx(\n\t\t\t\t\"inline-block size-max\",\n\t\t\t\t{\n\t\t\t\t\tinvisible: !isSelected,\n\t\t\t\t},\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{computedChildren}\n\t\t</span>\n\t)\n}\n","import { cx } from \"class-variance-authority\"\nimport { CommandSeparator } from \"cmdk\"\nimport { ComponentPropsWithRef, memo, use } from \"react\"\n\nimport { CommandMenuContext } from \"./context\"\nimport { commandMenuSeparatorCva } from \"./cva\"\n\nexport interface CommandMenuSeparatorProps extends ComponentPropsWithRef<typeof CommandSeparator> {\n\tspacing?: boolean\n}\n\nexport const CommandMenuSeparator = memo<CommandMenuSeparatorProps>((props) => {\n\tconst { className, ref, spacing = false, ...rest } = props\n\n\tconst { size } = use(CommandMenuContext)\n\n\treturn (\n\t\t<CommandSeparator ref={ref} className={cx(commandMenuSeparatorCva({ size, spacing }), className)} {...rest} />\n\t)\n})\nCommandMenuSeparator.displayName = \"CommandMenuSeparator\"\n","import type { DialogTriggerProps } from \"@radix-ui/react-dialog\"\nimport { DialogTrigger } from \"@radix-ui/react-dialog\"\nimport { memo } from \"react\"\n\nexport interface CommandMenuTriggerProps extends DialogTriggerProps {}\n\nexport const CommandMenuTrigger = memo<CommandMenuTriggerProps>((props) => {\n\treturn <DialogTrigger {...props} />\n})\nCommandMenuTrigger.displayName = \"CommandMenuTrigger\"\n","import { CommandMenuCheckboxIndicator } from \"./CheckboxIndicator\"\nimport { CommandMenuCheckboxItem } from \"./CheckboxItem\"\nimport { CommandMenuContent } from \"./Content\"\nimport { CommandMenuEmpty } from \"./Empty\"\nimport { CommandMenuGroup } from \"./Group\"\nimport { CommandMenuInput } from \"./Input\"\nimport { CommandMenuItem } from \"./Item\"\nimport { CommandMenuList } from \"./List\"\nimport { CommandMenuMultiSelectGroup } from \"./MultiSelectGroup\"\nimport { CommandMenuMultiSelectItem } from \"./MultiSelectItem\"\nimport { CommandMenuOverlay } from \"./Overlay\"\nimport { CommandMenuPage } from \"./Page\"\nimport { CommandMenuPages } from \"./Pages\"\nimport { CommandMenuPageTriggerItem } from \"./PageTriggerItem\"\nimport { CommandMenuRadioGroup } from \"./RadioGroup\"\nimport { CommandMenuRadioItem } from \"./RadioItem\"\nimport { CommandMenuRoot } from \"./Root\"\nimport { CommandMenuSelectAllItem } from \"./SelectAllItem\"\nimport { CommandMenuSelectedIndicator } from \"./SelectedIndicator\"\nimport { CommandMenuSeparator } from \"./Separator\"\nimport { CommandMenuTrigger } from \"./Trigger\"\n\nexport * from \"./CheckboxIndicator\"\nexport * from \"./CheckboxItem\"\nexport * from \"./Content\"\nexport * from \"./Empty\"\nexport * from \"./Group\"\nexport * from \"./Input\"\nexport * from \"./Item\"\nexport * from \"./List\"\nexport * from \"./MultiSelectGroup\"\nexport * from \"./MultiSelectItem\"\nexport * from \"./Overlay\"\nexport * from \"./Page\"\nexport * from \"./Pages\"\nexport * from \"./PageTriggerItem\"\nexport * from \"./RadioGroup\"\nexport * from \"./RadioItem\"\nexport * from \"./Root\"\nexport * from \"./SelectAllItem\"\nexport * from \"./SelectedIndicator\"\nexport * from \"./Separator\"\nexport * from \"./Trigger\"\nexport * from \"./typings\"\n\nexport const CommandMenu = {\n\tRoot: CommandMenuRoot,\n\tOverlay: CommandMenuOverlay,\n\tContent: CommandMenuContent,\n\tTrigger: CommandMenuTrigger,\n\tInput: CommandMenuInput,\n\tList: CommandMenuList,\n\tGroup: CommandMenuGroup,\n\tItem: CommandMenuItem,\n\tSeparator: CommandMenuSeparator,\n\tEmpty: CommandMenuEmpty,\n\n\t// Multi select\n\tMultiSelectGroup: CommandMenuMultiSelectGroup,\n\tMultiSelectItem: CommandMenuMultiSelectItem,\n\tSelectAllItem: CommandMenuSelectAllItem,\n\tSelectedIndicator: CommandMenuSelectedIndicator,\n\n\t// Radio / single select\n\tRadioGroup: CommandMenuRadioGroup,\n\tRadioItem: CommandMenuRadioItem,\n\n\t// Checkbox\n\tCheckboxItem: CommandMenuCheckboxItem,\n\tCheckboxIndicator: CommandMenuCheckboxIndicator,\n\n\t// Pages\n\tPages: CommandMenuPages,\n\tPage: CommandMenuPage,\n\tPageTriggerItem: CommandMenuPageTriggerItem,\n}\n","import type { ChevronProps } from \"react-day-picker\"\nimport { RiArrowDownSLine, RiArrowLeftSLine, RiArrowRightSLine, RiArrowUpSLine } from \"react-icons/ri\"\n\nexport const Chevron = (props: ChevronProps) => {\n\tconst { orientation, ...rest } = props\n\n\tswitch (orientation) {\n\t\tcase \"up\":\n\t\t\treturn <RiArrowUpSLine {...rest} />\n\t\tcase \"down\":\n\t\t\treturn <RiArrowDownSLine {...rest} />\n\t\tcase \"left\":\n\t\t\treturn <RiArrowLeftSLine {...rest} />\n\t\tdefault:\n\t\t\treturn <RiArrowRightSLine {...rest} />\n\t}\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const rootCva = cva([\"relative\", \"size-max\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"text-xs\"],\n\t\t\tsm: [\"text-sm\"],\n\t\t\tmd: [\"text-base\"],\n\t\t\tlg: [\"text-lg\"],\n\t\t\txl: [\"text-xl\"],\n\t\t},\n\t},\n})\n\nexport const dayButtonCva = cva(\n\t[\n\t\t\"relative\",\n\t\t\"transition-[background,text]\",\n\n\t\t\"focus:outline-hidden\",\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:-outline-offset-1\",\n\t\t\"focus-visible:outline-(--accent-a8)\",\n\n\t\t// range middle\n\t\t\"group-[.rdp-range-middle]/day:rounded-none\",\n\t\t\"group-[.rdp-range-middle]/day:bg-(--accent-a3)\",\n\n\t\t// range start/end\n\t\t\"group-[.rdp-range-start:not(.rdp-range-end)]/day:rounded-r-none\",\n\t\t\"group-[.rdp-range-end:not(.rdp-range-start)]/day:rounded-l-none\",\n\n\t\t// disabled\n\t\t\"group-data-[disabled]/day:pointer-events-none\",\n\t\t\"group-data-[disabled]/day:text-(--base-a9)\",\n\t\t\"group-data-[disabled]/day:opacity-70\",\n\n\t\t// outside (days shown)\n\t\t\"group-data-[outside]/day:pointer-events-none\",\n\t\t\"group-data-[outside]/day:text-(--base-a9)\",\n\t\t\"group-data-[outside]/day:opacity-70\",\n\t\t\"group-data-[outside]/day:!bg-transparent\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"size-6\"],\n\t\t\t\tsm: [\"size-7\"],\n\t\t\t\tmd: [\"size-8\"],\n\t\t\t\tlg: [\"size-9\"],\n\t\t\t\txl: [\"size-10\"],\n\t\t\t},\n\t\t\tvariant: {\n\t\t\t\tsoft: [\n\t\t\t\t\t// unselected\n\t\t\t\t\t\"group-[:not([data-selected])]/day:hover:bg-(--accent-a3)\",\n\t\t\t\t\t\"group-[:not([data-selected])]/day:active:bg-(--accent-a4)\",\n\n\t\t\t\t\t// selected\n\t\t\t\t\t\"group-[[data-selected='true']:not(.rdp-range-middle)]/day:bg-(--accent-a6)\",\n\t\t\t\t],\n\t\t\t\tsolid: [\n\t\t\t\t\t// unselected\n\t\t\t\t\t\"group-[:not([data-selected])]/day:hover:bg-(--accent-a3)\",\n\t\t\t\t\t\"group-[:not([data-selected])]/day:active:bg-(--accent-a4)\",\n\n\t\t\t\t\t// selected\n\t\t\t\t\t\"group-[[data-selected='true']:not(.rdp-range-middle)]/day:bg-(--accent-indicator)\",\n\t\t\t\t\t\"group-[[data-selected='true']:not(.rdp-range-middle)]/day:text-(--accent-contrast)\",\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n)\n\nexport const navButtonCva = cva(\n\t[\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:-outline-offset-1\",\n\t\t\"focus-visible:outline-(--base-a8)\",\n\t\t\"flex\",\n\t\t\"items-center\",\n\t\t\"justify-center\",\n\t\t\"text-(--base-a11)\",\n\t\t\"hover:bg-(--base-a3)\",\n\t\t\"active:bg-(--base-a4)\",\n\t\t\"text-(--base-a11)\",\n\t\t\"hover:text-(--base-a12)\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"size-6\"],\n\t\t\t\tsm: [\"size-7\"],\n\t\t\t\tmd: [\"size-8\"],\n\t\t\t\tlg: [\"size-9\"],\n\t\t\t\txl: [\"size-10\"],\n\t\t\t},\n\t\t},\n\t},\n)\n\nexport const weekDayCva = cva([\"font-medium\", \"text-(--base-a11)\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"size-6\"],\n\t\t\tsm: [\"size-7\"],\n\t\t\tmd: [\"size-8\"],\n\t\t\tlg: [\"size-9\"],\n\t\t\txl: [\"size-10\"],\n\t\t},\n\t},\n})\n\nexport const todayCva = cva(\n\t[\n\t\t\"*:after:absolute\",\n\t\t\"*:after:bg-(--base-12)\",\n\t\t\"*:after:start-1/2\",\n\t\t\"*:after:-translate-x-1/2\",\n\t\t\"*:group-data-[disabled]/day:after:bg-(--base-a9)\",\n\n\t\t\"*:after:rounded-full\",\n\t\t\"*:after:bottom-0.5\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"*:after:size-[2px]\"],\n\t\t\t\tsm: [\"*:after:size-[3px]\"],\n\t\t\t\tmd: [\"*:after:size-[3px]\"],\n\t\t\t\tlg: [\"*:after:size-[4px]\"],\n\t\t\t\txl: [\"*:after:size-[4px]\"],\n\t\t\t},\n\t\t\tvariant: {\n\t\t\t\tsoft: [\"*:after:bg-(--accent-a5)\"],\n\t\t\t\tsolid: [\"*:group-[[data-selected='true']:not(.rdp-range-middle)]/day:after:bg-(--accent-contrast)\"],\n\t\t\t},\n\t\t},\n\t},\n)\n\nexport const monthCaptionCva = cva([\"font-medium\", \"w-full\", \"flex\", \"justify-center\", \"items-center\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"h-5\"],\n\t\t\tsm: [\"h-6\"],\n\t\t\tmd: [\"h-7\"],\n\t\t\tlg: [\"h-8\"],\n\t\t\txl: [\"h-9\"],\n\t\t},\n\t},\n})\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, useMemo } from \"react\"\nimport { DayPicker as ReactDayPicker } from \"react-day-picker\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { Chevron } from \"./Chevron\"\nimport { dayButtonCva, monthCaptionCva, navButtonCva, rootCva, todayCva, weekDayCva } from \"./cva\"\nimport { DayPickerVariantProps } from \"./typings\"\n\nexport type DayPickerProps = ComponentProps<typeof ReactDayPicker> & DayPickerVariantProps\n\nexport const DayPicker = (props: DayPickerProps) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tcomponents,\n\t\tclassNames,\n\t\taccentColor = providerContext.accentColor,\n\t\tsize = \"md\",\n\t\tvariant = \"soft\",\n\t\tradius = providerContext.radius,\n\t\tshowOutsideDays = true,\n\t\t...rest\n\t} = props\n\n\tconst computedClassNames = useMemo(() => {\n\t\treturn {\n\t\t\t...classNames,\n\t\t\troot: cx(classNames?.root, rootCva({ size })),\n\t\t\tnav: cx(classNames?.nav, [\"absolute\", \"top-0\", \"w-full\", \"flex\", \"justify-between\"]),\n\t\t\tmonth: cx(classNames?.month, [\"flex\", \"flex-col\", \"gap-1\"]),\n\t\t\tmonth_caption: cx(classNames?.month_caption, monthCaptionCva({ size })),\n\t\t\tbutton_next: cx(\n\t\t\t\tclassNames?.button_next,\n\t\t\t\tnavButtonCva({ size }),\n\t\t\t\tradiusCva({ radius: radius, maxLarge: false }),\n\t\t\t),\n\t\t\tbutton_previous: cx(\n\t\t\t\tclassNames?.button_previous,\n\t\t\t\tnavButtonCva({ size }),\n\t\t\t\tradiusCva({ radius: radius, maxLarge: false }),\n\t\t\t),\n\t\t\tweekday: cx(classNames?.weekday, weekDayCva({ size })),\n\t\t\ttoday: cx(classNames?.today, todayCva({ size, variant })),\n\t\t\tday: cx(classNames?.day, [\"group/day\"]),\n\t\t\tday_button: cx(\n\t\t\t\tclassNames?.day_button,\n\t\t\t\tdayButtonCva({ size, variant }),\n\t\t\t\tradiusCva({ radius: radius, maxLarge: false }),\n\t\t\t),\n\t\t\trange_start: cx(classNames?.range_start, \"rdp-range-start\"),\n\t\t\trange_middle: cx(classNames?.range_middle, \"rdp-range-middle\"),\n\t\t\trange_end: cx(classNames?.range_end, \"rdp-range-end\"),\n\t\t}\n\t}, [classNames, radius, size, variant])\n\n\tconst computedComponents = useMemo(() => {\n\t\treturn {\n\t\t\t...components,\n\t\t\tChevron,\n\t\t}\n\t}, [components])\n\n\treturn (\n\t\t<ReactDayPicker\n\t\t\tdata-accent-color={accentColor}\n\t\t\tshowOutsideDays={showOutsideDays}\n\t\t\tcomponents={computedComponents}\n\t\t\tclassNames={computedClassNames}\n\t\t\t{...rest}\n\t\t/>\n\t)\n}\n","import { createContext } from \"react\"\n\nimport type { CloseDialogWithOptions } from \"./typings\"\n\nexport const CloseDialogContext = createContext({} as CloseDialogWithOptions)\n","import { useContext } from \"react\"\n\nimport { CloseDialogContext } from \"./context\"\n\nexport const useCloseDialog = () => {\n\tconst dialogContext = useContext(CloseDialogContext)\n\n\tif (!dialogContext) {\n\t\tthrow new Error(\"useDialog must be used within a DialogRoot\")\n\t}\n\n\treturn dialogContext\n}\n","import * as RadixDialog from \"@radix-ui/react-dialog\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef, ReactNode, useMemo } from \"react\"\nimport { HiX } from \"react-icons/hi\"\n\nimport type { AlertDialogSize } from \"../AlertDialog\"\nimport { dialogContent } from \"../AlertDialog/cva\"\nimport { IconButton } from \"../Buttons\"\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { useCloseDialog } from \"./hooks\"\nimport type { CloseDialogWithOptions } from \"./typings\"\n\nexport interface DialogContentProps extends Omit<RadixDialog.DialogContentProps, \"children\"> {\n\ttitle: string\n\tcontainer?: RadixDialog.DialogPortalProps[\"container\"]\n\tsize?: AlertDialogSize\n\tchildren: ReactNode | ((close: CloseDialogWithOptions) => ReactNode)\n}\n\nexport const DialogContent = forwardRef<HTMLDivElement, DialogContentProps>((props, ref) => {\n\tconst { radius } = useProvider()\n\tconst close = useCloseDialog()\n\tconst { children, title, container, className, size, ...rest } = props\n\n\tconst computedChildren = useMemo(() => {\n\t\treturn typeof children === \"function\" ? children(close) : children\n\t}, [children, close])\n\n\treturn (\n\t\t<RadixDialog.Portal container={container}>\n\t\t\t<RadixDialog.Content\n\t\t\t\tclassName={cx(dialogContent({ size }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\t\tref={ref}\n\t\t\t\tdata-floating-content=\"\"\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t<div className=\"flex h-max w-full justify-between\">\n\t\t\t\t\t<RadixDialog.Title className=\"font-medium\">{title}</RadixDialog.Title>\n\t\t\t\t\t<RadixDialog.Close asChild>\n\t\t\t\t\t\t<IconButton accentColor=\"base\" size={size} variant=\"ghost\">\n\t\t\t\t\t\t\t<HiX />\n\t\t\t\t\t\t</IconButton>\n\t\t\t\t\t</RadixDialog.Close>\n\t\t\t\t</div>\n\t\t\t\t{computedChildren}\n\t\t\t</RadixDialog.Content>\n\t\t</RadixDialog.Portal>\n\t)\n})\nDialogContent.displayName = \"DialogContent\"\n","import * as RadixDialog from \"@radix-ui/react-dialog\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { dialogOverlay } from \"../AlertDialog/cva\"\n\nexport interface DialogOverlayProps extends RadixDialog.DialogOverlayProps {\n\tcontainer?: RadixDialog.DialogPortalProps[\"container\"]\n}\n\nexport const DialogOverlay = forwardRef<HTMLDivElement, DialogOverlayProps>((props, ref) => {\n\tconst { className, container, ...rest } = props\n\n\treturn (\n\t\t<RadixDialog.Portal container={container}>\n\t\t\t<RadixDialog.Overlay\n\t\t\t\tref={ref}\n\t\t\t\tclassName={cx(dialogOverlay({}), className)}\n\t\t\t\tdata-floating-content=\"\"\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t</RadixDialog.Portal>\n\t)\n})\nDialogOverlay.displayName = \"DialogOverlay\"\n","import * as RadixDialog from \"@radix-ui/react-dialog\"\nimport { useCallback, useState } from \"react\"\n\nimport { CloseDialogContext } from \"./context\"\nimport type { CloseDialogWithOptions, DialogProps } from \"./typings\"\n\nexport const DialogRoot = (props: DialogProps) => {\n\tconst {\n\t\tchildren,\n\t\tonOpen,\n\t\tonClose,\n\t\tdefaultOpen,\n\t\tonCloseInterrupt,\n\t\topen: externalOpen,\n\t\tonOpenChange: externalOpenChange,\n\t} = props\n\t// `innerOpen` used to track the open state of the dialog when `externalOpen` is undefined\n\tconst [innerOpen, setInnerOpen] = useState(defaultOpen ?? false)\n\tconst open = externalOpen ?? innerOpen\n\n\tconst handleOpenChange = useCallback(\n\t\t(next: boolean) => {\n\t\t\tif (externalOpenChange) return externalOpenChange(next)\n\n\t\t\tif (next && onOpen) {\n\t\t\t\tonOpen()\n\t\t\t} else if (!next && onCloseInterrupt) {\n\t\t\t\t// closes the dialog, bypassing the checks in `handleOpenChange`\n\t\t\t\tconst confirmClose = () => {\n\t\t\t\t\tsetInnerOpen(false)\n\t\t\t\t\tif (onClose) onClose()\n\t\t\t\t}\n\n\t\t\t\t// if onCloseInterrupt is passed, bypass the standard close behavior and require\n\t\t\t\t// the passed `confirmClose` to close the dialog\n\t\t\t\treturn onCloseInterrupt(confirmClose)\n\t\t\t} else if (!next && onClose) {\n\t\t\t\tonClose()\n\t\t\t}\n\n\t\t\tsetInnerOpen(next)\n\t\t},\n\t\t[externalOpenChange, onOpen, onClose, onCloseInterrupt],\n\t)\n\n\tconst closeDialog = useCallback<CloseDialogWithOptions>(\n\t\t(options) => {\n\t\t\tif (options?.force) {\n\t\t\t\t// bypass the checks in the `handleOpenChange` function\n\t\t\t\treturn setInnerOpen(false)\n\t\t\t}\n\n\t\t\thandleOpenChange(false)\n\t\t},\n\t\t[handleOpenChange],\n\t)\n\n\treturn (\n\t\t<RadixDialog.Root open={open} onOpenChange={handleOpenChange}>\n\t\t\t<CloseDialogContext.Provider value={closeDialog}>{children}</CloseDialogContext.Provider>\n\t\t</RadixDialog.Root>\n\t)\n}\n","import * as RadixDialog from \"@radix-ui/react-dialog\"\n\nimport { DialogContent } from \"./Content\"\nimport { DialogOverlay } from \"./Overlay\"\nimport { DialogRoot } from \"./Root\"\n\nexport * from \"./Content\"\nexport * from \"./Overlay\"\nexport * from \"./Root\"\nexport * from \"./typings\"\n\nexport const Dialog = {\n\tRoot: DialogRoot,\n\tContent: DialogContent,\n\tOverlay: DialogOverlay,\n\tTrigger: RadixDialog.Trigger,\n\tClose: RadixDialog.Close,\n}\n","import type { HeadingLevel } from \"./typings\"\n\nexport const headingLevelTagMapping: Record<HeadingLevel, \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\"> = {\n\t\"1\": \"h1\",\n\t\"2\": \"h2\",\n\t\"3\": \"h3\",\n\t\"4\": \"h4\",\n\t\"5\": \"h5\",\n\t\"6\": \"h6\",\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const headingCva = cva([], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"text-xs\"],\n\t\t\tsm: [\"text-sm\"],\n\t\t\tmd: [\"text-base\"],\n\t\t\tlg: [\"text-lg\"],\n\t\t\txl: [\"text-xl\"],\n\t\t\t\"2xl\": [\"text-2xl\"],\n\t\t\t\"3xl\": [\"text-3xl\"],\n\t\t\t\"4xl\": [\"text-4xl\"],\n\t\t\t\"5xl\": [\"text-5xl\"],\n\t\t\t\"6xl\": [\"text-6xl\"],\n\t\t\t\"7xl\": [\"text-7xl\"],\n\t\t\t\"8xl\": [\"text-8xl\"],\n\t\t\t\"9xl\": [\"text-9xl\"],\n\t\t},\n\t\tweight: {\n\t\t\tlight: [\"font-light\"],\n\t\t\tregular: [\"font-normal\"],\n\t\t\tmedium: [\"font-medium\"],\n\t\t\tbold: [\"font-bold\"],\n\t\t},\n\t\talign: {\n\t\t\tleft: [\"text-left\"],\n\t\t\tcenter: [\"text-center\"],\n\t\t\tright: [\"text-right\"],\n\t\t},\n\t},\n})\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nimport type { AccentColorProps } from \"../typings\"\nimport { headingLevelTagMapping } from \"./constants\"\nimport { headingCva } from \"./cva\"\nimport type { HeadingVariantProps } from \"./typings\"\n\nexport interface HeadingProps extends PropsWithoutRef<ComponentProps<\"h1\">>, HeadingVariantProps, AccentColorProps {}\n\nexport const Heading = forwardRef<HTMLHeadingElement, HeadingProps>((props, ref) => {\n\tconst { className, level = \"1\", size, weight, align, highContrast = false, accentColor, ...rest } = props\n\tconst Tag = headingLevelTagMapping[level]\n\n\treturn (\n\t\t<Tag\n\t\t\tref={ref}\n\t\t\tclassName={cx(\n\t\t\t\theadingCva({ size, weight, align }),\n\t\t\t\t{\n\t\t\t\t\t\"text-(--accent-a11)\": !!accentColor,\n\t\t\t\t\t\"text-(--accent-a12)\": highContrast,\n\t\t\t\t},\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nHeading.displayName = \"Heading\"\n","import * as RadixHoverCard from \"@radix-ui/react-hover-card\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nexport interface HoverCardArrowProps extends RadixHoverCard.HoverCardArrowProps {}\n\nexport const HoverCardArrow = forwardRef<SVGSVGElement, HoverCardArrowProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn <RadixHoverCard.Arrow className={cx(\"fill-(--base-6)\", className)} ref={ref} {...rest} />\n})\nHoverCardArrow.displayName = \"HoverCardArrow\"\n","import { cva } from \"class-variance-authority\"\n\nexport const hoverCardContent = cva([\"bg-(--color-background)\", \"dark:bg-(--base-2)\", \"ring-1\", \"ring-(--base-6)\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"p-2\"],\n\t\t\tsm: [\"p-3\"],\n\t\t\tmd: [\"p-4\"],\n\t\t\tlg: [\"p-5\"],\n\t\t\txl: [\"p-6\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n})\n","import * as RadixHoverCard from \"@radix-ui/react-hover-card\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { floating, radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { hoverCardContent } from \"./cva\"\nimport type { HoverCardVariantProps } from \"./typings\"\n\nexport interface HoverCardContentProps extends RadixHoverCard.HoverCardContentProps, HoverCardVariantProps {\n\tcontainer?: RadixHoverCard.HoverCardPortalProps[\"container\"]\n}\n\nexport const HoverCardContent = forwardRef<HTMLDivElement, HoverCardContentProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tsize,\n\t\tside,\n\t\tradius = providerContext.radius,\n\t\taccentColor = providerContext.accentColor,\n\t\tsideOffset = 4,\n\t\tcontainer,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<RadixHoverCard.Portal container={container}>\n\t\t\t<RadixHoverCard.Content\n\t\t\t\tclassName={cx(\n\t\t\t\t\thoverCardContent({ size }),\n\t\t\t\t\tfloating({ side, shadow: \"3\" }),\n\t\t\t\t\tradiusCva({ radius, maxLarge: true }),\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\tref={ref}\n\t\t\t\tside={side}\n\t\t\t\tdata-accent-color={accentColor}\n\t\t\t\tsideOffset={sideOffset}\n\t\t\t\tdata-floating-content=\"\"\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t</RadixHoverCard.Portal>\n\t)\n})\nHoverCardContent.displayName = \"HoverCardContent\"\n","import * as RadixHoverCard from \"@radix-ui/react-hover-card\"\n\nimport { HoverCardArrow } from \"./Arrow\"\nimport { HoverCardContent } from \"./Content\"\n\nexport * from \"./Arrow\"\nexport * from \"./Content\"\nexport * from \"./typings\"\n\nexport const HoverCard = {\n\tArrow: HoverCardArrow,\n\tContent: HoverCardContent,\n\tRoot: RadixHoverCard.Root,\n\tTrigger: RadixHoverCard.Trigger,\n}\n","import { FC, memo, PointerEventHandler, ReactElement, useCallback, useState } from \"react\"\n\ninterface ChildProps {\n\tisHovered: boolean\n\tonPointerEnter: PointerEventHandler<HTMLElement>\n\tonPointerLeave: PointerEventHandler<HTMLElement>\n}\ninterface HoverUtilityProps {\n\tforceHover?: boolean\n\tchildren: (props: ChildProps) => ReactElement\n}\n\n/** HoverUtility is a utility component used for detecting when an element is being hovered over or not, is passes a\n * isHovered variable to its children as well as props onPointerEnter and onPointerLeave that can be spread on any\n * child component that should be used as the element to observe hovering on. See stories of examples of its use. */\nexport const HoverUtility: FC<HoverUtilityProps> = memo(function Root({ children, forceHover }: HoverUtilityProps) {\n\tconst [isHovered, setIsHovered] = useState<boolean>(false)\n\n\tconst handlePointerEnter = useCallback(() => {\n\t\tsetIsHovered(true)\n\t}, [])\n\n\tconst handlePointerLeave = useCallback(() => {\n\t\tsetIsHovered(false)\n\t}, [])\n\n\treturn children({\n\t\tisHovered: forceHover !== undefined ? forceHover : isHovered,\n\t\tonPointerEnter: handlePointerEnter,\n\t\tonPointerLeave: handlePointerLeave,\n\t})\n})\n","import { createContext } from \"react\"\n\nimport type { InputSize, InputVariant } from \"./typings\"\n\ninterface IInputContext {\n\tsize: InputSize\n\tvariant: InputVariant\n}\n\nexport const InputContext = createContext<IInputContext>({} as IInputContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const inputRoot = cva(\n\t[\n\t\t\"flex\",\n\t\t\"items-stretch\",\n\t\t\"has-[:focus]:outline-2\",\n\t\t\"has-[:focus]:outline-(--accent-8)\",\n\t\t\"has-[:focus]:-outline-offset-1\",\n\t\t\"has-[:disabled]:opacity-50\",\n\t\t\"has-[:disabled]:pointer-events-none\",\n\t\t\"transition-[background,color,box-shadow]\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsurface: [\"inset-ring\", \"inset-ring-(--accent-a7)\", \"bg-(--accent-surface)\", \"text-(--accent-a12)\"],\n\t\t\t\tsoft: [\"bg-(--accent-a3)\", \"text-(--accent-12)\"],\n\t\t\t\toutline: [\"inset-ring\", \"inset-ring-(--base-a7)\", \"bg-transparent\", \"text-(--base-12)\"],\n\t\t\t\tghost: [\"bg-transparent\", \"text-(--base-12)\"],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"h-6\", \"text-xs\"],\n\t\t\t\tsm: [\"h-7\", \"text-sm\"],\n\t\t\t\tmd: [\"h-8\", \"text-base\"],\n\t\t\t\tlg: [\"h-9\", \"text-lg\"],\n\t\t\t\txl: [\"h-10\", \"text-xl\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t\tvariant: \"surface\",\n\t\t},\n\t},\n)\n\nexport const inputField = cva([\"peer-[.slot]/slot:px-0\"], {\n\tvariants: {\n\t\tvariant: {\n\t\t\tsurface: [\"placeholder-(--accent-12)\", \"placeholder:opacity-60\", \"selection:bg-(--accent-a5)\"],\n\t\t\tsoft: [\"placeholder-(--accent-12)\", \"placeholder:opacity-60\", \"selection:bg-(--accent-a5)\"],\n\t\t\toutline: [\"placeholder-(--base-a9)\", \"selection:bg-(--accent-a5)\"],\n\t\t\tghost: ['placeholder-(--base-a9)\", \"selection:bg-(--accent-a5)'],\n\t\t},\n\t\tsize: {\n\t\t\txs: [\"px-3\"],\n\t\t\tsm: [\"px-3.5\"],\n\t\t\tmd: [\"px-4\"],\n\t\t\tlg: [\"px-4.5\"],\n\t\t\txl: [\"px-5\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t\tvariant: \"surface\",\n\t},\n})\n\nexport const inputSlot = cva([\"peer/slot\", \"slot\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"px-1.5\"],\n\t\t\tsm: [\"px-1.75\"],\n\t\t\tmd: [\"px-2\"],\n\t\t\tlg: [\"px-2.25\"],\n\t\t\txl: [\"px-2.5\"],\n\t\t},\n\t\tvariant: {\n\t\t\tsurface: [\"text-(--accent-12)\"],\n\t\t\tsoft: [\"text-(--accent-12)\"],\n\t\t\toutline: [\"text-(--base-a11)\"],\n\t\t\tghost: [\"text-(--base-a11)\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n})\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef, useContext } from \"react\"\n\nimport { InputContext } from \"./context\"\nimport { inputField } from \"./cva\"\n\nexport interface InputFieldProps extends PropsWithoutRef<ComponentProps<\"input\">> {}\n\nexport const InputField = forwardRef<HTMLInputElement, InputFieldProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\tconst { size, variant } = useContext(InputContext)\n\n\treturn (\n\t\t<input\n\t\t\tclassName={cx(inputField({ size, variant }), \"grow bg-transparent outline-0\", className)}\n\t\t\tref={ref}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nInputField.displayName = \"InputField\"\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { InputContext } from \"./context\"\nimport { inputRoot } from \"./cva\"\nimport type { InputVariantProps } from \"./typings\"\n\nexport interface InputRootProps extends InputVariantProps, PropsWithoutRef<ComponentProps<\"div\">> {}\n\nexport const InputRoot = forwardRef<HTMLDivElement, InputRootProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tvariant = \"surface\",\n\t\tsize = \"md\",\n\t\taccentColor = providerContext.accentColor,\n\t\tradius = providerContext.radius,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<InputContext.Provider value={{ size, variant }}>\n\t\t\t<div\n\t\t\t\tclassName={cx(inputRoot({ variant, size }), radiusCva({ radius, maxLarge: false }), className)}\n\t\t\t\tref={ref}\n\t\t\t\tdata-accent-color={accentColor}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t</InputContext.Provider>\n\t)\n})\nInputRoot.displayName = \"InputRoot\"\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef, useContext } from \"react\"\n\nimport { InputContext } from \"./context\"\nimport { inputSlot } from \"./cva\"\n\nexport interface InputSlotProps extends PropsWithoutRef<ComponentProps<\"div\">> {}\n\nexport const InputSlot = forwardRef<HTMLDivElement, InputSlotProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\tconst { size, variant } = useContext(InputContext)\n\n\treturn <div className={cx(inputSlot({ size, variant }), \"flex items-center\", className)} ref={ref} {...rest} />\n})\nInputSlot.displayName = \"InputSlot\"\n","import { InputField } from \"./Field\"\nimport { InputRoot } from \"./Root\"\nimport { InputSlot } from \"./Slot\"\n\nexport * from \"./Field\"\nexport * from \"./Root\"\nexport * from \"./Slot\"\nexport * from \"./typings\"\n\nexport const Input = {\n\tField: InputField,\n\tRoot: InputRoot,\n\tSlot: InputSlot,\n}\n","import { createContext, Dispatch, SetStateAction, useContext } from \"react\"\n\ninterface ILayoutContent {\n\tsmall: boolean\n\thideLayout: boolean\n\t/** controlled value for open state of LeftSlideOut Component. */\n\tshowLeftSlideOut: boolean\n\tsetShowLeftSlideOut: Dispatch<SetStateAction<boolean>>\n\t/** controlled value for open state of RightSlideOut Component. */\n\tshowRightSlideOut: boolean\n\tsetShowRightSlideOut: Dispatch<SetStateAction<boolean>>\n}\n\nexport const LayoutContext = createContext<ILayoutContent>({} as ILayoutContent)\n\nexport const useLayoutContext = () => useContext(LayoutContext)\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, memo, PropsWithoutRef } from \"react\"\n\nimport { useLayoutContext } from \"./context\"\n\nexport interface ContainerProps extends PropsWithoutRef<ComponentProps<\"div\">> {}\n\nexport const Container = memo(\n\tforwardRef<HTMLDivElement, ContainerProps>((props, ref) => {\n\t\tconst { children, className, ...rest } = props\n\t\tconst { hideLayout = false } = useLayoutContext()\n\t\treturn (\n\t\t\t!hideLayout && (\n\t\t\t\t<div className={cx(\"flex h-full grow\", className)} ref={ref} {...rest}>\n\t\t\t\t\t{children}\n\t\t\t\t</div>\n\t\t\t)\n\t\t)\n\t}),\n)\n","import { memo, PropsWithChildren, useMemo, useState } from \"react\"\n\nimport { LayoutContext } from \"./context\"\n\nexport interface RootProps extends PropsWithChildren {\n\t/** TODO: DOCUMENT THIS HEAVILY\n\t * @default false */\n\tsmall?: boolean\n\t/** controls if all Layout Components should be hidden\n\t * @default false */\n\thideLayout?: boolean\n}\n\n/** */\nexport const Root = memo((props: RootProps) => {\n\tconst { children, small = false, hideLayout = false } = props\n\tconst [showLeftSlideOut, setShowLeftSlideOut] = useState<boolean>(false)\n\tconst [showRightSlideOut, setShowRightSlideOut] = useState<boolean>(false)\n\n\tconst contextValue = useMemo(\n\t\t() => ({\n\t\t\tsmall,\n\t\t\thideLayout,\n\t\t\tshowLeftSlideOut,\n\t\t\tsetShowLeftSlideOut,\n\t\t\tshowRightSlideOut,\n\t\t\tsetShowRightSlideOut,\n\t\t}),\n\t\t[hideLayout, showLeftSlideOut, showRightSlideOut, small],\n\t)\n\n\treturn <LayoutContext.Provider value={contextValue}>{children}</LayoutContext.Provider>\n})\nRoot.displayName = \"Layout.Root\"\n","/**\n * MIT License\n * Copyright (c) 2022 WorkOS\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n **/\nimport { useEffect, useMemo, useRef } from \"react\"\nimport ReactDOM from \"react-dom\"\n\ntype PointerDownOutsideEvent = CustomEvent<{ originalEvent: PointerEvent }>\n\n// THE CODE IN THIS FILE WAS COPIED FROM @radix-ui/react-dissmissable-layer NPM REPO.\n// https://github.com/radix-ui/primitives/tree/main/packages/react/dismissable-layer\n\n/**\n * Listens for `pointerdown` outside a React subtree. We use `pointerdown` rather than `pointerup`\n * to mimic layer-dismissing behavior present in OS.\n * Returns props to pass to the node we want to check for outside events.\n */\nexport function usePointerDownOutside(\n\tonPointerDownOutside?: (event: PointerDownOutsideEvent) => void,\n\townerElement: HTMLElement | undefined = globalThis?.document.body,\n) {\n\tconst handlePointerDownOutside = useCallbackRef(onPointerDownOutside) as EventListener\n\tconst isPointerInsideReactTreeRef = useRef<boolean>(false)\n\tconst handleClickRef = useRef(() => {})\n\n\tuseEffect(() => {\n\t\tconst handlePointerDown = (event: PointerEvent) => {\n\t\t\tif (event.target && !isPointerInsideReactTreeRef.current) {\n\t\t\t\tconst eventDetail = { originalEvent: event }\n\n\t\t\t\tconst handleAndDispatchPointerDownOutsideEvent = () => {\n\t\t\t\t\thandleAndDispatchCustomEvent(\"pointerDownOutside\", handlePointerDownOutside, eventDetail, {\n\t\t\t\t\t\tdiscrete: true,\n\t\t\t\t\t})\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * On touch devices, we need to wait for a click event because browsers implement\n\t\t\t\t * a ~350ms delay between the time the user stops touching the display and when the\n\t\t\t\t * browser executres events. We need to ensure we don't reactivate pointer-events within\n\t\t\t\t * this timeframe otherwise the browser may execute events that should have been prevented.\n\t\t\t\t *\n\t\t\t\t * Additionally, this also lets us deal automatically with cancellations when a click event\n\t\t\t\t * isn't raised because the page was considered scrolled/drag-scrolled, long-pressed, etc.\n\t\t\t\t *\n\t\t\t\t * This is why we also continuously remove the previous listener, because we cannot be\n\t\t\t\t * certain that it was raised, and therefore cleaned-up.\n\t\t\t\t */\n\t\t\t\tif (event.pointerType === \"touch\") {\n\t\t\t\t\townerElement.removeEventListener(\"click\", handleClickRef.current)\n\t\t\t\t\thandleClickRef.current = handleAndDispatchPointerDownOutsideEvent\n\t\t\t\t\townerElement.addEventListener(\"click\", handleClickRef.current, { once: true })\n\t\t\t\t} else {\n\t\t\t\t\thandleAndDispatchPointerDownOutsideEvent()\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// We need to remove the event listener in case the outside click has been canceled.\n\t\t\t\t// See: https://github.com/radix-ui/primitives/issues/2171\n\t\t\t\townerElement.removeEventListener(\"click\", handleClickRef.current)\n\t\t\t}\n\t\t\tisPointerInsideReactTreeRef.current = false\n\t\t}\n\t\t/**\n\t\t * if this hook executes in a component that mounts via a `pointerdown` event, the event\n\t\t * would bubble up to the document and trigger a `pointerDownOutside` event. We avoid\n\t\t * this by delaying the event listener registration on the document.\n\t\t * This is not React specific, but rather how the DOM works, ie:\n\t\t * ```\n\t\t * button.addEventListener('pointerdown', () => {\n\t\t * console.log('I will log');\n\t\t * document.addEventListener('pointerdown', () => {\n\t\t * console.log('I will also log');\n\t\t * })\n\t\t * });\n\t\t */\n\t\tconst timerId = window.setTimeout(() => {\n\t\t\townerElement.addEventListener(\"pointerdown\", handlePointerDown)\n\t\t}, 0)\n\t\treturn () => {\n\t\t\twindow.clearTimeout(timerId)\n\t\t\townerElement.removeEventListener(\"pointerdown\", handlePointerDown)\n\t\t\townerElement.removeEventListener(\"click\", handleClickRef.current)\n\t\t}\n\t}, [ownerElement, handlePointerDownOutside])\n\n\treturn {\n\t\t// ensures we check React component tree (not just DOM tree)\n\t\tonPointerDownCapture: () => (isPointerInsideReactTreeRef.current = true),\n\t}\n}\n\nfunction dispatchDiscreteCustomEvent<E extends CustomEvent>(target: E[\"target\"], event: E) {\n\tif (target) ReactDOM.flushSync(() => target.dispatchEvent(event))\n}\nfunction handleAndDispatchCustomEvent<E extends CustomEvent, OriginalEvent extends Event>(\n\tname: string,\n\thandler: ((event: E) => void) | undefined,\n\tdetail: { originalEvent: OriginalEvent } & (E extends CustomEvent<infer D> ? D : never),\n\t{ discrete }: { discrete: boolean },\n) {\n\tconst target = detail.originalEvent.target\n\tconst event = new CustomEvent(name, { bubbles: false, cancelable: true, detail })\n\tif (handler) target.addEventListener(name, handler as EventListener, { once: true })\n\n\tif (discrete) {\n\t\tdispatchDiscreteCustomEvent(target, event)\n\t} else {\n\t\ttarget.dispatchEvent(event)\n\t}\n}\n\n/** custom hook used for creating a ref to a callback */\nexport function useCallbackRef<\n\tT extends (\n\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t...args: any[]\n\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t) => any,\n>(callback: T | undefined): T {\n\tconst callbackRef = useRef(callback)\n\n\tuseEffect(() => {\n\t\tcallbackRef.current = callback\n\t})\n\n\treturn useMemo(() => ((...args) => callbackRef.current?.(...args)) as T, [])\n}\n","import { cx } from \"class-variance-authority\"\nimport {\n\tCSSProperties,\n\tforwardRef,\n\tmemo,\n\tMouseEventHandler,\n\tPropsWithChildren,\n\tReactNode,\n\tuseCallback,\n\tuseEffect,\n\tuseLayoutEffect,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from \"react\"\nimport { CSSTransition } from \"react-transition-group\"\n\nimport { PropsWithClassNameAndStyle } from \"../typings\"\nimport { mergeRefs } from \"../utils\"\nimport { usePointerDownOutside } from \"./utils\"\n\n// TODO: Move this component to the Layout API directory and no longer expose it as an export\n\nexport interface SlideOutProps extends PropsWithChildren, PropsWithClassNameAndStyle {\n\t/** The controlled open state of the SlideOut */\n\topen: boolean\n\t/** specifies if the SlideOut is in modal mode or not.\n\t * If in modal mode, onDismiss prop should be passed\n\t * to the SlideOut component as well.\n\t * @default false */\n\tmodal?: boolean\n\t/** hides the SlideOut and its overlay but doesn't change the open state of the SlideOut. Should be used if\n\t * the SlideOut needs to be hidden for some reason but not triggering a close\n\t * @default false\n\t * */\n\thide?: boolean\n\t/** The side the SlideOut should position on and \"slide-in\" from */\n\tside: \"left\" | \"right\"\n\t/** controls if the SlideOut can be resized by the user\n\t * @default true\n\t * */\n\tresizeable?: boolean\n\t/** controls the positioning of the SlideOut.\n\t * When absolute, the SlideOut will overlay other\n\t * content within its parent container.\n\t * When relative, the SlideOut exists with and pushes other content within\n\t * its parent container.\n\t * @default \"relative\"\n\t * */\n\tposition?: \"relative\" | \"absolute\"\n\t/** sets the initialWidth of the SlideOut, can be expressed in any valid CSS size unit */\n\tinitialWidth: number | string\n\t/** sets the minimum width of the SlideOut can be expressed in any valid CSS size unit */\n\tminWidth?: number | string\n\t/** sets the maximum width of the SlideOut can be expressed in any valid CSS size unit */\n\tmaxWidth?: number | string\n\t/** callback fired when the SlideOut should be dismissed (closed) when in modal mode. The type of event resulting in\n\t * the SlideOut dismissal is passed with the callback. */\n\tonDismiss?: () => void\n\t/** callback fired when the SlideOut has finished sliding out (closing) */\n\tonClosed?: () => void\n\t/** callback fired when the SlideOut starts sliding in (opening) */\n\tonOpening?: () => void\n\t/** overlay to be rendered when the SlideOut is open*/\n\toverlayComponent?: ReactNode\n\t/** content to be rendered within the SlideOut */\n\tcontent: ReactNode | null\n}\n\nconst TIMEOUT_DURATION = 200\n\n/** The SlideOut component is a UI element that allows you to create a slide-in/slide-out effect for content within\n * your application. It provides a smooth transition animation for revealing and hiding content. */\nexport const SlideOut = memo(\n\tforwardRef<HTMLDivElement, SlideOutProps>((props, ref) => {\n\t\tconst {\n\t\t\tclassName,\n\t\t\tstyle,\n\t\t\tchildren,\n\t\t\topen,\n\t\t\thide = false,\n\t\t\tmodal = false,\n\t\t\toverlayComponent,\n\t\t\tresizeable = true,\n\t\t\tside,\n\t\t\tposition = \"relative\",\n\t\t\tinitialWidth,\n\t\t\tminWidth,\n\t\t\tmaxWidth,\n\t\t\tonDismiss,\n\t\t\tonOpening,\n\t\t\tonClosed,\n\t\t\tcontent,\n\t\t} = props\n\t\tconst isLeft = side === \"left\"\n\t\tconst [parentContainer, setParentContainer] = useState<HTMLElement>(document.body)\n\t\tconst childrenContainerRef = useRef<HTMLDivElement>(null)\n\t\tconst localRef = useRef<HTMLDivElement>(null)\n\t\tconst nodeRef = useRef<HTMLDivElement>(null)\n\t\tconst mergedRefs = mergeRefs([ref, localRef, nodeRef])\n\t\tconst [isResizing, setIsResizing] = useState(false)\n\t\tconst [computedWidth, setComputedWidth] = useState<number | null>(null)\n\t\tconst prevClientX = useRef<number | null>(null)\n\n\t\tconst handleDismiss = useCallback(() => {\n\t\t\tif (modal && onDismiss) {\n\t\t\t\tonDismiss()\n\t\t\t}\n\t\t}, [modal, onDismiss])\n\n\t\tconst handleAssignParentContainer = useCallback((element: HTMLDivElement | null) => {\n\t\t\tif (element) {\n\t\t\t\tsetParentContainer(element)\n\t\t\t}\n\t\t}, [])\n\n\t\t// TODO: determine if this set up for disabling and re-enabling pointer events on sibling content makes sense\n\t\tuseEffect(() => {\n\t\t\tif (!childrenContainerRef.current) return\n\t\t\tconst originalParentPointerEvents = childrenContainerRef.current.style.pointerEvents\n\n\t\t\t// In modal mode, all pointerEvents should be disabled for all other content within the parent container\n\t\t\t// besides the SlideOut content itself\n\t\t\tif (open && modal) {\n\t\t\t\tchildrenContainerRef.current.style.pointerEvents = \"none\"\n\t\t\t}\n\t\t\treturn () => {\n\t\t\t\tif (childrenContainerRef.current) {\n\t\t\t\t\t// this warning is invalid because the ref (childrenContainerRef) is immutable\n\t\t\t\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t\t\t\tchildrenContainerRef.current.style.pointerEvents = originalParentPointerEvents\n\t\t\t\t}\n\t\t\t}\n\t\t}, [modal, open, parentContainer.style])\n\n\t\tconst { onPointerDownCapture: handlePointerDownCapture } = usePointerDownOutside(handleDismiss, parentContainer)\n\n\t\t/** Selecting what style set to apply for SlideOut transition based on if its left or right */\n\t\tconst CSSTransitionClassNames = useMemo(\n\t\t\t() => ({\n\t\t\t\tenter: isLeft ? \"-ml-(--slide-out-width)\" : \"-mr-(--slide-out-width)\",\n\t\t\t\tenterActive: isLeft\n\t\t\t\t\t? \"ease-linear duration-200 transition-[margin-left] ml-0\"\n\t\t\t\t\t: \"ease-linear duration-200 transition-[margin-right] mr-0\",\n\t\t\t\tenterDone: isLeft ? \"ml-0\" : \"mr-0\",\n\t\t\t\texitActive: isLeft\n\t\t\t\t\t? \"ease-linear duration-200 transition-[margin-left] -ml-(--slide-out-width)\"\n\t\t\t\t\t: \"ease-linear duration-200 transition-[margin-right] -mr-(--slide-out-width)\",\n\t\t\t\texitDone: isLeft ? \"-ml-(--slide-out-width)\" : \"-mr-(--slide-out-width)\",\n\t\t\t}),\n\t\t\t[isLeft],\n\t\t)\n\n\t\tconst handleMouseDown: MouseEventHandler = useCallback((e) => {\n\t\t\tconst { clientX } = e\n\n\t\t\tprevClientX.current = clientX\n\n\t\t\tsetIsResizing(true)\n\t\t}, [])\n\n\t\tconst handleMouseMove = useCallback(\n\t\t\t(e: MouseEvent) => {\n\t\t\t\tif (!isResizing) return\n\n\t\t\t\tconst { clientX } = e\n\n\t\t\t\tconst deltaX = (clientX - prevClientX.current!) * (isLeft ? 1 : -1)\n\n\t\t\t\tprevClientX.current = clientX\n\n\t\t\t\tsetComputedWidth((prevWidth) => prevWidth! + deltaX)\n\t\t\t},\n\t\t\t[isLeft, isResizing],\n\t\t)\n\n\t\tconst handleMouseUp = useCallback(() => {\n\t\t\tif (!isResizing) return\n\t\t\tprevClientX.current = null\n\t\t\tsetIsResizing(false)\n\t\t}, [isResizing])\n\n\t\tuseEffect(() => {\n\t\t\twindow.addEventListener(\"mousemove\", handleMouseMove)\n\t\t\twindow.addEventListener(\"mouseup\", handleMouseUp)\n\n\t\t\treturn () => {\n\t\t\t\twindow.removeEventListener(\"mousemove\", handleMouseMove)\n\t\t\t\twindow.removeEventListener(\"mouseup\", handleMouseUp)\n\t\t\t}\n\t\t}, [handleMouseMove, handleMouseUp])\n\n\t\tuseLayoutEffect(() => {\n\t\t\tif (!open) return\n\t\t\tsetComputedWidth(localRef.current!.offsetWidth)\n\t\t}, [open])\n\n\t\tconst resizableStyle = useMemo(\n\t\t\t() =>\n\t\t\t\t({\n\t\t\t\t\t...style,\n\t\t\t\t\twidth: computedWidth ?? initialWidth,\n\t\t\t\t\tmaxWidth: maxWidth,\n\t\t\t\t\tminWidth: minWidth,\n\t\t\t\t\tposition: position,\n\t\t\t\t\t\"--slide-out-width\": `${computedWidth}${typeof computedWidth === \"number\" ? \"px\" : \"\"}`,\n\t\t\t\t}) as CSSProperties,\n\t\t\t[computedWidth, initialWidth, maxWidth, minWidth, position, style],\n\t\t)\n\n\t\tconst resizableEnable = useMemo(\n\t\t\t() => ({ left: resizeable && !isLeft, right: resizeable && isLeft }),\n\t\t\t[isLeft, resizeable],\n\t\t)\n\n\t\tconst SlideOut = useMemo(\n\t\t\t() => (\n\t\t\t\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\t\t\t\t// @ts-ignore\n\t\t\t\t<CSSTransition\n\t\t\t\t\tclassNames={CSSTransitionClassNames}\n\t\t\t\t\tin={open}\n\t\t\t\t\ttimeout={TIMEOUT_DURATION}\n\t\t\t\t\tunmountOnExit\n\t\t\t\t\tmountOnEnter\n\t\t\t\t\tonEntering={onOpening}\n\t\t\t\t\tonExited={onClosed}\n\t\t\t\t\tnodeRef={nodeRef}\n\t\t\t\t>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={cx(\n\t\t\t\t\t\t\t\"top-0\",\n\t\t\t\t\t\t\t\"bottom-0\",\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\"left-0\": isLeft,\n\t\t\t\t\t\t\t\t\"right-0\": !isLeft,\n\t\t\t\t\t\t\t\tabsolute: position === \"absolute\",\n\t\t\t\t\t\t\t\trelative: position === \"relative\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tref={mergedRefs}\n\t\t\t\t\t\tonPointerDownCapture={handlePointerDownCapture}\n\t\t\t\t\t\tdata-side={side}\n\t\t\t\t\t\tstyle={resizableStyle}\n\t\t\t\t\t>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName={cx(\"absolute top-0 bottom-0 w-[3px]\", {\n\t\t\t\t\t\t\t\t\"right-0\": isLeft,\n\t\t\t\t\t\t\t\t\"left-0\": !isLeft,\n\t\t\t\t\t\t\t\t\"pointer-events-none\": !resizableEnable,\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\tonMouseDown={handleMouseDown}\n\t\t\t\t\t\t\tdata-resizing={isResizing ? \"\" : undefined}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{content}\n\t\t\t\t\t</div>\n\t\t\t\t</CSSTransition>\n\t\t\t),\n\t\t\t[\n\t\t\t\tCSSTransitionClassNames,\n\t\t\t\topen,\n\t\t\t\tonOpening,\n\t\t\t\tonClosed,\n\t\t\t\tclassName,\n\t\t\t\tisLeft,\n\t\t\t\tposition,\n\t\t\t\tmergedRefs,\n\t\t\t\thandlePointerDownCapture,\n\t\t\t\tside,\n\t\t\t\tresizableStyle,\n\t\t\t\thandleMouseDown,\n\t\t\t\tisResizing,\n\t\t\t\tresizableEnable,\n\t\t\t\tcontent,\n\t\t\t],\n\t\t)\n\n\t\treturn (\n\t\t\t<div\n\t\t\t\tclassName=\"relative flex h-full max-h-full w-full max-w-full overflow-hidden\"\n\t\t\t\tref={handleAssignParentContainer}\n\t\t\t>\n\t\t\t\t{side === \"left\" && !hide && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{open && overlayComponent} {content && SlideOut}\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t\t<div className=\"flex h-full max-w-full grow overflow-hidden\" ref={childrenContainerRef}>\n\t\t\t\t\t{children}\n\t\t\t\t</div>\n\t\t\t\t{side === \"right\" && !hide && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{open && overlayComponent} {content && SlideOut}\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t)\n\t}),\n)\n","import { cx } from \"class-variance-authority\"\nimport { Dispatch, forwardRef, memo, SetStateAction, useCallback, useEffect, useMemo } from \"react\"\n\nimport { SlideOut, SlideOutProps } from \"../SlideOut\"\nimport { useLayoutContext } from \"./context\"\n\nconst DEFAULT_INITIAL_WIDTH = \"30%\"\n\ninterface SlideOutImplProps extends Omit<SlideOutProps, \"open\" | \"initialWidth\"> {\n\t/** controls if the SlideOut is initially open once mounted when NOT in smallMode.\n\t * NOTE: changing the value of this will cause the SlideOut to open/close after mounting NOT in smallMode depending on\n\t * its passed in value.\n\t * @default false */\n\tdefaultOpen?: {\n\t\tsmall?: boolean\n\t\tlarge?: boolean\n\t}\n\t/** optional prop to control the open state of the SlideOut */\n\topen?: SlideOutProps[\"open\"]\n\t/** optional prop to control the initialWidth of the SlideOut\n\t * @default \"30%\" */\n\tinitialWidth?: SlideOutProps[\"initialWidth\"]\n}\n\nconst SlideOutImpl = memo(\n\tforwardRef<\n\t\tHTMLDivElement,\n\t\tSlideOutImplProps & {\n\t\t\t// seperated these here since don't want them to be actual attributes of SlideOutProps\n\t\t\tshowSlideOut: boolean\n\t\t\tsetShowSlideOut: Dispatch<SetStateAction<boolean>>\n\t\t}\n\t>((props, ref) => {\n\t\tconst { small, hideLayout } = useLayoutContext()\n\t\tconst { className, showSlideOut, setShowSlideOut, defaultOpen, side, ...rest } = props\n\n\t\tuseEffect(() => {\n\t\t\t// check if defaultOpenSmallMode specified\n\t\t\tif (small && defaultOpen?.small !== undefined) {\n\t\t\t\tsetShowSlideOut(defaultOpen?.small)\n\t\t\t} else if (!small && defaultOpen?.large !== undefined) {\n\t\t\t\tsetShowSlideOut(defaultOpen?.large)\n\t\t\t}\n\t\t}, [defaultOpen, setShowSlideOut, small])\n\n\t\t/** Callback for when SlideOut should be dismissed, only gets called when SlideOuts are open */\n\t\tconst handleDismiss = useCallback(() => {\n\t\t\tsetShowSlideOut(false)\n\t\t}, [setShowSlideOut])\n\n\t\t// Merging props controlled and uncontrolled props\n\t\tconst mergedProps = useMemo(\n\t\t\t() => ({\n\t\t\t\t// controlled props\n\t\t\t\t...{\n\t\t\t\t\topen: showSlideOut,\n\t\t\t\t\tinitialWidth: DEFAULT_INITIAL_WIDTH,\n\t\t\t\t\tmodal: small,\n\t\t\t\t\tonDismiss: handleDismiss,\n\t\t\t\t\tposition: (small ? \"absolute\" : \"relative\") as \"relative\" | \"absolute\",\n\t\t\t\t},\n\t\t\t\t// uncontrolled props\n\t\t\t\t...rest,\n\t\t\t}),\n\t\t\t[handleDismiss, rest, showSlideOut, small],\n\t\t)\n\n\t\treturn (\n\t\t\t!hideLayout && (\n\t\t\t\t<SlideOut\n\t\t\t\t\tclassName={cx(`overmap-layout-slideOut-${side}`, className)}\n\t\t\t\t\tside={side}\n\t\t\t\t\tref={ref}\n\t\t\t\t\t{...mergedProps}\n\t\t\t\t/>\n\t\t\t)\n\t\t)\n\t}),\n)\n\n/** Type used for both Layout.LeftSlideOut and Layout.RightSlideOut */\nexport interface LayoutSlideOutProps extends Omit<SlideOutImplProps, \"side\"> {}\n\n/** TODO: Document */\nexport const LeftSlideOut = memo(\n\tforwardRef<HTMLDivElement, LayoutSlideOutProps>((props, ref) => {\n\t\tconst { showLeftSlideOut, setShowLeftSlideOut } = useLayoutContext()\n\n\t\treturn (\n\t\t\t<SlideOutImpl\n\t\t\t\tside=\"left\"\n\t\t\t\tshowSlideOut={showLeftSlideOut}\n\t\t\t\tsetShowSlideOut={setShowLeftSlideOut}\n\t\t\t\tref={ref}\n\t\t\t\t{...props}\n\t\t\t/>\n\t\t)\n\t}),\n)\n\n/** TODO: Document */\nexport const RightSlideOut = memo(\n\tforwardRef<HTMLDivElement, LayoutSlideOutProps>((props, ref) => {\n\t\tconst { showRightSlideOut, setShowRightSlideOut } = useLayoutContext()\n\n\t\treturn (\n\t\t\t<SlideOutImpl\n\t\t\t\tside=\"right\"\n\t\t\t\tshowSlideOut={showRightSlideOut}\n\t\t\t\tsetShowSlideOut={setShowRightSlideOut}\n\t\t\t\tref={ref}\n\t\t\t\t{...props}\n\t\t\t/>\n\t\t)\n\t}),\n)\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, memo, PropsWithoutRef, useMemo } from \"react\"\n\nimport { SlideOutProps } from \"../SlideOut\"\nimport { useLayoutContext } from \"./context\"\n\nexport interface LayoutOverlayProps extends PropsWithoutRef<ComponentProps<\"div\">> {\n\tactive?: boolean\n\tside: SlideOutProps[\"side\"]\n\t// TODO: Might want to rename this once standardized\n\tsmallModeOnly?: boolean\n}\nexport const SlideOutOverlay = memo(\n\tforwardRef<HTMLDivElement, LayoutOverlayProps>((props, ref) => {\n\t\tconst { className, active, side, smallModeOnly = false, ...rest } = props\n\t\tconst { small, hideLayout, showLeftSlideOut, showRightSlideOut } = useLayoutContext()\n\n\t\tconst showOverlay = useMemo(() => {\n\t\t\t// If being controlled, return controlled state\n\t\t\tif (active !== undefined) return active\n\n\t\t\t// If layout current being hidden, set to false\n\t\t\tif (hideLayout) return false\n\n\t\t\t// If smallModeOnly but not in smallMode, set to false\n\t\t\tif (smallModeOnly && !small) return false\n\n\t\t\t// Otherwise return based on the open state\n\t\t\treturn side === \"left\" ? showLeftSlideOut : showRightSlideOut\n\t\t}, [active, hideLayout, showLeftSlideOut, showRightSlideOut, side, small, smallModeOnly])\n\n\t\treturn (\n\t\t\tshowOverlay && (\n\t\t\t\t<div className={cx(\"overmap-layout-overlay\", \"fixed inset-0\", className)} ref={ref} {...rest} />\n\t\t\t)\n\t\t)\n\t}),\n)\n","export const MENU_OVERFLOW_PADDING = 20\n\nexport const MENU_CONTENT_PADDING = 8\n\nexport const MENU_MINIMUM_MAX_HEIGHT = 250\n","import type { CheckedState } from \"../CheckedIndicator\"\nimport { MENU_CONTENT_PADDING } from \"./constants\"\nimport type { MenuAlignment, MenuSide } from \"./typings\"\n\n// This function computes offsets specifically for submenus so that they are flush with the trigger item and\n// parent content\nexport const computeOffsets = (side: MenuSide, alignment: MenuAlignment) => {\n\tswitch (side) {\n\t\tcase \"right\":\n\t\t\tif (alignment === \"start\") {\n\t\t\t\treturn { mainAxis: MENU_CONTENT_PADDING + 1, crossAxis: -MENU_CONTENT_PADDING }\n\t\t\t} else if (alignment === \"end\") {\n\t\t\t\treturn { mainAxis: MENU_CONTENT_PADDING + 1, crossAxis: MENU_CONTENT_PADDING }\n\t\t\t}\n\t\t\tbreak\n\t\tcase \"left\":\n\t\t\tif (alignment === \"start\") {\n\t\t\t\treturn { mainAxis: MENU_CONTENT_PADDING + 1, crossAxis: -MENU_CONTENT_PADDING }\n\t\t\t} else if (alignment === \"end\") {\n\t\t\t\treturn { mainAxis: MENU_CONTENT_PADDING + 1, crossAxis: MENU_CONTENT_PADDING }\n\t\t\t}\n\t\t\tbreak\n\t}\n\treturn { mainAxis: MENU_CONTENT_PADDING + 1, crossAxis: 0 }\n}\n\nexport function getSelectedState(selected: boolean) {\n\treturn selected ? \"selected\" : \"unselected\"\n}\n\nexport function getCheckedState(checked: CheckedState) {\n\treturn checked === true ? \"checked\" : checked === false ? \"unchecked\" : \"indeterminate\"\n}\n\nexport function getActiveState(active: boolean) {\n\treturn active ? \"active\" : \"inactive\"\n}\n\nexport function getBooleanState(value: boolean) {\n\treturn value ? \"true\" : \"false\"\n}\n\nexport function getOpenState(open: boolean) {\n\treturn open ? \"open\" : \"closed\"\n}\n","import { Slot } from \"@radix-ui/react-slot\"\nimport { forwardRef, memo, PropsWithChildren, useCallback } from \"react\"\n\nimport { getOpenState } from \"../Menu/utils\"\nimport { SlideOutProps } from \"../SlideOut\"\nimport { useLayoutContext } from \"./context\"\n\nexport interface SlideOutTriggerProps extends PropsWithChildren {\n\tside: SlideOutProps[\"side\"]\n\ttype?: \"toggle\" | \"open\" | \"close\"\n}\n\nfunction nextStateBasedOnType(prevState: boolean, type: \"toggle\" | \"open\" | \"close\") {\n\tswitch (type) {\n\t\tcase \"toggle\":\n\t\t\treturn !prevState\n\t\tcase \"open\":\n\t\t\treturn true\n\t\tcase \"close\":\n\t\t\treturn false\n\t}\n}\nexport const SlideOutTrigger = memo(\n\tforwardRef<HTMLButtonElement, SlideOutTriggerProps>((props, ref) => {\n\t\tconst { side, type = \"toggle\", children } = props\n\t\tconst { showLeftSlideOut, showRightSlideOut, setShowLeftSlideOut, setShowRightSlideOut } = useLayoutContext()\n\n\t\tconst open = side === \"left\" ? showLeftSlideOut : showRightSlideOut\n\n\t\tconst handleClick = useCallback(() => {\n\t\t\tconst setShowSlideOut = side === \"left\" ? setShowLeftSlideOut : setShowRightSlideOut\n\t\t\tsetShowSlideOut((prevState) => nextStateBasedOnType(prevState, type))\n\t\t}, [setShowLeftSlideOut, setShowRightSlideOut, side, type])\n\n\t\treturn (\n\t\t\t<Slot data-state={getOpenState(open)} ref={ref} onClick={handleClick}>\n\t\t\t\t{children}\n\t\t\t</Slot>\n\t\t)\n\t}),\n)\n","import { Container } from \"./Container\"\nimport { Root } from \"./Root\"\nimport { LeftSlideOut, RightSlideOut } from \"./SlideOut\"\nimport { SlideOutOverlay } from \"./SlideOutOverlay\"\nimport { SlideOutTrigger } from \"./SlideOutTrigger\"\n\nexport const Layout = {\n\tRoot,\n\tContainer,\n\tSlideOutOverlay,\n\tLeftSlideOut,\n\tRightSlideOut,\n\tSlideOutTrigger,\n}\nexport type * from \"./Container\"\nexport * from \"./context\"\nexport type * from \"./Root\"\nexport type * from \"./SlideOut\"\nexport type * from \"./SlideOutOverlay\"\nexport type * from \"./SlideOutTrigger\"\n","import { cva } from \"class-variance-authority\"\n\nexport const linkCva = cva([\"cursor-pointer\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\tnone: [\"[font-size:inherit]\", \"leading-[inherit]\"],\n\t\t\txs: [\"text-xs\"],\n\t\t\tsm: [\"text-sm\"],\n\t\t\tmd: [\"text-base\"],\n\t\t\tlg: [\"text-lg\"],\n\t\t\txl: [\"text-xl\"],\n\t\t\t\"2xl\": [\"text-2xl\"],\n\t\t\t\"3xl\": [\"text-3xl\"],\n\t\t\t\"4xl\": [\"text-4xl\"],\n\t\t\t\"5xl\": [\"text-5xl\"],\n\t\t\t\"6xl\": [\"text-6xl\"],\n\t\t\t\"7xl\": [\"text-7xl\"],\n\t\t\t\"8xl\": [\"text-8xl\"],\n\t\t\t\"9xl\": [\"text-9xl\"],\n\t\t},\n\t\tweight: {\n\t\t\tlight: [\"font-light\"],\n\t\t\tregular: [\"font-normal\"],\n\t\t\tmedium: [\"font-medium\"],\n\t\t\tbold: [\"font-bold\"],\n\t\t},\n\t\talign: {\n\t\t\tleft: [\"text-left\"],\n\t\t\tcenter: [\"text-center\"],\n\t\t\tright: [\"text-right\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"none\",\n\t\tweight: \"regular\",\n\t\talign: \"left\",\n\t},\n})\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nimport { useProvider } from \"../Provider\"\nimport { linkCva } from \"./cva\"\nimport type { LinkVariantProps } from \"./typings\"\n\nexport interface LinkProps extends PropsWithoutRef<ComponentProps<\"a\">>, LinkVariantProps {}\n\nexport const Link = forwardRef<HTMLAnchorElement, LinkProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tsize,\n\t\tweight = \"regular\",\n\t\talign = \"left\",\n\t\thighContrast = false,\n\t\taccentColor = providerContext.accentColor,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<a\n\t\t\tref={ref}\n\t\t\tclassName={cx(\n\t\t\t\tlinkCva({ size, weight, align }),\n\t\t\t\t{\n\t\t\t\t\t\"text-(--accent-a11)\": !highContrast,\n\t\t\t\t\t\"text-(--accent-a12)\": highContrast,\n\t\t\t\t},\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nLink.displayName = \"Link\"\n","import { createContext } from \"react\"\n\nimport type { CheckedState } from \"./typings\"\n\nexport const CheckedIndicatorContext = createContext({} as CheckedState)\n","import { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, FC, PropsWithChildren, useContext } from \"react\"\n\nimport { getCheckedState } from \"../CommandMenu/utils\"\nimport { CheckedIndicatorContext } from \"./context\"\n\nexport interface CheckedIndicatorProps extends Omit<ComponentPropsWithRef<\"span\">, \"children\"> {\n\tchildren: PropsWithChildren[\"children\"] | ((indeterminate: boolean) => PropsWithChildren[\"children\"])\n}\n\nexport const CheckedIndicator: FC<CheckedIndicatorProps> = (props) => {\n\tconst { children, ref, className, ...rest } = props\n\n\tconst checked = useContext(CheckedIndicatorContext)\n\n\tconst computedChildren = typeof children === \"function\" ? children(checked === \"indeterminate\") : children\n\n\treturn (\n\t\t<span\n\t\t\tref={ref}\n\t\t\tclassName={cx(\n\t\t\t\t{\n\t\t\t\t\tinvisible: checked === false,\n\t\t\t\t},\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\tdata-state={getCheckedState(checked)}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{computedChildren}\n\t\t</span>\n\t)\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const menuItem = cva(\n\t[\n\t\t\"select-none\",\n\t\t\"relative\",\n\t\t\"flex\",\n\t\t\"items-center\",\n\t\t\"rounded\",\n\t\t\"outline-none\",\n\t\t\"data-[disabled=true]:text-(--base-a8)\",\n\t\t\"shrink-0\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"h-6\", \"gap-1.5\", \"px-3\"],\n\t\t\t\tsm: [\"h-7\", \"gap-1.75\", \"px-3.5\"],\n\t\t\t\tmd: [\"h-8\", \"gap-2\", \"px-4\"],\n\t\t\t\tlg: [\"h-9\", \"gap-2.25\", \"px-4.5\"],\n\t\t\t\txl: [\"h-10\", \"gap-2.5\", \"px-5\"],\n\t\t\t},\n\t\t\tvariant: {\n\t\t\t\tsolid: [\n\t\t\t\t\t\"text-(--base-12)\",\n\t\t\t\t\t\"data-highlighted:not-data-[disabled=true]:text-(--accent-contrast)\",\n\t\t\t\t\t\"data-highlighted:not-data-[disabled=true]:bg-(--accent-a9)\",\n\t\t\t\t\t\"data-highlighted:not-data-[disabled=true]:active:brightness-110\",\n\t\t\t\t],\n\t\t\t\tsoft: [\n\t\t\t\t\t\"text-(--base-12)\",\n\t\t\t\t\t\"data-highlighted:not-data-[disabled=true]:bg-(--accent-a3)\",\n\t\t\t\t\t\"data-highlighted:not-data-[disabled=true]:active:bg-(--accent-a4)\",\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t\tvariant: \"soft\",\n\t\t},\n\t},\n)\n\nexport const menuLabelCva = cva([\"text-(--base-a10)\", \"flex\", \"items-center\", \"select-none\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"h-6\", \"gap-1.5\", \"px-3\", \"text-xs\"],\n\t\t\tsm: [\"h-7\", \"gap-1.75\", \"px-3.5\", \"text-xs\"],\n\t\t\tmd: [\"h-8\", \"gap-2\", \"px-4\", \"text-sm\"],\n\t\t\tlg: [\"h-9\", \"gap-2.25\", \"px-4.5\", \"text-base\"],\n\t\t\txl: [\"h-10\", \"gap-2.5\", \"px-5\", \"text-lg\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n})\n\nexport const menuSeparator = cva([\"h-px\", \"bg-(--base-a6)\", \"w-auto\", \"shrink-0\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"-mx-0.5\", \"my-0.5\"],\n\t\t\tsm: [\"-mx-0.75\", \"my-0.75\"],\n\t\t\tmd: [\"-mx-1\", \"my-1\"],\n\t\t\tlg: [\"-mx-1.25\", \"my-1.25\"],\n\t\t\txl: [\"-mx-1.5\", \"my-1.5\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n})\n\nexport const menuContent = cva(\n\t[\n\t\t\"flex\",\n\t\t\"flex-col\",\n\t\t\"w-max\",\n\t\t\"max-w-xs\",\n\t\t\"outline-none\",\n\t\t\"pointer-events-auto\",\n\t\t\"bg-(--color-background)\",\n\t\t\"dark:bg-(--base-2)\",\n\t\t\"ring-1\",\n\t\t\"ring-(--base-6)\",\n\t\t\"overflow-hidden\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"p-0.5\", \"text-xs\", \"min-w-30\"],\n\t\t\t\tsm: [\"p-0.75\", \"text-sm\", \"min-w-35\"],\n\t\t\t\tmd: [\"p-1\", \"text-md\", \"min-w-40\"],\n\t\t\t\tlg: [\"p-1.25\", \"text-lg\", \"min-w-45\"],\n\t\t\t\txl: [\"p-1.5\", \"text-xl\", \"min-w-50\"],\n\t\t\t},\n\t\t\tradius: {\n\t\t\t\tnone: [\"rounded-none\"],\n\t\t\t\txs: [\"rounded-xs\"],\n\t\t\t\tsm: [\"rounded-sm\"],\n\t\t\t\tmd: [\"rounded-md\"],\n\t\t\t\tlg: [\"rounded-lg\"],\n\t\t\t\txl: [\"rounded-lg\"],\n\t\t\t\tfull: [\"rounded-lg\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n\nexport const menuOverlay = cva([\"overflow-hidden\", \"touch-manipulation\"], {\n\tvariants: {\n\t\tmodal: {\n\t\t\ttrue: [\"pointer-events-auto\"],\n\t\t\tfalse: [\"pointer-events-none\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tmodal: false,\n\t},\n})\n\nexport const inputRoot = cva(\n\t[\n\t\t\"flex\",\n\t\t\"items-stretch\",\n\t\t\"transition-colors\",\n\t\t\"data-[disabled=true]:opacity-50\",\n\t\t\"data-[disabled=true]:pointer-events-none\",\n\t\t\"box-border\",\n\t\t\"bg-transparent\",\n\t\t\"text-(--base-12)\",\n\t\t\"shrink-0\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"h-6\", \"text-xs\", \"px-3\", \"gap-1.5\"],\n\t\t\t\tsm: [\"h-7\", \"text-sm\", \"px-3.5\", \"gap-1.75\"],\n\t\t\t\tmd: [\"h-8\", \"text-base\", \"px-4\", \"gap-2\"],\n\t\t\t\tlg: [\"h-9\", \"text-lg\", \"px-4.5\", \"gap-2.25\"],\n\t\t\t\txl: [\"h-10\", \"text-xl\", \"px-5\", \"gap-2.5\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n","import { MiddlewareData, UseFloatingData, UseInteractionsReturn } from \"@floating-ui/react\"\nimport { createContext, CSSProperties, MutableRefObject, useContext } from \"react\"\n\nimport type { MenuSide, MenuTriggerType } from \"../typings\"\n\ninterface IMenuContext {\n\topen: boolean\n\tsetOpen: (open: boolean) => void\n\n\tside: MenuSide\n\tsetTriggerType: (triggerType: MenuTriggerType) => void\n\tmodal: boolean\n\t// props from hoisting useFloating up\n\tnodeId: string | undefined\n\trefs: UseFloatingData[\"refs\"]\n\tfloatingStyles: CSSProperties\n\tcontext: UseFloatingData[\"context\"]\n\telementsRef: MutableRefObject<HTMLDivElement[]>\n\tactiveIndex: number | null\n\tsetActiveIndex: (index: number | null) => void\n\tgetItemProps: UseInteractionsReturn[\"getItemProps\"]\n\tgetFloatingProps: UseInteractionsReturn[\"getFloatingProps\"]\n\tgetReferenceProps: UseInteractionsReturn[\"getReferenceProps\"]\n\tmiddlewareData: MiddlewareData\n}\n\nexport const MenuContext = createContext<IMenuContext>({} as IMenuContext)\n\nexport const useMenuContext = () => useContext(MenuContext)\n","import {\n\tautoUpdate,\n\tflip,\n\tFloatingTree,\n\thide,\n\toffset as offsetMiddleware,\n\tPlacement,\n\tshift,\n\tsize as sizeMiddleware,\n\tuseClick,\n\tuseDismiss,\n\tuseFloating,\n\tuseFloatingNodeId,\n\tuseInteractions,\n\tuseListNavigation,\n\tuseRole,\n\tVirtualElement,\n} from \"@floating-ui/react\"\nimport { memo, useRef, useState } from \"react\"\n\nimport { useControlledState } from \"../../utils\"\nimport { MENU_MINIMUM_MAX_HEIGHT, MENU_OVERFLOW_PADDING } from \"../constants\"\nimport type { MenuRootProps, MenuTriggerType } from \"../typings\"\nimport { MenuContext } from \"./context\"\n\nconst DEFAULT_OFFSET = 5\n\nexport const MenuRoot = memo<MenuRootProps>((props) => {\n\tconst {\n\t\tchildren,\n\t\tside = \"bottom\",\n\t\talign = \"center\",\n\t\toffset,\n\t\tloop = false,\n\t\tmodal = false,\n\n\t\t// open state related props\n\t\topen: controlledOpen,\n\t\tonOpenChange,\n\t\tdefaultOpen,\n\t} = props\n\n\tconst [open, setOpen] = useControlledState<boolean>(defaultOpen ?? false, controlledOpen, onOpenChange)\n\n\tconst [activeIndex, setActiveIndex] = useState<number | null>(null)\n\n\tconst [triggerType, setTriggerType] = useState<MenuTriggerType | null>(null)\n\n\tconst elementsRef = useRef<HTMLDivElement[]>([])\n\n\tconst nodeId = useFloatingNodeId()\n\n\tconst { refs, floatingStyles, context, middlewareData } = useFloating<VirtualElement>({\n\t\tnodeId: nodeId,\n\t\tstrategy: \"fixed\",\n\t\tplacement: (side + (align !== \"center\" ? \"-\" + align : \"\")) as Placement,\n\t\twhileElementsMounted: autoUpdate,\n\t\topen: open,\n\t\tonOpenChange: setOpen,\n\t\tmiddleware: [\n\t\t\toffsetMiddleware({ mainAxis: offset ?? DEFAULT_OFFSET }),\n\t\t\tsizeMiddleware({\n\t\t\t\tapply({ availableHeight, elements }) {\n\t\t\t\t\telements.floating.style.setProperty(\n\t\t\t\t\t\t\"--overmap-menu-available-height\",\n\t\t\t\t\t\t`${Math.max(availableHeight, MENU_MINIMUM_MAX_HEIGHT)}px`,\n\t\t\t\t\t)\n\t\t\t\t},\n\t\t\t\tpadding: MENU_OVERFLOW_PADDING,\n\t\t\t}),\n\t\t\tflip({ fallbackStrategy: \"initialPlacement\" }),\n\t\t\tshift({ padding: MENU_OVERFLOW_PADDING }),\n\t\t\thide(),\n\t\t],\n\t})\n\n\tconst role = useRole(context, {\n\t\trole: \"menu\",\n\t})\n\n\tconst dismiss = useDismiss(context, {\n\t\tcapture: true,\n\t\tancestorScroll: triggerType === \"context\" || triggerType === \"virtual\",\n\t})\n\n\tconst click = useClick(context, {\n\t\tenabled: triggerType === \"click\",\n\t})\n\n\tconst listNavigation = useListNavigation(context, {\n\t\tlistRef: elementsRef,\n\t\tactiveIndex,\n\t\tonNavigate: setActiveIndex,\n\t\tloop: loop,\n\t})\n\n\tconst { getFloatingProps, getItemProps, getReferenceProps } = useInteractions([\n\t\tdismiss,\n\t\tlistNavigation,\n\t\tclick,\n\t\trole,\n\t])\n\n\treturn (\n\t\t<FloatingTree>\n\t\t\t<MenuContext.Provider\n\t\t\t\tvalue={{\n\t\t\t\t\topen,\n\t\t\t\t\tsetOpen,\n\t\t\t\t\trefs,\n\t\t\t\t\tcontext,\n\t\t\t\t\tfloatingStyles,\n\t\t\t\t\telementsRef,\n\t\t\t\t\tgetFloatingProps,\n\t\t\t\t\tgetItemProps,\n\t\t\t\t\tgetReferenceProps,\n\t\t\t\t\tnodeId,\n\t\t\t\t\tactiveIndex,\n\t\t\t\t\tsetActiveIndex,\n\t\t\t\t\tmiddlewareData,\n\t\t\t\t\tside,\n\t\t\t\t\tmodal,\n\t\t\t\t\tsetTriggerType,\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</MenuContext.Provider>\n\t\t</FloatingTree>\n\t)\n})\nMenuRoot.displayName = \"Root\"\n","import { UseFloatingData, UseInteractionsReturn } from \"@floating-ui/react\"\nimport { createContext, MutableRefObject, useContext } from \"react\"\n\nimport type { ComponentRadius } from \"../../Provider\"\nimport type { MenuSize, MenuVariant } from \"../typings\"\n\ninterface IMenuContentContext {\n\tactiveIndex: number | null\n\tgetItemProps: UseInteractionsReturn[\"getItemProps\"]\n\telementsRef: MutableRefObject<HTMLDivElement[]>\n\tsetActiveIndex: (index: number | null) => void\n\trefs: UseFloatingData[\"refs\"]\n\topen: boolean\n\tsetOpen: (open: boolean) => void\n\n\t// style props\n\taccentColor: string\n\tradius: ComponentRadius\n\tsize: MenuSize\n\tvariant: MenuVariant\n}\n\nexport const MenuContentContext = createContext<IMenuContentContext>({} as IMenuContentContext)\n\nexport const useMenuContentContext = () => useContext(MenuContentContext)\n","import { FloatingFocusManager, FloatingList, FloatingNode, FloatingOverlay, FloatingPortal } from \"@floating-ui/react\"\nimport { cx } from \"class-variance-authority\"\nimport { CSSProperties, memo, MouseEventHandler, useCallback, useMemo } from \"react\"\n\nimport { floating, radiusCva } from \"../../cva\"\nimport { useProvider } from \"../../Provider\"\nimport { stopPropagation } from \"../../utils\"\nimport { menuContent, menuOverlay } from \"../cva\"\nimport { useMenuContext } from \"../root\"\nimport type { MenuContentProps } from \"../typings\"\nimport { getOpenState } from \"../utils\"\nimport { MenuContentContext } from \"./context\"\n\nexport const MenuContent = memo<MenuContentProps>((props) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tref: forwardedRef,\n\t\tclassName,\n\t\tchildren,\n\t\tsize = \"md\",\n\t\tvariant = \"soft\",\n\t\tradius = providerContext.radius,\n\t\taccentColor = \"base\",\n\t\t...rest\n\t} = props\n\tconst {\n\t\trefs,\n\t\tgetFloatingProps,\n\t\tmiddlewareData,\n\t\telementsRef,\n\t\tactiveIndex,\n\t\tsetActiveIndex,\n\t\tgetItemProps,\n\t\topen,\n\t\tsetOpen,\n\t\tnodeId,\n\t\tcontext,\n\t\tfloatingStyles,\n\t\tmodal,\n\t\tside,\n\t} = useMenuContext()\n\n\tconst computedFloatingStyles: CSSProperties = useMemo(() => {\n\t\treturn {\n\t\t\t...floatingStyles,\n\t\t\tvisibility: middlewareData.hide?.referenceHidden ? \"hidden\" : \"visible\",\n\t\t}\n\t}, [floatingStyles, middlewareData.hide?.referenceHidden])\n\n\tconst handleOverlayPointerDown = useCallback<MouseEventHandler<HTMLDivElement>>(\n\t\t(e) => {\n\t\t\tif (modal) stopPropagation(e)\n\t\t},\n\t\t[modal],\n\t)\n\n\treturn (\n\t\t<FloatingNode id={nodeId}>\n\t\t\t{open && (\n\t\t\t\t<FloatingPortal>\n\t\t\t\t\t<FloatingOverlay\n\t\t\t\t\t\tclassName={menuOverlay({ modal })}\n\t\t\t\t\t\tonClick={handleOverlayPointerDown}\n\t\t\t\t\t\tlockScroll\n\t\t\t\t\t\tdata-floating-content=\"\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<FloatingFocusManager context={context}>\n\t\t\t\t\t\t\t<FloatingList elementsRef={elementsRef}>\n\t\t\t\t\t\t\t\t<MenuContentContext.Provider\n\t\t\t\t\t\t\t\t\tvalue={{\n\t\t\t\t\t\t\t\t\t\tgetItemProps,\n\t\t\t\t\t\t\t\t\t\tactiveIndex,\n\t\t\t\t\t\t\t\t\t\telementsRef,\n\t\t\t\t\t\t\t\t\t\topen,\n\t\t\t\t\t\t\t\t\t\tsetOpen,\n\t\t\t\t\t\t\t\t\t\trefs,\n\t\t\t\t\t\t\t\t\t\tsetActiveIndex,\n\t\t\t\t\t\t\t\t\t\tsize,\n\t\t\t\t\t\t\t\t\t\tvariant,\n\t\t\t\t\t\t\t\t\t\taccentColor,\n\t\t\t\t\t\t\t\t\t\tradius,\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tclassName=\"border-box w-max outline-none\"\n\t\t\t\t\t\t\t\t\t\tref={refs.setFloating}\n\t\t\t\t\t\t\t\t\t\ttabIndex={-1}\n\t\t\t\t\t\t\t\t\t\tstyle={computedFloatingStyles}\n\t\t\t\t\t\t\t\t\t\tdata-floating-content=\"\"\n\t\t\t\t\t\t\t\t\t\t{...getFloatingProps()}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<ul\n\t\t\t\t\t\t\t\t\t\t\tclassName={cx(\n\t\t\t\t\t\t\t\t\t\t\t\tmenuContent({ size }),\n\t\t\t\t\t\t\t\t\t\t\t\tfloating({ side, shadow: \"3\" }),\n\t\t\t\t\t\t\t\t\t\t\t\tradiusCva({ radius, maxLarge: true }),\n\t\t\t\t\t\t\t\t\t\t\t\t\"max-h-(--overmap-menu-available-height)\",\n\t\t\t\t\t\t\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\tref={forwardedRef}\n\t\t\t\t\t\t\t\t\t\t\tdata-state={getOpenState(open)}\n\t\t\t\t\t\t\t\t\t\t\tdata-side={side}\n\t\t\t\t\t\t\t\t\t\t\tdata-accent-color={accentColor}\n\t\t\t\t\t\t\t\t\t\t\t{...rest}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</MenuContentContext.Provider>\n\t\t\t\t\t\t\t</FloatingList>\n\t\t\t\t\t\t</FloatingFocusManager>\n\t\t\t\t\t</FloatingOverlay>\n\t\t\t\t</FloatingPortal>\n\t\t\t)}\n\t\t</FloatingNode>\n\t)\n})\nMenuContent.displayName = \"Menu.Content\"\n","import { UseFloatingData, UseInteractionsReturn } from \"@floating-ui/react\"\nimport { createContext, CSSProperties, MutableRefObject, useContext } from \"react\"\n\nimport type { MenuSide } from \"../typings\"\n\ninterface ISubContext {\n\t// we know exactly what type of element the SubTrigger will be, therefore type it as Element\n\topen: boolean\n\tsetOpen: (open: boolean) => void\n\tdisabled: boolean\n\tside: MenuSide\n\tcloseRoot: boolean\n\tmodal: boolean\n\t// props from hoisting useFloating up\n\tnodeId: string | undefined\n\trefs: UseFloatingData[\"refs\"]\n\tfloatingStyles: CSSProperties\n\tcontext: UseFloatingData[\"context\"]\n\telementsRef: MutableRefObject<HTMLDivElement[]>\n\tactiveIndex: number | null\n\tsetActiveIndex: (index: number | null) => void\n\tgetItemProps: UseInteractionsReturn[\"getItemProps\"]\n\tgetFloatingProps: UseInteractionsReturn[\"getFloatingProps\"]\n\tgetReferenceProps: UseInteractionsReturn[\"getReferenceProps\"]\n}\n\nexport const SubContext = createContext<ISubContext>({} as ISubContext)\n\nexport const useSubContext = () => useContext(SubContext)\n","import {\n\tautoUpdate,\n\tflip,\n\thide,\n\toffset,\n\tPlacement,\n\tsafePolygon,\n\tshift,\n\tsize as sizeMiddleware,\n\tuseClick,\n\tuseDismiss,\n\tuseFloating,\n\tuseFloatingNodeId,\n\tuseHover,\n\tuseInteractions,\n\tuseListNavigation,\n} from \"@floating-ui/react\"\nimport { memo, useRef, useState } from \"react\"\n\nimport { useControlledState } from \"../../utils\"\nimport { MENU_MINIMUM_MAX_HEIGHT, MENU_OVERFLOW_PADDING } from \"../constants\"\nimport type { MenuSubProps } from \"../typings\"\nimport { computeOffsets } from \"../utils\"\nimport { SubContext } from \"./context\"\n\nexport const MenuSub = memo<MenuSubProps>((props) => {\n\tconst {\n\t\tchildren,\n\t\tdisabled = false,\n\t\tside = \"right\",\n\t\talign = \"start\",\n\t\tcloseRoot = false,\n\t\tloop = false,\n\t\tmodal = false,\n\t\t// open state related props\n\t\topen: controlledOpen,\n\t\tonOpenChange,\n\t\tdefaultOpen,\n\t} = props\n\n\tconst [open, setOpen] = useControlledState<boolean>(defaultOpen ?? false, controlledOpen, onOpenChange)\n\n\tconst nodeId = useFloatingNodeId()\n\n\tconst { refs, floatingStyles, context } = useFloating({\n\t\tnodeId: nodeId,\n\t\tstrategy: \"fixed\",\n\t\twhileElementsMounted: autoUpdate,\n\t\topen: open,\n\t\tonOpenChange: (open, _event, reason) => {\n\t\t\t// unique bug where reason was undefined causing close on initial hover\n\t\t\tif (reason) setOpen(open)\n\t\t},\n\t\tplacement: (side + (align !== \"center\" ? \"-\" + align : \"\")) as Placement,\n\t\tmiddleware: [\n\t\t\toffset({ ...computeOffsets(side, align) }),\n\t\t\tsizeMiddleware({\n\t\t\t\tpadding: MENU_OVERFLOW_PADDING,\n\t\t\t\tapply({ availableHeight, elements }) {\n\t\t\t\t\telements.floating.style.setProperty(\n\t\t\t\t\t\t\"--overmap-menu-available-height\",\n\t\t\t\t\t\t`${Math.max(availableHeight, MENU_MINIMUM_MAX_HEIGHT)}px`,\n\t\t\t\t\t)\n\t\t\t\t},\n\t\t\t}),\n\t\t\tflip(),\n\t\t\tshift({ padding: MENU_OVERFLOW_PADDING }),\n\t\t\thide(),\n\t\t],\n\t})\n\n\tconst dismiss = useDismiss(context, {\n\t\tbubbles: closeRoot,\n\t\toutsidePress: closeRoot,\n\t})\n\n\tconst hover = useHover(context, {\n\t\trestMs: 50,\n\t\thandleClose: safePolygon({\n\t\t\tblockPointerEvents: true,\n\t\t\trequireIntent: false,\n\t\t}),\n\t\tenabled: !disabled,\n\t})\n\n\tconst click = useClick(context, {\n\t\tenabled: !disabled,\n\t})\n\n\tconst elementsRef = useRef<HTMLDivElement[]>([])\n\n\tconst [activeIndex, setActiveIndex] = useState<number | null>(null)\n\n\tconst listNavigation = useListNavigation(context, {\n\t\tlistRef: elementsRef,\n\t\tnested: true,\n\t\tactiveIndex: activeIndex,\n\t\tonNavigate: setActiveIndex,\n\t\tloop: loop,\n\t\trtl: side === \"left\",\n\t})\n\n\tconst { getFloatingProps, getItemProps, getReferenceProps } = useInteractions([\n\t\tlistNavigation,\n\t\tdismiss,\n\t\thover,\n\t\tclick,\n\t])\n\n\treturn (\n\t\t<SubContext.Provider\n\t\t\tvalue={{\n\t\t\t\topen,\n\t\t\t\tsetOpen,\n\t\t\t\tnodeId,\n\t\t\t\trefs,\n\t\t\t\tfloatingStyles,\n\t\t\t\tcontext,\n\t\t\t\telementsRef,\n\t\t\t\tactiveIndex,\n\t\t\t\tsetActiveIndex,\n\t\t\t\tgetFloatingProps,\n\t\t\t\tgetItemProps,\n\t\t\t\tgetReferenceProps,\n\t\t\t\tdisabled,\n\t\t\t\tside,\n\t\t\t\tcloseRoot,\n\t\t\t\tmodal,\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</SubContext.Provider>\n\t)\n})\nMenuSub.displayName = \"SubMenu\"\n","import { useListItem, useMergeRefs } from \"@floating-ui/react\"\nimport { cx } from \"class-variance-authority\"\nimport { KeyboardEventHandler, memo, MouseEventHandler, useCallback, useMemo } from \"react\"\n\nimport { radiusCva } from \"../../cva\"\nimport { useMenuContentContext } from \"../Content\"\nimport { menuItem } from \"../cva\"\nimport { useMenuContext } from \"../root\"\nimport { useSubContext } from \"../Sub\"\nimport type { MenuItemProps } from \"../typings\"\nimport { getBooleanState } from \"../utils\"\n\nconst TRIGGER_SELECT_KEYS = [\"Enter\", \" \"]\n\nexport const MenuItem = memo<MenuItemProps>((props) => {\n\tconst rootMenuContext = useMenuContext()\n\tconst { getItemProps, activeIndex, setOpen, size, variant, radius } = useMenuContentContext()\n\tconst { closeRoot } = useSubContext()\n\tconst {\n\t\tref: forwardedRef,\n\t\tclassName,\n\t\tchildren,\n\t\tonSelect,\n\t\tonClick,\n\t\tonKeyDown,\n\t\tcloseOnSelect = true,\n\t\tdisabled = false,\n\t\t...rest\n\t} = props\n\n\tconst { ref, index } = useListItem()\n\n\tconst mergeRefs = useMergeRefs([ref, forwardedRef])\n\n\tconst handleClick = useCallback<MouseEventHandler<HTMLLIElement>>(\n\t\t(e) => {\n\t\t\te.stopPropagation()\n\t\t\tif (disabled) return\n\t\t\tonClick?.(e)\n\t\t\tonSelect?.()\n\t\t\tif (closeOnSelect) setOpen(false)\n\t\t\tif (closeRoot) rootMenuContext.setOpen(false)\n\t\t},\n\t\t[closeOnSelect, closeRoot, disabled, rootMenuContext, onClick, onSelect, setOpen],\n\t)\n\n\tconst handleKeyDown = useCallback<KeyboardEventHandler<HTMLLIElement>>(\n\t\t(e) => {\n\t\t\tif (disabled) return\n\t\t\tonKeyDown?.(e)\n\t\t\tif (TRIGGER_SELECT_KEYS.includes(e.key)) {\n\t\t\t\tonSelect?.()\n\t\t\t\tif (closeOnSelect) setOpen(false)\n\t\t\t}\n\t\t},\n\t\t[closeOnSelect, disabled, onKeyDown, onSelect, setOpen],\n\t)\n\n\tconst isActive = useMemo(() => index === activeIndex, [activeIndex, index])\n\n\tconst computedChildren = useMemo(() => {\n\t\treturn typeof children === \"function\" ? children({ active: isActive, selected: false }) : children\n\t}, [children, isActive])\n\n\treturn (\n\t\t<li\n\t\t\tclassName={cx(menuItem({ size, variant }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\tref={mergeRefs}\n\t\t\trole=\"menuitem\"\n\t\t\tdata-disabled={getBooleanState(disabled)}\n\t\t\taria-disabled={disabled}\n\t\t\tdata-highlighted={isActive ? \"\" : undefined}\n\t\t\t{...getItemProps({\n\t\t\t\tonClick: handleClick,\n\t\t\t\tonKeyDown: handleKeyDown,\n\t\t\t\ttabIndex: isActive ? 0 : -1,\n\t\t\t\t...rest,\n\t\t\t})}\n\t\t>\n\t\t\t{computedChildren}\n\t\t</li>\n\t)\n})\nMenuItem.displayName = \"MenuItem\"\n","import { memo, useCallback } from \"react\"\n\nimport { CheckedIndicatorContext } from \"../../CheckedIndicator\"\nimport { MenuItem } from \"../Item\"\nimport type { MenuCheckboxItemProps } from \"../typings\"\n\nexport const MenuCheckboxItem = memo<MenuCheckboxItemProps>((props) => {\n\tconst { ref, checked, onCheckedChange, onSelect, ...rest } = props\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\n\t\tswitch (checked) {\n\t\t\tcase true:\n\t\t\t\tonCheckedChange(false)\n\t\t\t\tbreak\n\t\t\tcase \"indeterminate\":\n\t\t\tcase false:\n\t\t\t\tonCheckedChange(true)\n\t\t\t\tbreak\n\t\t}\n\t}, [checked, onCheckedChange, onSelect])\n\n\treturn (\n\t\t<CheckedIndicatorContext.Provider value={checked}>\n\t\t\t<MenuItem ref={ref} onSelect={handleSelect} {...rest} />\n\t\t</CheckedIndicatorContext.Provider>\n\t)\n})\nMenuCheckboxItem.displayName = \"MenuCheckboxItem\"\n","import { memo } from \"react\"\n\nimport { CheckedIndicator } from \"../../CheckedIndicator\"\nimport type { MenuCheckboxIndicatorProps } from \"../typings\"\n\nexport const MenuCheckboxItemIndicator = memo<MenuCheckboxIndicatorProps>((props) => {\n\tconst { ref, children, ...rest } = props\n\n\treturn (\n\t\t<CheckedIndicator ref={ref} {...rest}>\n\t\t\t{children}\n\t\t</CheckedIndicator>\n\t)\n})\nMenuCheckboxItemIndicator.displayName = \"MenuCheckboxItemIndicator\"\n","import { useMergeRefs } from \"@floating-ui/react\"\nimport { Slot } from \"@radix-ui/react-slot\"\nimport { memo, useEffect } from \"react\"\n\nimport { useMenuContext } from \"../root\"\nimport type { MenuClickTriggerProps } from \"../typings\"\nimport { getBooleanState, getOpenState } from \"../utils\"\n\nexport const MenuClickTrigger = memo(\n\tmemo<MenuClickTriggerProps>((props) => {\n\t\tconst { ref: forwardedRef, children, disabled = false } = props\n\t\tconst { getReferenceProps, refs, setTriggerType, open } = useMenuContext()\n\t\tconst mergedRefs = useMergeRefs<HTMLElement>([refs.setReference, forwardedRef])\n\n\t\tuseEffect(() => {\n\t\t\tsetTriggerType(\"click\")\n\t\t}, [setTriggerType])\n\n\t\treturn (\n\t\t\t<Slot\n\t\t\t\tref={mergedRefs}\n\t\t\t\taria-disabled={disabled}\n\t\t\t\tdata-disabled={getBooleanState(disabled)}\n\t\t\t\tdata-state={getOpenState(open)}\n\t\t\t\t{...getReferenceProps({ disabled: disabled })}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</Slot>\n\t\t)\n\t}),\n)\n","import { ClientRectObject, useMergeRefs } from \"@floating-ui/react\"\nimport { Slot } from \"@radix-ui/react-slot\"\nimport { memo, MouseEventHandler, useCallback, useEffect, useRef } from \"react\"\n\nimport { useMenuContext } from \"../root\"\nimport type { MenuContextTriggerProps } from \"../typings\"\nimport { getBooleanState, getOpenState } from \"../utils\"\n\nexport const MenuContextTrigger = memo<MenuContextTriggerProps>((props) => {\n\tconst { ref: forwardedRef, children, disabled = false } = props\n\tconst ref = useRef<HTMLElement>(null)\n\tconst { setOpen, refs, setTriggerType, open } = useMenuContext()\n\tconst mergedRefs = useMergeRefs([forwardedRef, ref])\n\n\tuseEffect(() => {\n\t\tsetTriggerType(\"context\")\n\t}, [setTriggerType])\n\n\tconst handleContextMenu = useCallback<MouseEventHandler>(\n\t\t(e) => {\n\t\t\tconst { clientY, clientX } = e\n\n\t\t\tif (!disabled && ref.current) {\n\t\t\t\te.preventDefault()\n\t\t\t\trefs.setPositionReference({\n\t\t\t\t\tgetBoundingClientRect(): ClientRectObject {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tx: clientX,\n\t\t\t\t\t\t\ty: clientY,\n\t\t\t\t\t\t\ttop: clientY,\n\t\t\t\t\t\t\tleft: clientX,\n\t\t\t\t\t\t\theight: 0,\n\t\t\t\t\t\t\twidth: 0,\n\t\t\t\t\t\t\tbottom: clientY,\n\t\t\t\t\t\t\tright: clientX,\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\tcontextElement: ref.current,\n\t\t\t\t})\n\t\t\t\tsetOpen(true)\n\t\t\t}\n\t\t},\n\t\t[disabled, refs, setOpen],\n\t)\n\n\treturn (\n\t\t<Slot\n\t\t\tref={mergedRefs}\n\t\t\tstyle={{ WebkitTouchCallout: disabled ? \"none\" : \"unset\" }}\n\t\t\taria-disabled={disabled}\n\t\t\tdata-disabled={getBooleanState(disabled)}\n\t\t\tdata-state={getOpenState(open)}\n\t\t\tonContextMenu={handleContextMenu}\n\t\t>\n\t\t\t{children}\n\t\t</Slot>\n\t)\n})\nMenuContextTrigger.displayName = \"MenuContextTrigger\"\n","import { memo } from \"react\"\n\nimport type { MenuGroupProps } from \"../typings\"\n\nexport const MenuGroup = memo<MenuGroupProps>((props) => {\n\tconst { ref, children, ...rest } = props\n\n\treturn (\n\t\t<div ref={ref} role=\"group\" {...rest}>\n\t\t\t{children}\n\t\t</div>\n\t)\n})\nMenuGroup.displayName = \"MenuGroup\"\n","import { useListItem, useMergeRefs } from \"@floating-ui/react\"\nimport { cx } from \"class-variance-authority\"\nimport { ChangeEventHandler, memo, useCallback, useEffect } from \"react\"\n\nimport { useMenuContentContext } from \"../Content\"\nimport type { MenuInputProps } from \"../typings\"\nimport { getBooleanState } from \"../utils\"\n\nexport const MenuInputField = memo<MenuInputProps>((props) => {\n\tconst { ref: forwardedRef, className, onValueChange, onChange, disabled = false, ...rest } = props\n\tconst { activeIndex, getItemProps } = useMenuContentContext()\n\tconst { index, ref } = useListItem()\n\n\tconst mergedRefs = useMergeRefs([ref, forwardedRef])\n\n\tconst handleChange = useCallback<ChangeEventHandler<HTMLInputElement>>(\n\t\t(e) => {\n\t\t\tonChange?.(e)\n\t\t\tonValueChange?.(e.target.value)\n\t\t},\n\t\t[onChange, onValueChange],\n\t)\n\n\tuseEffect(() => {\n\t\treturn () => {\n\t\t\tonValueChange?.(\"\")\n\t\t}\n\t\t// REASON: Don't include onValueChange in a dependency array, if it is required in the future, it must be ensured that\n\t\t// users wrap there onFilterChange callback function in a useCallback otherwise typing will trigger many re-renders\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [])\n\n\treturn (\n\t\t<input\n\t\t\tclassName={cx(\"placeholder-(--base-a9)\", \"selection:bg-(--accent-a5)\", \"outline-none\", className)}\n\t\t\tref={mergedRefs}\n\t\t\tdisabled={disabled}\n\t\t\tdata-disabled={getBooleanState(disabled)}\n\t\t\t{...getItemProps({\n\t\t\t\t...rest,\n\t\t\t\ttabIndex: index === activeIndex ? 0 : -1,\n\t\t\t\tonChange: handleChange,\n\t\t\t})}\n\t\t/>\n\t)\n})\nMenuInputField.displayName = \"MenuInputField\"\n","import { cx } from \"class-variance-authority\"\nimport { memo } from \"react\"\n\nimport { useMenuContentContext } from \"../Content\"\nimport { inputRoot } from \"../cva\"\nimport type { MenuInputRootProps } from \"../typings\"\n\nexport const MenuInputRoot = memo<MenuInputRootProps>((props) => {\n\tconst { ref, className, ...rest } = props\n\n\tconst { size } = useMenuContentContext()\n\n\treturn <div className={cx(inputRoot({ size }), className)} ref={ref} {...rest} />\n})\nMenuInputRoot.displayName = \"MenuInputRoot\"\n","import { cx } from \"class-variance-authority\"\nimport { memo } from \"react\"\n\nimport type { MenuInputSlotProps } from \"../typings\"\n\nexport const MenuInputSlot = memo<MenuInputSlotProps>((props) => {\n\tconst { ref, className, ...rest } = props\n\n\treturn <div className={cx(\"flex\", \"items-center\", \"text-(--base-a11)\", className)} ref={ref} {...rest} />\n})\nMenuInputSlot.displayName = \"MenuInputSlot\"\n","import { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, memo } from \"react\"\n\nimport { useMenuContentContext } from \"../Content\"\nimport { menuLabelCva } from \"../cva\"\n\nexport interface MenuLabelProps extends ComponentPropsWithRef<\"div\"> {}\n\nexport const MenuLabel = memo<MenuLabelProps>((props) => {\n\tconst { ref, className, ...rest } = props\n\n\tconst { size } = useMenuContentContext()\n\n\treturn <div ref={ref} className={cx(menuLabelCva({ size }), className)} {...rest} />\n})\nMenuLabel.displayName = \"MenuLabel\"\n","import { MultiSelectProvider } from \"../../SelectContext\"\nimport { genericMemo } from \"../../utils\"\nimport { MenuGroup } from \"../Group\"\nimport type { MenuMultiSelectGroupProps } from \"../typings\"\n\nexport const MenuMultiSelectGroup = genericMemo(function MenuMultiSelectGroup<TValue>(\n\tprops: MenuMultiSelectGroupProps<TValue>,\n) {\n\tconst { ref, children, defaultValues, values, onValuesChange, ...rest } = props\n\n\treturn (\n\t\t<MenuGroup ref={ref} {...rest}>\n\t\t\t<MultiSelectProvider<TValue> defaultValues={defaultValues} values={values} onValuesChange={onValuesChange}>\n\t\t\t\t{children}\n\t\t\t</MultiSelectProvider>\n\t\t</MenuGroup>\n\t)\n})\n","import { createContext, useContext } from \"react\"\n\nexport const SelectedIndicatorContext = createContext<boolean>(false)\n\nexport const useSelectedIndicatorContext = () => useContext(SelectedIndicatorContext)\n","import { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, memo } from \"react\"\n\nimport { getSelectedState } from \"../utils\"\nimport { useSelectedIndicatorContext } from \"./context\"\n\nexport interface MenuSelectedIndicatorProps extends ComponentPropsWithRef<\"span\"> {}\n\nexport const MenuSelectedIndicator = memo<MenuSelectedIndicatorProps>((props) => {\n\tconst { ref, children, className, ...rest } = props\n\tconst isSelected = useSelectedIndicatorContext()\n\n\treturn (\n\t\t<span\n\t\t\tref={ref}\n\t\t\tclassName={cx(\n\t\t\t\t{\n\t\t\t\t\tinvisible: !isSelected,\n\t\t\t\t},\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\tdata-state={getSelectedState(isSelected)}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{children}\n\t\t</span>\n\t)\n})\nMenuSelectedIndicator.displayName = \"SelectedIndicator\"\n","import { use, useCallback, useLayoutEffect, useMemo } from \"react\"\n\nimport { IMultiSelectContext, MultiSelectContext } from \"../../SelectContext\"\nimport { genericMemo } from \"../../utils\"\nimport { MenuItem } from \"../Item\"\nimport { SelectedIndicatorContext } from \"../SelectedIndicator\"\nimport { MenuSelectItemProps } from \"../typings\"\nimport { getSelectedState } from \"../utils\"\n\nexport const MenuMultiSelectItem = genericMemo(function <TValue>(props: MenuSelectItemProps<TValue>) {\n\tconst { ref, onSelect, children, closeOnSelect = false, value, ...rest } = props\n\n\tconst { selected, selectValue, registerValue } = use(MultiSelectContext) as IMultiSelectContext<TValue> // safe cast\n\n\tuseLayoutEffect(() => {\n\t\treturn registerValue(value)\n\t}, [registerValue, value])\n\n\tconst isSelected = selected(value)\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\t\t// TODO: prevent default behavior if needed\n\t\tselectValue(value)\n\t}, [onSelect, selectValue, value])\n\n\tconst computedChildren = useMemo(() => {\n\t\treturn typeof children === \"function\"\n\t\t\t? ({ active }: { active: boolean }) => children({ selected: isSelected, active })\n\t\t\t: children\n\t}, [children, isSelected])\n\n\treturn (\n\t\t<SelectedIndicatorContext.Provider value={isSelected}>\n\t\t\t<MenuItem\n\t\t\t\tref={ref}\n\t\t\t\trole=\"menuitemcheckbox\"\n\t\t\t\tonSelect={handleSelect}\n\t\t\t\tcloseOnSelect={closeOnSelect}\n\t\t\t\tdata-state={getSelectedState(isSelected)}\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t{computedChildren}\n\t\t\t</MenuItem>\n\t\t</SelectedIndicatorContext.Provider>\n\t)\n})\n","import { createContext, useContext } from \"react\"\n\ninterface IPagesContext {\n\tactivePage: string\n\tsetActivePage: (page: string) => void\n}\n\nexport const PagesContext = createContext<IPagesContext>({} as IPagesContext)\n\nexport const usePagesContext = () => useContext(PagesContext)\n","import { memo, useMemo } from \"react\"\n\nimport { useControlledState } from \"../../utils\"\nimport type { MenuPageProps } from \"../typings\"\nimport { PagesContext } from \"./context\"\n\nexport const MenuPages = memo<MenuPageProps>((props) => {\n\tconst { children, defaultPage, page, onPageChange } = props\n\n\tconst [activePage, setActivePage] = useControlledState<string>(defaultPage ?? \"\", page, onPageChange)\n\n\tconst contextValue = useMemo(() => ({ activePage, setActivePage }), [activePage, setActivePage])\n\n\treturn <PagesContext.Provider value={contextValue}>{children}</PagesContext.Provider>\n})\nMenuPages.displayName = \"MenuPages\"\n","import { FC } from \"react\"\n\nimport { usePagesContext } from \"../Pages\"\nimport type { MenuPageContentProps } from \"../typings\"\n\nexport const MenuPageContent: FC<MenuPageContentProps> = (props) => {\n\tconst { page, children } = props\n\tconst { activePage } = usePagesContext()\n\n\treturn activePage === page ? children : null\n}\nMenuPageContent.displayName = \"PageContent\"\n","import { memo, useCallback } from \"react\"\n\nimport { useMenuContentContext } from \"../Content\"\nimport { MenuItem } from \"../Item\"\nimport { usePagesContext } from \"../Pages\"\nimport type { MenuPageTriggerProps } from \"../typings\"\n\nexport const MenuPageTrigger = memo<MenuPageTriggerProps>((props) => {\n\tconst { ref, onSelect, page, ...rest } = props\n\tconst { refs, setActiveIndex } = useMenuContentContext()\n\tconst { setActivePage } = usePagesContext()\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\t\t// TODO: prevent default behavior if needed\n\t\tsetActivePage(page)\n\t\trefs.floating.current?.focus()\n\t\tsetActiveIndex(null)\n\t}, [onSelect, page, refs.floating, setActiveIndex, setActivePage])\n\n\treturn <MenuItem ref={ref} onSelect={handleSelect} closeOnSelect={false} {...rest} />\n})\nMenuPageTrigger.displayName = \"MenuPageTrigger\"\n","import { cx } from \"class-variance-authority\"\nimport { memo } from \"react\"\n\nimport type { MenuScrollProps } from \"../typings\"\n\nexport const MenuScroll = memo<MenuScrollProps>((props) => {\n\tconst { ref, className, ...rest } = props\n\n\treturn (\n\t\t<div\n\t\t\tref={ref}\n\t\t\tclassName={cx(\n\t\t\t\t\"h-full overflow-x-hidden overflow-y-auto [scrollbar-color:var(--base-6)_transparent] [scrollbar-width:thin]\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nMenuScroll.displayName = \"MenuScroll\"\n","import { use, useCallback, useMemo } from \"react\"\n\nimport { CheckedIndicatorContext } from \"../../CheckedIndicator\"\nimport { IMultiSelectContext, MultiSelectContext } from \"../../SelectContext\"\nimport { genericMemo } from \"../../utils\"\nimport { MenuItem } from \"../Item\"\nimport type { SelectAllItemProps } from \"../typings\"\nimport { getCheckedState } from \"../utils\"\n\nexport const MenuSelectAllItem = genericMemo(<TValue,>(props: SelectAllItemProps) => {\n\tconst { ref, children, onSelect, closeOnSelect = false, ...rest } = props\n\tconst { allSelected, someSelected, toggleSelectAll } = use(MultiSelectContext) as IMultiSelectContext<TValue> // safe cast\n\n\tconst selectedState = allSelected ? true : someSelected ? \"indeterminate\" : false\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\n\t\ttoggleSelectAll()\n\t}, [onSelect, toggleSelectAll])\n\n\tconst computedChildren = useMemo(() => {\n\t\treturn typeof children === \"function\"\n\t\t\t? ({ active }: { active: boolean }) => children({ selected: selectedState, active })\n\t\t\t: children\n\t}, [children, selectedState])\n\n\treturn (\n\t\t<CheckedIndicatorContext value={selectedState}>\n\t\t\t<MenuItem\n\t\t\t\tonSelect={handleSelect}\n\t\t\t\tref={ref}\n\t\t\t\tdata-state={getCheckedState(selectedState)}\n\t\t\t\tcloseOnSelect={closeOnSelect}\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t{computedChildren}\n\t\t\t</MenuItem>\n\t\t</CheckedIndicatorContext>\n\t)\n})\n","import { SingleSelectNotRequiredProvider, SingleSelectRequiredProvider } from \"../../SelectContext\"\nimport { genericMemo } from \"../../utils\"\nimport { MenuGroup } from \"../Group\"\nimport type { MenuSelectGroupProps } from \"../typings\"\n\nexport const MenuSelectGroup = genericMemo(function MenuSelectGroup<TValue>(props: MenuSelectGroupProps<TValue>) {\n\tconst { ref, children, required, defaultValue, value, onValueChange, ...rest } = props\n\treturn (\n\t\t<MenuGroup ref={ref} {...rest}>\n\t\t\t{required ? (\n\t\t\t\t<SingleSelectRequiredProvider defaultValue={defaultValue} value={value} onValueChange={onValueChange}>\n\t\t\t\t\t{children}\n\t\t\t\t</SingleSelectRequiredProvider>\n\t\t\t) : (\n\t\t\t\t<SingleSelectNotRequiredProvider\n\t\t\t\t\tdefaultValue={defaultValue}\n\t\t\t\t\tvalue={value}\n\t\t\t\t\tonValueChange={onValueChange}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</SingleSelectNotRequiredProvider>\n\t\t\t)}\n\t\t</MenuGroup>\n\t)\n})\n","import { use, useCallback, useMemo } from \"react\"\n\nimport { ISelectContext, SelectContext } from \"../../SelectContext\"\nimport { genericMemo } from \"../../utils\"\nimport { MenuItem } from \"../Item\"\nimport { SelectedIndicatorContext } from \"../SelectedIndicator\"\nimport type { MenuSelectItemProps } from \"../typings\"\nimport { getSelectedState } from \"../utils\"\n\nexport const MenuSelectItem = genericMemo(function <TValue>(props: MenuSelectItemProps<TValue>) {\n\tconst { ref, value, onSelect, children, closeOnSelect = true, ...rest } = props\n\tconst { selected, selectValue } = use(SelectContext) as ISelectContext<TValue> // safe cast\n\n\tconst isSelected = useMemo(() => selected(value), [selected, value])\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\t\t// TODO: prevent default behavior if needed\n\t\tselectValue(value)\n\t}, [onSelect, selectValue, value])\n\n\tconst computedChildren = useMemo(() => {\n\t\treturn typeof children === \"function\"\n\t\t\t? ({ active }: { active: boolean }) => children({ selected: isSelected, active })\n\t\t\t: children\n\t}, [children, isSelected])\n\n\treturn (\n\t\t<SelectedIndicatorContext.Provider value={isSelected}>\n\t\t\t<MenuItem\n\t\t\t\tref={ref}\n\t\t\t\trole=\"menuitemcheckbox\"\n\t\t\t\tonSelect={handleSelect}\n\t\t\t\tcloseOnSelect={closeOnSelect}\n\t\t\t\tdata-state={getSelectedState(isSelected)}\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t{computedChildren}\n\t\t\t</MenuItem>\n\t\t</SelectedIndicatorContext.Provider>\n\t)\n})\n","import * as RadixSeparator from \"@radix-ui/react-separator\"\nimport { cx } from \"class-variance-authority\"\nimport { memo } from \"react\"\n\nimport { useMenuContentContext } from \"../Content\"\nimport { menuSeparator } from \"../cva\"\nimport type { MenuSeparatorProps } from \"../typings\"\n\nexport const MenuSeparator = memo<MenuSeparatorProps>((props) => {\n\tconst { ref, className, ...rest } = props\n\tconst { size } = useMenuContentContext()\n\n\treturn <RadixSeparator.Root className={cx(menuSeparator({ size }), className)} ref={ref} {...rest} />\n})\nMenuSeparator.displayName = \"MenuSeparator\"\n","import { FloatingFocusManager, FloatingList, FloatingNode, FloatingPortal, useMergeRefs } from \"@floating-ui/react\"\nimport { cx } from \"class-variance-authority\"\nimport { CSSProperties, memo, useMemo, useRef } from \"react\"\n\nimport { floating, radiusCva } from \"../../cva\"\nimport { MenuContentContext, useMenuContentContext } from \"../Content/context\"\nimport { menuContent } from \"../cva\"\nimport { useMenuContext } from \"../root\"\nimport { useSubContext } from \"../Sub\"\nimport type { SubMenuContentProps } from \"../typings\"\nimport { getOpenState } from \"../utils\"\n\nexport const MenuSubContent = memo<SubMenuContentProps>((props) => {\n\tconst { ref: forwardedRef, children, ...rest } = props\n\tconst { middlewareData } = useMenuContext()\n\tconst { accentColor, radius, variant, size } = useMenuContentContext()\n\tconst {\n\t\topen,\n\t\tnodeId,\n\t\trefs,\n\t\tcontext,\n\t\tgetFloatingProps,\n\t\tgetItemProps,\n\t\tactiveIndex,\n\t\tsetActiveIndex,\n\t\telementsRef,\n\t\tfloatingStyles,\n\t\tsetOpen,\n\t\tside,\n\t} = useSubContext()\n\n\tconst wrapperRef = useRef<HTMLDivElement>(null)\n\n\tconst mergeRefs = useMergeRefs([refs.setFloating, wrapperRef])\n\n\tconst computedFloatingStyles: CSSProperties = useMemo(() => {\n\t\treturn {\n\t\t\t...floatingStyles,\n\t\t\tvisibility: middlewareData.hide?.referenceHidden ? \"hidden\" : \"visible\",\n\t\t}\n\t}, [floatingStyles, middlewareData.hide?.referenceHidden])\n\n\treturn (\n\t\t<FloatingNode id={nodeId}>\n\t\t\t{open && (\n\t\t\t\t<FloatingPortal>\n\t\t\t\t\t<FloatingFocusManager context={context} initialFocus={wrapperRef}>\n\t\t\t\t\t\t<FloatingList elementsRef={elementsRef}>\n\t\t\t\t\t\t\t<MenuContentContext.Provider\n\t\t\t\t\t\t\t\tvalue={{\n\t\t\t\t\t\t\t\t\tgetItemProps,\n\t\t\t\t\t\t\t\t\tactiveIndex,\n\t\t\t\t\t\t\t\t\tsetActiveIndex,\n\t\t\t\t\t\t\t\t\telementsRef,\n\t\t\t\t\t\t\t\t\topen,\n\t\t\t\t\t\t\t\t\tsetOpen,\n\t\t\t\t\t\t\t\t\trefs,\n\t\t\t\t\t\t\t\t\tsize,\n\t\t\t\t\t\t\t\t\tradius,\n\t\t\t\t\t\t\t\t\taccentColor,\n\t\t\t\t\t\t\t\t\tvariant,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\tclassName=\"outline-none\"\n\t\t\t\t\t\t\t\t\tref={mergeRefs}\n\t\t\t\t\t\t\t\t\tstyle={computedFloatingStyles}\n\t\t\t\t\t\t\t\t\t{...getFloatingProps()}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<ul\n\t\t\t\t\t\t\t\t\t\tclassName={cx(\n\t\t\t\t\t\t\t\t\t\t\t\"overmap-menu-sub-content\",\n\t\t\t\t\t\t\t\t\t\t\tmenuContent({ size }),\n\t\t\t\t\t\t\t\t\t\t\tfloating({ side, shadow: \"3\" }),\n\t\t\t\t\t\t\t\t\t\t\tradiusCva({ radius, maxLarge: true }),\n\t\t\t\t\t\t\t\t\t\t\t\"max-h-(--overmap-menu-available-height)\",\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\tref={forwardedRef}\n\t\t\t\t\t\t\t\t\t\tdata-state={getOpenState(open)}\n\t\t\t\t\t\t\t\t\t\tdata-side={side}\n\t\t\t\t\t\t\t\t\t\tdata-accent-color={accentColor}\n\t\t\t\t\t\t\t\t\t\t{...rest}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</MenuContentContext.Provider>\n\t\t\t\t\t\t</FloatingList>\n\t\t\t\t\t</FloatingFocusManager>\n\t\t\t\t</FloatingPortal>\n\t\t\t)}\n\t\t</FloatingNode>\n\t)\n})\nMenuSubContent.displayName = \"MenuSubContent\"\n","import { useMergeRefs } from \"@floating-ui/react\"\nimport { memo } from \"react\"\n\nimport { MenuItem } from \"../Item\"\nimport { useSubContext } from \"../Sub\"\nimport type { MenuSubTriggerProps } from \"../typings\"\nimport { getOpenState } from \"../utils\"\n\nexport const MenuSubTrigger = memo<MenuSubTriggerProps>((props) => {\n\tconst { ref: forwardedRef, children, ...rest } = props\n\tconst { refs, getReferenceProps, open, disabled } = useSubContext()\n\n\tconst mergedRefs = useMergeRefs([forwardedRef, refs.setReference])\n\n\treturn (\n\t\t<MenuItem\n\t\t\tref={mergedRefs}\n\t\t\tcloseOnSelect={false}\n\t\t\taria-haspopup=\"menu\"\n\t\t\tdata-state={getOpenState(open)}\n\t\t\tdisabled={disabled}\n\t\t\t{...getReferenceProps(rest)}\n\t\t>\n\t\t\t{children}\n\t\t</MenuItem>\n\t)\n})\nMenuSubTrigger.displayName = \"MenuSubTrigger\"\n","import { memo, useEffect } from \"react\"\n\nimport { useMenuContext } from \"../root\"\nimport type { MenuVirtualTriggerProps } from \"../typings\"\n\nexport const MenuVirtualTrigger = memo((props: MenuVirtualTriggerProps) => {\n\tconst { virtualElement, disabled } = props\n\tconst { refs, setTriggerType, setOpen } = useMenuContext()\n\n\tuseEffect(() => {\n\t\tsetTriggerType(\"virtual\")\n\t}, [setTriggerType])\n\n\tuseEffect(() => {\n\t\tif (!disabled && virtualElement) {\n\t\t\trefs.setPositionReference(virtualElement)\n\t\t\tsetOpen(true)\n\t\t} else {\n\t\t\trefs.setPositionReference(null)\n\t\t\tsetOpen(false)\n\t\t}\n\t}, [disabled, refs, setOpen, virtualElement])\n\n\treturn null\n})\nMenuVirtualTrigger.displayName = \"VirtualTrigger\"\n","import { MenuCheckboxItem } from \"./CheckboxItem/CheckboxItem\"\nimport { MenuCheckboxItemIndicator } from \"./CheckboxItemIndicator/CheckboxItemIndicator\"\nimport { MenuClickTrigger } from \"./ClickTrigger\"\nimport { MenuContent } from \"./Content\"\nimport { MenuContextTrigger } from \"./ContextTrigger\"\nimport { MenuGroup } from \"./Group\"\nimport { MenuInputField, MenuInputRoot, MenuInputSlot } from \"./Input\"\nimport { MenuItem } from \"./Item\"\nimport { MenuLabel } from \"./Label\"\nimport { MenuMultiSelectGroup } from \"./MultiSelectGroup\"\nimport { MenuMultiSelectItem } from \"./MultiSelectItem\"\nimport { MenuPageContent } from \"./PageContent\"\nimport { MenuPages } from \"./Pages\"\nimport { MenuPageTrigger } from \"./PageTrigger\"\nimport { MenuRoot } from \"./root\"\nimport { MenuScroll } from \"./Scroll/Scroll\"\nimport { MenuSelectAllItem } from \"./SelectAll\"\nimport { MenuSelectedIndicator } from \"./SelectedIndicator\"\nimport { MenuSelectGroup } from \"./SelectGroup\"\nimport { MenuSelectItem } from \"./SelectItem\"\nimport { MenuSeparator } from \"./Separator\"\nimport { MenuSub } from \"./Sub\"\nimport { MenuSubContent } from \"./SubContent\"\nimport { MenuSubTrigger } from \"./SubTrigger\"\nimport { MenuVirtualTrigger } from \"./VirtualTrigger\"\n\nexport * from \"./CheckboxItem/CheckboxItem\"\nexport * from \"./CheckboxItemIndicator/CheckboxItemIndicator\"\nexport * from \"./ClickTrigger\"\nexport * from \"./Content\"\nexport * from \"./ContextTrigger\"\nexport * from \"./Group\"\nexport * from \"./Input\"\nexport * from \"./Item\"\nexport * from \"./Label\"\nexport * from \"./MultiSelectGroup\"\nexport * from \"./MultiSelectItem\"\nexport * from \"./PageContent\"\nexport * from \"./Pages\"\nexport * from \"./PageTrigger\"\nexport * from \"./root\"\nexport * from \"./Scroll/Scroll\"\nexport * from \"./SelectAll\"\nexport * from \"./SelectedIndicator\"\nexport * from \"./SelectGroup\"\nexport * from \"./SelectItem\"\nexport * from \"./Separator\"\nexport * from \"./Sub\"\nexport * from \"./SubContent\"\nexport * from \"./SubTrigger\"\nexport * from \"./typings\"\nexport * from \"./VirtualTrigger\"\n\nexport const Menu = {\n\tRoot: MenuRoot,\n\tContent: MenuContent,\n\n\t// sub\n\tSub: MenuSub,\n\tSubContent: MenuSubContent,\n\tSubTrigger: MenuSubTrigger,\n\n\t// pages\n\tPages: MenuPages,\n\tPageContent: MenuPageContent,\n\tPageTrigger: MenuPageTrigger,\n\n\t// triggers\n\tClickTrigger: MenuClickTrigger,\n\tContextTrigger: MenuContextTrigger,\n\tVirtualTrigger: MenuVirtualTrigger,\n\n\t// groups\n\tGroup: MenuGroup,\n\tSelectGroup: MenuSelectGroup,\n\tMultiSelectGroup: MenuMultiSelectGroup,\n\n\t// items\n\tItem: MenuItem,\n\tSelectItem: MenuSelectItem,\n\tMultiSelectItem: MenuMultiSelectItem,\n\tSelectAllItem: MenuSelectAllItem,\n\tCheckboxItem: MenuCheckboxItem,\n\n\t// indicators\n\tSelectedIndicator: MenuSelectedIndicator,\n\tCheckboxItemIndicator: MenuCheckboxItemIndicator,\n\n\t// input\n\tInputRoot: MenuInputRoot,\n\tInputField: MenuInputField,\n\tInputSlot: MenuInputSlot,\n\n\t// others\n\tLabel: MenuLabel,\n\tSeparator: MenuSeparator,\n\tScroll: MenuScroll,\n}\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, memo } from \"react\"\nimport { IconBaseProps, IconType } from \"react-icons\"\nimport * as RiIcons from \"react-icons/ri\"\nimport { RiQuestionMark } from \"react-icons/ri\"\n\ninterface RiIconProps extends ComponentProps<\"svg\">, Pick<IconBaseProps, \"size\" | \"title\" | \"color\"> {\n\ticon: string\n}\n\n// NOTE: this should be moved to /web once any tsx have been removed from /core\n\nexport const RiIcon = memo(\n\tforwardRef<SVGSVGElement, RiIconProps>((props, ref) => {\n\t\tconst { icon, size, title, color, className, ...rest } = props\n\t\tconst Icon = (RiIcons as Record<string, IconType>)[icon]\n\n\t\t// eslint-disable-next-line no-console\n\t\tif (!Icon) console.error(`Icon ${icon} not found`)\n\n\t\treturn Icon ? (\n\t\t\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\t\t\t// @ts-ignore\n\t\t\t<Icon className={cx(\"shrink-0\", className)} ref={ref} title={title} size={size} color={color} {...rest} />\n\t\t) : (\n\t\t\t<RiQuestionMark\n\t\t\t\tclassName={cx(\"shrink-0\", className)}\n\t\t\t\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\t\t\t\t// @ts-ignore\n\t\t\t\tref={ref}\n\t\t\t\ttitle={title}\n\t\t\t\tsize={size}\n\t\t\t\tcolor={color}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t)\n\t}),\n)\nRiIcon.displayName = \"RiIcon\"\n","import { ErrorInfo, memo, PropsWithChildren, useCallback, useState } from \"react\"\nimport { ErrorBoundary, useErrorBoundary } from \"react-error-boundary\"\n\nimport { IconButton } from \"../Buttons\"\nimport { RiIcon } from \"../RiIcon\"\n\ninterface ErrorBoundaryProps extends PropsWithChildren {\n\tabsoluteCentering?: boolean\n\tmessage?: string\n}\n\ninterface ErrorFallbackProps extends ErrorBoundaryProps {\n\tonRetry: () => void\n}\n\nconst centerStyles = { placeSelf: \"center\" }\n\nconst ErrorFallback = memo((props: ErrorFallbackProps) => {\n\tconst { absoluteCentering, message = \"Something went wrong\", onRetry } = props\n\tconst { resetBoundary } = useErrorBoundary()\n\tconst height = \"20px\"\n\tconst outerFlexStyles = absoluteCentering\n\t\t? ({ position: \"absolute\", top: \"50%\", transform: \"translateY(-50%)\" } as const)\n\t\t: undefined\n\n\tconst handleRetry = useCallback(() => {\n\t\tresetBoundary()\n\t\tonRetry()\n\t}, [onRetry, resetBoundary])\n\n\treturn (\n\t\t<div className=\"flex w-full gap-2\" style={outerFlexStyles}>\n\t\t\t<div style={{ flexGrow: 1 }} />\n\t\t\t<RiIcon icon=\"RiAlertLine\" size={height} style={centerStyles} />\n\t\t\t<span style={{ lineHeight: height, ...centerStyles }}>{message}</span>\n\t\t\t<IconButton aria-label=\"Try again\" variant=\"soft\" onClick={handleRetry} style={centerStyles}>\n\t\t\t\t<RiIcon icon=\"RiLoopLeftLine\" size={height} />\n\t\t\t</IconButton>\n\t\t\t<div style={{ flexGrow: 1 }} />\n\t\t</div>\n\t)\n})\n\nErrorFallback.displayName = \"ErrorFallback\"\n\nexport const OvermapErrorBoundary = memo((props: ErrorBoundaryProps) => {\n\tconst { absoluteCentering, message } = props\n\tconst [attempt, setAttempt] = useState(0)\n\n\tconst logError = useCallback((error: Error, info: ErrorInfo) => {\n\t\t// TODO: Log error to Sentry\n\t\t// eslint-disable-next-line no-console\n\t\tconsole.error(\"Error in OvermapErrorBoundary:\", error, info)\n\t\tsetAttempt((prev) => prev + 1)\n\t}, [])\n\n\tconst handleRetry = useCallback(() => {\n\t\tsetAttempt((prev) => prev + 1)\n\t}, [])\n\n\treturn (\n\t\t<ErrorBoundary\n\t\t\tkey={attempt}\n\t\t\tfallback={<ErrorFallback absoluteCentering={absoluteCentering} message={message} onRetry={handleRetry} />}\n\t\t\tonError={logError}\n\t\t>\n\t\t\t{props.children}\n\t\t</ErrorBoundary>\n\t)\n})\n\nOvermapErrorBoundary.displayName = \"OvermapErrorBoundary\"\n","import * as RadixPopover from \"@radix-ui/react-popover\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nexport interface PopoverArrowProps extends RadixPopover.PopoverArrowProps {}\n\nexport const PopoverArrow = forwardRef<SVGSVGElement, PopoverArrowProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn <RadixPopover.Arrow className={cx(\"fill-(--base-6)\", className)} ref={ref} {...rest} />\n})\nPopoverArrow.displayName = \"PopoverArrow\"\n","import { cva } from \"class-variance-authority\"\n\nexport const popoverContent = cva([\"bg-(--color-background)\", \"dark:bg-(--base-2)\", \"ring-1\", \"ring-(--base-6)\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"p-2\"],\n\t\t\tsm: [\"p-3\"],\n\t\t\tmd: [\"p-4\"],\n\t\t\tlg: [\"p-5\"],\n\t\t\txl: [\"p-6\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n})\n","import * as RadixPopover from \"@radix-ui/react-popover\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { floating, radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { popoverContent } from \"./cva\"\nimport type { PopoverVariantProps } from \"./typings\"\n\nexport interface PopoverContentProps extends RadixPopover.PopoverContentProps, PopoverVariantProps {\n\tcontainer?: RadixPopover.PopoverPortalProps[\"container\"]\n}\n\nexport const PopoverContent = forwardRef<HTMLDivElement, PopoverContentProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tradius = providerContext.radius,\n\t\taccentColor = providerContext.accentColor,\n\t\tsize = \"md\",\n\t\tsideOffset = 5,\n\t\tcontainer,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<RadixPopover.Portal container={container}>\n\t\t\t<RadixPopover.Content\n\t\t\t\tclassName={cx(\n\t\t\t\t\tpopoverContent({ size }),\n\t\t\t\t\tfloating({ shadow: \"3\" }),\n\t\t\t\t\tradiusCva({ radius, maxLarge: true }),\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\tref={ref}\n\t\t\t\tsideOffset={sideOffset}\n\t\t\t\tdata-accent-color={accentColor}\n\t\t\t\tdata-floating-content=\"\"\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t</RadixPopover.Portal>\n\t)\n})\nPopoverContent.displayName = \"PopoverContent\"\n","import * as RadixPopover from \"@radix-ui/react-popover\"\n\nimport { PopoverArrow } from \"./Arrow\"\nimport { PopoverContent } from \"./Content\"\n\nexport * from \"./Arrow\"\nexport * from \"./Content\"\nexport * from \"./typings\"\n\nexport const Popover = {\n\t...RadixPopover,\n\tContent: PopoverContent,\n\tArrow: PopoverArrow,\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const progressRootCva = cva([\"relative\", \"overflow-hidden\", \"grow\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"h-1.5\"],\n\t\t\tsm: [\"h-2\"],\n\t\t\tmd: [\"h-2.5\"],\n\t\t\tlg: [\"h-3\"],\n\t\t\txl: [\"h-3.5\"],\n\t\t},\n\t\tvariant: {\n\t\t\tsurface: [\"bg-(--base-a3)\", \"inset-ring\", \"inset-ring-(--base-a6)\"],\n\t\t\tsoft: [\"bg-(--base-a4)\"],\n\t\t},\n\t},\n})\n\nexport const progressIndicatorCva = cva(\n\t[\n\t\t\"size-full\",\n\t\t\"transform-[scaleX(calc(var(--progress-value)/var(--progress-max)))]\",\n\t\t\"origin-[left_center]\",\n\t\t\"transition-[transform]\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [],\n\t\t\t\tsm: [],\n\t\t\t\tmd: [],\n\t\t\t\tlg: [],\n\t\t\t\txl: [],\n\t\t\t},\n\t\t\tvariant: {\n\t\t\t\tsurface: [\"bg-(--accent-track)\"],\n\t\t\t\tsoft: [\"bg-(--accent-8)\"],\n\t\t\t},\n\t\t},\n\t},\n)\n","import * as RadixProgress from \"@radix-ui/react-progress\"\nimport { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, memo, useMemo } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { progressIndicatorCva, progressRootCva } from \"./cva\"\nimport type { ProgressVariantProps } from \"./typings\"\n\nexport interface ProgressProps\n\textends Omit<ComponentPropsWithRef<typeof RadixProgress.Root>, \"children\">,\n\t\tProgressVariantProps {}\n\nexport const Progress = memo<ProgressProps>((props) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tref,\n\t\tclassName,\n\t\tstyle,\n\t\tradius = providerContext.radius,\n\t\tvariant = \"surface\",\n\t\tsize = \"md\",\n\t\taccentColor = providerContext.accentColor,\n\t\t...rest\n\t} = props\n\n\tconst computedStyle = useMemo(\n\t\t() => ({\n\t\t\t...style,\n\t\t\t\"--progress-value\": rest.value ?? 0,\n\t\t\t\"--progress-max\": rest.max ?? 100,\n\t\t}),\n\t\t[rest.max, rest.value, style],\n\t)\n\n\treturn (\n\t\t<RadixProgress.Root\n\t\t\tref={ref}\n\t\t\tclassName={cx(progressRootCva({ variant, size }), radiusCva({ radius, maxLarge: false }), className)}\n\t\t\tstyle={computedStyle}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<RadixProgress.ProgressIndicator className={progressIndicatorCva({ variant, size })} />\n\t\t</RadixProgress.Root>\n\t)\n})\nProgress.displayName = \"Progress\"\n","import { createContext } from \"react\"\n\nimport type { ComponentRadius } from \"../Provider\"\nimport type { RadioCardsSize, RadioCardsVariant } from \"./typings\"\n\ninterface RadioCardsContext {\n\tsize: RadioCardsSize\n\tvariant: RadioCardsVariant\n\tradius: ComponentRadius\n}\n\nexport const RadioCardsContext = createContext({} as RadioCardsContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const radioCardsRootCva = cva([], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"text-xs\"],\n\t\t\tsm: [\"text-sm\"],\n\t\t\tmd: [\"text-base\"],\n\t\t\tlg: [\"text-base\"],\n\t\t\txl: [\"text-lg\"],\n\t\t},\n\t\tvariant: {\n\t\t\tsurface: [],\n\t\t\toutline: [],\n\t\t},\n\t},\n})\n\nexport const radioCardsItemCva = cva(\n\t[\n\t\t\"block\",\n\t\t\"overflow-hidden\",\n\t\t\"align-start\",\n\t\t\"transition-[box-shadow]\",\n\n\t\t\"disabled:opacity-50\",\n\n\t\t\"focus-visible:bg-(--accent-a3)\",\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-(--accent-8)\",\n\t\t\"focus-visible:-outline-offset-1\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"p-2\"],\n\t\t\t\tsm: [\"p-3\"],\n\t\t\t\tmd: [\"p-4\"],\n\t\t\t\tlg: [\"p-5\"],\n\t\t\t\txl: [\"p-6\"],\n\t\t\t},\n\t\t\tvariant: {\n\t\t\t\tsurface: [\n\t\t\t\t\t\"bg-(--base-surface)\",\n\t\t\t\t\t\"data-[state=unchecked]:inset-ring\",\n\t\t\t\t\t\"data-[state=unchecked]:inset-ring-(--base-a7)\",\n\t\t\t\t\t\"data-[state=unchecked]:hover:inset-ring-(--base-a8)\",\n\t\t\t\t\t\"data-[state=checked]:outline-2\",\n\t\t\t\t\t\"data-[state=checked]:outline-(--accent-indicator)\",\n\t\t\t\t\t\"data-[state=checked]:-outline-offset-1\",\n\t\t\t\t],\n\t\t\t\toutline: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"data-[state=unchecked]:inset-ring\",\n\t\t\t\t\t\"data-[state=unchecked]:inset-ring-(--base-a7)\",\n\t\t\t\t\t\"data-[state=unchecked]:hover:inset-ring-(--base-a8)\",\n\t\t\t\t\t\"data-[state=checked]:outline-2\",\n\t\t\t\t\t\"data-[state=checked]:outline-(--accent-indicator)\",\n\t\t\t\t\t\"data-[state=checked]:-outline-offset-1\",\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n)\n","import * as RadixRadioGroup from \"@radix-ui/react-radio-group\"\nimport { cx } from \"class-variance-authority\"\nimport { memo, use } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport type { AccentColorProps } from \"../typings\"\nimport { RadioCardsContext } from \"./context\"\nimport { radioCardsItemCva } from \"./cva\"\n\nexport interface RadioCardsItemProps extends RadixRadioGroup.RadioGroupItemProps, AccentColorProps {}\n\nexport const RadioCardsItem = memo<RadioCardsItemProps>((props) => {\n\tconst { variant, size, radius } = use(RadioCardsContext)\n\tconst { className, accentColor, ...rest } = props\n\n\treturn (\n\t\t<RadixRadioGroup.Item\n\t\t\tclassName={cx(radioCardsItemCva({ variant, size }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nRadioCardsItem.displayName = \"RadioCardsItem\"\n","import * as RadixRadioGroup from \"@radix-ui/react-radio-group\"\nimport { cx } from \"class-variance-authority\"\nimport { memo, useMemo } from \"react\"\n\nimport { useProvider } from \"../Provider\"\nimport { RadioCardsContext } from \"./context\"\nimport { radioCardsRootCva } from \"./cva\"\nimport { RadiosCardsVariantProps } from \"./typings\"\n\nexport interface RadioCardsRootProps extends RadixRadioGroup.RadioGroupProps, RadiosCardsVariantProps {}\n\nexport const RadioCardsRoot = memo<RadioCardsRootProps>((props) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tchildren,\n\t\tvariant = \"surface\",\n\t\tsize = \"md\",\n\t\tradius = providerContext.radius,\n\t\taccentColor = providerContext.accentColor,\n\t\t...rest\n\t} = props\n\n\tconst contextValue = useMemo(\n\t\t() => ({\n\t\t\tvariant,\n\t\t\tsize,\n\t\t\tradius,\n\t\t}),\n\t\t[radius, size, variant],\n\t)\n\n\treturn (\n\t\t<RadixRadioGroup.Root\n\t\t\tclassName={cx(radioCardsRootCva({ size, variant }), className)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<RadioCardsContext value={contextValue}>{children}</RadioCardsContext>\n\t\t</RadixRadioGroup.Root>\n\t)\n})\nRadioCardsRoot.displayName = \"RadioCardsRoot\"\n","import { RadioCardsItem } from \"./Item\"\nimport { RadioCardsRoot } from \"./Root\"\n\nexport * from \"./Item\"\nexport * from \"./Root\"\nexport * from \"./typings\"\n\nexport const RadioCards = {\n\tRoot: RadioCardsRoot,\n\tItem: RadioCardsItem,\n}\n","import * as RadixRadioGroup from \"@radix-ui/react-radio-group\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nexport interface RadioGroupIndicatorProps extends RadixRadioGroup.RadioGroupIndicatorProps {}\n\nexport const RadioGroupIndicator = forwardRef<HTMLSpanElement, RadioGroupIndicatorProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn (\n\t\t<RadixRadioGroup.Indicator\n\t\t\tclassName={cx(\"inline-flex items-center justify-center\", className)}\n\t\t\tref={ref}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nRadioGroupIndicator.displayName = \"RadioGroupIndicator\"\n","import { createContext } from \"react\"\n\nimport type { RadioGroupSize, RadioGroupVariant } from \"./typings\"\n\nexport interface IRadioGroupContext {\n\tsize: RadioGroupSize\n\tvariant: RadioGroupVariant\n}\n\nexport const RadioGroupContext = createContext<IRadioGroupContext>({} as IRadioGroupContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const radioGroupItem = cva(\n\t[\n\t\t\"inline-flex\",\n\t\t\"justify-center\",\n\t\t\"items-center\",\n\t\t\"shrink-0\",\n\t\t\"align-top\",\n\t\t\"cursor-pointer\",\n\n\t\t\"rounded-full\",\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-(--accent-a8)\",\n\t\t\"focus-visible:outline-offset-2\",\n\t\t\"disabled:opacity-50\",\n\t\t\"disabled:pointer-events-none\",\n\n\t\t\"data-[state='checked']:transition-[background,color,box-shadow]\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsurface: [\n\t\t\t\t\t\"bg-(--base-surface)\",\n\t\t\t\t\t\"data-[state='checked']:bg-(--accent-indicator)\",\n\t\t\t\t\t\"inset-ring\",\n\t\t\t\t\t\"inset-ring-(--base-a7)\",\n\t\t\t\t\t\"data-[state='checked']:inset-ring-(--accent-indicator)\",\n\t\t\t\t\t\"text-(--accent-contrast)\",\n\t\t\t\t],\n\t\t\t\tsoft: [\"bg-(--accent-a3)\", \"text-(--accent-a11)\"],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"size-4\", \"text-[0.625rem]\"],\n\t\t\t\tsm: [\"size-5\", \"text-xs\"],\n\t\t\t\tmd: [\"size-6\", \"text-sm\"],\n\t\t\t\tlg: [\"size-7\", \"text-base\"],\n\t\t\t\txl: [\"size-9\", \"text-lg\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tvariant: \"surface\",\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n","import * as RadixRadioGroup from \"@radix-ui/react-radio-group\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef, memo, useContext } from \"react\"\n\nimport { RadioGroupContext } from \"./context\"\nimport { radioGroupItem } from \"./cva\"\nimport type { RadioGroupVariantProps } from \"./typings\"\n\nexport interface RadioGroupItemProps extends RadioGroupVariantProps, RadixRadioGroup.RadioGroupItemProps {}\n\nexport const RadioGroupItem = memo(\n\tforwardRef<HTMLButtonElement, RadioGroupItemProps>((props, ref) => {\n\t\tconst radioGroupContext = useContext(RadioGroupContext)\n\t\tconst { className, size = radioGroupContext.size, variant = radioGroupContext.variant, ...rest } = props\n\n\t\treturn <RadixRadioGroup.Item className={cx(radioGroupItem({ size, variant }), className)} ref={ref} {...rest} />\n\t}),\n)\n","import * as RadixRadioGroup from \"@radix-ui/react-radio-group\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef, memo } from \"react\"\n\nimport { useProvider } from \"../Provider\"\nimport { RadioGroupContext } from \"./context\"\nimport type { RadioGroupVariantProps } from \"./typings\"\n\nexport interface RadioGroupRootProps extends RadixRadioGroup.RadioGroupProps, RadioGroupVariantProps {}\n\nexport const RadioGroupRoot = memo(\n\tforwardRef<HTMLDivElement, RadioGroupRootProps>((props, ref) => {\n\t\tconst providerContext = useProvider()\n\t\tconst {\n\t\t\tclassName,\n\t\t\taccentColor = providerContext.accentColor,\n\t\t\tvariant = \"surface\",\n\t\t\tsize = \"md\",\n\t\t\tchildren,\n\t\t\t...rest\n\t\t} = props\n\n\t\treturn (\n\t\t\t<RadixRadioGroup.Root className={cx(className)} ref={ref} data-accent-color={accentColor} {...rest}>\n\t\t\t\t<RadioGroupContext.Provider value={{ variant, size }}>{children}</RadioGroupContext.Provider>\n\t\t\t</RadixRadioGroup.Root>\n\t\t)\n\t}),\n)\n","import { RadioGroupIndicator } from \"./Indicator\"\nimport { RadioGroupItem } from \"./Item\"\nimport { RadioGroupRoot } from \"./Root\"\n\nexport * from \"./Indicator\"\nexport * from \"./Item\"\nexport * from \"./Root\"\nexport * from \"./typings\"\n\nexport const RadioGroup = {\n\tIndicator: RadioGroupIndicator,\n\tItem: RadioGroupItem,\n\tRoot: RadioGroupRoot,\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const segmentedControlRootCva = cva(\n\t[\"shrink-0\", \"transition-colors\", \"inline-flex\", \"box-border\", \"min-w-max\", \"text-center\"],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsoft: [\"bg-(--accent-a3)\"],\n\t\t\t\tsurface: [\"bg-(--accent-surface)\", \"border\", \"border-(--accent-a7)\"],\n\t\t\t\toutline: [\"bg-transparent\", \"border\", \"border-(--accent-a7)\"],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"h-6\", \"text-xs\"],\n\t\t\t\tsm: [\"h-7\", \"text-sm\"],\n\t\t\t\tmd: [\"h-8\", \"text-base\"],\n\t\t\t\tlg: [\"h-9\", \"text-lg\"],\n\t\t\t\txl: [\"h-10\", \"text-xl\"],\n\t\t\t},\n\t\t},\n\t},\n)\n\nexport const segmentedControlItemCva = cva(\n\t[\n\t\t\"h-full\",\n\t\t\"grow\",\n\t\t\"flex\",\n\t\t\"items-center\",\n\t\t\"justify-center\",\n\t\t\"shrink-0\",\n\n\t\t// select\n\t\t\"select-none\",\n\t\t\"cursor-pointer\",\n\n\t\t// focus\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-(--accent-a8)\",\n\n\t\t// disabled\n\t\t\"disabled:opacity-50\",\n\t\t\"disabled:pointer-events-none\",\n\n\t\t\"transition-colors\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsoft: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"data-[state=on]:bg-(--accent-a5)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"hover:text-(--accent-a12)\",\n\t\t\t\t\t\"data-[state=on]:text-(--accent-a12)\",\n\t\t\t\t],\n\t\t\t\tsurface: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"data-[state=on]:bg-(--accent-a5)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"hover:text-(--accent-a12)\",\n\t\t\t\t\t\"data-[state=on]:text-(--accent-a12)\",\n\t\t\t\t],\n\t\t\t\toutline: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"data-[state=on]:bg-(--accent-a5)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"hover:text-(--accent-a12)\",\n\t\t\t\t\t\"data-[state=on]:text-(--accent-a12)\",\n\t\t\t\t],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"gap-1.5\"],\n\t\t\t\tsm: [\"gap-1.75\"],\n\t\t\t\tmd: [\"gap-2\"],\n\t\t\t\tlg: [\"gap-2.25\"],\n\t\t\t\txl: [\"gap-2.5\"],\n\t\t\t},\n\t\t\ticon: {\n\t\t\t\ttrue: [],\n\t\t\t\tfalse: [],\n\t\t\t},\n\t\t\tradius: {\n\t\t\t\tnone: [\"rounded-none\"],\n\t\t\t\txs: [\"rounded-[calc(var(--radius-xs)-1px)]\"],\n\t\t\t\tsm: [\"rounded-[calc(var(--radius-sm)-1px)]\"],\n\t\t\t\tmd: [\"rounded-[calc(var(--radius-md)-1px)]\"],\n\t\t\t\tlg: [\"rounded-[calc(var(--radius-lg)-1px)]\"],\n\t\t\t\txl: [\"rounded-[calc(var(--radius-xl)-1px)]\"],\n\t\t\t\tfull: [\"rounded-full\"],\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"w-6\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"px-3\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"w-7\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"px-3.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"w-8\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"px-4\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"w-9\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"px-4.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"w-10\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"px-5\",\n\t\t\t},\n\t\t],\n\t\tdefaultVariants: {\n\t\t\tvariant: \"surface\",\n\t\t\tsize: \"md\",\n\t\t\ticon: false,\n\t\t},\n\t},\n)\n","import { createContext } from \"react\"\n\nimport { ComponentRadius } from \"../Provider\"\nimport type { SegmentedControlSize, SegmentedControlVariant } from \"./typings\"\n\nexport interface ISegmentedControlContext {\n\tsize: SegmentedControlSize\n\tvariant: SegmentedControlVariant\n\tradius: ComponentRadius\n\ticon: boolean\n}\n\nexport const SegmentedControlContext = createContext({} as ISegmentedControlContext)\n","import { useContext } from \"react\"\n\nimport { SegmentedControlContext } from \"./context\"\n\nexport const useSegmentedControl = () => {\n\tconst segmentedControlContext = useContext(SegmentedControlContext)\n\n\tif (!segmentedControlContext) {\n\t\tthrow new Error(\"useSegmentedControl must be used within a SegmentedControlProvider\")\n\t}\n\n\treturn segmentedControlContext\n}\n","import * as RadixToggleGroup from \"@radix-ui/react-toggle-group\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { segmentedControlItemCva } from \"./cva\"\nimport { useSegmentedControl } from \"./hooks\"\n\nexport interface SegmentedControlItemProps extends RadixToggleGroup.ToggleGroupItemProps {}\n\nexport const SegmentedControlItem = forwardRef<HTMLButtonElement, SegmentedControlItemProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\tconst { size, radius, variant, icon } = useSegmentedControl()\n\n\treturn (\n\t\t<RadixToggleGroup.Item\n\t\t\tref={ref}\n\t\t\tclassName={cx(segmentedControlItemCva({ size, variant, icon, radius }), className)}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nSegmentedControlItem.displayName = \"SegmentedControlItem\"\n","import * as RadixToggleGroup from \"@radix-ui/react-toggle-group\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { SegmentedControlContext } from \"./context\"\nimport { segmentedControlRootCva } from \"./cva\"\nimport type { SegmentedControlVariantProps } from \"./typings\"\n\nexport interface SegmentedControlRootProps\n\textends Omit<RadixToggleGroup.ToggleGroupSingleProps, \"type\">,\n\t\tSegmentedControlVariantProps {}\n\nexport const SegmentedControlRoot = forwardRef<HTMLDivElement, SegmentedControlRootProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tchildren,\n\t\tsize = \"md\",\n\t\tvariant = \"surface\",\n\t\ticon = false,\n\t\tradius = providerContext.radius,\n\t\taccentColor = providerContext.accentColor,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<RadixToggleGroup.Root\n\t\t\tref={ref}\n\t\t\tclassName={cx(\n\t\t\t\tsegmentedControlRootCva({ size, variant }),\n\t\t\t\tradiusCva({ radius, maxLarge: false }),\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\ttype=\"single\"\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<SegmentedControlContext.Provider value={{ size, variant, radius, icon }}>\n\t\t\t\t{children}\n\t\t\t</SegmentedControlContext.Provider>\n\t\t</RadixToggleGroup.Root>\n\t)\n})\nSegmentedControlRoot.displayName = \"SegmentedControlRoot\"\n","import { SegmentedControlItem } from \"./Item\"\nimport { SegmentedControlRoot } from \"./Root\"\n\nexport * from \"./Item\"\nexport * from \"./Root\"\nexport * from \"./typings\"\n\nexport const SegmentedControl = {\n\tItem: SegmentedControlItem,\n\tRoot: SegmentedControlRoot,\n}\n","import { createContext } from \"react\"\n\nimport type { ComponentRadius } from \"../Provider\"\nimport type { SegmentedTabsSize, SegmentedTabsVariant } from \"./typings\"\n\ninterface ISegmentedTabsListContext {\n\tsize: SegmentedTabsSize\n\tvariant: SegmentedTabsVariant\n\tradius: ComponentRadius\n}\n\nexport const SegmentedTabsListContext = createContext({} as ISegmentedTabsListContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const segmentedTabsListCva = cva(\n\t[\"shrink-0\", \"transition-colors\", \"inline-flex\", \"box-border\", \"min-w-max\", \"text-center\"],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsoft: [\"bg-(--accent-a3)\"],\n\t\t\t\tsurface: [\"bg-(--accent-surface)\", \"border\", \"border-(--accent-a7)\"],\n\t\t\t\toutline: [\"bg-transparent\", \"border\", \"border-(--accent-a7)\"],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"h-6\", \"text-xs\"],\n\t\t\t\tsm: [\"h-7\", \"text-sm\"],\n\t\t\t\tmd: [\"h-8\", \"text-base\"],\n\t\t\t\tlg: [\"h-9\", \"text-lg\"],\n\t\t\t\txl: [\"h-10\", \"text-xl\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tvariant: \"surface\",\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n\nexport const segmentedTabsTriggerCva = cva(\n\t[\n\t\t\"h-full\",\n\t\t\"grow\",\n\t\t\"flex\",\n\t\t\"items-center\",\n\t\t\"justify-center\",\n\t\t\"shrink-0\",\n\n\t\t// select\n\t\t\"select-none\",\n\t\t\"cursor-pointer\",\n\n\t\t// focus\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-(--accent-a8)\",\n\n\t\t// disabled\n\t\t\"disabled:opacity-50\",\n\t\t\"disabled:pointer-events-none\",\n\n\t\t\"transition-colors\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsoft: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"data-[state=active]:bg-(--accent-a5)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"hover:text-(--accent-a12)\",\n\t\t\t\t\t\"data-[state=active]:text-(--accent-a12)\",\n\t\t\t\t],\n\t\t\t\tsurface: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"data-[state=active]:bg-(--accent-a5)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"hover:text-(--accent-a12)\",\n\t\t\t\t\t\"data-[state=active]:text-(--accent-a12)\",\n\t\t\t\t],\n\t\t\t\toutline: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"data-[state=active]:bg-(--accent-a5)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"hover:text-(--accent-a12)\",\n\t\t\t\t\t\"data-[state=active]:text-(--accent-a12)\",\n\t\t\t\t],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"gap-1.5\"],\n\t\t\t\tsm: [\"gap-1.75\"],\n\t\t\t\tmd: [\"gap-2\"],\n\t\t\t\tlg: [\"gap-2.25\"],\n\t\t\t\txl: [\"gap-2.5\"],\n\t\t\t},\n\t\t\ticon: {\n\t\t\t\ttrue: [],\n\t\t\t\tfalse: [],\n\t\t\t},\n\t\t\tradius: {\n\t\t\t\tnone: [\"rounded-none\"],\n\t\t\t\txs: [\"rounded-[calc(var(--radius-xs)-1px)]\"],\n\t\t\t\tsm: [\"rounded-[calc(var(--radius-sm)-1px)]\"],\n\t\t\t\tmd: [\"rounded-[calc(var(--radius-md)-1px)]\"],\n\t\t\t\tlg: [\"rounded-[calc(var(--radius-lg)-1px)]\"],\n\t\t\t\txl: [\"rounded-[calc(var(--radius-xl)-1px)]\"],\n\t\t\t\tfull: [\"rounded-full\"],\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"w-6\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"px-3\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"w-7\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"px-3.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"w-8\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"px-4\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"w-9\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"px-4.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"w-10\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"px-5\",\n\t\t\t},\n\t\t],\n\t\tdefaultVariants: {\n\t\t\tvariant: \"surface\",\n\t\t\tsize: \"md\",\n\t\t\ticon: false,\n\t\t},\n\t},\n)\n","import * as RadixTabs from \"@radix-ui/react-tabs\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef, useMemo } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { SegmentedTabsListContext } from \"./context\"\nimport { segmentedTabsListCva } from \"./cva\"\nimport type { SegmentedTabsVariantProps } from \"./typings\"\n\nexport interface SegmentedTabsListProps extends RadixTabs.TabsListProps, SegmentedTabsVariantProps {}\n\nexport const SegmentedTabsList = forwardRef<HTMLDivElement, SegmentedTabsListProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tchildren,\n\t\tclassName,\n\t\tsize = \"md\",\n\t\tvariant = \"surface\",\n\t\tradius = providerContext.radius,\n\t\taccentColor = providerContext.accentColor,\n\t\t...rest\n\t} = props\n\n\tconst contextValue = useMemo(\n\t\t() => ({\n\t\t\tsize,\n\t\t\tvariant,\n\t\t\tradius,\n\t\t}),\n\t\t[radius, size, variant],\n\t)\n\n\treturn (\n\t\t<RadixTabs.List\n\t\t\tref={ref}\n\t\t\tclassName={cx(segmentedTabsListCva({ size, variant }), radiusCva({ radius, maxLarge: false }), className)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<SegmentedTabsListContext.Provider value={contextValue}>{children}</SegmentedTabsListContext.Provider>\n\t\t</RadixTabs.List>\n\t)\n})\nSegmentedTabsList.displayName = \"TabsList\"\n","import * as RadixTabs from \"@radix-ui/react-tabs\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nexport interface SegmentedTabsRootProps extends RadixTabs.TabsProps {}\n\nexport const SegmentedTabsRoot = forwardRef<HTMLDivElement, SegmentedTabsRootProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn <RadixTabs.Root ref={ref} className={cx(\"flex flex-col\", className)} {...rest} />\n})\nSegmentedTabsRoot.displayName = \"TabsRoot\"\n","import * as RadixTabs from \"@radix-ui/react-tabs\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef, use } from \"react\"\n\nimport { SegmentedTabsListContext } from \"./context\"\nimport { segmentedTabsTriggerCva } from \"./cva\"\n\nexport interface SegmentedTabsTriggerProps extends RadixTabs.TabsTriggerProps {}\n\nexport const SegmentedTabsTrigger = forwardRef<HTMLButtonElement, SegmentedTabsTriggerProps>((props, ref) => {\n\tconst { className, children, ...rest } = props\n\n\tconst { size, radius, variant } = use(SegmentedTabsListContext)\n\n\treturn (\n\t\t<RadixTabs.Trigger\n\t\t\tref={ref}\n\t\t\tclassName={cx(segmentedTabsTriggerCva({ size, radius, variant }), className)}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{children}\n\t\t</RadixTabs.Trigger>\n\t)\n})\nSegmentedTabsTrigger.displayName = \"TabsTrigger\"\n","import * as RadixTabs from \"@radix-ui/react-tabs\"\n\nimport { SegmentedTabsList } from \"./List\"\nimport { SegmentedTabsRoot } from \"./Root\"\nimport { SegmentedTabsTrigger } from \"./Trigger\"\n\nexport * from \"./List\"\nexport * from \"./Root\"\nexport * from \"./Trigger\"\nexport * from \"./typings\"\n\nexport const SegmentedTabs = {\n\tRoot: SegmentedTabsRoot,\n\tList: SegmentedTabsList,\n\tTrigger: SegmentedTabsTrigger,\n\tContent: RadixTabs.Content,\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const separator = cva([\"shrink-0\", \"bg-(--accent-6)\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [],\n\t\t\tsm: [],\n\t\t\tmd: [],\n\t\t\tlg: [],\n\t\t\txl: [],\n\t\t\tfull: [],\n\t\t},\n\t\torientation: {\n\t\t\thorizontal: [\"h-px\"],\n\t\t\tvertical: [\"w-px\"],\n\t\t},\n\t},\n\tcompoundVariants: [\n\t\t{\n\t\t\tsize: \"xs\",\n\t\t\torientation: \"horizontal\",\n\t\t\tclass: [\"w-4\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"sm\",\n\t\t\torientation: \"horizontal\",\n\t\t\tclass: [\"w-6\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"md\",\n\t\t\torientation: \"horizontal\",\n\t\t\tclass: [\"w-10\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"lg\",\n\t\t\torientation: \"horizontal\",\n\t\t\tclass: [\"w-16\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"xl\",\n\t\t\torientation: \"horizontal\",\n\t\t\tclass: [\"w-24\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"full\",\n\t\t\torientation: \"horizontal\",\n\t\t\tclass: [\"w-full\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"xs\",\n\t\t\torientation: \"vertical\",\n\t\t\tclass: [\"h-4\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"sm\",\n\t\t\torientation: \"vertical\",\n\t\t\tclass: [\"h-6\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"md\",\n\t\t\torientation: \"vertical\",\n\t\t\tclass: [\"h-10\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"lg\",\n\t\t\torientation: \"vertical\",\n\t\t\tclass: [\"h-16\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"xl\",\n\t\t\torientation: \"vertical\",\n\t\t\tclass: [\"h-24\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"full\",\n\t\t\torientation: \"vertical\",\n\t\t\tclass: [\"h-full\"],\n\t\t},\n\t],\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t\torientation: \"horizontal\",\n\t},\n})\n","import * as RadixSeparator from \"@radix-ui/react-separator\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { separator } from \"./cva\"\nimport type { SeparatorVariantProps } from \"./typings\"\n\ninterface SeparatorProps extends RadixSeparator.SeparatorProps, SeparatorVariantProps {}\n\nexport const Separator = forwardRef<HTMLDivElement, SeparatorProps>((props, ref) => {\n\tconst { className, accentColor = \"base\", orientation, size, ...rest } = props\n\n\treturn (\n\t\t<RadixSeparator.Root\n\t\t\tclassName={cx(separator({ orientation, size }), className)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\tref={ref}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nSeparator.displayName = \"Separator\"\n","import { cva } from \"class-variance-authority\"\n\nexport const sliderRootCva = cva([\"relative\", \"select-none\", \"touch-none\", \"flex\", \"items-center\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [],\n\t\t\tsm: [],\n\t\t\tmd: [],\n\t\t\tlg: [],\n\t\t\txl: [],\n\t\t},\n\t\tvariant: {\n\t\t\tsurface: [],\n\t\t\tsoft: [],\n\t\t},\n\t\torientation: {\n\t\t\thorizontal: [\"flex-row\"],\n\t\t\tvertical: [\"flex-col\"],\n\t\t},\n\t},\n\tcompoundVariants: [\n\t\t// horizontal\n\t\t{\n\t\t\torientation: \"horizontal\",\n\t\t\tsize: \"xs\",\n\t\t\tclassName: [\"h-4\"],\n\t\t},\n\t\t{\n\t\t\torientation: \"horizontal\",\n\t\t\tsize: \"sm\",\n\t\t\tclassName: [\"h-5\"],\n\t\t},\n\t\t{\n\t\t\torientation: \"horizontal\",\n\t\t\tsize: \"md\",\n\t\t\tclassName: [\"h-6\"],\n\t\t},\n\t\t{\n\t\t\torientation: \"horizontal\",\n\t\t\tsize: \"lg\",\n\t\t\tclassName: [\"h-7\"],\n\t\t},\n\t\t{\n\t\t\torientation: \"horizontal\",\n\t\t\tsize: \"xl\",\n\t\t\tclassName: [\"h-8\"],\n\t\t},\n\t\t// vertical\n\t\t{\n\t\t\torientation: \"vertical\",\n\t\t\tsize: \"xs\",\n\t\t\tclassName: [\"w-4\"],\n\t\t},\n\t\t{\n\t\t\torientation: \"vertical\",\n\t\t\tsize: \"sm\",\n\t\t\tclassName: [\"w-5\"],\n\t\t},\n\t\t{\n\t\t\torientation: \"vertical\",\n\t\t\tsize: \"md\",\n\t\t\tclassName: [\"w-6\"],\n\t\t},\n\t\t{\n\t\t\torientation: \"vertical\",\n\t\t\tsize: \"lg\",\n\t\t\tclassName: [\"w-7\"],\n\t\t},\n\t\t{\n\t\t\torientation: \"vertical\",\n\t\t\tsize: \"xl\",\n\t\t\tclassName: [\"w-8\"],\n\t\t},\n\t],\n})\n\nexport const sliderTrackCva = cva(\n\t[\n\t\t\"overflow-hidden\",\n\t\t\"relative\",\n\t\t\"grow\",\n\t\t\"rounded-[inherit]\",\n\n\t\t\"select-none\",\n\n\t\t\"data-disabled:opacity-50\",\n\t\t\"disabled:pointer-events-none\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [],\n\t\t\t\tsm: [],\n\t\t\t\tmd: [],\n\t\t\t\tlg: [],\n\t\t\t\txl: [],\n\t\t\t},\n\t\t\tvariant: {\n\t\t\t\tsurface: [\"bg-(--base-a3)\", \"inset-ring\", \"inset-ring-(--base-a6)\"],\n\t\t\t\tsoft: [\"bg-(--base-a4)\"],\n\t\t\t},\n\t\t\torientation: {\n\t\t\t\thorizontal: [],\n\t\t\t\tvertical: [],\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t// horizontal\n\t\t\t{\n\t\t\t\torientation: \"horizontal\",\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclassName: [\"h-1.5\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\torientation: \"horizontal\",\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclassName: [\"h-2\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\torientation: \"horizontal\",\n\t\t\t\tsize: \"md\",\n\t\t\t\tclassName: [\"h-2.5\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\torientation: \"horizontal\",\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclassName: [\"h-3\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\torientation: \"horizontal\",\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclassName: [\"h-3.5\"],\n\t\t\t},\n\t\t\t// vertical\n\t\t\t{\n\t\t\t\torientation: \"vertical\",\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclassName: [\"w-1.5\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\torientation: \"vertical\",\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclassName: [\"w-2\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\torientation: \"vertical\",\n\t\t\t\tsize: \"md\",\n\t\t\t\tclassName: [\"w-2.5\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\torientation: \"vertical\",\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclassName: [\"w-3\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\torientation: \"vertical\",\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclassName: [\"w-3.5\"],\n\t\t\t},\n\t\t],\n\t},\n)\n\nexport const sliderRangeCva = cva(\n\t[\"absolute\", \"rounded-[inherit]\", \"data-disabled:opacity-50\", \"disabled:pointer-events-none\"],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [],\n\t\t\t\tsm: [],\n\t\t\t\tmd: [],\n\t\t\t\tlg: [],\n\t\t\t\txl: [],\n\t\t\t},\n\t\t\tvariant: {\n\t\t\t\tsurface: [\"inset-ring\", \"inset-ring-(--base-a5)\", \"bg-(--accent-track)\"],\n\t\t\t\tsoft: [\"bg-(--accent-8)\"],\n\t\t\t},\n\t\t\torientation: {\n\t\t\t\thorizontal: [\"h-full\"],\n\t\t\t\tvertical: [\"w-full\"],\n\t\t\t},\n\t\t},\n\t},\n)\n\nexport const sliderThumbCva = cva(\n\t[\n\t\t\"block\",\n\t\t\"shrink-0\",\n\n\t\t\"bg-(--accent-contrast)\",\n\t\t\"inset-ring\",\n\t\t\"inset-ring-(--base-a6)\",\n\n\t\t\"disabled:pointer-events-none\",\n\t\t\"dark:data-disabled:brightness-50\",\n\n\t\t\"focus:outline-none\",\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-offset-1\",\n\t\t\"focus-visible:outline-(--accent-8)\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"size-4\"],\n\t\t\t\tsm: [\"size-5\"],\n\t\t\t\tmd: [\"size-6\"],\n\t\t\t\tlg: [\"size-7\"],\n\t\t\t\txl: [\"size-8\"],\n\t\t\t},\n\t\t\tvariant: {\n\t\t\t\tsurface: [],\n\t\t\t\tsoft: [],\n\t\t\t},\n\t\t},\n\t},\n)\n","import * as RadixSlider from \"@radix-ui/react-slider\"\nimport { cx } from \"class-variance-authority\"\nimport { memo } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { sliderRangeCva, sliderRootCva, sliderThumbCva, sliderTrackCva } from \"./cva\"\nimport type { SliderVariantProps } from \"./typings\"\n\nexport interface SliderRootProps extends RadixSlider.SliderProps, SliderVariantProps {}\n\nexport const Slider = memo<SliderRootProps>((props) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tsize = \"md\",\n\t\torientation = \"horizontal\",\n\t\taccentColor = providerContext.accentColor,\n\t\tradius = providerContext.radius,\n\t\tvariant = \"surface\",\n\t\ttabIndex,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<RadixSlider.Root\n\t\t\tclassName={cx(\n\t\t\t\tsliderRootCva({ size, variant, orientation }),\n\t\t\t\tradiusCva({ radius, maxLarge: false }),\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\torientation={orientation}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<RadixSlider.Track className={sliderTrackCva({ size, variant, orientation })}>\n\t\t\t\t<RadixSlider.Range className={sliderRangeCva({ size, variant, orientation })} />\n\t\t\t</RadixSlider.Track>\n\t\t\t{(props.value ?? rest.defaultValue ?? []).map((value, index) => (\n\t\t\t\t<RadixSlider.Thumb\n\t\t\t\t\tkey={`${index}-${value}`}\n\t\t\t\t\tclassName={cx(sliderThumbCva({ size, variant }), radiusCva({ radius, maxLarge: false }))}\n\t\t\t\t\t{...(tabIndex !== undefined ? { tabIndex } : undefined)}\n\t\t\t\t/>\n\t\t\t))}\n\t\t</RadixSlider.Root>\n\t)\n})\nSlider.displayName = \"Slider\"\n","import { memo } from \"react\"\n\nexport const Spinner = memo(() => {\n\treturn <div className=\"size-6 animate-spin rounded-full border-2 border-(--base-a12) border-b-transparent\" />\n})\n\nSpinner.displayName = \"Spinner\"\n","import { createContext } from \"react\"\n\nimport type { ComponentRadius } from \"../Provider\"\nimport type { SwitchSize } from \"./typings\"\n\ninterface ISwitchContext {\n\tsize: SwitchSize\n\tradius: ComponentRadius\n}\n\nexport const SwitchContext = createContext({} as ISwitchContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const switchRoot = cva(\n\t[\n\t\t\"shrink-0\",\n\n\t\t// select\n\t\t\"select-none\",\n\t\t\"cursor-pointer\",\n\n\t\t// focus\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-offset-2\",\n\t\t\"focus-visible:outline-(--accent-a8)\",\n\n\t\t// ring\n\t\t\"inset-ring\",\n\t\t\"inset-ring-(--base-a4)\",\n\t\t\"data-[state=checked]:inset-ring-(--accent-track)\",\n\n\t\t// bg\n\t\t\"bg-(--base-4)\",\n\t\t\"data-[state=checked]:bg-(--accent-track)\",\n\n\t\t\"transition-[background,color,box-shadow]\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"h-6\", \"w-12\"],\n\t\t\t\tsm: [\"h-7\", \"w-14\"],\n\t\t\t\tmd: [\"h-8\", \"w-16\"],\n\t\t\t\tlg: [\"h-9\", \"w-18\"],\n\t\t\t\txl: [\"h-10\", \"w-20\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n\nexport const switchThumb = cva(\n\t[\n\t\t\"flex\",\n\t\t\"items-center\",\n\t\t\"justify-center\",\n\t\t\"transition-transform\",\n\t\t\"data-[state='unchecked']:translate-x-[1px]\",\n\t\t\"data-[state='checked']:translate-x-[calc(100%+1px)]\",\n\t\t\"bg-(--base-contrast)\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"size-[calc(calc(var(--spacing)*6)-1px)]\"],\n\t\t\t\tsm: [\"size-[calc(calc(var(--spacing)*7)-1px)]\"],\n\t\t\t\tmd: [\"size-[calc(calc(var(--spacing)*8)-1px)]\"],\n\t\t\t\tlg: [\"size-[calc(calc(var(--spacing)*9)-1px)]\"],\n\t\t\t\txl: [\"size-[calc(calc(var(--spacing)*10)-1px)]\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n","import * as RadixSwitch from \"@radix-ui/react-switch\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef, memo } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { SwitchContext } from \"./context\"\nimport { switchRoot } from \"./cva\"\nimport type { SwitchVariantProps } from \"./typings\"\n\nexport interface SwitchRootProps extends RadixSwitch.SwitchProps, SwitchVariantProps {}\n\nexport const SwitchRoot = memo(\n\tforwardRef<HTMLButtonElement, SwitchRootProps>((props, ref) => {\n\t\tconst providerContext = useProvider()\n\t\tconst {\n\t\t\tclassName,\n\t\t\tsize = \"md\",\n\t\t\tchildren,\n\t\t\tradius = providerContext.radius,\n\t\t\taccentColor = providerContext.accentColor,\n\t\t\t...rest\n\t\t} = props\n\n\t\treturn (\n\t\t\t<RadixSwitch.Root\n\t\t\t\tclassName={cx(switchRoot({ size }), radiusCva({ radius, maxLarge: false }), className)}\n\t\t\t\tref={ref}\n\t\t\t\tdata-accent-color={accentColor}\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t<SwitchContext.Provider value={{ size, radius }}>{children}</SwitchContext.Provider>\n\t\t\t</RadixSwitch.Root>\n\t\t)\n\t}),\n)\n","import * as RadixSwitch from \"@radix-ui/react-switch\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef, memo, useContext } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { SwitchContext } from \"./context\"\nimport { switchThumb } from \"./cva\"\n\nexport interface SwitchThumbProps extends RadixSwitch.SwitchThumbProps {}\n\nexport const SwitchThumb = memo(\n\tforwardRef<HTMLSpanElement, SwitchThumbProps>((props, ref) => {\n\t\tconst { className, ...rest } = props\n\n\t\tconst { size, radius } = useContext(SwitchContext)\n\n\t\treturn (\n\t\t\t<RadixSwitch.Thumb\n\t\t\t\tclassName={cx(switchThumb({ size }), radiusCva({ radius, maxLarge: false }), className)}\n\t\t\t\tref={ref}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t)\n\t}),\n)\n","import { SwitchRoot } from \"./Root\"\nimport { SwitchThumb } from \"./Thumb\"\n\nexport * from \"./Root\"\nexport * from \"./Thumb\"\nexport * from \"./typings\"\n\nexport const Switch = {\n\tRoot: SwitchRoot,\n\tThumb: SwitchThumb,\n}\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nexport interface TableBodyProps extends PropsWithoutRef<ComponentProps<\"tbody\">> {}\n\nexport const TableBody = forwardRef<HTMLTableSectionElement, TableBodyProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn <tbody ref={ref} className={cx(className)} {...rest} />\n})\nTableBody.displayName = \"TableBody\"\n","import { createContext } from \"react\"\n\nimport { TableBorder, TableCellSize, TableVariant } from \"./typings\"\n\ninterface ITableContext {\n\tsize: TableCellSize\n\tborder: TableBorder\n\tvariant: TableVariant\n}\n\nexport const TableContext = createContext({} as ITableContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const tableRootCva = cva([\"border-collapse text-left\"], {\n\tvariants: {\n\t\tvariant: {\n\t\t\tghost: [],\n\t\t\tsurface: [\"border-1\", \"border-(--accent-a6)\", \"box-border\", \"overflow-hidden\", \"bg-(--accent-a2)\"],\n\t\t},\n\t\tsize: {\n\t\t\txs: [\"text-xs\"],\n\t\t\tsm: [\"text-sm\"],\n\t\t\tmd: [\"text-md\"],\n\t\t\tlg: [\"text-lg\"],\n\t\t\txl: [\"text-xl\"],\n\t\t},\n\t},\n})\n\nexport const tableCellCva = cva([], {\n\tvariants: {\n\t\tvariant: {\n\t\t\tsurface: [],\n\t\t\tghost: [],\n\t\t},\n\t\tcell: {\n\t\t\ttrue: [],\n\t\t\tfalse: [],\n\t\t},\n\t\tsize: {\n\t\t\txs: [\"p-2\"],\n\t\t\tsm: [\"p-4\"],\n\t\t\tmd: [\"p-6\"],\n\t\t\tlg: [\"p-8\"],\n\t\t\txl: [\"p-10\"],\n\t\t},\n\t\tborder: {\n\t\t\tgrid: [\"box-border\", \"border\", \"border-(--accent-a6)\"],\n\t\t\trow: [\"box-border\", \"border-b\", \"border-(--accent-a6)\"],\n\t\t\tcol: [\"box-border\", \"border-x\", \"border-(--accent-a6)\"],\n\t\t\tnone: [],\n\t\t},\n\t},\n})\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef, useContext } from \"react\"\n\nimport { TableContext } from \"./context\"\nimport { tableCellCva } from \"./cva\"\n\nexport interface TableCellProps extends PropsWithoutRef<ComponentProps<\"td\">> {}\n\nexport const TableCell = forwardRef<HTMLTableCellElement, TableCellProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\tconst { size, border, variant } = useContext(TableContext)\n\n\treturn <td ref={ref} className={cx(tableCellCva({ size, border, cell: true, variant }), className)} {...rest} />\n})\nTableCell.displayName = \"TableCell\"\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef, useContext } from \"react\"\n\nimport { TableContext } from \"./context\"\nimport { tableCellCva } from \"./cva\"\n\nexport interface TableColumnHeaderCellProps extends PropsWithoutRef<ComponentProps<\"th\">> {}\n\nexport const TableColumnHeaderCell = forwardRef<HTMLTableHeaderCellElement, TableColumnHeaderCellProps>(\n\t(props, ref) => {\n\t\tconst { className, ...rest } = props\n\t\tconst { size, border, variant } = useContext(TableContext)\n\n\t\treturn (\n\t\t\t<th ref={ref} className={cx(tableCellCva({ size, border, cell: false, variant }), className)} {...rest} />\n\t\t)\n\t},\n)\nTableColumnHeaderCell.displayName = \"TableColumnHeaderCell\"\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nexport interface TableFooterProps extends PropsWithoutRef<ComponentProps<\"tfoot\">> {}\n\nexport const TableFooter = forwardRef<HTMLTableSectionElement, TableFooterProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn <tfoot ref={ref} className={cx(className)} {...rest} />\n})\nTableFooter.displayName = \"TableFooter\"\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nexport interface TableHeaderProps extends PropsWithoutRef<ComponentProps<\"thead\">> {}\n\nexport const TableHeader = forwardRef<HTMLTableSectionElement, TableHeaderProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn <thead ref={ref} className={cx(className)} {...rest} />\n})\nTableHeader.displayName = \"TableHeader\"\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { TableContext } from \"./context\"\nimport { tableRootCva } from \"./cva\"\nimport type { TableVariantProps } from \"./typings\"\n\nexport interface TableRootProps extends Omit<PropsWithoutRef<ComponentProps<\"table\">>, \"border\">, TableVariantProps {}\n\nexport const TableRoot = forwardRef<HTMLTableElement, TableRootProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst { children, className, size = \"md\", border = \"row\", accentColor = \"base\", variant = \"ghost\", ...rest } = props\n\n\treturn (\n\t\t<table\n\t\t\tref={ref}\n\t\t\tclassName={cx(\n\t\t\t\ttableRootCva({ size, variant }),\n\t\t\t\tradiusCva({ radius: providerContext.radius, maxLarge: true }),\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<TableContext.Provider value={{ size, border, variant }}>{children}</TableContext.Provider>\n\t\t</table>\n\t)\n})\nTableRoot.displayName = \"TableRoot\"\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nexport interface TableRowProps extends PropsWithoutRef<ComponentProps<\"tr\">> {}\n\nexport const TableRow = forwardRef<HTMLTableRowElement, TableRowProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn <tr ref={ref} className={cx(className)} {...rest} />\n})\nTableRow.displayName = \"TableRow\"\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef, useContext } from \"react\"\n\nimport { TableContext } from \"./context\"\nimport { tableCellCva } from \"./cva\"\n\nexport interface TableRowHeaderCellProps extends PropsWithoutRef<ComponentProps<\"th\">> {}\n\nexport const TableRowHeaderCell = forwardRef<HTMLTableHeaderCellElement, TableRowHeaderCellProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\tconst { size, border, variant } = useContext(TableContext)\n\n\treturn <th ref={ref} className={cx(tableCellCva({ size, border, cell: true, variant }), className)} {...rest} />\n})\nTableRowHeaderCell.displayName = \"TableRow\"\n","import { TableBody } from \"./Body\"\nimport { TableCell } from \"./Cell\"\nimport { TableColumnHeaderCell } from \"./ColumnHeaderCell\"\nimport { TableFooter } from \"./Footer\"\nimport { TableHeader } from \"./Header\"\nimport { TableRoot } from \"./Root\"\nimport { TableRow } from \"./Row\"\nimport { TableRowHeaderCell } from \"./RowHeaderCell\"\n\nexport * from \"./Body\"\nexport * from \"./Cell\"\nexport * from \"./ColumnHeaderCell\"\nexport * from \"./Footer\"\nexport * from \"./Header\"\nexport * from \"./Root\"\nexport * from \"./Row\"\nexport * from \"./RowHeaderCell\"\nexport * from \"./typings\"\n\nexport const Table = {\n\tRoot: TableRoot,\n\tHeader: TableHeader,\n\tBody: TableBody,\n\tFooter: TableFooter,\n\tRow: TableRow,\n\tCell: TableCell,\n\tRowHeaderCell: TableRowHeaderCell,\n\tColumnHeaderCell: TableColumnHeaderCell,\n}\n","import { createContext } from \"react\"\n\nimport type { TabsSize } from \"./typings\"\n\nexport interface ITabsListContext {\n\tsize: TabsSize\n}\n\nexport const TabsListContext = createContext({} as ITabsListContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const tabsListCva = cva([\"flex\", \"border-box\", \"inset-shadow-[0_-1px_0_0_var(--base-a6)]\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"h-6\", \"text-xs\"],\n\t\t\tsm: [\"h-7\", \"text-sm\"],\n\t\t\tmd: [\"h-8\", \"text-base\"],\n\t\t\tlg: [\"h-9\", \"text-lg\"],\n\t\t\txl: [\"h-10\", \"text-xl\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n})\n\nexport const tabsTriggerCva = cva(\n\t[\n\t\t\"select-none\",\n\t\t\"shrink-0\",\n\t\t\"cursor-pointer\",\n\t\t\"transition-colors\",\n\t\t\"relative\",\n\t\t\"h-full\",\n\t\t\"flex\",\n\t\t\"items-center\",\n\t\t\"justify-center\",\n\t\t\"text-(--base-a11)\",\n\t\t\"hover:text-(--base-a12)\",\n\t\t\"data-[state=active]:text-(--base-a12)\",\n\t\t\"data-[state=active]:before:absolute\",\n\t\t\"data-[state=active]:before:inset-x-0\",\n\t\t\"data-[state=active]:before:bottom-0\",\n\t\t\"data-[state=active]:before:h-[2px]\",\n\t\t\"data-[state=active]:before:bg-(--accent-indicator)\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"px-3\", \"gap-1.5\"],\n\t\t\t\tsm: [\"px-3.5\", \"gap-1.75\"],\n\t\t\t\tmd: [\"px-4\", \"gap-2\"],\n\t\t\t\tlg: [\"px-4.5\", \"gap-2.25\"],\n\t\t\t\txl: [\"px-5\", \"gap-2.5\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n","import * as RadixTabs from \"@radix-ui/react-tabs\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { useProvider } from \"../Provider\"\nimport { TabsListContext } from \"./context\"\nimport { tabsListCva } from \"./cva\"\nimport type { TabsVariantProps } from \"./typings\"\n\nexport interface TabsListProps extends RadixTabs.TabsListProps, TabsVariantProps {}\n\nexport const TabsList = forwardRef<HTMLDivElement, TabsListProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst { children, className, size = \"md\", accentColor = providerContext.accentColor, ...rest } = props\n\n\treturn (\n\t\t<RadixTabs.List\n\t\t\tref={ref}\n\t\t\tclassName={cx(tabsListCva({ size }), className)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<TabsListContext.Provider value={{ size }}>{children}</TabsListContext.Provider>\n\t\t</RadixTabs.List>\n\t)\n})\nTabsList.displayName = \"TabsList\"\n","import * as RadixTabs from \"@radix-ui/react-tabs\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nexport interface TabsRootProps extends RadixTabs.TabsProps {}\n\nexport const TabsRoot = forwardRef<HTMLDivElement, TabsRootProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn <RadixTabs.Root ref={ref} className={cx(\"flex flex-col\", className)} {...rest} />\n})\nTabsRoot.displayName = \"TabsRoot\"\n","import { useContext } from \"react\"\n\nimport { TabsListContext } from \"./context\"\n\nexport const useTabsList = () => {\n\tconst tabsListContext = useContext(TabsListContext)\n\n\tif (!tabsListContext) {\n\t\tthrow new Error(\"useTabsList must be used within a TabsList component\")\n\t}\n\n\treturn tabsListContext\n}\n","import * as RadixTabs from \"@radix-ui/react-tabs\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { tabsTriggerCva } from \"./cva\"\nimport { useTabsList } from \"./hooks\"\n\nexport interface TabsTriggerProps extends RadixTabs.TabsTriggerProps {}\n\nexport const TabsTrigger = forwardRef<HTMLButtonElement, TabsTriggerProps>((props, ref) => {\n\tconst { className, children, ...rest } = props\n\n\tconst { size } = useTabsList()\n\n\treturn (\n\t\t<RadixTabs.Trigger ref={ref} className={cx(tabsTriggerCva({ size }), className)} {...rest}>\n\t\t\t{children}\n\t\t</RadixTabs.Trigger>\n\t)\n})\nTabsTrigger.displayName = \"TabsTrigger\"\n","import * as RadixTabs from \"@radix-ui/react-tabs\"\n\nimport { TabsList } from \"./List\"\nimport { TabsRoot } from \"./Root\"\nimport { TabsTrigger } from \"./Trigger\"\n\nexport * from \"./List\"\nexport * from \"./Root\"\nexport * from \"./Trigger\"\nexport * from \"./typings\"\n\nexport const Tabs = {\n\tRoot: TabsRoot,\n\tList: TabsList,\n\tTrigger: TabsTrigger,\n\tContent: RadixTabs.Content,\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const textCva = cva([], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"text-xs\"],\n\t\t\tsm: [\"text-sm\"],\n\t\t\tmd: [\"text-base\"],\n\t\t\tlg: [\"text-lg\"],\n\t\t\txl: [\"text-xl\"],\n\t\t\t\"2xl\": [\"text-2xl\"],\n\t\t\t\"3xl\": [\"text-3xl\"],\n\t\t\t\"4xl\": [\"text-4xl\"],\n\t\t\t\"5xl\": [\"text-5xl\"],\n\t\t\t\"6xl\": [\"text-6xl\"],\n\t\t\t\"7xl\": [\"text-7xl\"],\n\t\t\t\"8xl\": [\"text-8xl\"],\n\t\t\t\"9xl\": [\"text-9xl\"],\n\t\t},\n\t\tweight: {\n\t\t\tlight: [\"font-light\"],\n\t\t\tregular: [\"font-normal\"],\n\t\t\tmedium: [\"font-medium\"],\n\t\t\tbold: [\"font-bold\"],\n\t\t},\n\t\talign: {\n\t\t\tleft: [\"text-left\"],\n\t\t\tcenter: [\"text-center\"],\n\t\t\tright: [\"text-right\"],\n\t\t},\n\t},\n})\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nimport { textCva } from \"./cva\"\nimport type { TextVariantProps } from \"./typings\"\n\nexport interface TextProps extends PropsWithoutRef<ComponentProps<\"span\">>, TextVariantProps {}\n\nexport const Text = forwardRef<HTMLSpanElement, TextProps>((props, ref) => {\n\tconst { className, size, weight, align, accentColor, highContrast = false, ...rest } = props\n\treturn (\n\t\t<span\n\t\t\tref={ref}\n\t\t\tclassName={cx(\n\t\t\t\ttextCva({ size, weight, align }),\n\t\t\t\t{\n\t\t\t\t\t\"text-(--accent-a11)\": !!accentColor,\n\t\t\t\t\t\"text-(--accent-a12)\": highContrast,\n\t\t\t\t},\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nText.displayName = \"Text\"\n","import { cva } from \"class-variance-authority\"\n\nexport const textAreaCva = cva(\n\t[\n\t\t\"focus:outline-(--accent-a8)\",\n\t\t\"focus:outline-2\",\n\t\t\"focus:-outline-offset-1\",\n\t\t\"disabled:opacity-50\",\n\t\t\"disabled:pointer-events-none\",\n\t\t\"[scrollbar-width:thin]\",\n\t\t\"[scrollbar-color:var(--base-6)_transparent]\",\n\n\t\t\"transition-[background,color,box-shadow]\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\toutline: [\n\t\t\t\t\t\"placeholder-(--base-a9)\",\n\t\t\t\t\t\"selection:bg-(--accent-a5)\",\n\t\t\t\t\t\"inset-ring\",\n\t\t\t\t\t\"inset-ring-(--base-a7)\",\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"text-(--base-12)\",\n\t\t\t\t],\n\t\t\t\tsurface: [\n\t\t\t\t\t\"placeholder-(--accent-12)\",\n\t\t\t\t\t\"placeholder:opacity-60\",\n\t\t\t\t\t\"selection:bg-(--accent-a5)\",\n\t\t\t\t\t\"inset-ring\",\n\t\t\t\t\t\"inset-ring-(--accent-a7)\",\n\t\t\t\t\t\"bg-(--accent-surface)\",\n\t\t\t\t\t\"text-(--accent-a12)\",\n\t\t\t\t],\n\t\t\t\tsoft: [\n\t\t\t\t\t\"bg-(--accent-a3)\",\n\t\t\t\t\t\"text-(--accent-12)\",\n\t\t\t\t\t\"placeholder-(--accent-12)\",\n\t\t\t\t\t\"placeholder:opacity-60\",\n\t\t\t\t\t\"selection:bg-(--accent-a5)\",\n\t\t\t\t],\n\t\t\t\tghost: [\"placeholder-(--base-a9)\", \"selection:bg-(--accent-a5)\", \"bg-transparent\", \"text-(--base-12)\"],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"p-3\", \"text-xs\"],\n\t\t\t\tsm: [\"p-3.5\", \"text-sm\"],\n\t\t\t\tmd: [\"p-4\", \"text-base\"],\n\t\t\t\tlg: [\"p-4.5\", \"text-lg\"],\n\t\t\t\txl: [\"p-5\", \"text-xl\"],\n\t\t\t},\n\t\t\tresize: {\n\t\t\t\tnone: [\"resize-none\"],\n\t\t\t\tvertical: [\"resize-y\"],\n\t\t\t\thorizontal: [\"resize-x\"],\n\t\t\t\tboth: [\"resize\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tvariant: \"outline\",\n\t\t\tsize: \"md\",\n\t\t\tresize: \"none\",\n\t\t},\n\t},\n)\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { textAreaCva } from \"./cva\"\nimport type { TextAreaVariantProps } from \"./typings\"\n\nexport interface TextAreaProps extends PropsWithoutRef<ComponentProps<\"textarea\">>, TextAreaVariantProps {}\n\nexport const TextArea = forwardRef<HTMLTextAreaElement, TextAreaProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tsize,\n\t\tvariant,\n\t\tradius = providerContext.radius,\n\t\taccentColor = providerContext.accentColor,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<textarea\n\t\t\tclassName={cx(textAreaCva({ size, variant }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\tref={ref}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nTextArea.displayName = \"TextArea\"\n","import { cva } from \"class-variance-authority\"\n\nexport const toastCva = cva(\n\t[\n\t\t\"shadow-md\",\n\t\t\"duration-200\",\n\t\t\"data-[state='open']:animate-in\",\n\t\t\"data-[state='open']:fade-in-0\",\n\t\t\"data-[state='open']:zoom-in-95\",\n\t\t\"data-[state='closed']:animate-out\",\n\t\t\"data-[state='closed']:fade-out-0\",\n\t\t\"data-[state='closed']:zoom-out-95\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsurface: [\"bg-(--accent-1)\", \"text-(--accent-11)\", \"ring-1\", \"ring-inset\", \"ring-(--accent-6)\"],\n\t\t\t\tsoft: [\"bg-(--accent-1)\", \"text-(--accent-11)\"],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"text-xs\", \"p-2\"],\n\t\t\t\tsm: [\"text-sm\", \"p-3\"],\n\t\t\t\tmd: [\"text-base\", \"p-4\"],\n\t\t\t\tlg: [\"text-lg\", \"p-5\"],\n\t\t\t\txl: [\"text-xl\", \"p-6\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tvariant: \"surface\",\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n","import * as RadixToast from \"@radix-ui/react-toast\"\nimport { cx } from \"class-variance-authority\"\nimport { FC, forwardRef, memo, useCallback, useState } from \"react\"\nimport { HiX } from \"react-icons/hi\"\n\nimport { IconButton } from \"../Buttons\"\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { toastCva } from \"./cva\"\nimport type { ToastProps } from \"./typings\"\n\nconst _Toast = forwardRef<HTMLLIElement, ToastProps>(function Toast(props, ref) {\n\tconst { radius, ...restProviderContext } = useProvider()\n\tconst {\n\t\ttitle,\n\t\tdescription,\n\t\ticon,\n\t\tsize = \"md\",\n\t\taccentColor = restProviderContext.accentColor,\n\t\tvariant,\n\t\tonClose,\n\t\tsensitivity,\n\t\taction,\n\t\t...rest\n\t} = props\n\n\tconst [open, setOpen] = useState(true)\n\n\tconst handleOpenChange = useCallback(\n\t\t(open: boolean) => {\n\t\t\tif (!open && onClose) onClose()\n\t\t\tsetOpen(open)\n\t\t},\n\t\t[onClose],\n\t)\n\n\treturn (\n\t\t<RadixToast.Root\n\t\t\tclassName={cx(\n\t\t\t\t\"flex w-max max-w-full items-center gap-4\",\n\t\t\t\ttoastCva({ size, variant }),\n\t\t\t\tradiusCva({ radius, maxLarge: true }),\n\t\t\t)}\n\t\t\tref={ref}\n\t\t\topen={open}\n\t\t\ttype={sensitivity}\n\t\t\tonOpenChange={handleOpenChange}\n\t\t\tdata-accent-color={accentColor}\n\t\t\tdata-floating-content=\"\"\n\t\t\t{...rest}\n\t\t>\n\t\t\t<div className=\"flex grow items-center gap-3\">\n\t\t\t\t{icon}\n\t\t\t\t<div className=\"flex flex-col gap-2\">\n\t\t\t\t\t<div className=\"flex flex-col\">\n\t\t\t\t\t\t<RadixToast.Title className=\"font-medium\">{title}</RadixToast.Title>\n\t\t\t\t\t\t<RadixToast.Description>{description}</RadixToast.Description>\n\t\t\t\t\t</div>\n\t\t\t\t\t{action && (\n\t\t\t\t\t\t<RadixToast.Action className=\"w-max\" altText={action.altText} asChild>\n\t\t\t\t\t\t\t{action.content}\n\t\t\t\t\t\t</RadixToast.Action>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<RadixToast.Close asChild>\n\t\t\t\t<IconButton size={size} aria-label=\"Close\" variant=\"ghost\" accentColor={accentColor}>\n\t\t\t\t\t<HiX />\n\t\t\t\t</IconButton>\n\t\t\t</RadixToast.Close>\n\t\t</RadixToast.Root>\n\t)\n})\n\nexport const Toast: FC<ToastProps> = memo(_Toast)\n","import { createContext, useContext } from \"react\"\n\nimport { IToastContext } from \"./typings\"\n\nexport const ToastContext = createContext({} as IToastContext)\n\nexport const useToast = (): IToastContext => {\n\tconst context = useContext(ToastContext)\n\n\tif (!context) {\n\t\tthrow new Error(\"useToast must be used within a ToastProvider\")\n\t}\n\n\treturn context\n}\n","import { ToastProvider as RadixToastProvider, ToastViewport } from \"@radix-ui/react-toast\"\nimport { cx } from \"class-variance-authority\"\nimport { FC, memo, useCallback, useEffect, useMemo, useState } from \"react\"\n\nimport { Toast } from \"./Toast\"\nimport { ToastContext } from \"./ToastContext\"\nimport type { IToastContext, SimpleToastProps, ToastContextProviderProps, ToastProps } from \"./typings\"\n\ninterface ToastArgs extends ToastProps {\n\tid: string\n\ttimeout: NodeJS.Timeout\n}\n\n// average reading speed is 240 words per minute\nconst WORDS_PER_SECOND = 240 / 60\n// 5 seconds is the minimum duration for a toast\nconst MIN_DURATION = 5000\n\nenum CloseReason {\n\tManual,\n\tTimeout,\n}\n\nconst calculatedDuration = (toast: ToastProps) => {\n\t// if the user has passed a duration valid, use that instead\n\tif (toast.duration && toast.duration >= MIN_DURATION) return toast.duration\n\n\t// count the number of words in the title and description\n\tconst words = toast.description.split(\" \").length + toast.title.split(\" \").length\n\t// calculate the duration based on the number of words and the severity\n\treturn MIN_DURATION + words / WORDS_PER_SECOND\n}\n\n/** this is a hack to allow toasts to be shown outside of components where hooks cannot be used */\n// eslint-disable-next-line react-refresh/only-export-components\nexport let unsafeShowToast: ((toastProps: ToastProps) => void) | undefined = undefined\n\n/** Toasts will be displayed in the top-right handle corner of the screen */\nexport const ToastProvider: FC<ToastContextProviderProps> = memo(function ToastContextProvider({\n\tchildren,\n\t// Use this class to change where the viewport for the toasts should be\n\tclassName,\n\thotkey,\n\t...rest\n}: ToastContextProviderProps) {\n\tconst [toasts, setToasts] = useState<ToastArgs[]>([])\n\n\tconst handleCloseToast = useCallback((id: string, reason: CloseReason, callback?: () => void) => {\n\t\tsetToasts((prevToasts) => {\n\t\t\tconst toast = prevToasts.find((toast) => toast.id === id)\n\t\t\t// clear the timeout if the toast is being closed manually\n\t\t\tif (toast && reason === CloseReason.Manual) clearTimeout(toast.timeout)\n\n\t\t\treturn prevToasts.filter((toast) => toast.id !== id)\n\t\t})\n\n\t\tif (callback) callback()\n\t}, [])\n\n\tconst toastContextValue = useMemo<IToastContext>(() => {\n\t\tlet counter = 0\n\n\t\tconst showToast = (toastProps: ToastProps) => {\n\t\t\tconst duration = calculatedDuration(toastProps)\n\t\t\tconst id = counter.toString()\n\t\t\tcounter += 1 // increment the counter so that ids are unique\n\n\t\t\t// manually close the toast after the duration has passed\n\t\t\t// this is necessary because the duration prop is reset on re-render\n\t\t\tconst pending = setTimeout(() => handleCloseToast(id, CloseReason.Timeout, toastProps.onClose), duration)\n\n\t\t\tsetToasts((prevToasts) => [...prevToasts, { ...toastProps, timeout: pending, duration, id }])\n\t\t}\n\t\tconst showPrimary = (toastProps: SimpleToastProps) => showToast(toastProps)\n\t\tconst showSuccess = (toastProps: SimpleToastProps) => showToast({ ...toastProps, accentColor: \"success\" })\n\t\tconst showError = (toastProps: SimpleToastProps) => showToast({ ...toastProps, accentColor: \"danger\" })\n\t\tconst showInfo = (toastProps: SimpleToastProps) => showToast({ ...toastProps, accentColor: \"base\" })\n\t\tconst showWarning = (toastProps: SimpleToastProps) => showToast({ ...toastProps, accentColor: \"warning\" })\n\n\t\tunsafeShowToast = showToast\n\n\t\treturn {\n\t\t\tshowToast,\n\t\t\tshowPrimary,\n\t\t\tshowSuccess,\n\t\t\tshowError,\n\t\t\tshowInfo,\n\t\t\tshowWarning,\n\t\t}\n\t}, [handleCloseToast])\n\n\t// clear all timeouts when the component unmounts\n\tuseEffect(() => {\n\t\treturn () => {\n\t\t\tfor (const { timeout } of toasts) clearTimeout(timeout)\n\t\t}\n\t\t// only run this effect when the component unmounts\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [])\n\n\treturn (\n\t\t<ToastContext.Provider value={toastContextValue}>\n\t\t\t<RadixToastProvider {...rest}>\n\t\t\t\t{children}\n\n\t\t\t\t<ToastViewport\n\t\t\t\t\tclassName={cx(\n\t\t\t\t\t\t\"fixed top-0 right-0 z-[2147483647] flex w-full max-w-md list-none flex-col items-end gap-3 overflow-x-hidden overflow-y-auto p-5 outline-none\",\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t)}\n\t\t\t\t\thotkey={hotkey}\n\t\t\t\t/>\n\n\t\t\t\t{toasts.map(({ id, onClose, ...toastProps }) => (\n\t\t\t\t\t<Toast key={id} {...toastProps} onClose={() => handleCloseToast(id, CloseReason.Manual, onClose)} />\n\t\t\t\t))}\n\t\t\t</RadixToastProvider>\n\t\t</ToastContext.Provider>\n\t)\n})\n","import { cva } from \"class-variance-authority\"\n\nexport const toggleButtonCva = cva(\n\t[\n\t\t\"flex\",\n\t\t\"items-center\",\n\t\t\"shrink-0\",\n\t\t\"justify-center\",\n\n\t\t// Selection\n\t\t\"select-none\",\n\n\t\t// Focus\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-offset-2\",\n\t\t\"focus-visible:outline-(--accent-a8)\",\n\n\t\t// Disabled\n\t\t\"disabled:opacity-50\",\n\t\t\"disabled:pointer-events-none\",\n\n\t\t\"transition-[background,color,box-shadow]\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsoft: [\n\t\t\t\t\t// text\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"data-[state=on]:text-(--accent-a12)\",\n\n\t\t\t\t\t// bg\n\t\t\t\t\t\"bg-(--accent-a3)\",\n\t\t\t\t\t\"data-[state=off]:hover:bg-(--accent-a4)\",\n\t\t\t\t\t\"data-[state=on]:bg-(--accent-a5)\",\n\t\t\t\t],\n\t\t\t\toutline: [\n\t\t\t\t\t// ring\n\t\t\t\t\t\"inset-ring\",\n\t\t\t\t\t\"inset-ring-(--accent-a4)\",\n\t\t\t\t\t\"data-[state=off]:hover:inset-ring-transparent\",\n\t\t\t\t\t\"data-[state=on]:inset-ring-transparent\",\n\n\t\t\t\t\t// text\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"data-[state=on]:text-(--accent-a12)\",\n\n\t\t\t\t\t// bg\n\t\t\t\t\t\"data-[state=off]:hover:bg-(--accent-a3)\",\n\t\t\t\t\t\"data-[state=on]:bg-(--accent-a4)\",\n\t\t\t\t],\n\t\t\t\tghost: [\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"data-[state=off]:hover:bg-(--accent-a3)\",\n\t\t\t\t\t\"data-[state=on]:bg-(--accent-a4)\",\n\t\t\t\t\t\"data-[state=on]:text-(--accent-a12)\",\n\t\t\t\t],\n\t\t\t},\n\t\t\ticon: {\n\t\t\t\ttrue: [],\n\t\t\t\tfalse: [],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"h-6\", \"text-xs\", \"gap-1.5\"],\n\t\t\t\tsm: [\"h-7\", \"text-sm\", \"gap-1.75\"],\n\t\t\t\tmd: [\"h-8\", \"text-base\", \"gap-2\"],\n\t\t\t\tlg: [\"h-9\", \"text-lg\", \"gap-2.25\"],\n\t\t\t\txl: [\"h-10\", \"text-xl\", \"gap-2.5\"],\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"w-6\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"px-3\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"w-7\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"px-3.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"w-8\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"px-4\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"w-9\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"px-4.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"w-10\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"px-5\",\n\t\t\t},\n\t\t],\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t\ticon: false,\n\t\t\tvariant: \"outline\",\n\t\t},\n\t},\n)\n","import * as Toggle from \"@radix-ui/react-toggle\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { toggleButtonCva } from \"./cva\"\nimport type { BaseToggleButtonProps } from \"./typings\"\n\nexport const BaseToggleButton = forwardRef<HTMLButtonElement, BaseToggleButtonProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tsize,\n\t\ticon,\n\t\tvariant,\n\t\tradius = providerContext.radius,\n\t\taccentColor = providerContext.accentColor,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<Toggle.Root\n\t\t\tref={ref}\n\t\t\tclassName={cx(toggleButtonCva({ size, variant, icon }), radiusCva({ radius, maxLarge: false }), className)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nBaseToggleButton.displayName = \"BaseToggleButton\"\n","import { forwardRef } from \"react\"\n\nimport { BaseToggleButton } from \"./BaseToggleButton\"\nimport type { ToggleButtonProps } from \"./typings\"\n\nexport const IconToggleButton = forwardRef<HTMLButtonElement, ToggleButtonProps>((props, ref) => {\n\treturn <BaseToggleButton ref={ref} icon {...props} />\n})\nIconToggleButton.displayName = \"IconToggleButton\"\n","import { forwardRef } from \"react\"\n\nimport { BaseToggleButton } from \"./BaseToggleButton\"\nimport type { ToggleButtonProps } from \"./typings\"\n\nexport const ToggleButton = forwardRef<HTMLButtonElement, ToggleButtonProps>((props, ref) => {\n\treturn <BaseToggleButton ref={ref} icon={false} {...props} />\n})\nToggleButton.displayName = \"ToggleButton\"\n","import { createContext } from \"react\"\n\nimport type { ComponentRadius } from \"../Provider\"\nimport type { ToggleGroupSize, ToggleGroupVariant } from \"./typings\"\n\nexport interface IToggleGroupContext {\n\tvariant: ToggleGroupVariant\n\tsize: ToggleGroupSize\n\tradius: ComponentRadius\n\taccentColor: string\n}\n\nexport const ToggleGroupContext = createContext({} as IToggleGroupContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const toggleGroupItemCva = cva(\n\t[\n\t\t\"flex\",\n\t\t\"items-center\",\n\t\t\"shrink-0\",\n\t\t\"justify-center\",\n\n\t\t// Selection\n\t\t\"select-none\",\n\n\t\t// Focus\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-offset-2\",\n\t\t\"focus-visible:outline-(--accent-a8)\",\n\n\t\t// Disabled\n\t\t\"disabled:opacity-50\",\n\t\t\"disabled:pointer-events-none\",\n\n\t\t\"transition-[background,color,box-shadow]\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsoft: [\n\t\t\t\t\t// text\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"data-[state=on]:text-(--accent-a12)\",\n\n\t\t\t\t\t// bg\n\t\t\t\t\t\"bg-(--accent-a3)\",\n\t\t\t\t\t\"data-[state=off]:hover:bg-(--accent-a4)\",\n\t\t\t\t\t\"data-[state=on]:bg-(--accent-a5)\",\n\t\t\t\t],\n\t\t\t\toutline: [\n\t\t\t\t\t// ring\n\t\t\t\t\t\"inset-ring\",\n\t\t\t\t\t\"inset-ring-(--accent-a4)\",\n\t\t\t\t\t\"data-[state=off]:hover:inset-ring-transparent\",\n\t\t\t\t\t\"data-[state=on]:inset-ring-transparent\",\n\n\t\t\t\t\t// text\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"data-[state=on]:text-(--accent-a12)\",\n\n\t\t\t\t\t// bg\n\t\t\t\t\t\"data-[state=off]:hover:bg-(--accent-a3)\",\n\t\t\t\t\t\"data-[state=on]:bg-(--accent-a4)\",\n\t\t\t\t],\n\t\t\t\tghost: [\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"data-[state=off]:hover:bg-(--accent-a3)\",\n\t\t\t\t\t\"data-[state=on]:bg-(--accent-a4)\",\n\t\t\t\t\t\"data-[state=on]:text-(--accent-a12)\",\n\t\t\t\t],\n\t\t\t},\n\t\t\ticon: {\n\t\t\t\ttrue: [],\n\t\t\t\tfalse: [],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"h-6\", \"text-xs\", \"gap-1.5\"],\n\t\t\t\tsm: [\"h-7\", \"text-sm\", \"gap-1.75\"],\n\t\t\t\tmd: [\"h-8\", \"text-base\", \"gap-2\"],\n\t\t\t\tlg: [\"h-9\", \"text-lg\", \"gap-2.25\"],\n\t\t\t\txl: [\"h-10\", \"text-xl\", \"gap-2.5\"],\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"w-6\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"px-3\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"w-7\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"px-3.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"w-8\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"px-4\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"w-9\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"px-4.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"w-10\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"px-5\",\n\t\t\t},\n\t\t],\n\t},\n)\n","import * as RadixToggleGroup from \"@radix-ui/react-toggle-group\"\nimport { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, memo, use } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { ToggleGroupContext } from \"./context\"\nimport { toggleGroupItemCva } from \"./cva\"\nimport type { ToggleGroupVariantProps } from \"./typings\"\n\nexport interface ToggleGroupBaseItemProps\n\textends ComponentPropsWithRef<typeof RadixToggleGroup.Item>,\n\t\tToggleGroupVariantProps {\n\ticon: boolean\n}\n\nexport const ToggleGroupBaseItem = memo<ToggleGroupBaseItemProps>((props) => {\n\tconst toggleGroupContext = use(ToggleGroupContext)\n\tconst {\n\t\tref,\n\t\tclassName,\n\t\ticon,\n\t\taccentColor = toggleGroupContext.accentColor,\n\t\tradius = toggleGroupContext.radius,\n\t\tvariant = toggleGroupContext.variant,\n\t\tsize = toggleGroupContext.size,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<RadixToggleGroup.Item\n\t\t\tref={ref}\n\t\t\tclassName={cx(\n\t\t\t\ttoggleGroupItemCva({ icon, variant, size }),\n\t\t\t\tradiusCva({ radius, maxLarge: false }),\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nToggleGroupBaseItem.displayName = \"ToggleGroupBaseItem\"\n","import { memo } from \"react\"\n\nimport { ToggleGroupBaseItem, ToggleGroupBaseItemProps } from \"./BaseItem\"\n\nexport interface ToggleGroupIconItemProps extends Omit<ToggleGroupBaseItemProps, \"icon\"> {}\n\nexport const ToggleGroupIconItem = memo<ToggleGroupIconItemProps>((props) => {\n\treturn <ToggleGroupBaseItem icon {...props} />\n})\nToggleGroupIconItem.displayName = \"ToggleGroupIconItem\"\n","import { memo } from \"react\"\n\nimport { ToggleGroupBaseItem, ToggleGroupBaseItemProps } from \"./BaseItem\"\n\nexport interface ToggleGroupItemProps extends Omit<ToggleGroupBaseItemProps, \"icon\"> {}\n\nexport const ToggleGroupItem = memo<ToggleGroupItemProps>((props) => {\n\treturn <ToggleGroupBaseItem icon={false} {...props} />\n})\nToggleGroupItem.displayName = \"ToggleGroupItem\"\n","import * as RadixToggleGroup from \"@radix-ui/react-toggle-group\"\nimport { ComponentPropsWithRef, memo, useMemo } from \"react\"\n\nimport { useProvider } from \"../Provider\"\nimport { ToggleGroupContext } from \"./context\"\nimport type { ToggleGroupVariantProps } from \"./typings\"\n\nexport type ToggleGroupRootProps = ComponentPropsWithRef<typeof RadixToggleGroup.Root> & ToggleGroupVariantProps\n\nexport const ToggleGroupRoot = memo<ToggleGroupRootProps>((props) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tref,\n\t\tchildren,\n\t\taccentColor = providerContext.accentColor,\n\t\tradius = providerContext.radius,\n\t\tvariant = \"soft\",\n\t\tsize = \"md\",\n\t\t...rest\n\t} = props\n\n\tconst contextValue = useMemo(\n\t\t() => ({\n\t\t\tvariant,\n\t\t\tsize,\n\t\t\tradius,\n\t\t\taccentColor,\n\t\t}),\n\t\t[accentColor, radius, size, variant],\n\t)\n\n\treturn (\n\t\t<RadixToggleGroup.Root ref={ref} data-accent-color={accentColor} {...rest}>\n\t\t\t<ToggleGroupContext value={contextValue}>{children}</ToggleGroupContext>\n\t\t</RadixToggleGroup.Root>\n\t)\n})\nToggleGroupRoot.displayName = \"ToggleGroupRoot\"\n","import { ToggleGroupIconItem } from \"./IconItem\"\nimport { ToggleGroupItem } from \"./Item\"\nimport { ToggleGroupRoot } from \"./Root\"\n\nexport * from \"./IconItem\"\nexport * from \"./Item\"\nexport * from \"./Root\"\nexport * from \"./typings\"\n\nexport const ToggleGroup = {\n\tRoot: ToggleGroupRoot,\n\tItem: ToggleGroupItem,\n\tIconItem: ToggleGroupIconItem,\n}\n","import * as RadixTooltip from \"@radix-ui/react-tooltip\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nexport interface TooltipArrowProps extends RadixTooltip.TooltipArrowProps {}\n\nexport const TooltipArrow = forwardRef<SVGSVGElement, TooltipArrowProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn <RadixTooltip.Arrow className={cx(\"fill-(--base-6)\", className)} ref={ref} {...rest} />\n})\nTooltipArrow.displayName = \"TooltipArrow\"\n","import { cva } from \"class-variance-authority\"\n\nexport const tooltipContent = cva(\n\t[\n\t\t\"data-[state=delayed-open]:animate-in\",\n\t\t\"data-[state=delayed-open]:fade-in-0\",\n\t\t\"data-[state=delayed-open]:zoom-in-95\",\n\t\t\"data-[state=closed]:animate-out\",\n\t\t\"data-[state=closed]:fade-out-0\",\n\t\t\"data-[state=closed]:zoom-out-95\",\n\t\t\"bg-(--color-background)\",\n\t\t\"dark:bg-(--base-2)\",\n\t\t\"ring-1\",\n\t\t\"ring-(--base-6)\",\n\t\t\"text-(--base-12)\",\n\t\t\"shadow-sm\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"px-3\"],\n\t\t\t\tsm: [\"px-3.5\"],\n\t\t\t\tmd: [\"px-4\"],\n\t\t\t\tlg: [\"px-4.5\"],\n\t\t\t\txl: [\"px-5\"],\n\t\t\t},\n\t\t\tside: {\n\t\t\t\ttop: [\"data-[side=top]:slide-in-from-bottom-1\"],\n\t\t\t\tright: [\"data-[side=right]:slide-in-from-left-1\"],\n\t\t\t\tbottom: [\"data-[side=bottom]:slide-in-from-top-1\"],\n\t\t\t\tleft: [\"data-[side=left]:slide-in-from-right-1\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t\tside: \"top\",\n\t\t},\n\t},\n)\n","import * as RadixTooltip from \"@radix-ui/react-tooltip\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { tooltipContent } from \"./cva\"\nimport type { TooltipVariantProps } from \"./typings\"\n\nexport interface TooltipContentProps extends RadixTooltip.TooltipContentProps, TooltipVariantProps {\n\tcontainer?: RadixTooltip.TooltipPortalProps[\"container\"]\n}\n\nexport const TooltipContent = forwardRef<HTMLDivElement, TooltipContentProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tside = \"top\",\n\t\tsize,\n\t\tradius = providerContext.radius,\n\t\tchildren,\n\t\tsideOffset = 2,\n\t\tcontainer,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<RadixTooltip.Portal container={container}>\n\t\t\t<RadixTooltip.Content\n\t\t\t\tclassName={cx(tooltipContent({ size, side }), radiusCva({ radius, maxLarge: false }), className)}\n\t\t\t\tref={ref}\n\t\t\t\tsideOffset={sideOffset}\n\t\t\t\tdata-floating-content=\"\"\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</RadixTooltip.Content>\n\t\t</RadixTooltip.Portal>\n\t)\n})\nTooltipContent.displayName = \"TooltipContent\"\n","import * as RadixTooltip from \"@radix-ui/react-tooltip\"\n\nimport { TooltipArrow } from \"./Arrow\"\nimport { TooltipContent } from \"./Content\"\n\nexport * from \"./Arrow\"\nexport * from \"./Content\"\nexport * from \"./typings\"\n\nexport const Tooltip = {\n\tArrow: TooltipArrow,\n\tContent: TooltipContent,\n\tRoot: RadixTooltip.Root,\n\tTrigger: RadixTooltip.Trigger,\n\tProvider: RadixTooltip.Provider,\n}\n"],"names":["size","open","React","useLayoutEffect","state","cleanups","MultiSelectProvider","SingleSelectRequiredProvider","SingleSelectNotRequiredProvider","getBooleanState","SelectedIndicatorContext","getSelectedState","getCheckedState","DialogContent","CommandMenuMultiSelectGroup","DialogOverlay","CommandMenuRadioGroup","ReactDayPicker","inputRoot","Root","hide","SlideOut","offset","offsetMiddleware","sizeMiddleware","_a","mergeRefs","MenuMultiSelectGroup","MenuSelectGroup","Toast","toast","RadixToastProvider"],"mappings":"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","x_google_ignoreList":[32,33,34]}
1
+ {"version":3,"file":"blocks.js","sources":["../src/cva/floating.ts","../src/cva/radius.ts","../src/Provider/context.ts","../src/Provider/hooks.ts","../src/Provider/Provider.tsx","../src/AlertDialog/cva.ts","../src/AlertDialog/Content.tsx","../src/AlertDialog/context.ts","../src/AlertDialog/hooks.ts","../src/ButtonGroup/context.ts","../src/ButtonGroup/ButtonGroup.tsx","../src/ButtonGroup/hooks.ts","../src/Buttons/cva.ts","../src/Buttons/Button.tsx","../src/Buttons/IconButton.tsx","../src/AlertDialog/Provider.tsx","../src/AlertDialog/index.ts","../src/Avatar/context.ts","../src/Avatar/cva.ts","../src/Avatar/Fallback.tsx","../src/Avatar/Image.tsx","../src/Avatar/Root.tsx","../src/Avatar/index.ts","../src/Badge/cva.ts","../src/Badge/Badge.tsx","../src/Card/cva.ts","../src/Card/Card.tsx","../src/Checkbox/Indicator.tsx","../src/Checkbox/cva.ts","../src/Checkbox/Root.tsx","../src/Checkbox/index.ts","../src/SelectContext/context.ts","../node_modules/@react-hook/passive-layout-effect/dist/module/index.js","../node_modules/@react-hook/latest/dist/module/index.js","../node_modules/@react-hook/resize-observer/dist/module/index.js","../src/utils.ts","../src/SelectContext/MultiSelectProvider.tsx","../src/SelectContext/SingleSelectProvider.tsx","../src/CheckboxGroup/context.ts","../src/CheckboxGroup/Item.tsx","../src/CheckboxGroup/ItemIndicator.tsx","../src/CheckboxGroup/utils.ts","../src/CheckboxGroup/Root.tsx","../src/CheckboxGroup/SelectAllItem.tsx","../src/CheckboxGroup/index.ts","../src/CollapsibleTree/context.ts","../src/CollapsibleTree/CollapsibleTree.tsx","../src/CommandMenu/context.ts","../src/CommandMenu/utils.ts","../src/CommandMenu/CheckboxIndicator.tsx","../src/CommandMenu/cva.ts","../src/CommandMenu/Item.tsx","../src/CommandMenu/CheckboxItem.tsx","../src/CommandMenu/Content.tsx","../src/CommandMenu/Empty.tsx","../src/CommandMenu/Group.tsx","../src/CommandMenu/Input.tsx","../src/CommandMenu/List.tsx","../src/CommandMenu/MultiSelectGroup.tsx","../src/CommandMenu/MultiSelectItem.tsx","../src/CommandMenu/Overlay.tsx","../src/CommandMenu/Page.tsx","../src/CommandMenu/Pages.tsx","../src/CommandMenu/PageTriggerItem.tsx","../src/CommandMenu/RadioGroup.tsx","../src/CommandMenu/RadioItem.tsx","../src/CommandMenu/Root.tsx","../src/CommandMenu/SelectAllItem.tsx","../src/CommandMenu/SelectedIndicator.tsx","../src/CommandMenu/Separator.tsx","../src/CommandMenu/Trigger.tsx","../src/CommandMenu/index.ts","../src/DayPicker/Chevron.tsx","../src/DayPicker/cva.ts","../src/DayPicker/DayPicker.tsx","../src/Dialog/context.ts","../src/Dialog/hooks.ts","../src/Dialog/Content.tsx","../src/Dialog/Overlay.tsx","../src/Dialog/Root.tsx","../src/Dialog/index.ts","../src/Heading/constants.ts","../src/Heading/cva.ts","../src/Heading/Heading.tsx","../src/HoverCard/Arrow.tsx","../src/HoverCard/cva.ts","../src/HoverCard/Content.tsx","../src/HoverCard/index.ts","../src/HoverUtility/HoverUtility.tsx","../src/Input/context.ts","../src/Input/cva.ts","../src/Input/Field.tsx","../src/Input/Root.tsx","../src/Input/Slot.tsx","../src/Input/index.ts","../src/Layout/context.ts","../src/Layout/Container.tsx","../src/Layout/Root.tsx","../src/SlideOut/utils.ts","../src/SlideOut/SlideOut.tsx","../src/Layout/SlideOut.tsx","../src/Layout/SlideOutOverlay.tsx","../src/Menu/constants.ts","../src/Menu/utils.ts","../src/Layout/SlideOutTrigger.tsx","../src/Layout/index.ts","../src/Link/cva.ts","../src/Link/Link.tsx","../src/CheckedIndicator/context.ts","../src/CheckedIndicator/CheckedIndicator.tsx","../src/Menu/cva.ts","../src/Menu/root/context.ts","../src/Menu/root/Root.tsx","../src/Menu/Content/context.ts","../src/Menu/Content/Content.tsx","../src/Menu/Sub/context.ts","../src/Menu/Sub/Sub.tsx","../src/Menu/Item/Item.tsx","../src/Menu/CheckboxItem/CheckboxItem.tsx","../src/Menu/CheckboxItemIndicator/CheckboxItemIndicator.tsx","../src/Menu/ClickTrigger/ClickTrigger.tsx","../src/Menu/ContextTrigger/ContextTrigger.tsx","../src/Menu/Group/Group.tsx","../src/Menu/Input/Field.tsx","../src/Menu/Input/Root.tsx","../src/Menu/Input/Slot.tsx","../src/Menu/Label/Label.tsx","../src/Menu/MultiSelectGroup/MultiSelectGroup.tsx","../src/Menu/SelectedIndicator/context.ts","../src/Menu/SelectedIndicator/SelectedIndicator.tsx","../src/Menu/MultiSelectItem/MultiSelectItem.tsx","../src/Menu/Pages/context.ts","../src/Menu/Pages/Pages.tsx","../src/Menu/PageContent/PageContent.tsx","../src/Menu/PageTrigger/PageTrigger.tsx","../src/Menu/Scroll/Scroll.tsx","../src/Menu/SelectAll/SelectAllItem.tsx","../src/Menu/SelectGroup/SelectGroup.tsx","../src/Menu/SelectItem/SelectItem.tsx","../src/Menu/Separator/Separator.tsx","../src/Menu/SubContent/SubContent.tsx","../src/Menu/SubTrigger/SubTrigger.tsx","../src/Menu/VirtualTrigger/VirtualTrigger.tsx","../src/Menu/index.ts","../src/RiIcon/RiIcon.tsx","../src/OvermapErrorBoundary/OvermapErrorBoundary.tsx","../src/Popover/Arrow.tsx","../src/Popover/cva.ts","../src/Popover/Content.tsx","../src/Popover/index.ts","../src/Progress/cva.ts","../src/Progress/Progress.tsx","../src/RadioCards/context.ts","../src/RadioCards/cva.ts","../src/RadioCards/Item.tsx","../src/RadioCards/Root.tsx","../src/RadioCards/index.ts","../src/RadioGroup/Indicator.tsx","../src/RadioGroup/context.ts","../src/RadioGroup/cva.ts","../src/RadioGroup/Item.tsx","../src/RadioGroup/Root.tsx","../src/RadioGroup/index.ts","../src/SegmentedControl/cva.ts","../src/SegmentedControl/context.ts","../src/SegmentedControl/hooks.ts","../src/SegmentedControl/Item.tsx","../src/SegmentedControl/Root.tsx","../src/SegmentedControl/index.ts","../src/SegmentedTabs/context.ts","../src/SegmentedTabs/cva.ts","../src/SegmentedTabs/List.tsx","../src/SegmentedTabs/Root.tsx","../src/SegmentedTabs/Trigger.tsx","../src/SegmentedTabs/index.ts","../src/Separator/cva.ts","../src/Separator/Separator.tsx","../src/Slider/cva.ts","../src/Slider/Slider.tsx","../src/Spinner/Spinner.tsx","../src/Switch/context.ts","../src/Switch/cva.ts","../src/Switch/Root.tsx","../src/Switch/Thumb.tsx","../src/Switch/index.ts","../src/Table/Body.tsx","../src/Table/context.ts","../src/Table/cva.ts","../src/Table/Cell.tsx","../src/Table/ColumnHeaderCell.tsx","../src/Table/Footer.tsx","../src/Table/Header.tsx","../src/Table/Root.tsx","../src/Table/Row.tsx","../src/Table/RowHeaderCell.tsx","../src/Table/index.ts","../src/Tabs/context.ts","../src/Tabs/cva.ts","../src/Tabs/List.tsx","../src/Tabs/Root.tsx","../src/Tabs/hooks.ts","../src/Tabs/Trigger.tsx","../src/Tabs/index.ts","../src/Text/cva.ts","../src/Text/Text.tsx","../src/TextArea/cva.ts","../src/TextArea/TextArea.tsx","../src/Toast/cva.ts","../src/Toast/Toast.tsx","../src/Toast/ToastContext.ts","../src/Toast/ToastProvider.tsx","../src/ToggleButton/cva.ts","../src/ToggleButton/BaseToggleButton.tsx","../src/ToggleButton/IconToggleButton.tsx","../src/ToggleButton/ToggleButton.tsx","../src/ToggleGroup/context.ts","../src/ToggleGroup/cva.ts","../src/ToggleGroup/BaseItem.tsx","../src/ToggleGroup/IconItem.tsx","../src/ToggleGroup/Item.tsx","../src/ToggleGroup/Root.tsx","../src/ToggleGroup/index.ts","../src/Tooltip/Arrow.tsx","../src/Tooltip/cva.ts","../src/Tooltip/Content.tsx","../src/Tooltip/index.ts"],"sourcesContent":["import { cva } from \"class-variance-authority\"\n\nexport const floating = cva(\n\t[\n\t\t\"data-[state=open]:animate-in\",\n\t\t\"data-[state=open]:fade-in-0\",\n\t\t\"data-[state=open]:zoom-in-95\",\n\t\t\"data-[state=closed]:animate-out\",\n\t\t\"data-[state=closed]:fade-out-0\",\n\t\t\"data-[state=closed]:zoom-out-95\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tshadow: {\n\t\t\t\t\"1\": [\"shadow-xs\"],\n\t\t\t\t\"2\": [\"shadow-sm\"],\n\t\t\t\t\"3\": [\"shadow-md\"],\n\t\t\t\t\"4\": [\"shadow-lg\"],\n\t\t\t\t\"5\": [\"shadow-xl\"],\n\t\t\t},\n\t\t\tside: {\n\t\t\t\ttop: [\"data-[side=top]:slide-in-from-bottom-2\"],\n\t\t\t\tright: [\"data-[side=right]:slide-in-from-left-2\"],\n\t\t\t\tbottom: [\"data-[side=bottom]:slide-in-from-top-2\"],\n\t\t\t\tleft: [\"data-[side=left]:slide-in-from-right-2\"],\n\t\t\t},\n\t\t},\n\t},\n)\n","import { cva } from \"class-variance-authority\"\n\nexport const radiusCva = cva([], {\n\tvariants: {\n\t\tmaxLarge: {\n\t\t\ttrue: [],\n\t\t\tfalse: [],\n\t\t},\n\t\tradius: {\n\t\t\tnone: [\"rounded-none\"],\n\t\t\txs: [\"rounded-xs\"],\n\t\t\tsm: [\"rounded-sm\"],\n\t\t\tmd: [\"rounded-md\"],\n\t\t\tlg: [\"rounded-lg\"],\n\t\t\txl: [],\n\t\t\tfull: [],\n\t\t},\n\t},\n\tcompoundVariants: [\n\t\t{\n\t\t\tmaxLarge: true,\n\t\t\tradius: \"xl\",\n\t\t\tclassName: [\"rounded-lg\"],\n\t\t},\n\t\t{\n\t\t\tmaxLarge: true,\n\t\t\tradius: \"full\",\n\t\t\tclassName: [\"rounded-lg\"],\n\t\t},\n\t\t{\n\t\t\tmaxLarge: false,\n\t\t\tradius: \"xl\",\n\t\t\tclassName: [\"rounded-xl\"],\n\t\t},\n\t\t{\n\t\t\tmaxLarge: false,\n\t\t\tradius: \"full\",\n\t\t\tclassName: [\"rounded-full\"],\n\t\t},\n\t],\n})\n","import { createContext } from \"react\"\n\nimport type { ComponentRadius } from \"./typings\"\n\nexport interface IProviderContext {\n\taccentColor: string\n\tradius: ComponentRadius\n}\n\nexport const ProviderContext = createContext({} as IProviderContext)\n","import { useContext } from \"react\"\n\nimport { ProviderContext } from \"./context\"\n\nexport const useProvider = () => {\n\tconst context = useContext(ProviderContext)\n\n\tif (!context) {\n\t\tthrow new Error(\"useProvider must be used within a Provider\")\n\t}\n\n\treturn context\n}\n","import { PropsWithChildren, useMemo } from \"react\"\n\nimport { ProviderContext } from \"./context\"\nimport type { ComponentRadius } from \"./typings\"\n\nexport interface ProviderProps extends PropsWithChildren {\n\taccentColor: string\n\tradius?: ComponentRadius\n}\n\nexport const Provider = (props: ProviderProps) => {\n\tconst { accentColor, radius = \"md\", children } = props\n\n\tconst contextValue = useMemo(\n\t\t() => ({\n\t\t\taccentColor,\n\t\t\tradius,\n\t\t}),\n\t\t[accentColor, radius],\n\t)\n\n\treturn <ProviderContext.Provider value={contextValue}>{children}</ProviderContext.Provider>\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const dialogOverlay = cva([\n\t\"fixed\",\n\t\"inset-0\",\n\n\t// background\n\t\"bg-(--black-a6)\",\n\t\"dark:bg-(--black-a8)\",\n\n\t// background and border\n\t\"duration-200\",\n\t\"data-[state='open']:animate-in\",\n\t\"data-[state='open']:fade-in-0\",\n\t\"data-[state='closed']:animate-out\",\n\t\"data-[state='closed']:fade-out-0\",\n])\n\nexport const dialogContent = cva(\n\t[\n\t\t\"h-max\",\n\t\t\"max-h-3/4\",\n\t\t\"overflow-hidden\",\n\t\t\"w-full\",\n\n\t\t// background and border\n\t\t\"shadow-md\",\n\t\t\"bg-(--color-background)\",\n\t\t\"dark:bg-(--base-2)\",\n\t\t\"ring-1\",\n\t\t\"ring-(--base-6)\",\n\t\t\"[scrollbar-width:thin]\",\n\t\t\"[scrollbar-color:var(--base-6)_transparent]\",\n\n\t\t// positioning\n\t\t\"fixed\",\n\t\t\"left-[50%]\",\n\t\t\"top-[50%]\",\n\t\t\"translate-x-[-50%]\",\n\t\t\"translate-y-[-50%]\",\n\n\t\t// animation\n\t\t\"duration-200\",\n\t\t\"data-[state='open']:animate-in\",\n\t\t\"data-[state='open']:fade-in-0\",\n\t\t\"data-[state='open']:zoom-in-95\",\n\t\t\"data-[state='closed']:animate-out\",\n\t\t\"data-[state='closed']:fade-out-0\",\n\t\t\"data-[state='closed']:zoom-out-95\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"text-xs\", \"p-2\", \"max-w-xs\"],\n\t\t\t\tsm: [\"text-sm\", \"p-3\", \"max-w-sm\"],\n\t\t\t\tmd: [\"text-md\", \"p-4\", \"max-w-md\"],\n\t\t\t\tlg: [\"text-lg\", \"p-5\", \"max-w-lg\"],\n\t\t\t\txl: [\"text-xl\", \"p-6\", \"max-w-xl\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n","import * as RadixAlertDialog from \"@radix-ui/react-alert-dialog\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { dialogContent, dialogOverlay } from \"./cva\"\nimport { AlertDialogVariantProps } from \"./typings\"\n\nexport interface AlertDialogContentProps extends RadixAlertDialog.AlertDialogContentProps, AlertDialogVariantProps {\n\tcontainer?: RadixAlertDialog.AlertDialogPortalProps[\"container\"]\n}\n\nexport const AlertDialogContent = forwardRef<HTMLDivElement, AlertDialogContentProps>((props, ref) => {\n\tconst { radius } = useProvider()\n\tconst { className, size, container, ...rest } = props\n\n\treturn (\n\t\t<RadixAlertDialog.Portal container={container}>\n\t\t\t<RadixAlertDialog.Overlay className={dialogOverlay({})} data-floating-content=\"\" />\n\t\t\t<RadixAlertDialog.Content\n\t\t\t\tclassName={cx(dialogContent({ size }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\t\tref={ref}\n\t\t\t\tdata-floating-content=\"\"\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t</RadixAlertDialog.Portal>\n\t)\n})\nAlertDialogContent.displayName = \"AlertDialogContent\"\n","import { createContext } from \"react\"\n\nimport { AlertDialogOptions } from \"./typings\"\n\ntype AlertDialogContextType = (options: AlertDialogOptions) => void\n\nexport const AlertDialogContext = createContext<AlertDialogContextType>(() => {\n\tthrow new Error(\"No AlertDialogProvider found\")\n})\n","import { useContext } from \"react\"\n\nimport { AlertDialogContext } from \"./context\"\n\nexport const useAlertDialog = () => {\n\tconst alertDialogContext = useContext(AlertDialogContext)\n\tif (!alertDialogContext) {\n\t\tthrow new Error(\"No AlertDialogProvider found\")\n\t}\n\treturn alertDialogContext\n}\n","import { createContext } from \"react\"\n\nimport type { ButtonSize, ButtonVariant } from \"../Buttons\"\nimport type { ComponentRadius } from \"../Provider\"\n\nexport interface IButtonGroupContext {\n\tvariant: ButtonVariant\n\tsize: ButtonSize\n\tradius: ComponentRadius\n\taccentColor: string\n}\n\nexport const ButtonGroupContext = createContext<IButtonGroupContext>({} as IButtonGroupContext)\n","import { ComponentProps, PropsWithoutRef, useMemo } from \"react\"\n\nimport type { ButtonVariantProps } from \"../Buttons\"\nimport { useProvider } from \"../Provider\"\nimport type { AccentColorProps } from \"../typings\"\nimport { ButtonGroupContext } from \"./context\"\n\nexport interface ButtonGroupProps\n\textends PropsWithoutRef<ComponentProps<\"div\">>,\n\t\tButtonVariantProps,\n\t\tAccentColorProps {}\n\nexport const ButtonGroup = (props: ButtonGroupProps) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tchildren,\n\t\tvariant = \"solid\",\n\t\tsize = \"md\",\n\t\tradius = providerContext.radius,\n\t\taccentColor = providerContext.accentColor,\n\t\t...rest\n\t} = props\n\n\tconst value = useMemo(\n\t\t() => ({\n\t\t\tvariant,\n\t\t\tsize,\n\t\t\tradius,\n\t\t\taccentColor,\n\t\t}),\n\t\t[accentColor, radius, size, variant],\n\t)\n\n\treturn (\n\t\t<div {...rest}>\n\t\t\t<ButtonGroupContext.Provider value={value}>{children}</ButtonGroupContext.Provider>\n\t\t</div>\n\t)\n}\nButtonGroup.displayName = \"Buttons\"\n","import { useContext } from \"react\"\n\nimport { ButtonGroupContext } from \"./context\"\n\nexport const useButtonGroup = () => useContext(ButtonGroupContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const buttonCva = cva(\n\t[\n\t\t\"inline-flex\",\n\t\t\"items-center\",\n\t\t\"justify-center\",\n\t\t\"shrink-0\",\n\t\t\"whitespace-nowrap\",\n\t\t\"text-center\",\n\t\t\"align-top\",\n\n\t\t// select\n\t\t\"cursor-pointer\",\n\t\t\"select-none\",\n\n\t\t// focus\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-(--accent-a8)\",\n\t\t\"focus-visible:outline-offset-2\",\n\n\t\t// disabled\n\t\t\"disabled:opacity-50\",\n\t\t\"disabled:pointer-events-none\",\n\n\t\t\"transition-[background,color,box-shadow]\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsolid: [\n\t\t\t\t\t\"ring-(--accent-9)\",\n\t\t\t\t\t\"bg-(--accent-9)\",\n\t\t\t\t\t\"hover:bg-(--accent-10)\",\n\t\t\t\t\t\"text-(--accent-contrast)\",\n\t\t\t\t\t\"active:brightness-110\",\n\n\t\t\t\t\t// trigger state\n\t\t\t\t\t\"data-[state='open']:bg-(--accent-10)\",\n\t\t\t\t],\n\t\t\t\tsoft: [\n\t\t\t\t\t\"bg-(--accent-a3)\",\n\t\t\t\t\t\"hover:bg-(--accent-a4)\",\n\t\t\t\t\t\"active:bg-(--accent-a5)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\n\t\t\t\t\t// trigger state\n\t\t\t\t\t\"data-[state='open']:bg-(--accent-a4)\",\n\t\t\t\t],\n\t\t\t\tghost: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"hover:bg-(--accent-a3)\",\n\t\t\t\t\t\"active:bg-(--accent-a4)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\n\t\t\t\t\t// trigger state\n\t\t\t\t\t\"data-[state='open']:bg-(--accent-a3)\",\n\t\t\t\t],\n\t\t\t\tsurface: [\n\t\t\t\t\t\"bg-(--accent-surface)\",\n\t\t\t\t\t\"hover:inset-ring-(--accent-a8)\",\n\t\t\t\t\t\"active:bg-(--accent-a3)\",\n\t\t\t\t\t\"inset-ring\",\n\t\t\t\t\t\"inset-ring-(--accent-a7)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"data-[state='open']:bg-(--accent-a4)\",\n\t\t\t\t],\n\t\t\t\toutline: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"inset-ring\",\n\t\t\t\t\t\"inset-ring-(--accent-a7)\",\n\t\t\t\t\t\"hover:inset-ring-(--accent-a8)\",\n\t\t\t\t\t\"hover:bg-(--accent-a3)\",\n\t\t\t\t\t\"active:bg-(--accent-a4)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"data-[state='open']:inset-ring-(--accent-a8)\",\n\t\t\t\t\t\"data-[state='open']:bg-(--accent-a3)\",\n\t\t\t\t],\n\t\t\t\tfill: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"inset-ring\",\n\t\t\t\t\t\"inset-ring-(--accent-a3)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"hover:inset-ring-0\",\n\t\t\t\t\t\"hover:bg-(--accent-a3)\",\n\t\t\t\t\t\"hover:text-(--accent-a12)\",\n\t\t\t\t\t\"active:bg-(--accent-a4)\",\n\t\t\t\t\t\"data-[state='open']:inset-ring-0\",\n\t\t\t\t\t\"data-[state='open']:bg-(--accent-a3)\",\n\t\t\t\t],\n\t\t\t},\n\t\t\ticon: {\n\t\t\t\ttrue: [],\n\t\t\t\tfalse: [],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"h-6\", \"text-xs\", \"gap-1.5\"],\n\t\t\t\tsm: [\"h-7\", \"text-sm\", \"gap-1.75\"],\n\t\t\t\tmd: [\"h-8\", \"text-base\", \"gap-2\"],\n\t\t\t\tlg: [\"h-9\", \"text-lg\", \"gap-2.25\"],\n\t\t\t\txl: [\"h-10\", \"text-xl\", \"gap-2.5\"],\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"w-6\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"px-3\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"w-7\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"px-3.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"w-8\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"px-4\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"w-9\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"px-4.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"w-10\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"px-5\",\n\t\t\t},\n\t\t],\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t\ticon: false,\n\t\t\tvariant: \"solid\",\n\t\t},\n\t},\n)\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, memo, PropsWithoutRef } from \"react\"\n\nimport { useButtonGroup } from \"../ButtonGroup\"\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { buttonCva } from \"./cva\"\nimport type { ButtonVariantProps } from \"./typings\"\n\nexport interface ButtonProps extends ButtonVariantProps, PropsWithoutRef<ComponentProps<\"button\">> {}\n\nexport const Button = memo(\n\tforwardRef<HTMLButtonElement, ButtonProps>((props, ref) => {\n\t\tconst providerContext = useProvider()\n\t\tconst buttonsContext = useButtonGroup()\n\t\tconst {\n\t\t\tchildren,\n\t\t\tclassName,\n\t\t\tvariant = buttonsContext.variant,\n\t\t\tsize = buttonsContext.size,\n\t\t\tradius = buttonsContext.radius ?? providerContext.radius,\n\t\t\taccentColor = buttonsContext.accentColor ?? providerContext.accentColor,\n\t\t\t...rest\n\t\t} = props\n\t\treturn (\n\t\t\t<button\n\t\t\t\tclassName={cx(\n\t\t\t\t\tbuttonCva({ size, icon: false, variant }),\n\t\t\t\t\tradiusCva({ radius, maxLarge: false }),\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\tref={ref}\n\t\t\t\tdata-accent-color={accentColor}\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</button>\n\t\t)\n\t}),\n)\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, memo, PropsWithoutRef } from \"react\"\n\nimport { useButtonGroup } from \"../ButtonGroup\"\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport type { AccentColorProps } from \"../typings\"\nimport { buttonCva } from \"./cva\"\nimport type { ButtonVariantProps } from \"./typings\"\n\nexport interface IconButtonProps\n\textends ButtonVariantProps,\n\t\tPropsWithoutRef<ComponentProps<\"button\">>,\n\t\tAccentColorProps {}\n\nexport const IconButton = memo(\n\tforwardRef<HTMLButtonElement, IconButtonProps>((props, ref) => {\n\t\tconst providerContext = useProvider()\n\t\tconst buttonsContext = useButtonGroup()\n\t\tconst {\n\t\t\tchildren,\n\t\t\tclassName,\n\t\t\tvariant = buttonsContext.variant,\n\t\t\tsize = buttonsContext.size,\n\t\t\tradius = buttonsContext.radius ?? providerContext.radius,\n\t\t\taccentColor = buttonsContext.accentColor ?? providerContext.accentColor,\n\t\t\t...rest\n\t\t} = props\n\t\treturn (\n\t\t\t<button\n\t\t\t\tclassName={cx(\n\t\t\t\t\tbuttonCva({ size, icon: true, variant }),\n\t\t\t\t\tradiusCva({ radius, maxLarge: false }),\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\tref={ref}\n\t\t\t\tdata-accent-color={accentColor}\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</button>\n\t\t)\n\t}),\n)\n","import * as RadixAlertDialog from \"@radix-ui/react-alert-dialog\"\nimport { PropsWithChildren, useCallback, useState } from \"react\"\n\nimport { Button } from \"../Buttons\"\nimport { AlertDialogContent } from \"./Content\"\nimport { AlertDialogContext } from \"./context\"\nimport { AlertDialogOptions } from \"./typings\"\n\nexport const AlertDialogProvider = (props: PropsWithChildren) => {\n\tconst { children } = props\n\n\tconst [open, setOpen] = useState(false)\n\tconst [options, setOptions] = useState<AlertDialogOptions | null>(null)\n\n\tconst handleOpenChange = useCallback(\n\t\t(open: boolean) => {\n\t\t\tsetOpen(open)\n\n\t\t\tif (open) return\n\n\t\t\toptions?.onClose?.()\n\t\t},\n\t\t[options],\n\t)\n\n\tconst openAlertDialog = useCallback(\n\t\t(config: AlertDialogOptions) => {\n\t\t\tif (open) throw new Error(\"AlertDialog is already open\")\n\t\t\tsetOpen(true)\n\t\t\tsetOptions({\n\t\t\t\tsize: \"md\",\n\t\t\t\taction: \"Confirm\",\n\t\t\t\tcancel: \"Cancel\",\n\t\t\t\t...config,\n\t\t\t})\n\t\t},\n\t\t[open],\n\t)\n\n\treturn (\n\t\t<AlertDialogContext.Provider value={openAlertDialog}>\n\t\t\t{children}\n\t\t\t<RadixAlertDialog.Root open={open} onOpenChange={handleOpenChange}>\n\t\t\t\t<AlertDialogContent size={options?.size}>\n\t\t\t\t\t<div className=\"flex flex-col gap-4\">\n\t\t\t\t\t\t<div className=\"flex flex-col gap-1\">\n\t\t\t\t\t\t\t<RadixAlertDialog.Title className=\"font-medium\">{options?.title}</RadixAlertDialog.Title>\n\t\t\t\t\t\t\t<RadixAlertDialog.Description>{options?.description}</RadixAlertDialog.Description>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div className=\"flex justify-end gap-2\">\n\t\t\t\t\t\t\t<RadixAlertDialog.Cancel onClick={options?.onCancel}>\n\t\t\t\t\t\t\t\t<Button variant=\"soft\" size={options?.size} accentColor=\"base\">\n\t\t\t\t\t\t\t\t\t{options?.cancel}\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</RadixAlertDialog.Cancel>\n\t\t\t\t\t\t\t<RadixAlertDialog.Action onClick={options?.onAction}>\n\t\t\t\t\t\t\t\t<Button variant=\"solid\" size={options?.size}>\n\t\t\t\t\t\t\t\t\t{options?.action}\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</RadixAlertDialog.Action>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</AlertDialogContent>\n\t\t\t</RadixAlertDialog.Root>\n\t\t</AlertDialogContext.Provider>\n\t)\n}\n","import * as RadixAlertDialog from \"@radix-ui/react-alert-dialog\"\n\nimport { AlertDialogContent } from \"./Content\"\n\nexport * from \"./Content\"\nexport * from \"./hooks\"\nexport * from \"./Provider\"\nexport * from \"./typings\"\n\nexport const AlertDialog = {\n\tContent: AlertDialogContent,\n\tTrigger: RadixAlertDialog.Trigger,\n\tRoot: RadixAlertDialog.Root,\n\tTitle: RadixAlertDialog.Title,\n\tDescription: RadixAlertDialog.Description,\n\tAction: RadixAlertDialog.Action,\n\tCancel: RadixAlertDialog.Cancel,\n}\n","import { createContext } from \"react\"\n\nimport type { AvatarVariant } from \"./typings\"\n\ninterface IAvatarContext {\n\tvariant: AvatarVariant\n}\n\nexport const AvatarContext = createContext({} as IAvatarContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const avatar = cva([\"shrink-0\", \"select-none\", \"inline-block\", \"align-middle\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"h-6\", \"w-6\", \"text-xs\"],\n\t\t\tsm: [\"h-7\", \"w-7\", \"text-sm\"],\n\t\t\tmd: [\"h-8\", \"w-8\", \"text-base\"],\n\t\t\tlg: [\"h-9\", \"w-9\", \"text-lg\"],\n\t\t\txl: [\"h-10\", \"w-10\", \"text-xl\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n})\n\nexport const avatarFallback = cva([\"flex\", \"items-center\", \"justify-center\", \"size-full\", \"rounded-[inherit]\"], {\n\tvariants: {\n\t\tvariant: {\n\t\t\tsolid: [\"bg-(--accent-9)\", \"text-(--accent-contrast)\"],\n\t\t\tsoft: [\"bg-(--accent-a3)\", \"text-(--accent-a11)\"],\n\t\t\toutline: [\"bg-transparent\", \"inset-ring\", \"inset-ring-(--accent-a7)\", \"text-(--accent-a11)\"],\n\t\t\tsurface: [\"bg-(--accent-surface)\", \"inset-ring\", \"inset-ring-(--accent-a7)\", \"text-(--accent-a11)\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tvariant: \"solid\",\n\t},\n})\n","import * as RadixAvatar from \"@radix-ui/react-avatar\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef, useContext } from \"react\"\n\nimport { AvatarContext } from \"./context\"\nimport { avatarFallback } from \"./cva\"\n\nexport interface AvatarFallbackProps extends RadixAvatar.AvatarFallbackProps {}\n\nexport const AvatarFallback = forwardRef<HTMLSpanElement, AvatarFallbackProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\tconst { variant } = useContext(AvatarContext)\n\n\treturn <RadixAvatar.AvatarFallback className={cx(avatarFallback({ variant }), className)} ref={ref} {...rest} />\n})\nAvatarFallback.displayName = \"AvatarFallback\"\n","import * as RadixAvatar from \"@radix-ui/react-avatar\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nexport interface AvatarImageProps extends RadixAvatar.AvatarImageProps {}\n\nexport const AvatarImage = forwardRef<HTMLImageElement, AvatarImageProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn (\n\t\t<RadixAvatar.Image\n\t\t\tclassName={cx(\"object-cover\", \"rounded-[inherit]\", \"w-full\", \"h-full\", className)}\n\t\t\tref={ref}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nAvatarImage.displayName = \"AvatarImage\"\n","import * as RadixAvatar from \"@radix-ui/react-avatar\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { AvatarContext } from \"./context\"\nimport { avatar } from \"./cva\"\nimport type { AvatarVariantProps } from \"./typings\"\n\nexport interface AvatarRootProps extends RadixAvatar.AvatarProps, AvatarVariantProps {}\n\nexport const AvatarRoot = forwardRef<HTMLSpanElement, AvatarRootProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tsize,\n\t\tvariant = \"solid\",\n\t\taccentColor = providerContext.accentColor,\n\t\tradius = providerContext.radius,\n\t\tchildren,\n\t\t...rest\n\t} = props\n\treturn (\n\t\t<RadixAvatar.Root\n\t\t\tclassName={cx(avatar({ size }), radiusCva({ radius, maxLarge: false }), className)}\n\t\t\tref={ref}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<AvatarContext.Provider value={{ variant }}>{children}</AvatarContext.Provider>\n\t\t</RadixAvatar.Root>\n\t)\n})\nAvatarRoot.displayName = \"AvatarRoot\"\n","import { AvatarFallback } from \"./Fallback\"\nimport { AvatarImage } from \"./Image\"\nimport { AvatarRoot } from \"./Root\"\n\nexport * from \"./Fallback\"\nexport * from \"./Image\"\nexport * from \"./Root\"\nexport * from \"./typings\"\n\nexport const Avatar = {\n\tFallback: AvatarFallback,\n\tImage: AvatarImage,\n\tRoot: AvatarRoot,\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const badge = cva([\"inline-flex\", \"items-center\", \"shrink-0\", \"whitespace-nowrap\"], {\n\tvariants: {\n\t\ticon: {\n\t\t\ttrue: [\"justify-center\"],\n\t\t\tfalse: [],\n\t\t},\n\t\tsize: {\n\t\t\txs: [\"h-6\", \"text-xs\", \"gap-1.5\"],\n\t\t\tsm: [\"h-7\", \"text-sm\", \"gap-1.75\"],\n\t\t\tmd: [\"h-8\", \"text-base\", \"gap-2\"],\n\t\t\tlg: [\"h-9\", \"text-lg\", \"gap-2.25\"],\n\t\t\txl: [\"h-10\", \"text-xl\", \"gap-2.5\"],\n\t\t},\n\t\tvariant: {\n\t\t\tsolid: [\"bg-(--accent-9)\", \"text-(--accent-contrast)\"],\n\t\t\tsoft: [\"bg-(--accent-a3)\", \"text-(--accent-a11)\"],\n\t\t\toutline: [\"bg-transparent\", \"inset-ring\", \"inset-ring-(--accent-a7)\", \"text-(--accent-a11)\"],\n\t\t\tsurface: [\"bg-(--accent-surface)\", \"inset-ring\", \"inset-ring-(--accent-a7)\", \"text-(--accent-a11)\"],\n\t\t\tfill: [\"bg-transparent\", \"inset-ring\", \"inset-ring-(--accent-a3)\", \"text-(--accent-a11)\"],\n\t\t},\n\t},\n\tcompoundVariants: [\n\t\t{\n\t\t\ticon: true,\n\t\t\tsize: \"xs\",\n\t\t\tclassName: \"w-6\",\n\t\t},\n\t\t{\n\t\t\ticon: false,\n\t\t\tsize: \"xs\",\n\t\t\tclassName: \"px-3\",\n\t\t},\n\t\t{\n\t\t\ticon: true,\n\t\t\tsize: \"sm\",\n\t\t\tclassName: \"w-7\",\n\t\t},\n\t\t{\n\t\t\ticon: false,\n\t\t\tsize: \"sm\",\n\t\t\tclassName: \"px-3.5\",\n\t\t},\n\t\t{\n\t\t\ticon: true,\n\t\t\tsize: \"md\",\n\t\t\tclassName: \"w-8\",\n\t\t},\n\t\t{\n\t\t\ticon: false,\n\t\t\tsize: \"md\",\n\t\t\tclassName: \"px-4\",\n\t\t},\n\t\t{\n\t\t\ticon: true,\n\t\t\tsize: \"lg\",\n\t\t\tclassName: \"w-9\",\n\t\t},\n\t\t{\n\t\t\ticon: false,\n\t\t\tsize: \"lg\",\n\t\t\tclassName: \"px-4.5\",\n\t\t},\n\t\t{\n\t\t\ticon: true,\n\t\t\tsize: \"xl\",\n\t\t\tclassName: \"w-10\",\n\t\t},\n\t\t{\n\t\t\ticon: false,\n\t\t\tsize: \"xl\",\n\t\t\tclassName: \"px-5\",\n\t\t},\n\t],\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t\tvariant: \"solid\",\n\t\ticon: false,\n\t},\n})\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { badge } from \"./cva\"\nimport type { BadgeVariantProps } from \"./typings\"\n\nexport interface BadgeProps extends ComponentProps<\"span\">, BadgeVariantProps {}\n\nexport const Badge = forwardRef<HTMLSpanElement, BadgeProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tchildren,\n\t\tclassName,\n\t\taccentColor = providerContext.accentColor,\n\t\tradius = providerContext.radius,\n\t\tvariant,\n\t\tsize,\n\t\ticon,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<span\n\t\t\tclassName={cx(badge({ variant, size, icon }), radiusCva({ radius, maxLarge: false }), className)}\n\t\t\tref={ref}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{children}\n\t\t</span>\n\t)\n})\nBadge.displayName = \"Badge\"\n","import { cva } from \"class-variance-authority\"\n\nexport const cardCva = cva([], {\n\tvariants: {\n\t\tvariant: {\n\t\t\tsoft: [\"bg-(--accent-a2)\"],\n\t\t\tsurface: [\"bg-(--accent-a2)\", \"inset-ring\", \"inset-ring-(--accent-a6)\"],\n\t\t\toutline: [\"inset-ring-1\", \"inset-ring-(--accent-a6)\"],\n\t\t},\n\t\tsize: {\n\t\t\txs: [\"p-2\"],\n\t\t\tsm: [\"p-3\"],\n\t\t\tmd: [\"p-4\"],\n\t\t\tlg: [\"p-5\"],\n\t\t\txl: [\"p-6\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t\tvariant: \"surface\",\n\t},\n})\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { cardCva } from \"./cva\"\nimport type { CardVariantProps } from \"./typings\"\n\nexport interface CardProps extends PropsWithoutRef<ComponentProps<\"div\">>, CardVariantProps {}\n\nexport const Card = forwardRef<HTMLDivElement, CardProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tsize = \"md\",\n\t\tvariant = \"surface\",\n\t\taccentColor = \"base\",\n\t\tradius = providerContext.radius,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<div\n\t\t\tref={ref}\n\t\t\tclassName={cx(cardCva({ size, variant }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nCard.displayName = \"Card\"\n","import * as RadixCheckbox from \"@radix-ui/react-checkbox\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nexport interface CheckboxIndicatorProps extends RadixCheckbox.CheckboxIndicatorProps {}\n\nexport const CheckboxIndicator = forwardRef<HTMLSpanElement, CheckboxIndicatorProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn (\n\t\t<RadixCheckbox.CheckboxIndicator\n\t\t\tclassName={cx(\"flex items-center justify-center\", className)}\n\t\t\tref={ref}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nCheckboxIndicator.displayName = \"CheckboxIndicator\"\n","import { cva } from \"class-variance-authority\"\n\nexport const checkbox = cva(\n\t[\n\t\t\"shrink-0\",\n\t\t\"align-top\",\n\n\t\t// select\n\t\t\"cursor-pointer\",\n\t\t\"select-none\",\n\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-offset-2\",\n\t\t\"focus-visible:outline-(--accent-a8)\",\n\n\t\t// disabled\n\t\t\"disabled:opacity-50\",\n\t\t\"disabled:pointer-events-none\",\n\n\t\t\"transition-[background,color,box-shadow]\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsurface: [\n\t\t\t\t\t\"inset-ring\",\n\t\t\t\t\t\"inset-ring-(--base-a7)\",\n\t\t\t\t\t\"bg-(--base-surface)\",\n\t\t\t\t\t\"data-[state='checked']:bg-(--accent-indicator)\",\n\t\t\t\t\t\"data-[state='checked']:inset-ring-(--accent-indicator)\",\n\t\t\t\t\t\"text-(--accent-contrast)\",\n\t\t\t\t],\n\t\t\t\tsoft: [\"bg-(--accent-a5)\", \"text-(--accent-a11)\"],\n\t\t\t\toutline: [\"bg-transparent\", \"inset-ring\", \"inset-ring-(--accent-a7)\", \"text-(--accent-a11)\"],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"size-4\", \"text-xs\"],\n\t\t\t\tsm: [\"size-5\", \"text-sm\"],\n\t\t\t\tmd: [\"size-6\", \"text-base\"],\n\t\t\t\tlg: [\"size-7\", \"text-lg\"],\n\t\t\t\txl: [\"size-8\", \"text-xl\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tvariant: \"surface\",\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n","import * as RadixCheckbox from \"@radix-ui/react-checkbox\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { checkbox } from \"./cva\"\nimport type { CheckboxVariantProps } from \"./typings\"\n\nexport interface CheckboxRootProps extends CheckboxVariantProps, RadixCheckbox.CheckboxProps {}\n\nexport const CheckboxRoot = forwardRef<HTMLButtonElement, CheckboxRootProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tvariant,\n\t\tsize,\n\t\tradius = providerContext.radius,\n\t\taccentColor = providerContext.accentColor,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<RadixCheckbox.Root\n\t\t\tclassName={cx(checkbox({ variant, size }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\tref={ref}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nCheckboxRoot.displayName = \"CheckboxRoot\"\n","import { CheckboxIndicator } from \"./Indicator\"\nimport { CheckboxRoot } from \"./Root\"\n\nexport * from \"./Indicator\"\nexport * from \"./Root\"\nexport * from \"./typings\"\n\nexport const Checkbox = {\n\tRoot: CheckboxRoot,\n\tIndicator: CheckboxIndicator,\n}\n","import { createContext } from \"react\"\n\nexport interface ISelectContext<TValue> {\n\tselectValue: (value: TValue) => void\n\tselected: (value: TValue) => boolean\n}\n\nexport const SelectContext = createContext({} as ISelectContext<never>)\n\nexport interface IMultiSelectContext<TValue> {\n\tselectValue: (value: TValue) => void\n\tselected: (value: TValue) => boolean\n\tregisterValue: (value: TValue) => () => void\n\tallSelected: boolean\n\tsomeSelected: boolean\n\ttoggleSelectAll: () => void\n}\n\nexport const MultiSelectContext = createContext({} as IMultiSelectContext<never>)\n","import React from 'react';\nconst usePassiveLayoutEffect = React[typeof document !== 'undefined' && document.createElement !== void 0 ? 'useLayoutEffect' : 'useEffect'];\nexport default usePassiveLayoutEffect;","import * as React from 'react';\n\nconst useLatest = current => {\n const storedValue = React.useRef(current);\n React.useEffect(() => {\n storedValue.current = current;\n });\n return storedValue;\n};\n\nexport default useLatest;","/* eslint-disable no-return-assign */\n/* eslint-disable no-underscore-dangle */\n\nimport useLayoutEffect from '@react-hook/passive-layout-effect';\nimport useLatest from '@react-hook/latest';\n\n/**\n * A React hook that fires a callback whenever ResizeObserver detects a change to its size\n *\n * @param target A React ref created by `useRef()` or an HTML element\n * @param callback Invoked with a single `ResizeObserverEntry` any time\n * the `target` resizes\n */\n\nfunction _ref() {}\nfunction useResizeObserver(target, callback, options = {}) {\n const resizeObserver = getResizeObserver(options.polyfill);\n const storedCallback = useLatest(callback);\n useLayoutEffect(() => {\n let didUnsubscribe = false;\n const targetEl = target && 'current' in target ? target.current : target;\n if (!targetEl) return _ref;\n function cb(entry, observer) {\n if (didUnsubscribe) return;\n storedCallback.current(entry, observer);\n }\n resizeObserver.subscribe(targetEl, cb);\n return () => {\n didUnsubscribe = true;\n resizeObserver.unsubscribe(targetEl, cb);\n };\n }, [target, resizeObserver, storedCallback]);\n return resizeObserver.observer;\n}\nfunction createResizeObserver(polyfill) {\n let ticking = false;\n let allEntries = [];\n const callbacks = new Map();\n const observer = new (polyfill || window.ResizeObserver)((entries, obs) => {\n allEntries = allEntries.concat(entries);\n function _ref2() {\n const triggered = new Set();\n for (let i = 0; i < allEntries.length; i++) {\n if (triggered.has(allEntries[i].target)) continue;\n triggered.add(allEntries[i].target);\n const cbs = callbacks.get(allEntries[i].target);\n cbs === null || cbs === void 0 ? void 0 : cbs.forEach(cb => cb(allEntries[i], obs));\n }\n allEntries = [];\n ticking = false;\n }\n if (!ticking) {\n window.requestAnimationFrame(_ref2);\n }\n ticking = true;\n });\n return {\n observer,\n subscribe(target, callback) {\n var _callbacks$get;\n observer.observe(target);\n const cbs = (_callbacks$get = callbacks.get(target)) !== null && _callbacks$get !== void 0 ? _callbacks$get : [];\n cbs.push(callback);\n callbacks.set(target, cbs);\n },\n unsubscribe(target, callback) {\n var _callbacks$get2;\n const cbs = (_callbacks$get2 = callbacks.get(target)) !== null && _callbacks$get2 !== void 0 ? _callbacks$get2 : [];\n if (cbs.length === 1) {\n observer.unobserve(target);\n callbacks.delete(target);\n return;\n }\n const cbIndex = cbs.indexOf(callback);\n if (cbIndex !== -1) cbs.splice(cbIndex, 1);\n callbacks.set(target, cbs);\n }\n };\n}\nlet _resizeObserver;\nconst getResizeObserver = polyfill => !_resizeObserver ? _resizeObserver = createResizeObserver(polyfill) : _resizeObserver;\nexport default useResizeObserver;","import useResizeObserver from \"@react-hook/resize-observer\"\nimport type * as React from \"react\"\nimport {\n\tDispatch,\n\tmemo,\n\tRefObject,\n\tSetStateAction,\n\tSyntheticEvent,\n\tuseCallback,\n\tuseEffect,\n\tuseLayoutEffect,\n\tuseState,\n} from \"react\"\nimport { useMediaQuery } from \"react-responsive\"\n\nimport type { ViewportSizes } from \"./typings\"\n\nexport interface ViewportSize {\n\tsize: ViewportSizes\n\tprevSize: ViewportSizes\n\txs: boolean\n\tsm: boolean\n\tmd: boolean\n\tlg: boolean\n\txl: boolean\n}\n\n// TODO: this should be moved to /web\n// note that this is a pretty poor way of setting this up, the better way would be to use a context at the highest level\n// in the React component tree to result in the useMediaQuery hook being called a minimal number of times. Then any components\n// that need to subscribe to the viewport size can use the context to get the current viewport size.\n/** Return value needs to be deconstructed since the object returned is not memoized */\n\ninterface useViewportSizeProps {\n\txs: number | string\n\tsm: number | string\n\tmd: number | string\n\tlg: number | string\n\txl: number | string\n}\n\nexport const useViewportSize = (props: useViewportSizeProps): ViewportSize => {\n\tconst { xs: xsProps, sm: smProps, md: mdProps, lg: lgProps, xl: xlProps } = props\n\tconst [prevSize, setPrevSize] = useState<ViewportSize[\"size\"]>(\"initial\")\n\tconst [size, setSize] = useState<ViewportSize[\"size\"]>(\"initial\")\n\t// These specific Breakpoints are from Radix, see https://www.radix-ui.com/themes/docs/theme/breakpoints\n\tconst xs = useMediaQuery({ minWidth: xsProps })\n\tconst sm = useMediaQuery({ minWidth: smProps })\n\tconst md = useMediaQuery({ minWidth: mdProps })\n\tconst lg = useMediaQuery({ minWidth: lgProps })\n\tconst xl = useMediaQuery({ minWidth: xlProps })\n\n\tuseLayoutEffect(() => {\n\t\tsetSize((prev) => {\n\t\t\tsetPrevSize(prev)\n\t\t\treturn xl ? \"xl\" : lg ? \"lg\" : md ? \"md\" : sm ? \"sm\" : xs ? \"xs\" : \"initial\"\n\t\t})\n\t}, [lg, md, sm, xl, xs])\n\n\treturn { size, prevSize, xs, sm, md, lg, xl }\n}\n\n/** utility used for stopping Event propagation.\n * @return stopPropagation a callback that calls stopPropagation on a general event */\nexport const useStopEventPropagation = () => {\n\treturn useCallback((event: Event) => {\n\t\tevent.stopPropagation()\n\t}, [])\n}\n\n/** custom hook use for providing filter functionality based on a text input field\n * @param filterFunction make sure this is wrapped in a useCallback\n * @param values items that should be filtered on (of type T) */\nexport function useTextFilter<T>(\n\tvalues: T[],\n\tfilterFunction: (value: T, filterValue: string) => boolean,\n): [T[], string, Dispatch<SetStateAction<string>>] {\n\tconst [filteredOptions, setFilteredOptions] = useState<T[]>([])\n\tconst [filterValue, setFilterValue] = useState<string>(\"\")\n\n\tuseEffect(() => {\n\t\tsetFilteredOptions(values.filter((value) => filterFunction(value, filterValue)))\n\t}, [filterFunction, filterValue, values])\n\n\treturn [filteredOptions, filterValue, setFilterValue]\n}\n\nexport const useSize = (target: RefObject<HTMLDivElement>): DOMRectReadOnly | undefined => {\n\tconst [size, setSize] = useState<DOMRectReadOnly>()\n\n\tuseLayoutEffect(() => {\n\t\tsetSize(target.current?.getBoundingClientRect())\n\t}, [target])\n\n\tconst handleResize = useCallback((entry: ResizeObserverEntry) => {\n\t\tconst rect = entry.contentRect\n\t\tsetSize(rect)\n\t}, [])\n\n\t// Where the magic happens\n\tuseResizeObserver<HTMLDivElement>(target, handleResize)\n\treturn size\n}\n\nexport const genericMemo: <T>(component: T) => T = memo\n\nexport function useControlledState<TState>(\n\tinitialState: TState,\n\tstate?: TState,\n\tsetState?: (state: TState) => void,\n): [TState, (state: TState) => void] {\n\tconst [uncontrolledState, setUncontrolledState] = useState<TState>(initialState)\n\n\t// allow for uncontrolled state to be set\n\tconst handleStateChange = useCallback(\n\t\t(state: TState) => {\n\t\t\tsetUncontrolledState(state)\n\t\t\tsetState?.(state)\n\t\t},\n\t\t[setState],\n\t)\n\n\t// keep the uncontrolled state in sync with the controlled state\n\tuseEffect(() => {\n\t\tif (state !== undefined) {\n\t\t\tsetUncontrolledState(state)\n\t\t}\n\t}, [state])\n\n\treturn [state ?? uncontrolledState, handleStateChange]\n}\n\ntype RefCleanup<T> = Exclude<ReturnType<React.RefCallback<T>>, void>\n\nexport function mergeRefs<T>(refs: Array<React.Ref<T> | undefined>): React.RefCallback<T> {\n\treturn (value) => {\n\t\tconst cleanups = refs.reduce((cleanups, ref) => {\n\t\t\tif (typeof ref === \"function\") {\n\t\t\t\tconst cleanup = ref(value)\n\t\t\t\tif (typeof cleanup === \"function\") {\n\t\t\t\t\tcleanups.push(cleanup)\n\t\t\t\t} else {\n\t\t\t\t\t// simulate previous ref cleanup behavior\n\t\t\t\t\tcleanups.push(() => {\n\t\t\t\t\t\tref(null)\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t} else if (ref != null) {\n\t\t\t\tref.current = value\n\t\t\t\t// simulate previous ref cleanup behavior\n\t\t\t\tcleanups.push(() => {\n\t\t\t\t\tref.current = null\n\t\t\t\t})\n\t\t\t}\n\t\t\treturn cleanups\n\t\t}, [] as RefCleanup<T>[])\n\n\t\treturn () => {\n\t\t\tcleanups.forEach((cleanup) => {\n\t\t\t\tcleanup()\n\t\t\t})\n\t\t}\n\t}\n}\n\nexport const stopPropagation = (e: SyntheticEvent) => {\n\te.stopPropagation()\n}\n","import { PropsWithChildren, useCallback, useMemo, useState } from \"react\"\n\nimport { genericMemo, useControlledState } from \"../utils\"\nimport { MultiSelectContext } from \"./context\"\nimport type { MultiSelectProps } from \"./typings\"\n\nexport const MultiSelectProvider = genericMemo(function MultiSelectProvider<TValue>(\n\tprops: PropsWithChildren<MultiSelectProps<TValue>>,\n) {\n\tconst { children, defaultValues, values: controlledValues, onValuesChange } = props\n\n\tconst [itemValueMapping, setItemValueMapping] = useState<Set<TValue>>(new Set())\n\tconst [values, setValues] = useControlledState(defaultValues ?? [], controlledValues, onValuesChange)\n\n\tconst registerValue = useCallback((value: TValue) => {\n\t\tsetItemValueMapping((prev) => {\n\t\t\tconst newSet = new Set(prev)\n\t\t\tnewSet.add(value)\n\t\t\treturn newSet\n\t\t})\n\n\t\treturn () => {\n\t\t\tsetItemValueMapping((prev) => {\n\t\t\t\tconst newSet = new Set(prev)\n\t\t\t\tnewSet.delete(value)\n\t\t\t\treturn newSet\n\t\t\t})\n\t\t}\n\t}, [])\n\n\tconst selected = useCallback((value: TValue) => values.includes(value), [values])\n\n\tconst selectValue = useCallback(\n\t\t(value: TValue) => {\n\t\t\tif (selected(value)) {\n\t\t\t\tsetValues(values.filter((v) => v !== value))\n\t\t\t} else {\n\t\t\t\tsetValues([...values, value])\n\t\t\t}\n\t\t},\n\t\t[selected, setValues, values],\n\t)\n\n\tconst allSelected = useMemo(() => {\n\t\treturn Array.from(itemValueMapping.values()).every((value) => values.includes(value))\n\t}, [itemValueMapping, values])\n\n\tconst someSelected = useMemo(() => {\n\t\treturn Array.from(itemValueMapping.values()).some((value) => values.includes(value))\n\t}, [itemValueMapping, values])\n\n\tconst toggleSelectAll = useCallback(() => {\n\t\tif (allSelected) {\n\t\t\tsetValues([])\n\t\t} else {\n\t\t\tsetValues(Array.from(itemValueMapping.values()))\n\t\t}\n\t}, [allSelected, itemValueMapping, setValues])\n\n\tconst contextValue = useMemo(\n\t\t() => ({ selected, selectValue, allSelected, someSelected, toggleSelectAll, registerValue }),\n\t\t[allSelected, registerValue, selectValue, selected, someSelected, toggleSelectAll],\n\t)\n\n\treturn <MultiSelectContext value={contextValue}>{children}</MultiSelectContext>\n})\n","import { PropsWithChildren, useCallback, useMemo } from \"react\"\n\nimport { genericMemo, useControlledState } from \"../utils\"\nimport { SelectContext } from \"./context\"\nimport type { SingleSelectNotRequiredProps, SingleSelectRequiredProps } from \"./typings\"\n\nexport const SingleSelectRequiredProvider = genericMemo(function SingleSelectRequiredProvider<TValue>(\n\tprops: PropsWithChildren<SingleSelectRequiredProps<TValue>>,\n) {\n\tconst { children, defaultValue, value, onValueChange } = props\n\n\t// REASON: we are expecting the user to specify a defaultValue or value, otherwise use of component is invalid\n\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\t// @ts-expect-error\n\tconst [controlledValue, setControlledValue] = useControlledState<TValue>(defaultValue, value, onValueChange)\n\n\tconst selected = useCallback((v: TValue) => v === controlledValue, [controlledValue])\n\n\tconst selectValue = useCallback(\n\t\t(v: TValue) => {\n\t\t\tif (selected(v)) return\n\t\t\tsetControlledValue(v)\n\t\t},\n\t\t[selected, setControlledValue],\n\t)\n\n\tconst contextValue = useMemo(() => ({ selected, selectValue }), [selectValue, selected])\n\n\treturn <SelectContext value={contextValue}>{children}</SelectContext>\n})\n\nexport const SingleSelectNotRequiredProvider = genericMemo(function SingleSelectNotRequiredProvider<TValue>(\n\tprops: PropsWithChildren<SingleSelectNotRequiredProps<TValue>>,\n) {\n\tconst { children, defaultValue = undefined, value: controlledValue, onValueChange } = props\n\n\tconst [value, setValue] = useControlledState(defaultValue, controlledValue, onValueChange)\n\n\tconst selected = useCallback((v: TValue) => v === value, [value])\n\n\tconst selectValue = useCallback(\n\t\t(v: TValue) => {\n\t\t\tsetValue(selected(v) ? undefined : v)\n\t\t},\n\t\t[selected, setValue],\n\t)\n\n\tconst contextValue = useMemo(() => ({ selected, selectValue }), [selected, selectValue])\n\n\treturn <SelectContext value={contextValue}>{children}</SelectContext>\n})\n","import * as RadixCheckbox from \"@radix-ui/react-checkbox\"\nimport { ComponentProps, createContext } from \"react\"\n\nimport { ComponentRadius } from \"../Provider\"\nimport { CheckboxGroupSize, CheckboxGroupVariant } from \"./typings\"\n\nexport interface ICheckboxGroupContext {\n\tname?: string\n\trequired?: ComponentProps<typeof RadixCheckbox.Root>[\"required\"]\n\tdisabled?: ComponentProps<typeof RadixCheckbox.Root>[\"disabled\"]\n\tsize: CheckboxGroupSize\n\tvariant: CheckboxGroupVariant\n\tradius: ComponentRadius\n}\n\nexport const CheckboxGroupContext = createContext({} as ICheckboxGroupContext)\n","import * as RadixCheckbox from \"@radix-ui/react-checkbox\"\nimport { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, memo, use, useCallback, useLayoutEffect } from \"react\"\n\nimport { checkbox } from \"../Checkbox/cva\"\nimport { radiusCva } from \"../cva\"\nimport { IMultiSelectContext, MultiSelectContext } from \"../SelectContext\"\nimport { CheckboxGroupContext } from \"./context\"\nimport type { CheckboxGroupVariantProps } from \"./typings\"\n\nexport interface CheckboxGroupItemProps\n\textends Omit<\n\t\t\tComponentPropsWithRef<typeof RadixCheckbox.Root>,\n\t\t\t\"checked\" | \"defaultChecked\" | \"onCheckedChange\" | \"name\"\n\t\t>,\n\t\tCheckboxGroupVariantProps {\n\tvalue: string\n}\n\nexport const CheckboxGroupItem = memo<CheckboxGroupItemProps>((props) => {\n\tconst groupContext = use(CheckboxGroupContext)\n\tconst {\n\t\tref,\n\t\tclassName,\n\t\tvalue,\n\t\taccentColor,\n\t\tdisabled,\n\t\tvariant = groupContext.variant,\n\t\tsize = groupContext.size,\n\t\tradius = groupContext.radius,\n\t\t...rest\n\t} = props\n\tconst { selected, selectValue, registerValue } = use(MultiSelectContext) as IMultiSelectContext<string> // safe cast\n\n\tuseLayoutEffect(() => {\n\t\treturn registerValue(value)\n\t}, [registerValue, value])\n\n\tconst isChecked = selected(value)\n\tconst isDisabled = groupContext.disabled || disabled\n\n\tconst handleCheckedChange = useCallback(() => {\n\t\tselectValue(value)\n\t}, [selectValue, value])\n\n\treturn (\n\t\t<RadixCheckbox.Root\n\t\t\tref={ref}\n\t\t\tclassName={cx(checkbox({ variant, size }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\tname={groupContext.name}\n\t\t\trequired={groupContext.required}\n\t\t\tdisabled={isDisabled}\n\t\t\tvalue={value}\n\t\t\tchecked={isChecked}\n\t\t\tonCheckedChange={handleCheckedChange}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nCheckboxGroupItem.displayName = \"CheckboxGroupItem\"\n","import * as RadixCheckbox from \"@radix-ui/react-checkbox\"\nimport { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, memo } from \"react\"\n\nexport interface CheckboxGroupItemIndicatorProps extends ComponentPropsWithRef<typeof RadixCheckbox.Indicator> {}\n\nexport const CheckboxGroupItemIndicator = memo<CheckboxGroupItemIndicatorProps>((props) => {\n\tconst { ref, className, ...rest } = props\n\n\treturn <RadixCheckbox.Indicator className={cx(\"flex items-center justify-center\", className)} ref={ref} {...rest} />\n})\nCheckboxGroupItemIndicator.displayName = \"CheckboxGroupItemIndicator\"\n","export function getBooleanState(value: boolean) {\n\treturn value ? \"true\" : \"false\"\n}\n","import * as RadixCheckbox from \"@radix-ui/react-checkbox\"\nimport { ComponentProps, ComponentPropsWithRef, memo, useMemo } from \"react\"\n\nimport { useProvider } from \"../Provider\"\nimport { MultiSelectProvider } from \"../SelectContext\"\nimport type { MultiSelectProps } from \"../SelectContext/typings\"\nimport { CheckboxGroupContext } from \"./context\"\nimport type { CheckboxGroupVariantProps } from \"./typings\"\nimport { getBooleanState } from \"./utils\"\n\nexport interface CheckboxGroupRootProps\n\textends MultiSelectProps<string>,\n\t\tComponentPropsWithRef<\"div\">,\n\t\tCheckboxGroupVariantProps {\n\tname?: string\n\trequired?: ComponentProps<typeof RadixCheckbox.Root>[\"required\"]\n\tdisabled?: ComponentProps<typeof RadixCheckbox.Root>[\"disabled\"]\n}\n\nexport const CheckboxGroupRoot = memo<CheckboxGroupRootProps>((props) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tref,\n\t\tdefaultValues,\n\t\tvalues,\n\t\tonValuesChange,\n\t\tchildren,\n\t\tname,\n\t\trequired,\n\t\tdisabled,\n\t\taccentColor = providerContext.accentColor,\n\t\tradius = providerContext.radius,\n\t\tvariant = \"surface\",\n\t\tsize = \"md\",\n\t\t...rest\n\t} = props\n\n\tconst contextValue = useMemo(\n\t\t() => ({\n\t\t\tname,\n\t\t\trequired,\n\t\t\tdisabled,\n\t\t\tsize,\n\t\t\tvariant,\n\t\t\tradius,\n\t\t}),\n\t\t[disabled, name, radius, required, size, variant],\n\t)\n\n\treturn (\n\t\t<div\n\t\t\tref={ref}\n\t\t\trole=\"group\"\n\t\t\tdata-disabled={getBooleanState(!!disabled)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\taria-disabled={getBooleanState(!!disabled)}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<CheckboxGroupContext.Provider value={contextValue}>\n\t\t\t\t<MultiSelectProvider<string>\n\t\t\t\t\tdefaultValues={defaultValues}\n\t\t\t\t\tvalues={values}\n\t\t\t\t\tonValuesChange={onValuesChange}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</MultiSelectProvider>\n\t\t\t</CheckboxGroupContext.Provider>\n\t\t</div>\n\t)\n})\nCheckboxGroupRoot.displayName = \"CheckboxGroupRoot\"\n","import * as RadixCheckbox from \"@radix-ui/react-checkbox\"\nimport { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, memo, use } from \"react\"\n\nimport { checkbox } from \"../Checkbox/cva\"\nimport { radiusCva } from \"../cva\"\nimport { IMultiSelectContext, MultiSelectContext } from \"../SelectContext\"\nimport { CheckboxGroupContext } from \"./context\"\nimport type { CheckboxGroupVariantProps } from \"./typings\"\n\nexport interface CheckboxGroupSelectAllItemProps\n\textends Omit<\n\t\t\tComponentPropsWithRef<typeof RadixCheckbox.Root>,\n\t\t\t\"checked\" | \"defaultChecked\" | \"onCheckedChange\" | \"name\"\n\t\t>,\n\t\tCheckboxGroupVariantProps {}\n\nexport const CheckboxGroupSelectAllItem = memo<CheckboxGroupSelectAllItemProps>((props) => {\n\tconst groupContext = use(CheckboxGroupContext)\n\tconst {\n\t\tref,\n\t\tclassName,\n\t\taccentColor,\n\t\tdisabled,\n\t\tvariant = groupContext.variant,\n\t\tsize = groupContext.size,\n\t\tradius = groupContext.radius,\n\t\t...rest\n\t} = props\n\tconst { allSelected, someSelected, toggleSelectAll } = use(MultiSelectContext) as IMultiSelectContext<string> // safe cast\n\n\tconst checked = allSelected ? true : someSelected ? \"indeterminate\" : false\n\tconst isDisabled = groupContext.disabled || disabled\n\n\treturn (\n\t\t<RadixCheckbox.Root\n\t\t\tref={ref}\n\t\t\tclassName={cx(checkbox({ variant, size }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\tname={groupContext.name}\n\t\t\trequired={groupContext.required}\n\t\t\tdisabled={isDisabled}\n\t\t\tchecked={checked}\n\t\t\tonCheckedChange={toggleSelectAll}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nCheckboxGroupSelectAllItem.displayName = \"CheckboxGroupSelectAllItem\"\n","import { CheckboxGroupItem } from \"./Item\"\nimport { CheckboxGroupItemIndicator } from \"./ItemIndicator\"\nimport { CheckboxGroupRoot } from \"./Root\"\nimport { CheckboxGroupSelectAllItem } from \"./SelectAllItem\"\n\nexport * from \"./Item\"\nexport * from \"./ItemIndicator\"\nexport * from \"./Root\"\nexport * from \"./SelectAllItem\"\nexport * from \"./typings\"\n\nexport const CheckboxGroup = {\n\tRoot: CheckboxGroupRoot,\n\tItem: CheckboxGroupItem,\n\tSelectAllItem: CheckboxGroupSelectAllItem,\n\tItemIndicator: CheckboxGroupItemIndicator,\n}\n","import { createContext, CSSProperties, useContext } from \"react\"\n\nimport { NodeCallbacks, NodeRenderer } from \"./typings\"\n\ninterface ICollapsibleTreeContext<TMeta> extends NodeCallbacks<TMeta> {\n\tnodeClassName?: string\n\tnodeStyles?: CSSProperties\n\tdisabled: boolean\n\tnodeRenderer: NodeRenderer<TMeta>\n}\n\nexport const CollapsibleTreeContext = createContext<ICollapsibleTreeContext<never>>(\n\t{} as ICollapsibleTreeContext<unknown>,\n)\n\nexport function useCollapsibleTreeContext<TMeta>() {\n\treturn useContext(CollapsibleTreeContext) as ICollapsibleTreeContext<TMeta>\n}\n","import * as RadixPrimitiveCollapsible from \"@radix-ui/react-collapsible\"\nimport { cx } from \"class-variance-authority\"\nimport { useCallback, useMemo, useState } from \"react\"\n\nimport { genericMemo } from \"../utils\"\nimport { CollapsibleTreeContext, useCollapsibleTreeContext } from \"./context\"\nimport { CollapsibleTreeProps, TreeNodeProps } from \"./typings\"\n\nconst CollapsibleNode = genericMemo(function <TMeta>(props: TreeNodeProps<TMeta> & { level?: number }) {\n\tconst { meta, nodes, level = 0, disabled } = props\n\t/** controlling the open state to allow a developer to specify what element is responsible for triggering the open\n\t * and closing of the collapsible. */\n\tconst [controlledOpenState, setControlledOpenState] = useState<boolean>(false)\n\n\tconst {\n\t\tnodeRenderer,\n\t\tdisabled: disabledFromContext,\n\t\tonNodeOpen,\n\t\tonNodeClose,\n\t\tonNodeClick,\n\t\tnodeStyles,\n\t\tnodeClassName,\n\t} = useCollapsibleTreeContext<TMeta>()\n\n\t// Want to overwrite the global disabled state if defined specifically for a node\n\tconst isDisabled = disabled ?? disabledFromContext\n\n\tconst handleClick = useCallback(() => {\n\t\tif (onNodeClick) onNodeClick(meta)\n\t}, [meta, onNodeClick])\n\n\tconst toggleOpenState = useCallback(() => {\n\t\tsetControlledOpenState(!controlledOpenState)\n\n\t\t// If moving from closed to open, call onNodeOpen\n\t\tif (!controlledOpenState && onNodeOpen) onNodeOpen(meta)\n\n\t\t// If moving from open to closed, call onNodeClose\n\t\tif (controlledOpenState && onNodeClose) onNodeClose(meta)\n\t}, [meta, onNodeClose, onNodeOpen, controlledOpenState])\n\n\tconst { children, style, className } = useMemo(() => {\n\t\treturn nodeRenderer({\n\t\t\tmeta,\n\t\t\ttoggleOpen: toggleOpenState,\n\t\t\topen: controlledOpenState,\n\t\t\tdisabled: isDisabled,\n\t\t})\n\t}, [isDisabled, meta, nodeRenderer, toggleOpenState, controlledOpenState])\n\n\tconst combinedStyles = useMemo(\n\t\t() => ({\n\t\t\t// want node specific styles to overwrite and global node styles\n\t\t\t...nodeStyles,\n\t\t\t...style,\n\t\t}),\n\t\t[nodeStyles, style],\n\t)\n\n\treturn (\n\t\t<RadixPrimitiveCollapsible.Root asChild open={controlledOpenState} disabled={isDisabled}>\n\t\t\t<div className=\"flex w-full flex-col\">\n\t\t\t\t<div\n\t\t\t\t\tonClick={handleClick}\n\t\t\t\t\tclassName={cx(nodeClassName, \"flex w-full shrink-0 items-center\", className)}\n\t\t\t\t\tstyle={combinedStyles}\n\t\t\t\t\t// These are useful, and another way to style the TreeNode based on its open or disabled state\n\t\t\t\t\tdata-state={controlledOpenState ? \"open\" : \"closed\"}\n\t\t\t\t\tdata-disabled={isDisabled}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</div>\n\t\t\t\t{nodes && nodes.length > 0 && (\n\t\t\t\t\t<RadixPrimitiveCollapsible.Content asChild>\n\t\t\t\t\t\t<div className=\"flex h-max w-full flex-col pl-2\">\n\t\t\t\t\t\t\t{nodes.map((treeNodeProps, index) => (\n\t\t\t\t\t\t\t\t<CollapsibleNode<TMeta>\n\t\t\t\t\t\t\t\t\tlevel={level + 1}\n\t\t\t\t\t\t\t\t\tkey={`${level},${index}`}\n\t\t\t\t\t\t\t\t\t{...treeNodeProps}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</RadixPrimitiveCollapsible.Content>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</RadixPrimitiveCollapsible.Root>\n\t)\n})\n\n/** The Collapsible Tree Component is a reusable UI element that displays hierarchical data in a tree structure.\n * Nodes in the tree can be expanded or collapsed to show or hide their children, allowing for an intuitive and\n * space-efficient way to navigate complex data structures.*/\nexport const CollapsibleTree = genericMemo(function <TMeta>(props: CollapsibleTreeProps<TMeta>) {\n\tconst {\n\t\tnodes,\n\t\tdisabled = false,\n\t\tnodeClassName,\n\t\tnodeStyles,\n\t\tonNodeClick,\n\t\tonNodeClose,\n\t\tonNodeOpen,\n\t\tnodeRenderer,\n\t\t...rest\n\t} = props\n\treturn (\n\t\t<CollapsibleTreeContext.Provider\n\t\t\tvalue={{\n\t\t\t\tnodeRenderer,\n\t\t\t\tnodeClassName,\n\t\t\t\tnodeStyles,\n\t\t\t\tdisabled,\n\t\t\t\tonNodeClick,\n\t\t\t\tonNodeClose,\n\t\t\t\tonNodeOpen,\n\t\t\t}}\n\t\t>\n\t\t\t<div className=\"flex h-max w-full flex-col\" {...rest}>\n\t\t\t\t{nodes.map((treeNodeProps, index) => (\n\t\t\t\t\t<CollapsibleNode<TMeta> key={`${0},${index}`} {...treeNodeProps} />\n\t\t\t\t))}\n\t\t\t</div>\n\t\t</CollapsibleTreeContext.Provider>\n\t)\n})\n","import { createContext } from \"react\"\n\nimport type { ComponentRadius } from \"../Provider\"\nimport type { CheckedState, CommandMenuSize, CommandMenuVariant } from \"./typings\"\n\ninterface ICommandMenuContext {\n\tsize: CommandMenuSize\n\tvariant: CommandMenuVariant\n\tradius: ComponentRadius\n}\n\nexport const CommandMenuContext = createContext<ICommandMenuContext>({} as ICommandMenuContext)\n\nexport const SelectedIndicatorContext = createContext<boolean>(false)\n\nexport const CheckboxIndicatorContext = createContext<CheckedState>(false)\n\nexport interface IMenuPagesContext {\n\tpage: string\n\tsetPage: (page: string) => void\n}\n\nexport const CommandMenuPageContext = createContext({} as IMenuPagesContext)\n\nexport interface ICommandMenuDialogContext {\n\topen: boolean\n\tsetOpen: (open: boolean) => void\n}\n\nexport const CommandMenuDialogContext = createContext({} as ICommandMenuDialogContext)\n","import type { CheckedState } from \"../CheckedIndicator\"\n\nexport function getSelectedState(selected: boolean) {\n\treturn selected ? \"selected\" : \"unselected\"\n}\n\nexport function getCheckedState(checked: CheckedState) {\n\treturn checked === true ? \"checked\" : checked === false ? \"unchecked\" : \"indeterminate\"\n}\n\nexport function getActiveState(active: boolean) {\n\treturn active ? \"active\" : \"inactive\"\n}\n","import { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, ReactNode, use, useMemo } from \"react\"\n\nimport { CheckboxIndicatorContext } from \"./context\"\nimport type { CheckedState } from \"./typings\"\nimport { getCheckedState } from \"./utils\"\n\nexport interface CommandMenuCheckboxIndicatorProps extends Omit<ComponentPropsWithRef<\"span\">, \"children\"> {\n\tchildren: ReactNode | ((checked: CheckedState) => ReactNode)\n}\n\nexport const CommandMenuCheckboxIndicator = (props: CommandMenuCheckboxIndicatorProps) => {\n\tconst { ref, className, children, ...rest } = props\n\tconst checkedState = use(CheckboxIndicatorContext)\n\n\t// Memoize the children rendering based on checked state\n\tconst computedChildren = useMemo(() => {\n\t\treturn typeof children === \"function\" ? children(checkedState) : children\n\t}, [checkedState, children])\n\n\treturn (\n\t\t<span\n\t\t\tref={ref}\n\t\t\tdata-state={getCheckedState(checkedState)}\n\t\t\tclassName={cx(\n\t\t\t\t\"inline-block size-max\",\n\t\t\t\t{\n\t\t\t\t\tinvisible: checkedState === false,\n\t\t\t\t},\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{computedChildren}\n\t\t</span>\n\t)\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const commandMenuContentCva = cva(\n\t[\n\t\t\"ring\",\n\t\t\"ring-(--base-6)\",\n\t\t\"shadow-md\",\n\t\t\"fixed\",\n\t\t\"max-w-lg\",\n\t\t\"size-full\",\n\t\t\"h-max\",\n\t\t\"overflow-hidden\",\n\t\t\"bg-(--color-background)\",\n\t\t\"dark:bg-(--base-2)\",\n\t\t\"outline-none\",\n\t\t\"top-[15%]\",\n\t\t\"left-1/2\",\n\t\t\"-translate-x-1/2\",\n\t\t\"data-[state='open']:animate-in\",\n\t\t\"data-[state='open']:fade-in-0\",\n\t\t\"data-[state='closed']:animate-out\",\n\t\t\"data-[state='closed']:fade-out-0\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"text-sm\"],\n\t\t\t\tsm: [\"text-base\"],\n\t\t\t\tmd: [\"text-base\"],\n\t\t\t\tlg: [\"text-lg\"],\n\t\t\t\txl: [\"text-lg\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n\nexport const commandMenuOverlayCva = cva([\n\t\"fixed\",\n\t\"inset-0\",\n\t\"duration-200\",\n\t\"bg-(--black-a6)\",\n\t\"dark:bg-(--black-a8)\",\n\t\"data-[state='open']:animate-in\",\n\t\"data-[state='open']:fade-in-0\",\n\t\"data-[state='closed']:animate-out\",\n\t\"data-[state='closed']:fade-out-0\",\n])\n\nexport const commandMenuListCva = cva(\n\t[\"[scrollbar-width:thin]\", \"[scrollbar-color:var(--base-6)_transparent]\", \"overflow-auto\", \"h-max\", \"max-h-100\"],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"py-1.75\", \"scroll-py-1.75\"],\n\t\t\t\tsm: [\"py-2\", \"scroll-py-2\"],\n\t\t\t\tmd: [\"py-2.25\", \"scroll-py-2.25\"],\n\t\t\t\tlg: [\"py-2.5\", \"scroll-py-2.5\"],\n\t\t\t\txl: [\"py-2.75\", \"scroll-py-2.75\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n\nexport const commandMenuInputCva = cva([\"outline-none\", \"w-full\", \"placeholder-(--base-a9)\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"h-12\", \"px-5.25\", \"text-base\"],\n\t\t\tsm: [\"h-13\", \"px-6\", \"text-lg\"],\n\t\t\tmd: [\"h-14\", \"px-6.75\", \"text-lg\"],\n\t\t\tlg: [\"h-15\", \"px-8.5\", \"text-xl\"],\n\t\t\txl: [\"h-16\", \"px-9.25\", \"text-xl\"],\n\t\t},\n\t},\n})\n\nexport const commandMenuSeparatorCva = cva([\"h-px\", \"bg-(--base-a6)\", \"w-full\"], {\n\tvariants: {\n\t\tspacing: {\n\t\t\ttrue: [],\n\t\t\tfalse: [],\n\t\t},\n\t\tsize: {\n\t\t\txs: [],\n\t\t\tsm: [],\n\t\t\tmd: [],\n\t\t\tlg: [],\n\t\t\txl: [],\n\t\t},\n\t},\n\tcompoundVariants: [\n\t\t{ spacing: true, size: \"xs\", className: [\"my-1.75\"] },\n\t\t{ spacing: true, size: \"sm\", className: [\"my-2\"] },\n\t\t{ spacing: true, size: \"md\", className: [\"my-2.25\"] },\n\t\t{ spacing: true, size: \"lg\", className: [\"my-2.5\"] },\n\t\t{ spacing: true, size: \"xl\", className: [\"my-2.75\"] },\n\t],\n})\n\nexport const commandMenuItemCva = cva(\n\t[\n\t\t\"relative\",\n\t\t\"flex\",\n\t\t\"items-center\",\n\t\t\"outline-none\",\n\n\t\t// select\n\t\t\"select-none\",\n\n\t\t// cursor\n\t\t\"cursor-pointer\",\n\n\t\t// disabled\n\t\t\"data-[disabled=true]:text-(--base-a8)\",\n\t\t\"data-[disabled=true]:pointer-events-none\",\n\n\t\t// after\n\t\t\"after:absolute\",\n\t\t\"after:bg-transparent\",\n\t\t\"after:z-[-1]\",\n\t\t\"after:inset-y-0\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"py-2.5\", \"gap-3.5\", \"px-5.25\", \"after:inset-x-1.75\"],\n\t\t\t\tsm: [\"py-2.5\", \"gap-4\", \"px-6\", \"after:inset-x-2\"],\n\t\t\t\tmd: [\"py-3\", \"gap-4.5\", \"px-6.75\", \"after:inset-x-2.25\"],\n\t\t\t\tlg: [\"py-3\", \"gap-5\", \"px-7.5\", \"after:inset-x-2.5\"],\n\t\t\t\txl: [\"py-3.25\", \"gap-5.5\", \"px-8.25\", \"after:inset-x-2.75\"],\n\t\t\t},\n\t\t\tvariant: {\n\t\t\t\tsolid: [\n\t\t\t\t\t\"text-(--base-12)\",\n\t\t\t\t\t\"data-[selected=true]:text-(--accent-contrast)\",\n\t\t\t\t\t\"data-[selected=true]:after:bg-(--accent-a9)\",\n\t\t\t\t\t\"data-[selected=true]:active:after:brightness-110\",\n\t\t\t\t],\n\t\t\t\tsoft: [\n\t\t\t\t\t\"text-(--base-12)\",\n\t\t\t\t\t\"data-[selected=true]:after:bg-(--accent-a3)\",\n\t\t\t\t\t\"data-[selected=true]:active:after:bg-(--accent-a4)\",\n\t\t\t\t],\n\t\t\t},\n\t\t\tradius: {\n\t\t\t\tnone: [\"after:rounded-none\"],\n\t\t\t\txs: [\"after:rounded-xs\"],\n\t\t\t\tsm: [\"after:rounded-sm\"],\n\t\t\t\tmd: [\"after:rounded-md\"],\n\t\t\t\tlg: [\"after:rounded-lg\"],\n\t\t\t\txl: [\"after:rounded-xl\"],\n\t\t\t\tfull: [\"after:rounded-full\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t\tvariant: \"soft\",\n\t\t},\n\t},\n)\n\nexport const commandMenuEmptyCva = cva([\"flex\", \"justify-center\", \"text-(--base-a11)\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"py-3.5\"],\n\t\t\tsm: [\"py-4\"],\n\t\t\tmd: [\"py-4.5\"],\n\t\t\tlg: [\"py-5\"],\n\t\t\txl: [\"py-5.5\"],\n\t\t},\n\t},\n})\n\nexport const commandMenuGroupCva = cva(\n\t[\n\t\t\"[&_[cmdk-group-heading]]:text-(--base-a10)\",\n\t\t\"[&_[cmdk-group-heading]]:flex\",\n\t\t\"[&_[cmdk-group-heading]]:items-center\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:px-2.5\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:py-1\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:text-xs\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:gap-2.5\",\n\t\t\t\t],\n\t\t\t\tsm: [\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:px-2.75\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:py-1\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:text-sm\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:gap-2.75\",\n\t\t\t\t],\n\t\t\t\tmd: [\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:px-3\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:py-1.25\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:text-sm\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:gap-3\",\n\t\t\t\t],\n\t\t\t\tlg: [\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:px-3.25\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:py-1.25\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:text-base\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:gap-3.25\",\n\t\t\t\t],\n\t\t\t\txl: [\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:px-3.5\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:py-1.25\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:text-base\",\n\t\t\t\t\t\"[&_[cmdk-group-heading]]:gap-3.5\",\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n)\n","import { cx } from \"class-variance-authority\"\nimport { CommandItem } from \"cmdk\"\nimport { ComponentPropsWithRef, memo, use, useCallback } from \"react\"\n\nimport { CommandMenuContext, CommandMenuDialogContext } from \"./context\"\nimport { commandMenuItemCva } from \"./cva\"\n\nexport interface CommandMenuItemProps extends Omit<ComponentPropsWithRef<typeof CommandItem>, \"value\" | \"onSelect\"> {\n\tcloseOnSelect?: boolean\n\tfilterValue?: string\n\tonSelect?: () => void\n}\n\nexport const CommandMenuItem = memo<CommandMenuItemProps>((props) => {\n\tconst { className, ref, closeOnSelect = true, onSelect, filterValue, ...rest } = props\n\n\tconst { size, variant, radius } = use(CommandMenuContext)\n\tconst { setOpen } = use(CommandMenuDialogContext)\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\n\t\tif (closeOnSelect) {\n\t\t\tsetOpen(false)\n\t\t}\n\t}, [closeOnSelect, onSelect, setOpen])\n\n\treturn (\n\t\t<CommandItem\n\t\t\tclassName={cx(commandMenuItemCva({ size, variant, radius }), className)}\n\t\t\tref={ref}\n\t\t\tonSelect={handleSelect}\n\t\t\tvalue={filterValue}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nCommandMenuItem.displayName = \"CommandMenuItem\"\n","import { useCallback } from \"react\"\n\nimport { CheckboxIndicatorContext } from \"./context\"\nimport { CommandMenuItem, CommandMenuItemProps } from \"./Item\"\nimport type { CheckedState } from \"./typings\"\nimport { getCheckedState } from \"./utils\"\n\nexport interface CommandMenuCheckboxItemProps extends CommandMenuItemProps {\n\tchecked: CheckedState\n\tonCheckedChange: (checked: boolean) => void\n}\n\nexport const CommandMenuCheckboxItem = (props: CommandMenuCheckboxItemProps) => {\n\tconst { children, ref, checked, onCheckedChange, onSelect, ...rest } = props\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\n\t\t// TODO: should send an event here that contains the value and then can prevent default for more control\n\t\t// if (e.defaultPrevented) return\n\n\t\tonCheckedChange(checked !== true)\n\t}, [checked, onCheckedChange, onSelect])\n\n\treturn (\n\t\t<CheckboxIndicatorContext value={checked}>\n\t\t\t<CommandMenuItem ref={ref} onSelect={handleSelect} data-state={getCheckedState(checked)} {...rest}>\n\t\t\t\t{children}\n\t\t\t</CommandMenuItem>\n\t\t</CheckboxIndicatorContext>\n\t)\n}\n","import {\n\tDialogContent,\n\tDialogContentProps,\n\tDialogDescription,\n\tDialogPortal,\n\tDialogPortalProps,\n\tDialogTitle,\n} from \"@radix-ui/react-dialog\"\nimport { cx } from \"class-variance-authority\"\nimport { CommandRoot } from \"cmdk\"\nimport { ComponentPropsWithRef, memo, useMemo } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { CommandMenuContext } from \"./context\"\nimport { commandMenuContentCva } from \"./cva\"\nimport type { CommandMenuVariantProps } from \"./typings\"\n\nexport interface CommandMenuContentProps\n\textends ComponentPropsWithRef<typeof CommandRoot>,\n\t\tPick<\n\t\t\tDialogContentProps,\n\t\t\t| \"forceMount\"\n\t\t\t| \"onOpenAutoFocus\"\n\t\t\t| \"onCloseAutoFocus\"\n\t\t\t| \"onEscapeKeyDown\"\n\t\t\t| \"onPointerDownOutside\"\n\t\t\t| \"onInteractOutside\"\n\t\t>,\n\t\tPick<DialogPortalProps, \"container\">,\n\t\tCommandMenuVariantProps {}\n\nexport const CommandMenuContent = memo<CommandMenuContentProps>((props) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tchildren,\n\t\tclassName,\n\t\tref,\n\t\t// DialogContent props\n\t\tforceMount,\n\t\tonOpenAutoFocus,\n\t\tonCloseAutoFocus,\n\t\tonEscapeKeyDown,\n\t\tonPointerDownOutside,\n\t\tonInteractOutside,\n\t\t// CommandMenuVariantProps\n\t\tvariant = \"soft\",\n\t\tsize = \"md\",\n\t\taccentColor = \"base\",\n\t\tradius = providerContext.radius,\n\t\t...rest\n\t} = props\n\n\tconst contextValue = useMemo(() => {\n\t\treturn {\n\t\t\tvariant,\n\t\t\tsize,\n\t\t\tradius,\n\t\t}\n\t}, [radius, size, variant])\n\n\treturn (\n\t\t<DialogPortal>\n\t\t\t<DialogContent\n\t\t\t\tforceMount={forceMount}\n\t\t\t\tonOpenAutoFocus={onOpenAutoFocus}\n\t\t\t\tonCloseAutoFocus={onCloseAutoFocus}\n\t\t\t\tonEscapeKeyDown={onEscapeKeyDown}\n\t\t\t\tonPointerDownOutside={onPointerDownOutside}\n\t\t\t\tonInteractOutside={onInteractOutside}\n\t\t\t\tdata-floating-content=\"\"\n\t\t\t\tasChild\n\t\t\t>\n\t\t\t\t<CommandRoot\n\t\t\t\t\tclassName={cx(commandMenuContentCva({ size }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\t\t\tref={ref}\n\t\t\t\t\tdata-accent-color={accentColor}\n\t\t\t\t\t{...rest}\n\t\t\t\t>\n\t\t\t\t\t<DialogTitle className=\"sr-only\">{props.label}</DialogTitle>\n\t\t\t\t\t<DialogDescription className=\"sr-only\">Use the command menu to trigger commands.</DialogDescription>\n\t\t\t\t\t<CommandMenuContext value={contextValue}>{children}</CommandMenuContext>\n\t\t\t\t</CommandRoot>\n\t\t\t</DialogContent>\n\t\t</DialogPortal>\n\t)\n})\nCommandMenuContent.displayName = \"CommandMenuContent\"\n","import { cx } from \"class-variance-authority\"\nimport { CommandEmpty } from \"cmdk\"\nimport { ComponentPropsWithRef, memo, use } from \"react\"\n\nimport { CommandMenuContext } from \"./context\"\nimport { commandMenuEmptyCva } from \"./cva\"\n\nexport interface CommandMenuEmptyProps extends ComponentPropsWithRef<typeof CommandEmpty> {}\n\nexport const CommandMenuEmpty = memo<CommandMenuEmptyProps>((props) => {\n\tconst { className, ref, ...rest } = props\n\n\tconst { size } = use(CommandMenuContext)\n\n\treturn <CommandEmpty className={cx(commandMenuEmptyCva({ size }), className)} ref={ref} {...rest} />\n})\nCommandMenuEmpty.displayName = \"CommandMenuEmpty\"\n","import { cx } from \"class-variance-authority\"\nimport { CommandGroup } from \"cmdk\"\nimport { ComponentPropsWithRef, memo, use } from \"react\"\n\nimport { CommandMenuContext } from \"./context\"\nimport { commandMenuGroupCva } from \"./cva\"\n\nexport interface CommandMenuGroupProps extends ComponentPropsWithRef<typeof CommandGroup> {}\n\nexport const CommandMenuGroup = memo<CommandMenuGroupProps>((props) => {\n\tconst { className, ref, ...rest } = props\n\n\tconst { size } = use(CommandMenuContext)\n\n\treturn <CommandGroup className={cx(commandMenuGroupCva({ size }), className)} ref={ref} {...rest} />\n})\nCommandMenuGroup.displayName = \"CommandMenuGroup\"\n","import { cx } from \"class-variance-authority\"\nimport { CommandInput } from \"cmdk\"\nimport { ComponentPropsWithRef, memo, use } from \"react\"\n\nimport { CommandMenuContext } from \"./context\"\nimport { commandMenuInputCva } from \"./cva\"\n\nexport interface CommandMenuInputProps extends ComponentPropsWithRef<typeof CommandInput> {}\n\nexport const CommandMenuInput = memo<CommandMenuInputProps>((props) => {\n\tconst { className, ref, ...rest } = props\n\n\tconst { size } = use(CommandMenuContext)\n\n\treturn <CommandInput className={cx(commandMenuInputCva({ size }), className)} ref={ref} {...rest} />\n})\nCommandMenuInput.displayName = \"CommandMenuInput\"\n","import { cx } from \"class-variance-authority\"\nimport { CommandList, useCommandState } from \"cmdk\"\nimport { ComponentPropsWithRef, memo, use } from \"react\"\n\nimport { CommandMenuContext } from \"./context\"\nimport { commandMenuListCva } from \"./cva\"\n\nexport interface CommandMenuListProps extends ComponentPropsWithRef<typeof CommandList> {}\n\nexport const CommandMenuList = memo<CommandMenuListProps>((props) => {\n\tconst { className, ref, ...rest } = props\n\n\tconst { size } = use(CommandMenuContext)\n\tconst filterCount = useCommandState((state) => state.filtered.count)\n\n\treturn (\n\t\t<CommandList\n\t\t\tclassName={cx(commandMenuListCva({ size }), className)}\n\t\t\tref={ref}\n\t\t\thidden={filterCount === 0}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nCommandMenuList.displayName = \"CommandMenuList\"\n","import { MultiSelectProvider } from \"../SelectContext\"\nimport type { MultiSelectProps } from \"../SelectContext/typings\"\nimport { genericMemo } from \"../utils\"\nimport { CommandMenuGroup, CommandMenuGroupProps } from \"./Group\"\n\nexport interface CommandMenuMultiSelectGroupProps<TValue> extends CommandMenuGroupProps, MultiSelectProps<TValue> {}\n\nexport const CommandMenuMultiSelectGroup = genericMemo(function CommandMenuMultiSelectGroup<TValue>(\n\tprops: CommandMenuMultiSelectGroupProps<TValue>,\n) {\n\tconst { children, ref, defaultValues, values, onValuesChange, ...rest } = props\n\n\treturn (\n\t\t<MultiSelectProvider<TValue> values={values} onValuesChange={onValuesChange} defaultValues={defaultValues}>\n\t\t\t<CommandMenuGroup ref={ref} aria-multiselectable {...rest}>\n\t\t\t\t{children}\n\t\t\t</CommandMenuGroup>\n\t\t</MultiSelectProvider>\n\t)\n})\n","import { use, useCallback, useLayoutEffect } from \"react\"\n\nimport { IMultiSelectContext, MultiSelectContext } from \"../SelectContext\"\nimport { genericMemo } from \"../utils\"\nimport { SelectedIndicatorContext } from \"./context\"\nimport { CommandMenuItem, CommandMenuItemProps } from \"./Item\"\nimport { getSelectedState } from \"./utils\"\n\nexport interface CommandMenuMultiSelectItemProps<TValue> extends CommandMenuItemProps {\n\tvalue: TValue\n}\n\nexport const CommandMenuMultiSelectItem = genericMemo(function <TValue>(\n\tprops: CommandMenuMultiSelectItemProps<TValue>,\n) {\n\tconst { children, ref, value, onSelect, closeOnSelect = false, ...rest } = props\n\tconst {\n\t\tselected,\n\t\tselectValue: handleSelectValue,\n\t\tregisterValue,\n\t} = use(MultiSelectContext) as IMultiSelectContext<TValue> // safe cast\n\n\tuseLayoutEffect(() => {\n\t\treturn registerValue(value)\n\t}, [registerValue, value])\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\n\t\t// TODO: should send an event here that contains the value and then can prevent default for more control\n\t\t// if (e.defaultPrevented) return\n\n\t\thandleSelectValue(value)\n\t}, [handleSelectValue, onSelect, value])\n\n\tconst isSelected = selected(value)\n\n\treturn (\n\t\t<SelectedIndicatorContext value={isSelected}>\n\t\t\t<CommandMenuItem\n\t\t\t\tref={ref}\n\t\t\t\tonSelect={handleSelect}\n\t\t\t\tdata-state={getSelectedState(isSelected)}\n\t\t\t\taria-selected={isSelected}\n\t\t\t\tcloseOnSelect={closeOnSelect}\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</CommandMenuItem>\n\t\t</SelectedIndicatorContext>\n\t)\n})\n","import type { DialogOverlayProps, DialogPortalProps } from \"@radix-ui/react-dialog\"\nimport { DialogOverlay, DialogPortal } from \"@radix-ui/react-dialog\"\nimport { cx } from \"class-variance-authority\"\nimport { memo } from \"react\"\n\nimport { commandMenuOverlayCva } from \"./cva\"\n\nexport interface CommandMenuOverlayProps extends DialogOverlayProps, Pick<DialogPortalProps, \"container\"> {}\n\nexport const CommandMenuOverlay = memo<CommandMenuOverlayProps>((props) => {\n\tconst { container, className, ...rest } = props\n\n\treturn (\n\t\t<DialogPortal container={container}>\n\t\t\t<DialogOverlay className={cx(commandMenuOverlayCva(), className)} data-floating-content=\"\" {...rest} />\n\t\t</DialogPortal>\n\t)\n})\nCommandMenuOverlay.displayName = \"CommandMenuOverlay\"\n","import { ComponentPropsWithRef, use, useMemo } from \"react\"\n\nimport { CommandMenuPageContext } from \"./context\"\nimport { getActiveState } from \"./utils\"\n\nexport interface CommandMenuPageProps extends ComponentPropsWithRef<\"div\"> {\n\tpage: string\n}\n\nexport const CommandMenuPage = (props: CommandMenuPageProps) => {\n\tconst { children, ref, page, ...rest } = props\n\tconst { page: activePage } = use(CommandMenuPageContext)\n\n\tconst isActive = useMemo(() => page === activePage, [page, activePage])\n\n\treturn (\n\t\t<div ref={ref} data-active={getActiveState(isActive)} hidden={!isActive} {...rest}>\n\t\t\t{isActive ? children : null}\n\t\t</div>\n\t)\n}\n","import { PropsWithChildren } from \"react\"\n\nimport { useControlledState } from \"../utils\"\nimport { CommandMenuPageContext } from \"./context\"\n\nexport interface CommandMenuPagesProps extends PropsWithChildren {\n\tdefaultPage?: string\n\tpage?: string\n\tonPageChange?: (page: string) => void\n}\n\nexport const CommandMenuPages = (props: CommandMenuPagesProps) => {\n\tconst { children, defaultPage = \"\", page: controlledPage, onPageChange } = props\n\n\tconst [page, setPage] = useControlledState(defaultPage, controlledPage, onPageChange)\n\n\treturn <CommandMenuPageContext value={{ page, setPage }}>{children}</CommandMenuPageContext>\n}\n","import { use, useCallback, useMemo } from \"react\"\n\nimport { CommandMenuPageContext, SelectedIndicatorContext } from \"./context\"\nimport { CommandMenuItem, CommandMenuItemProps } from \"./Item\"\nimport { getActiveState } from \"./utils\"\n\nexport interface CommandMenuPageTriggerItemProps extends CommandMenuItemProps {\n\tpage: string\n}\n\nexport const CommandMenuPageTriggerItem = (props: CommandMenuPageTriggerItemProps) => {\n\tconst { ref, page, onSelect, closeOnSelect = false, ...rest } = props\n\tconst { page: activePage, setPage } = use(CommandMenuPageContext)\n\n\tconst isActive = useMemo(() => page === activePage, [page, activePage])\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\n\t\t// TODO: should send an event here that contains the value and then can prevent default for more control\n\t\t// if (e.defaultPrevented) return\n\n\t\tsetPage(page)\n\t}, [onSelect, page, setPage])\n\n\treturn (\n\t\t<SelectedIndicatorContext value={isActive}>\n\t\t\t<CommandMenuItem\n\t\t\t\tref={ref}\n\t\t\t\tonSelect={handleSelect}\n\t\t\t\tdata-state={getActiveState(isActive)}\n\t\t\t\tcloseOnSelect={closeOnSelect}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t</SelectedIndicatorContext>\n\t)\n}\n","import { SingleSelectNotRequiredProvider, SingleSelectRequiredProvider } from \"../SelectContext\"\nimport { SingleSelectProps } from \"../SelectContext/typings\"\nimport { genericMemo } from \"../utils\"\nimport { CommandMenuGroup, CommandMenuGroupProps } from \"./Group\"\n\nexport type CommandMenuRadioGroupProps<TValue> = SingleSelectProps<TValue> &\n\tOmit<CommandMenuGroupProps, \"defaultValue\" | \"value\">\n\nexport const CommandMenuRadioGroup = genericMemo(function CommandMenuRadioGroup<TValue>(\n\tprops: CommandMenuRadioGroupProps<TValue>,\n) {\n\tconst { children, ref, required, defaultValue, value, onValueChange, ...rest } = props\n\n\treturn (\n\t\t<CommandMenuGroup ref={ref} role=\"radiogroup\" {...rest}>\n\t\t\t{required ? (\n\t\t\t\t<SingleSelectRequiredProvider<TValue>\n\t\t\t\t\tdefaultValue={defaultValue}\n\t\t\t\t\tvalue={value}\n\t\t\t\t\tonValueChange={onValueChange}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</SingleSelectRequiredProvider>\n\t\t\t) : (\n\t\t\t\t<SingleSelectNotRequiredProvider<TValue>\n\t\t\t\t\tdefaultValue={defaultValue}\n\t\t\t\t\tvalue={value}\n\t\t\t\t\tonValueChange={onValueChange}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</SingleSelectNotRequiredProvider>\n\t\t\t)}\n\t\t</CommandMenuGroup>\n\t)\n})\n","import { use, useCallback } from \"react\"\n\nimport { ISelectContext, SelectContext } from \"../SelectContext\"\nimport { genericMemo } from \"../utils\"\nimport { SelectedIndicatorContext } from \"./context\"\nimport { CommandMenuItem, CommandMenuItemProps } from \"./Item\"\nimport { getSelectedState } from \"./utils\"\n\nexport interface CommandMenuRadioItemProps<TValue> extends CommandMenuItemProps {\n\tvalue: TValue\n}\n\nexport const CommandMenuRadioItem = genericMemo(function <TValue>(props: CommandMenuRadioItemProps<TValue>) {\n\tconst { children, ref, value, onSelect, ...rest } = props\n\tconst { selected, selectValue } = use(SelectContext) as ISelectContext<TValue> // safe cast\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\n\t\t// TODO: should send an event here that contains the value and then can prevent default for more control\n\t\t// if (e.defaultPrevented) return\n\n\t\tselectValue(value)\n\t}, [onSelect, selectValue, value])\n\n\tconst isSelected = selected(value)\n\n\treturn (\n\t\t<SelectedIndicatorContext value={isSelected}>\n\t\t\t<CommandMenuItem ref={ref} onSelect={handleSelect} data-state={getSelectedState(isSelected)} {...rest}>\n\t\t\t\t{children}\n\t\t\t</CommandMenuItem>\n\t\t</SelectedIndicatorContext>\n\t)\n})\n","import type { DialogProps } from \"@radix-ui/react-dialog\"\nimport * as RadixDialog from \"@radix-ui/react-dialog\"\nimport { memo, useMemo } from \"react\"\n\nimport { useControlledState } from \"../utils\"\nimport { CommandMenuDialogContext } from \"./context\"\n\nexport interface CommandMenuRootProps extends DialogProps {}\n\nexport const CommandMenuRoot = memo<CommandMenuRootProps>((props) => {\n\tconst { children, defaultOpen, open: controlledOpen, onOpenChange, modal } = props\n\n\tconst [open, setOpen] = useControlledState(defaultOpen ?? false, controlledOpen, onOpenChange)\n\n\tconst contextValue = useMemo(() => {\n\t\treturn {\n\t\t\topen,\n\t\t\tsetOpen,\n\t\t}\n\t}, [open, setOpen])\n\n\treturn (\n\t\t<RadixDialog.Root defaultOpen={defaultOpen} open={open} onOpenChange={setOpen} modal={modal}>\n\t\t\t<CommandMenuDialogContext value={contextValue}>{children}</CommandMenuDialogContext>\n\t\t</RadixDialog.Root>\n\t)\n})\nCommandMenuRoot.displayName = \"CommandMenuRoot\"\n","import { use, useCallback } from \"react\"\n\nimport { IMultiSelectContext, MultiSelectContext } from \"../SelectContext\"\nimport { genericMemo } from \"../utils\"\nimport { CheckboxIndicatorContext } from \"./context\"\nimport { CommandMenuItem, CommandMenuItemProps } from \"./Item\"\nimport type { CheckedState } from \"./typings\"\nimport { getCheckedState } from \"./utils\"\n\nexport interface CommandMenuSelectAllItemProps extends CommandMenuItemProps {}\n\nexport const CommandMenuSelectAllItem = genericMemo(function <TValue>(props: CommandMenuSelectAllItemProps) {\n\tconst { ref, onSelect, closeOnSelect = false, ...rest } = props\n\tconst { allSelected, someSelected, toggleSelectAll } = use(MultiSelectContext) as IMultiSelectContext<TValue> // safe cast\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\n\t\t// TODO: should send an event here that contains the value and then can prevent default for more control\n\t\t// if (e.defaultPrevented) return\n\n\t\ttoggleSelectAll()\n\t}, [onSelect, toggleSelectAll])\n\n\tconst selectedState: CheckedState = allSelected ? true : someSelected ? \"indeterminate\" : false\n\n\treturn (\n\t\t<CheckboxIndicatorContext value={selectedState}>\n\t\t\t<CommandMenuItem\n\t\t\t\tref={ref}\n\t\t\t\trole=\"menuitemcheckbox\"\n\t\t\t\tonSelect={handleSelect}\n\t\t\t\tdata-state={getCheckedState(selectedState)}\n\t\t\t\tcloseOnSelect={closeOnSelect}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t</CheckboxIndicatorContext>\n\t)\n})\n","import { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, ReactNode, use, useMemo } from \"react\"\n\nimport { SelectedIndicatorContext } from \"./context\"\nimport { getSelectedState } from \"./utils\"\n\nexport interface CommandMenuSelectedIndicatorProps extends Omit<ComponentPropsWithRef<\"span\">, \"children\"> {\n\tchildren: ReactNode | ((selected: boolean) => ReactNode)\n}\n\nexport const CommandMenuSelectedIndicator = (props: CommandMenuSelectedIndicatorProps) => {\n\tconst { ref, className, children, ...rest } = props\n\tconst isSelected = use(SelectedIndicatorContext)\n\n\tconst computedChildren = useMemo(() => {\n\t\treturn typeof children === \"function\" ? children(isSelected) : children\n\t}, [isSelected, children])\n\n\treturn (\n\t\t<span\n\t\t\tref={ref}\n\t\t\tdata-state={getSelectedState(isSelected)}\n\t\t\tclassName={cx(\n\t\t\t\t\"inline-block size-max\",\n\t\t\t\t{\n\t\t\t\t\tinvisible: !isSelected,\n\t\t\t\t},\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{computedChildren}\n\t\t</span>\n\t)\n}\n","import { cx } from \"class-variance-authority\"\nimport { CommandSeparator } from \"cmdk\"\nimport { ComponentPropsWithRef, memo, use } from \"react\"\n\nimport { CommandMenuContext } from \"./context\"\nimport { commandMenuSeparatorCva } from \"./cva\"\n\nexport interface CommandMenuSeparatorProps extends ComponentPropsWithRef<typeof CommandSeparator> {\n\tspacing?: boolean\n}\n\nexport const CommandMenuSeparator = memo<CommandMenuSeparatorProps>((props) => {\n\tconst { className, ref, spacing = false, ...rest } = props\n\n\tconst { size } = use(CommandMenuContext)\n\n\treturn (\n\t\t<CommandSeparator ref={ref} className={cx(commandMenuSeparatorCva({ size, spacing }), className)} {...rest} />\n\t)\n})\nCommandMenuSeparator.displayName = \"CommandMenuSeparator\"\n","import type { DialogTriggerProps } from \"@radix-ui/react-dialog\"\nimport { DialogTrigger } from \"@radix-ui/react-dialog\"\nimport { memo } from \"react\"\n\nexport interface CommandMenuTriggerProps extends DialogTriggerProps {}\n\nexport const CommandMenuTrigger = memo<CommandMenuTriggerProps>((props) => {\n\treturn <DialogTrigger {...props} />\n})\nCommandMenuTrigger.displayName = \"CommandMenuTrigger\"\n","import { CommandMenuCheckboxIndicator } from \"./CheckboxIndicator\"\nimport { CommandMenuCheckboxItem } from \"./CheckboxItem\"\nimport { CommandMenuContent } from \"./Content\"\nimport { CommandMenuEmpty } from \"./Empty\"\nimport { CommandMenuGroup } from \"./Group\"\nimport { CommandMenuInput } from \"./Input\"\nimport { CommandMenuItem } from \"./Item\"\nimport { CommandMenuList } from \"./List\"\nimport { CommandMenuMultiSelectGroup } from \"./MultiSelectGroup\"\nimport { CommandMenuMultiSelectItem } from \"./MultiSelectItem\"\nimport { CommandMenuOverlay } from \"./Overlay\"\nimport { CommandMenuPage } from \"./Page\"\nimport { CommandMenuPages } from \"./Pages\"\nimport { CommandMenuPageTriggerItem } from \"./PageTriggerItem\"\nimport { CommandMenuRadioGroup } from \"./RadioGroup\"\nimport { CommandMenuRadioItem } from \"./RadioItem\"\nimport { CommandMenuRoot } from \"./Root\"\nimport { CommandMenuSelectAllItem } from \"./SelectAllItem\"\nimport { CommandMenuSelectedIndicator } from \"./SelectedIndicator\"\nimport { CommandMenuSeparator } from \"./Separator\"\nimport { CommandMenuTrigger } from \"./Trigger\"\n\nexport * from \"./CheckboxIndicator\"\nexport * from \"./CheckboxItem\"\nexport * from \"./Content\"\nexport * from \"./Empty\"\nexport * from \"./Group\"\nexport * from \"./Input\"\nexport * from \"./Item\"\nexport * from \"./List\"\nexport * from \"./MultiSelectGroup\"\nexport * from \"./MultiSelectItem\"\nexport * from \"./Overlay\"\nexport * from \"./Page\"\nexport * from \"./Pages\"\nexport * from \"./PageTriggerItem\"\nexport * from \"./RadioGroup\"\nexport * from \"./RadioItem\"\nexport * from \"./Root\"\nexport * from \"./SelectAllItem\"\nexport * from \"./SelectedIndicator\"\nexport * from \"./Separator\"\nexport * from \"./Trigger\"\nexport * from \"./typings\"\n\nexport const CommandMenu = {\n\tRoot: CommandMenuRoot,\n\tOverlay: CommandMenuOverlay,\n\tContent: CommandMenuContent,\n\tTrigger: CommandMenuTrigger,\n\tInput: CommandMenuInput,\n\tList: CommandMenuList,\n\tGroup: CommandMenuGroup,\n\tItem: CommandMenuItem,\n\tSeparator: CommandMenuSeparator,\n\tEmpty: CommandMenuEmpty,\n\n\t// Multi select\n\tMultiSelectGroup: CommandMenuMultiSelectGroup,\n\tMultiSelectItem: CommandMenuMultiSelectItem,\n\tSelectAllItem: CommandMenuSelectAllItem,\n\tSelectedIndicator: CommandMenuSelectedIndicator,\n\n\t// Radio / single select\n\tRadioGroup: CommandMenuRadioGroup,\n\tRadioItem: CommandMenuRadioItem,\n\n\t// Checkbox\n\tCheckboxItem: CommandMenuCheckboxItem,\n\tCheckboxIndicator: CommandMenuCheckboxIndicator,\n\n\t// Pages\n\tPages: CommandMenuPages,\n\tPage: CommandMenuPage,\n\tPageTriggerItem: CommandMenuPageTriggerItem,\n}\n","import type { ChevronProps } from \"react-day-picker\"\nimport { RiArrowDownSLine, RiArrowLeftSLine, RiArrowRightSLine, RiArrowUpSLine } from \"react-icons/ri\"\n\nexport const Chevron = (props: ChevronProps) => {\n\tconst { orientation, ...rest } = props\n\n\tswitch (orientation) {\n\t\tcase \"up\":\n\t\t\treturn <RiArrowUpSLine {...rest} />\n\t\tcase \"down\":\n\t\t\treturn <RiArrowDownSLine {...rest} />\n\t\tcase \"left\":\n\t\t\treturn <RiArrowLeftSLine {...rest} />\n\t\tdefault:\n\t\t\treturn <RiArrowRightSLine {...rest} />\n\t}\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const rootCva = cva([\"relative\", \"size-max\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"text-xs\"],\n\t\t\tsm: [\"text-sm\"],\n\t\t\tmd: [\"text-base\"],\n\t\t\tlg: [\"text-lg\"],\n\t\t\txl: [\"text-xl\"],\n\t\t},\n\t},\n})\n\nexport const dayButtonCva = cva(\n\t[\n\t\t\"relative\",\n\t\t\"transition-[background,text]\",\n\n\t\t\"focus:outline-hidden\",\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:-outline-offset-1\",\n\t\t\"focus-visible:outline-(--accent-a8)\",\n\n\t\t// range middle\n\t\t\"group-[.rdp-range-middle]/day:rounded-none\",\n\t\t\"group-[.rdp-range-middle]/day:bg-(--accent-a3)\",\n\n\t\t// range start/end\n\t\t\"group-[.rdp-range-start:not(.rdp-range-end)]/day:rounded-r-none\",\n\t\t\"group-[.rdp-range-end:not(.rdp-range-start)]/day:rounded-l-none\",\n\n\t\t// disabled\n\t\t\"group-data-[disabled]/day:pointer-events-none\",\n\t\t\"group-data-[disabled]/day:text-(--base-a9)\",\n\t\t\"group-data-[disabled]/day:opacity-70\",\n\n\t\t// outside (days shown)\n\t\t\"group-data-[outside]/day:pointer-events-none\",\n\t\t\"group-data-[outside]/day:text-(--base-a9)\",\n\t\t\"group-data-[outside]/day:opacity-70\",\n\t\t\"group-data-[outside]/day:!bg-transparent\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"size-6\"],\n\t\t\t\tsm: [\"size-7\"],\n\t\t\t\tmd: [\"size-8\"],\n\t\t\t\tlg: [\"size-9\"],\n\t\t\t\txl: [\"size-10\"],\n\t\t\t},\n\t\t\tvariant: {\n\t\t\t\tsoft: [\n\t\t\t\t\t// unselected\n\t\t\t\t\t\"group-[:not([data-selected])]/day:hover:bg-(--accent-a3)\",\n\t\t\t\t\t\"group-[:not([data-selected])]/day:active:bg-(--accent-a4)\",\n\n\t\t\t\t\t// selected\n\t\t\t\t\t\"group-[[data-selected='true']:not(.rdp-range-middle)]/day:bg-(--accent-a6)\",\n\t\t\t\t],\n\t\t\t\tsolid: [\n\t\t\t\t\t// unselected\n\t\t\t\t\t\"group-[:not([data-selected])]/day:hover:bg-(--accent-a3)\",\n\t\t\t\t\t\"group-[:not([data-selected])]/day:active:bg-(--accent-a4)\",\n\n\t\t\t\t\t// selected\n\t\t\t\t\t\"group-[[data-selected='true']:not(.rdp-range-middle)]/day:bg-(--accent-indicator)\",\n\t\t\t\t\t\"group-[[data-selected='true']:not(.rdp-range-middle)]/day:text-(--accent-contrast)\",\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n)\n\nexport const navButtonCva = cva(\n\t[\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:-outline-offset-1\",\n\t\t\"focus-visible:outline-(--base-a8)\",\n\t\t\"flex\",\n\t\t\"items-center\",\n\t\t\"justify-center\",\n\t\t\"text-(--base-a11)\",\n\t\t\"hover:bg-(--base-a3)\",\n\t\t\"active:bg-(--base-a4)\",\n\t\t\"text-(--base-a11)\",\n\t\t\"hover:text-(--base-a12)\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"size-6\"],\n\t\t\t\tsm: [\"size-7\"],\n\t\t\t\tmd: [\"size-8\"],\n\t\t\t\tlg: [\"size-9\"],\n\t\t\t\txl: [\"size-10\"],\n\t\t\t},\n\t\t},\n\t},\n)\n\nexport const weekDayCva = cva([\"font-medium\", \"text-(--base-a11)\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"size-6\"],\n\t\t\tsm: [\"size-7\"],\n\t\t\tmd: [\"size-8\"],\n\t\t\tlg: [\"size-9\"],\n\t\t\txl: [\"size-10\"],\n\t\t},\n\t},\n})\n\nexport const todayCva = cva(\n\t[\n\t\t\"*:after:absolute\",\n\t\t\"*:after:bg-(--base-12)\",\n\t\t\"*:after:start-1/2\",\n\t\t\"*:after:-translate-x-1/2\",\n\t\t\"*:group-data-[disabled]/day:after:bg-(--base-a9)\",\n\n\t\t\"*:after:rounded-full\",\n\t\t\"*:after:bottom-0.5\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"*:after:size-[2px]\"],\n\t\t\t\tsm: [\"*:after:size-[3px]\"],\n\t\t\t\tmd: [\"*:after:size-[3px]\"],\n\t\t\t\tlg: [\"*:after:size-[4px]\"],\n\t\t\t\txl: [\"*:after:size-[4px]\"],\n\t\t\t},\n\t\t\tvariant: {\n\t\t\t\tsoft: [\"*:after:bg-(--accent-a5)\"],\n\t\t\t\tsolid: [\"*:group-[[data-selected='true']:not(.rdp-range-middle)]/day:after:bg-(--accent-contrast)\"],\n\t\t\t},\n\t\t},\n\t},\n)\n\nexport const monthCaptionCva = cva([\"font-medium\", \"w-full\", \"flex\", \"justify-center\", \"items-center\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"h-5\"],\n\t\t\tsm: [\"h-6\"],\n\t\t\tmd: [\"h-7\"],\n\t\t\tlg: [\"h-8\"],\n\t\t\txl: [\"h-9\"],\n\t\t},\n\t},\n})\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, useMemo } from \"react\"\nimport { DayPicker as ReactDayPicker } from \"react-day-picker\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { Chevron } from \"./Chevron\"\nimport { dayButtonCva, monthCaptionCva, navButtonCva, rootCva, todayCva, weekDayCva } from \"./cva\"\nimport { DayPickerVariantProps } from \"./typings\"\n\nexport type DayPickerProps = ComponentProps<typeof ReactDayPicker> & DayPickerVariantProps\n\nexport const DayPicker = (props: DayPickerProps) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tcomponents,\n\t\tclassNames,\n\t\taccentColor = providerContext.accentColor,\n\t\tsize = \"md\",\n\t\tvariant = \"soft\",\n\t\tradius = providerContext.radius,\n\t\tshowOutsideDays = true,\n\t\t...rest\n\t} = props\n\n\tconst computedClassNames = useMemo(() => {\n\t\treturn {\n\t\t\t...classNames,\n\t\t\troot: cx(classNames?.root, rootCva({ size })),\n\t\t\tnav: cx(classNames?.nav, [\"absolute\", \"top-0\", \"w-full\", \"flex\", \"justify-between\"]),\n\t\t\tmonth: cx(classNames?.month, [\"flex\", \"flex-col\", \"gap-1\"]),\n\t\t\tmonth_caption: cx(classNames?.month_caption, monthCaptionCva({ size })),\n\t\t\tbutton_next: cx(\n\t\t\t\tclassNames?.button_next,\n\t\t\t\tnavButtonCva({ size }),\n\t\t\t\tradiusCva({ radius: radius, maxLarge: false }),\n\t\t\t),\n\t\t\tbutton_previous: cx(\n\t\t\t\tclassNames?.button_previous,\n\t\t\t\tnavButtonCva({ size }),\n\t\t\t\tradiusCva({ radius: radius, maxLarge: false }),\n\t\t\t),\n\t\t\tweekday: cx(classNames?.weekday, weekDayCva({ size })),\n\t\t\ttoday: cx(classNames?.today, todayCva({ size, variant })),\n\t\t\tday: cx(classNames?.day, [\"group/day\"]),\n\t\t\tday_button: cx(\n\t\t\t\tclassNames?.day_button,\n\t\t\t\tdayButtonCva({ size, variant }),\n\t\t\t\tradiusCva({ radius: radius, maxLarge: false }),\n\t\t\t),\n\t\t\trange_start: cx(classNames?.range_start, \"rdp-range-start\"),\n\t\t\trange_middle: cx(classNames?.range_middle, \"rdp-range-middle\"),\n\t\t\trange_end: cx(classNames?.range_end, \"rdp-range-end\"),\n\t\t}\n\t}, [classNames, radius, size, variant])\n\n\tconst computedComponents = useMemo(() => {\n\t\treturn {\n\t\t\t...components,\n\t\t\tChevron,\n\t\t}\n\t}, [components])\n\n\treturn (\n\t\t<ReactDayPicker\n\t\t\tdata-accent-color={accentColor}\n\t\t\tshowOutsideDays={showOutsideDays}\n\t\t\tcomponents={computedComponents}\n\t\t\tclassNames={computedClassNames}\n\t\t\t{...rest}\n\t\t/>\n\t)\n}\n","import { createContext } from \"react\"\n\nimport type { CloseDialogWithOptions } from \"./typings\"\n\nexport const CloseDialogContext = createContext({} as CloseDialogWithOptions)\n","import { useContext } from \"react\"\n\nimport { CloseDialogContext } from \"./context\"\n\nexport const useCloseDialog = () => {\n\tconst dialogContext = useContext(CloseDialogContext)\n\n\tif (!dialogContext) {\n\t\tthrow new Error(\"useDialog must be used within a DialogRoot\")\n\t}\n\n\treturn dialogContext\n}\n","import * as RadixDialog from \"@radix-ui/react-dialog\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef, ReactNode, useMemo } from \"react\"\n\nimport type { AlertDialogSize } from \"../AlertDialog\"\nimport { dialogContent } from \"../AlertDialog/cva\"\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { useCloseDialog } from \"./hooks\"\nimport type { CloseDialogWithOptions } from \"./typings\"\n\nexport interface DialogContentProps extends Omit<RadixDialog.DialogContentProps, \"children\"> {\n\tcontainer?: RadixDialog.DialogPortalProps[\"container\"]\n\tsize?: AlertDialogSize\n\tchildren: ReactNode | ((close: CloseDialogWithOptions) => ReactNode)\n}\n\nexport const DialogContent = forwardRef<HTMLDivElement, DialogContentProps>((props, ref) => {\n\tconst { radius } = useProvider()\n\tconst close = useCloseDialog()\n\tconst { children, container, className, size, ...rest } = props\n\n\tconst computedChildren = useMemo(() => {\n\t\treturn typeof children === \"function\" ? children(close) : children\n\t}, [children, close])\n\n\treturn (\n\t\t<RadixDialog.Portal container={container}>\n\t\t\t<RadixDialog.Content\n\t\t\t\tclassName={cx(dialogContent({ size }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\t\tref={ref}\n\t\t\t\tdata-floating-content=\"\"\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t{computedChildren}\n\t\t\t</RadixDialog.Content>\n\t\t</RadixDialog.Portal>\n\t)\n})\nDialogContent.displayName = \"DialogContent\"\n","import * as RadixDialog from \"@radix-ui/react-dialog\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { dialogOverlay } from \"../AlertDialog/cva\"\n\nexport interface DialogOverlayProps extends RadixDialog.DialogOverlayProps {\n\tcontainer?: RadixDialog.DialogPortalProps[\"container\"]\n}\n\nexport const DialogOverlay = forwardRef<HTMLDivElement, DialogOverlayProps>((props, ref) => {\n\tconst { className, container, ...rest } = props\n\n\treturn (\n\t\t<RadixDialog.Portal container={container}>\n\t\t\t<RadixDialog.Overlay\n\t\t\t\tref={ref}\n\t\t\t\tclassName={cx(dialogOverlay({}), className)}\n\t\t\t\tdata-floating-content=\"\"\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t</RadixDialog.Portal>\n\t)\n})\nDialogOverlay.displayName = \"DialogOverlay\"\n","import * as RadixDialog from \"@radix-ui/react-dialog\"\nimport { useCallback, useState } from \"react\"\n\nimport { CloseDialogContext } from \"./context\"\nimport type { CloseDialogWithOptions, DialogProps } from \"./typings\"\n\nexport const DialogRoot = (props: DialogProps) => {\n\tconst {\n\t\tchildren,\n\t\tonOpen,\n\t\tonClose,\n\t\tdefaultOpen,\n\t\tonCloseInterrupt,\n\t\topen: externalOpen,\n\t\tonOpenChange: externalOpenChange,\n\t} = props\n\t// `innerOpen` used to track the open state of the dialog when `externalOpen` is undefined\n\tconst [innerOpen, setInnerOpen] = useState(defaultOpen ?? false)\n\tconst open = externalOpen ?? innerOpen\n\n\tconst handleOpenChange = useCallback(\n\t\t(next: boolean) => {\n\t\t\tif (externalOpenChange) return externalOpenChange(next)\n\n\t\t\tif (next && onOpen) {\n\t\t\t\tonOpen()\n\t\t\t} else if (!next && onCloseInterrupt) {\n\t\t\t\t// closes the dialog, bypassing the checks in `handleOpenChange`\n\t\t\t\tconst confirmClose = () => {\n\t\t\t\t\tsetInnerOpen(false)\n\t\t\t\t\tif (onClose) onClose()\n\t\t\t\t}\n\n\t\t\t\t// if onCloseInterrupt is passed, bypass the standard close behavior and require\n\t\t\t\t// the passed `confirmClose` to close the dialog\n\t\t\t\treturn onCloseInterrupt(confirmClose)\n\t\t\t} else if (!next && onClose) {\n\t\t\t\tonClose()\n\t\t\t}\n\n\t\t\tsetInnerOpen(next)\n\t\t},\n\t\t[externalOpenChange, onOpen, onClose, onCloseInterrupt],\n\t)\n\n\tconst closeDialog = useCallback<CloseDialogWithOptions>(\n\t\t(options) => {\n\t\t\tif (options?.force) {\n\t\t\t\t// bypass the checks in the `handleOpenChange` function\n\t\t\t\treturn setInnerOpen(false)\n\t\t\t}\n\n\t\t\thandleOpenChange(false)\n\t\t},\n\t\t[handleOpenChange],\n\t)\n\n\treturn (\n\t\t<RadixDialog.Root open={open} onOpenChange={handleOpenChange}>\n\t\t\t<CloseDialogContext.Provider value={closeDialog}>{children}</CloseDialogContext.Provider>\n\t\t</RadixDialog.Root>\n\t)\n}\n","import * as RadixDialog from \"@radix-ui/react-dialog\"\n\nimport { DialogContent } from \"./Content\"\nimport { DialogOverlay } from \"./Overlay\"\nimport { DialogRoot } from \"./Root\"\n\nexport * from \"./Content\"\nexport * from \"./Overlay\"\nexport * from \"./Root\"\nexport * from \"./typings\"\n\nexport const Dialog = {\n\tRoot: DialogRoot,\n\tContent: DialogContent,\n\tOverlay: DialogOverlay,\n\tTitle: RadixDialog.Title,\n\tDescription: RadixDialog.Description,\n\tTrigger: RadixDialog.Trigger,\n\tClose: RadixDialog.Close,\n}\n","import type { HeadingLevel } from \"./typings\"\n\nexport const headingLevelTagMapping: Record<HeadingLevel, \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\"> = {\n\t\"1\": \"h1\",\n\t\"2\": \"h2\",\n\t\"3\": \"h3\",\n\t\"4\": \"h4\",\n\t\"5\": \"h5\",\n\t\"6\": \"h6\",\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const headingCva = cva([], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"text-xs\"],\n\t\t\tsm: [\"text-sm\"],\n\t\t\tmd: [\"text-base\"],\n\t\t\tlg: [\"text-lg\"],\n\t\t\txl: [\"text-xl\"],\n\t\t\t\"2xl\": [\"text-2xl\"],\n\t\t\t\"3xl\": [\"text-3xl\"],\n\t\t\t\"4xl\": [\"text-4xl\"],\n\t\t\t\"5xl\": [\"text-5xl\"],\n\t\t\t\"6xl\": [\"text-6xl\"],\n\t\t\t\"7xl\": [\"text-7xl\"],\n\t\t\t\"8xl\": [\"text-8xl\"],\n\t\t\t\"9xl\": [\"text-9xl\"],\n\t\t},\n\t\tweight: {\n\t\t\tlight: [\"font-light\"],\n\t\t\tregular: [\"font-normal\"],\n\t\t\tmedium: [\"font-medium\"],\n\t\t\tbold: [\"font-bold\"],\n\t\t},\n\t\talign: {\n\t\t\tleft: [\"text-left\"],\n\t\t\tcenter: [\"text-center\"],\n\t\t\tright: [\"text-right\"],\n\t\t},\n\t},\n})\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nimport type { AccentColorProps } from \"../typings\"\nimport { headingLevelTagMapping } from \"./constants\"\nimport { headingCva } from \"./cva\"\nimport type { HeadingVariantProps } from \"./typings\"\n\nexport interface HeadingProps extends PropsWithoutRef<ComponentProps<\"h1\">>, HeadingVariantProps, AccentColorProps {}\n\nexport const Heading = forwardRef<HTMLHeadingElement, HeadingProps>((props, ref) => {\n\tconst { className, level = \"1\", size, weight, align, highContrast = false, accentColor, ...rest } = props\n\tconst Tag = headingLevelTagMapping[level]\n\n\treturn (\n\t\t<Tag\n\t\t\tref={ref}\n\t\t\tclassName={cx(\n\t\t\t\theadingCva({ size, weight, align }),\n\t\t\t\t{\n\t\t\t\t\t\"text-(--accent-a11)\": !!accentColor,\n\t\t\t\t\t\"text-(--accent-a12)\": highContrast,\n\t\t\t\t},\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nHeading.displayName = \"Heading\"\n","import * as RadixHoverCard from \"@radix-ui/react-hover-card\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nexport interface HoverCardArrowProps extends RadixHoverCard.HoverCardArrowProps {}\n\nexport const HoverCardArrow = forwardRef<SVGSVGElement, HoverCardArrowProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn <RadixHoverCard.Arrow className={cx(\"fill-(--base-6)\", className)} ref={ref} {...rest} />\n})\nHoverCardArrow.displayName = \"HoverCardArrow\"\n","import { cva } from \"class-variance-authority\"\n\nexport const hoverCardContent = cva([\"bg-(--color-background)\", \"dark:bg-(--base-2)\", \"ring-1\", \"ring-(--base-6)\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"p-2\"],\n\t\t\tsm: [\"p-3\"],\n\t\t\tmd: [\"p-4\"],\n\t\t\tlg: [\"p-5\"],\n\t\t\txl: [\"p-6\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n})\n","import * as RadixHoverCard from \"@radix-ui/react-hover-card\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { floating, radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { hoverCardContent } from \"./cva\"\nimport type { HoverCardVariantProps } from \"./typings\"\n\nexport interface HoverCardContentProps extends RadixHoverCard.HoverCardContentProps, HoverCardVariantProps {\n\tcontainer?: RadixHoverCard.HoverCardPortalProps[\"container\"]\n}\n\nexport const HoverCardContent = forwardRef<HTMLDivElement, HoverCardContentProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tsize,\n\t\tside,\n\t\tradius = providerContext.radius,\n\t\taccentColor = providerContext.accentColor,\n\t\tsideOffset = 4,\n\t\tcontainer,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<RadixHoverCard.Portal container={container}>\n\t\t\t<RadixHoverCard.Content\n\t\t\t\tclassName={cx(\n\t\t\t\t\thoverCardContent({ size }),\n\t\t\t\t\tfloating({ side, shadow: \"3\" }),\n\t\t\t\t\tradiusCva({ radius, maxLarge: true }),\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\tref={ref}\n\t\t\t\tside={side}\n\t\t\t\tdata-accent-color={accentColor}\n\t\t\t\tsideOffset={sideOffset}\n\t\t\t\tdata-floating-content=\"\"\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t</RadixHoverCard.Portal>\n\t)\n})\nHoverCardContent.displayName = \"HoverCardContent\"\n","import * as RadixHoverCard from \"@radix-ui/react-hover-card\"\n\nimport { HoverCardArrow } from \"./Arrow\"\nimport { HoverCardContent } from \"./Content\"\n\nexport * from \"./Arrow\"\nexport * from \"./Content\"\nexport * from \"./typings\"\n\nexport const HoverCard = {\n\tArrow: HoverCardArrow,\n\tContent: HoverCardContent,\n\tRoot: RadixHoverCard.Root,\n\tTrigger: RadixHoverCard.Trigger,\n}\n","import { FC, memo, PointerEventHandler, ReactElement, useCallback, useState } from \"react\"\n\ninterface ChildProps {\n\tisHovered: boolean\n\tonPointerEnter: PointerEventHandler<HTMLElement>\n\tonPointerLeave: PointerEventHandler<HTMLElement>\n}\ninterface HoverUtilityProps {\n\tforceHover?: boolean\n\tchildren: (props: ChildProps) => ReactElement\n}\n\n/** HoverUtility is a utility component used for detecting when an element is being hovered over or not, is passes a\n * isHovered variable to its children as well as props onPointerEnter and onPointerLeave that can be spread on any\n * child component that should be used as the element to observe hovering on. See stories of examples of its use. */\nexport const HoverUtility: FC<HoverUtilityProps> = memo(function Root({ children, forceHover }: HoverUtilityProps) {\n\tconst [isHovered, setIsHovered] = useState<boolean>(false)\n\n\tconst handlePointerEnter = useCallback(() => {\n\t\tsetIsHovered(true)\n\t}, [])\n\n\tconst handlePointerLeave = useCallback(() => {\n\t\tsetIsHovered(false)\n\t}, [])\n\n\treturn children({\n\t\tisHovered: forceHover !== undefined ? forceHover : isHovered,\n\t\tonPointerEnter: handlePointerEnter,\n\t\tonPointerLeave: handlePointerLeave,\n\t})\n})\n","import { createContext } from \"react\"\n\nimport type { InputSize, InputVariant } from \"./typings\"\n\ninterface IInputContext {\n\tsize: InputSize\n\tvariant: InputVariant\n}\n\nexport const InputContext = createContext<IInputContext>({} as IInputContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const inputRoot = cva(\n\t[\n\t\t\"flex\",\n\t\t\"items-stretch\",\n\t\t\"has-[:focus]:outline-2\",\n\t\t\"has-[:focus]:outline-(--accent-8)\",\n\t\t\"has-[:focus]:-outline-offset-1\",\n\t\t\"has-[:disabled]:opacity-50\",\n\t\t\"has-[:disabled]:pointer-events-none\",\n\t\t\"transition-[background,color,box-shadow]\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsurface: [\"inset-ring\", \"inset-ring-(--accent-a7)\", \"bg-(--accent-surface)\", \"text-(--accent-a12)\"],\n\t\t\t\tsoft: [\"bg-(--accent-a3)\", \"text-(--accent-12)\"],\n\t\t\t\toutline: [\"inset-ring\", \"inset-ring-(--base-a7)\", \"bg-transparent\", \"text-(--base-12)\"],\n\t\t\t\tghost: [\"bg-transparent\", \"text-(--base-12)\"],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"h-6\", \"text-xs\"],\n\t\t\t\tsm: [\"h-7\", \"text-sm\"],\n\t\t\t\tmd: [\"h-8\", \"text-base\"],\n\t\t\t\tlg: [\"h-9\", \"text-lg\"],\n\t\t\t\txl: [\"h-10\", \"text-xl\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t\tvariant: \"surface\",\n\t\t},\n\t},\n)\n\nexport const inputField = cva([\"peer-[.slot]/slot:px-0\"], {\n\tvariants: {\n\t\tvariant: {\n\t\t\tsurface: [\"placeholder-(--accent-12)\", \"placeholder:opacity-60\", \"selection:bg-(--accent-a5)\"],\n\t\t\tsoft: [\"placeholder-(--accent-12)\", \"placeholder:opacity-60\", \"selection:bg-(--accent-a5)\"],\n\t\t\toutline: [\"placeholder-(--base-a9)\", \"selection:bg-(--accent-a5)\"],\n\t\t\tghost: ['placeholder-(--base-a9)\", \"selection:bg-(--accent-a5)'],\n\t\t},\n\t\tsize: {\n\t\t\txs: [\"px-3\"],\n\t\t\tsm: [\"px-3.5\"],\n\t\t\tmd: [\"px-4\"],\n\t\t\tlg: [\"px-4.5\"],\n\t\t\txl: [\"px-5\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t\tvariant: \"surface\",\n\t},\n})\n\nexport const inputSlot = cva([\"peer/slot\", \"slot\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"px-1.5\"],\n\t\t\tsm: [\"px-1.75\"],\n\t\t\tmd: [\"px-2\"],\n\t\t\tlg: [\"px-2.25\"],\n\t\t\txl: [\"px-2.5\"],\n\t\t},\n\t\tvariant: {\n\t\t\tsurface: [\"text-(--accent-12)\"],\n\t\t\tsoft: [\"text-(--accent-12)\"],\n\t\t\toutline: [\"text-(--base-a11)\"],\n\t\t\tghost: [\"text-(--base-a11)\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n})\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef, useContext } from \"react\"\n\nimport { InputContext } from \"./context\"\nimport { inputField } from \"./cva\"\n\nexport interface InputFieldProps extends PropsWithoutRef<ComponentProps<\"input\">> {}\n\nexport const InputField = forwardRef<HTMLInputElement, InputFieldProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\tconst { size, variant } = useContext(InputContext)\n\n\treturn (\n\t\t<input\n\t\t\tclassName={cx(inputField({ size, variant }), \"grow bg-transparent outline-0\", className)}\n\t\t\tref={ref}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nInputField.displayName = \"InputField\"\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { InputContext } from \"./context\"\nimport { inputRoot } from \"./cva\"\nimport type { InputVariantProps } from \"./typings\"\n\nexport interface InputRootProps extends InputVariantProps, PropsWithoutRef<ComponentProps<\"div\">> {}\n\nexport const InputRoot = forwardRef<HTMLDivElement, InputRootProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tvariant = \"surface\",\n\t\tsize = \"md\",\n\t\taccentColor = providerContext.accentColor,\n\t\tradius = providerContext.radius,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<InputContext.Provider value={{ size, variant }}>\n\t\t\t<div\n\t\t\t\tclassName={cx(inputRoot({ variant, size }), radiusCva({ radius, maxLarge: false }), className)}\n\t\t\t\tref={ref}\n\t\t\t\tdata-accent-color={accentColor}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t</InputContext.Provider>\n\t)\n})\nInputRoot.displayName = \"InputRoot\"\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef, useContext } from \"react\"\n\nimport { InputContext } from \"./context\"\nimport { inputSlot } from \"./cva\"\n\nexport interface InputSlotProps extends PropsWithoutRef<ComponentProps<\"div\">> {}\n\nexport const InputSlot = forwardRef<HTMLDivElement, InputSlotProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\tconst { size, variant } = useContext(InputContext)\n\n\treturn <div className={cx(inputSlot({ size, variant }), \"flex items-center\", className)} ref={ref} {...rest} />\n})\nInputSlot.displayName = \"InputSlot\"\n","import { InputField } from \"./Field\"\nimport { InputRoot } from \"./Root\"\nimport { InputSlot } from \"./Slot\"\n\nexport * from \"./Field\"\nexport * from \"./Root\"\nexport * from \"./Slot\"\nexport * from \"./typings\"\n\nexport const Input = {\n\tField: InputField,\n\tRoot: InputRoot,\n\tSlot: InputSlot,\n}\n","import { createContext, Dispatch, SetStateAction, useContext } from \"react\"\n\ninterface ILayoutContent {\n\tsmall: boolean\n\thideLayout: boolean\n\t/** controlled value for open state of LeftSlideOut Component. */\n\tshowLeftSlideOut: boolean\n\tsetShowLeftSlideOut: Dispatch<SetStateAction<boolean>>\n\t/** controlled value for open state of RightSlideOut Component. */\n\tshowRightSlideOut: boolean\n\tsetShowRightSlideOut: Dispatch<SetStateAction<boolean>>\n}\n\nexport const LayoutContext = createContext<ILayoutContent>({} as ILayoutContent)\n\nexport const useLayoutContext = () => useContext(LayoutContext)\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, memo, PropsWithoutRef } from \"react\"\n\nimport { useLayoutContext } from \"./context\"\n\nexport interface ContainerProps extends PropsWithoutRef<ComponentProps<\"div\">> {}\n\nexport const Container = memo(\n\tforwardRef<HTMLDivElement, ContainerProps>((props, ref) => {\n\t\tconst { children, className, ...rest } = props\n\t\tconst { hideLayout = false } = useLayoutContext()\n\t\treturn (\n\t\t\t!hideLayout && (\n\t\t\t\t<div className={cx(\"flex h-full grow\", className)} ref={ref} {...rest}>\n\t\t\t\t\t{children}\n\t\t\t\t</div>\n\t\t\t)\n\t\t)\n\t}),\n)\n","import { memo, PropsWithChildren, useMemo, useState } from \"react\"\n\nimport { LayoutContext } from \"./context\"\n\nexport interface RootProps extends PropsWithChildren {\n\t/** TODO: DOCUMENT THIS HEAVILY\n\t * @default false */\n\tsmall?: boolean\n\t/** controls if all Layout Components should be hidden\n\t * @default false */\n\thideLayout?: boolean\n}\n\n/** */\nexport const Root = memo((props: RootProps) => {\n\tconst { children, small = false, hideLayout = false } = props\n\tconst [showLeftSlideOut, setShowLeftSlideOut] = useState<boolean>(false)\n\tconst [showRightSlideOut, setShowRightSlideOut] = useState<boolean>(false)\n\n\tconst contextValue = useMemo(\n\t\t() => ({\n\t\t\tsmall,\n\t\t\thideLayout,\n\t\t\tshowLeftSlideOut,\n\t\t\tsetShowLeftSlideOut,\n\t\t\tshowRightSlideOut,\n\t\t\tsetShowRightSlideOut,\n\t\t}),\n\t\t[hideLayout, showLeftSlideOut, showRightSlideOut, small],\n\t)\n\n\treturn <LayoutContext.Provider value={contextValue}>{children}</LayoutContext.Provider>\n})\nRoot.displayName = \"Layout.Root\"\n","/**\n * MIT License\n * Copyright (c) 2022 WorkOS\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n **/\nimport { useEffect, useMemo, useRef } from \"react\"\nimport ReactDOM from \"react-dom\"\n\ntype PointerDownOutsideEvent = CustomEvent<{ originalEvent: PointerEvent }>\n\n// THE CODE IN THIS FILE WAS COPIED FROM @radix-ui/react-dissmissable-layer NPM REPO.\n// https://github.com/radix-ui/primitives/tree/main/packages/react/dismissable-layer\n\n/**\n * Listens for `pointerdown` outside a React subtree. We use `pointerdown` rather than `pointerup`\n * to mimic layer-dismissing behavior present in OS.\n * Returns props to pass to the node we want to check for outside events.\n */\nexport function usePointerDownOutside(\n\tonPointerDownOutside?: (event: PointerDownOutsideEvent) => void,\n\townerElement: HTMLElement | undefined = globalThis?.document.body,\n) {\n\tconst handlePointerDownOutside = useCallbackRef(onPointerDownOutside) as EventListener\n\tconst isPointerInsideReactTreeRef = useRef<boolean>(false)\n\tconst handleClickRef = useRef(() => {})\n\n\tuseEffect(() => {\n\t\tconst handlePointerDown = (event: PointerEvent) => {\n\t\t\tif (event.target && !isPointerInsideReactTreeRef.current) {\n\t\t\t\tconst eventDetail = { originalEvent: event }\n\n\t\t\t\tconst handleAndDispatchPointerDownOutsideEvent = () => {\n\t\t\t\t\thandleAndDispatchCustomEvent(\"pointerDownOutside\", handlePointerDownOutside, eventDetail, {\n\t\t\t\t\t\tdiscrete: true,\n\t\t\t\t\t})\n\t\t\t\t}\n\n\t\t\t\t/**\n\t\t\t\t * On touch devices, we need to wait for a click event because browsers implement\n\t\t\t\t * a ~350ms delay between the time the user stops touching the display and when the\n\t\t\t\t * browser executres events. We need to ensure we don't reactivate pointer-events within\n\t\t\t\t * this timeframe otherwise the browser may execute events that should have been prevented.\n\t\t\t\t *\n\t\t\t\t * Additionally, this also lets us deal automatically with cancellations when a click event\n\t\t\t\t * isn't raised because the page was considered scrolled/drag-scrolled, long-pressed, etc.\n\t\t\t\t *\n\t\t\t\t * This is why we also continuously remove the previous listener, because we cannot be\n\t\t\t\t * certain that it was raised, and therefore cleaned-up.\n\t\t\t\t */\n\t\t\t\tif (event.pointerType === \"touch\") {\n\t\t\t\t\townerElement.removeEventListener(\"click\", handleClickRef.current)\n\t\t\t\t\thandleClickRef.current = handleAndDispatchPointerDownOutsideEvent\n\t\t\t\t\townerElement.addEventListener(\"click\", handleClickRef.current, { once: true })\n\t\t\t\t} else {\n\t\t\t\t\thandleAndDispatchPointerDownOutsideEvent()\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// We need to remove the event listener in case the outside click has been canceled.\n\t\t\t\t// See: https://github.com/radix-ui/primitives/issues/2171\n\t\t\t\townerElement.removeEventListener(\"click\", handleClickRef.current)\n\t\t\t}\n\t\t\tisPointerInsideReactTreeRef.current = false\n\t\t}\n\t\t/**\n\t\t * if this hook executes in a component that mounts via a `pointerdown` event, the event\n\t\t * would bubble up to the document and trigger a `pointerDownOutside` event. We avoid\n\t\t * this by delaying the event listener registration on the document.\n\t\t * This is not React specific, but rather how the DOM works, ie:\n\t\t * ```\n\t\t * button.addEventListener('pointerdown', () => {\n\t\t * console.log('I will log');\n\t\t * document.addEventListener('pointerdown', () => {\n\t\t * console.log('I will also log');\n\t\t * })\n\t\t * });\n\t\t */\n\t\tconst timerId = window.setTimeout(() => {\n\t\t\townerElement.addEventListener(\"pointerdown\", handlePointerDown)\n\t\t}, 0)\n\t\treturn () => {\n\t\t\twindow.clearTimeout(timerId)\n\t\t\townerElement.removeEventListener(\"pointerdown\", handlePointerDown)\n\t\t\townerElement.removeEventListener(\"click\", handleClickRef.current)\n\t\t}\n\t}, [ownerElement, handlePointerDownOutside])\n\n\treturn {\n\t\t// ensures we check React component tree (not just DOM tree)\n\t\tonPointerDownCapture: () => (isPointerInsideReactTreeRef.current = true),\n\t}\n}\n\nfunction dispatchDiscreteCustomEvent<E extends CustomEvent>(target: E[\"target\"], event: E) {\n\tif (target) ReactDOM.flushSync(() => target.dispatchEvent(event))\n}\nfunction handleAndDispatchCustomEvent<E extends CustomEvent, OriginalEvent extends Event>(\n\tname: string,\n\thandler: ((event: E) => void) | undefined,\n\tdetail: { originalEvent: OriginalEvent } & (E extends CustomEvent<infer D> ? D : never),\n\t{ discrete }: { discrete: boolean },\n) {\n\tconst target = detail.originalEvent.target\n\tconst event = new CustomEvent(name, { bubbles: false, cancelable: true, detail })\n\tif (handler) target.addEventListener(name, handler as EventListener, { once: true })\n\n\tif (discrete) {\n\t\tdispatchDiscreteCustomEvent(target, event)\n\t} else {\n\t\ttarget.dispatchEvent(event)\n\t}\n}\n\n/** custom hook used for creating a ref to a callback */\nexport function useCallbackRef<\n\tT extends (\n\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t\t...args: any[]\n\t\t// eslint-disable-next-line @typescript-eslint/no-explicit-any\n\t) => any,\n>(callback: T | undefined): T {\n\tconst callbackRef = useRef(callback)\n\n\tuseEffect(() => {\n\t\tcallbackRef.current = callback\n\t})\n\n\treturn useMemo(() => ((...args) => callbackRef.current?.(...args)) as T, [])\n}\n","import { cx } from \"class-variance-authority\"\nimport {\n\tCSSProperties,\n\tforwardRef,\n\tmemo,\n\tMouseEventHandler,\n\tPropsWithChildren,\n\tReactNode,\n\tuseCallback,\n\tuseEffect,\n\tuseLayoutEffect,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from \"react\"\nimport { CSSTransition } from \"react-transition-group\"\n\nimport { PropsWithClassNameAndStyle } from \"../typings\"\nimport { mergeRefs } from \"../utils\"\nimport { usePointerDownOutside } from \"./utils\"\n\n// TODO: Move this component to the Layout API directory and no longer expose it as an export\n\nexport interface SlideOutProps extends PropsWithChildren, PropsWithClassNameAndStyle {\n\t/** The controlled open state of the SlideOut */\n\topen: boolean\n\t/** specifies if the SlideOut is in modal mode or not.\n\t * If in modal mode, onDismiss prop should be passed\n\t * to the SlideOut component as well.\n\t * @default false */\n\tmodal?: boolean\n\t/** hides the SlideOut and its overlay but doesn't change the open state of the SlideOut. Should be used if\n\t * the SlideOut needs to be hidden for some reason but not triggering a close\n\t * @default false\n\t * */\n\thide?: boolean\n\t/** The side the SlideOut should position on and \"slide-in\" from */\n\tside: \"left\" | \"right\"\n\t/** controls if the SlideOut can be resized by the user\n\t * @default true\n\t * */\n\tresizeable?: boolean\n\t/** controls the positioning of the SlideOut.\n\t * When absolute, the SlideOut will overlay other\n\t * content within its parent container.\n\t * When relative, the SlideOut exists with and pushes other content within\n\t * its parent container.\n\t * @default \"relative\"\n\t * */\n\tposition?: \"relative\" | \"absolute\"\n\t/** sets the initialWidth of the SlideOut, can be expressed in any valid CSS size unit */\n\tinitialWidth: number | string\n\t/** sets the minimum width of the SlideOut can be expressed in any valid CSS size unit */\n\tminWidth?: number | string\n\t/** sets the maximum width of the SlideOut can be expressed in any valid CSS size unit */\n\tmaxWidth?: number | string\n\t/** callback fired when the SlideOut should be dismissed (closed) when in modal mode. The type of event resulting in\n\t * the SlideOut dismissal is passed with the callback. */\n\tonDismiss?: () => void\n\t/** callback fired when the SlideOut has finished sliding out (closing) */\n\tonClosed?: () => void\n\t/** callback fired when the SlideOut starts sliding in (opening) */\n\tonOpening?: () => void\n\t/** overlay to be rendered when the SlideOut is open*/\n\toverlayComponent?: ReactNode\n\t/** content to be rendered within the SlideOut */\n\tcontent: ReactNode | null\n}\n\nconst TIMEOUT_DURATION = 200\n\n/** The SlideOut component is a UI element that allows you to create a slide-in/slide-out effect for content within\n * your application. It provides a smooth transition animation for revealing and hiding content. */\nexport const SlideOut = memo(\n\tforwardRef<HTMLDivElement, SlideOutProps>((props, ref) => {\n\t\tconst {\n\t\t\tclassName,\n\t\t\tstyle,\n\t\t\tchildren,\n\t\t\topen,\n\t\t\thide = false,\n\t\t\tmodal = false,\n\t\t\toverlayComponent,\n\t\t\tresizeable = true,\n\t\t\tside,\n\t\t\tposition = \"relative\",\n\t\t\tinitialWidth,\n\t\t\tminWidth,\n\t\t\tmaxWidth,\n\t\t\tonDismiss,\n\t\t\tonOpening,\n\t\t\tonClosed,\n\t\t\tcontent,\n\t\t} = props\n\t\tconst isLeft = side === \"left\"\n\t\tconst [parentContainer, setParentContainer] = useState<HTMLElement>(document.body)\n\t\tconst childrenContainerRef = useRef<HTMLDivElement>(null)\n\t\tconst localRef = useRef<HTMLDivElement>(null)\n\t\tconst nodeRef = useRef<HTMLDivElement>(null)\n\t\tconst mergedRefs = mergeRefs([ref, localRef, nodeRef])\n\t\tconst [isResizing, setIsResizing] = useState(false)\n\t\tconst [computedWidth, setComputedWidth] = useState<number | null>(null)\n\t\tconst prevClientX = useRef<number | null>(null)\n\n\t\tconst handleDismiss = useCallback(() => {\n\t\t\tif (modal && onDismiss) {\n\t\t\t\tonDismiss()\n\t\t\t}\n\t\t}, [modal, onDismiss])\n\n\t\tconst handleAssignParentContainer = useCallback((element: HTMLDivElement | null) => {\n\t\t\tif (element) {\n\t\t\t\tsetParentContainer(element)\n\t\t\t}\n\t\t}, [])\n\n\t\t// TODO: determine if this set up for disabling and re-enabling pointer events on sibling content makes sense\n\t\tuseEffect(() => {\n\t\t\tif (!childrenContainerRef.current) return\n\t\t\tconst originalParentPointerEvents = childrenContainerRef.current.style.pointerEvents\n\n\t\t\t// In modal mode, all pointerEvents should be disabled for all other content within the parent container\n\t\t\t// besides the SlideOut content itself\n\t\t\tif (open && modal) {\n\t\t\t\tchildrenContainerRef.current.style.pointerEvents = \"none\"\n\t\t\t}\n\t\t\treturn () => {\n\t\t\t\tif (childrenContainerRef.current) {\n\t\t\t\t\t// this warning is invalid because the ref (childrenContainerRef) is immutable\n\t\t\t\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t\t\t\t\tchildrenContainerRef.current.style.pointerEvents = originalParentPointerEvents\n\t\t\t\t}\n\t\t\t}\n\t\t}, [modal, open, parentContainer.style])\n\n\t\tconst { onPointerDownCapture: handlePointerDownCapture } = usePointerDownOutside(handleDismiss, parentContainer)\n\n\t\t/** Selecting what style set to apply for SlideOut transition based on if its left or right */\n\t\tconst CSSTransitionClassNames = useMemo(\n\t\t\t() => ({\n\t\t\t\tenter: isLeft ? \"-ml-(--slide-out-width)\" : \"-mr-(--slide-out-width)\",\n\t\t\t\tenterActive: isLeft\n\t\t\t\t\t? \"ease-linear duration-200 transition-[margin-left] ml-0\"\n\t\t\t\t\t: \"ease-linear duration-200 transition-[margin-right] mr-0\",\n\t\t\t\tenterDone: isLeft ? \"ml-0\" : \"mr-0\",\n\t\t\t\texitActive: isLeft\n\t\t\t\t\t? \"ease-linear duration-200 transition-[margin-left] -ml-(--slide-out-width)\"\n\t\t\t\t\t: \"ease-linear duration-200 transition-[margin-right] -mr-(--slide-out-width)\",\n\t\t\t\texitDone: isLeft ? \"-ml-(--slide-out-width)\" : \"-mr-(--slide-out-width)\",\n\t\t\t}),\n\t\t\t[isLeft],\n\t\t)\n\n\t\tconst handleMouseDown: MouseEventHandler = useCallback((e) => {\n\t\t\tconst { clientX } = e\n\n\t\t\tprevClientX.current = clientX\n\n\t\t\tsetIsResizing(true)\n\t\t}, [])\n\n\t\tconst handleMouseMove = useCallback(\n\t\t\t(e: MouseEvent) => {\n\t\t\t\tif (!isResizing) return\n\n\t\t\t\tconst { clientX } = e\n\n\t\t\t\tconst deltaX = (clientX - prevClientX.current!) * (isLeft ? 1 : -1)\n\n\t\t\t\tprevClientX.current = clientX\n\n\t\t\t\tsetComputedWidth((prevWidth) => prevWidth! + deltaX)\n\t\t\t},\n\t\t\t[isLeft, isResizing],\n\t\t)\n\n\t\tconst handleMouseUp = useCallback(() => {\n\t\t\tif (!isResizing) return\n\t\t\tprevClientX.current = null\n\t\t\tsetIsResizing(false)\n\t\t}, [isResizing])\n\n\t\tuseEffect(() => {\n\t\t\twindow.addEventListener(\"mousemove\", handleMouseMove)\n\t\t\twindow.addEventListener(\"mouseup\", handleMouseUp)\n\n\t\t\treturn () => {\n\t\t\t\twindow.removeEventListener(\"mousemove\", handleMouseMove)\n\t\t\t\twindow.removeEventListener(\"mouseup\", handleMouseUp)\n\t\t\t}\n\t\t}, [handleMouseMove, handleMouseUp])\n\n\t\tuseLayoutEffect(() => {\n\t\t\tif (!open) return\n\t\t\tsetComputedWidth(localRef.current!.offsetWidth)\n\t\t}, [open])\n\n\t\tconst resizableStyle = useMemo(\n\t\t\t() =>\n\t\t\t\t({\n\t\t\t\t\t...style,\n\t\t\t\t\twidth: computedWidth ?? initialWidth,\n\t\t\t\t\tmaxWidth: maxWidth,\n\t\t\t\t\tminWidth: minWidth,\n\t\t\t\t\tposition: position,\n\t\t\t\t\t\"--slide-out-width\": `${computedWidth}${typeof computedWidth === \"number\" ? \"px\" : \"\"}`,\n\t\t\t\t}) as CSSProperties,\n\t\t\t[computedWidth, initialWidth, maxWidth, minWidth, position, style],\n\t\t)\n\n\t\tconst resizableEnable = useMemo(\n\t\t\t() => ({ left: resizeable && !isLeft, right: resizeable && isLeft }),\n\t\t\t[isLeft, resizeable],\n\t\t)\n\n\t\tconst SlideOut = useMemo(\n\t\t\t() => (\n\t\t\t\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\t\t\t\t// @ts-ignore\n\t\t\t\t<CSSTransition\n\t\t\t\t\tclassNames={CSSTransitionClassNames}\n\t\t\t\t\tin={open}\n\t\t\t\t\ttimeout={TIMEOUT_DURATION}\n\t\t\t\t\tunmountOnExit\n\t\t\t\t\tmountOnEnter\n\t\t\t\t\tonEntering={onOpening}\n\t\t\t\t\tonExited={onClosed}\n\t\t\t\t\tnodeRef={nodeRef}\n\t\t\t\t>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={cx(\n\t\t\t\t\t\t\t\"top-0\",\n\t\t\t\t\t\t\t\"bottom-0\",\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\"left-0\": isLeft,\n\t\t\t\t\t\t\t\t\"right-0\": !isLeft,\n\t\t\t\t\t\t\t\tabsolute: position === \"absolute\",\n\t\t\t\t\t\t\t\trelative: position === \"relative\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tref={mergedRefs}\n\t\t\t\t\t\tonPointerDownCapture={handlePointerDownCapture}\n\t\t\t\t\t\tdata-side={side}\n\t\t\t\t\t\tstyle={resizableStyle}\n\t\t\t\t\t>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName={cx(\"absolute top-0 bottom-0 w-[3px]\", {\n\t\t\t\t\t\t\t\t\"right-0\": isLeft,\n\t\t\t\t\t\t\t\t\"left-0\": !isLeft,\n\t\t\t\t\t\t\t\t\"pointer-events-none\": !resizableEnable,\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t\tonMouseDown={handleMouseDown}\n\t\t\t\t\t\t\tdata-resizing={isResizing ? \"\" : undefined}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{content}\n\t\t\t\t\t</div>\n\t\t\t\t</CSSTransition>\n\t\t\t),\n\t\t\t[\n\t\t\t\tCSSTransitionClassNames,\n\t\t\t\topen,\n\t\t\t\tonOpening,\n\t\t\t\tonClosed,\n\t\t\t\tclassName,\n\t\t\t\tisLeft,\n\t\t\t\tposition,\n\t\t\t\tmergedRefs,\n\t\t\t\thandlePointerDownCapture,\n\t\t\t\tside,\n\t\t\t\tresizableStyle,\n\t\t\t\thandleMouseDown,\n\t\t\t\tisResizing,\n\t\t\t\tresizableEnable,\n\t\t\t\tcontent,\n\t\t\t],\n\t\t)\n\n\t\treturn (\n\t\t\t<div\n\t\t\t\tclassName=\"relative flex h-full max-h-full w-full max-w-full overflow-hidden\"\n\t\t\t\tref={handleAssignParentContainer}\n\t\t\t>\n\t\t\t\t{side === \"left\" && !hide && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{open && overlayComponent} {content && SlideOut}\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t\t<div className=\"flex h-full max-w-full grow overflow-hidden\" ref={childrenContainerRef}>\n\t\t\t\t\t{children}\n\t\t\t\t</div>\n\t\t\t\t{side === \"right\" && !hide && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{open && overlayComponent} {content && SlideOut}\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t)\n\t}),\n)\n","import { cx } from \"class-variance-authority\"\nimport { Dispatch, forwardRef, memo, SetStateAction, useCallback, useEffect, useMemo } from \"react\"\n\nimport { SlideOut, SlideOutProps } from \"../SlideOut\"\nimport { useLayoutContext } from \"./context\"\n\nconst DEFAULT_INITIAL_WIDTH = \"30%\"\n\ninterface SlideOutImplProps extends Omit<SlideOutProps, \"open\" | \"initialWidth\"> {\n\t/** controls if the SlideOut is initially open once mounted when NOT in smallMode.\n\t * NOTE: changing the value of this will cause the SlideOut to open/close after mounting NOT in smallMode depending on\n\t * its passed in value.\n\t * @default false */\n\tdefaultOpen?: {\n\t\tsmall?: boolean\n\t\tlarge?: boolean\n\t}\n\t/** optional prop to control the open state of the SlideOut */\n\topen?: SlideOutProps[\"open\"]\n\t/** optional prop to control the initialWidth of the SlideOut\n\t * @default \"30%\" */\n\tinitialWidth?: SlideOutProps[\"initialWidth\"]\n}\n\nconst SlideOutImpl = memo(\n\tforwardRef<\n\t\tHTMLDivElement,\n\t\tSlideOutImplProps & {\n\t\t\t// seperated these here since don't want them to be actual attributes of SlideOutProps\n\t\t\tshowSlideOut: boolean\n\t\t\tsetShowSlideOut: Dispatch<SetStateAction<boolean>>\n\t\t}\n\t>((props, ref) => {\n\t\tconst { small, hideLayout } = useLayoutContext()\n\t\tconst { className, showSlideOut, setShowSlideOut, defaultOpen, side, ...rest } = props\n\n\t\tuseEffect(() => {\n\t\t\t// check if defaultOpenSmallMode specified\n\t\t\tif (small && defaultOpen?.small !== undefined) {\n\t\t\t\tsetShowSlideOut(defaultOpen?.small)\n\t\t\t} else if (!small && defaultOpen?.large !== undefined) {\n\t\t\t\tsetShowSlideOut(defaultOpen?.large)\n\t\t\t}\n\t\t}, [defaultOpen, setShowSlideOut, small])\n\n\t\t/** Callback for when SlideOut should be dismissed, only gets called when SlideOuts are open */\n\t\tconst handleDismiss = useCallback(() => {\n\t\t\tsetShowSlideOut(false)\n\t\t}, [setShowSlideOut])\n\n\t\t// Merging props controlled and uncontrolled props\n\t\tconst mergedProps = useMemo(\n\t\t\t() => ({\n\t\t\t\t// controlled props\n\t\t\t\t...{\n\t\t\t\t\topen: showSlideOut,\n\t\t\t\t\tinitialWidth: DEFAULT_INITIAL_WIDTH,\n\t\t\t\t\tmodal: small,\n\t\t\t\t\tonDismiss: handleDismiss,\n\t\t\t\t\tposition: (small ? \"absolute\" : \"relative\") as \"relative\" | \"absolute\",\n\t\t\t\t},\n\t\t\t\t// uncontrolled props\n\t\t\t\t...rest,\n\t\t\t}),\n\t\t\t[handleDismiss, rest, showSlideOut, small],\n\t\t)\n\n\t\treturn (\n\t\t\t!hideLayout && (\n\t\t\t\t<SlideOut\n\t\t\t\t\tclassName={cx(`overmap-layout-slideOut-${side}`, className)}\n\t\t\t\t\tside={side}\n\t\t\t\t\tref={ref}\n\t\t\t\t\t{...mergedProps}\n\t\t\t\t/>\n\t\t\t)\n\t\t)\n\t}),\n)\n\n/** Type used for both Layout.LeftSlideOut and Layout.RightSlideOut */\nexport interface LayoutSlideOutProps extends Omit<SlideOutImplProps, \"side\"> {}\n\n/** TODO: Document */\nexport const LeftSlideOut = memo(\n\tforwardRef<HTMLDivElement, LayoutSlideOutProps>((props, ref) => {\n\t\tconst { showLeftSlideOut, setShowLeftSlideOut } = useLayoutContext()\n\n\t\treturn (\n\t\t\t<SlideOutImpl\n\t\t\t\tside=\"left\"\n\t\t\t\tshowSlideOut={showLeftSlideOut}\n\t\t\t\tsetShowSlideOut={setShowLeftSlideOut}\n\t\t\t\tref={ref}\n\t\t\t\t{...props}\n\t\t\t/>\n\t\t)\n\t}),\n)\n\n/** TODO: Document */\nexport const RightSlideOut = memo(\n\tforwardRef<HTMLDivElement, LayoutSlideOutProps>((props, ref) => {\n\t\tconst { showRightSlideOut, setShowRightSlideOut } = useLayoutContext()\n\n\t\treturn (\n\t\t\t<SlideOutImpl\n\t\t\t\tside=\"right\"\n\t\t\t\tshowSlideOut={showRightSlideOut}\n\t\t\t\tsetShowSlideOut={setShowRightSlideOut}\n\t\t\t\tref={ref}\n\t\t\t\t{...props}\n\t\t\t/>\n\t\t)\n\t}),\n)\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, memo, PropsWithoutRef, useMemo } from \"react\"\n\nimport { SlideOutProps } from \"../SlideOut\"\nimport { useLayoutContext } from \"./context\"\n\nexport interface LayoutOverlayProps extends PropsWithoutRef<ComponentProps<\"div\">> {\n\tactive?: boolean\n\tside: SlideOutProps[\"side\"]\n\t// TODO: Might want to rename this once standardized\n\tsmallModeOnly?: boolean\n}\nexport const SlideOutOverlay = memo(\n\tforwardRef<HTMLDivElement, LayoutOverlayProps>((props, ref) => {\n\t\tconst { className, active, side, smallModeOnly = false, ...rest } = props\n\t\tconst { small, hideLayout, showLeftSlideOut, showRightSlideOut } = useLayoutContext()\n\n\t\tconst showOverlay = useMemo(() => {\n\t\t\t// If being controlled, return controlled state\n\t\t\tif (active !== undefined) return active\n\n\t\t\t// If layout current being hidden, set to false\n\t\t\tif (hideLayout) return false\n\n\t\t\t// If smallModeOnly but not in smallMode, set to false\n\t\t\tif (smallModeOnly && !small) return false\n\n\t\t\t// Otherwise return based on the open state\n\t\t\treturn side === \"left\" ? showLeftSlideOut : showRightSlideOut\n\t\t}, [active, hideLayout, showLeftSlideOut, showRightSlideOut, side, small, smallModeOnly])\n\n\t\treturn (\n\t\t\tshowOverlay && (\n\t\t\t\t<div className={cx(\"overmap-layout-overlay\", \"fixed inset-0\", className)} ref={ref} {...rest} />\n\t\t\t)\n\t\t)\n\t}),\n)\n","export const MENU_OVERFLOW_PADDING = 20\n\nexport const MENU_CONTENT_PADDING = 8\n\nexport const MENU_MINIMUM_MAX_HEIGHT = 250\n","import type { CheckedState } from \"../CheckedIndicator\"\nimport { MENU_CONTENT_PADDING } from \"./constants\"\nimport type { MenuAlignment, MenuSide } from \"./typings\"\n\n// This function computes offsets specifically for submenus so that they are flush with the trigger item and\n// parent content\nexport const computeOffsets = (side: MenuSide, alignment: MenuAlignment) => {\n\tswitch (side) {\n\t\tcase \"right\":\n\t\t\tif (alignment === \"start\") {\n\t\t\t\treturn { mainAxis: MENU_CONTENT_PADDING + 1, crossAxis: -MENU_CONTENT_PADDING }\n\t\t\t} else if (alignment === \"end\") {\n\t\t\t\treturn { mainAxis: MENU_CONTENT_PADDING + 1, crossAxis: MENU_CONTENT_PADDING }\n\t\t\t}\n\t\t\tbreak\n\t\tcase \"left\":\n\t\t\tif (alignment === \"start\") {\n\t\t\t\treturn { mainAxis: MENU_CONTENT_PADDING + 1, crossAxis: -MENU_CONTENT_PADDING }\n\t\t\t} else if (alignment === \"end\") {\n\t\t\t\treturn { mainAxis: MENU_CONTENT_PADDING + 1, crossAxis: MENU_CONTENT_PADDING }\n\t\t\t}\n\t\t\tbreak\n\t}\n\treturn { mainAxis: MENU_CONTENT_PADDING + 1, crossAxis: 0 }\n}\n\nexport function getSelectedState(selected: boolean) {\n\treturn selected ? \"selected\" : \"unselected\"\n}\n\nexport function getCheckedState(checked: CheckedState) {\n\treturn checked === true ? \"checked\" : checked === false ? \"unchecked\" : \"indeterminate\"\n}\n\nexport function getActiveState(active: boolean) {\n\treturn active ? \"active\" : \"inactive\"\n}\n\nexport function getBooleanState(value: boolean) {\n\treturn value ? \"true\" : \"false\"\n}\n\nexport function getOpenState(open: boolean) {\n\treturn open ? \"open\" : \"closed\"\n}\n","import { Slot } from \"@radix-ui/react-slot\"\nimport { forwardRef, memo, PropsWithChildren, useCallback } from \"react\"\n\nimport { getOpenState } from \"../Menu/utils\"\nimport { SlideOutProps } from \"../SlideOut\"\nimport { useLayoutContext } from \"./context\"\n\nexport interface SlideOutTriggerProps extends PropsWithChildren {\n\tside: SlideOutProps[\"side\"]\n\ttype?: \"toggle\" | \"open\" | \"close\"\n}\n\nfunction nextStateBasedOnType(prevState: boolean, type: \"toggle\" | \"open\" | \"close\") {\n\tswitch (type) {\n\t\tcase \"toggle\":\n\t\t\treturn !prevState\n\t\tcase \"open\":\n\t\t\treturn true\n\t\tcase \"close\":\n\t\t\treturn false\n\t}\n}\nexport const SlideOutTrigger = memo(\n\tforwardRef<HTMLButtonElement, SlideOutTriggerProps>((props, ref) => {\n\t\tconst { side, type = \"toggle\", children } = props\n\t\tconst { showLeftSlideOut, showRightSlideOut, setShowLeftSlideOut, setShowRightSlideOut } = useLayoutContext()\n\n\t\tconst open = side === \"left\" ? showLeftSlideOut : showRightSlideOut\n\n\t\tconst handleClick = useCallback(() => {\n\t\t\tconst setShowSlideOut = side === \"left\" ? setShowLeftSlideOut : setShowRightSlideOut\n\t\t\tsetShowSlideOut((prevState) => nextStateBasedOnType(prevState, type))\n\t\t}, [setShowLeftSlideOut, setShowRightSlideOut, side, type])\n\n\t\treturn (\n\t\t\t<Slot data-state={getOpenState(open)} ref={ref} onClick={handleClick}>\n\t\t\t\t{children}\n\t\t\t</Slot>\n\t\t)\n\t}),\n)\n","import { Container } from \"./Container\"\nimport { Root } from \"./Root\"\nimport { LeftSlideOut, RightSlideOut } from \"./SlideOut\"\nimport { SlideOutOverlay } from \"./SlideOutOverlay\"\nimport { SlideOutTrigger } from \"./SlideOutTrigger\"\n\nexport const Layout = {\n\tRoot,\n\tContainer,\n\tSlideOutOverlay,\n\tLeftSlideOut,\n\tRightSlideOut,\n\tSlideOutTrigger,\n}\nexport type * from \"./Container\"\nexport * from \"./context\"\nexport type * from \"./Root\"\nexport type * from \"./SlideOut\"\nexport type * from \"./SlideOutOverlay\"\nexport type * from \"./SlideOutTrigger\"\n","import { cva } from \"class-variance-authority\"\n\nexport const linkCva = cva([\"cursor-pointer\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\tnone: [\"[font-size:inherit]\", \"leading-[inherit]\"],\n\t\t\txs: [\"text-xs\"],\n\t\t\tsm: [\"text-sm\"],\n\t\t\tmd: [\"text-base\"],\n\t\t\tlg: [\"text-lg\"],\n\t\t\txl: [\"text-xl\"],\n\t\t\t\"2xl\": [\"text-2xl\"],\n\t\t\t\"3xl\": [\"text-3xl\"],\n\t\t\t\"4xl\": [\"text-4xl\"],\n\t\t\t\"5xl\": [\"text-5xl\"],\n\t\t\t\"6xl\": [\"text-6xl\"],\n\t\t\t\"7xl\": [\"text-7xl\"],\n\t\t\t\"8xl\": [\"text-8xl\"],\n\t\t\t\"9xl\": [\"text-9xl\"],\n\t\t},\n\t\tweight: {\n\t\t\tlight: [\"font-light\"],\n\t\t\tregular: [\"font-normal\"],\n\t\t\tmedium: [\"font-medium\"],\n\t\t\tbold: [\"font-bold\"],\n\t\t},\n\t\talign: {\n\t\t\tleft: [\"text-left\"],\n\t\t\tcenter: [\"text-center\"],\n\t\t\tright: [\"text-right\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"none\",\n\t\tweight: \"regular\",\n\t\talign: \"left\",\n\t},\n})\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nimport { useProvider } from \"../Provider\"\nimport { linkCva } from \"./cva\"\nimport type { LinkVariantProps } from \"./typings\"\n\nexport interface LinkProps extends PropsWithoutRef<ComponentProps<\"a\">>, LinkVariantProps {}\n\nexport const Link = forwardRef<HTMLAnchorElement, LinkProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tsize,\n\t\tweight = \"regular\",\n\t\talign = \"left\",\n\t\thighContrast = false,\n\t\taccentColor = providerContext.accentColor,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<a\n\t\t\tref={ref}\n\t\t\tclassName={cx(\n\t\t\t\tlinkCva({ size, weight, align }),\n\t\t\t\t{\n\t\t\t\t\t\"text-(--accent-a11)\": !highContrast,\n\t\t\t\t\t\"text-(--accent-a12)\": highContrast,\n\t\t\t\t},\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nLink.displayName = \"Link\"\n","import { createContext } from \"react\"\n\nimport type { CheckedState } from \"./typings\"\n\nexport const CheckedIndicatorContext = createContext({} as CheckedState)\n","import { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, FC, PropsWithChildren, useContext } from \"react\"\n\nimport { getCheckedState } from \"../CommandMenu/utils\"\nimport { CheckedIndicatorContext } from \"./context\"\n\nexport interface CheckedIndicatorProps extends Omit<ComponentPropsWithRef<\"span\">, \"children\"> {\n\tchildren: PropsWithChildren[\"children\"] | ((indeterminate: boolean) => PropsWithChildren[\"children\"])\n}\n\nexport const CheckedIndicator: FC<CheckedIndicatorProps> = (props) => {\n\tconst { children, ref, className, ...rest } = props\n\n\tconst checked = useContext(CheckedIndicatorContext)\n\n\tconst computedChildren = typeof children === \"function\" ? children(checked === \"indeterminate\") : children\n\n\treturn (\n\t\t<span\n\t\t\tref={ref}\n\t\t\tclassName={cx(\n\t\t\t\t{\n\t\t\t\t\tinvisible: checked === false,\n\t\t\t\t},\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\tdata-state={getCheckedState(checked)}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{computedChildren}\n\t\t</span>\n\t)\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const menuItem = cva(\n\t[\n\t\t\"select-none\",\n\t\t\"relative\",\n\t\t\"flex\",\n\t\t\"items-center\",\n\t\t\"rounded\",\n\t\t\"outline-none\",\n\t\t\"data-[disabled=true]:text-(--base-a8)\",\n\t\t\"shrink-0\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"h-6\", \"gap-1.5\", \"px-3\"],\n\t\t\t\tsm: [\"h-7\", \"gap-1.75\", \"px-3.5\"],\n\t\t\t\tmd: [\"h-8\", \"gap-2\", \"px-4\"],\n\t\t\t\tlg: [\"h-9\", \"gap-2.25\", \"px-4.5\"],\n\t\t\t\txl: [\"h-10\", \"gap-2.5\", \"px-5\"],\n\t\t\t},\n\t\t\tvariant: {\n\t\t\t\tsolid: [\n\t\t\t\t\t\"text-(--base-12)\",\n\t\t\t\t\t\"data-highlighted:not-data-[disabled=true]:text-(--accent-contrast)\",\n\t\t\t\t\t\"data-highlighted:not-data-[disabled=true]:bg-(--accent-a9)\",\n\t\t\t\t\t\"data-highlighted:not-data-[disabled=true]:active:brightness-110\",\n\t\t\t\t],\n\t\t\t\tsoft: [\n\t\t\t\t\t\"text-(--base-12)\",\n\t\t\t\t\t\"data-highlighted:not-data-[disabled=true]:bg-(--accent-a3)\",\n\t\t\t\t\t\"data-highlighted:not-data-[disabled=true]:active:bg-(--accent-a4)\",\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t\tvariant: \"soft\",\n\t\t},\n\t},\n)\n\nexport const menuLabelCva = cva([\"text-(--base-a10)\", \"flex\", \"items-center\", \"select-none\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"h-6\", \"gap-1.5\", \"px-3\", \"text-xs\"],\n\t\t\tsm: [\"h-7\", \"gap-1.75\", \"px-3.5\", \"text-xs\"],\n\t\t\tmd: [\"h-8\", \"gap-2\", \"px-4\", \"text-sm\"],\n\t\t\tlg: [\"h-9\", \"gap-2.25\", \"px-4.5\", \"text-base\"],\n\t\t\txl: [\"h-10\", \"gap-2.5\", \"px-5\", \"text-lg\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n})\n\nexport const menuSeparator = cva([\"h-px\", \"bg-(--base-a6)\", \"w-auto\", \"shrink-0\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"-mx-0.5\", \"my-0.5\"],\n\t\t\tsm: [\"-mx-0.75\", \"my-0.75\"],\n\t\t\tmd: [\"-mx-1\", \"my-1\"],\n\t\t\tlg: [\"-mx-1.25\", \"my-1.25\"],\n\t\t\txl: [\"-mx-1.5\", \"my-1.5\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n})\n\nexport const menuContent = cva(\n\t[\n\t\t\"flex\",\n\t\t\"flex-col\",\n\t\t\"w-max\",\n\t\t\"max-w-xs\",\n\t\t\"outline-none\",\n\t\t\"pointer-events-auto\",\n\t\t\"bg-(--color-background)\",\n\t\t\"dark:bg-(--base-2)\",\n\t\t\"ring-1\",\n\t\t\"ring-(--base-6)\",\n\t\t\"overflow-hidden\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"p-0.5\", \"text-xs\", \"min-w-30\"],\n\t\t\t\tsm: [\"p-0.75\", \"text-sm\", \"min-w-35\"],\n\t\t\t\tmd: [\"p-1\", \"text-md\", \"min-w-40\"],\n\t\t\t\tlg: [\"p-1.25\", \"text-lg\", \"min-w-45\"],\n\t\t\t\txl: [\"p-1.5\", \"text-xl\", \"min-w-50\"],\n\t\t\t},\n\t\t\tradius: {\n\t\t\t\tnone: [\"rounded-none\"],\n\t\t\t\txs: [\"rounded-xs\"],\n\t\t\t\tsm: [\"rounded-sm\"],\n\t\t\t\tmd: [\"rounded-md\"],\n\t\t\t\tlg: [\"rounded-lg\"],\n\t\t\t\txl: [\"rounded-lg\"],\n\t\t\t\tfull: [\"rounded-lg\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n\nexport const menuOverlay = cva([\"overflow-hidden\", \"touch-manipulation\"], {\n\tvariants: {\n\t\tmodal: {\n\t\t\ttrue: [\"pointer-events-auto\"],\n\t\t\tfalse: [\"pointer-events-none\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tmodal: false,\n\t},\n})\n\nexport const inputRoot = cva(\n\t[\n\t\t\"flex\",\n\t\t\"items-stretch\",\n\t\t\"transition-colors\",\n\t\t\"data-[disabled=true]:opacity-50\",\n\t\t\"data-[disabled=true]:pointer-events-none\",\n\t\t\"box-border\",\n\t\t\"bg-transparent\",\n\t\t\"text-(--base-12)\",\n\t\t\"shrink-0\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"h-6\", \"text-xs\", \"px-3\", \"gap-1.5\"],\n\t\t\t\tsm: [\"h-7\", \"text-sm\", \"px-3.5\", \"gap-1.75\"],\n\t\t\t\tmd: [\"h-8\", \"text-base\", \"px-4\", \"gap-2\"],\n\t\t\t\tlg: [\"h-9\", \"text-lg\", \"px-4.5\", \"gap-2.25\"],\n\t\t\t\txl: [\"h-10\", \"text-xl\", \"px-5\", \"gap-2.5\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n","import { MiddlewareData, UseFloatingData, UseInteractionsReturn } from \"@floating-ui/react\"\nimport { createContext, CSSProperties, MutableRefObject, useContext } from \"react\"\n\nimport type { MenuSide, MenuTriggerType } from \"../typings\"\n\ninterface IMenuContext {\n\topen: boolean\n\tsetOpen: (open: boolean) => void\n\n\tside: MenuSide\n\tsetTriggerType: (triggerType: MenuTriggerType) => void\n\tmodal: boolean\n\t// props from hoisting useFloating up\n\tnodeId: string | undefined\n\trefs: UseFloatingData[\"refs\"]\n\tfloatingStyles: CSSProperties\n\tcontext: UseFloatingData[\"context\"]\n\telementsRef: MutableRefObject<HTMLDivElement[]>\n\tactiveIndex: number | null\n\tsetActiveIndex: (index: number | null) => void\n\tgetItemProps: UseInteractionsReturn[\"getItemProps\"]\n\tgetFloatingProps: UseInteractionsReturn[\"getFloatingProps\"]\n\tgetReferenceProps: UseInteractionsReturn[\"getReferenceProps\"]\n\tmiddlewareData: MiddlewareData\n}\n\nexport const MenuContext = createContext<IMenuContext>({} as IMenuContext)\n\nexport const useMenuContext = () => useContext(MenuContext)\n","import {\n\tautoUpdate,\n\tflip,\n\tFloatingTree,\n\thide,\n\toffset as offsetMiddleware,\n\tPlacement,\n\tshift,\n\tsize as sizeMiddleware,\n\tuseClick,\n\tuseDismiss,\n\tuseFloating,\n\tuseFloatingNodeId,\n\tuseInteractions,\n\tuseListNavigation,\n\tuseRole,\n\tVirtualElement,\n} from \"@floating-ui/react\"\nimport { memo, useRef, useState } from \"react\"\n\nimport { useControlledState } from \"../../utils\"\nimport { MENU_MINIMUM_MAX_HEIGHT, MENU_OVERFLOW_PADDING } from \"../constants\"\nimport type { MenuRootProps, MenuTriggerType } from \"../typings\"\nimport { MenuContext } from \"./context\"\n\nconst DEFAULT_OFFSET = 5\n\nexport const MenuRoot = memo<MenuRootProps>((props) => {\n\tconst {\n\t\tchildren,\n\t\tside = \"bottom\",\n\t\talign = \"center\",\n\t\toffset,\n\t\tloop = false,\n\t\tmodal = false,\n\n\t\t// open state related props\n\t\topen: controlledOpen,\n\t\tonOpenChange,\n\t\tdefaultOpen,\n\t} = props\n\n\tconst [open, setOpen] = useControlledState<boolean>(defaultOpen ?? false, controlledOpen, onOpenChange)\n\n\tconst [activeIndex, setActiveIndex] = useState<number | null>(null)\n\n\tconst [triggerType, setTriggerType] = useState<MenuTriggerType | null>(null)\n\n\tconst elementsRef = useRef<HTMLDivElement[]>([])\n\n\tconst nodeId = useFloatingNodeId()\n\n\tconst { refs, floatingStyles, context, middlewareData } = useFloating<VirtualElement>({\n\t\tnodeId: nodeId,\n\t\tstrategy: \"fixed\",\n\t\tplacement: (side + (align !== \"center\" ? \"-\" + align : \"\")) as Placement,\n\t\twhileElementsMounted: autoUpdate,\n\t\topen: open,\n\t\tonOpenChange: setOpen,\n\t\tmiddleware: [\n\t\t\toffsetMiddleware({ mainAxis: offset ?? DEFAULT_OFFSET }),\n\t\t\tsizeMiddleware({\n\t\t\t\tapply({ availableHeight, elements }) {\n\t\t\t\t\telements.floating.style.setProperty(\n\t\t\t\t\t\t\"--overmap-menu-available-height\",\n\t\t\t\t\t\t`${Math.max(availableHeight, MENU_MINIMUM_MAX_HEIGHT)}px`,\n\t\t\t\t\t)\n\t\t\t\t},\n\t\t\t\tpadding: MENU_OVERFLOW_PADDING,\n\t\t\t}),\n\t\t\tflip({ fallbackStrategy: \"initialPlacement\" }),\n\t\t\tshift({ padding: MENU_OVERFLOW_PADDING }),\n\t\t\thide(),\n\t\t],\n\t})\n\n\tconst role = useRole(context, {\n\t\trole: \"menu\",\n\t})\n\n\tconst dismiss = useDismiss(context, {\n\t\tcapture: true,\n\t\tancestorScroll: triggerType === \"context\" || triggerType === \"virtual\",\n\t})\n\n\tconst click = useClick(context, {\n\t\tenabled: triggerType === \"click\",\n\t})\n\n\tconst listNavigation = useListNavigation(context, {\n\t\tlistRef: elementsRef,\n\t\tactiveIndex,\n\t\tonNavigate: setActiveIndex,\n\t\tloop: loop,\n\t})\n\n\tconst { getFloatingProps, getItemProps, getReferenceProps } = useInteractions([\n\t\tdismiss,\n\t\tlistNavigation,\n\t\tclick,\n\t\trole,\n\t])\n\n\treturn (\n\t\t<FloatingTree>\n\t\t\t<MenuContext.Provider\n\t\t\t\tvalue={{\n\t\t\t\t\topen,\n\t\t\t\t\tsetOpen,\n\t\t\t\t\trefs,\n\t\t\t\t\tcontext,\n\t\t\t\t\tfloatingStyles,\n\t\t\t\t\telementsRef,\n\t\t\t\t\tgetFloatingProps,\n\t\t\t\t\tgetItemProps,\n\t\t\t\t\tgetReferenceProps,\n\t\t\t\t\tnodeId,\n\t\t\t\t\tactiveIndex,\n\t\t\t\t\tsetActiveIndex,\n\t\t\t\t\tmiddlewareData,\n\t\t\t\t\tside,\n\t\t\t\t\tmodal,\n\t\t\t\t\tsetTriggerType,\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</MenuContext.Provider>\n\t\t</FloatingTree>\n\t)\n})\nMenuRoot.displayName = \"Root\"\n","import { UseFloatingData, UseInteractionsReturn } from \"@floating-ui/react\"\nimport { createContext, MutableRefObject, useContext } from \"react\"\n\nimport type { ComponentRadius } from \"../../Provider\"\nimport type { MenuSize, MenuVariant } from \"../typings\"\n\ninterface IMenuContentContext {\n\tactiveIndex: number | null\n\tgetItemProps: UseInteractionsReturn[\"getItemProps\"]\n\telementsRef: MutableRefObject<HTMLDivElement[]>\n\tsetActiveIndex: (index: number | null) => void\n\trefs: UseFloatingData[\"refs\"]\n\topen: boolean\n\tsetOpen: (open: boolean) => void\n\n\t// style props\n\taccentColor: string\n\tradius: ComponentRadius\n\tsize: MenuSize\n\tvariant: MenuVariant\n}\n\nexport const MenuContentContext = createContext<IMenuContentContext>({} as IMenuContentContext)\n\nexport const useMenuContentContext = () => useContext(MenuContentContext)\n","import { FloatingFocusManager, FloatingList, FloatingNode, FloatingOverlay, FloatingPortal } from \"@floating-ui/react\"\nimport { cx } from \"class-variance-authority\"\nimport { CSSProperties, memo, MouseEventHandler, useCallback, useMemo } from \"react\"\n\nimport { floating, radiusCva } from \"../../cva\"\nimport { useProvider } from \"../../Provider\"\nimport { stopPropagation } from \"../../utils\"\nimport { menuContent, menuOverlay } from \"../cva\"\nimport { useMenuContext } from \"../root\"\nimport type { MenuContentProps } from \"../typings\"\nimport { getOpenState } from \"../utils\"\nimport { MenuContentContext } from \"./context\"\n\nexport const MenuContent = memo<MenuContentProps>((props) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tref: forwardedRef,\n\t\tclassName,\n\t\tchildren,\n\t\tsize = \"md\",\n\t\tvariant = \"soft\",\n\t\tradius = providerContext.radius,\n\t\taccentColor = \"base\",\n\t\t...rest\n\t} = props\n\tconst {\n\t\trefs,\n\t\tgetFloatingProps,\n\t\tmiddlewareData,\n\t\telementsRef,\n\t\tactiveIndex,\n\t\tsetActiveIndex,\n\t\tgetItemProps,\n\t\topen,\n\t\tsetOpen,\n\t\tnodeId,\n\t\tcontext,\n\t\tfloatingStyles,\n\t\tmodal,\n\t\tside,\n\t} = useMenuContext()\n\n\tconst computedFloatingStyles: CSSProperties = useMemo(() => {\n\t\treturn {\n\t\t\t...floatingStyles,\n\t\t\tvisibility: middlewareData.hide?.referenceHidden ? \"hidden\" : \"visible\",\n\t\t}\n\t}, [floatingStyles, middlewareData.hide?.referenceHidden])\n\n\tconst handleOverlayPointerDown = useCallback<MouseEventHandler<HTMLDivElement>>(\n\t\t(e) => {\n\t\t\tif (modal) stopPropagation(e)\n\t\t},\n\t\t[modal],\n\t)\n\n\treturn (\n\t\t<FloatingNode id={nodeId}>\n\t\t\t{open && (\n\t\t\t\t<FloatingPortal>\n\t\t\t\t\t<FloatingOverlay\n\t\t\t\t\t\tclassName={menuOverlay({ modal })}\n\t\t\t\t\t\tonClick={handleOverlayPointerDown}\n\t\t\t\t\t\tlockScroll\n\t\t\t\t\t\tdata-floating-content=\"\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<FloatingFocusManager context={context}>\n\t\t\t\t\t\t\t<FloatingList elementsRef={elementsRef}>\n\t\t\t\t\t\t\t\t<MenuContentContext.Provider\n\t\t\t\t\t\t\t\t\tvalue={{\n\t\t\t\t\t\t\t\t\t\tgetItemProps,\n\t\t\t\t\t\t\t\t\t\tactiveIndex,\n\t\t\t\t\t\t\t\t\t\telementsRef,\n\t\t\t\t\t\t\t\t\t\topen,\n\t\t\t\t\t\t\t\t\t\tsetOpen,\n\t\t\t\t\t\t\t\t\t\trefs,\n\t\t\t\t\t\t\t\t\t\tsetActiveIndex,\n\t\t\t\t\t\t\t\t\t\tsize,\n\t\t\t\t\t\t\t\t\t\tvariant,\n\t\t\t\t\t\t\t\t\t\taccentColor,\n\t\t\t\t\t\t\t\t\t\tradius,\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\tclassName=\"border-box w-max outline-none\"\n\t\t\t\t\t\t\t\t\t\tref={refs.setFloating}\n\t\t\t\t\t\t\t\t\t\ttabIndex={-1}\n\t\t\t\t\t\t\t\t\t\tstyle={computedFloatingStyles}\n\t\t\t\t\t\t\t\t\t\tdata-floating-content=\"\"\n\t\t\t\t\t\t\t\t\t\t{...getFloatingProps()}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<ul\n\t\t\t\t\t\t\t\t\t\t\tclassName={cx(\n\t\t\t\t\t\t\t\t\t\t\t\tmenuContent({ size }),\n\t\t\t\t\t\t\t\t\t\t\t\tfloating({ side, shadow: \"3\" }),\n\t\t\t\t\t\t\t\t\t\t\t\tradiusCva({ radius, maxLarge: true }),\n\t\t\t\t\t\t\t\t\t\t\t\t\"max-h-(--overmap-menu-available-height)\",\n\t\t\t\t\t\t\t\t\t\t\t\tclassName,\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t\tref={forwardedRef}\n\t\t\t\t\t\t\t\t\t\t\tdata-state={getOpenState(open)}\n\t\t\t\t\t\t\t\t\t\t\tdata-side={side}\n\t\t\t\t\t\t\t\t\t\t\tdata-accent-color={accentColor}\n\t\t\t\t\t\t\t\t\t\t\t{...rest}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</MenuContentContext.Provider>\n\t\t\t\t\t\t\t</FloatingList>\n\t\t\t\t\t\t</FloatingFocusManager>\n\t\t\t\t\t</FloatingOverlay>\n\t\t\t\t</FloatingPortal>\n\t\t\t)}\n\t\t</FloatingNode>\n\t)\n})\nMenuContent.displayName = \"Menu.Content\"\n","import { UseFloatingData, UseInteractionsReturn } from \"@floating-ui/react\"\nimport { createContext, CSSProperties, MutableRefObject, useContext } from \"react\"\n\nimport type { MenuSide } from \"../typings\"\n\ninterface ISubContext {\n\t// we know exactly what type of element the SubTrigger will be, therefore type it as Element\n\topen: boolean\n\tsetOpen: (open: boolean) => void\n\tdisabled: boolean\n\tside: MenuSide\n\tcloseRoot: boolean\n\tmodal: boolean\n\t// props from hoisting useFloating up\n\tnodeId: string | undefined\n\trefs: UseFloatingData[\"refs\"]\n\tfloatingStyles: CSSProperties\n\tcontext: UseFloatingData[\"context\"]\n\telementsRef: MutableRefObject<HTMLDivElement[]>\n\tactiveIndex: number | null\n\tsetActiveIndex: (index: number | null) => void\n\tgetItemProps: UseInteractionsReturn[\"getItemProps\"]\n\tgetFloatingProps: UseInteractionsReturn[\"getFloatingProps\"]\n\tgetReferenceProps: UseInteractionsReturn[\"getReferenceProps\"]\n}\n\nexport const SubContext = createContext<ISubContext>({} as ISubContext)\n\nexport const useSubContext = () => useContext(SubContext)\n","import {\n\tautoUpdate,\n\tflip,\n\thide,\n\toffset,\n\tPlacement,\n\tsafePolygon,\n\tshift,\n\tsize as sizeMiddleware,\n\tuseClick,\n\tuseDismiss,\n\tuseFloating,\n\tuseFloatingNodeId,\n\tuseHover,\n\tuseInteractions,\n\tuseListNavigation,\n} from \"@floating-ui/react\"\nimport { memo, useRef, useState } from \"react\"\n\nimport { useControlledState } from \"../../utils\"\nimport { MENU_MINIMUM_MAX_HEIGHT, MENU_OVERFLOW_PADDING } from \"../constants\"\nimport type { MenuSubProps } from \"../typings\"\nimport { computeOffsets } from \"../utils\"\nimport { SubContext } from \"./context\"\n\nexport const MenuSub = memo<MenuSubProps>((props) => {\n\tconst {\n\t\tchildren,\n\t\tdisabled = false,\n\t\tside = \"right\",\n\t\talign = \"start\",\n\t\tcloseRoot = false,\n\t\tloop = false,\n\t\tmodal = false,\n\t\t// open state related props\n\t\topen: controlledOpen,\n\t\tonOpenChange,\n\t\tdefaultOpen,\n\t} = props\n\n\tconst [open, setOpen] = useControlledState<boolean>(defaultOpen ?? false, controlledOpen, onOpenChange)\n\n\tconst nodeId = useFloatingNodeId()\n\n\tconst { refs, floatingStyles, context } = useFloating({\n\t\tnodeId: nodeId,\n\t\tstrategy: \"fixed\",\n\t\twhileElementsMounted: autoUpdate,\n\t\topen: open,\n\t\tonOpenChange: (open, _event, reason) => {\n\t\t\t// unique bug where reason was undefined causing close on initial hover\n\t\t\tif (reason) setOpen(open)\n\t\t},\n\t\tplacement: (side + (align !== \"center\" ? \"-\" + align : \"\")) as Placement,\n\t\tmiddleware: [\n\t\t\toffset({ ...computeOffsets(side, align) }),\n\t\t\tsizeMiddleware({\n\t\t\t\tpadding: MENU_OVERFLOW_PADDING,\n\t\t\t\tapply({ availableHeight, elements }) {\n\t\t\t\t\telements.floating.style.setProperty(\n\t\t\t\t\t\t\"--overmap-menu-available-height\",\n\t\t\t\t\t\t`${Math.max(availableHeight, MENU_MINIMUM_MAX_HEIGHT)}px`,\n\t\t\t\t\t)\n\t\t\t\t},\n\t\t\t}),\n\t\t\tflip(),\n\t\t\tshift({ padding: MENU_OVERFLOW_PADDING }),\n\t\t\thide(),\n\t\t],\n\t})\n\n\tconst dismiss = useDismiss(context, {\n\t\tbubbles: closeRoot,\n\t\toutsidePress: closeRoot,\n\t})\n\n\tconst hover = useHover(context, {\n\t\trestMs: 50,\n\t\thandleClose: safePolygon({\n\t\t\tblockPointerEvents: true,\n\t\t\trequireIntent: false,\n\t\t}),\n\t\tenabled: !disabled,\n\t})\n\n\tconst click = useClick(context, {\n\t\tenabled: !disabled,\n\t})\n\n\tconst elementsRef = useRef<HTMLDivElement[]>([])\n\n\tconst [activeIndex, setActiveIndex] = useState<number | null>(null)\n\n\tconst listNavigation = useListNavigation(context, {\n\t\tlistRef: elementsRef,\n\t\tnested: true,\n\t\tactiveIndex: activeIndex,\n\t\tonNavigate: setActiveIndex,\n\t\tloop: loop,\n\t\trtl: side === \"left\",\n\t})\n\n\tconst { getFloatingProps, getItemProps, getReferenceProps } = useInteractions([\n\t\tlistNavigation,\n\t\tdismiss,\n\t\thover,\n\t\tclick,\n\t])\n\n\treturn (\n\t\t<SubContext.Provider\n\t\t\tvalue={{\n\t\t\t\topen,\n\t\t\t\tsetOpen,\n\t\t\t\tnodeId,\n\t\t\t\trefs,\n\t\t\t\tfloatingStyles,\n\t\t\t\tcontext,\n\t\t\t\telementsRef,\n\t\t\t\tactiveIndex,\n\t\t\t\tsetActiveIndex,\n\t\t\t\tgetFloatingProps,\n\t\t\t\tgetItemProps,\n\t\t\t\tgetReferenceProps,\n\t\t\t\tdisabled,\n\t\t\t\tside,\n\t\t\t\tcloseRoot,\n\t\t\t\tmodal,\n\t\t\t}}\n\t\t>\n\t\t\t{children}\n\t\t</SubContext.Provider>\n\t)\n})\nMenuSub.displayName = \"SubMenu\"\n","import { useListItem, useMergeRefs } from \"@floating-ui/react\"\nimport { cx } from \"class-variance-authority\"\nimport { KeyboardEventHandler, memo, MouseEventHandler, useCallback, useMemo } from \"react\"\n\nimport { radiusCva } from \"../../cva\"\nimport { useMenuContentContext } from \"../Content\"\nimport { menuItem } from \"../cva\"\nimport { useMenuContext } from \"../root\"\nimport { useSubContext } from \"../Sub\"\nimport type { MenuItemProps } from \"../typings\"\nimport { getBooleanState } from \"../utils\"\n\nconst TRIGGER_SELECT_KEYS = [\"Enter\", \" \"]\n\nexport const MenuItem = memo<MenuItemProps>((props) => {\n\tconst rootMenuContext = useMenuContext()\n\tconst { getItemProps, activeIndex, setOpen, size, variant, radius } = useMenuContentContext()\n\tconst { closeRoot } = useSubContext()\n\tconst {\n\t\tref: forwardedRef,\n\t\tclassName,\n\t\tchildren,\n\t\tonSelect,\n\t\tonClick,\n\t\tonKeyDown,\n\t\tcloseOnSelect = true,\n\t\tdisabled = false,\n\t\t...rest\n\t} = props\n\n\tconst { ref, index } = useListItem()\n\n\tconst mergeRefs = useMergeRefs([ref, forwardedRef])\n\n\tconst handleClick = useCallback<MouseEventHandler<HTMLLIElement>>(\n\t\t(e) => {\n\t\t\te.stopPropagation()\n\t\t\tif (disabled) return\n\t\t\tonClick?.(e)\n\t\t\tonSelect?.()\n\t\t\tif (closeOnSelect) setOpen(false)\n\t\t\tif (closeRoot) rootMenuContext.setOpen(false)\n\t\t},\n\t\t[closeOnSelect, closeRoot, disabled, rootMenuContext, onClick, onSelect, setOpen],\n\t)\n\n\tconst handleKeyDown = useCallback<KeyboardEventHandler<HTMLLIElement>>(\n\t\t(e) => {\n\t\t\tif (disabled) return\n\t\t\tonKeyDown?.(e)\n\t\t\tif (TRIGGER_SELECT_KEYS.includes(e.key)) {\n\t\t\t\tonSelect?.()\n\t\t\t\tif (closeOnSelect) setOpen(false)\n\t\t\t}\n\t\t},\n\t\t[closeOnSelect, disabled, onKeyDown, onSelect, setOpen],\n\t)\n\n\tconst isActive = useMemo(() => index === activeIndex, [activeIndex, index])\n\n\tconst computedChildren = useMemo(() => {\n\t\treturn typeof children === \"function\" ? children({ active: isActive, selected: false }) : children\n\t}, [children, isActive])\n\n\treturn (\n\t\t<li\n\t\t\tclassName={cx(menuItem({ size, variant }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\tref={mergeRefs}\n\t\t\trole=\"menuitem\"\n\t\t\tdata-disabled={getBooleanState(disabled)}\n\t\t\taria-disabled={disabled}\n\t\t\tdata-highlighted={isActive ? \"\" : undefined}\n\t\t\t{...getItemProps({\n\t\t\t\tonClick: handleClick,\n\t\t\t\tonKeyDown: handleKeyDown,\n\t\t\t\ttabIndex: isActive ? 0 : -1,\n\t\t\t\t...rest,\n\t\t\t})}\n\t\t>\n\t\t\t{computedChildren}\n\t\t</li>\n\t)\n})\nMenuItem.displayName = \"MenuItem\"\n","import { memo, useCallback } from \"react\"\n\nimport { CheckedIndicatorContext } from \"../../CheckedIndicator\"\nimport { MenuItem } from \"../Item\"\nimport type { MenuCheckboxItemProps } from \"../typings\"\n\nexport const MenuCheckboxItem = memo<MenuCheckboxItemProps>((props) => {\n\tconst { ref, checked, onCheckedChange, onSelect, ...rest } = props\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\n\t\tswitch (checked) {\n\t\t\tcase true:\n\t\t\t\tonCheckedChange(false)\n\t\t\t\tbreak\n\t\t\tcase \"indeterminate\":\n\t\t\tcase false:\n\t\t\t\tonCheckedChange(true)\n\t\t\t\tbreak\n\t\t}\n\t}, [checked, onCheckedChange, onSelect])\n\n\treturn (\n\t\t<CheckedIndicatorContext.Provider value={checked}>\n\t\t\t<MenuItem ref={ref} onSelect={handleSelect} {...rest} />\n\t\t</CheckedIndicatorContext.Provider>\n\t)\n})\nMenuCheckboxItem.displayName = \"MenuCheckboxItem\"\n","import { memo } from \"react\"\n\nimport { CheckedIndicator } from \"../../CheckedIndicator\"\nimport type { MenuCheckboxIndicatorProps } from \"../typings\"\n\nexport const MenuCheckboxItemIndicator = memo<MenuCheckboxIndicatorProps>((props) => {\n\tconst { ref, children, ...rest } = props\n\n\treturn (\n\t\t<CheckedIndicator ref={ref} {...rest}>\n\t\t\t{children}\n\t\t</CheckedIndicator>\n\t)\n})\nMenuCheckboxItemIndicator.displayName = \"MenuCheckboxItemIndicator\"\n","import { useMergeRefs } from \"@floating-ui/react\"\nimport { Slot } from \"@radix-ui/react-slot\"\nimport { memo, useEffect } from \"react\"\n\nimport { useMenuContext } from \"../root\"\nimport type { MenuClickTriggerProps } from \"../typings\"\nimport { getBooleanState, getOpenState } from \"../utils\"\n\nexport const MenuClickTrigger = memo(\n\tmemo<MenuClickTriggerProps>((props) => {\n\t\tconst { ref: forwardedRef, children, disabled = false } = props\n\t\tconst { getReferenceProps, refs, setTriggerType, open } = useMenuContext()\n\t\tconst mergedRefs = useMergeRefs<HTMLElement>([refs.setReference, forwardedRef])\n\n\t\tuseEffect(() => {\n\t\t\tsetTriggerType(\"click\")\n\t\t}, [setTriggerType])\n\n\t\treturn (\n\t\t\t<Slot\n\t\t\t\tref={mergedRefs}\n\t\t\t\taria-disabled={disabled}\n\t\t\t\tdata-disabled={getBooleanState(disabled)}\n\t\t\t\tdata-state={getOpenState(open)}\n\t\t\t\t{...getReferenceProps({ disabled: disabled })}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</Slot>\n\t\t)\n\t}),\n)\n","import { ClientRectObject, useMergeRefs } from \"@floating-ui/react\"\nimport { Slot } from \"@radix-ui/react-slot\"\nimport { memo, MouseEventHandler, useCallback, useEffect, useRef } from \"react\"\n\nimport { useMenuContext } from \"../root\"\nimport type { MenuContextTriggerProps } from \"../typings\"\nimport { getBooleanState, getOpenState } from \"../utils\"\n\nexport const MenuContextTrigger = memo<MenuContextTriggerProps>((props) => {\n\tconst { ref: forwardedRef, children, disabled = false } = props\n\tconst ref = useRef<HTMLElement>(null)\n\tconst { setOpen, refs, setTriggerType, open } = useMenuContext()\n\tconst mergedRefs = useMergeRefs([forwardedRef, ref])\n\n\tuseEffect(() => {\n\t\tsetTriggerType(\"context\")\n\t}, [setTriggerType])\n\n\tconst handleContextMenu = useCallback<MouseEventHandler>(\n\t\t(e) => {\n\t\t\tconst { clientY, clientX } = e\n\n\t\t\tif (!disabled && ref.current) {\n\t\t\t\te.preventDefault()\n\t\t\t\trefs.setPositionReference({\n\t\t\t\t\tgetBoundingClientRect(): ClientRectObject {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tx: clientX,\n\t\t\t\t\t\t\ty: clientY,\n\t\t\t\t\t\t\ttop: clientY,\n\t\t\t\t\t\t\tleft: clientX,\n\t\t\t\t\t\t\theight: 0,\n\t\t\t\t\t\t\twidth: 0,\n\t\t\t\t\t\t\tbottom: clientY,\n\t\t\t\t\t\t\tright: clientX,\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\tcontextElement: ref.current,\n\t\t\t\t})\n\t\t\t\tsetOpen(true)\n\t\t\t}\n\t\t},\n\t\t[disabled, refs, setOpen],\n\t)\n\n\treturn (\n\t\t<Slot\n\t\t\tref={mergedRefs}\n\t\t\tstyle={{ WebkitTouchCallout: disabled ? \"none\" : \"unset\" }}\n\t\t\taria-disabled={disabled}\n\t\t\tdata-disabled={getBooleanState(disabled)}\n\t\t\tdata-state={getOpenState(open)}\n\t\t\tonContextMenu={handleContextMenu}\n\t\t>\n\t\t\t{children}\n\t\t</Slot>\n\t)\n})\nMenuContextTrigger.displayName = \"MenuContextTrigger\"\n","import { memo } from \"react\"\n\nimport type { MenuGroupProps } from \"../typings\"\n\nexport const MenuGroup = memo<MenuGroupProps>((props) => {\n\tconst { ref, children, ...rest } = props\n\n\treturn (\n\t\t<div ref={ref} role=\"group\" {...rest}>\n\t\t\t{children}\n\t\t</div>\n\t)\n})\nMenuGroup.displayName = \"MenuGroup\"\n","import { useListItem, useMergeRefs } from \"@floating-ui/react\"\nimport { cx } from \"class-variance-authority\"\nimport { ChangeEventHandler, memo, useCallback, useEffect } from \"react\"\n\nimport { useMenuContentContext } from \"../Content\"\nimport type { MenuInputProps } from \"../typings\"\nimport { getBooleanState } from \"../utils\"\n\nexport const MenuInputField = memo<MenuInputProps>((props) => {\n\tconst { ref: forwardedRef, className, onValueChange, onChange, disabled = false, ...rest } = props\n\tconst { activeIndex, getItemProps } = useMenuContentContext()\n\tconst { index, ref } = useListItem()\n\n\tconst mergedRefs = useMergeRefs([ref, forwardedRef])\n\n\tconst handleChange = useCallback<ChangeEventHandler<HTMLInputElement>>(\n\t\t(e) => {\n\t\t\tonChange?.(e)\n\t\t\tonValueChange?.(e.target.value)\n\t\t},\n\t\t[onChange, onValueChange],\n\t)\n\n\tuseEffect(() => {\n\t\treturn () => {\n\t\t\tonValueChange?.(\"\")\n\t\t}\n\t\t// REASON: Don't include onValueChange in a dependency array, if it is required in the future, it must be ensured that\n\t\t// users wrap there onFilterChange callback function in a useCallback otherwise typing will trigger many re-renders\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [])\n\n\treturn (\n\t\t<input\n\t\t\tclassName={cx(\"placeholder-(--base-a9)\", \"selection:bg-(--accent-a5)\", \"outline-none\", className)}\n\t\t\tref={mergedRefs}\n\t\t\tdisabled={disabled}\n\t\t\tdata-disabled={getBooleanState(disabled)}\n\t\t\t{...getItemProps({\n\t\t\t\t...rest,\n\t\t\t\ttabIndex: index === activeIndex ? 0 : -1,\n\t\t\t\tonChange: handleChange,\n\t\t\t})}\n\t\t/>\n\t)\n})\nMenuInputField.displayName = \"MenuInputField\"\n","import { cx } from \"class-variance-authority\"\nimport { memo } from \"react\"\n\nimport { useMenuContentContext } from \"../Content\"\nimport { inputRoot } from \"../cva\"\nimport type { MenuInputRootProps } from \"../typings\"\n\nexport const MenuInputRoot = memo<MenuInputRootProps>((props) => {\n\tconst { ref, className, ...rest } = props\n\n\tconst { size } = useMenuContentContext()\n\n\treturn <div className={cx(inputRoot({ size }), className)} ref={ref} {...rest} />\n})\nMenuInputRoot.displayName = \"MenuInputRoot\"\n","import { cx } from \"class-variance-authority\"\nimport { memo } from \"react\"\n\nimport type { MenuInputSlotProps } from \"../typings\"\n\nexport const MenuInputSlot = memo<MenuInputSlotProps>((props) => {\n\tconst { ref, className, ...rest } = props\n\n\treturn <div className={cx(\"flex\", \"items-center\", \"text-(--base-a11)\", className)} ref={ref} {...rest} />\n})\nMenuInputSlot.displayName = \"MenuInputSlot\"\n","import { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, memo } from \"react\"\n\nimport { useMenuContentContext } from \"../Content\"\nimport { menuLabelCva } from \"../cva\"\n\nexport interface MenuLabelProps extends ComponentPropsWithRef<\"div\"> {}\n\nexport const MenuLabel = memo<MenuLabelProps>((props) => {\n\tconst { ref, className, ...rest } = props\n\n\tconst { size } = useMenuContentContext()\n\n\treturn <div ref={ref} className={cx(menuLabelCva({ size }), className)} {...rest} />\n})\nMenuLabel.displayName = \"MenuLabel\"\n","import { MultiSelectProvider } from \"../../SelectContext\"\nimport { genericMemo } from \"../../utils\"\nimport { MenuGroup } from \"../Group\"\nimport type { MenuMultiSelectGroupProps } from \"../typings\"\n\nexport const MenuMultiSelectGroup = genericMemo(function MenuMultiSelectGroup<TValue>(\n\tprops: MenuMultiSelectGroupProps<TValue>,\n) {\n\tconst { ref, children, defaultValues, values, onValuesChange, ...rest } = props\n\n\treturn (\n\t\t<MenuGroup ref={ref} {...rest}>\n\t\t\t<MultiSelectProvider<TValue> defaultValues={defaultValues} values={values} onValuesChange={onValuesChange}>\n\t\t\t\t{children}\n\t\t\t</MultiSelectProvider>\n\t\t</MenuGroup>\n\t)\n})\n","import { createContext, useContext } from \"react\"\n\nexport const SelectedIndicatorContext = createContext<boolean>(false)\n\nexport const useSelectedIndicatorContext = () => useContext(SelectedIndicatorContext)\n","import { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, memo } from \"react\"\n\nimport { getSelectedState } from \"../utils\"\nimport { useSelectedIndicatorContext } from \"./context\"\n\nexport interface MenuSelectedIndicatorProps extends ComponentPropsWithRef<\"span\"> {}\n\nexport const MenuSelectedIndicator = memo<MenuSelectedIndicatorProps>((props) => {\n\tconst { ref, children, className, ...rest } = props\n\tconst isSelected = useSelectedIndicatorContext()\n\n\treturn (\n\t\t<span\n\t\t\tref={ref}\n\t\t\tclassName={cx(\n\t\t\t\t{\n\t\t\t\t\tinvisible: !isSelected,\n\t\t\t\t},\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\tdata-state={getSelectedState(isSelected)}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{children}\n\t\t</span>\n\t)\n})\nMenuSelectedIndicator.displayName = \"SelectedIndicator\"\n","import { use, useCallback, useLayoutEffect, useMemo } from \"react\"\n\nimport { IMultiSelectContext, MultiSelectContext } from \"../../SelectContext\"\nimport { genericMemo } from \"../../utils\"\nimport { MenuItem } from \"../Item\"\nimport { SelectedIndicatorContext } from \"../SelectedIndicator\"\nimport { MenuSelectItemProps } from \"../typings\"\nimport { getSelectedState } from \"../utils\"\n\nexport const MenuMultiSelectItem = genericMemo(function <TValue>(props: MenuSelectItemProps<TValue>) {\n\tconst { ref, onSelect, children, closeOnSelect = false, value, ...rest } = props\n\n\tconst { selected, selectValue, registerValue } = use(MultiSelectContext) as IMultiSelectContext<TValue> // safe cast\n\n\tuseLayoutEffect(() => {\n\t\treturn registerValue(value)\n\t}, [registerValue, value])\n\n\tconst isSelected = selected(value)\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\t\t// TODO: prevent default behavior if needed\n\t\tselectValue(value)\n\t}, [onSelect, selectValue, value])\n\n\tconst computedChildren = useMemo(() => {\n\t\treturn typeof children === \"function\"\n\t\t\t? ({ active }: { active: boolean }) => children({ selected: isSelected, active })\n\t\t\t: children\n\t}, [children, isSelected])\n\n\treturn (\n\t\t<SelectedIndicatorContext.Provider value={isSelected}>\n\t\t\t<MenuItem\n\t\t\t\tref={ref}\n\t\t\t\trole=\"menuitemcheckbox\"\n\t\t\t\tonSelect={handleSelect}\n\t\t\t\tcloseOnSelect={closeOnSelect}\n\t\t\t\tdata-state={getSelectedState(isSelected)}\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t{computedChildren}\n\t\t\t</MenuItem>\n\t\t</SelectedIndicatorContext.Provider>\n\t)\n})\n","import { createContext, useContext } from \"react\"\n\ninterface IPagesContext {\n\tactivePage: string\n\tsetActivePage: (page: string) => void\n}\n\nexport const PagesContext = createContext<IPagesContext>({} as IPagesContext)\n\nexport const usePagesContext = () => useContext(PagesContext)\n","import { memo, useMemo } from \"react\"\n\nimport { useControlledState } from \"../../utils\"\nimport type { MenuPageProps } from \"../typings\"\nimport { PagesContext } from \"./context\"\n\nexport const MenuPages = memo<MenuPageProps>((props) => {\n\tconst { children, defaultPage, page, onPageChange } = props\n\n\tconst [activePage, setActivePage] = useControlledState<string>(defaultPage ?? \"\", page, onPageChange)\n\n\tconst contextValue = useMemo(() => ({ activePage, setActivePage }), [activePage, setActivePage])\n\n\treturn <PagesContext.Provider value={contextValue}>{children}</PagesContext.Provider>\n})\nMenuPages.displayName = \"MenuPages\"\n","import { FC } from \"react\"\n\nimport { usePagesContext } from \"../Pages\"\nimport type { MenuPageContentProps } from \"../typings\"\n\nexport const MenuPageContent: FC<MenuPageContentProps> = (props) => {\n\tconst { page, children } = props\n\tconst { activePage } = usePagesContext()\n\n\treturn activePage === page ? children : null\n}\nMenuPageContent.displayName = \"PageContent\"\n","import { memo, useCallback } from \"react\"\n\nimport { useMenuContentContext } from \"../Content\"\nimport { MenuItem } from \"../Item\"\nimport { usePagesContext } from \"../Pages\"\nimport type { MenuPageTriggerProps } from \"../typings\"\n\nexport const MenuPageTrigger = memo<MenuPageTriggerProps>((props) => {\n\tconst { ref, onSelect, page, ...rest } = props\n\tconst { refs, setActiveIndex } = useMenuContentContext()\n\tconst { setActivePage } = usePagesContext()\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\t\t// TODO: prevent default behavior if needed\n\t\tsetActivePage(page)\n\t\trefs.floating.current?.focus()\n\t\tsetActiveIndex(null)\n\t}, [onSelect, page, refs.floating, setActiveIndex, setActivePage])\n\n\treturn <MenuItem ref={ref} onSelect={handleSelect} closeOnSelect={false} {...rest} />\n})\nMenuPageTrigger.displayName = \"MenuPageTrigger\"\n","import { cx } from \"class-variance-authority\"\nimport { memo } from \"react\"\n\nimport type { MenuScrollProps } from \"../typings\"\n\nexport const MenuScroll = memo<MenuScrollProps>((props) => {\n\tconst { ref, className, ...rest } = props\n\n\treturn (\n\t\t<div\n\t\t\tref={ref}\n\t\t\tclassName={cx(\n\t\t\t\t\"h-full overflow-x-hidden overflow-y-auto [scrollbar-color:var(--base-6)_transparent] [scrollbar-width:thin]\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nMenuScroll.displayName = \"MenuScroll\"\n","import { use, useCallback, useMemo } from \"react\"\n\nimport { CheckedIndicatorContext } from \"../../CheckedIndicator\"\nimport { IMultiSelectContext, MultiSelectContext } from \"../../SelectContext\"\nimport { genericMemo } from \"../../utils\"\nimport { MenuItem } from \"../Item\"\nimport type { SelectAllItemProps } from \"../typings\"\nimport { getCheckedState } from \"../utils\"\n\nexport const MenuSelectAllItem = genericMemo(<TValue,>(props: SelectAllItemProps) => {\n\tconst { ref, children, onSelect, closeOnSelect = false, ...rest } = props\n\tconst { allSelected, someSelected, toggleSelectAll } = use(MultiSelectContext) as IMultiSelectContext<TValue> // safe cast\n\n\tconst selectedState = allSelected ? true : someSelected ? \"indeterminate\" : false\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\n\t\ttoggleSelectAll()\n\t}, [onSelect, toggleSelectAll])\n\n\tconst computedChildren = useMemo(() => {\n\t\treturn typeof children === \"function\"\n\t\t\t? ({ active }: { active: boolean }) => children({ selected: selectedState, active })\n\t\t\t: children\n\t}, [children, selectedState])\n\n\treturn (\n\t\t<CheckedIndicatorContext value={selectedState}>\n\t\t\t<MenuItem\n\t\t\t\tonSelect={handleSelect}\n\t\t\t\tref={ref}\n\t\t\t\tdata-state={getCheckedState(selectedState)}\n\t\t\t\tcloseOnSelect={closeOnSelect}\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t{computedChildren}\n\t\t\t</MenuItem>\n\t\t</CheckedIndicatorContext>\n\t)\n})\n","import { SingleSelectNotRequiredProvider, SingleSelectRequiredProvider } from \"../../SelectContext\"\nimport { genericMemo } from \"../../utils\"\nimport { MenuGroup } from \"../Group\"\nimport type { MenuSelectGroupProps } from \"../typings\"\n\nexport const MenuSelectGroup = genericMemo(function MenuSelectGroup<TValue>(props: MenuSelectGroupProps<TValue>) {\n\tconst { ref, children, required, defaultValue, value, onValueChange, ...rest } = props\n\treturn (\n\t\t<MenuGroup ref={ref} {...rest}>\n\t\t\t{required ? (\n\t\t\t\t<SingleSelectRequiredProvider defaultValue={defaultValue} value={value} onValueChange={onValueChange}>\n\t\t\t\t\t{children}\n\t\t\t\t</SingleSelectRequiredProvider>\n\t\t\t) : (\n\t\t\t\t<SingleSelectNotRequiredProvider\n\t\t\t\t\tdefaultValue={defaultValue}\n\t\t\t\t\tvalue={value}\n\t\t\t\t\tonValueChange={onValueChange}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</SingleSelectNotRequiredProvider>\n\t\t\t)}\n\t\t</MenuGroup>\n\t)\n})\n","import { use, useCallback, useMemo } from \"react\"\n\nimport { ISelectContext, SelectContext } from \"../../SelectContext\"\nimport { genericMemo } from \"../../utils\"\nimport { MenuItem } from \"../Item\"\nimport { SelectedIndicatorContext } from \"../SelectedIndicator\"\nimport type { MenuSelectItemProps } from \"../typings\"\nimport { getSelectedState } from \"../utils\"\n\nexport const MenuSelectItem = genericMemo(function <TValue>(props: MenuSelectItemProps<TValue>) {\n\tconst { ref, value, onSelect, children, closeOnSelect = true, ...rest } = props\n\tconst { selected, selectValue } = use(SelectContext) as ISelectContext<TValue> // safe cast\n\n\tconst isSelected = useMemo(() => selected(value), [selected, value])\n\n\tconst handleSelect = useCallback(() => {\n\t\tonSelect?.()\n\t\t// TODO: prevent default behavior if needed\n\t\tselectValue(value)\n\t}, [onSelect, selectValue, value])\n\n\tconst computedChildren = useMemo(() => {\n\t\treturn typeof children === \"function\"\n\t\t\t? ({ active }: { active: boolean }) => children({ selected: isSelected, active })\n\t\t\t: children\n\t}, [children, isSelected])\n\n\treturn (\n\t\t<SelectedIndicatorContext.Provider value={isSelected}>\n\t\t\t<MenuItem\n\t\t\t\tref={ref}\n\t\t\t\trole=\"menuitemcheckbox\"\n\t\t\t\tonSelect={handleSelect}\n\t\t\t\tcloseOnSelect={closeOnSelect}\n\t\t\t\tdata-state={getSelectedState(isSelected)}\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t{computedChildren}\n\t\t\t</MenuItem>\n\t\t</SelectedIndicatorContext.Provider>\n\t)\n})\n","import * as RadixSeparator from \"@radix-ui/react-separator\"\nimport { cx } from \"class-variance-authority\"\nimport { memo } from \"react\"\n\nimport { useMenuContentContext } from \"../Content\"\nimport { menuSeparator } from \"../cva\"\nimport type { MenuSeparatorProps } from \"../typings\"\n\nexport const MenuSeparator = memo<MenuSeparatorProps>((props) => {\n\tconst { ref, className, ...rest } = props\n\tconst { size } = useMenuContentContext()\n\n\treturn <RadixSeparator.Root className={cx(menuSeparator({ size }), className)} ref={ref} {...rest} />\n})\nMenuSeparator.displayName = \"MenuSeparator\"\n","import { FloatingFocusManager, FloatingList, FloatingNode, FloatingPortal, useMergeRefs } from \"@floating-ui/react\"\nimport { cx } from \"class-variance-authority\"\nimport { CSSProperties, memo, useMemo, useRef } from \"react\"\n\nimport { floating, radiusCva } from \"../../cva\"\nimport { MenuContentContext, useMenuContentContext } from \"../Content/context\"\nimport { menuContent } from \"../cva\"\nimport { useMenuContext } from \"../root\"\nimport { useSubContext } from \"../Sub\"\nimport type { SubMenuContentProps } from \"../typings\"\nimport { getOpenState } from \"../utils\"\n\nexport const MenuSubContent = memo<SubMenuContentProps>((props) => {\n\tconst { ref: forwardedRef, children, ...rest } = props\n\tconst { middlewareData } = useMenuContext()\n\tconst { accentColor, radius, variant, size } = useMenuContentContext()\n\tconst {\n\t\topen,\n\t\tnodeId,\n\t\trefs,\n\t\tcontext,\n\t\tgetFloatingProps,\n\t\tgetItemProps,\n\t\tactiveIndex,\n\t\tsetActiveIndex,\n\t\telementsRef,\n\t\tfloatingStyles,\n\t\tsetOpen,\n\t\tside,\n\t} = useSubContext()\n\n\tconst wrapperRef = useRef<HTMLDivElement>(null)\n\n\tconst mergeRefs = useMergeRefs([refs.setFloating, wrapperRef])\n\n\tconst computedFloatingStyles: CSSProperties = useMemo(() => {\n\t\treturn {\n\t\t\t...floatingStyles,\n\t\t\tvisibility: middlewareData.hide?.referenceHidden ? \"hidden\" : \"visible\",\n\t\t}\n\t}, [floatingStyles, middlewareData.hide?.referenceHidden])\n\n\treturn (\n\t\t<FloatingNode id={nodeId}>\n\t\t\t{open && (\n\t\t\t\t<FloatingPortal>\n\t\t\t\t\t<FloatingFocusManager context={context} initialFocus={wrapperRef}>\n\t\t\t\t\t\t<FloatingList elementsRef={elementsRef}>\n\t\t\t\t\t\t\t<MenuContentContext.Provider\n\t\t\t\t\t\t\t\tvalue={{\n\t\t\t\t\t\t\t\t\tgetItemProps,\n\t\t\t\t\t\t\t\t\tactiveIndex,\n\t\t\t\t\t\t\t\t\tsetActiveIndex,\n\t\t\t\t\t\t\t\t\telementsRef,\n\t\t\t\t\t\t\t\t\topen,\n\t\t\t\t\t\t\t\t\tsetOpen,\n\t\t\t\t\t\t\t\t\trefs,\n\t\t\t\t\t\t\t\t\tsize,\n\t\t\t\t\t\t\t\t\tradius,\n\t\t\t\t\t\t\t\t\taccentColor,\n\t\t\t\t\t\t\t\t\tvariant,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\tclassName=\"outline-none\"\n\t\t\t\t\t\t\t\t\tref={mergeRefs}\n\t\t\t\t\t\t\t\t\tstyle={computedFloatingStyles}\n\t\t\t\t\t\t\t\t\t{...getFloatingProps()}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<ul\n\t\t\t\t\t\t\t\t\t\tclassName={cx(\n\t\t\t\t\t\t\t\t\t\t\t\"overmap-menu-sub-content\",\n\t\t\t\t\t\t\t\t\t\t\tmenuContent({ size }),\n\t\t\t\t\t\t\t\t\t\t\tfloating({ side, shadow: \"3\" }),\n\t\t\t\t\t\t\t\t\t\t\tradiusCva({ radius, maxLarge: true }),\n\t\t\t\t\t\t\t\t\t\t\t\"max-h-(--overmap-menu-available-height)\",\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\tref={forwardedRef}\n\t\t\t\t\t\t\t\t\t\tdata-state={getOpenState(open)}\n\t\t\t\t\t\t\t\t\t\tdata-side={side}\n\t\t\t\t\t\t\t\t\t\tdata-accent-color={accentColor}\n\t\t\t\t\t\t\t\t\t\t{...rest}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</MenuContentContext.Provider>\n\t\t\t\t\t\t</FloatingList>\n\t\t\t\t\t</FloatingFocusManager>\n\t\t\t\t</FloatingPortal>\n\t\t\t)}\n\t\t</FloatingNode>\n\t)\n})\nMenuSubContent.displayName = \"MenuSubContent\"\n","import { useMergeRefs } from \"@floating-ui/react\"\nimport { memo } from \"react\"\n\nimport { MenuItem } from \"../Item\"\nimport { useSubContext } from \"../Sub\"\nimport type { MenuSubTriggerProps } from \"../typings\"\nimport { getOpenState } from \"../utils\"\n\nexport const MenuSubTrigger = memo<MenuSubTriggerProps>((props) => {\n\tconst { ref: forwardedRef, children, ...rest } = props\n\tconst { refs, getReferenceProps, open, disabled } = useSubContext()\n\n\tconst mergedRefs = useMergeRefs([forwardedRef, refs.setReference])\n\n\treturn (\n\t\t<MenuItem\n\t\t\tref={mergedRefs}\n\t\t\tcloseOnSelect={false}\n\t\t\taria-haspopup=\"menu\"\n\t\t\tdata-state={getOpenState(open)}\n\t\t\tdisabled={disabled}\n\t\t\t{...getReferenceProps(rest)}\n\t\t>\n\t\t\t{children}\n\t\t</MenuItem>\n\t)\n})\nMenuSubTrigger.displayName = \"MenuSubTrigger\"\n","import { memo, useEffect } from \"react\"\n\nimport { useMenuContext } from \"../root\"\nimport type { MenuVirtualTriggerProps } from \"../typings\"\n\nexport const MenuVirtualTrigger = memo((props: MenuVirtualTriggerProps) => {\n\tconst { virtualElement, disabled } = props\n\tconst { refs, setTriggerType, setOpen } = useMenuContext()\n\n\tuseEffect(() => {\n\t\tsetTriggerType(\"virtual\")\n\t}, [setTriggerType])\n\n\tuseEffect(() => {\n\t\tif (!disabled && virtualElement) {\n\t\t\trefs.setPositionReference(virtualElement)\n\t\t\tsetOpen(true)\n\t\t} else {\n\t\t\trefs.setPositionReference(null)\n\t\t\tsetOpen(false)\n\t\t}\n\t}, [disabled, refs, setOpen, virtualElement])\n\n\treturn null\n})\nMenuVirtualTrigger.displayName = \"VirtualTrigger\"\n","import { MenuCheckboxItem } from \"./CheckboxItem/CheckboxItem\"\nimport { MenuCheckboxItemIndicator } from \"./CheckboxItemIndicator/CheckboxItemIndicator\"\nimport { MenuClickTrigger } from \"./ClickTrigger\"\nimport { MenuContent } from \"./Content\"\nimport { MenuContextTrigger } from \"./ContextTrigger\"\nimport { MenuGroup } from \"./Group\"\nimport { MenuInputField, MenuInputRoot, MenuInputSlot } from \"./Input\"\nimport { MenuItem } from \"./Item\"\nimport { MenuLabel } from \"./Label\"\nimport { MenuMultiSelectGroup } from \"./MultiSelectGroup\"\nimport { MenuMultiSelectItem } from \"./MultiSelectItem\"\nimport { MenuPageContent } from \"./PageContent\"\nimport { MenuPages } from \"./Pages\"\nimport { MenuPageTrigger } from \"./PageTrigger\"\nimport { MenuRoot } from \"./root\"\nimport { MenuScroll } from \"./Scroll/Scroll\"\nimport { MenuSelectAllItem } from \"./SelectAll\"\nimport { MenuSelectedIndicator } from \"./SelectedIndicator\"\nimport { MenuSelectGroup } from \"./SelectGroup\"\nimport { MenuSelectItem } from \"./SelectItem\"\nimport { MenuSeparator } from \"./Separator\"\nimport { MenuSub } from \"./Sub\"\nimport { MenuSubContent } from \"./SubContent\"\nimport { MenuSubTrigger } from \"./SubTrigger\"\nimport { MenuVirtualTrigger } from \"./VirtualTrigger\"\n\nexport * from \"./CheckboxItem/CheckboxItem\"\nexport * from \"./CheckboxItemIndicator/CheckboxItemIndicator\"\nexport * from \"./ClickTrigger\"\nexport * from \"./Content\"\nexport * from \"./ContextTrigger\"\nexport * from \"./Group\"\nexport * from \"./Input\"\nexport * from \"./Item\"\nexport * from \"./Label\"\nexport * from \"./MultiSelectGroup\"\nexport * from \"./MultiSelectItem\"\nexport * from \"./PageContent\"\nexport * from \"./Pages\"\nexport * from \"./PageTrigger\"\nexport * from \"./root\"\nexport * from \"./Scroll/Scroll\"\nexport * from \"./SelectAll\"\nexport * from \"./SelectedIndicator\"\nexport * from \"./SelectGroup\"\nexport * from \"./SelectItem\"\nexport * from \"./Separator\"\nexport * from \"./Sub\"\nexport * from \"./SubContent\"\nexport * from \"./SubTrigger\"\nexport * from \"./typings\"\nexport * from \"./VirtualTrigger\"\n\nexport const Menu = {\n\tRoot: MenuRoot,\n\tContent: MenuContent,\n\n\t// sub\n\tSub: MenuSub,\n\tSubContent: MenuSubContent,\n\tSubTrigger: MenuSubTrigger,\n\n\t// pages\n\tPages: MenuPages,\n\tPageContent: MenuPageContent,\n\tPageTrigger: MenuPageTrigger,\n\n\t// triggers\n\tClickTrigger: MenuClickTrigger,\n\tContextTrigger: MenuContextTrigger,\n\tVirtualTrigger: MenuVirtualTrigger,\n\n\t// groups\n\tGroup: MenuGroup,\n\tSelectGroup: MenuSelectGroup,\n\tMultiSelectGroup: MenuMultiSelectGroup,\n\n\t// items\n\tItem: MenuItem,\n\tSelectItem: MenuSelectItem,\n\tMultiSelectItem: MenuMultiSelectItem,\n\tSelectAllItem: MenuSelectAllItem,\n\tCheckboxItem: MenuCheckboxItem,\n\n\t// indicators\n\tSelectedIndicator: MenuSelectedIndicator,\n\tCheckboxItemIndicator: MenuCheckboxItemIndicator,\n\n\t// input\n\tInputRoot: MenuInputRoot,\n\tInputField: MenuInputField,\n\tInputSlot: MenuInputSlot,\n\n\t// others\n\tLabel: MenuLabel,\n\tSeparator: MenuSeparator,\n\tScroll: MenuScroll,\n}\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, memo } from \"react\"\nimport { IconBaseProps, IconType } from \"react-icons\"\nimport * as RiIcons from \"react-icons/ri\"\nimport { RiQuestionMark } from \"react-icons/ri\"\n\ninterface RiIconProps extends ComponentProps<\"svg\">, Pick<IconBaseProps, \"size\" | \"title\" | \"color\"> {\n\ticon: string\n}\n\n// NOTE: this should be moved to /web once any tsx have been removed from /core\n\nexport const RiIcon = memo(\n\tforwardRef<SVGSVGElement, RiIconProps>((props, ref) => {\n\t\tconst { icon, size, title, color, className, ...rest } = props\n\t\tconst Icon = (RiIcons as Record<string, IconType>)[icon]\n\n\t\t// eslint-disable-next-line no-console\n\t\tif (!Icon) console.error(`Icon ${icon} not found`)\n\n\t\treturn Icon ? (\n\t\t\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\t\t\t// @ts-ignore\n\t\t\t<Icon className={cx(\"shrink-0\", className)} ref={ref} title={title} size={size} color={color} {...rest} />\n\t\t) : (\n\t\t\t<RiQuestionMark\n\t\t\t\tclassName={cx(\"shrink-0\", className)}\n\t\t\t\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\t\t\t\t// @ts-ignore\n\t\t\t\tref={ref}\n\t\t\t\ttitle={title}\n\t\t\t\tsize={size}\n\t\t\t\tcolor={color}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t)\n\t}),\n)\nRiIcon.displayName = \"RiIcon\"\n","import { ErrorInfo, memo, PropsWithChildren, useCallback, useState } from \"react\"\nimport { ErrorBoundary, useErrorBoundary } from \"react-error-boundary\"\n\nimport { IconButton } from \"../Buttons\"\nimport { RiIcon } from \"../RiIcon\"\n\ninterface ErrorBoundaryProps extends PropsWithChildren {\n\tabsoluteCentering?: boolean\n\tmessage?: string\n}\n\ninterface ErrorFallbackProps extends ErrorBoundaryProps {\n\tonRetry: () => void\n}\n\nconst centerStyles = { placeSelf: \"center\" }\n\nconst ErrorFallback = memo((props: ErrorFallbackProps) => {\n\tconst { absoluteCentering, message = \"Something went wrong\", onRetry } = props\n\tconst { resetBoundary } = useErrorBoundary()\n\tconst height = \"20px\"\n\tconst outerFlexStyles = absoluteCentering\n\t\t? ({ position: \"absolute\", top: \"50%\", transform: \"translateY(-50%)\" } as const)\n\t\t: undefined\n\n\tconst handleRetry = useCallback(() => {\n\t\tresetBoundary()\n\t\tonRetry()\n\t}, [onRetry, resetBoundary])\n\n\treturn (\n\t\t<div className=\"flex w-full gap-2\" style={outerFlexStyles}>\n\t\t\t<div style={{ flexGrow: 1 }} />\n\t\t\t<RiIcon icon=\"RiAlertLine\" size={height} style={centerStyles} />\n\t\t\t<span style={{ lineHeight: height, ...centerStyles }}>{message}</span>\n\t\t\t<IconButton aria-label=\"Try again\" variant=\"soft\" onClick={handleRetry} style={centerStyles}>\n\t\t\t\t<RiIcon icon=\"RiLoopLeftLine\" size={height} />\n\t\t\t</IconButton>\n\t\t\t<div style={{ flexGrow: 1 }} />\n\t\t</div>\n\t)\n})\n\nErrorFallback.displayName = \"ErrorFallback\"\n\nexport const OvermapErrorBoundary = memo((props: ErrorBoundaryProps) => {\n\tconst { absoluteCentering, message } = props\n\tconst [attempt, setAttempt] = useState(0)\n\n\tconst logError = useCallback((error: Error, info: ErrorInfo) => {\n\t\t// TODO: Log error to Sentry\n\t\t// eslint-disable-next-line no-console\n\t\tconsole.error(\"Error in OvermapErrorBoundary:\", error, info)\n\t\tsetAttempt((prev) => prev + 1)\n\t}, [])\n\n\tconst handleRetry = useCallback(() => {\n\t\tsetAttempt((prev) => prev + 1)\n\t}, [])\n\n\treturn (\n\t\t<ErrorBoundary\n\t\t\tkey={attempt}\n\t\t\tfallback={<ErrorFallback absoluteCentering={absoluteCentering} message={message} onRetry={handleRetry} />}\n\t\t\tonError={logError}\n\t\t>\n\t\t\t{props.children}\n\t\t</ErrorBoundary>\n\t)\n})\n\nOvermapErrorBoundary.displayName = \"OvermapErrorBoundary\"\n","import * as RadixPopover from \"@radix-ui/react-popover\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nexport interface PopoverArrowProps extends RadixPopover.PopoverArrowProps {}\n\nexport const PopoverArrow = forwardRef<SVGSVGElement, PopoverArrowProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn <RadixPopover.Arrow className={cx(\"fill-(--base-6)\", className)} ref={ref} {...rest} />\n})\nPopoverArrow.displayName = \"PopoverArrow\"\n","import { cva } from \"class-variance-authority\"\n\nexport const popoverContent = cva([\"bg-(--color-background)\", \"dark:bg-(--base-2)\", \"ring-1\", \"ring-(--base-6)\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"p-2\"],\n\t\t\tsm: [\"p-3\"],\n\t\t\tmd: [\"p-4\"],\n\t\t\tlg: [\"p-5\"],\n\t\t\txl: [\"p-6\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n})\n","import * as RadixPopover from \"@radix-ui/react-popover\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { floating, radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { popoverContent } from \"./cva\"\nimport type { PopoverVariantProps } from \"./typings\"\n\nexport interface PopoverContentProps extends RadixPopover.PopoverContentProps, PopoverVariantProps {\n\tcontainer?: RadixPopover.PopoverPortalProps[\"container\"]\n}\n\nexport const PopoverContent = forwardRef<HTMLDivElement, PopoverContentProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tradius = providerContext.radius,\n\t\taccentColor = providerContext.accentColor,\n\t\tsize = \"md\",\n\t\tsideOffset = 5,\n\t\tcontainer,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<RadixPopover.Portal container={container}>\n\t\t\t<RadixPopover.Content\n\t\t\t\tclassName={cx(\n\t\t\t\t\tpopoverContent({ size }),\n\t\t\t\t\tfloating({ shadow: \"3\" }),\n\t\t\t\t\tradiusCva({ radius, maxLarge: true }),\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\tref={ref}\n\t\t\t\tsideOffset={sideOffset}\n\t\t\t\tdata-accent-color={accentColor}\n\t\t\t\tdata-floating-content=\"\"\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t</RadixPopover.Portal>\n\t)\n})\nPopoverContent.displayName = \"PopoverContent\"\n","import * as RadixPopover from \"@radix-ui/react-popover\"\n\nimport { PopoverArrow } from \"./Arrow\"\nimport { PopoverContent } from \"./Content\"\n\nexport * from \"./Arrow\"\nexport * from \"./Content\"\nexport * from \"./typings\"\n\nexport const Popover = {\n\t...RadixPopover,\n\tContent: PopoverContent,\n\tArrow: PopoverArrow,\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const progressRootCva = cva([\"relative\", \"overflow-hidden\", \"grow\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"h-1.5\"],\n\t\t\tsm: [\"h-2\"],\n\t\t\tmd: [\"h-2.5\"],\n\t\t\tlg: [\"h-3\"],\n\t\t\txl: [\"h-3.5\"],\n\t\t},\n\t\tvariant: {\n\t\t\tsurface: [\"bg-(--base-a3)\", \"inset-ring\", \"inset-ring-(--base-a6)\"],\n\t\t\tsoft: [\"bg-(--base-a4)\"],\n\t\t},\n\t},\n})\n\nexport const progressIndicatorCva = cva(\n\t[\n\t\t\"size-full\",\n\t\t\"transform-[scaleX(calc(var(--progress-value)/var(--progress-max)))]\",\n\t\t\"origin-[left_center]\",\n\t\t\"transition-[transform]\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [],\n\t\t\t\tsm: [],\n\t\t\t\tmd: [],\n\t\t\t\tlg: [],\n\t\t\t\txl: [],\n\t\t\t},\n\t\t\tvariant: {\n\t\t\t\tsurface: [\"bg-(--accent-track)\"],\n\t\t\t\tsoft: [\"bg-(--accent-8)\"],\n\t\t\t},\n\t\t},\n\t},\n)\n","import * as RadixProgress from \"@radix-ui/react-progress\"\nimport { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, memo, useMemo } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { progressIndicatorCva, progressRootCva } from \"./cva\"\nimport type { ProgressVariantProps } from \"./typings\"\n\nexport interface ProgressProps\n\textends Omit<ComponentPropsWithRef<typeof RadixProgress.Root>, \"children\">,\n\t\tProgressVariantProps {}\n\nexport const Progress = memo<ProgressProps>((props) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tref,\n\t\tclassName,\n\t\tstyle,\n\t\tradius = providerContext.radius,\n\t\tvariant = \"surface\",\n\t\tsize = \"md\",\n\t\taccentColor = providerContext.accentColor,\n\t\t...rest\n\t} = props\n\n\tconst computedStyle = useMemo(\n\t\t() => ({\n\t\t\t...style,\n\t\t\t\"--progress-value\": rest.value ?? 0,\n\t\t\t\"--progress-max\": rest.max ?? 100,\n\t\t}),\n\t\t[rest.max, rest.value, style],\n\t)\n\n\treturn (\n\t\t<RadixProgress.Root\n\t\t\tref={ref}\n\t\t\tclassName={cx(progressRootCva({ variant, size }), radiusCva({ radius, maxLarge: false }), className)}\n\t\t\tstyle={computedStyle}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<RadixProgress.ProgressIndicator className={progressIndicatorCva({ variant, size })} />\n\t\t</RadixProgress.Root>\n\t)\n})\nProgress.displayName = \"Progress\"\n","import { createContext } from \"react\"\n\nimport type { ComponentRadius } from \"../Provider\"\nimport type { RadioCardsSize, RadioCardsVariant } from \"./typings\"\n\ninterface RadioCardsContext {\n\tsize: RadioCardsSize\n\tvariant: RadioCardsVariant\n\tradius: ComponentRadius\n}\n\nexport const RadioCardsContext = createContext({} as RadioCardsContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const radioCardsRootCva = cva([], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"text-xs\"],\n\t\t\tsm: [\"text-sm\"],\n\t\t\tmd: [\"text-base\"],\n\t\t\tlg: [\"text-base\"],\n\t\t\txl: [\"text-lg\"],\n\t\t},\n\t\tvariant: {\n\t\t\tsurface: [],\n\t\t\toutline: [],\n\t\t},\n\t},\n})\n\nexport const radioCardsItemCva = cva(\n\t[\n\t\t\"block\",\n\t\t\"overflow-hidden\",\n\t\t\"align-start\",\n\t\t\"transition-[box-shadow]\",\n\n\t\t\"disabled:opacity-50\",\n\n\t\t\"focus-visible:bg-(--accent-a3)\",\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-(--accent-8)\",\n\t\t\"focus-visible:-outline-offset-1\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"p-2\"],\n\t\t\t\tsm: [\"p-3\"],\n\t\t\t\tmd: [\"p-4\"],\n\t\t\t\tlg: [\"p-5\"],\n\t\t\t\txl: [\"p-6\"],\n\t\t\t},\n\t\t\tvariant: {\n\t\t\t\tsurface: [\n\t\t\t\t\t\"bg-(--base-surface)\",\n\t\t\t\t\t\"data-[state=unchecked]:inset-ring\",\n\t\t\t\t\t\"data-[state=unchecked]:inset-ring-(--base-a7)\",\n\t\t\t\t\t\"data-[state=unchecked]:hover:inset-ring-(--base-a8)\",\n\t\t\t\t\t\"data-[state=checked]:outline-2\",\n\t\t\t\t\t\"data-[state=checked]:outline-(--accent-indicator)\",\n\t\t\t\t\t\"data-[state=checked]:-outline-offset-1\",\n\t\t\t\t],\n\t\t\t\toutline: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"data-[state=unchecked]:inset-ring\",\n\t\t\t\t\t\"data-[state=unchecked]:inset-ring-(--base-a7)\",\n\t\t\t\t\t\"data-[state=unchecked]:hover:inset-ring-(--base-a8)\",\n\t\t\t\t\t\"data-[state=checked]:outline-2\",\n\t\t\t\t\t\"data-[state=checked]:outline-(--accent-indicator)\",\n\t\t\t\t\t\"data-[state=checked]:-outline-offset-1\",\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t},\n)\n","import * as RadixRadioGroup from \"@radix-ui/react-radio-group\"\nimport { cx } from \"class-variance-authority\"\nimport { memo, use } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport type { AccentColorProps } from \"../typings\"\nimport { RadioCardsContext } from \"./context\"\nimport { radioCardsItemCva } from \"./cva\"\n\nexport interface RadioCardsItemProps extends RadixRadioGroup.RadioGroupItemProps, AccentColorProps {}\n\nexport const RadioCardsItem = memo<RadioCardsItemProps>((props) => {\n\tconst { variant, size, radius } = use(RadioCardsContext)\n\tconst { className, accentColor, ...rest } = props\n\n\treturn (\n\t\t<RadixRadioGroup.Item\n\t\t\tclassName={cx(radioCardsItemCva({ variant, size }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nRadioCardsItem.displayName = \"RadioCardsItem\"\n","import * as RadixRadioGroup from \"@radix-ui/react-radio-group\"\nimport { cx } from \"class-variance-authority\"\nimport { memo, useMemo } from \"react\"\n\nimport { useProvider } from \"../Provider\"\nimport { RadioCardsContext } from \"./context\"\nimport { radioCardsRootCva } from \"./cva\"\nimport { RadiosCardsVariantProps } from \"./typings\"\n\nexport interface RadioCardsRootProps extends RadixRadioGroup.RadioGroupProps, RadiosCardsVariantProps {}\n\nexport const RadioCardsRoot = memo<RadioCardsRootProps>((props) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tchildren,\n\t\tvariant = \"surface\",\n\t\tsize = \"md\",\n\t\tradius = providerContext.radius,\n\t\taccentColor = providerContext.accentColor,\n\t\t...rest\n\t} = props\n\n\tconst contextValue = useMemo(\n\t\t() => ({\n\t\t\tvariant,\n\t\t\tsize,\n\t\t\tradius,\n\t\t}),\n\t\t[radius, size, variant],\n\t)\n\n\treturn (\n\t\t<RadixRadioGroup.Root\n\t\t\tclassName={cx(radioCardsRootCva({ size, variant }), className)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<RadioCardsContext value={contextValue}>{children}</RadioCardsContext>\n\t\t</RadixRadioGroup.Root>\n\t)\n})\nRadioCardsRoot.displayName = \"RadioCardsRoot\"\n","import { RadioCardsItem } from \"./Item\"\nimport { RadioCardsRoot } from \"./Root\"\n\nexport * from \"./Item\"\nexport * from \"./Root\"\nexport * from \"./typings\"\n\nexport const RadioCards = {\n\tRoot: RadioCardsRoot,\n\tItem: RadioCardsItem,\n}\n","import * as RadixRadioGroup from \"@radix-ui/react-radio-group\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nexport interface RadioGroupIndicatorProps extends RadixRadioGroup.RadioGroupIndicatorProps {}\n\nexport const RadioGroupIndicator = forwardRef<HTMLSpanElement, RadioGroupIndicatorProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn (\n\t\t<RadixRadioGroup.Indicator\n\t\t\tclassName={cx(\"inline-flex items-center justify-center\", className)}\n\t\t\tref={ref}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nRadioGroupIndicator.displayName = \"RadioGroupIndicator\"\n","import { createContext } from \"react\"\n\nimport type { RadioGroupSize, RadioGroupVariant } from \"./typings\"\n\nexport interface IRadioGroupContext {\n\tsize: RadioGroupSize\n\tvariant: RadioGroupVariant\n}\n\nexport const RadioGroupContext = createContext<IRadioGroupContext>({} as IRadioGroupContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const radioGroupItem = cva(\n\t[\n\t\t\"inline-flex\",\n\t\t\"justify-center\",\n\t\t\"items-center\",\n\t\t\"shrink-0\",\n\t\t\"align-top\",\n\t\t\"cursor-pointer\",\n\n\t\t\"rounded-full\",\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-(--accent-a8)\",\n\t\t\"focus-visible:outline-offset-2\",\n\t\t\"disabled:opacity-50\",\n\t\t\"disabled:pointer-events-none\",\n\n\t\t\"data-[state='checked']:transition-[background,color,box-shadow]\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsurface: [\n\t\t\t\t\t\"bg-(--base-surface)\",\n\t\t\t\t\t\"data-[state='checked']:bg-(--accent-indicator)\",\n\t\t\t\t\t\"inset-ring\",\n\t\t\t\t\t\"inset-ring-(--base-a7)\",\n\t\t\t\t\t\"data-[state='checked']:inset-ring-(--accent-indicator)\",\n\t\t\t\t\t\"text-(--accent-contrast)\",\n\t\t\t\t],\n\t\t\t\tsoft: [\"bg-(--accent-a3)\", \"text-(--accent-a11)\"],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"size-4\", \"text-[0.625rem]\"],\n\t\t\t\tsm: [\"size-5\", \"text-xs\"],\n\t\t\t\tmd: [\"size-6\", \"text-sm\"],\n\t\t\t\tlg: [\"size-7\", \"text-base\"],\n\t\t\t\txl: [\"size-9\", \"text-lg\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tvariant: \"surface\",\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n","import * as RadixRadioGroup from \"@radix-ui/react-radio-group\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef, memo, useContext } from \"react\"\n\nimport { RadioGroupContext } from \"./context\"\nimport { radioGroupItem } from \"./cva\"\nimport type { RadioGroupVariantProps } from \"./typings\"\n\nexport interface RadioGroupItemProps extends RadioGroupVariantProps, RadixRadioGroup.RadioGroupItemProps {}\n\nexport const RadioGroupItem = memo(\n\tforwardRef<HTMLButtonElement, RadioGroupItemProps>((props, ref) => {\n\t\tconst radioGroupContext = useContext(RadioGroupContext)\n\t\tconst { className, size = radioGroupContext.size, variant = radioGroupContext.variant, ...rest } = props\n\n\t\treturn <RadixRadioGroup.Item className={cx(radioGroupItem({ size, variant }), className)} ref={ref} {...rest} />\n\t}),\n)\n","import * as RadixRadioGroup from \"@radix-ui/react-radio-group\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef, memo } from \"react\"\n\nimport { useProvider } from \"../Provider\"\nimport { RadioGroupContext } from \"./context\"\nimport type { RadioGroupVariantProps } from \"./typings\"\n\nexport interface RadioGroupRootProps extends RadixRadioGroup.RadioGroupProps, RadioGroupVariantProps {}\n\nexport const RadioGroupRoot = memo(\n\tforwardRef<HTMLDivElement, RadioGroupRootProps>((props, ref) => {\n\t\tconst providerContext = useProvider()\n\t\tconst {\n\t\t\tclassName,\n\t\t\taccentColor = providerContext.accentColor,\n\t\t\tvariant = \"surface\",\n\t\t\tsize = \"md\",\n\t\t\tchildren,\n\t\t\t...rest\n\t\t} = props\n\n\t\treturn (\n\t\t\t<RadixRadioGroup.Root className={cx(className)} ref={ref} data-accent-color={accentColor} {...rest}>\n\t\t\t\t<RadioGroupContext.Provider value={{ variant, size }}>{children}</RadioGroupContext.Provider>\n\t\t\t</RadixRadioGroup.Root>\n\t\t)\n\t}),\n)\n","import { RadioGroupIndicator } from \"./Indicator\"\nimport { RadioGroupItem } from \"./Item\"\nimport { RadioGroupRoot } from \"./Root\"\n\nexport * from \"./Indicator\"\nexport * from \"./Item\"\nexport * from \"./Root\"\nexport * from \"./typings\"\n\nexport const RadioGroup = {\n\tIndicator: RadioGroupIndicator,\n\tItem: RadioGroupItem,\n\tRoot: RadioGroupRoot,\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const segmentedControlRootCva = cva(\n\t[\"shrink-0\", \"transition-colors\", \"inline-flex\", \"box-border\", \"min-w-max\", \"text-center\"],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsoft: [\"bg-(--accent-a3)\"],\n\t\t\t\tsurface: [\"bg-(--accent-surface)\", \"border\", \"border-(--accent-a7)\"],\n\t\t\t\toutline: [\"bg-transparent\", \"border\", \"border-(--accent-a7)\"],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"h-6\", \"text-xs\"],\n\t\t\t\tsm: [\"h-7\", \"text-sm\"],\n\t\t\t\tmd: [\"h-8\", \"text-base\"],\n\t\t\t\tlg: [\"h-9\", \"text-lg\"],\n\t\t\t\txl: [\"h-10\", \"text-xl\"],\n\t\t\t},\n\t\t},\n\t},\n)\n\nexport const segmentedControlItemCva = cva(\n\t[\n\t\t\"h-full\",\n\t\t\"grow\",\n\t\t\"flex\",\n\t\t\"items-center\",\n\t\t\"justify-center\",\n\t\t\"shrink-0\",\n\n\t\t// select\n\t\t\"select-none\",\n\t\t\"cursor-pointer\",\n\n\t\t// focus\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-(--accent-a8)\",\n\n\t\t// disabled\n\t\t\"disabled:opacity-50\",\n\t\t\"disabled:pointer-events-none\",\n\n\t\t\"transition-colors\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsoft: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"data-[state=on]:bg-(--accent-a5)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"hover:text-(--accent-a12)\",\n\t\t\t\t\t\"data-[state=on]:text-(--accent-a12)\",\n\t\t\t\t],\n\t\t\t\tsurface: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"data-[state=on]:bg-(--accent-a5)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"hover:text-(--accent-a12)\",\n\t\t\t\t\t\"data-[state=on]:text-(--accent-a12)\",\n\t\t\t\t],\n\t\t\t\toutline: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"data-[state=on]:bg-(--accent-a5)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"hover:text-(--accent-a12)\",\n\t\t\t\t\t\"data-[state=on]:text-(--accent-a12)\",\n\t\t\t\t],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"gap-1.5\"],\n\t\t\t\tsm: [\"gap-1.75\"],\n\t\t\t\tmd: [\"gap-2\"],\n\t\t\t\tlg: [\"gap-2.25\"],\n\t\t\t\txl: [\"gap-2.5\"],\n\t\t\t},\n\t\t\ticon: {\n\t\t\t\ttrue: [],\n\t\t\t\tfalse: [],\n\t\t\t},\n\t\t\tradius: {\n\t\t\t\tnone: [\"rounded-none\"],\n\t\t\t\txs: [\"rounded-[calc(var(--radius-xs)-1px)]\"],\n\t\t\t\tsm: [\"rounded-[calc(var(--radius-sm)-1px)]\"],\n\t\t\t\tmd: [\"rounded-[calc(var(--radius-md)-1px)]\"],\n\t\t\t\tlg: [\"rounded-[calc(var(--radius-lg)-1px)]\"],\n\t\t\t\txl: [\"rounded-[calc(var(--radius-xl)-1px)]\"],\n\t\t\t\tfull: [\"rounded-full\"],\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"w-6\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"px-3\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"w-7\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"px-3.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"w-8\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"px-4\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"w-9\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"px-4.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"w-10\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"px-5\",\n\t\t\t},\n\t\t],\n\t\tdefaultVariants: {\n\t\t\tvariant: \"surface\",\n\t\t\tsize: \"md\",\n\t\t\ticon: false,\n\t\t},\n\t},\n)\n","import { createContext } from \"react\"\n\nimport { ComponentRadius } from \"../Provider\"\nimport type { SegmentedControlSize, SegmentedControlVariant } from \"./typings\"\n\nexport interface ISegmentedControlContext {\n\tsize: SegmentedControlSize\n\tvariant: SegmentedControlVariant\n\tradius: ComponentRadius\n\ticon: boolean\n}\n\nexport const SegmentedControlContext = createContext({} as ISegmentedControlContext)\n","import { useContext } from \"react\"\n\nimport { SegmentedControlContext } from \"./context\"\n\nexport const useSegmentedControl = () => {\n\tconst segmentedControlContext = useContext(SegmentedControlContext)\n\n\tif (!segmentedControlContext) {\n\t\tthrow new Error(\"useSegmentedControl must be used within a SegmentedControlProvider\")\n\t}\n\n\treturn segmentedControlContext\n}\n","import * as RadixToggleGroup from \"@radix-ui/react-toggle-group\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { segmentedControlItemCva } from \"./cva\"\nimport { useSegmentedControl } from \"./hooks\"\n\nexport interface SegmentedControlItemProps extends RadixToggleGroup.ToggleGroupItemProps {}\n\nexport const SegmentedControlItem = forwardRef<HTMLButtonElement, SegmentedControlItemProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\tconst { size, radius, variant, icon } = useSegmentedControl()\n\n\treturn (\n\t\t<RadixToggleGroup.Item\n\t\t\tref={ref}\n\t\t\tclassName={cx(segmentedControlItemCva({ size, variant, icon, radius }), className)}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nSegmentedControlItem.displayName = \"SegmentedControlItem\"\n","import * as RadixToggleGroup from \"@radix-ui/react-toggle-group\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { SegmentedControlContext } from \"./context\"\nimport { segmentedControlRootCva } from \"./cva\"\nimport type { SegmentedControlVariantProps } from \"./typings\"\n\nexport interface SegmentedControlRootProps\n\textends Omit<RadixToggleGroup.ToggleGroupSingleProps, \"type\">,\n\t\tSegmentedControlVariantProps {}\n\nexport const SegmentedControlRoot = forwardRef<HTMLDivElement, SegmentedControlRootProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tchildren,\n\t\tsize = \"md\",\n\t\tvariant = \"surface\",\n\t\ticon = false,\n\t\tradius = providerContext.radius,\n\t\taccentColor = providerContext.accentColor,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<RadixToggleGroup.Root\n\t\t\tref={ref}\n\t\t\tclassName={cx(\n\t\t\t\tsegmentedControlRootCva({ size, variant }),\n\t\t\t\tradiusCva({ radius, maxLarge: false }),\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\ttype=\"single\"\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<SegmentedControlContext.Provider value={{ size, variant, radius, icon }}>\n\t\t\t\t{children}\n\t\t\t</SegmentedControlContext.Provider>\n\t\t</RadixToggleGroup.Root>\n\t)\n})\nSegmentedControlRoot.displayName = \"SegmentedControlRoot\"\n","import { SegmentedControlItem } from \"./Item\"\nimport { SegmentedControlRoot } from \"./Root\"\n\nexport * from \"./Item\"\nexport * from \"./Root\"\nexport * from \"./typings\"\n\nexport const SegmentedControl = {\n\tItem: SegmentedControlItem,\n\tRoot: SegmentedControlRoot,\n}\n","import { createContext } from \"react\"\n\nimport type { ComponentRadius } from \"../Provider\"\nimport type { SegmentedTabsSize, SegmentedTabsVariant } from \"./typings\"\n\ninterface ISegmentedTabsListContext {\n\tsize: SegmentedTabsSize\n\tvariant: SegmentedTabsVariant\n\tradius: ComponentRadius\n}\n\nexport const SegmentedTabsListContext = createContext({} as ISegmentedTabsListContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const segmentedTabsListCva = cva(\n\t[\"shrink-0\", \"transition-colors\", \"inline-flex\", \"box-border\", \"min-w-max\", \"text-center\"],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsoft: [\"bg-(--accent-a3)\"],\n\t\t\t\tsurface: [\"bg-(--accent-surface)\", \"border\", \"border-(--accent-a7)\"],\n\t\t\t\toutline: [\"bg-transparent\", \"border\", \"border-(--accent-a7)\"],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"h-6\", \"text-xs\"],\n\t\t\t\tsm: [\"h-7\", \"text-sm\"],\n\t\t\t\tmd: [\"h-8\", \"text-base\"],\n\t\t\t\tlg: [\"h-9\", \"text-lg\"],\n\t\t\t\txl: [\"h-10\", \"text-xl\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tvariant: \"surface\",\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n\nexport const segmentedTabsTriggerCva = cva(\n\t[\n\t\t\"h-full\",\n\t\t\"grow\",\n\t\t\"flex\",\n\t\t\"items-center\",\n\t\t\"justify-center\",\n\t\t\"shrink-0\",\n\n\t\t// select\n\t\t\"select-none\",\n\t\t\"cursor-pointer\",\n\n\t\t// focus\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-(--accent-a8)\",\n\n\t\t// disabled\n\t\t\"disabled:opacity-50\",\n\t\t\"disabled:pointer-events-none\",\n\n\t\t\"transition-colors\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsoft: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"data-[state=active]:bg-(--accent-a5)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"hover:text-(--accent-a12)\",\n\t\t\t\t\t\"data-[state=active]:text-(--accent-a12)\",\n\t\t\t\t],\n\t\t\t\tsurface: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"data-[state=active]:bg-(--accent-a5)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"hover:text-(--accent-a12)\",\n\t\t\t\t\t\"data-[state=active]:text-(--accent-a12)\",\n\t\t\t\t],\n\t\t\t\toutline: [\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"data-[state=active]:bg-(--accent-a5)\",\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"hover:text-(--accent-a12)\",\n\t\t\t\t\t\"data-[state=active]:text-(--accent-a12)\",\n\t\t\t\t],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"gap-1.5\"],\n\t\t\t\tsm: [\"gap-1.75\"],\n\t\t\t\tmd: [\"gap-2\"],\n\t\t\t\tlg: [\"gap-2.25\"],\n\t\t\t\txl: [\"gap-2.5\"],\n\t\t\t},\n\t\t\ticon: {\n\t\t\t\ttrue: [],\n\t\t\t\tfalse: [],\n\t\t\t},\n\t\t\tradius: {\n\t\t\t\tnone: [\"rounded-none\"],\n\t\t\t\txs: [\"rounded-[calc(var(--radius-xs)-1px)]\"],\n\t\t\t\tsm: [\"rounded-[calc(var(--radius-sm)-1px)]\"],\n\t\t\t\tmd: [\"rounded-[calc(var(--radius-md)-1px)]\"],\n\t\t\t\tlg: [\"rounded-[calc(var(--radius-lg)-1px)]\"],\n\t\t\t\txl: [\"rounded-[calc(var(--radius-xl)-1px)]\"],\n\t\t\t\tfull: [\"rounded-full\"],\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"w-6\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"px-3\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"w-7\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"px-3.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"w-8\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"px-4\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"w-9\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"px-4.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"w-10\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"px-5\",\n\t\t\t},\n\t\t],\n\t\tdefaultVariants: {\n\t\t\tvariant: \"surface\",\n\t\t\tsize: \"md\",\n\t\t\ticon: false,\n\t\t},\n\t},\n)\n","import * as RadixTabs from \"@radix-ui/react-tabs\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef, useMemo } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { SegmentedTabsListContext } from \"./context\"\nimport { segmentedTabsListCva } from \"./cva\"\nimport type { SegmentedTabsVariantProps } from \"./typings\"\n\nexport interface SegmentedTabsListProps extends RadixTabs.TabsListProps, SegmentedTabsVariantProps {}\n\nexport const SegmentedTabsList = forwardRef<HTMLDivElement, SegmentedTabsListProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tchildren,\n\t\tclassName,\n\t\tsize = \"md\",\n\t\tvariant = \"surface\",\n\t\tradius = providerContext.radius,\n\t\taccentColor = providerContext.accentColor,\n\t\t...rest\n\t} = props\n\n\tconst contextValue = useMemo(\n\t\t() => ({\n\t\t\tsize,\n\t\t\tvariant,\n\t\t\tradius,\n\t\t}),\n\t\t[radius, size, variant],\n\t)\n\n\treturn (\n\t\t<RadixTabs.List\n\t\t\tref={ref}\n\t\t\tclassName={cx(segmentedTabsListCva({ size, variant }), radiusCva({ radius, maxLarge: false }), className)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<SegmentedTabsListContext.Provider value={contextValue}>{children}</SegmentedTabsListContext.Provider>\n\t\t</RadixTabs.List>\n\t)\n})\nSegmentedTabsList.displayName = \"TabsList\"\n","import * as RadixTabs from \"@radix-ui/react-tabs\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nexport interface SegmentedTabsRootProps extends RadixTabs.TabsProps {}\n\nexport const SegmentedTabsRoot = forwardRef<HTMLDivElement, SegmentedTabsRootProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn <RadixTabs.Root ref={ref} className={cx(\"flex flex-col\", className)} {...rest} />\n})\nSegmentedTabsRoot.displayName = \"TabsRoot\"\n","import * as RadixTabs from \"@radix-ui/react-tabs\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef, use } from \"react\"\n\nimport { SegmentedTabsListContext } from \"./context\"\nimport { segmentedTabsTriggerCva } from \"./cva\"\n\nexport interface SegmentedTabsTriggerProps extends RadixTabs.TabsTriggerProps {}\n\nexport const SegmentedTabsTrigger = forwardRef<HTMLButtonElement, SegmentedTabsTriggerProps>((props, ref) => {\n\tconst { className, children, ...rest } = props\n\n\tconst { size, radius, variant } = use(SegmentedTabsListContext)\n\n\treturn (\n\t\t<RadixTabs.Trigger\n\t\t\tref={ref}\n\t\t\tclassName={cx(segmentedTabsTriggerCva({ size, radius, variant }), className)}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{children}\n\t\t</RadixTabs.Trigger>\n\t)\n})\nSegmentedTabsTrigger.displayName = \"TabsTrigger\"\n","import * as RadixTabs from \"@radix-ui/react-tabs\"\n\nimport { SegmentedTabsList } from \"./List\"\nimport { SegmentedTabsRoot } from \"./Root\"\nimport { SegmentedTabsTrigger } from \"./Trigger\"\n\nexport * from \"./List\"\nexport * from \"./Root\"\nexport * from \"./Trigger\"\nexport * from \"./typings\"\n\nexport const SegmentedTabs = {\n\tRoot: SegmentedTabsRoot,\n\tList: SegmentedTabsList,\n\tTrigger: SegmentedTabsTrigger,\n\tContent: RadixTabs.Content,\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const separator = cva([\"shrink-0\", \"bg-(--accent-6)\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [],\n\t\t\tsm: [],\n\t\t\tmd: [],\n\t\t\tlg: [],\n\t\t\txl: [],\n\t\t\tfull: [],\n\t\t},\n\t\torientation: {\n\t\t\thorizontal: [\"h-px\"],\n\t\t\tvertical: [\"w-px\"],\n\t\t},\n\t},\n\tcompoundVariants: [\n\t\t{\n\t\t\tsize: \"xs\",\n\t\t\torientation: \"horizontal\",\n\t\t\tclass: [\"w-4\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"sm\",\n\t\t\torientation: \"horizontal\",\n\t\t\tclass: [\"w-6\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"md\",\n\t\t\torientation: \"horizontal\",\n\t\t\tclass: [\"w-10\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"lg\",\n\t\t\torientation: \"horizontal\",\n\t\t\tclass: [\"w-16\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"xl\",\n\t\t\torientation: \"horizontal\",\n\t\t\tclass: [\"w-24\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"full\",\n\t\t\torientation: \"horizontal\",\n\t\t\tclass: [\"w-full\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"xs\",\n\t\t\torientation: \"vertical\",\n\t\t\tclass: [\"h-4\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"sm\",\n\t\t\torientation: \"vertical\",\n\t\t\tclass: [\"h-6\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"md\",\n\t\t\torientation: \"vertical\",\n\t\t\tclass: [\"h-10\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"lg\",\n\t\t\torientation: \"vertical\",\n\t\t\tclass: [\"h-16\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"xl\",\n\t\t\torientation: \"vertical\",\n\t\t\tclass: [\"h-24\"],\n\t\t},\n\t\t{\n\t\t\tsize: \"full\",\n\t\t\torientation: \"vertical\",\n\t\t\tclass: [\"h-full\"],\n\t\t},\n\t],\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t\torientation: \"horizontal\",\n\t},\n})\n","import * as RadixSeparator from \"@radix-ui/react-separator\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { separator } from \"./cva\"\nimport type { SeparatorVariantProps } from \"./typings\"\n\ninterface SeparatorProps extends RadixSeparator.SeparatorProps, SeparatorVariantProps {}\n\nexport const Separator = forwardRef<HTMLDivElement, SeparatorProps>((props, ref) => {\n\tconst { className, accentColor = \"base\", orientation, size, ...rest } = props\n\n\treturn (\n\t\t<RadixSeparator.Root\n\t\t\tclassName={cx(separator({ orientation, size }), className)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\tref={ref}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nSeparator.displayName = \"Separator\"\n","import { cva } from \"class-variance-authority\"\n\nexport const sliderRootCva = cva([\"relative\", \"select-none\", \"touch-none\", \"flex\", \"items-center\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [],\n\t\t\tsm: [],\n\t\t\tmd: [],\n\t\t\tlg: [],\n\t\t\txl: [],\n\t\t},\n\t\tvariant: {\n\t\t\tsurface: [],\n\t\t\tsoft: [],\n\t\t},\n\t\torientation: {\n\t\t\thorizontal: [\"flex-row\"],\n\t\t\tvertical: [\"flex-col\"],\n\t\t},\n\t},\n\tcompoundVariants: [\n\t\t// horizontal\n\t\t{\n\t\t\torientation: \"horizontal\",\n\t\t\tsize: \"xs\",\n\t\t\tclassName: [\"h-4\"],\n\t\t},\n\t\t{\n\t\t\torientation: \"horizontal\",\n\t\t\tsize: \"sm\",\n\t\t\tclassName: [\"h-5\"],\n\t\t},\n\t\t{\n\t\t\torientation: \"horizontal\",\n\t\t\tsize: \"md\",\n\t\t\tclassName: [\"h-6\"],\n\t\t},\n\t\t{\n\t\t\torientation: \"horizontal\",\n\t\t\tsize: \"lg\",\n\t\t\tclassName: [\"h-7\"],\n\t\t},\n\t\t{\n\t\t\torientation: \"horizontal\",\n\t\t\tsize: \"xl\",\n\t\t\tclassName: [\"h-8\"],\n\t\t},\n\t\t// vertical\n\t\t{\n\t\t\torientation: \"vertical\",\n\t\t\tsize: \"xs\",\n\t\t\tclassName: [\"w-4\"],\n\t\t},\n\t\t{\n\t\t\torientation: \"vertical\",\n\t\t\tsize: \"sm\",\n\t\t\tclassName: [\"w-5\"],\n\t\t},\n\t\t{\n\t\t\torientation: \"vertical\",\n\t\t\tsize: \"md\",\n\t\t\tclassName: [\"w-6\"],\n\t\t},\n\t\t{\n\t\t\torientation: \"vertical\",\n\t\t\tsize: \"lg\",\n\t\t\tclassName: [\"w-7\"],\n\t\t},\n\t\t{\n\t\t\torientation: \"vertical\",\n\t\t\tsize: \"xl\",\n\t\t\tclassName: [\"w-8\"],\n\t\t},\n\t],\n})\n\nexport const sliderTrackCva = cva(\n\t[\n\t\t\"overflow-hidden\",\n\t\t\"relative\",\n\t\t\"grow\",\n\t\t\"rounded-[inherit]\",\n\n\t\t\"select-none\",\n\n\t\t\"data-disabled:opacity-50\",\n\t\t\"disabled:pointer-events-none\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [],\n\t\t\t\tsm: [],\n\t\t\t\tmd: [],\n\t\t\t\tlg: [],\n\t\t\t\txl: [],\n\t\t\t},\n\t\t\tvariant: {\n\t\t\t\tsurface: [\"bg-(--base-a3)\", \"inset-ring\", \"inset-ring-(--base-a6)\"],\n\t\t\t\tsoft: [\"bg-(--base-a4)\"],\n\t\t\t},\n\t\t\torientation: {\n\t\t\t\thorizontal: [],\n\t\t\t\tvertical: [],\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t// horizontal\n\t\t\t{\n\t\t\t\torientation: \"horizontal\",\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclassName: [\"h-1.5\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\torientation: \"horizontal\",\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclassName: [\"h-2\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\torientation: \"horizontal\",\n\t\t\t\tsize: \"md\",\n\t\t\t\tclassName: [\"h-2.5\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\torientation: \"horizontal\",\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclassName: [\"h-3\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\torientation: \"horizontal\",\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclassName: [\"h-3.5\"],\n\t\t\t},\n\t\t\t// vertical\n\t\t\t{\n\t\t\t\torientation: \"vertical\",\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclassName: [\"w-1.5\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\torientation: \"vertical\",\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclassName: [\"w-2\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\torientation: \"vertical\",\n\t\t\t\tsize: \"md\",\n\t\t\t\tclassName: [\"w-2.5\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\torientation: \"vertical\",\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclassName: [\"w-3\"],\n\t\t\t},\n\t\t\t{\n\t\t\t\torientation: \"vertical\",\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclassName: [\"w-3.5\"],\n\t\t\t},\n\t\t],\n\t},\n)\n\nexport const sliderRangeCva = cva(\n\t[\"absolute\", \"rounded-[inherit]\", \"data-disabled:opacity-50\", \"disabled:pointer-events-none\"],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [],\n\t\t\t\tsm: [],\n\t\t\t\tmd: [],\n\t\t\t\tlg: [],\n\t\t\t\txl: [],\n\t\t\t},\n\t\t\tvariant: {\n\t\t\t\tsurface: [\"inset-ring\", \"inset-ring-(--base-a5)\", \"bg-(--accent-track)\"],\n\t\t\t\tsoft: [\"bg-(--accent-8)\"],\n\t\t\t},\n\t\t\torientation: {\n\t\t\t\thorizontal: [\"h-full\"],\n\t\t\t\tvertical: [\"w-full\"],\n\t\t\t},\n\t\t},\n\t},\n)\n\nexport const sliderThumbCva = cva(\n\t[\n\t\t\"block\",\n\t\t\"shrink-0\",\n\n\t\t\"bg-(--accent-contrast)\",\n\t\t\"inset-ring\",\n\t\t\"inset-ring-(--base-a6)\",\n\n\t\t\"disabled:pointer-events-none\",\n\t\t\"dark:data-disabled:brightness-50\",\n\n\t\t\"focus:outline-none\",\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-offset-1\",\n\t\t\"focus-visible:outline-(--accent-8)\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"size-4\"],\n\t\t\t\tsm: [\"size-5\"],\n\t\t\t\tmd: [\"size-6\"],\n\t\t\t\tlg: [\"size-7\"],\n\t\t\t\txl: [\"size-8\"],\n\t\t\t},\n\t\t\tvariant: {\n\t\t\t\tsurface: [],\n\t\t\t\tsoft: [],\n\t\t\t},\n\t\t},\n\t},\n)\n","import * as RadixSlider from \"@radix-ui/react-slider\"\nimport { cx } from \"class-variance-authority\"\nimport { memo } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { sliderRangeCva, sliderRootCva, sliderThumbCva, sliderTrackCva } from \"./cva\"\nimport type { SliderVariantProps } from \"./typings\"\n\nexport interface SliderRootProps extends RadixSlider.SliderProps, SliderVariantProps {}\n\nexport const Slider = memo<SliderRootProps>((props) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tsize = \"md\",\n\t\torientation = \"horizontal\",\n\t\taccentColor = providerContext.accentColor,\n\t\tradius = providerContext.radius,\n\t\tvariant = \"surface\",\n\t\ttabIndex,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<RadixSlider.Root\n\t\t\tclassName={cx(\n\t\t\t\tsliderRootCva({ size, variant, orientation }),\n\t\t\t\tradiusCva({ radius, maxLarge: false }),\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\torientation={orientation}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<RadixSlider.Track className={sliderTrackCva({ size, variant, orientation })}>\n\t\t\t\t<RadixSlider.Range className={sliderRangeCva({ size, variant, orientation })} />\n\t\t\t</RadixSlider.Track>\n\t\t\t{(props.value ?? rest.defaultValue ?? []).map((value, index) => (\n\t\t\t\t<RadixSlider.Thumb\n\t\t\t\t\tkey={`${index}-${value}`}\n\t\t\t\t\tclassName={cx(sliderThumbCva({ size, variant }), radiusCva({ radius, maxLarge: false }))}\n\t\t\t\t\t{...(tabIndex !== undefined ? { tabIndex } : undefined)}\n\t\t\t\t/>\n\t\t\t))}\n\t\t</RadixSlider.Root>\n\t)\n})\nSlider.displayName = \"Slider\"\n","import { memo } from \"react\"\n\nexport const Spinner = memo(() => {\n\treturn <div className=\"size-6 animate-spin rounded-full border-2 border-(--base-a12) border-b-transparent\" />\n})\n\nSpinner.displayName = \"Spinner\"\n","import { createContext } from \"react\"\n\nimport type { ComponentRadius } from \"../Provider\"\nimport type { SwitchSize } from \"./typings\"\n\ninterface ISwitchContext {\n\tsize: SwitchSize\n\tradius: ComponentRadius\n}\n\nexport const SwitchContext = createContext({} as ISwitchContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const switchRoot = cva(\n\t[\n\t\t\"shrink-0\",\n\n\t\t// select\n\t\t\"select-none\",\n\t\t\"cursor-pointer\",\n\n\t\t// focus\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-offset-2\",\n\t\t\"focus-visible:outline-(--accent-a8)\",\n\n\t\t// ring\n\t\t\"inset-ring\",\n\t\t\"inset-ring-(--base-a4)\",\n\t\t\"data-[state=checked]:inset-ring-(--accent-track)\",\n\n\t\t// bg\n\t\t\"bg-(--base-4)\",\n\t\t\"data-[state=checked]:bg-(--accent-track)\",\n\n\t\t\"transition-[background,color,box-shadow]\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"h-6\", \"w-12\"],\n\t\t\t\tsm: [\"h-7\", \"w-14\"],\n\t\t\t\tmd: [\"h-8\", \"w-16\"],\n\t\t\t\tlg: [\"h-9\", \"w-18\"],\n\t\t\t\txl: [\"h-10\", \"w-20\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n\nexport const switchThumb = cva(\n\t[\n\t\t\"flex\",\n\t\t\"items-center\",\n\t\t\"justify-center\",\n\t\t\"transition-transform\",\n\t\t\"data-[state='unchecked']:translate-x-[1px]\",\n\t\t\"data-[state='checked']:translate-x-[calc(100%+1px)]\",\n\t\t\"bg-(--base-contrast)\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"size-[calc(calc(var(--spacing)*6)-1px)]\"],\n\t\t\t\tsm: [\"size-[calc(calc(var(--spacing)*7)-1px)]\"],\n\t\t\t\tmd: [\"size-[calc(calc(var(--spacing)*8)-1px)]\"],\n\t\t\t\tlg: [\"size-[calc(calc(var(--spacing)*9)-1px)]\"],\n\t\t\t\txl: [\"size-[calc(calc(var(--spacing)*10)-1px)]\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n","import * as RadixSwitch from \"@radix-ui/react-switch\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef, memo } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { SwitchContext } from \"./context\"\nimport { switchRoot } from \"./cva\"\nimport type { SwitchVariantProps } from \"./typings\"\n\nexport interface SwitchRootProps extends RadixSwitch.SwitchProps, SwitchVariantProps {}\n\nexport const SwitchRoot = memo(\n\tforwardRef<HTMLButtonElement, SwitchRootProps>((props, ref) => {\n\t\tconst providerContext = useProvider()\n\t\tconst {\n\t\t\tclassName,\n\t\t\tsize = \"md\",\n\t\t\tchildren,\n\t\t\tradius = providerContext.radius,\n\t\t\taccentColor = providerContext.accentColor,\n\t\t\t...rest\n\t\t} = props\n\n\t\treturn (\n\t\t\t<RadixSwitch.Root\n\t\t\t\tclassName={cx(switchRoot({ size }), radiusCva({ radius, maxLarge: false }), className)}\n\t\t\t\tref={ref}\n\t\t\t\tdata-accent-color={accentColor}\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t<SwitchContext.Provider value={{ size, radius }}>{children}</SwitchContext.Provider>\n\t\t\t</RadixSwitch.Root>\n\t\t)\n\t}),\n)\n","import * as RadixSwitch from \"@radix-ui/react-switch\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef, memo, useContext } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { SwitchContext } from \"./context\"\nimport { switchThumb } from \"./cva\"\n\nexport interface SwitchThumbProps extends RadixSwitch.SwitchThumbProps {}\n\nexport const SwitchThumb = memo(\n\tforwardRef<HTMLSpanElement, SwitchThumbProps>((props, ref) => {\n\t\tconst { className, ...rest } = props\n\n\t\tconst { size, radius } = useContext(SwitchContext)\n\n\t\treturn (\n\t\t\t<RadixSwitch.Thumb\n\t\t\t\tclassName={cx(switchThumb({ size }), radiusCva({ radius, maxLarge: false }), className)}\n\t\t\t\tref={ref}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t)\n\t}),\n)\n","import { SwitchRoot } from \"./Root\"\nimport { SwitchThumb } from \"./Thumb\"\n\nexport * from \"./Root\"\nexport * from \"./Thumb\"\nexport * from \"./typings\"\n\nexport const Switch = {\n\tRoot: SwitchRoot,\n\tThumb: SwitchThumb,\n}\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nexport interface TableBodyProps extends PropsWithoutRef<ComponentProps<\"tbody\">> {}\n\nexport const TableBody = forwardRef<HTMLTableSectionElement, TableBodyProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn <tbody ref={ref} className={cx(className)} {...rest} />\n})\nTableBody.displayName = \"TableBody\"\n","import { createContext } from \"react\"\n\nimport { TableBorder, TableCellSize, TableVariant } from \"./typings\"\n\ninterface ITableContext {\n\tsize: TableCellSize\n\tborder: TableBorder\n\tvariant: TableVariant\n}\n\nexport const TableContext = createContext({} as ITableContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const tableRootCva = cva([\"border-collapse text-left\"], {\n\tvariants: {\n\t\tvariant: {\n\t\t\tghost: [],\n\t\t\tsurface: [\"border-1\", \"border-(--accent-a6)\", \"box-border\", \"overflow-hidden\", \"bg-(--accent-a2)\"],\n\t\t},\n\t\tsize: {\n\t\t\txs: [\"text-xs\"],\n\t\t\tsm: [\"text-sm\"],\n\t\t\tmd: [\"text-md\"],\n\t\t\tlg: [\"text-lg\"],\n\t\t\txl: [\"text-xl\"],\n\t\t},\n\t},\n})\n\nexport const tableCellCva = cva([], {\n\tvariants: {\n\t\tvariant: {\n\t\t\tsurface: [],\n\t\t\tghost: [],\n\t\t},\n\t\tcell: {\n\t\t\ttrue: [],\n\t\t\tfalse: [],\n\t\t},\n\t\tsize: {\n\t\t\txs: [\"p-2\"],\n\t\t\tsm: [\"p-4\"],\n\t\t\tmd: [\"p-6\"],\n\t\t\tlg: [\"p-8\"],\n\t\t\txl: [\"p-10\"],\n\t\t},\n\t\tborder: {\n\t\t\tgrid: [\"box-border\", \"border\", \"border-(--accent-a6)\"],\n\t\t\trow: [\"box-border\", \"border-b\", \"border-(--accent-a6)\"],\n\t\t\tcol: [\"box-border\", \"border-x\", \"border-(--accent-a6)\"],\n\t\t\tnone: [],\n\t\t},\n\t},\n})\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef, useContext } from \"react\"\n\nimport { TableContext } from \"./context\"\nimport { tableCellCva } from \"./cva\"\n\nexport interface TableCellProps extends PropsWithoutRef<ComponentProps<\"td\">> {}\n\nexport const TableCell = forwardRef<HTMLTableCellElement, TableCellProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\tconst { size, border, variant } = useContext(TableContext)\n\n\treturn <td ref={ref} className={cx(tableCellCva({ size, border, cell: true, variant }), className)} {...rest} />\n})\nTableCell.displayName = \"TableCell\"\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef, useContext } from \"react\"\n\nimport { TableContext } from \"./context\"\nimport { tableCellCva } from \"./cva\"\n\nexport interface TableColumnHeaderCellProps extends PropsWithoutRef<ComponentProps<\"th\">> {}\n\nexport const TableColumnHeaderCell = forwardRef<HTMLTableHeaderCellElement, TableColumnHeaderCellProps>(\n\t(props, ref) => {\n\t\tconst { className, ...rest } = props\n\t\tconst { size, border, variant } = useContext(TableContext)\n\n\t\treturn (\n\t\t\t<th ref={ref} className={cx(tableCellCva({ size, border, cell: false, variant }), className)} {...rest} />\n\t\t)\n\t},\n)\nTableColumnHeaderCell.displayName = \"TableColumnHeaderCell\"\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nexport interface TableFooterProps extends PropsWithoutRef<ComponentProps<\"tfoot\">> {}\n\nexport const TableFooter = forwardRef<HTMLTableSectionElement, TableFooterProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn <tfoot ref={ref} className={cx(className)} {...rest} />\n})\nTableFooter.displayName = \"TableFooter\"\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nexport interface TableHeaderProps extends PropsWithoutRef<ComponentProps<\"thead\">> {}\n\nexport const TableHeader = forwardRef<HTMLTableSectionElement, TableHeaderProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn <thead ref={ref} className={cx(className)} {...rest} />\n})\nTableHeader.displayName = \"TableHeader\"\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { TableContext } from \"./context\"\nimport { tableRootCva } from \"./cva\"\nimport type { TableVariantProps } from \"./typings\"\n\nexport interface TableRootProps extends Omit<PropsWithoutRef<ComponentProps<\"table\">>, \"border\">, TableVariantProps {}\n\nexport const TableRoot = forwardRef<HTMLTableElement, TableRootProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst { children, className, size = \"md\", border = \"row\", accentColor = \"base\", variant = \"ghost\", ...rest } = props\n\n\treturn (\n\t\t<table\n\t\t\tref={ref}\n\t\t\tclassName={cx(\n\t\t\t\ttableRootCva({ size, variant }),\n\t\t\t\tradiusCva({ radius: providerContext.radius, maxLarge: true }),\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<TableContext.Provider value={{ size, border, variant }}>{children}</TableContext.Provider>\n\t\t</table>\n\t)\n})\nTableRoot.displayName = \"TableRoot\"\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nexport interface TableRowProps extends PropsWithoutRef<ComponentProps<\"tr\">> {}\n\nexport const TableRow = forwardRef<HTMLTableRowElement, TableRowProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn <tr ref={ref} className={cx(className)} {...rest} />\n})\nTableRow.displayName = \"TableRow\"\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef, useContext } from \"react\"\n\nimport { TableContext } from \"./context\"\nimport { tableCellCva } from \"./cva\"\n\nexport interface TableRowHeaderCellProps extends PropsWithoutRef<ComponentProps<\"th\">> {}\n\nexport const TableRowHeaderCell = forwardRef<HTMLTableHeaderCellElement, TableRowHeaderCellProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\tconst { size, border, variant } = useContext(TableContext)\n\n\treturn <th ref={ref} className={cx(tableCellCva({ size, border, cell: true, variant }), className)} {...rest} />\n})\nTableRowHeaderCell.displayName = \"TableRow\"\n","import { TableBody } from \"./Body\"\nimport { TableCell } from \"./Cell\"\nimport { TableColumnHeaderCell } from \"./ColumnHeaderCell\"\nimport { TableFooter } from \"./Footer\"\nimport { TableHeader } from \"./Header\"\nimport { TableRoot } from \"./Root\"\nimport { TableRow } from \"./Row\"\nimport { TableRowHeaderCell } from \"./RowHeaderCell\"\n\nexport * from \"./Body\"\nexport * from \"./Cell\"\nexport * from \"./ColumnHeaderCell\"\nexport * from \"./Footer\"\nexport * from \"./Header\"\nexport * from \"./Root\"\nexport * from \"./Row\"\nexport * from \"./RowHeaderCell\"\nexport * from \"./typings\"\n\nexport const Table = {\n\tRoot: TableRoot,\n\tHeader: TableHeader,\n\tBody: TableBody,\n\tFooter: TableFooter,\n\tRow: TableRow,\n\tCell: TableCell,\n\tRowHeaderCell: TableRowHeaderCell,\n\tColumnHeaderCell: TableColumnHeaderCell,\n}\n","import { createContext } from \"react\"\n\nimport type { TabsSize } from \"./typings\"\n\nexport interface ITabsListContext {\n\tsize: TabsSize\n}\n\nexport const TabsListContext = createContext({} as ITabsListContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const tabsListCva = cva([\"flex\", \"border-box\", \"inset-shadow-[0_-1px_0_0_var(--base-a6)]\"], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"h-6\", \"text-xs\"],\n\t\t\tsm: [\"h-7\", \"text-sm\"],\n\t\t\tmd: [\"h-8\", \"text-base\"],\n\t\t\tlg: [\"h-9\", \"text-lg\"],\n\t\t\txl: [\"h-10\", \"text-xl\"],\n\t\t},\n\t},\n\tdefaultVariants: {\n\t\tsize: \"md\",\n\t},\n})\n\nexport const tabsTriggerCva = cva(\n\t[\n\t\t\"select-none\",\n\t\t\"shrink-0\",\n\t\t\"cursor-pointer\",\n\t\t\"transition-colors\",\n\t\t\"relative\",\n\t\t\"h-full\",\n\t\t\"flex\",\n\t\t\"items-center\",\n\t\t\"justify-center\",\n\t\t\"text-(--base-a11)\",\n\t\t\"hover:text-(--base-a12)\",\n\t\t\"data-[state=active]:text-(--base-a12)\",\n\t\t\"data-[state=active]:before:absolute\",\n\t\t\"data-[state=active]:before:inset-x-0\",\n\t\t\"data-[state=active]:before:bottom-0\",\n\t\t\"data-[state=active]:before:h-[2px]\",\n\t\t\"data-[state=active]:before:bg-(--accent-indicator)\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"px-3\", \"gap-1.5\"],\n\t\t\t\tsm: [\"px-3.5\", \"gap-1.75\"],\n\t\t\t\tmd: [\"px-4\", \"gap-2\"],\n\t\t\t\tlg: [\"px-4.5\", \"gap-2.25\"],\n\t\t\t\txl: [\"px-5\", \"gap-2.5\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n","import * as RadixTabs from \"@radix-ui/react-tabs\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { useProvider } from \"../Provider\"\nimport { TabsListContext } from \"./context\"\nimport { tabsListCva } from \"./cva\"\nimport type { TabsVariantProps } from \"./typings\"\n\nexport interface TabsListProps extends RadixTabs.TabsListProps, TabsVariantProps {}\n\nexport const TabsList = forwardRef<HTMLDivElement, TabsListProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst { children, className, size = \"md\", accentColor = providerContext.accentColor, ...rest } = props\n\n\treturn (\n\t\t<RadixTabs.List\n\t\t\tref={ref}\n\t\t\tclassName={cx(tabsListCva({ size }), className)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<TabsListContext.Provider value={{ size }}>{children}</TabsListContext.Provider>\n\t\t</RadixTabs.List>\n\t)\n})\nTabsList.displayName = \"TabsList\"\n","import * as RadixTabs from \"@radix-ui/react-tabs\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nexport interface TabsRootProps extends RadixTabs.TabsProps {}\n\nexport const TabsRoot = forwardRef<HTMLDivElement, TabsRootProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn <RadixTabs.Root ref={ref} className={cx(\"flex flex-col\", className)} {...rest} />\n})\nTabsRoot.displayName = \"TabsRoot\"\n","import { useContext } from \"react\"\n\nimport { TabsListContext } from \"./context\"\n\nexport const useTabsList = () => {\n\tconst tabsListContext = useContext(TabsListContext)\n\n\tif (!tabsListContext) {\n\t\tthrow new Error(\"useTabsList must be used within a TabsList component\")\n\t}\n\n\treturn tabsListContext\n}\n","import * as RadixTabs from \"@radix-ui/react-tabs\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { tabsTriggerCva } from \"./cva\"\nimport { useTabsList } from \"./hooks\"\n\nexport interface TabsTriggerProps extends RadixTabs.TabsTriggerProps {}\n\nexport const TabsTrigger = forwardRef<HTMLButtonElement, TabsTriggerProps>((props, ref) => {\n\tconst { className, children, ...rest } = props\n\n\tconst { size } = useTabsList()\n\n\treturn (\n\t\t<RadixTabs.Trigger ref={ref} className={cx(tabsTriggerCva({ size }), className)} {...rest}>\n\t\t\t{children}\n\t\t</RadixTabs.Trigger>\n\t)\n})\nTabsTrigger.displayName = \"TabsTrigger\"\n","import * as RadixTabs from \"@radix-ui/react-tabs\"\n\nimport { TabsList } from \"./List\"\nimport { TabsRoot } from \"./Root\"\nimport { TabsTrigger } from \"./Trigger\"\n\nexport * from \"./List\"\nexport * from \"./Root\"\nexport * from \"./Trigger\"\nexport * from \"./typings\"\n\nexport const Tabs = {\n\tRoot: TabsRoot,\n\tList: TabsList,\n\tTrigger: TabsTrigger,\n\tContent: RadixTabs.Content,\n}\n","import { cva } from \"class-variance-authority\"\n\nexport const textCva = cva([], {\n\tvariants: {\n\t\tsize: {\n\t\t\txs: [\"text-xs\"],\n\t\t\tsm: [\"text-sm\"],\n\t\t\tmd: [\"text-base\"],\n\t\t\tlg: [\"text-lg\"],\n\t\t\txl: [\"text-xl\"],\n\t\t\t\"2xl\": [\"text-2xl\"],\n\t\t\t\"3xl\": [\"text-3xl\"],\n\t\t\t\"4xl\": [\"text-4xl\"],\n\t\t\t\"5xl\": [\"text-5xl\"],\n\t\t\t\"6xl\": [\"text-6xl\"],\n\t\t\t\"7xl\": [\"text-7xl\"],\n\t\t\t\"8xl\": [\"text-8xl\"],\n\t\t\t\"9xl\": [\"text-9xl\"],\n\t\t},\n\t\tweight: {\n\t\t\tlight: [\"font-light\"],\n\t\t\tregular: [\"font-normal\"],\n\t\t\tmedium: [\"font-medium\"],\n\t\t\tbold: [\"font-bold\"],\n\t\t},\n\t\talign: {\n\t\t\tleft: [\"text-left\"],\n\t\t\tcenter: [\"text-center\"],\n\t\t\tright: [\"text-right\"],\n\t\t},\n\t},\n})\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nimport { textCva } from \"./cva\"\nimport type { TextVariantProps } from \"./typings\"\n\nexport interface TextProps extends PropsWithoutRef<ComponentProps<\"span\">>, TextVariantProps {}\n\nexport const Text = forwardRef<HTMLSpanElement, TextProps>((props, ref) => {\n\tconst { className, size, weight, align, accentColor, highContrast = false, ...rest } = props\n\treturn (\n\t\t<span\n\t\t\tref={ref}\n\t\t\tclassName={cx(\n\t\t\t\ttextCva({ size, weight, align }),\n\t\t\t\t{\n\t\t\t\t\t\"text-(--accent-a11)\": !!accentColor,\n\t\t\t\t\t\"text-(--accent-a12)\": highContrast,\n\t\t\t\t},\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nText.displayName = \"Text\"\n","import { cva } from \"class-variance-authority\"\n\nexport const textAreaCva = cva(\n\t[\n\t\t\"focus:outline-(--accent-a8)\",\n\t\t\"focus:outline-2\",\n\t\t\"focus:-outline-offset-1\",\n\t\t\"disabled:opacity-50\",\n\t\t\"disabled:pointer-events-none\",\n\t\t\"[scrollbar-width:thin]\",\n\t\t\"[scrollbar-color:var(--base-6)_transparent]\",\n\n\t\t\"transition-[background,color,box-shadow]\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\toutline: [\n\t\t\t\t\t\"placeholder-(--base-a9)\",\n\t\t\t\t\t\"selection:bg-(--accent-a5)\",\n\t\t\t\t\t\"inset-ring\",\n\t\t\t\t\t\"inset-ring-(--base-a7)\",\n\t\t\t\t\t\"bg-transparent\",\n\t\t\t\t\t\"text-(--base-12)\",\n\t\t\t\t],\n\t\t\t\tsurface: [\n\t\t\t\t\t\"placeholder-(--accent-12)\",\n\t\t\t\t\t\"placeholder:opacity-60\",\n\t\t\t\t\t\"selection:bg-(--accent-a5)\",\n\t\t\t\t\t\"inset-ring\",\n\t\t\t\t\t\"inset-ring-(--accent-a7)\",\n\t\t\t\t\t\"bg-(--accent-surface)\",\n\t\t\t\t\t\"text-(--accent-a12)\",\n\t\t\t\t],\n\t\t\t\tsoft: [\n\t\t\t\t\t\"bg-(--accent-a3)\",\n\t\t\t\t\t\"text-(--accent-12)\",\n\t\t\t\t\t\"placeholder-(--accent-12)\",\n\t\t\t\t\t\"placeholder:opacity-60\",\n\t\t\t\t\t\"selection:bg-(--accent-a5)\",\n\t\t\t\t],\n\t\t\t\tghost: [\"placeholder-(--base-a9)\", \"selection:bg-(--accent-a5)\", \"bg-transparent\", \"text-(--base-12)\"],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"p-3\", \"text-xs\"],\n\t\t\t\tsm: [\"p-3.5\", \"text-sm\"],\n\t\t\t\tmd: [\"p-4\", \"text-base\"],\n\t\t\t\tlg: [\"p-4.5\", \"text-lg\"],\n\t\t\t\txl: [\"p-5\", \"text-xl\"],\n\t\t\t},\n\t\t\tresize: {\n\t\t\t\tnone: [\"resize-none\"],\n\t\t\t\tvertical: [\"resize-y\"],\n\t\t\t\thorizontal: [\"resize-x\"],\n\t\t\t\tboth: [\"resize\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tvariant: \"outline\",\n\t\t\tsize: \"md\",\n\t\t\tresize: \"none\",\n\t\t},\n\t},\n)\n","import { cx } from \"class-variance-authority\"\nimport { ComponentProps, forwardRef, PropsWithoutRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { textAreaCva } from \"./cva\"\nimport type { TextAreaVariantProps } from \"./typings\"\n\nexport interface TextAreaProps extends PropsWithoutRef<ComponentProps<\"textarea\">>, TextAreaVariantProps {}\n\nexport const TextArea = forwardRef<HTMLTextAreaElement, TextAreaProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tsize,\n\t\tvariant,\n\t\tradius = providerContext.radius,\n\t\taccentColor = providerContext.accentColor,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<textarea\n\t\t\tclassName={cx(textAreaCva({ size, variant }), radiusCva({ radius, maxLarge: true }), className)}\n\t\t\tref={ref}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nTextArea.displayName = \"TextArea\"\n","import { cva } from \"class-variance-authority\"\n\nexport const toastCva = cva(\n\t[\n\t\t\"shadow-md\",\n\t\t\"duration-200\",\n\t\t\"data-[state='open']:animate-in\",\n\t\t\"data-[state='open']:fade-in-0\",\n\t\t\"data-[state='open']:zoom-in-95\",\n\t\t\"data-[state='closed']:animate-out\",\n\t\t\"data-[state='closed']:fade-out-0\",\n\t\t\"data-[state='closed']:zoom-out-95\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsurface: [\"bg-(--accent-1)\", \"text-(--accent-11)\", \"ring-1\", \"ring-inset\", \"ring-(--accent-6)\"],\n\t\t\t\tsoft: [\"bg-(--accent-1)\", \"text-(--accent-11)\"],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"text-xs\", \"p-2\"],\n\t\t\t\tsm: [\"text-sm\", \"p-3\"],\n\t\t\t\tmd: [\"text-base\", \"p-4\"],\n\t\t\t\tlg: [\"text-lg\", \"p-5\"],\n\t\t\t\txl: [\"text-xl\", \"p-6\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tvariant: \"surface\",\n\t\t\tsize: \"md\",\n\t\t},\n\t},\n)\n","import * as RadixToast from \"@radix-ui/react-toast\"\nimport { cx } from \"class-variance-authority\"\nimport { FC, forwardRef, memo, useCallback, useState } from \"react\"\nimport { HiX } from \"react-icons/hi\"\n\nimport { IconButton } from \"../Buttons\"\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { toastCva } from \"./cva\"\nimport type { ToastProps } from \"./typings\"\n\nconst _Toast = forwardRef<HTMLLIElement, ToastProps>(function Toast(props, ref) {\n\tconst { radius, ...restProviderContext } = useProvider()\n\tconst {\n\t\ttitle,\n\t\tdescription,\n\t\ticon,\n\t\tsize = \"md\",\n\t\taccentColor = restProviderContext.accentColor,\n\t\tvariant,\n\t\tonClose,\n\t\tsensitivity,\n\t\taction,\n\t\t...rest\n\t} = props\n\n\tconst [open, setOpen] = useState(true)\n\n\tconst handleOpenChange = useCallback(\n\t\t(open: boolean) => {\n\t\t\tif (!open && onClose) onClose()\n\t\t\tsetOpen(open)\n\t\t},\n\t\t[onClose],\n\t)\n\n\treturn (\n\t\t<RadixToast.Root\n\t\t\tclassName={cx(\n\t\t\t\t\"flex w-max max-w-full items-center gap-4\",\n\t\t\t\ttoastCva({ size, variant }),\n\t\t\t\tradiusCva({ radius, maxLarge: true }),\n\t\t\t)}\n\t\t\tref={ref}\n\t\t\topen={open}\n\t\t\ttype={sensitivity}\n\t\t\tonOpenChange={handleOpenChange}\n\t\t\tdata-accent-color={accentColor}\n\t\t\tdata-floating-content=\"\"\n\t\t\t{...rest}\n\t\t>\n\t\t\t<div className=\"flex grow items-center gap-3\">\n\t\t\t\t{icon}\n\t\t\t\t<div className=\"flex flex-col gap-2\">\n\t\t\t\t\t<div className=\"flex flex-col\">\n\t\t\t\t\t\t<RadixToast.Title className=\"font-medium\">{title}</RadixToast.Title>\n\t\t\t\t\t\t<RadixToast.Description>{description}</RadixToast.Description>\n\t\t\t\t\t</div>\n\t\t\t\t\t{action && (\n\t\t\t\t\t\t<RadixToast.Action className=\"w-max\" altText={action.altText} asChild>\n\t\t\t\t\t\t\t{action.content}\n\t\t\t\t\t\t</RadixToast.Action>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<RadixToast.Close asChild>\n\t\t\t\t<IconButton size={size} aria-label=\"Close\" variant=\"ghost\" accentColor={accentColor}>\n\t\t\t\t\t<HiX />\n\t\t\t\t</IconButton>\n\t\t\t</RadixToast.Close>\n\t\t</RadixToast.Root>\n\t)\n})\n\nexport const Toast: FC<ToastProps> = memo(_Toast)\n","import { createContext, useContext } from \"react\"\n\nimport { IToastContext } from \"./typings\"\n\nexport const ToastContext = createContext({} as IToastContext)\n\nexport const useToast = (): IToastContext => {\n\tconst context = useContext(ToastContext)\n\n\tif (!context) {\n\t\tthrow new Error(\"useToast must be used within a ToastProvider\")\n\t}\n\n\treturn context\n}\n","import { ToastProvider as RadixToastProvider, ToastViewport } from \"@radix-ui/react-toast\"\nimport { cx } from \"class-variance-authority\"\nimport { FC, memo, useCallback, useEffect, useMemo, useState } from \"react\"\n\nimport { Toast } from \"./Toast\"\nimport { ToastContext } from \"./ToastContext\"\nimport type { IToastContext, SimpleToastProps, ToastContextProviderProps, ToastProps } from \"./typings\"\n\ninterface ToastArgs extends ToastProps {\n\tid: string\n\ttimeout: NodeJS.Timeout\n}\n\n// average reading speed is 240 words per minute\nconst WORDS_PER_SECOND = 240 / 60\n// 5 seconds is the minimum duration for a toast\nconst MIN_DURATION = 5000\n\nenum CloseReason {\n\tManual,\n\tTimeout,\n}\n\nconst calculatedDuration = (toast: ToastProps) => {\n\t// if the user has passed a duration valid, use that instead\n\tif (toast.duration && toast.duration >= MIN_DURATION) return toast.duration\n\n\t// count the number of words in the title and description\n\tconst words = toast.description.split(\" \").length + toast.title.split(\" \").length\n\t// calculate the duration based on the number of words and the severity\n\treturn MIN_DURATION + words / WORDS_PER_SECOND\n}\n\n/** this is a hack to allow toasts to be shown outside of components where hooks cannot be used */\n// eslint-disable-next-line react-refresh/only-export-components\nexport let unsafeShowToast: ((toastProps: ToastProps) => void) | undefined = undefined\n\n/** Toasts will be displayed in the top-right handle corner of the screen */\nexport const ToastProvider: FC<ToastContextProviderProps> = memo(function ToastContextProvider({\n\tchildren,\n\t// Use this class to change where the viewport for the toasts should be\n\tclassName,\n\thotkey,\n\t...rest\n}: ToastContextProviderProps) {\n\tconst [toasts, setToasts] = useState<ToastArgs[]>([])\n\n\tconst handleCloseToast = useCallback((id: string, reason: CloseReason, callback?: () => void) => {\n\t\tsetToasts((prevToasts) => {\n\t\t\tconst toast = prevToasts.find((toast) => toast.id === id)\n\t\t\t// clear the timeout if the toast is being closed manually\n\t\t\tif (toast && reason === CloseReason.Manual) clearTimeout(toast.timeout)\n\n\t\t\treturn prevToasts.filter((toast) => toast.id !== id)\n\t\t})\n\n\t\tif (callback) callback()\n\t}, [])\n\n\tconst toastContextValue = useMemo<IToastContext>(() => {\n\t\tlet counter = 0\n\n\t\tconst showToast = (toastProps: ToastProps) => {\n\t\t\tconst duration = calculatedDuration(toastProps)\n\t\t\tconst id = counter.toString()\n\t\t\tcounter += 1 // increment the counter so that ids are unique\n\n\t\t\t// manually close the toast after the duration has passed\n\t\t\t// this is necessary because the duration prop is reset on re-render\n\t\t\tconst pending = setTimeout(() => handleCloseToast(id, CloseReason.Timeout, toastProps.onClose), duration)\n\n\t\t\tsetToasts((prevToasts) => [...prevToasts, { ...toastProps, timeout: pending, duration, id }])\n\t\t}\n\t\tconst showPrimary = (toastProps: SimpleToastProps) => showToast(toastProps)\n\t\tconst showSuccess = (toastProps: SimpleToastProps) => showToast({ ...toastProps, accentColor: \"success\" })\n\t\tconst showError = (toastProps: SimpleToastProps) => showToast({ ...toastProps, accentColor: \"danger\" })\n\t\tconst showInfo = (toastProps: SimpleToastProps) => showToast({ ...toastProps, accentColor: \"base\" })\n\t\tconst showWarning = (toastProps: SimpleToastProps) => showToast({ ...toastProps, accentColor: \"warning\" })\n\n\t\tunsafeShowToast = showToast\n\n\t\treturn {\n\t\t\tshowToast,\n\t\t\tshowPrimary,\n\t\t\tshowSuccess,\n\t\t\tshowError,\n\t\t\tshowInfo,\n\t\t\tshowWarning,\n\t\t}\n\t}, [handleCloseToast])\n\n\t// clear all timeouts when the component unmounts\n\tuseEffect(() => {\n\t\treturn () => {\n\t\t\tfor (const { timeout } of toasts) clearTimeout(timeout)\n\t\t}\n\t\t// only run this effect when the component unmounts\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [])\n\n\treturn (\n\t\t<ToastContext.Provider value={toastContextValue}>\n\t\t\t<RadixToastProvider {...rest}>\n\t\t\t\t{children}\n\n\t\t\t\t<ToastViewport\n\t\t\t\t\tclassName={cx(\n\t\t\t\t\t\t\"fixed top-0 right-0 z-[2147483647] flex w-full max-w-md list-none flex-col items-end gap-3 overflow-x-hidden overflow-y-auto p-5 outline-none\",\n\t\t\t\t\t\tclassName,\n\t\t\t\t\t)}\n\t\t\t\t\thotkey={hotkey}\n\t\t\t\t/>\n\n\t\t\t\t{toasts.map(({ id, onClose, ...toastProps }) => (\n\t\t\t\t\t<Toast key={id} {...toastProps} onClose={() => handleCloseToast(id, CloseReason.Manual, onClose)} />\n\t\t\t\t))}\n\t\t\t</RadixToastProvider>\n\t\t</ToastContext.Provider>\n\t)\n})\n","import { cva } from \"class-variance-authority\"\n\nexport const toggleButtonCva = cva(\n\t[\n\t\t\"flex\",\n\t\t\"items-center\",\n\t\t\"shrink-0\",\n\t\t\"justify-center\",\n\n\t\t// Selection\n\t\t\"select-none\",\n\n\t\t// Focus\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-offset-2\",\n\t\t\"focus-visible:outline-(--accent-a8)\",\n\n\t\t// Disabled\n\t\t\"disabled:opacity-50\",\n\t\t\"disabled:pointer-events-none\",\n\n\t\t\"transition-[background,color,box-shadow]\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsoft: [\n\t\t\t\t\t// text\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"data-[state=on]:text-(--accent-a12)\",\n\n\t\t\t\t\t// bg\n\t\t\t\t\t\"bg-(--accent-a3)\",\n\t\t\t\t\t\"data-[state=off]:hover:bg-(--accent-a4)\",\n\t\t\t\t\t\"data-[state=on]:bg-(--accent-a5)\",\n\t\t\t\t],\n\t\t\t\toutline: [\n\t\t\t\t\t// ring\n\t\t\t\t\t\"inset-ring\",\n\t\t\t\t\t\"inset-ring-(--accent-a4)\",\n\t\t\t\t\t\"data-[state=off]:hover:inset-ring-transparent\",\n\t\t\t\t\t\"data-[state=on]:inset-ring-transparent\",\n\n\t\t\t\t\t// text\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"data-[state=on]:text-(--accent-a12)\",\n\n\t\t\t\t\t// bg\n\t\t\t\t\t\"data-[state=off]:hover:bg-(--accent-a3)\",\n\t\t\t\t\t\"data-[state=on]:bg-(--accent-a4)\",\n\t\t\t\t],\n\t\t\t\tghost: [\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"data-[state=off]:hover:bg-(--accent-a3)\",\n\t\t\t\t\t\"data-[state=on]:bg-(--accent-a4)\",\n\t\t\t\t\t\"data-[state=on]:text-(--accent-a12)\",\n\t\t\t\t],\n\t\t\t},\n\t\t\ticon: {\n\t\t\t\ttrue: [],\n\t\t\t\tfalse: [],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"h-6\", \"text-xs\", \"gap-1.5\"],\n\t\t\t\tsm: [\"h-7\", \"text-sm\", \"gap-1.75\"],\n\t\t\t\tmd: [\"h-8\", \"text-base\", \"gap-2\"],\n\t\t\t\tlg: [\"h-9\", \"text-lg\", \"gap-2.25\"],\n\t\t\t\txl: [\"h-10\", \"text-xl\", \"gap-2.5\"],\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"w-6\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"px-3\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"w-7\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"px-3.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"w-8\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"px-4\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"w-9\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"px-4.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"w-10\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"px-5\",\n\t\t\t},\n\t\t],\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t\ticon: false,\n\t\t\tvariant: \"outline\",\n\t\t},\n\t},\n)\n","import * as Toggle from \"@radix-ui/react-toggle\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { toggleButtonCva } from \"./cva\"\nimport type { BaseToggleButtonProps } from \"./typings\"\n\nexport const BaseToggleButton = forwardRef<HTMLButtonElement, BaseToggleButtonProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tsize,\n\t\ticon,\n\t\tvariant,\n\t\tradius = providerContext.radius,\n\t\taccentColor = providerContext.accentColor,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<Toggle.Root\n\t\t\tref={ref}\n\t\t\tclassName={cx(toggleButtonCva({ size, variant, icon }), radiusCva({ radius, maxLarge: false }), className)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nBaseToggleButton.displayName = \"BaseToggleButton\"\n","import { forwardRef } from \"react\"\n\nimport { BaseToggleButton } from \"./BaseToggleButton\"\nimport type { ToggleButtonProps } from \"./typings\"\n\nexport const IconToggleButton = forwardRef<HTMLButtonElement, ToggleButtonProps>((props, ref) => {\n\treturn <BaseToggleButton ref={ref} icon {...props} />\n})\nIconToggleButton.displayName = \"IconToggleButton\"\n","import { forwardRef } from \"react\"\n\nimport { BaseToggleButton } from \"./BaseToggleButton\"\nimport type { ToggleButtonProps } from \"./typings\"\n\nexport const ToggleButton = forwardRef<HTMLButtonElement, ToggleButtonProps>((props, ref) => {\n\treturn <BaseToggleButton ref={ref} icon={false} {...props} />\n})\nToggleButton.displayName = \"ToggleButton\"\n","import { createContext } from \"react\"\n\nimport type { ComponentRadius } from \"../Provider\"\nimport type { ToggleGroupSize, ToggleGroupVariant } from \"./typings\"\n\nexport interface IToggleGroupContext {\n\tvariant: ToggleGroupVariant\n\tsize: ToggleGroupSize\n\tradius: ComponentRadius\n\taccentColor: string\n}\n\nexport const ToggleGroupContext = createContext({} as IToggleGroupContext)\n","import { cva } from \"class-variance-authority\"\n\nexport const toggleGroupItemCva = cva(\n\t[\n\t\t\"flex\",\n\t\t\"items-center\",\n\t\t\"shrink-0\",\n\t\t\"justify-center\",\n\n\t\t// Selection\n\t\t\"select-none\",\n\n\t\t// Focus\n\t\t\"focus-visible:outline-2\",\n\t\t\"focus-visible:outline-offset-2\",\n\t\t\"focus-visible:outline-(--accent-a8)\",\n\n\t\t// Disabled\n\t\t\"disabled:opacity-50\",\n\t\t\"disabled:pointer-events-none\",\n\n\t\t\"transition-[background,color,box-shadow]\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tsoft: [\n\t\t\t\t\t// text\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"data-[state=on]:text-(--accent-a12)\",\n\n\t\t\t\t\t// bg\n\t\t\t\t\t\"bg-(--accent-a3)\",\n\t\t\t\t\t\"data-[state=off]:hover:bg-(--accent-a4)\",\n\t\t\t\t\t\"data-[state=on]:bg-(--accent-a5)\",\n\t\t\t\t],\n\t\t\t\toutline: [\n\t\t\t\t\t// ring\n\t\t\t\t\t\"inset-ring\",\n\t\t\t\t\t\"inset-ring-(--accent-a4)\",\n\t\t\t\t\t\"data-[state=off]:hover:inset-ring-transparent\",\n\t\t\t\t\t\"data-[state=on]:inset-ring-transparent\",\n\n\t\t\t\t\t// text\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"data-[state=on]:text-(--accent-a12)\",\n\n\t\t\t\t\t// bg\n\t\t\t\t\t\"data-[state=off]:hover:bg-(--accent-a3)\",\n\t\t\t\t\t\"data-[state=on]:bg-(--accent-a4)\",\n\t\t\t\t],\n\t\t\t\tghost: [\n\t\t\t\t\t\"text-(--accent-a11)\",\n\t\t\t\t\t\"data-[state=off]:hover:bg-(--accent-a3)\",\n\t\t\t\t\t\"data-[state=on]:bg-(--accent-a4)\",\n\t\t\t\t\t\"data-[state=on]:text-(--accent-a12)\",\n\t\t\t\t],\n\t\t\t},\n\t\t\ticon: {\n\t\t\t\ttrue: [],\n\t\t\t\tfalse: [],\n\t\t\t},\n\t\t\tsize: {\n\t\t\t\txs: [\"h-6\", \"text-xs\", \"gap-1.5\"],\n\t\t\t\tsm: [\"h-7\", \"text-sm\", \"gap-1.75\"],\n\t\t\t\tmd: [\"h-8\", \"text-base\", \"gap-2\"],\n\t\t\t\tlg: [\"h-9\", \"text-lg\", \"gap-2.25\"],\n\t\t\t\txl: [\"h-10\", \"text-xl\", \"gap-2.5\"],\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"w-6\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xs\",\n\t\t\t\tclass: \"px-3\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"w-7\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"sm\",\n\t\t\t\tclass: \"px-3.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"w-8\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"md\",\n\t\t\t\tclass: \"px-4\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"w-9\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"lg\",\n\t\t\t\tclass: \"px-4.5\",\n\t\t\t},\n\n\t\t\t{\n\t\t\t\ticon: true,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"w-10\",\n\t\t\t},\n\t\t\t{\n\t\t\t\ticon: false,\n\t\t\t\tsize: \"xl\",\n\t\t\t\tclass: \"px-5\",\n\t\t\t},\n\t\t],\n\t},\n)\n","import * as RadixToggleGroup from \"@radix-ui/react-toggle-group\"\nimport { cx } from \"class-variance-authority\"\nimport { ComponentPropsWithRef, memo, use } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { ToggleGroupContext } from \"./context\"\nimport { toggleGroupItemCva } from \"./cva\"\nimport type { ToggleGroupVariantProps } from \"./typings\"\n\nexport interface ToggleGroupBaseItemProps\n\textends ComponentPropsWithRef<typeof RadixToggleGroup.Item>,\n\t\tToggleGroupVariantProps {\n\ticon: boolean\n}\n\nexport const ToggleGroupBaseItem = memo<ToggleGroupBaseItemProps>((props) => {\n\tconst toggleGroupContext = use(ToggleGroupContext)\n\tconst {\n\t\tref,\n\t\tclassName,\n\t\ticon,\n\t\taccentColor = toggleGroupContext.accentColor,\n\t\tradius = toggleGroupContext.radius,\n\t\tvariant = toggleGroupContext.variant,\n\t\tsize = toggleGroupContext.size,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<RadixToggleGroup.Item\n\t\t\tref={ref}\n\t\t\tclassName={cx(\n\t\t\t\ttoggleGroupItemCva({ icon, variant, size }),\n\t\t\t\tradiusCva({ radius, maxLarge: false }),\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\tdata-accent-color={accentColor}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\nToggleGroupBaseItem.displayName = \"ToggleGroupBaseItem\"\n","import { memo } from \"react\"\n\nimport { ToggleGroupBaseItem, ToggleGroupBaseItemProps } from \"./BaseItem\"\n\nexport interface ToggleGroupIconItemProps extends Omit<ToggleGroupBaseItemProps, \"icon\"> {}\n\nexport const ToggleGroupIconItem = memo<ToggleGroupIconItemProps>((props) => {\n\treturn <ToggleGroupBaseItem icon {...props} />\n})\nToggleGroupIconItem.displayName = \"ToggleGroupIconItem\"\n","import { memo } from \"react\"\n\nimport { ToggleGroupBaseItem, ToggleGroupBaseItemProps } from \"./BaseItem\"\n\nexport interface ToggleGroupItemProps extends Omit<ToggleGroupBaseItemProps, \"icon\"> {}\n\nexport const ToggleGroupItem = memo<ToggleGroupItemProps>((props) => {\n\treturn <ToggleGroupBaseItem icon={false} {...props} />\n})\nToggleGroupItem.displayName = \"ToggleGroupItem\"\n","import * as RadixToggleGroup from \"@radix-ui/react-toggle-group\"\nimport { ComponentPropsWithRef, memo, useMemo } from \"react\"\n\nimport { useProvider } from \"../Provider\"\nimport { ToggleGroupContext } from \"./context\"\nimport type { ToggleGroupVariantProps } from \"./typings\"\n\nexport type ToggleGroupRootProps = ComponentPropsWithRef<typeof RadixToggleGroup.Root> & ToggleGroupVariantProps\n\nexport const ToggleGroupRoot = memo<ToggleGroupRootProps>((props) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tref,\n\t\tchildren,\n\t\taccentColor = providerContext.accentColor,\n\t\tradius = providerContext.radius,\n\t\tvariant = \"soft\",\n\t\tsize = \"md\",\n\t\t...rest\n\t} = props\n\n\tconst contextValue = useMemo(\n\t\t() => ({\n\t\t\tvariant,\n\t\t\tsize,\n\t\t\tradius,\n\t\t\taccentColor,\n\t\t}),\n\t\t[accentColor, radius, size, variant],\n\t)\n\n\treturn (\n\t\t<RadixToggleGroup.Root ref={ref} data-accent-color={accentColor} {...rest}>\n\t\t\t<ToggleGroupContext value={contextValue}>{children}</ToggleGroupContext>\n\t\t</RadixToggleGroup.Root>\n\t)\n})\nToggleGroupRoot.displayName = \"ToggleGroupRoot\"\n","import { ToggleGroupIconItem } from \"./IconItem\"\nimport { ToggleGroupItem } from \"./Item\"\nimport { ToggleGroupRoot } from \"./Root\"\n\nexport * from \"./IconItem\"\nexport * from \"./Item\"\nexport * from \"./Root\"\nexport * from \"./typings\"\n\nexport const ToggleGroup = {\n\tRoot: ToggleGroupRoot,\n\tItem: ToggleGroupItem,\n\tIconItem: ToggleGroupIconItem,\n}\n","import * as RadixTooltip from \"@radix-ui/react-tooltip\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nexport interface TooltipArrowProps extends RadixTooltip.TooltipArrowProps {}\n\nexport const TooltipArrow = forwardRef<SVGSVGElement, TooltipArrowProps>((props, ref) => {\n\tconst { className, ...rest } = props\n\n\treturn <RadixTooltip.Arrow className={cx(\"fill-(--base-6)\", className)} ref={ref} {...rest} />\n})\nTooltipArrow.displayName = \"TooltipArrow\"\n","import { cva } from \"class-variance-authority\"\n\nexport const tooltipContent = cva(\n\t[\n\t\t\"data-[state=delayed-open]:animate-in\",\n\t\t\"data-[state=delayed-open]:fade-in-0\",\n\t\t\"data-[state=delayed-open]:zoom-in-95\",\n\t\t\"data-[state=closed]:animate-out\",\n\t\t\"data-[state=closed]:fade-out-0\",\n\t\t\"data-[state=closed]:zoom-out-95\",\n\t\t\"bg-(--color-background)\",\n\t\t\"dark:bg-(--base-2)\",\n\t\t\"ring-1\",\n\t\t\"ring-(--base-6)\",\n\t\t\"text-(--base-12)\",\n\t\t\"shadow-sm\",\n\t],\n\t{\n\t\tvariants: {\n\t\t\tsize: {\n\t\t\t\txs: [\"px-3\"],\n\t\t\t\tsm: [\"px-3.5\"],\n\t\t\t\tmd: [\"px-4\"],\n\t\t\t\tlg: [\"px-4.5\"],\n\t\t\t\txl: [\"px-5\"],\n\t\t\t},\n\t\t\tside: {\n\t\t\t\ttop: [\"data-[side=top]:slide-in-from-bottom-1\"],\n\t\t\t\tright: [\"data-[side=right]:slide-in-from-left-1\"],\n\t\t\t\tbottom: [\"data-[side=bottom]:slide-in-from-top-1\"],\n\t\t\t\tleft: [\"data-[side=left]:slide-in-from-right-1\"],\n\t\t\t},\n\t\t},\n\t\tdefaultVariants: {\n\t\t\tsize: \"md\",\n\t\t\tside: \"top\",\n\t\t},\n\t},\n)\n","import * as RadixTooltip from \"@radix-ui/react-tooltip\"\nimport { cx } from \"class-variance-authority\"\nimport { forwardRef } from \"react\"\n\nimport { radiusCva } from \"../cva\"\nimport { useProvider } from \"../Provider\"\nimport { tooltipContent } from \"./cva\"\nimport type { TooltipVariantProps } from \"./typings\"\n\nexport interface TooltipContentProps extends RadixTooltip.TooltipContentProps, TooltipVariantProps {\n\tcontainer?: RadixTooltip.TooltipPortalProps[\"container\"]\n}\n\nexport const TooltipContent = forwardRef<HTMLDivElement, TooltipContentProps>((props, ref) => {\n\tconst providerContext = useProvider()\n\tconst {\n\t\tclassName,\n\t\tside = \"top\",\n\t\tsize,\n\t\tradius = providerContext.radius,\n\t\tchildren,\n\t\tsideOffset = 2,\n\t\tcontainer,\n\t\t...rest\n\t} = props\n\n\treturn (\n\t\t<RadixTooltip.Portal container={container}>\n\t\t\t<RadixTooltip.Content\n\t\t\t\tclassName={cx(tooltipContent({ size, side }), radiusCva({ radius, maxLarge: false }), className)}\n\t\t\t\tref={ref}\n\t\t\t\tsideOffset={sideOffset}\n\t\t\t\tdata-floating-content=\"\"\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</RadixTooltip.Content>\n\t\t</RadixTooltip.Portal>\n\t)\n})\nTooltipContent.displayName = \"TooltipContent\"\n","import * as RadixTooltip from \"@radix-ui/react-tooltip\"\n\nimport { TooltipArrow } from \"./Arrow\"\nimport { TooltipContent } from \"./Content\"\n\nexport * from \"./Arrow\"\nexport * from \"./Content\"\nexport * from \"./typings\"\n\nexport const Tooltip = {\n\tArrow: TooltipArrow,\n\tContent: TooltipContent,\n\tRoot: RadixTooltip.Root,\n\tTrigger: RadixTooltip.Trigger,\n\tProvider: RadixTooltip.Provider,\n}\n"],"names":["size","open","React","useLayoutEffect","state","cleanups","MultiSelectProvider","SingleSelectRequiredProvider","SingleSelectNotRequiredProvider","getBooleanState","SelectedIndicatorContext","getSelectedState","getCheckedState","DialogContent","CommandMenuMultiSelectGroup","DialogOverlay","CommandMenuRadioGroup","ReactDayPicker","inputRoot","Root","hide","SlideOut","offset","offsetMiddleware","sizeMiddleware","_a","mergeRefs","MenuMultiSelectGroup","MenuSelectGroup","Toast","toast","RadixToastProvider"],"mappings":"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","x_google_ignoreList":[32,33,34]}