@conscia-labs/design-system 1.0.0 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +45 -10
- package/dist/{chunk-3UTRMJLB.js → chunk-H5ORBU5O.js} +162 -82
- package/dist/chunk-H5ORBU5O.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +5 -1
- package/dist/primitives/index.d.ts +26 -5
- package/dist/primitives/index.js +5 -1
- package/dist/standalone.css +1 -1
- package/package.json +1 -1
- package/dist/chunk-3UTRMJLB.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/primitives/alert.tsx","../src/primitives/avatar.tsx","../src/primitives/avatar-group.tsx","../src/primitives/badge.tsx","../src/primitives/brand-icon.tsx","../src/primitives/brand-wordmark.tsx","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/switch/index.parts.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/switch/root/SwitchRoot.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/switch/root/SwitchRootContext.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/switch/stateAttributesMapping.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/switch/thumb/SwitchThumb.mjs","../src/primitives/switch.tsx","../src/primitives/textarea.tsx","../src/primitives/compat.tsx","../src/primitives/field.tsx","../src/primitives/filter-chip.tsx","../src/primitives/form-select.tsx","../src/primitives/label.tsx","../src/primitives/spinner.tsx","../src/primitives/loading-button.tsx","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/popover/index.parts.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/popover/root/PopoverRoot.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/popover/root/PopoverRootContext.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/popover/store/PopoverStore.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/popover/trigger/PopoverTrigger.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/popover/utils/constants.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/popover/portal/PopoverPortal.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/popover/portal/PopoverPortalContext.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/popover/positioner/PopoverPositioner.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/popover/positioner/PopoverPositionerContext.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/popover/popup/PopoverPopup.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/utils/closePart.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/popover/arrow/PopoverArrow.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/popover/backdrop/PopoverBackdrop.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/popover/title/PopoverTitle.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/popover/description/PopoverDescription.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/popover/close/PopoverClose.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/popover/viewport/PopoverViewport.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/popover/store/PopoverHandle.mjs","../src/primitives/popover.tsx","../src/primitives/searchable-select.tsx","../src/primitives/toast.tsx","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/index.parts.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/provider/ToastProvider.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/provider/ToastProviderContext.mjs","../node_modules/.pnpm/@base-ui+utils@0.3.2_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/utils/generateId.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/utils/resolvePromiseOptions.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/store.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/viewport/ToastViewport.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/root/ToastRoot.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/root/ToastRootContext.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/content/ToastContent.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/description/ToastDescription.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/utils/isRenderableNode.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/utils/useToastLabelPart.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/title/ToastTitle.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/close/ToastClose.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/action/ToastAction.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/portal/ToastPortal.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/positioner/ToastPositioner.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/positioner/ToastPositionerContext.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/arrow/ToastArrow.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/useToastManager.mjs","../node_modules/.pnpm/@base-ui+react@1.7.0_@types+react@19.2.17_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/@base-ui/react/toast/createToastManager.mjs"],"sourcesContent":["import * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"./utils\";\n\ntype AlertContextValue = {\n titleId: string;\n descriptionId: string;\n hasTitle: boolean;\n hasDescription: boolean;\n registerTitle: (id: string) => void;\n registerDescription: (id: string) => void;\n};\n\nconst AlertContext = React.createContext<AlertContextValue | null>(null);\n\nconst alertVariants = cva(\n \"relative grid w-full grid-cols-[auto_1fr] items-start gap-x-3 rounded-[var(--ds-radius-surface)] border px-4 py-3.5 text-sm [&>svg]:mt-0.5 [&>svg]:size-5\",\n {\n variants: {\n variant: {\n default: \"border-border-default bg-surface text-text-primary\",\n information:\n \"border-information-border bg-information-background text-information-foreground\",\n success:\n \"border-success-border bg-success-background text-success-foreground\",\n warning:\n \"border-warning-border bg-warning-background text-warning-foreground\",\n danger: \"border-danger-border bg-danger-background text-danger-foreground\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\ntype AlertProps = React.ComponentProps<\"div\"> & VariantProps<typeof alertVariants>;\n\nfunction Alert({\n children,\n className,\n variant,\n role = \"group\",\n \"aria-labelledby\": ariaLabelledby,\n \"aria-describedby\": ariaDescribedby,\n ...props\n}: AlertProps) {\n const baseId = React.useId();\n const titleId = `${baseId}-title`;\n const descriptionId = `${baseId}-description`;\n const [registeredTitleId, setRegisteredTitleId] = React.useState<string>();\n const [registeredDescriptionId, setRegisteredDescriptionId] = React.useState<string>();\n const registerTitle = React.useCallback((id: string) => setRegisteredTitleId(id), []);\n const registerDescription = React.useCallback((id: string) => setRegisteredDescriptionId(id), []);\n\n return (\n <AlertContext.Provider value={{ titleId, descriptionId, hasTitle: Boolean(registeredTitleId), hasDescription: Boolean(registeredDescriptionId), registerTitle, registerDescription }}>\n <div\n data-slot=\"alert\"\n role={role}\n aria-labelledby={ariaLabelledby ?? registeredTitleId}\n aria-describedby={ariaDescribedby ?? registeredDescriptionId}\n className={cn(alertVariants({ variant }), className)}\n {...props}\n >\n {children}\n </div>\n </AlertContext.Provider>\n );\n}\n\nfunction AlertTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n const context = React.useContext(AlertContext);\n const id = props.id ?? context?.titleId;\n React.useEffect(() => {\n if (id) context?.registerTitle(id);\n }, [context, id]);\n\n return (\n <div\n data-slot=\"alert-title\"\n id={id}\n className={cn(\"font-medium leading-5\", className)}\n {...props}\n />\n );\n}\n\nfunction AlertDescription({ className, ...props }: React.ComponentProps<\"div\">) {\n const context = React.useContext(AlertContext);\n const id = props.id ?? context?.descriptionId;\n React.useEffect(() => {\n if (id) context?.registerDescription(id);\n }, [context, id]);\n\n return (\n <div\n data-slot=\"alert-description\"\n id={id}\n className={cn(\"col-start-2 mt-0.5 text-sm leading-5 opacity-80\", className)}\n {...props}\n />\n );\n}\n\nexport { Alert, AlertDescription, AlertTitle, alertVariants };\nexport type { AlertProps };\n","\"use client\";\n\nimport * as React from \"react\";\n\nimport { cn } from \"./utils\";\n\nconst useAvatarEffect = typeof window === \"undefined\" ? React.useEffect : React.useLayoutEffect;\n\ntype AvatarImageStatus = \"idle\" | \"loading\" | \"loaded\" | \"error\";\n\ntype AvatarContextValue = {\n status: AvatarImageStatus;\n setStatus: React.Dispatch<React.SetStateAction<AvatarImageStatus>>;\n};\n\nconst AvatarContext = React.createContext<AvatarContextValue | null>(null);\n\nfunction useAvatarContext() {\n const context = React.useContext(AvatarContext);\n if (!context) {\n throw new Error(\"AvatarImage and AvatarFallback must be used inside Avatar.\");\n }\n return context;\n}\n\nfunction Avatar({\n children,\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n const [status, setStatus] = React.useState<AvatarImageStatus>(\"idle\");\n\n return (\n <AvatarContext.Provider value={{ status, setStatus }}>\n <div data-slot=\"avatar\" className={cn(\"relative flex size-8 shrink-0 overflow-hidden rounded-full\", className)} {...props}>\n {children}\n </div>\n </AvatarContext.Provider>\n );\n}\n\nfunction AvatarImage({\n alt = \"\",\n className,\n onError,\n onLoad,\n src,\n ...props\n}: React.ComponentProps<\"img\">) {\n const { status, setStatus } = useAvatarContext();\n\n useAvatarEffect(() => {\n setStatus(src ? \"loading\" : \"error\");\n }, [src, setStatus]);\n\n return (\n // The library must use a framework-neutral image element rather than Next's Image component.\n // eslint-disable-next-line @next/next/no-img-element\n <img\n data-slot=\"avatar-image\"\n className={cn(\"aspect-square size-full\", status === \"loaded\" ? \"\" : \"hidden\", className)}\n alt={alt}\n src={src}\n {...props}\n onLoad={(event) => {\n setStatus(\"loaded\");\n onLoad?.(event);\n }}\n onError={(event) => {\n setStatus(\"error\");\n onError?.(event);\n }}\n />\n );\n}\n\nfunction AvatarFallback({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n const { status } = useAvatarContext();\n\n return <div data-slot=\"avatar-fallback\" className={cn(\"flex size-full items-center justify-center rounded-full bg-surface-muted text-xs font-medium text-text-supporting\", status === \"loaded\" ? \"hidden\" : \"\", className)} {...props} />;\n}\n\nexport { Avatar, AvatarFallback, AvatarImage };\n","import * as React from \"react\";\n\nimport { cn } from \"./utils\";\n\ntype AvatarGroupProps = React.ComponentProps<\"div\"> & {\n max?: number;\n size?: \"sm\" | \"default\" | \"lg\";\n total?: number;\n};\n\nfunction AvatarGroup({\n children,\n className,\n max,\n size = \"default\",\n total,\n ...props\n}: AvatarGroupProps) {\n const avatars = React.Children.toArray(children);\n const visibleCount = max === undefined ? avatars.length : Math.max(0, Math.floor(max));\n const visibleAvatars = avatars.slice(0, visibleCount);\n const totalCount = Math.max(avatars.length, total ?? avatars.length);\n const overflowCount = Math.max(0, totalCount - visibleAvatars.length);\n\n return (\n <div\n data-slot=\"avatar-group\"\n data-size={size}\n className={cn(\n \"flex items-center [&>[data-slot=avatar]]:relative [&>[data-slot=avatar]]:z-0 [&>[data-slot=avatar]]:shrink-0 [&>[data-slot=avatar]]:ring-2 [&>[data-slot=avatar]]:ring-canvas [&>[data-slot=avatar]]:transition-[margin,z-index] hover:[&>[data-slot=avatar]]:z-10 data-[size=default]:gap-0 data-[size=default]:[&>[data-slot=avatar]]:-ml-2 data-[size=default]:[&>[data-slot=avatar]]:size-8 data-[size=lg]:gap-0 data-[size=lg]:[&>[data-slot=avatar]]:-ml-2.5 data-[size=lg]:[&>[data-slot=avatar]]:size-10 data-[size=sm]:gap-0 data-[size=sm]:[&>[data-slot=avatar]]:-ml-1.5 data-[size=sm]:[&>[data-slot=avatar]]:size-6 [&>[data-slot=avatar]:first-child]:ml-0\",\n className,\n )}\n role=\"group\"\n {...props}\n >\n {visibleAvatars}\n {overflowCount > 0 ? (\n <span\n data-slot=\"avatar-group-overflow\"\n className=\"relative z-0 inline-flex shrink-0 items-center justify-center rounded-full border-2 border-canvas bg-surface-muted font-medium text-text-supporting data-[size=default]:-ml-2 data-[size=default]:size-8 data-[size=default]:text-xs data-[size=lg]:-ml-2.5 data-[size=lg]:size-10 data-[size=lg]:text-sm data-[size=sm]:-ml-1.5 data-[size=sm]:size-6 data-[size=sm]:text-[0.625rem]\"\n aria-label={`${overflowCount} more ${overflowCount === 1 ? \"avatar\" : \"avatars\"}`}\n title={`${overflowCount} more ${overflowCount === 1 ? \"avatar\" : \"avatars\"}`}\n >\n +{overflowCount}\n </span>\n ) : null}\n </div>\n );\n}\n\nexport { AvatarGroup };\nexport type { AvatarGroupProps };\n","import * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"./utils\";\n\nconst badgeVariants = cva(\n \"inline-flex items-center rounded-md border px-1.5 py-0.5 text-[var(--ds-metadata)] font-medium leading-4 transition-colors\",\n {\n variants: {\n variant: {\n default: \"border-action bg-action text-action-foreground\",\n accent: \"border-selection-border bg-selection-background text-selection-foreground\",\n secondary: \"border-neutral-border bg-neutral-background text-neutral-foreground\",\n neutral: \"border-neutral-border bg-neutral-background text-neutral-foreground\",\n outline: \"border-border-default text-text-primary\",\n information: \"border-information-border bg-information-background text-information-foreground\",\n info: \"border-information-border bg-information-background text-information-foreground\",\n success: \"border-success-border bg-success-background text-success-foreground\",\n warning: \"border-warning-border bg-warning-background text-warning-foreground\",\n danger: \"border-danger-border bg-danger-background text-danger-foreground\",\n destructive: \"border-danger-border bg-danger-background text-danger-foreground\"\n }\n },\n defaultVariants: {\n variant: \"neutral\"\n }\n },\n);\n\nfunction Badge({\n className,\n variant,\n ...props\n}: React.ComponentProps<\"span\"> & VariantProps<typeof badgeVariants>) {\n return <span data-slot=\"badge\" className={cn(badgeVariants({ variant, className }))} {...props} />;\n}\n\nexport { Badge, badgeVariants };\n","import * as React from \"react\";\n\nimport { cn } from \"./utils\";\n\nconst CONSCIA_SYMBOL_PATH = [\n \"M171.225 63.8139L173.637 66.1116L203.794 34.4551L201.382 32.1575L171.225 63.8139Z\",\n \"M184.012 78.9693L185.769 81.8487L223.091 59.076L221.334 56.1966L184.012 78.9693Z\",\n \"M192.436 96.8858L193.417 100.222L235.362 87.8847L234.381 84.5488L192.436 96.8858Z\",\n \"M195.949 116.334L196.037 119.987L239.746 118.926L239.657 115.273L195.949 116.334Z\",\n \"M194.341 135.989L193.42 139.796L235.913 150.084L236.835 146.277L194.341 135.989Z\",\n \"M187.759 154.526L185.708 158.285L224.091 179.221L226.142 175.461L187.759 154.526Z\",\n \"M176.683 170.712L173.394 174.165L205.05 204.322L208.34 200.868L176.683 170.712Z\",\n \"M161.899 183.49L157.288 186.304L180.06 223.626L184.672 220.812L161.899 183.49Z\",\n \"M144.425 192.058L138.472 193.809L150.809 235.754L156.762 234.003L144.425 192.058Z\",\n \"M125.438 195.913L118.244 196.088L119.305 239.796L126.499 239.622L125.438 195.913Z\",\n \"M106.176 194.873L98.0421 192.903L87.754 235.397L95.8882 237.366L106.176 194.873Z\",\n \"M87.8408 189.056L79.3505 184.425L58.4147 222.808L66.905 227.439L87.8408 189.056Z\",\n \"M71.5444 178.838L63.5819 171.253L33.4252 202.91L41.3878 210.495L71.5444 178.838Z\",\n \"M58.2896 164.821L51.9185 154.379L14.5961 177.152L20.9672 187.593L58.2896 164.821Z\",\n \"M48.9443 147.836L45.1912 135.075L3.24659 147.412L6.99972 160.173L48.9443 147.836Z\",\n \"M44.1724 128.938L43.8283 114.759L0.119827 115.82L0.463868 129.998L44.1724 128.938Z\",\n \"M44.3613 109.352L47.8648 94.8809L5.37116 84.5928L1.86766 99.0635L44.3613 109.352Z\",\n \"M49.563 90.3812L56.9571 76.825L18.5742 55.8893L11.18 69.4455L49.563 90.3812Z\",\n \"M59.4839 73.314L70.4267 61.8269L38.7702 31.6703L27.8274 43.1574L59.4839 73.314Z\",\n \"M73.4951 59.3251L87.307 50.8976L64.5343 13.5752L50.7224 22.0027L73.4951 59.3251Z\",\n \"M90.6772 49.3891L106.414 44.7604L94.0775 2.81575L78.3402 7.44453L90.6772 49.3891Z\",\n \"M109.88 44.2086L126.426 43.8071L125.366 0.098614L108.82 0.500089L109.88 44.2086Z\",\n \"M129.802 44.1632L145.967 48.0768L156.255 5.58318L140.09 1.66954L129.802 44.1632Z\",\n \"M149.087 49.2798L163.709 57.2553L184.645 18.8723L170.023 10.8969L149.087 49.2798Z\",\n \"M152.448 160.384L141.06 167.332L154.089 188.685L165.477 181.736L152.448 160.384Z\",\n \"M140.881 167.41L128.103 171.168L135.161 195.165L147.939 191.407L140.881 167.41Z\",\n \"M127.834 171.202L114.653 171.522L115.26 196.528L128.441 196.209L127.834 171.202Z\",\n \"M114.192 171.456L101.624 168.413L95.738 192.724L108.306 195.767L114.192 171.456Z\",\n \"M100.907 168.109L89.889 162.1L77.9114 184.059L88.9296 190.069L100.907 168.109Z\",\n \"M88.9224 161.353L80.2035 153.047L62.9505 171.158L71.6694 179.464L88.9224 161.353Z\",\n \"M79.1143 151.631L73.1721 141.893L51.8195 154.921L57.7617 164.66L79.1143 151.631Z\",\n \"M72.2163 139.615L69.2075 129.385L45.2105 136.444L48.2193 146.673L72.2163 139.615Z\",\n \"M68.7593 126.163L68.5209 116.339L43.5147 116.946L43.7531 126.77L68.7593 126.163Z\",\n \"M69.0161 112.256L71.1176 103.576L46.8064 97.6899L44.7049 106.37L69.0161 112.256Z\",\n \"M72.979 98.9209L76.8146 91.8888L54.8552 79.9112L51.0196 86.9432L72.979 98.9209Z\",\n \"M80.3506 87.1414L85.2494 81.999L67.1383 64.746L62.2395 69.8884L80.3506 87.1414Z\",\n \"M90.5762 77.7753L95.9023 74.5255L82.8738 53.1729L77.5476 56.4227L90.5762 77.7753Z\",\n \"M102.889 71.4875L108.114 69.9508L101.056 45.9537L95.831 47.4905L102.889 71.4875Z\",\n \"M116.381 68.7043L121.119 68.5894L120.513 43.5832L115.775 43.6981L116.381 68.7043Z\",\n \"M130.08 69.5886L134.092 70.56L139.978 46.2488L135.966 45.2775L130.08 69.5886Z\",\n \"M143.01 74.0389L146.183 75.7697L158.161 53.8103L154.988 52.0795L143.01 74.0389Z\",\n \"M154.273 81.705L156.588 83.9108L173.841 65.7997L171.526 63.5939L154.273 81.705Z\",\n \"M163.102 92.0197L164.599 94.4735L185.952 81.445L184.455 78.9911L163.102 92.0197Z\",\n \"M168.91 104.243L169.655 106.775L193.652 99.7164L192.907 97.1844L168.91 104.243Z\",\n \"M171.325 117.515L171.386 120.001L196.392 119.394L196.331 116.909L171.325 117.515Z\",\n \"M170.21 130.922L169.644 133.264L193.955 139.15L194.522 136.808L170.21 130.922Z\",\n \"M165.673 143.549L164.523 145.658L186.482 157.636L187.633 155.527L165.673 143.549Z\",\n \"M158.032 154.558L156.355 156.318L174.467 173.571L176.143 171.811L158.032 154.558Z\",\n].join(\" \");\n\ntype BrandIconProps = React.ComponentPropsWithoutRef<\"svg\">;\n\nfunction BrandIcon({\n \"aria-label\": ariaLabel,\n className,\n ...props\n}: BrandIconProps) {\n return (\n <svg\n data-slot=\"brand-icon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"240\"\n height=\"240\"\n viewBox=\"0 0 240 240\"\n fill=\"none\"\n focusable=\"false\"\n role={ariaLabel ? \"img\" : undefined}\n aria-hidden={ariaLabel ? undefined : true}\n aria-label={ariaLabel}\n className={cn(\"size-6 shrink-0 text-text-primary dark:text-white\", className)}\n {...props}\n >\n <path d={CONSCIA_SYMBOL_PATH} fill=\"currentColor\" />\n </svg>\n );\n}\n\nexport { BrandIcon };\nexport type { BrandIconProps };\n","import * as React from \"react\";\n\nimport { cn } from \"./utils\";\n\nconst CONSCIA_WORDMARK_PATH = [\n \"M485.154 47.9722V40.929H495.867V90.529H485.154V83.3866C481.086 89.041 475.333 91.8186 467.794 91.8186C460.949 91.8186 455.195 89.3386 450.334 84.2794C445.474 79.2202 443.093 72.9706 443.093 65.729C443.093 58.3882 445.474 52.2378 450.334 47.1786C455.195 42.1194 460.949 39.6394 467.794 39.6394C475.333 39.6394 481.086 42.417 485.154 47.9722ZM458.27 77.137C461.246 80.113 465.016 81.601 469.48 81.601C473.944 81.601 477.714 80.113 480.69 77.137C483.666 74.0618 485.154 70.2922 485.154 65.729C485.154 61.1658 483.666 57.3962 480.69 54.4202C477.714 51.345 473.944 49.857 469.48 49.857C465.016 49.857 461.246 51.345 458.27 54.4202C455.294 57.3962 453.806 61.1658 453.806 65.729C453.806 70.2922 455.294 74.0618 458.27 77.137Z\",\n \"M436.308 31.5049C433.63 34.1833 429.463 34.1833 426.686 31.5049C424.007 28.7273 424.007 24.5609 426.686 21.8825C429.364 19.1049 433.729 19.1049 436.407 21.8825C439.086 24.5609 439.086 28.7273 436.308 31.5049ZM436.903 90.5288H426.19V40.9289H436.903V90.5288Z\",\n \"M399.598 91.8186C392.158 91.8186 385.909 89.3386 380.85 84.2794C375.89 79.2202 373.41 73.0698 373.41 65.729C373.41 58.289 375.89 52.1386 380.85 47.1786C385.909 42.1194 392.158 39.6394 399.598 39.6394C409.221 39.6394 417.752 44.5994 421.72 52.4362L412.494 57.793C410.213 53.0314 405.451 50.1546 399.499 50.1546C395.134 50.1546 391.464 51.6426 388.488 54.6186C385.611 57.5946 384.123 61.265 384.123 65.729C384.123 70.193 385.611 73.8634 388.488 76.8394C391.464 79.8154 395.134 81.3034 399.499 81.3034C405.352 81.3034 410.312 78.3274 412.693 73.665L421.918 78.9226C417.653 86.8586 409.221 91.8186 399.598 91.8186Z\",\n \"M344.816 54.6186C344.816 57.8922 348.982 59.5786 354.141 61.0666C361.779 62.753 371.699 65.9274 371.501 76.5418C371.501 81.3034 369.616 85.073 365.945 87.7514C362.275 90.4298 357.712 91.8186 352.157 91.8186C342.336 91.8186 335.094 87.4538 331.92 80.2122L341.146 74.8554C342.832 79.617 346.502 81.9978 352.157 81.9978C357.811 81.9978 360.589 80.113 360.589 76.4426C360.589 73.2682 356.422 71.3834 351.165 70.0938C343.725 68.209 333.706 65.233 333.904 54.817C333.904 50.2538 335.59 46.5834 339.062 43.8058C342.534 41.0282 346.899 39.6394 352.058 39.6394C360.291 39.6394 366.937 43.5082 370.409 49.9562L361.382 55.0154C359.696 51.2458 356.522 49.361 352.058 49.361C347.99 49.361 344.816 51.1466 344.816 54.6186Z\",\n \"M308.082 39.6394C319.49 39.6394 327.129 47.377 327.129 60.0746V90.529H316.415V61.1658C316.415 53.7258 312.149 49.6586 305.305 49.6586C297.765 49.6586 292.706 54.321 292.706 63.9434V90.529H281.993V40.929H292.706V47.2778C295.98 42.2186 301.039 39.6394 308.082 39.6394Z\",\n \"M249.588 91.8186C242.347 91.8186 236.097 89.3386 231.038 84.2794C225.979 79.2202 223.399 73.0698 223.399 65.729C223.399 58.3882 225.979 52.2378 231.038 47.1786C236.097 42.1194 242.347 39.6394 249.588 39.6394C256.929 39.6394 263.079 42.1194 268.139 47.1786C273.198 52.2378 275.777 58.3882 275.777 65.729C275.777 73.0698 273.198 79.2202 268.139 84.2794C263.079 89.3386 256.929 91.8186 249.588 91.8186ZM238.577 76.9386C241.553 79.9146 245.223 81.4026 249.588 81.4026C253.953 81.4026 257.623 79.9146 260.599 76.9386C263.575 73.9626 265.063 70.193 265.063 65.729C265.063 61.265 263.575 57.4954 260.599 54.5194C257.623 51.5434 253.953 50.0554 249.588 50.0554C245.223 50.0554 241.553 51.5434 238.577 54.5194C235.601 57.4954 234.113 61.265 234.113 65.729C234.113 70.193 235.601 73.9626 238.577 76.9386Z\",\n \"M191.106 91.8184C180.69 91.8184 171.96 88.3464 165.116 81.5017C158.271 74.5577 154.799 66.0265 154.799 55.8089C154.799 45.5913 158.271 37.0601 165.116 30.2153C171.96 23.2713 180.69 19.7993 191.106 19.7993C203.704 19.7993 215.013 26.1481 220.965 36.3657L211.045 42.1193C207.375 35.2745 199.836 30.9097 191.106 30.9097C183.666 30.9097 177.714 33.2905 173.052 37.9529C168.488 42.6153 166.207 48.5673 166.207 55.8089C166.207 63.0505 168.488 69.0025 173.052 73.6649C177.714 78.3273 183.666 80.7081 191.106 80.7081C199.836 80.7081 207.474 76.3433 211.045 69.4985L220.965 75.1529C218.088 80.2121 213.922 84.2793 208.565 87.3544C203.308 90.3304 197.455 91.8184 191.106 91.8184Z\",\n \"M80.3374 30.1243L81.463 31.1965L95.536 16.4235L94.4105 15.3512L80.3374 30.1243Z\",\n \"M86.3032 37.1965L87.1231 38.5402L104.54 27.913L103.72 26.5693L86.3032 37.1965Z\",\n \"M90.2339 45.5579L90.6918 47.1146L110.266 41.3573L109.808 39.8006L90.2339 45.5579Z\",\n \"M91.8765 54.6333L91.9179 56.3381L112.315 55.8431L112.274 54.1384L91.8765 54.6333Z\",\n \"M91.1245 63.8054L90.6944 65.582L110.525 70.3832L110.955 68.6065L91.1245 63.8054Z\",\n \"M88.0532 72.4561L87.0963 74.2104L105.008 83.9804L105.965 82.2261L88.0532 72.4561Z\",\n \"M82.8853 80.0098L81.3501 81.6213L96.1232 95.6944L97.6583 94.0829L82.8853 80.0098Z\",\n \"M75.9854 85.9727L73.8334 87.2857L84.4606 104.703L86.6126 103.39L75.9854 85.9727Z\",\n \"M67.8301 89.9714L65.0521 90.7885L70.8094 110.363L73.5873 109.546L67.8301 89.9714Z\",\n \"M58.9707 91.7705L55.6136 91.852L56.1085 112.249L59.4656 112.168L58.9707 91.7705Z\",\n \"M49.9814 91.2849L46.1855 90.3659L41.3844 110.196L45.1803 111.115L49.9814 91.2849Z\",\n \"M41.4253 88.5703L37.4631 86.4092L27.6931 104.321L31.6553 106.482L41.4253 88.5703Z\",\n \"M33.8188 83.8022L30.103 80.2624L16.0299 95.0355L19.7458 98.5753L33.8188 83.8022Z\",\n \"M27.6348 77.2605L24.6616 72.3878L7.24451 83.015L10.2177 87.8878L27.6348 77.2605Z\",\n \"M23.271 69.334L21.5195 63.3792L1.94538 69.1364L3.69684 75.0912L23.271 69.334Z\",\n \"M21.0474 60.5151L20.8868 53.8985L0.489511 54.3934L0.650063 61.0101L21.0474 60.5151Z\",\n \"M21.1338 51.3752L22.7688 44.6222L2.93837 39.8211L1.30341 46.5741L21.1338 51.3752Z\",\n \"M23.5605 42.522L27.0111 36.1957L9.09909 26.4258L5.6485 32.752L23.5605 42.522Z\",\n \"M28.1909 34.5574L33.2976 29.1967L18.5246 15.1236L13.4179 20.4843L28.1909 34.5574Z\",\n \"M34.7305 28.0295L41.176 24.0967L30.5488 6.67961L24.1032 10.6124L34.7305 28.0295Z\",\n \"M42.749 23.3923L50.0931 21.2323L44.3358 1.65808L36.9918 3.81818L42.749 23.3923Z\",\n \"M51.7109 20.9749L59.4323 20.7875L58.9373 0.390197L51.216 0.577552L51.7109 20.9749Z\",\n \"M61.0078 20.9536L68.5512 22.78L73.3523 2.9496L65.8089 1.12323L61.0078 20.9536Z\",\n \"M70.0063 23.3413L76.83 27.0632L86.6 9.15115L79.7764 5.42926L70.0063 23.3413Z\",\n \"M71.5737 75.1902L66.2594 78.4328L72.3393 88.3974L77.6537 85.1547L71.5737 75.1902Z\",\n \"M66.1782 78.4688L60.2153 80.2226L63.5091 91.4212L69.472 89.6674L66.1782 78.4688Z\",\n \"M60.0874 80.2388L53.9362 80.388L54.2193 92.0576L60.3706 91.9083L60.0874 80.2388Z\",\n \"M53.7231 80.3569L47.8581 78.937L45.1113 90.2822L50.9764 91.7021L53.7231 80.3569Z\",\n \"M47.5229 78.7954L42.3811 75.9908L36.7916 86.2386L41.9334 89.0431L47.5229 78.7954Z\",\n \"M41.9287 75.6421L37.8599 71.7661L29.8085 80.2179L33.8773 84.0939L41.9287 75.6421Z\",\n \"M37.3511 71.1057L34.578 66.561L24.6135 72.641L27.3865 77.1857L37.3511 71.1057Z\",\n \"M34.1333 65.498L32.7292 60.7242L21.5306 64.0181L22.9347 68.7918L34.1333 65.498Z\",\n \"M32.52 59.2202L32.4088 54.6358L20.7392 54.9189L20.8505 59.5034L32.52 59.2202Z\",\n \"M32.6411 52.7302L33.6218 48.6797L22.2766 45.9329L21.2959 49.9834L32.6411 52.7302Z\",\n \"M34.4888 46.5073L36.2787 43.2257L26.031 37.6361L24.241 40.9178L34.4888 46.5073Z\",\n \"M37.9297 41.0103L40.2158 38.6105L31.7639 30.5591L29.4779 32.9589L37.9297 41.0103Z\",\n \"M42.7012 36.6394L45.1867 35.1228L39.1067 25.1583L36.6212 26.6749L42.7012 36.6394Z\",\n \"M48.4478 33.7051L50.8861 32.9879L47.5923 21.7893L45.1539 22.5064L48.4478 33.7051Z\",\n \"M54.7437 32.4062L56.9548 32.3526L56.6716 20.683L54.4605 20.7367L54.7437 32.4062Z\",\n \"M61.1377 32.8188L63.01 33.2721L65.7568 21.9269L63.8845 21.4736L61.1377 32.8188Z\",\n \"M67.1694 34.8958L68.6503 35.7035L74.2398 25.4557L72.759 24.648L67.1694 34.8958Z\",\n \"M72.4282 38.4731L73.5088 39.5025L81.5602 31.0507L80.4796 30.0213L72.4282 38.4731Z\",\n \"M76.5459 43.2869L77.2446 44.432L87.2092 38.352L86.5104 37.2069L76.5459 43.2869Z\",\n \"M79.2554 48.9905L79.6029 50.1721L90.8015 46.8783L90.454 45.6967L79.2554 48.9905Z\",\n \"M80.3833 55.1848L80.4114 56.3446L92.081 56.0615L92.0528 54.9017L80.3833 55.1848Z\",\n \"M79.8657 61.4412L79.6012 62.5339L90.9464 65.2807L91.2109 64.188L79.8657 61.4412Z\",\n \"M77.7466 67.3337L77.2096 68.3182L87.4573 73.9077L87.9943 72.9233L77.7466 67.3337Z\",\n \"M74.1807 72.4714L73.3984 73.2926L81.8502 81.344L82.6325 80.5228L74.1807 72.4714Z\",\n].join(\" \");\n\ntype BrandWordmarkProps = React.ComponentPropsWithoutRef<\"svg\">;\n\nfunction BrandWordmark({\n \"aria-label\": ariaLabel,\n className,\n ...props\n}: BrandWordmarkProps) {\n return (\n <svg\n data-slot=\"brand-wordmark\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"496\"\n height=\"113\"\n viewBox=\"0 0 496 113\"\n fill=\"none\"\n focusable=\"false\"\n role={ariaLabel ? \"img\" : undefined}\n aria-hidden={ariaLabel ? undefined : true}\n aria-label={ariaLabel}\n className={cn(\n \"h-auto w-36 shrink-0 text-text-primary dark:text-white\",\n className,\n )}\n {...props}\n >\n <path d={CONSCIA_WORDMARK_PATH} fill=\"currentColor\" />\n </svg>\n );\n}\n\nexport { BrandWordmark };\nexport type { BrandWordmarkProps };\n","export { SwitchRoot as Root } from \"./root/SwitchRoot.mjs\";\nexport { SwitchThumb as Thumb } from \"./thumb/SwitchThumb.mjs\";","'use client';\n\nimport * as React from 'react';\nimport { useControlled } from '@base-ui/utils/useControlled';\nimport { useMergedRefs } from '@base-ui/utils/useMergedRefs';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { visuallyHidden, visuallyHiddenInput } from '@base-ui/utils/visuallyHidden';\nimport { EMPTY_OBJECT } from '@base-ui/utils/empty';\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\nimport { useBaseUiId } from \"../../internals/useBaseUiId.mjs\";\nimport { useButton } from \"../../internals/use-button/index.mjs\";\nimport { SwitchRootContext } from \"./SwitchRootContext.mjs\";\nimport { stateAttributesMapping } from \"../stateAttributesMapping.mjs\";\nimport { dispatchClickWithModifiers } from \"../../utils/dispatchClickWithModifiers.mjs\";\nimport { useFieldRootContext } from \"../../internals/field-root-context/FieldRootContext.mjs\";\nimport { useRegisterFieldControl } from \"../../internals/field-register-control/useRegisterFieldControl.mjs\";\nimport { useFormContext } from \"../../internals/form-context/FormContext.mjs\";\nimport { useLabelableContext } from \"../../internals/labelable-provider/LabelableContext.mjs\";\nimport { useAriaLabelledBy } from \"../../internals/labelable-provider/useAriaLabelledBy.mjs\";\nimport { useLabelableId } from \"../../internals/labelable-provider/useLabelableId.mjs\";\nimport { createChangeEventDetails } from \"../../internals/createBaseUIEventDetails.mjs\";\nimport { REASONS } from \"../../internals/reasons.mjs\";\nimport { useValueChanged } from \"../../internals/useValueChanged.mjs\";\n\n/**\n * Represents the switch itself.\n * Renders a `<span>` element and a hidden `<input>` beside.\n *\n * Documentation: [Base UI Switch](https://base-ui.com/react/components/switch)\n */\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport const SwitchRoot = /*#__PURE__*/React.forwardRef(function SwitchRoot(componentProps, forwardedRef) {\n const {\n checked: checkedProp,\n className,\n defaultChecked,\n 'aria-labelledby': ariaLabelledByProp,\n form,\n id: idProp,\n inputRef: externalInputRef,\n name: nameProp,\n nativeButton = false,\n onCheckedChange,\n readOnly = false,\n required = false,\n disabled: disabledProp = false,\n render,\n uncheckedValue,\n value,\n style,\n ...elementProps\n } = componentProps;\n const {\n clearErrors\n } = useFormContext();\n const {\n state: fieldState,\n setTouched,\n setDirty,\n validityData,\n setFilled,\n setFocused,\n validationMode,\n disabled: fieldDisabled,\n name: fieldName,\n validation\n } = useFieldRootContext();\n const {\n labelId\n } = useLabelableContext();\n const disabled = fieldDisabled || disabledProp;\n const name = fieldName ?? nameProp;\n const inputRef = React.useRef(null);\n const handleInputRef = useMergedRefs(inputRef, externalInputRef, validation.inputRef);\n const switchRef = React.useRef(null);\n const id = useBaseUiId();\n const controlId = useLabelableId({\n id: idProp,\n implicit: false,\n controlRef: switchRef\n });\n const hiddenInputId = nativeButton ? undefined : controlId;\n const [checked, setCheckedState] = useControlled({\n controlled: checkedProp,\n default: Boolean(defaultChecked),\n name: 'Switch',\n state: 'checked'\n });\n useRegisterFieldControl(switchRef, id, checked, undefined, !disabled, nameProp);\n useIsoLayoutEffect(() => {\n if (inputRef.current) {\n setFilled(inputRef.current.checked);\n }\n }, [setFilled]);\n useValueChanged(checked, () => {\n clearErrors(name);\n setDirty(checked !== validityData.initialValue);\n setFilled(checked);\n validation.change(checked);\n });\n const {\n getButtonProps,\n buttonRef\n } = useButton({\n disabled,\n native: nativeButton\n });\n const ariaLabelledBy = useAriaLabelledBy(ariaLabelledByProp, labelId, inputRef, !nativeButton, hiddenInputId);\n const rootProps = {\n id: nativeButton ? controlId : id,\n role: 'switch',\n 'aria-checked': checked,\n 'aria-readonly': readOnly || undefined,\n 'aria-required': required || undefined,\n 'aria-labelledby': ariaLabelledBy,\n onFocus() {\n if (!disabled) {\n setFocused(true);\n }\n },\n onBlur() {\n const element = inputRef.current;\n if (!element || disabled) {\n return;\n }\n setTouched(true);\n setFocused(false);\n if (validationMode === 'onBlur') {\n validation.commit(element.checked);\n }\n },\n onClick(event) {\n if (readOnly || disabled) {\n return;\n }\n event.preventDefault();\n const input = inputRef.current;\n if (!input) {\n return;\n }\n dispatchClickWithModifiers(input, event);\n }\n };\n const inputProps = {\n ...validation.getValidationProps(disabled),\n checked,\n disabled,\n form,\n id: hiddenInputId,\n name,\n required,\n style: name ? visuallyHiddenInput : visuallyHidden,\n tabIndex: -1,\n type: 'checkbox',\n 'aria-hidden': true,\n ref: handleInputRef,\n onChange(event) {\n // Workaround for https://github.com/react/react/issues/9023\n if (event.nativeEvent.defaultPrevented) {\n return;\n }\n if (readOnly) {\n event.preventDefault();\n return;\n }\n const nextChecked = event.currentTarget.checked;\n const eventDetails = createChangeEventDetails(REASONS.none, event.nativeEvent);\n onCheckedChange?.(nextChecked, eventDetails);\n if (eventDetails.isCanceled) {\n return;\n }\n setCheckedState(nextChecked);\n },\n onClick(event) {\n // The click dispatched from the root's `onClick` is an implementation detail\n // and must not reach ancestors, which already receive the original click.\n event.stopPropagation();\n },\n onFocus() {\n switchRef.current?.focus();\n },\n // React <19 sets an empty value if `undefined` is passed explicitly\n // To avoid this, we only set the value if it's defined\n ...(value !== undefined ? {\n value\n } : EMPTY_OBJECT)\n };\n const state = React.useMemo(() => ({\n ...fieldState,\n checked,\n disabled,\n readOnly,\n required\n }), [fieldState, checked, disabled, readOnly, required]);\n const element = useRenderElement('span', componentProps, {\n state,\n ref: [forwardedRef, switchRef, buttonRef],\n props: [rootProps, elementProps, getButtonProps, props => validation.getValidationProps(disabled, props)],\n stateAttributesMapping\n });\n return /*#__PURE__*/_jsxs(SwitchRootContext.Provider, {\n value: state,\n children: [element, !checked && name && uncheckedValue !== undefined && /*#__PURE__*/_jsx(\"input\", {\n type: \"hidden\",\n form: form,\n name: name,\n value: uncheckedValue,\n disabled: disabled\n }), /*#__PURE__*/_jsx(\"input\", {\n ...inputProps,\n suppressHydrationWarning: true\n })]\n });\n});\nif (process.env.NODE_ENV !== \"production\") SwitchRoot.displayName = \"SwitchRoot\";","'use client';\n\nimport _formatErrorMessage from \"@base-ui/utils/formatErrorMessage\";\nimport * as React from 'react';\nexport const SwitchRootContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== \"production\") SwitchRootContext.displayName = \"SwitchRootContext\";\nexport function useSwitchRootContext() {\n const context = React.useContext(SwitchRootContext);\n if (context === undefined) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? 'Base UI: SwitchRootContext is missing. Switch parts must be placed within <Switch.Root>.' : _formatErrorMessage(63));\n }\n return context;\n}","import { fieldValidityMapping } from \"../internals/field-constants/constants.mjs\";\nexport const stateAttributesMapping = {\n ...fieldValidityMapping,\n checked(value) {\n if (value) {\n return {\n 'data-checked': ''\n };\n }\n return {\n 'data-unchecked': ''\n };\n }\n};","'use client';\n\nimport * as React from 'react';\nimport { useSwitchRootContext } from \"../root/SwitchRootContext.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\nimport { stateAttributesMapping } from \"../stateAttributesMapping.mjs\";\n\n/**\n * The movable part of the switch that indicates whether the switch is on or off.\n * Renders a `<span>`.\n *\n * Documentation: [Base UI Switch](https://base-ui.com/react/components/switch)\n */\nexport const SwitchThumb = /*#__PURE__*/React.forwardRef(function SwitchThumb(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n ...elementProps\n } = componentProps;\n const state = useSwitchRootContext();\n return useRenderElement('span', componentProps, {\n state,\n ref: forwardedRef,\n stateAttributesMapping,\n props: elementProps\n });\n});\nif (process.env.NODE_ENV !== \"production\") SwitchThumb.displayName = \"SwitchThumb\";","\"use client\";\nimport * as React from \"react\";\nimport { Switch as BaseSwitch } from \"@base-ui/react/switch\";\nimport { cn } from \"./utils\";\n\ntype SwitchProps = Omit<React.ComponentProps<typeof BaseSwitch.Root>, \"children\"> & {\n size?: \"sm\" | \"default\";\n /** The text shown in the track when the switch is checked. */\n onLabel?: React.ReactNode;\n /** The text shown in the track when the switch is unchecked. */\n offLabel?: React.ReactNode;\n};\n\ntype LabeledSwitchProps = Omit<SwitchProps, \"onLabel\" | \"offLabel\"> & {\n onLabel?: React.ReactNode;\n offLabel?: React.ReactNode;\n};\n\nfunction Switch({\n className,\n size = \"default\",\n onLabel,\n offLabel,\n ...props\n}: SwitchProps) {\n const labeled = onLabel != null || offLabel != null;\n\n return (\n <BaseSwitch.Root\n data-slot=\"switch\"\n data-size={size}\n data-labeled={labeled ? \"true\" : undefined}\n className={cn(\n \"peer group/switch inline-flex shrink-0 items-center border border-transparent shadow-xs transition-all outline-none focus-visible:border-focus focus-visible:ring-[3px] focus-visible:ring-focus/50 disabled:cursor-not-allowed disabled:opacity-50\",\n labeled\n ? \"relative rounded-[0.625rem] p-0.5 data-[size=default]:h-6 data-[size=default]:w-[5.5rem] data-[size=default]:[--switch-thumb-travel:4.25rem] data-[size=sm]:h-5 data-[size=sm]:w-[5.5rem] data-[size=sm]:[--switch-thumb-travel:4.5rem] data-checked:bg-action data-unchecked:bg-control-border\"\n : \"rounded-full data-[size=default]:h-[1.15rem] data-[size=default]:w-8 data-[size=sm]:h-3.5 data-[size=sm]:w-6 data-checked:bg-action data-unchecked:bg-control-border\",\n className,\n )}\n {...props}\n >\n {labeled ? (\n <>\n <span\n aria-hidden=\"true\"\n data-slot=\"switch-on-label\"\n className=\"pointer-events-none absolute inset-y-0.5 left-0 flex w-1/2 translate-x-1 items-center justify-center overflow-hidden px-0.5 text-[0.5625rem] font-semibold leading-none tracking-[0.02em] text-action-foreground transition-[opacity,transform] group-data-checked/switch:opacity-100 group-data-unchecked/switch:opacity-0\"\n >\n {onLabel ?? \"ON\"}\n </span>\n <span\n aria-hidden=\"true\"\n data-slot=\"switch-off-label\"\n className=\"pointer-events-none absolute inset-y-0.5 right-0 flex w-1/2 -translate-x-1 items-center justify-center overflow-hidden px-0.5 text-[0.5625rem] font-semibold leading-none tracking-[0.02em] text-text-supporting transition-[opacity,transform] group-data-checked/switch:opacity-0 group-data-unchecked/switch:opacity-100\"\n >\n {offLabel ?? \"OFF\"}\n </span>\n </>\n ) : null}\n <BaseSwitch.Thumb\n data-slot=\"switch-thumb\"\n className={cn(\n \"pointer-events-none block rounded-full bg-canvas transition-transform\",\n labeled\n ? \"absolute top-1/2 left-0.5 z-10 -translate-y-1/2 data-checked:translate-x-[var(--switch-thumb-travel)] data-unchecked:translate-x-0 group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3\"\n : \"group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 data-checked:translate-x-[calc(100%-2px)] data-unchecked:translate-x-0\",\n )}\n />\n </BaseSwitch.Root>\n );\n}\n\nfunction LabeledSwitch({ onLabel = \"ON\", offLabel = \"OFF\", ...props }: LabeledSwitchProps) {\n return <Switch {...props} onLabel={onLabel} offLabel={offLabel} />;\n}\n\nexport type { LabeledSwitchProps, SwitchProps };\nexport { LabeledSwitch, Switch };\n","import * as React from \"react\";\n\nimport { cn } from \"./utils\";\n\nfunction Textarea({ className, ...props }: React.ComponentProps<\"textarea\">) {\n return (\n <textarea\n data-slot=\"textarea\"\n className={cn(\"ds-type-control min-h-28 w-full rounded-[var(--ds-field-control-radius)] border border-control-border bg-surface-control px-[var(--ds-field-control-padding-x)] py-3 outline-none transition-colors placeholder:text-text-supporting focus-visible:border-focus focus-visible:ring-[3px] focus-visible:ring-focus/50 aria-invalid:border-danger aria-invalid:ring-danger/20 dark:aria-invalid:ring-danger/40 disabled:cursor-not-allowed disabled:opacity-50\", className)}\n {...props}\n />\n );\n}\n\nexport { Textarea };\n","import * as React from \"react\";\n\nimport { Button, IconButton } from \"./button\";\nimport {\n Card,\n CardContent,\n CardDescription,\n CardFooter,\n CardHeader,\n CardTitle,\n} from \"./card\";\nimport { Checkbox } from \"./checkbox\";\nimport { Input } from \"./input\";\nimport {\n Select,\n SelectContent,\n SelectGroup,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from \"./select\";\nimport { Switch } from \"./switch\";\nimport {\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableHeader,\n TableRow,\n} from \"./table\";\nimport { Textarea } from \"./textarea\";\nimport { cn } from \"./utils\";\n\n/**\n * Temporary Admin UI migration aliases. New product code should import the\n * clean primitive names from @conscia-labs/design-system.\n */\nconst ConsciaButton = Button;\n\nconst ConsciaIconButton = IconButton;\n\nconst ConsciaCard = Card;\nconst ConsciaCardContent = CardContent;\nconst ConsciaCardDescription = CardDescription;\n\nfunction ConsciaCardHeader({\n actionRight,\n className,\n children,\n ...props\n}: React.ComponentProps<typeof CardHeader> & {\n actionRight?: React.ReactNode;\n}) {\n if (!actionRight) {\n return (\n <CardHeader className={className} {...props}>\n {children}\n </CardHeader>\n );\n }\n\n return (\n <CardHeader\n className={cn(\n \"grid grid-cols-[minmax(0,1fr)_auto] items-start gap-4\",\n className,\n )}\n {...props}\n >\n <div className=\"grid gap-2\">{children}</div>\n <div className=\"justify-self-end\">{actionRight}</div>\n </CardHeader>\n );\n}\n\nconst ConsciaCardTitle = CardTitle;\nconst ConsciaCardFooter = CardFooter;\nconst ConsciaCheckbox = Checkbox;\nconst ConsciaInput = Input;\nconst ConsciaSwitch = Switch;\nconst ConsciaTextarea = Textarea;\nconst ConsciaSelect = Select;\nconst ConsciaSelectContent = SelectContent;\nconst ConsciaSelectGroup = SelectGroup;\nconst ConsciaSelectItem = SelectItem;\nconst ConsciaSelectTrigger = SelectTrigger;\nconst ConsciaSelectValue = SelectValue;\nconst ConsciaTable = Table;\nconst ConsciaTableBody = TableBody;\nconst ConsciaTableCell = TableCell;\nconst ConsciaTableHeader = TableHeader;\nconst ConsciaTableHead = TableHead;\nconst ConsciaTableRow = TableRow;\n\nexport {\n ConsciaButton,\n ConsciaCard,\n ConsciaCardContent,\n ConsciaCardDescription,\n ConsciaCardFooter,\n ConsciaCardHeader,\n ConsciaCardTitle,\n ConsciaCheckbox,\n ConsciaIconButton,\n ConsciaInput,\n ConsciaSwitch,\n ConsciaTextarea,\n ConsciaSelect,\n ConsciaSelectContent,\n ConsciaSelectGroup,\n ConsciaSelectItem,\n ConsciaSelectTrigger,\n ConsciaSelectValue,\n ConsciaTable,\n ConsciaTableBody,\n ConsciaTableCell,\n ConsciaTableHeader,\n ConsciaTableHead,\n ConsciaTableRow,\n};\n","import * as React from \"react\";\n\nimport { cn } from \"./utils\";\n\nfunction Field({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"field\"\n className={cn(\"grid gap-[var(--ds-field-label-gap)]\", className)}\n {...props}\n />\n );\n}\n\nfunction FieldGroup({\n className,\n ...props\n}: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"field-group\"\n className={cn(\"grid gap-[var(--ds-field-gap)]\", className)}\n {...props}\n />\n );\n}\n\nfunction FieldLabel({\n className,\n ...props\n}: React.ComponentProps<\"label\">) {\n return (\n <label\n data-slot=\"field-label\"\n className={cn(\"ds-type-label text-text-primary\", className)}\n {...props}\n />\n );\n}\n\nfunction FieldDescription({\n className,\n ...props\n}: React.ComponentProps<\"p\">) {\n return (\n <p\n data-slot=\"field-description\"\n className={cn(\"ds-type-metadata mt-[var(--ds-field-message-gap)] text-text-supporting\", className)}\n {...props}\n />\n );\n}\n\nfunction FieldError({\n className,\n ...props\n}: React.ComponentProps<\"p\">) {\n return (\n <p\n data-slot=\"field-error\"\n className={cn(\"ds-type-metadata mt-[var(--ds-field-message-gap)] font-medium text-danger-foreground\", className)}\n {...props}\n />\n );\n}\n\nexport { Field, FieldDescription, FieldError, FieldGroup, FieldLabel };\n","import * as React from \"react\";\nimport { XIcon } from \"lucide-react\";\n\nimport { IconButton } from \"./button\";\nimport { cn } from \"./utils\";\n\ntype FilterChipProps = React.ComponentProps<\"div\"> & {\n label: React.ReactNode;\n onRemove?: () => void;\n removeLabel?: string;\n value?: React.ReactNode;\n};\n\nfunction FilterChip({\n className,\n label,\n onRemove,\n removeLabel,\n value,\n ...props\n}: FilterChipProps) {\n const fallbackRemoveLabel = typeof label === \"string\" ? `Remove ${label} filter` : \"Remove filter\";\n\n return (\n <div\n data-slot=\"filter-chip\"\n className={cn(\n \"inline-flex min-w-0 max-w-full items-center gap-1 rounded-full border border-border-default bg-surface-muted px-2 py-1 text-sm text-text-primary\",\n className,\n )}\n {...props}\n >\n <span className=\"shrink-0 text-text-supporting\">{label}</span>\n {value !== undefined ? <span className=\"min-w-0 truncate font-medium\">{value}</span> : null}\n {onRemove ? (\n <IconButton\n type=\"button\"\n size=\"sm\"\n variant=\"ghost\"\n aria-label={removeLabel ?? fallbackRemoveLabel}\n onClick={onRemove}\n className=\"-mr-1 size-5 rounded-full text-text-supporting hover:bg-surface-control-hover hover:text-text-primary\"\n >\n <XIcon aria-hidden=\"true\" className=\"size-3\" />\n </IconButton>\n ) : null}\n </div>\n );\n}\n\nexport { FilterChip };\nexport type { FilterChipProps };\n","\"use client\";\n\nimport * as React from \"react\";\n\nimport {\n Select,\n SelectContent,\n SelectGroup,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from \"./select\";\nimport { cn } from \"./utils\";\n\ntype FormSelectOption = {\n value: string;\n label: React.ReactNode;\n disabled?: boolean;\n};\n\ntype FormSelectProps = {\n id?: string;\n name?: string;\n value?: string;\n defaultValue?: string;\n required?: boolean;\n disabled?: boolean;\n placeholder?: string;\n options: FormSelectOption[];\n className?: string;\n triggerClassName?: string;\n contentClassName?: string;\n onValueChange?: (value: string) => void;\n onClick?: React.MouseEventHandler<HTMLDivElement>;\n \"aria-label\"?: string;\n};\n\nconst emptyValue = \"__conscia_empty_select_value__\";\n\nfunction toSelectValue(value: string | undefined) {\n if (value === undefined) {\n return undefined;\n }\n\n return value === \"\" ? emptyValue : value;\n}\n\nfunction fromSelectValue(value: string) {\n return value === emptyValue ? \"\" : value;\n}\n\nfunction FormSelect({\n name,\n id,\n value,\n defaultValue,\n required,\n disabled,\n placeholder,\n options,\n className,\n triggerClassName,\n contentClassName,\n onValueChange,\n onClick,\n \"aria-label\": ariaLabel,\n}: FormSelectProps) {\n const [internalValue, setInternalValue] = React.useState(defaultValue ?? \"\");\n const currentValue = value ?? internalValue;\n\n function handleValueChange(nextValue: string) {\n const actualValue = fromSelectValue(nextValue);\n\n if (value === undefined) {\n setInternalValue(actualValue);\n }\n\n onValueChange?.(actualValue);\n }\n\n return (\n <div className={cn(\"min-w-0\", className)} onClick={onClick}>\n <Select\n name={name}\n value={toSelectValue(currentValue)}\n required={required}\n disabled={disabled}\n onValueChange={handleValueChange}\n >\n <SelectTrigger id={id} aria-label={ariaLabel} className={triggerClassName}>\n <SelectValue placeholder={placeholder} />\n </SelectTrigger>\n <SelectContent className={contentClassName}>\n <SelectGroup>\n {options.map((option) => (\n <SelectItem\n key={option.value}\n value={toSelectValue(option.value) ?? emptyValue}\n disabled={option.disabled}\n >\n {option.label}\n </SelectItem>\n ))}\n </SelectGroup>\n </SelectContent>\n </Select>\n </div>\n );\n}\n\nconst ConsciaFormSelect = FormSelect;\n\nexport { ConsciaFormSelect, FormSelect };\nexport type { FormSelectOption, FormSelectProps };\n","\"use client\";\n\nimport * as React from \"react\";\n\nimport { cn } from \"./utils\";\n\nfunction Label({\n className,\n ...props\n}: React.ComponentProps<\"label\">) {\n return <label data-slot=\"label\" className={cn(\"ds-type-label flex items-center gap-2 text-text-primary select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50\", className)} {...props} />;\n}\n\nexport { Label };\n","import * as React from \"react\";\nimport { LoaderCircle } from \"lucide-react\";\n\nimport { cn } from \"./utils\";\n\ntype SpinnerProps = React.ComponentProps<\"span\"> & {\n label?: string;\n size?: \"sm\" | \"default\" | \"lg\";\n};\n\nfunction Spinner({\n \"aria-label\": ariaLabel,\n className,\n label,\n size = \"default\",\n ...props\n}: SpinnerProps) {\n const accessibleLabel = ariaLabel ?? label;\n\n return (\n <span\n data-slot=\"spinner\"\n data-size={size}\n className={cn(\n \"inline-flex shrink-0 animate-spin items-center justify-center text-current motion-reduce:animate-none data-[size=default]:size-4 data-[size=lg]:size-5 data-[size=sm]:size-3.5\",\n className,\n )}\n role={accessibleLabel ? \"status\" : undefined}\n aria-hidden={accessibleLabel ? undefined : true}\n aria-label={accessibleLabel}\n {...props}\n >\n <LoaderCircle aria-hidden=\"true\" className=\"size-full\" />\n </span>\n );\n}\n\nexport { Spinner };\nexport type { SpinnerProps };\n","import * as React from \"react\";\n\nimport { Button, type ButtonProps } from \"./button\";\nimport { Spinner } from \"./spinner\";\n\ntype LoadingButtonProps = Omit<ButtonProps, \"children\"> & {\n children: React.ReactNode;\n pending?: boolean;\n pendingLabel?: React.ReactNode;\n};\n\n/**\n * Keeps async actions visually stable and prevents duplicate submissions while\n * the owning mutation is pending.\n */\nfunction LoadingButton({\n children,\n pending = false,\n pendingLabel = \"Working…\",\n disabled,\n ...props\n}: LoadingButtonProps) {\n return (\n <Button\n {...props}\n disabled={disabled || pending}\n aria-busy={pending || undefined}\n >\n {pending ? (\n <>\n <Spinner aria-hidden=\"true\" size=\"sm\" />\n {pendingLabel}\n </>\n ) : (\n children\n )}\n </Button>\n );\n}\n\nexport { LoadingButton };\nexport type { LoadingButtonProps };\n","export { PopoverRoot as Root } from \"./root/PopoverRoot.mjs\";\nexport { PopoverTrigger as Trigger } from \"./trigger/PopoverTrigger.mjs\";\nexport { PopoverPortal as Portal } from \"./portal/PopoverPortal.mjs\";\nexport { PopoverPositioner as Positioner } from \"./positioner/PopoverPositioner.mjs\";\nexport { PopoverPopup as Popup } from \"./popup/PopoverPopup.mjs\";\nexport { PopoverArrow as Arrow } from \"./arrow/PopoverArrow.mjs\";\nexport { PopoverBackdrop as Backdrop } from \"./backdrop/PopoverBackdrop.mjs\";\nexport { PopoverTitle as Title } from \"./title/PopoverTitle.mjs\";\nexport { PopoverDescription as Description } from \"./description/PopoverDescription.mjs\";\nexport { PopoverClose as Close } from \"./close/PopoverClose.mjs\";\nexport { PopoverViewport as Viewport } from \"./viewport/PopoverViewport.mjs\";\nexport { createPopoverHandle as createHandle, PopoverHandle as Handle } from \"./store/PopoverHandle.mjs\";","'use client';\n\nimport * as React from 'react';\nimport { useDismiss, FloatingTree } from \"../../floating-ui-react/index.mjs\";\nimport { PopoverRootContext, usePopoverRootContext } from \"./PopoverRootContext.mjs\";\nimport { PopoverStore } from \"../store/PopoverStore.mjs\";\nimport { createChangeEventDetails } from \"../../internals/createBaseUIEventDetails.mjs\";\nimport { REASONS } from \"../../internals/reasons.mjs\";\nimport { PopupHandleAttachment, useImplicitActiveTrigger, usePopupRootStore, useOpenStateTransitions, usePopupInteractionProps, usePopupRootSync } from \"../../utils/popups/index.mjs\";\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nfunction PopoverRootComponent({\n props\n}) {\n const {\n children,\n open: openProp,\n defaultOpen = false,\n onOpenChange,\n onOpenChangeComplete,\n modal = false,\n handle,\n triggerId: triggerIdProp,\n defaultTriggerId: defaultTriggerIdProp = null\n } = props;\n const store = usePopoverRootStore(handle, {\n modal,\n open: defaultOpen,\n openProp,\n activeTriggerId: defaultTriggerIdProp,\n triggerIdProp\n });\n store.useControlledProp('openProp', openProp);\n store.useControlledProp('triggerIdProp', triggerIdProp);\n const open = store.useState('open');\n const mounted = store.useState('mounted');\n const payload = store.useState('payload');\n store.useContextCallback('onOpenChange', onOpenChange);\n store.useContextCallback('onOpenChangeComplete', onOpenChangeComplete);\n usePopupRootSync(store, open);\n useImplicitActiveTrigger(store);\n const {\n forceUnmount\n } = useOpenStateTransitions(open, store, () => {\n store.update({\n stickIfOpen: true,\n openChangeReason: null\n });\n });\n store.useSyncedValues({\n modal\n });\n React.useEffect(() => {\n if (!open) {\n store.context.stickIfOpenTimeout.clear();\n }\n }, [store, open]);\n React.useImperativeHandle(props.actionsRef, () => ({\n unmount: forceUnmount,\n close: () => store.setOpen(false, createChangeEventDetails(REASONS.imperativeAction))\n }), [forceUnmount, store]);\n const shouldRenderInteractions = open || mounted;\n return /*#__PURE__*/_jsxs(PopoverRootContext.Provider, {\n value: store,\n children: [handle && /*#__PURE__*/_jsx(PopupHandleAttachment, {\n handle: handle,\n store: store\n }), shouldRenderInteractions && /*#__PURE__*/_jsx(PopoverInteractions, {\n store: store,\n modal: modal\n }), typeof children === 'function' ? children({\n payload\n }) : children]\n });\n}\n\n/**\n * Groups all parts of the popover.\n * Doesn't render its own HTML element.\n *\n * Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)\n */\nexport function PopoverRoot(props) {\n if (usePopoverRootContext(true)) {\n return /*#__PURE__*/_jsx(PopoverRootComponent, {\n props: props\n });\n }\n return /*#__PURE__*/_jsx(FloatingTree, {\n children: /*#__PURE__*/_jsx(PopoverRootComponent, {\n props: props\n })\n });\n}\nfunction usePopoverRootStore(handle, initialState) {\n // The store is owned by this Root instance and created exactly once. It is not tied to the handle:\n // the handle attaches to it, so swapping the handle re-attaches rather than recreating state.\n // Default values are only initial values; controlled values and root state are synced after creation.\n const store = usePopupRootStore((floatingId, nested) => new PopoverStore(initialState, floatingId, nested));\n\n // Popover-specific: dispose the patient-click timeout held in the store's context on unmount.\n React.useEffect(() => store.context.stickIfOpenTimeout.disposeEffect(), [store]);\n return store;\n}\nfunction PopoverInteractions({\n store,\n modal\n}) {\n const floatingRootContext = store.useState('floatingRootContext');\n const dismiss = useDismiss(floatingRootContext, {\n outsidePressEvent: {\n // Ensure `aria-hidden` on outside elements is removed immediately\n // on outside press when trapping focus.\n mouse: modal === 'trap-focus' ? 'sloppy' : 'intentional',\n touch: 'sloppy'\n }\n });\n\n // `useDismiss` is not given an `enabled` option, so it always returns both prop bags. Restore\n // the `EMPTY_OBJECT` fallbacks if that ever changes: the store fields are non-optional.\n // `dismiss.trigger` is always the same object as `dismiss.reference`.\n const triggerProps = dismiss.reference;\n // PopoverPopup already spreads `FOCUSABLE_POPUP_PROPS` directly, so the popup\n // props only need to carry the dismiss handlers.\n const popupProps = dismiss.floating;\n usePopupInteractionProps(store, {\n activeTriggerProps: triggerProps,\n inactiveTriggerProps: triggerProps,\n popupProps\n });\n return null;\n}","'use client';\n\nimport _formatErrorMessage from \"@base-ui/utils/formatErrorMessage\";\nimport * as React from 'react';\nexport const PopoverRootContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== \"production\") PopoverRootContext.displayName = \"PopoverRootContext\";\nexport function usePopoverRootContext(optional) {\n const context = React.useContext(PopoverRootContext);\n if (context === undefined && !optional) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? 'Base UI: PopoverRootContext is missing. Popover parts must be placed within <Popover.Root>.' : _formatErrorMessage(47));\n }\n return context;\n}","'use client';\n\nimport * as React from 'react';\nimport * as ReactDOM from 'react-dom';\nimport { ReactStore } from '@base-ui/utils/store';\nimport { Timeout } from '@base-ui/utils/useTimeout';\nimport { NOOP } from '@base-ui/utils/empty';\nimport { REASONS } from \"../../internals/reasons.mjs\";\nimport { NullStore } from \"../../utils/NullStore.mjs\";\nimport { attachPreventUnmountOnClose, createPopupFloatingRootContext, createInitialPopupStoreState, popupStoreSelectors, PopupTriggerMap, setPopupOpenState } from \"../../utils/popups/index.mjs\";\nimport { PATIENT_CLICK_THRESHOLD } from \"../../internals/constants.mjs\";\nconst selectors = {\n ...popupStoreSelectors,\n disabled: state => state.disabled,\n instantType: state => state.instantType,\n openMethod: state => state.openMethod,\n openChangeReason: state => state.openChangeReason,\n modal: state => state.modal,\n focusManagerModal: state => state.focusManagerModal,\n stickIfOpen: state => state.stickIfOpen,\n titleElementId: state => state.titleElementId,\n descriptionElementId: state => state.descriptionElementId,\n openOnHover: state => state.openOnHover,\n closeDelay: state => state.closeDelay,\n adaptiveOrigin: state => state.adaptiveOrigin\n};\n\n/**\n * The store view that detached handle-backed triggers read from. Both the real `PopoverStore` and\n * the inert fallback store satisfy it, so a trigger can read from whichever store the handle\n * currently exposes. Narrowed to the members a trigger actually uses — the trigger-data members plus\n * `setOpen` (called by the focus guards) — so the exposed surface can't bypass the open-change\n * pipeline; on the detached fallback store every one of these mutations is a no-op.\n */\n\nexport class PopoverStore extends ReactStore {\n constructor(initialState, floatingId, nested) {\n const triggerElements = new PopupTriggerMap();\n super(createInitialState(initialState, triggerElements, floatingId, nested), createInitialContext(triggerElements), selectors);\n }\n setOpen = (nextOpen, eventDetails) => {\n const isHover = eventDetails.reason === REASONS.triggerHover;\n const isKeyboardClick = eventDetails.reason === REASONS.triggerPress && eventDetails.event.detail === 0;\n const isDismissClose = !nextOpen && (eventDetails.reason === REASONS.escapeKey || eventDetails.reason == null);\n const shouldPreventUnmountOnClose = attachPreventUnmountOnClose(eventDetails);\n const activeTriggerId = this.select('activeTriggerId');\n if (!nextOpen && eventDetails.reason === REASONS.closePress && eventDetails.trigger == null && activeTriggerId != null) {\n eventDetails.trigger = this.context.triggerElements.getById(activeTriggerId) ?? this.select('activeTriggerElement') ?? undefined;\n }\n this.context.onOpenChange?.(nextOpen, eventDetails);\n if (eventDetails.isCanceled) {\n return;\n }\n this.state.floatingRootContext.dispatchOpenChange(nextOpen, eventDetails);\n const changeState = () => {\n const updatedState = {\n open: nextOpen,\n openChangeReason: eventDetails.reason\n };\n setPopupOpenState(updatedState, nextOpen, eventDetails.trigger, shouldPreventUnmountOnClose());\n this.update(updatedState);\n };\n if (isHover) {\n // Only allow \"patient\" clicks to close the popover if it's open.\n // If they clicked within 500ms of the popover opening, keep it open.\n this.set('stickIfOpen', true);\n this.context.stickIfOpenTimeout.start(PATIENT_CLICK_THRESHOLD, () => {\n this.set('stickIfOpen', false);\n });\n ReactDOM.flushSync(changeState);\n } else {\n changeState();\n }\n let instantType;\n if (isKeyboardClick) {\n instantType = 'click';\n } else if (isDismissClose) {\n instantType = 'dismiss';\n } else if (eventDetails.reason === REASONS.focusOut) {\n instantType = 'focus';\n }\n this.set('instantType', instantType);\n };\n}\n\n/**\n * Creates the inert fallback store used by detached handle-backed triggers while no\n * `Popover.Root` is attached. It preserves a popover-specific trigger registry in context so\n * detached triggers can register before migrating to the live root store. `setOpen` is a no-op\n * (matching the inert reads/writes of `NullStore`), so a trigger can hand the store to focus-guard\n * helpers that expect `setOpen` without it ever taking effect while detached.\n */\nexport function createNullPopoverStore() {\n const triggerElements = new PopupTriggerMap();\n const store = new NullStore(Object.freeze(createInitialState(undefined, triggerElements)), Object.freeze(createInitialContext(triggerElements)), selectors);\n return Object.assign(store, {\n setOpen: NOOP\n });\n}\nfunction createInitialState(initialState, triggerElements, floatingId, nested = false) {\n const state = {\n ...createInitialPopupStoreState(),\n disabled: false,\n modal: false,\n focusManagerModal: false,\n instantType: undefined,\n openMethod: null,\n openChangeReason: null,\n titleElementId: undefined,\n descriptionElementId: undefined,\n stickIfOpen: true,\n openOnHover: false,\n closeDelay: 0,\n adaptiveOrigin: undefined,\n ...initialState\n };\n if (state.open && initialState?.mounted === undefined) {\n state.mounted = true;\n }\n state.floatingRootContext = createPopupFloatingRootContext(triggerElements, floatingId, nested);\n return state;\n}\nfunction createInitialContext(triggerElements) {\n return {\n popupRef: /*#__PURE__*/React.createRef(),\n onOpenChange: undefined,\n onOpenChangeComplete: undefined,\n triggerFocusTargetRef: /*#__PURE__*/React.createRef(),\n beforeContentFocusGuardRef: /*#__PURE__*/React.createRef(),\n stickIfOpenTimeout: new Timeout(),\n triggerElements\n };\n}","'use client';\n\nimport _formatErrorMessage from \"@base-ui/utils/formatErrorMessage\";\nimport * as React from 'react';\nimport { usePopoverRootContext } from \"../root/PopoverRootContext.mjs\";\nimport { useButton } from \"../../internals/use-button/useButton.mjs\";\nimport { triggerOpenStateMapping, pressableTriggerOpenStateMapping } from \"../../utils/popupStateMapping.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\nimport { CLICK_TRIGGER_IDENTIFIER } from \"../../internals/constants.mjs\";\nimport { safePolygon, useClick, useHoverReferenceInteraction } from \"../../floating-ui-react/index.mjs\";\nimport { OPEN_DELAY } from \"../utils/constants.mjs\";\nimport { useBaseUiId } from \"../../internals/useBaseUiId.mjs\";\nimport { FocusGuard } from \"../../utils/FocusGuard.mjs\";\nimport { REASONS } from \"../../internals/reasons.mjs\";\nimport { usePopupHandleStore, useTriggerDataForwarding } from \"../../utils/popups/index.mjs\";\nimport { useTriggerFocusGuards } from \"../../utils/popups/useTriggerFocusGuards.mjs\";\nimport { useOpenMethodTriggerProps } from \"../../utils/useOpenInteractionType.mjs\";\n\n/**\n * A button that opens the popover.\n * Renders a `<button>` element.\n *\n * Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)\n */\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport const PopoverTrigger = /*#__PURE__*/React.forwardRef(function PopoverTrigger(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n disabled = false,\n nativeButton = true,\n handle,\n payload,\n openOnHover = false,\n delay = OPEN_DELAY,\n closeDelay = 0,\n id: idProp,\n ...elementProps\n } = componentProps;\n const rootStore = usePopoverRootContext(true);\n const handleStore = usePopupHandleStore(handle);\n const store = handleStore ?? rootStore;\n if (!store) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? 'Base UI: <Popover.Trigger> must be either used within a <Popover.Root> component or provided with a handle.' : _formatErrorMessage(74));\n }\n const thisTriggerId = useBaseUiId(idProp);\n const isTriggerActive = store.useState('isTriggerActive', thisTriggerId);\n const floatingContext = store.useState('floatingRootContext');\n const isOpenedByThisTrigger = store.useState('isOpenedByTrigger', thisTriggerId);\n const popupId = store.useState('triggerPopupId', thisTriggerId);\n const triggerElementRef = React.useRef(null);\n const {\n registerTrigger,\n isMountedByThisTrigger\n } = useTriggerDataForwarding(thisTriggerId, triggerElementRef, store, {\n payload,\n disabled,\n openOnHover,\n closeDelay\n });\n const openReason = store.useState('openChangeReason');\n const stickIfOpen = store.useState('stickIfOpen');\n const openMethod = store.useState('openMethod');\n const focusManagerModal = store.useState('focusManagerModal');\n const hoverProps = useHoverReferenceInteraction(floatingContext, {\n enabled: !disabled && openOnHover && (openMethod !== 'touch' || openReason !== REASONS.triggerPress),\n mouseOnly: true,\n move: false,\n handleClose: safePolygon(),\n restMs: delay,\n delay: {\n close: closeDelay\n },\n triggerElementRef,\n isActiveTrigger: isTriggerActive,\n isClosing: () => store.select('transitionStatus') === 'ending'\n });\n const click = useClick(floatingContext, {\n stickIfOpen\n });\n const interactionTypeProps = useOpenMethodTriggerProps(() => store.select('open'), interactionType => {\n store.set('openMethod', interactionType);\n });\n const rootTriggerProps = store.useState('triggerProps', isMountedByThisTrigger);\n const {\n getButtonProps,\n buttonRef\n } = useButton({\n disabled,\n native: nativeButton\n });\n const stateAttributesMapping = {\n open(value) {\n if (value && openReason === REASONS.triggerPress) {\n return pressableTriggerOpenStateMapping.open(value);\n }\n return triggerOpenStateMapping.open(value);\n }\n };\n const {\n preFocusGuardRef,\n handlePreFocusGuardFocus,\n handleFocusTargetFocus\n } = useTriggerFocusGuards(store, triggerElementRef);\n const state = {\n disabled,\n open: isOpenedByThisTrigger\n };\n const element = useRenderElement('button', componentProps, {\n state,\n ref: [buttonRef, forwardedRef, registerTrigger, triggerElementRef],\n props: [click.reference, hoverProps, rootTriggerProps, interactionTypeProps, {\n [CLICK_TRIGGER_IDENTIFIER]: '',\n id: thisTriggerId,\n 'aria-haspopup': 'dialog',\n 'aria-expanded': isOpenedByThisTrigger,\n 'aria-controls': popupId\n }, elementProps, getButtonProps],\n stateAttributesMapping\n });\n\n // A fragment with key is required to ensure that the `element` is mounted to the same DOM node\n // regardless of whether the focus guards are rendered or not.\n const keyedElement = /*#__PURE__*/_jsx(React.Fragment, {\n children: element\n }, thisTriggerId);\n if (isMountedByThisTrigger && !focusManagerModal) {\n return /*#__PURE__*/_jsxs(React.Fragment, {\n children: [/*#__PURE__*/_jsx(FocusGuard, {\n ref: preFocusGuardRef,\n onFocus: handlePreFocusGuardFocus\n }), keyedElement, /*#__PURE__*/_jsx(FocusGuard, {\n ref: store.context.triggerFocusTargetRef,\n onFocus: handleFocusTargetFocus\n })]\n });\n }\n return keyedElement;\n});\nif (process.env.NODE_ENV !== \"production\") PopoverTrigger.displayName = \"PopoverTrigger\";","export const OPEN_DELAY = 300;","'use client';\n\nimport * as React from 'react';\nimport { FloatingPortal } from \"../../floating-ui-react/index.mjs\";\nimport { usePopoverRootContext } from \"../root/PopoverRootContext.mjs\";\nimport { PopoverPortalContext } from \"./PopoverPortalContext.mjs\";\n\n/**\n * A portal element that moves the popup to a different part of the DOM.\n * By default, the portal element is appended to `<body>`.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport const PopoverPortal = /*#__PURE__*/React.forwardRef(function PopoverPortal(props, forwardedRef) {\n const {\n keepMounted = false,\n ...portalProps\n } = props;\n const store = usePopoverRootContext();\n const mounted = store.useState('mounted');\n const shouldRender = mounted || keepMounted;\n if (!shouldRender) {\n return null;\n }\n return /*#__PURE__*/_jsx(PopoverPortalContext.Provider, {\n value: keepMounted,\n children: /*#__PURE__*/_jsx(FloatingPortal, {\n ref: forwardedRef,\n ...portalProps\n })\n });\n});\nif (process.env.NODE_ENV !== \"production\") PopoverPortal.displayName = \"PopoverPortal\";","'use client';\n\nimport _formatErrorMessage from \"@base-ui/utils/formatErrorMessage\";\nimport * as React from 'react';\nexport const PopoverPortalContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== \"production\") PopoverPortalContext.displayName = \"PopoverPortalContext\";\nexport function usePopoverPortalContext() {\n const value = React.useContext(PopoverPortalContext);\n if (value === undefined) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? 'Base UI: <Popover.Portal> is missing.' : _formatErrorMessage(45));\n }\n return value;\n}","'use client';\n\nimport * as React from 'react';\nimport { inertValue } from '@base-ui/utils/inertValue';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { FloatingNode, useFloatingNodeId } from \"../../floating-ui-react/index.mjs\";\nimport { usePopoverRootContext } from \"../root/PopoverRootContext.mjs\";\nimport { PopoverPositionerContext } from \"./PopoverPositionerContext.mjs\";\nimport { useAnchorPositioning } from \"../../internals/useAnchorPositioning.mjs\";\nimport { usePopoverPortalContext } from \"../portal/PopoverPortalContext.mjs\";\nimport { InternalBackdrop } from \"../../utils/InternalBackdrop.mjs\";\nimport { REASONS } from \"../../internals/reasons.mjs\";\nimport { POPUP_COLLISION_AVOIDANCE } from \"../../internals/constants.mjs\";\nimport { useAnimationsFinished } from \"../../internals/useAnimationsFinished.mjs\";\nimport { usePositioner } from \"../../utils/usePositioner.mjs\";\nimport { useAnchoredPopupScrollLock } from \"../../utils/useAnchoredPopupScrollLock.mjs\";\n\n/**\n * Positions the popover against the trigger.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)\n */\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport const PopoverPositioner = /*#__PURE__*/React.forwardRef(function PopoverPositioner(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n anchor,\n // `useAnchorPositioning` applies the same defaults to the undefined values; the names\n // remain destructured to exclude the props from `elementProps`.\n positionMethod,\n side,\n align,\n sideOffset,\n alignOffset,\n collisionBoundary = 'clipping-ancestors',\n collisionPadding,\n arrowPadding,\n sticky,\n disableAnchorTracking = false,\n collisionAvoidance = POPUP_COLLISION_AVOIDANCE,\n ...elementProps\n } = componentProps;\n const store = usePopoverRootContext();\n const keepMounted = usePopoverPortalContext();\n const nodeId = useFloatingNodeId();\n const floatingRootContext = store.useState('floatingRootContext');\n const mounted = store.useState('mounted');\n const open = store.useState('open');\n const openReason = store.useState('openChangeReason');\n const triggerElement = store.useState('activeTriggerElement');\n const modal = store.useState('modal');\n const openMethod = store.useState('openMethod');\n const positionerElement = store.useState('positionerElement');\n const instantType = store.useState('instantType');\n const transitionStatus = store.useState('transitionStatus');\n const adaptiveOrigin = store.useState('adaptiveOrigin');\n const prevTriggerElementRef = React.useRef(null);\n const runOnceAnimationsFinish = useAnimationsFinished(positionerElement);\n const positioning = useAnchorPositioning({\n anchor,\n floatingRootContext,\n positionMethod,\n mounted,\n side,\n sideOffset,\n align,\n alignOffset,\n arrowPadding,\n collisionBoundary,\n collisionPadding,\n sticky,\n disableAnchorTracking,\n keepMounted,\n nodeId,\n collisionAvoidance,\n adaptiveOrigin\n });\n const domReference = floatingRootContext.useState('domReferenceElement');\n\n // When the current trigger element changes, enable transitions on the\n // positioner temporarily\n useIsoLayoutEffect(() => {\n const currentTriggerElement = domReference;\n const prevTriggerElement = prevTriggerElementRef.current;\n if (currentTriggerElement) {\n prevTriggerElementRef.current = currentTriggerElement;\n }\n if (prevTriggerElement && currentTriggerElement && currentTriggerElement !== prevTriggerElement) {\n store.set('instantType', undefined);\n const ac = new AbortController();\n runOnceAnimationsFinish(() => {\n store.set('instantType', 'trigger-change');\n }, ac.signal);\n return () => {\n ac.abort();\n };\n }\n return undefined;\n }, [domReference, runOnceAnimationsFinish, store]);\n const trueModalNonHover = modal === true && openReason !== REASONS.triggerHover;\n useAnchoredPopupScrollLock(open && trueModalNonHover, openMethod === 'touch', positionerElement, triggerElement);\n const setPositionerElement = store.useStateSetter('positionerElement');\n const state = {\n open,\n side: positioning.side,\n align: positioning.align,\n anchorHidden: positioning.anchorHidden,\n instant: instantType\n };\n const element = usePositioner(componentProps, state, {\n styles: positioning.positionerStyles,\n transitionStatus,\n props: elementProps,\n refs: [forwardedRef, setPositionerElement],\n hidden: !mounted,\n inert: !open\n });\n return /*#__PURE__*/_jsxs(PopoverPositionerContext.Provider, {\n value: positioning,\n children: [mounted && trueModalNonHover && /*#__PURE__*/_jsx(InternalBackdrop, {\n inert: inertValue(!open),\n cutout: triggerElement\n }), /*#__PURE__*/_jsx(FloatingNode, {\n id: nodeId,\n children: element\n })]\n });\n});\nif (process.env.NODE_ENV !== \"production\") PopoverPositioner.displayName = \"PopoverPositioner\";","'use client';\n\nimport _formatErrorMessage from \"@base-ui/utils/formatErrorMessage\";\nimport * as React from 'react';\nexport const PopoverPositionerContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== \"production\") PopoverPositionerContext.displayName = \"PopoverPositionerContext\";\nexport function usePopoverPositionerContext() {\n const context = React.useContext(PopoverPositionerContext);\n if (!context) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? 'Base UI: PopoverPositionerContext is missing. PopoverPositioner parts must be placed within <Popover.Positioner>.' : _formatErrorMessage(46));\n }\n return context;\n}","'use client';\n\nimport * as React from 'react';\nimport { isHTMLElement } from '@floating-ui/utils/dom';\nimport { FloatingFocusManager, useHoverFloatingInteraction } from \"../../floating-ui-react/index.mjs\";\nimport { usePopoverRootContext } from \"../root/PopoverRootContext.mjs\";\nimport { usePopoverPositionerContext } from \"../positioner/PopoverPositionerContext.mjs\";\nimport { popupTransitionStateMapping } from \"../../utils/popupStateMapping.mjs\";\nimport { useOpenChangeComplete } from \"../../internals/useOpenChangeComplete.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\nimport { REASONS } from \"../../internals/reasons.mjs\";\nimport { COMPOSITE_KEYS } from \"../../internals/composite/composite.mjs\";\nimport { useToolbarRootContext } from \"../../toolbar/root/ToolbarRootContext.mjs\";\nimport { getDisabledMountTransitionStyles } from \"../../internals/getDisabledMountTransitionStyles.mjs\";\nimport { ClosePartContext, useClosePartCount } from \"../../utils/closePart.mjs\";\nimport { FOCUSABLE_POPUP_PROPS, createDefaultInitialFocus } from \"../../utils/popups/index.mjs\";\n\n/**\n * A container for the popover contents.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport const PopoverPopup = /*#__PURE__*/React.forwardRef(function PopoverPopup(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n initialFocus,\n finalFocus,\n ...elementProps\n } = componentProps;\n const store = usePopoverRootContext();\n const positioner = usePopoverPositionerContext();\n const insideToolbar = useToolbarRootContext(true) != null;\n const {\n context: closePartContext,\n hasClosePart\n } = useClosePartCount();\n const open = store.useState('open');\n const openMethod = store.useState('openMethod');\n const instantType = store.useState('instantType');\n const transitionStatus = store.useState('transitionStatus');\n const popupProps = store.useState('popupProps');\n const titleId = store.useState('titleElementId');\n const descriptionId = store.useState('descriptionElementId');\n const modal = store.useState('modal');\n const mounted = store.useState('mounted');\n const openReason = store.useState('openChangeReason');\n const activeTriggerElement = store.useState('activeTriggerElement');\n const floatingContext = store.useState('floatingRootContext');\n const floatingId = floatingContext.useState('floatingId');\n const disabled = store.useState('disabled');\n const openOnHover = store.useState('openOnHover');\n const closeDelay = store.useState('closeDelay');\n useOpenChangeComplete({\n open,\n ref: store.context.popupRef,\n onComplete() {\n if (open) {\n store.context.onOpenChangeComplete?.(true);\n }\n }\n });\n useHoverFloatingInteraction(floatingContext, {\n enabled: openOnHover && !disabled,\n closeDelay\n });\n const resolvedInitialFocus = initialFocus === undefined ? createDefaultInitialFocus(store.context.popupRef) : initialFocus;\n const focusManagerModal = modal !== false && hasClosePart;\n store.useSyncedValue('focusManagerModal', focusManagerModal);\n const setPopupElement = store.useStateSetter('popupElement');\n const state = {\n open,\n side: positioner.side,\n align: positioner.align,\n instant: instantType,\n transitionStatus\n };\n const element = useRenderElement('div', componentProps, {\n state,\n ref: [forwardedRef, store.context.popupRef, setPopupElement],\n props: [popupProps, {\n id: floatingId,\n role: 'dialog',\n ...FOCUSABLE_POPUP_PROPS,\n 'aria-labelledby': titleId,\n 'aria-describedby': descriptionId,\n onKeyDown(event) {\n if (insideToolbar && COMPOSITE_KEYS.has(event.key)) {\n event.stopPropagation();\n }\n }\n }, getDisabledMountTransitionStyles(transitionStatus), elementProps],\n stateAttributesMapping: popupTransitionStateMapping\n });\n return /*#__PURE__*/_jsx(FloatingFocusManager, {\n context: floatingContext,\n openInteractionType: openMethod,\n modal: focusManagerModal,\n disabled: !mounted || openReason === REASONS.triggerHover,\n initialFocus: resolvedInitialFocus,\n returnFocus: finalFocus,\n restoreFocus: \"popup\",\n previousFocusableElement: isHTMLElement(activeTriggerElement) ? activeTriggerElement : undefined,\n nextFocusableElement: store.context.triggerFocusTargetRef,\n beforeContentFocusGuardRef: store.context.beforeContentFocusGuardRef,\n children: /*#__PURE__*/_jsx(ClosePartContext.Provider, {\n value: closePartContext,\n children: element\n })\n });\n});\nif (process.env.NODE_ENV !== \"production\") PopoverPopup.displayName = \"PopoverPopup\";","'use client';\n\nimport * as React from 'react';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { useStableCallback } from '@base-ui/utils/useStableCallback';\nexport const ClosePartContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== \"production\") ClosePartContext.displayName = \"ClosePartContext\";\nexport function useClosePartCount() {\n const [closePartCount, setClosePartCount] = React.useState(0);\n const register = useStableCallback(() => {\n setClosePartCount(count => count + 1);\n return () => {\n setClosePartCount(count => Math.max(0, count - 1));\n };\n });\n const context = React.useMemo(() => ({\n register\n }), [register]);\n return {\n context,\n hasClosePart: closePartCount > 0\n };\n}\nexport function useClosePartRegistration() {\n const context = React.useContext(ClosePartContext);\n useIsoLayoutEffect(() => {\n return context?.register();\n }, [context]);\n}","'use client';\n\nimport * as React from 'react';\nimport { usePopoverPositionerContext } from \"../positioner/PopoverPositionerContext.mjs\";\nimport { usePopoverRootContext } from \"../root/PopoverRootContext.mjs\";\nimport { popupStateMapping } from \"../../utils/popupStateMapping.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\n\n/**\n * Displays an element positioned against the popover anchor.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)\n */\nexport const PopoverArrow = /*#__PURE__*/React.forwardRef(function PopoverArrow(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n ...elementProps\n } = componentProps;\n const store = usePopoverRootContext();\n const open = store.useState('open');\n const {\n arrowRef,\n side,\n align,\n arrowUncentered,\n arrowStyles\n } = usePopoverPositionerContext();\n const state = {\n open,\n side,\n align,\n uncentered: arrowUncentered\n };\n const element = useRenderElement('div', componentProps, {\n state,\n ref: [forwardedRef, arrowRef],\n props: [{\n style: arrowStyles,\n 'aria-hidden': true\n }, elementProps],\n stateAttributesMapping: popupStateMapping\n });\n return element;\n});\nif (process.env.NODE_ENV !== \"production\") PopoverArrow.displayName = \"PopoverArrow\";","'use client';\n\nimport * as React from 'react';\nimport { usePopoverRootContext } from \"../root/PopoverRootContext.mjs\";\nimport { popupTransitionStateMapping } from \"../../utils/popupStateMapping.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\nimport { REASONS } from \"../../internals/reasons.mjs\";\n\n/**\n * An overlay displayed beneath the popover.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)\n */\nexport const PopoverBackdrop = /*#__PURE__*/React.forwardRef(function PopoverBackdrop(props, forwardedRef) {\n const {\n render,\n className,\n style,\n ...elementProps\n } = props;\n const store = usePopoverRootContext();\n const open = store.useState('open');\n const mounted = store.useState('mounted');\n const transitionStatus = store.useState('transitionStatus');\n const openReason = store.useState('openChangeReason');\n const state = {\n open,\n transitionStatus\n };\n const element = useRenderElement('div', props, {\n state,\n ref: forwardedRef,\n props: [{\n role: 'presentation',\n hidden: !mounted,\n style: {\n pointerEvents: openReason === REASONS.triggerHover ? 'none' : undefined,\n userSelect: 'none',\n WebkitUserSelect: 'none'\n }\n }, elementProps],\n stateAttributesMapping: popupTransitionStateMapping\n });\n return element;\n});\nif (process.env.NODE_ENV !== \"production\") PopoverBackdrop.displayName = \"PopoverBackdrop\";","'use client';\n\nimport * as React from 'react';\nimport { usePopoverRootContext } from \"../root/PopoverRootContext.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\nimport { useBaseUiId } from \"../../internals/useBaseUiId.mjs\";\n\n/**\n * A heading that labels the popover.\n * Renders an `<h2>` element.\n *\n * Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)\n */\nexport const PopoverTitle = /*#__PURE__*/React.forwardRef(function PopoverTitle(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n ...elementProps\n } = componentProps;\n const store = usePopoverRootContext();\n const id = useBaseUiId(elementProps.id);\n store.useSyncedValueWithCleanup('titleElementId', id);\n const element = useRenderElement('h2', componentProps, {\n ref: forwardedRef,\n props: [{\n id\n }, elementProps]\n });\n return element;\n});\nif (process.env.NODE_ENV !== \"production\") PopoverTitle.displayName = \"PopoverTitle\";","'use client';\n\nimport * as React from 'react';\nimport { usePopoverRootContext } from \"../root/PopoverRootContext.mjs\";\nimport { useBaseUiId } from \"../../internals/useBaseUiId.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\n\n/**\n * A paragraph with additional information about the popover.\n * Renders a `<p>` element.\n *\n * Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)\n */\nexport const PopoverDescription = /*#__PURE__*/React.forwardRef(function PopoverDescription(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n ...elementProps\n } = componentProps;\n const store = usePopoverRootContext();\n const id = useBaseUiId(elementProps.id);\n store.useSyncedValueWithCleanup('descriptionElementId', id);\n const element = useRenderElement('p', componentProps, {\n ref: forwardedRef,\n props: [{\n id\n }, elementProps]\n });\n return element;\n});\nif (process.env.NODE_ENV !== \"production\") PopoverDescription.displayName = \"PopoverDescription\";","'use client';\n\nimport * as React from 'react';\nimport { usePopoverRootContext } from \"../root/PopoverRootContext.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\nimport { useButton } from \"../../internals/use-button/index.mjs\";\nimport { createChangeEventDetails } from \"../../internals/createBaseUIEventDetails.mjs\";\nimport { REASONS } from \"../../internals/reasons.mjs\";\nimport { useClosePartRegistration } from \"../../utils/closePart.mjs\";\n\n/**\n * A button that closes the popover.\n * Renders a `<button>` element.\n *\n * Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)\n */\nexport const PopoverClose = /*#__PURE__*/React.forwardRef(function PopoverClose(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n disabled = false,\n nativeButton = true,\n ...elementProps\n } = componentProps;\n const {\n buttonRef,\n getButtonProps\n } = useButton({\n disabled,\n focusableWhenDisabled: false,\n native: nativeButton\n });\n const store = usePopoverRootContext();\n useClosePartRegistration();\n const element = useRenderElement('button', componentProps, {\n ref: [forwardedRef, buttonRef],\n props: [{\n onClick(event) {\n store.setOpen(false, createChangeEventDetails(REASONS.closePress, event.nativeEvent));\n }\n }, elementProps, getButtonProps]\n });\n return element;\n});\nif (process.env.NODE_ENV !== \"production\") PopoverClose.displayName = \"PopoverClose\";","'use client';\n\nimport * as React from 'react';\nimport { usePopoverRootContext } from \"../root/PopoverRootContext.mjs\";\nimport { usePopoverPositionerContext } from \"../positioner/PopoverPositionerContext.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\nimport { popupViewportStateMapping, usePopupViewport } from \"../../utils/usePopupViewport.mjs\";\n\n/**\n * A viewport for displaying content transitions.\n * This component is only required if one popup can be opened by multiple triggers, its content\n * changes based on the trigger, and switching between them is animated.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Popover](https://base-ui.com/react/components/popover)\n */\nexport const PopoverViewport = /*#__PURE__*/React.forwardRef(function PopoverViewport(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n children,\n ...elementProps\n } = componentProps;\n const store = usePopoverRootContext();\n const {\n side\n } = usePopoverPositionerContext();\n const instantType = store.useState('instantType');\n const {\n children: childrenToRender,\n state: viewportState\n } = usePopupViewport({\n store,\n side,\n children\n });\n const state = {\n activationDirection: viewportState.activationDirection,\n transitioning: viewportState.transitioning,\n instant: instantType\n };\n return useRenderElement('div', componentProps, {\n state,\n ref: forwardedRef,\n props: [elementProps, {\n children: childrenToRender\n }],\n stateAttributesMapping: popupViewportStateMapping\n });\n});\nif (process.env.NODE_ENV !== \"production\") PopoverViewport.displayName = \"PopoverViewport\";","import { createNullPopoverStore } from \"./PopoverStore.mjs\";\nimport { BasePopupHandle } from \"../../utils/popups/popupHandle.mjs\";\n\n/**\n * Controls a Popover imperatively and associates detached `Popover.Trigger` components with a\n * `Popover.Root`. Create one with `Popover.createHandle()` and pass it to the `handle` prop of the\n * root and of any triggers rendered outside of it.\n *\n * The imperative methods take effect only while a root using this handle is mounted; calls made\n * before a root attaches (or after it unmounts) are ignored.\n */\nexport class PopoverHandle extends BasePopupHandle {\n constructor() {\n super(createNullPopoverStore(), 'Popover');\n }\n\n /**\n * Opens the popover and associates it with the trigger with the given id.\n *\n * This method should only be called in an event handler or an effect (not during rendering).\n *\n * @param triggerId ID of the trigger to associate with the popover. The trigger must be a matching\n * `Popover.Trigger` with this handle passed as a prop.\n */\n open(triggerId) {\n this.openByTrigger(triggerId);\n }\n\n /**\n * Closes the popover.\n *\n * This method should only be called in an event handler or an effect (not during rendering).\n */\n close() {\n this.closePopup();\n }\n\n /**\n * Whether the popover is currently open. Returns `false` while no root is attached to the handle.\n */\n get isOpen() {\n return this.attachedStore?.select('open') ?? false;\n }\n}\n\n/**\n * Creates a new handle to connect a Popover.Root with detached Popover.Trigger components.\n */\nexport function createPopoverHandle() {\n return new PopoverHandle();\n}","\"use client\";\nimport * as React from \"react\";\nimport { Popover as BasePopover } from \"@base-ui/react/popover\";\nimport { cn } from \"./utils\";\n\nfunction Popover({ ...props }: React.ComponentProps<typeof BasePopover.Root>) { return <BasePopover.Root data-slot=\"popover\" {...props} />; }\nfunction PopoverTrigger({ ...props }: React.ComponentProps<typeof BasePopover.Trigger>) { return <BasePopover.Trigger data-slot=\"popover-trigger\" {...props} />; }\nfunction PopoverPortal({ ...props }: React.ComponentProps<typeof BasePopover.Portal>) { return <BasePopover.Portal data-slot=\"popover-portal\" {...props} />; }\nfunction PopoverPositioner({ className, ...props }: React.ComponentProps<typeof BasePopover.Positioner>) { return <BasePopover.Positioner data-slot=\"popover-positioner\" className={className} {...props} />; }\nfunction PopoverContent({ className, children, ...props }: React.ComponentProps<typeof BasePopover.Popup>) { return <PopoverPortal><PopoverPositioner><BasePopover.Popup data-slot=\"popover-content\" className={cn(\"z-50 w-72 rounded-md border bg-surface-floating p-4 text-text-primary shadow-[var(--ds-shadow-floating)] outline-none data-open:animate-in data-closed:animate-out\", className)} {...props}>{children}</BasePopover.Popup></PopoverPositioner></PopoverPortal>; }\nfunction PopoverArrow({ ...props }: React.ComponentProps<typeof BasePopover.Arrow>) { return <BasePopover.Arrow data-slot=\"popover-arrow\" {...props} />; }\nfunction PopoverTitle({ className, ...props }: React.ComponentProps<typeof BasePopover.Title>) { return <BasePopover.Title data-slot=\"popover-title\" className={cn(\"font-semibold\", className)} {...props} />; }\nfunction PopoverDescription({ className, ...props }: React.ComponentProps<typeof BasePopover.Description>) { return <BasePopover.Description data-slot=\"popover-description\" className={cn(\"text-sm text-text-supporting\", className)} {...props} />; }\nfunction PopoverClose({ ...props }: React.ComponentProps<typeof BasePopover.Close>) { return <BasePopover.Close data-slot=\"popover-close\" {...props} />; }\nexport { Popover, PopoverArrow, PopoverClose, PopoverContent, PopoverDescription, PopoverPositioner, PopoverPortal, PopoverTitle, PopoverTrigger };\n","\"use client\";\nimport * as React from \"react\";\nimport { Combobox } from \"@base-ui/react/combobox\";\nimport { Check, ChevronsUpDown, X } from \"lucide-react\";\nimport { IconButton } from \"./button\";\nimport { cn } from \"./utils\";\n\ntype SearchableSelectOption = { value: string; label: string; description?: string; keywords?: string[]; disabled?: boolean };\ntype SearchableSelectProps = { id?: string; name?: string; value?: string; options: SearchableSelectOption[]; onValueChange: (value: string) => void; placeholder?: string; searchPlaceholder?: string; emptyMessage?: string; disabled?: boolean; clearable?: boolean; clearLabel?: string; optionsLabel?: string; className?: string; \"aria-label\"?: string };\n\nfunction SearchableSelect({ id, name, value = \"\", options, onValueChange, placeholder = \"Select an option\", searchPlaceholder = \"Search...\", emptyMessage = \"No matching options.\", disabled = false, clearable = false, clearLabel = \"Clear selection\", optionsLabel, className, \"aria-label\": ariaLabel }: SearchableSelectProps) {\n const selected = options.find((option) => option.value === value) ?? null;\n const items = React.useMemo(() => options.map((option) => option.value), [options]);\n const [open, setOpen] = React.useState(false);\n const [inputValue, setInputValue] = React.useState(selected?.label ?? \"\");\n const inputRef = React.useRef<HTMLInputElement>(null);\n React.useLayoutEffect(() => { if (!open && inputRef.current) inputRef.current.value = selected?.label ?? \"\"; }, [open, selected?.label]);\n return <div data-slot=\"searchable-select\" className={cn(\"relative min-w-0\", className)}><Combobox.Root items={items} autoHighlight open={open} onOpenChange={(nextOpen) => { setOpen(nextOpen); if (!nextOpen) setInputValue(selected?.label ?? \"\"); }} value={value} inputValue={open ? inputValue : selected?.label ?? \"\"} onInputValueChange={setInputValue} onValueChange={(next) => { const nextOption = options.find((option) => option.value === next); setInputValue(nextOption?.label ?? \"\"); onValueChange(next ?? \"\"); }} itemToStringLabel={(item) => options.find((option) => option.value === item)?.label ?? \"\"} itemToStringValue={(item) => item ?? \"\"} name={name} disabled={disabled}>\n <Combobox.InputGroup className=\"relative flex items-center\">\n <Combobox.Input ref={inputRef} id={id} aria-label={ariaLabel} placeholder={searchPlaceholder} onKeyDown={(event) => { if (event.key === \"Enter\" && open) { const matches = options.filter((option) => !option.disabled && option.label.toLowerCase().includes(inputValue.toLowerCase())); const match = matches.at(-1); if (match && match.value !== value) { event.preventDefault(); setOpen(false); onValueChange(match.value); } } }} className=\"ds-type-control h-[var(--ds-field-control-height)] w-full rounded-[var(--ds-field-control-radius)] border border-control-border bg-surface-control px-3 pr-16 outline-none focus-visible:border-focus focus-visible:ring-[3px] focus-visible:ring-focus/50 disabled:cursor-not-allowed disabled:opacity-50\" />\n {clearable && selected ? <IconButton type=\"button\" size=\"sm\" variant=\"ghost\" aria-label={clearLabel} onClick={() => onValueChange(\"\")} className=\"absolute right-7\"><X className=\"size-4\" /></IconButton> : null}\n <Combobox.Trigger aria-label={ariaLabel ?? placeholder} className=\"absolute right-1 inline-flex size-8 items-center justify-center rounded-sm text-text-supporting outline-none focus-visible:ring-2 focus-visible:ring-focus\"><ChevronsUpDown className=\"size-4\" /></Combobox.Trigger>\n </Combobox.InputGroup>\n <Combobox.Portal><Combobox.Positioner className=\"z-50 w-[var(--anchor-width)]\"><Combobox.Popup className=\"mt-1 max-h-72 overflow-auto rounded-md border bg-surface-floating p-1 text-text-primary shadow-[var(--ds-shadow-floating)] outline-none\"><Combobox.Empty className=\"px-2 py-3 text-sm text-text-supporting\">{emptyMessage}</Combobox.Empty><Combobox.List aria-label={optionsLabel ?? \"Options\"}>{(optionValue: string) => { const option = options.find((candidate) => candidate.value === optionValue); if (!option) return null; return <Combobox.Item key={option.value} value={option.value} disabled={option.disabled} className=\"ds-type-menu-item data-highlighted:bg-surface-muted relative flex cursor-default items-start gap-2 rounded-sm px-2 py-2 pr-8 outline-none data-disabled:pointer-events-none data-disabled:opacity-50\"><span className=\"mt-0.5 flex size-4 shrink-0 items-center justify-center\"><Combobox.ItemIndicator><Check className=\"size-4\" /></Combobox.ItemIndicator></span><span className=\"min-w-0\"><span className=\"block truncate text-sm\">{option.label}</span>{option.description ? <span className=\"block truncate text-xs text-text-supporting\">{option.description}</span> : null}</span></Combobox.Item>; }}</Combobox.List></Combobox.Popup></Combobox.Positioner></Combobox.Portal>\n </Combobox.Root></div>;\n}\nexport { SearchableSelect };\nexport type { SearchableSelectOption, SearchableSelectProps };\n","\"use client\";\n\nimport * as React from \"react\";\nimport { Toast as BaseToast, type ToastObject } from \"@base-ui/react/toast\";\nimport { XIcon } from \"lucide-react\";\n\nimport { cn } from \"./utils\";\n\ntype ToastVariant = \"default\" | \"error\" | \"information\" | \"success\" | \"warning\";\ntype ToastPriority = \"high\" | \"low\";\n\ntype ToastActionOptions = {\n label: string;\n onClick?: React.MouseEventHandler<HTMLButtonElement>;\n};\n\ntype ToastOptions = {\n action?: ToastActionOptions;\n description?: React.ReactNode;\n id?: string;\n priority?: ToastPriority;\n timeout?: number;\n title: React.ReactNode;\n variant?: ToastVariant;\n};\n\ntype ToastUpdateOptions = Partial<ToastOptions>;\n\ntype ToastPromiseOptions<Value> = {\n error: string | ToastOptions | ((error: unknown) => string | ToastOptions);\n loading: string | ToastOptions;\n success: string | ToastOptions | ((result: Value) => string | ToastOptions);\n};\n\ntype ToastData = {\n variant: ToastVariant;\n};\n\ntype ToastProviderProps = {\n children?: React.ReactNode;\n limit?: number;\n timeout?: number;\n};\n\ntype ToastViewportProps = React.ComponentProps<\"div\"> & {\n placement?: \"bottom-end\" | \"bottom-start\" | \"top-end\" | \"top-start\";\n};\n\ntype ToastRecord = ToastObject<ToastData>;\n\nfunction toBaseToastOptions(options: ToastOptions | ToastUpdateOptions) {\n const { action, variant, ...rest } = options;\n return {\n ...rest,\n ...(variant !== undefined ? { type: variant, data: { variant } } : {}),\n ...(action !== undefined\n ? {\n actionProps: {\n children: action.label,\n onClick: action.onClick,\n },\n }\n : {}),\n };\n}\n\nfunction toBasePromiseOption(option: string | ToastOptions) {\n return typeof option === \"string\" ? option : toBaseToastOptions(option);\n}\n\nfunction ToastProvider({ children, limit = 3, timeout = 5000 }: ToastProviderProps) {\n return (\n <BaseToast.Provider limit={limit} timeout={timeout}>\n {children}\n </BaseToast.Provider>\n );\n}\n\nfunction useToast() {\n const manager = BaseToast.useToastManager<ToastData>();\n\n return React.useMemo(\n () => ({\n add(options: ToastOptions) {\n const variant = options.variant ?? \"default\";\n return manager.add({\n ...toBaseToastOptions({ ...options, variant }),\n id: options.id,\n });\n },\n close(id?: string) {\n manager.close(id);\n },\n update(id: string, options: ToastUpdateOptions) {\n manager.update(id, toBaseToastOptions(options));\n },\n promise<Value>(promise: Promise<Value>, options: ToastPromiseOptions<Value>) {\n return manager.promise(promise, {\n loading: toBasePromiseOption(options.loading),\n success: (result) => {\n const next = typeof options.success === \"function\" ? options.success(result) : options.success;\n return toBasePromiseOption(next);\n },\n error: (error) => {\n const next = typeof options.error === \"function\" ? options.error(error) : options.error;\n return toBasePromiseOption(next);\n },\n });\n },\n }),\n [manager],\n );\n}\n\nfunction ToastViewport({ className, placement = \"bottom-end\", ...props }: ToastViewportProps) {\n const { toasts } = BaseToast.useToastManager<ToastData>();\n\n return (\n <BaseToast.Portal>\n <BaseToast.Viewport\n data-slot=\"toast-viewport\"\n className={cn(\n \"pointer-events-none fixed z-[100] flex w-[min(24rem,calc(100vw-2rem))] max-w-[calc(100vw-2rem)] flex-col gap-2 p-4 outline-none\",\n placement === \"bottom-end\" && \"right-0 bottom-0 items-end\",\n placement === \"bottom-start\" && \"bottom-0 left-0 items-start\",\n placement === \"top-end\" && \"top-0 right-0 items-end\",\n placement === \"top-start\" && \"top-0 left-0 items-start\",\n className,\n )}\n {...props}\n >\n {toasts.map((toast) => <Toast key={toast.id} toast={toast} />)}\n </BaseToast.Viewport>\n </BaseToast.Portal>\n );\n}\n\nfunction Toast({\n children,\n className,\n toast,\n ...props\n}: React.ComponentProps<\"div\"> & { toast: ToastRecord }) {\n const variant = toast.data?.variant ?? (toast.type as ToastVariant | undefined) ?? \"default\";\n\n return (\n <BaseToast.Root\n toast={toast}\n data-slot=\"toast\"\n data-variant={variant}\n className={cn(\n \"pointer-events-auto relative grid w-full grid-cols-[minmax(0,1fr)_auto] gap-3 rounded-[var(--ds-radius-surface)] border bg-surface p-4 text-sm text-text-primary shadow-[var(--ds-shadow-floating)] outline-none data-ending:animate-out data-starting:animate-in data-[variant=error]:border-danger-border data-[variant=error]:bg-danger-background data-[variant=error]:text-danger-foreground data-[variant=information]:border-information-border data-[variant=information]:bg-information-background data-[variant=information]:text-information-foreground data-[variant=success]:border-success-border data-[variant=success]:bg-success-background data-[variant=success]:text-success-foreground data-[variant=warning]:border-warning-border data-[variant=warning]:bg-warning-background data-[variant=warning]:text-warning-foreground\",\n className,\n )}\n {...props}\n >\n {children ?? (\n <ToastContent>\n <div className=\"min-w-0\">\n <ToastTitle />\n <ToastDescription />\n </div>\n <div className=\"flex items-start gap-1\">\n <ToastAction />\n <ToastClose />\n </div>\n </ToastContent>\n )}\n </BaseToast.Root>\n );\n}\n\nfunction ToastContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return <BaseToast.Content data-slot=\"toast-content\" className={cn(\"contents\", className)} {...props} />;\n}\n\nfunction ToastTitle({ className, ...props }: React.ComponentProps<\"h2\">) {\n return <BaseToast.Title data-slot=\"toast-title\" className={cn(\"font-semibold\", className)} {...props} />;\n}\n\nfunction ToastDescription({ className, ...props }: React.ComponentProps<\"p\">) {\n return <BaseToast.Description data-slot=\"toast-description\" className={cn(\"mt-1 text-text-supporting\", className)} {...props} />;\n}\n\nfunction ToastAction({ className, ...props }: React.ComponentProps<\"button\">) {\n return <BaseToast.Action data-slot=\"toast-action\" className={cn(\"rounded px-2 py-1 text-xs font-medium text-text-link outline-none hover:bg-surface-muted focus-visible:ring-2 focus-visible:ring-focus\", className)} {...props} />;\n}\n\nfunction ToastClose({ \"aria-label\": ariaLabel = \"Dismiss notification\", children, className, ...props }: React.ComponentProps<\"button\">) {\n return (\n <BaseToast.Close\n data-slot=\"toast-close\"\n aria-label={ariaLabel}\n className={cn(\"rounded p-1 text-text-supporting outline-none hover:bg-surface-muted hover:text-text-primary focus-visible:ring-2 focus-visible:ring-focus\", className)}\n {...props}\n >\n {children ?? <XIcon aria-hidden=\"true\" className=\"size-4\" />}\n </BaseToast.Close>\n );\n}\n\nexport {\n Toast,\n ToastAction,\n ToastClose,\n ToastContent,\n ToastDescription,\n ToastProvider,\n ToastTitle,\n ToastViewport,\n useToast,\n};\nexport type {\n ToastActionOptions,\n ToastOptions,\n ToastPriority,\n ToastPromiseOptions,\n ToastProviderProps,\n ToastRecord,\n ToastUpdateOptions,\n ToastVariant,\n ToastViewportProps,\n};\n","export { ToastProvider as Provider } from \"./provider/ToastProvider.mjs\";\nexport { ToastViewport as Viewport } from \"./viewport/ToastViewport.mjs\";\nexport { ToastRoot as Root } from \"./root/ToastRoot.mjs\";\nexport { ToastContent as Content } from \"./content/ToastContent.mjs\";\nexport { ToastDescription as Description } from \"./description/ToastDescription.mjs\";\nexport { ToastTitle as Title } from \"./title/ToastTitle.mjs\";\nexport { ToastClose as Close } from \"./close/ToastClose.mjs\";\nexport { ToastAction as Action } from \"./action/ToastAction.mjs\";\nexport { ToastPortal as Portal } from \"./portal/ToastPortal.mjs\";\nexport { ToastPositioner as Positioner } from \"./positioner/ToastPositioner.mjs\";\nexport { ToastArrow as Arrow } from \"./arrow/ToastArrow.mjs\";\nexport { useToastManager } from \"./useToastManager.mjs\";\nexport { createToastManager } from \"./createToastManager.mjs\";","'use client';\n\nimport * as React from 'react';\nimport { useOnMount } from '@base-ui/utils/useOnMount';\nimport { useRefWithInit } from '@base-ui/utils/useRefWithInit';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { ToastContext } from \"./ToastProviderContext.mjs\";\nimport { ToastStore } from \"../store.mjs\";\n\n/**\n * Provides a context for creating and managing toasts.\n *\n * Documentation: [Base UI Toast](https://base-ui.com/react/components/toast)\n */\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport const ToastProvider = function ToastProvider(props) {\n const {\n children,\n timeout = 5000,\n limit = 3,\n toastManager\n } = props;\n const store = useRefWithInit(() => new ToastStore({\n timeout,\n limit,\n viewport: null,\n toasts: [],\n hovering: false,\n focused: false,\n isWindowFocused: true,\n prevFocusElement: null\n })).current;\n useOnMount(store.disposeEffect);\n React.useEffect(function subscribeToToastManager() {\n if (!toastManager) {\n return undefined;\n }\n const unsubscribe = toastManager[' subscribe'](({\n action,\n options\n }) => {\n const id = options.id;\n if (action === 'promise' && options.promise) {\n store.promiseToast(options.promise, options);\n } else if (action === 'update' && id) {\n store.updateToast(id, options);\n } else if (action === 'close') {\n store.closeToast(id);\n } else {\n store.addToast(options);\n }\n });\n return unsubscribe;\n }, [store, toastManager]);\n return /*#__PURE__*/_jsxs(ToastContext.Provider, {\n value: store,\n children: [/*#__PURE__*/_jsx(ToastProviderPropsSynchronizer, {\n store: store,\n timeout: timeout,\n limit: limit\n }), children]\n });\n};\nif (process.env.NODE_ENV !== \"production\") ToastProvider.displayName = \"ToastProvider\";\nfunction ToastProviderPropsSynchronizer(props) {\n const {\n store,\n timeout,\n limit\n } = props;\n\n // `limit` needs custom syncing because changing it must also recompute each\n // toast's `limited` flag; `useSyncedValues` would only update the raw value.\n useIsoLayoutEffect(() => {\n store.syncProviderProps(timeout, limit);\n }, [store, timeout, limit]);\n return null;\n}","'use client';\n\nimport _formatErrorMessage from \"@base-ui/utils/formatErrorMessage\";\nimport * as React from 'react';\nexport const ToastContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== \"production\") ToastContext.displayName = \"ToastContext\";\nexport function useToastProviderContext() {\n const context = React.useContext(ToastContext);\n if (!context) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? 'Base UI: useToastManager must be used within <Toast.Provider>.' : _formatErrorMessage(73));\n }\n return context;\n}","let counter = 0;\nexport function generateId(prefix) {\n counter += 1;\n return `${prefix}-${Math.random().toString(36).slice(2, 6)}-${counter}`;\n}","export function resolvePromiseOptions(options, result) {\n if (typeof options === 'string') {\n return {\n description: options\n };\n }\n if (typeof options === 'function') {\n const resolvedOptions = options(result);\n return typeof resolvedOptions === 'string' ? {\n description: resolvedOptions\n } : resolvedOptions;\n }\n return options;\n}","import { ReactStore } from '@base-ui/utils/store';\nimport { generateId } from '@base-ui/utils/generateId';\nimport { ownerDocument } from '@base-ui/utils/owner';\nimport { Timeout } from '@base-ui/utils/useTimeout';\nimport { resolvePromiseOptions } from \"./utils/resolvePromiseOptions.mjs\";\nimport { activeElement, contains, getTarget } from \"../floating-ui-react/utils.mjs\";\nimport { isFocusVisible } from \"./utils/focusVisible.mjs\";\n\n/**\n * A toast once it lives in the store. `addToast` is the only way in and it always\n * assigns `updateKey`, so unlike the public `ToastObject` it is never missing.\n */\n\nfunction createToastMetadata(toasts) {\n const metadata = new Map();\n let visibleIndex = 0;\n let offsetY = 0;\n toasts.forEach((toast, toastIndex) => {\n const isEnding = toast.transitionStatus === 'ending';\n metadata.set(toast.id, {\n value: toast,\n domIndex: toastIndex,\n visibleIndex: isEnding ? -1 : visibleIndex,\n offsetY\n });\n offsetY += toast.height || 0;\n if (!isEnding) {\n visibleIndex += 1;\n }\n });\n return metadata;\n}\n\n// Marks the active (non-ending) toasts beyond `limit` as limited. Callers pass\n// toasts in newest-first order, so the newest `limit` toasts stay visible and\n// the rest are flagged. Returns the same toast reference when its `limited`\n// flag is unchanged to avoid unnecessary re-renders.\nfunction applyLimited(toasts, limit) {\n let activeIndex = 0;\n return toasts.map(toast => {\n if (toast.transitionStatus === 'ending') {\n return toast;\n }\n const limited = activeIndex >= limit;\n activeIndex += 1;\n return toast.limited === limited ? toast : {\n ...toast,\n limited\n };\n });\n}\nexport const selectors = {\n toasts: state => state.toasts,\n isEmpty: state => state.toasts.length === 0,\n toast: (state, id) => state.toastMetadata.get(id)?.value,\n toastIndex: (state, id) => state.toastMetadata.get(id)?.domIndex ?? -1,\n toastOffsetY: (state, id) => state.toastMetadata.get(id)?.offsetY ?? 0,\n toastVisibleIndex: (state, id) => state.toastMetadata.get(id)?.visibleIndex ?? -1,\n focused: state => state.focused,\n expanded: state => state.hovering || state.focused,\n expandedOrOutOfFocus: state => state.hovering || state.focused || !state.isWindowFocused,\n prevFocusElement: state => state.prevFocusElement\n};\nexport class ToastStore extends ReactStore {\n timers = new Map();\n areTimersPaused = false;\n constructor(initialState) {\n super({\n ...initialState,\n toastMetadata: createToastMetadata(initialState.toasts)\n }, {}, selectors);\n }\n setViewport = viewport => {\n this.set('viewport', viewport);\n };\n syncProviderProps(timeout, limit) {\n const limitChanged = this.state.limit !== limit;\n if (this.state.timeout === timeout && !limitChanged) {\n return;\n }\n const updates = {\n timeout,\n limit\n };\n if (limitChanged) {\n const newToasts = applyLimited(this.state.toasts, limit);\n updates.toasts = newToasts;\n updates.toastMetadata = createToastMetadata(newToasts);\n }\n this.update(updates);\n }\n disposeEffect = () => {\n return () => {\n this.timers.forEach(timer => {\n timer.timeout?.clear();\n });\n this.timers.clear();\n };\n };\n removeToast(toastId, skipOnRemove = false) {\n const index = selectors.toastIndex(this.state, toastId);\n if (index === -1) {\n return;\n }\n const toast = this.state.toasts[index];\n if (!skipOnRemove) {\n toast?.onRemove?.();\n }\n const newToasts = [...this.state.toasts];\n newToasts.splice(index, 1);\n this.setToasts(newToasts);\n }\n addToast = toast => {\n const {\n timeout,\n limit\n } = this.state;\n const id = toast.id || generateId('toast');\n if (toast.id) {\n const existingToast = selectors.toast(this.state, toast.id);\n if (existingToast) {\n if (existingToast.transitionStatus === 'ending') {\n this.removeToast(toast.id, true);\n } else {\n const {\n id: ignoredId,\n transitionStatus: ignoredTransitionStatus,\n ...updates\n } = toast;\n this.updateToastInternal(toast.id, updates, true, true);\n return toast.id;\n }\n }\n }\n const toastToAdd = {\n ...toast,\n id,\n updateKey: 0,\n transitionStatus: 'starting'\n };\n const updatedToasts = [toastToAdd, ...this.state.toasts];\n this.setToasts(applyLimited(updatedToasts, limit));\n const duration = toastToAdd.timeout ?? timeout;\n if (toastToAdd.type !== 'loading' && duration > 0) {\n this.scheduleTimer(id, duration, () => this.closeToast(id));\n }\n if (selectors.expandedOrOutOfFocus(this.state)) {\n this.pauseTimers();\n }\n return id;\n };\n updateToast = (id, updates) => {\n this.updateToastInternal(id, updates, false, true);\n };\n updateToastInternal = (id, updates, resetTimer = false, markUpdated = false) => {\n const {\n timeout,\n toasts\n } = this.state;\n const prevToast = selectors.toast(this.state, id);\n if (!prevToast) {\n return;\n }\n\n // Ignore updates for toasts that are already closing.\n // This prevents races where async updates (e.g. promise success/error)\n // can block a dismissal from completing.\n if (prevToast.transitionStatus === 'ending') {\n return;\n }\n const nextToast = {\n ...prevToast,\n ...updates,\n ...(markUpdated && {\n updateKey: prevToast.updateKey + 1\n })\n };\n this.setToasts(toasts.map(toast => toast.id === id ? nextToast : toast));\n const nextTimeout = nextToast.timeout ?? timeout;\n const prevTimeout = prevToast.timeout ?? timeout;\n const timeoutUpdated = Object.hasOwn(updates, 'timeout');\n const shouldHaveTimer = nextToast.transitionStatus !== 'ending' && nextToast.type !== 'loading' && nextTimeout > 0;\n const hasTimer = this.timers.has(id);\n const timeoutChanged = prevTimeout !== nextTimeout;\n const wasLoading = prevToast.type === 'loading';\n if (!shouldHaveTimer && hasTimer) {\n this.clearTimer(id);\n return;\n }\n\n // Schedule or reschedule timer if needed\n if (shouldHaveTimer && (!hasTimer || timeoutChanged || timeoutUpdated || wasLoading || resetTimer)) {\n this.clearTimer(id);\n this.scheduleTimer(id, nextTimeout, () => this.closeToast(id));\n if (selectors.expandedOrOutOfFocus(this.state)) {\n this.pauseTimers();\n }\n }\n };\n closeToast = toastId => {\n const closeAll = toastId === undefined;\n const {\n limit,\n toasts\n } = this.state;\n let toastsToClose;\n if (closeAll) {\n toastsToClose = toasts;\n this.clearTimers();\n } else {\n const toast = selectors.toast(this.state, toastId);\n if (!toast) {\n return;\n }\n toastsToClose = [toast];\n this.clearTimer(toastId);\n }\n const endingToasts = toasts.map(item => closeAll || item.id === toastId ? {\n ...item,\n transitionStatus: 'ending',\n height: 0\n } : item);\n const newToasts = applyLimited(endingToasts, limit);\n this.setToasts(newToasts, !newToasts.some(toast => toast.transitionStatus !== 'ending'));\n toastsToClose.forEach(toast => {\n if (toast.transitionStatus !== 'ending') {\n toast.onClose?.();\n }\n });\n this.handleFocusManagement(toastId);\n };\n promiseToast = (promiseValue, options) => {\n // Create a loading toast (which does not auto-dismiss).\n const loadingOptions = resolvePromiseOptions(options.loading);\n const id = this.addToast({\n ...loadingOptions,\n type: 'loading'\n });\n const handledPromise = promiseValue.then(result => {\n const successOptions = resolvePromiseOptions(options.success, result);\n this.updateToast(id, {\n ...successOptions,\n type: 'success',\n timeout: successOptions.timeout\n });\n return result;\n }).catch(error => {\n const errorOptions = resolvePromiseOptions(options.error, error);\n this.updateToast(id, {\n ...errorOptions,\n type: 'error',\n timeout: errorOptions.timeout\n });\n return Promise.reject(error);\n });\n\n // Private API used exclusively by `Manager` to handoff the promise\n // back to the manager after it's handled here.\n if ({}.hasOwnProperty.call(options, 'setPromise')) {\n options.setPromise(handledPromise);\n }\n return handledPromise;\n };\n pauseTimers() {\n if (this.areTimersPaused) {\n return;\n }\n this.areTimersPaused = true;\n this.timers.forEach(timer => {\n // Timers added while already paused have no running timeout, so their\n // `remaining` is still the full delay and must be left alone.\n if (timer.timeout) {\n timer.timeout.clear();\n // `start` is stamped on every resume, so subtracting from `remaining`\n // (rather than from the original delay) keeps repeated pause/resume\n // cycles from handing the toast extra time.\n timer.remaining = Math.max(timer.remaining - (Date.now() - timer.start), 0);\n }\n });\n }\n resumeTimers() {\n if (!this.areTimersPaused) {\n return;\n }\n this.areTimersPaused = false;\n this.timers.forEach((timer, id) => {\n timer.remaining = timer.remaining > 0 ? timer.remaining : timer.delay;\n timer.timeout ??= Timeout.create();\n timer.timeout.start(timer.remaining, () => {\n this.handleTimerFired(id);\n timer.callback();\n });\n timer.start = Date.now();\n });\n }\n restoreFocusToPrevElement() {\n this.state.prevFocusElement?.focus({\n preventScroll: true\n });\n }\n handleDocumentPointerDown = event => {\n if (event.pointerType !== 'touch') {\n return;\n }\n const target = getTarget(event);\n if (contains(this.state.viewport, target)) {\n return;\n }\n\n // This is explicit touch activity outside the viewport, so the paused\n // interaction state should end even if the window focus state is unchanged.\n this.resumeTimers();\n this.update({\n hovering: false,\n focused: false\n });\n };\n scheduleTimer(id, delay, callback) {\n const start = Date.now();\n const shouldStartActive = !selectors.expandedOrOutOfFocus(this.state);\n const currentTimeout = shouldStartActive ? Timeout.create() : undefined;\n currentTimeout?.start(delay, () => {\n this.handleTimerFired(id);\n callback();\n });\n this.timers.set(id, {\n timeout: currentTimeout,\n start,\n delay,\n remaining: delay,\n callback\n });\n }\n clearTimers() {\n this.timers.forEach(timer => {\n timer.timeout?.clear();\n });\n this.timers.clear();\n this.areTimersPaused = false;\n }\n clearTimer(id) {\n const timer = this.timers.get(id);\n timer?.timeout?.clear();\n this.timers.delete(id);\n this.resetPausedStateIfNoTimersRemain();\n }\n handleTimerFired(id) {\n this.timers.delete(id);\n this.resetPausedStateIfNoTimersRemain();\n }\n resetPausedStateIfNoTimersRemain() {\n if (this.timers.size === 0) {\n // No timers remain to keep paused; clear the flag so a fresh toast's\n // running timer can be paused again on hover/focus.\n this.areTimersPaused = false;\n }\n }\n setToasts(newToasts, clearInteraction = newToasts.length === 0) {\n const updates = {\n toasts: newToasts,\n toastMetadata: createToastMetadata(newToasts)\n };\n if (clearInteraction) {\n updates.hovering = false;\n updates.focused = false;\n }\n this.update(updates);\n }\n handleFocusManagement(toastId) {\n const activeEl = activeElement(ownerDocument(this.state.viewport));\n if (!this.state.viewport || !contains(this.state.viewport, activeEl) || !isFocusVisible(activeEl)) {\n return;\n }\n if (toastId === undefined) {\n this.restoreFocusToPrevElement();\n return;\n }\n const toasts = selectors.toasts(this.state);\n const currentIndex = selectors.toastIndex(this.state, toastId);\n const scan = (from, step) => {\n for (let index = from; index >= 0 && index < toasts.length; index += step) {\n if (toasts[index].transitionStatus !== 'ending') {\n return toasts[index];\n }\n }\n return null;\n };\n\n // Try to find the next toast that isn't animating out, then fall back to the previous one.\n const nextToast = scan(currentIndex + 1, 1) ?? scan(currentIndex - 1, -1);\n if (nextToast) {\n nextToast.ref?.current?.focus();\n } else {\n this.restoreFocusToPrevElement();\n }\n }\n}","'use client';\n\nimport * as React from 'react';\nimport { addEventListener } from '@base-ui/utils/addEventListener';\nimport { mergeCleanups } from '@base-ui/utils/mergeCleanups';\nimport { ownerDocument, ownerWindow } from '@base-ui/utils/owner';\nimport { visuallyHidden } from '@base-ui/utils/visuallyHidden';\nimport { useTimeout } from '@base-ui/utils/useTimeout';\nimport { activeElement, contains, getTarget } from \"../../floating-ui-react/utils.mjs\";\nimport { FocusGuard } from \"../../utils/FocusGuard.mjs\";\nimport { useToastProviderContext } from \"../provider/ToastProviderContext.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\nimport { isFocusVisible } from \"../utils/focusVisible.mjs\";\n\n/**\n * A container viewport for toasts.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Toast](https://base-ui.com/react/components/toast)\n */\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nexport const ToastViewport = /*#__PURE__*/React.forwardRef(function ToastViewport(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n children,\n ...elementProps\n } = componentProps;\n const store = useToastProviderContext();\n const windowFocusTimeout = useTimeout();\n const handlingFocusGuardRef = React.useRef(false);\n const markedReadyForMouseLeaveRef = React.useRef(false);\n const touchActiveRef = React.useRef(false);\n const isEmpty = store.useState('isEmpty');\n const toasts = store.useState('toasts');\n const focused = store.useState('focused');\n const expanded = store.useState('expanded');\n const prevFocusElement = store.useState('prevFocusElement');\n const frontmostHeight = toasts[0]?.height;\n const hasTransitioningToasts = toasts.some(toast => toast.transitionStatus === 'ending');\n const highPriorityToasts = toasts.filter(toast => toast.priority === 'high');\n React.useEffect(() => {\n // `store.state.viewport` isn't available on the first render, since the portal node hasn't yet\n // been created. Depending on `isEmpty` ensures the listeners are attached once toasts exist and\n // the viewport ref is available.\n const viewport = store.state.viewport;\n if (!viewport || isEmpty) {\n return undefined;\n }\n const win = ownerWindow(viewport);\n const doc = ownerDocument(viewport);\n\n // Listen globally for F6 so we can force-focus the viewport.\n function handleGlobalKeyDown(event) {\n if (event.key === 'F6' && getTarget(event) !== viewport) {\n event.preventDefault();\n store.set('prevFocusElement', activeElement(doc));\n viewport?.focus({\n preventScroll: true\n });\n store.pauseTimers();\n store.set('focused', true);\n }\n }\n function handleWindowBlur(event) {\n if (getTarget(event) !== win) {\n return;\n }\n store.set('isWindowFocused', false);\n store.pauseTimers();\n }\n function handleWindowFocus(event) {\n if (event.relatedTarget) {\n return;\n }\n const target = getTarget(event);\n const activeEl = activeElement(ownerDocument(viewport));\n if (target === win || !contains(viewport, target) || !isFocusVisible(activeEl)) {\n store.resumeTimers();\n }\n\n // Wait for the `handleFocus` event to fire.\n windowFocusTimeout.start(0, () => store.set('isWindowFocused', true));\n }\n return mergeCleanups(addEventListener(win, 'keydown', handleGlobalKeyDown), addEventListener(win, 'blur', handleWindowBlur, true), addEventListener(win, 'focus', handleWindowFocus, true), addEventListener(doc, 'pointerdown', store.handleDocumentPointerDown, true));\n }, [store, windowFocusTimeout, isEmpty]);\n function handleFocusGuard(event) {\n handlingFocusGuardRef.current = true;\n\n // If we're coming off the container, move to the first toast that can hold\n // focus, skipping toasts that are animating out or inert because they're limited.\n const firstFocusableToast = event.relatedTarget === store.state.viewport ? toasts.find(toast => toast.transitionStatus !== 'ending' && !toast.limited) : undefined;\n if (firstFocusableToast) {\n firstFocusableToast.ref?.current?.focus();\n } else {\n store.restoreFocusToPrevElement();\n }\n }\n function handleKeyDown(event) {\n if (event.key === 'Tab' && event.shiftKey && getTarget(event.nativeEvent) === store.state.viewport) {\n event.preventDefault();\n // Restoring focus blurs the viewport, and `handleBlur` resumes the timers\n // from there. Resuming here as well would also fire when the previously\n // focused element lives inside the viewport, letting toasts dismiss out\n // from under the keyboard.\n store.restoreFocusToPrevElement();\n }\n }\n function flushMouseLeave() {\n const hasEndingToasts = store.state.toasts.some(toast => toast.transitionStatus === 'ending');\n if (hasEndingToasts || touchActiveRef.current || !markedReadyForMouseLeaveRef.current) {\n return;\n }\n\n // Once transitions have finished, see if a mouseleave was already triggered\n // but blocked from taking effect. If so, we can now safely collapse the viewport\n // without restarting timers while the window is blurred.\n if (store.state.isWindowFocused) {\n store.resumeTimers();\n }\n store.set('hovering', false);\n markedReadyForMouseLeaveRef.current = false;\n }\n React.useEffect(flushMouseLeave, [hasTransitioningToasts, store]);\n function handleMouseEnter() {\n store.pauseTimers();\n store.set('hovering', true);\n markedReadyForMouseLeaveRef.current = false;\n }\n function resumeTimersIfWindowFocused() {\n if (store.state.isWindowFocused) {\n store.resumeTimers();\n }\n }\n function handleMouseLeave() {\n // Defer to `flushMouseLeave`: while toasts are transitioning out or a touch gesture is active it\n // records the intent and collapses later; otherwise it collapses immediately.\n markedReadyForMouseLeaveRef.current = true;\n flushMouseLeave();\n }\n function handlePointerDown(event) {\n if (event.pointerType === 'touch') {\n touchActiveRef.current = true;\n }\n }\n function handlePointerEnd(event) {\n if (event.pointerType !== 'touch') {\n return;\n }\n touchActiveRef.current = false;\n flushMouseLeave();\n }\n function handleFocus() {\n if (handlingFocusGuardRef.current) {\n handlingFocusGuardRef.current = false;\n return;\n }\n if (focused) {\n return;\n }\n\n // Only set focused when the active element is focus-visible.\n // This prevents the viewport from staying expanded when clicking inside without\n // keyboard navigation.\n if (isFocusVisible(activeElement(ownerDocument(store.state.viewport)))) {\n store.set('focused', true);\n store.pauseTimers();\n }\n }\n function handleBlur(event) {\n if (!focused || contains(store.state.viewport, event.relatedTarget)) {\n return;\n }\n store.set('focused', false);\n resumeTimersIfWindowFocused();\n }\n const defaultProps = {\n tabIndex: -1,\n role: 'region',\n 'aria-live': 'polite',\n 'aria-atomic': false,\n 'aria-relevant': 'additions text',\n 'aria-label': 'Notifications',\n onMouseEnter: handleMouseEnter,\n onMouseMove: handleMouseEnter,\n onMouseLeave: handleMouseLeave,\n onFocus: handleFocus,\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n onClick: handleFocus,\n onPointerDown: handlePointerDown,\n onPointerUp: handlePointerEnd,\n onPointerCancel: handlePointerEnd,\n style: {\n ['--toast-frontmost-height']: frontmostHeight ? `${frontmostHeight}px` : undefined\n }\n };\n const state = {\n expanded\n };\n const focusGuard = !isEmpty && prevFocusElement && /*#__PURE__*/_jsx(FocusGuard, {\n onFocus: handleFocusGuard\n });\n const element = useRenderElement('div', componentProps, {\n ref: [forwardedRef, store.setViewport],\n state,\n props: [defaultProps, elementProps, {\n children: /*#__PURE__*/_jsxs(React.Fragment, {\n children: [focusGuard, children, focusGuard]\n })\n }]\n });\n return /*#__PURE__*/_jsxs(React.Fragment, {\n children: [focusGuard, element, !focused && highPriorityToasts.length > 0 && /*#__PURE__*/_jsx(\"div\", {\n style: visuallyHidden,\n children: highPriorityToasts.map(toast => /*#__PURE__*/_jsxs(\"div\", {\n role: \"alert\",\n \"aria-atomic\": true,\n children: [/*#__PURE__*/_jsx(\"div\", {\n children: toast.title\n }), /*#__PURE__*/_jsx(\"div\", {\n children: toast.description\n })]\n }, toast.id))\n })]\n });\n});\nif (process.env.NODE_ENV !== \"production\") ToastViewport.displayName = \"ToastViewport\";","'use client';\n\nimport * as React from 'react';\nimport * as ReactDOM from 'react-dom';\nimport { addEventListener } from '@base-ui/utils/addEventListener';\nimport { ownerDocument } from '@base-ui/utils/owner';\nimport { inertValue } from '@base-ui/utils/inertValue';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { useStableCallback } from '@base-ui/utils/useStableCallback';\nimport { activeElement, contains, getTarget } from \"../../floating-ui-react/utils.mjs\";\nimport { ToastRootContext } from \"./ToastRootContext.mjs\";\nimport { transitionStatusMapping } from \"../../internals/stateAttributesMapping.mjs\";\nimport { useToastProviderContext } from \"../provider/ToastProviderContext.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\nimport { useOpenChangeComplete } from \"../../internals/useOpenChangeComplete.mjs\";\nimport { BASE_UI_SWIPE_IGNORE_SELECTOR, LEGACY_SWIPE_IGNORE_SELECTOR } from \"../../internals/constants.mjs\";\nimport { getDisplacement, getElementTransform } from \"../../utils/useSwipeDismiss.mjs\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport const toastRootStateAttributesMapping = {\n ...transitionStatusMapping,\n swipeDirection(value) {\n return value ? {\n 'data-swipe-direction': value\n } : null;\n }\n};\nconst SWIPE_THRESHOLD = 40;\nconst REVERSE_CANCEL_THRESHOLD = 10;\nconst OPPOSITE_DIRECTION_DAMPING_FACTOR = 0.5;\nconst MIN_DRAG_THRESHOLD = 1;\nconst TOAST_SWIPE_IGNORE_SELECTOR = `${BASE_UI_SWIPE_IGNORE_SELECTOR},${LEGACY_SWIPE_IGNORE_SELECTOR}`;\n\n/**\n * Groups all parts of an individual toast.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Toast](https://base-ui.com/react/components/toast)\n */\nexport const ToastRoot = /*#__PURE__*/React.forwardRef(function ToastRoot(componentProps, forwardedRef) {\n const {\n toast,\n render,\n className,\n swipeDirection = ['down', 'right'],\n style,\n ...elementProps\n } = componentProps;\n const isAnchored = toast.positionerProps?.anchor !== undefined;\n let swipeDirections = [];\n if (!isAnchored) {\n swipeDirections = Array.isArray(swipeDirection) ? swipeDirection : [swipeDirection];\n }\n const swipeEnabled = swipeDirections.length > 0;\n const store = useToastProviderContext();\n const [currentSwipeDirection, setCurrentSwipeDirection] = React.useState(undefined);\n const [isSwiping, setIsSwiping] = React.useState(false);\n const [isRealSwipe, setIsRealSwipe] = React.useState(false);\n const [dragOffset, setDragOffset] = React.useState({\n x: 0,\n y: 0\n });\n const [initialTransform, setInitialTransform] = React.useState({\n x: 0,\n y: 0,\n scale: 1\n });\n const [titleId, setTitleId] = React.useState();\n const [descriptionId, setDescriptionId] = React.useState();\n const [lockedDirection, setLockedDirection] = React.useState(null);\n const rootRef = React.useRef(null);\n const lastToastIdRef = React.useRef(undefined);\n const dragStartPosRef = React.useRef({\n x: 0,\n y: 0\n });\n const initialTransformRef = React.useRef({\n x: 0,\n y: 0,\n scale: 1\n });\n const intendedSwipeDirectionRef = React.useRef(undefined);\n const maxSwipeDisplacementRef = React.useRef(0);\n const cancelledSwipeRef = React.useRef(false);\n const swipeCancelBaselineRef = React.useRef({\n x: 0,\n y: 0\n });\n const isFirstPointerMoveRef = React.useRef(false);\n const dragOffsetRef = React.useRef({\n x: 0,\n y: 0\n });\n const activePointerIdRef = React.useRef(null);\n const dragAbortControllerRef = React.useRef(null);\n const domIndex = store.useState('toastIndex', toast.id);\n const visibleIndex = store.useState('toastVisibleIndex', toast.id);\n const offsetY = store.useState('toastOffsetY', toast.id);\n const focused = store.useState('focused');\n const expanded = store.useState('expanded');\n useOpenChangeComplete({\n open: toast.transitionStatus !== 'ending',\n ref: rootRef,\n onComplete() {\n if (toast.transitionStatus === 'ending') {\n store.removeToast(toast.id);\n }\n }\n });\n\n // Recalculates the natural height of the toast and updates it in the toast manager.\n // `flushSync` avoids visual flickers when called from observer callbacks.\n // The store ignores this write while the toast is transitioning out.\n const recalculateHeight = useStableCallback((flushSync = false) => {\n const element = rootRef.current;\n if (!element) {\n return;\n }\n const previousHeight = element.style.height;\n element.style.height = 'auto';\n const height = element.offsetHeight;\n element.style.height = previousHeight;\n function update() {\n store.updateToastInternal(toast.id, {\n ref: rootRef,\n height,\n transitionStatus: undefined\n });\n }\n if (flushSync) {\n ReactDOM.flushSync(update);\n } else {\n update();\n }\n });\n\n // Initialize the toast on mount, and reinitialize when it begins a new lifecycle:\n // re-adding an ending toast retains the same root instance (`key={toast.id}`), and\n // index-keyed lists can hand an existing instance a different toast.\n useIsoLayoutEffect(() => {\n const previousToastId = lastToastIdRef.current;\n // `recalculateHeight` clears the `starting` status itself, so bail out on the\n // resulting re-run and on the later `ending` one, which the store discards anyway.\n if (toast.transitionStatus !== 'starting' && previousToastId === toast.id) {\n return;\n }\n if (previousToastId !== undefined) {\n // A retained root keeps component-local swipe state from its previous lifecycle;\n // clear it so the toast doesn't stay offset or exit in the swiped direction.\n setCurrentSwipeDirection(undefined);\n setInitialTransform({\n x: 0,\n y: 0,\n scale: 1\n });\n setResolvedDragOffset({\n x: 0,\n y: 0\n });\n }\n lastToastIdRef.current = toast.id;\n recalculateHeight();\n }, [recalculateHeight, toast.id, toast.transitionStatus]);\n function setResolvedDragOffset(nextDragOffset) {\n dragOffsetRef.current = nextDragOffset;\n setDragOffset(nextDragOffset);\n }\n useIsoLayoutEffect(() => {\n return () => {\n dragAbortControllerRef.current?.abort();\n };\n }, []);\n function applyDirectionalDamping(deltaX, deltaY) {\n const damp = delta => delta > 0 ? delta ** OPPOSITE_DIRECTION_DAMPING_FACTOR : -(Math.abs(delta) ** OPPOSITE_DIRECTION_DAMPING_FACTOR);\n const dampX = deltaX > 0 && !swipeDirections.includes('right') || deltaX < 0 && !swipeDirections.includes('left');\n const dampY = deltaY > 0 && !swipeDirections.includes('down') || deltaY < 0 && !swipeDirections.includes('up');\n return {\n x: dampX ? damp(deltaX) : deltaX,\n y: dampY ? damp(deltaY) : deltaY\n };\n }\n const handleSwipeEnd = useStableCallback(event => {\n if (event.pointerId !== activePointerIdRef.current) {\n return;\n }\n activePointerIdRef.current = null;\n dragAbortControllerRef.current?.abort();\n dragAbortControllerRef.current = null;\n setIsSwiping(false);\n setIsRealSwipe(false);\n setLockedDirection(null);\n const resolvedInitialTransform = initialTransformRef.current;\n if (event.type === 'pointercancel' || cancelledSwipeRef.current) {\n setResolvedDragOffset({\n x: resolvedInitialTransform.x,\n y: resolvedInitialTransform.y\n });\n setCurrentSwipeDirection(undefined);\n return;\n }\n const resolvedDragOffset = dragOffsetRef.current;\n const deltaX = resolvedDragOffset.x - resolvedInitialTransform.x;\n const deltaY = resolvedDragOffset.y - resolvedInitialTransform.y;\n let dismissDirection;\n for (const direction of swipeDirections) {\n if (getDisplacement(direction, deltaX, deltaY) > SWIPE_THRESHOLD) {\n dismissDirection = direction;\n break;\n }\n }\n if (dismissDirection) {\n setCurrentSwipeDirection(dismissDirection);\n store.closeToast(toast.id);\n } else {\n setResolvedDragOffset({\n x: resolvedInitialTransform.x,\n y: resolvedInitialTransform.y\n });\n setCurrentSwipeDirection(undefined);\n }\n });\n function handlePointerDown(event) {\n if (event.button !== 0) {\n return;\n }\n if (event.pointerType === 'touch') {\n store.pauseTimers();\n }\n const target = getTarget(event.nativeEvent);\n const isInteractiveElement = target?.closest(`button,a,input,textarea,[role=\"button\"],${TOAST_SWIPE_IGNORE_SELECTOR}`);\n if (isInteractiveElement) {\n return;\n }\n cancelledSwipeRef.current = false;\n intendedSwipeDirectionRef.current = undefined;\n maxSwipeDisplacementRef.current = 0;\n activePointerIdRef.current = event.pointerId;\n dragStartPosRef.current = {\n x: event.clientX,\n y: event.clientY\n };\n swipeCancelBaselineRef.current = dragStartPosRef.current;\n const element = event.currentTarget;\n const transform = getElementTransform(element);\n initialTransformRef.current = transform;\n setInitialTransform(transform);\n setResolvedDragOffset({\n x: transform.x,\n y: transform.y\n });\n store.set('hovering', true);\n setIsSwiping(true);\n setIsRealSwipe(false);\n setLockedDirection(null);\n isFirstPointerMoveRef.current = true;\n dragAbortControllerRef.current?.abort();\n const dragAbortController = new AbortController();\n dragAbortControllerRef.current = dragAbortController;\n const doc = ownerDocument(element);\n doc.addEventListener('pointerup', handleSwipeEnd, {\n signal: dragAbortController.signal\n });\n doc.addEventListener('pointercancel', handleSwipeEnd, {\n signal: dragAbortController.signal\n });\n element.setPointerCapture?.(event.pointerId);\n }\n function handlePointerMove(event) {\n if (event.pointerId !== activePointerIdRef.current) {\n return;\n }\n\n // Prevent text selection on Safari\n event.preventDefault();\n if (isFirstPointerMoveRef.current) {\n // Adjust the starting position to the current position on the first move\n // to account for the delay between pointerdown and the first pointermove on iOS.\n dragStartPosRef.current = {\n x: event.clientX,\n y: event.clientY\n };\n isFirstPointerMoveRef.current = false;\n }\n const {\n clientY,\n clientX,\n movementX,\n movementY\n } = event;\n if (movementY < 0 && clientY > swipeCancelBaselineRef.current.y || movementY > 0 && clientY < swipeCancelBaselineRef.current.y) {\n swipeCancelBaselineRef.current = {\n x: swipeCancelBaselineRef.current.x,\n y: clientY\n };\n }\n if (movementX < 0 && clientX > swipeCancelBaselineRef.current.x || movementX > 0 && clientX < swipeCancelBaselineRef.current.x) {\n swipeCancelBaselineRef.current = {\n x: clientX,\n y: swipeCancelBaselineRef.current.y\n };\n }\n const deltaX = clientX - dragStartPosRef.current.x;\n const deltaY = clientY - dragStartPosRef.current.y;\n const cancelDeltaY = clientY - swipeCancelBaselineRef.current.y;\n const cancelDeltaX = clientX - swipeCancelBaselineRef.current.x;\n let resolvedLockedDirection = lockedDirection;\n if (!isRealSwipe) {\n const movementDistance = Math.sqrt(deltaX * deltaX + deltaY * deltaY);\n if (movementDistance >= MIN_DRAG_THRESHOLD) {\n setIsRealSwipe(true);\n // `lockedDirection` is always reset alongside `isRealSwipe`, so it is\n // still `null` here. Locking is only meaningful when both axes are\n // swipeable; otherwise the single axis already constrains the gesture.\n const hasHorizontal = swipeDirections.includes('left') || swipeDirections.includes('right');\n const hasVertical = swipeDirections.includes('up') || swipeDirections.includes('down');\n if (hasHorizontal && hasVertical) {\n const absX = Math.abs(deltaX);\n const absY = Math.abs(deltaY);\n resolvedLockedDirection = absX > absY ? 'horizontal' : 'vertical';\n setLockedDirection(resolvedLockedDirection);\n }\n }\n }\n let candidate;\n if (!intendedSwipeDirectionRef.current) {\n if (resolvedLockedDirection === 'vertical') {\n if (deltaY > 0) {\n candidate = 'down';\n } else if (deltaY < 0) {\n candidate = 'up';\n }\n } else if (resolvedLockedDirection === 'horizontal') {\n if (deltaX > 0) {\n candidate = 'right';\n } else if (deltaX < 0) {\n candidate = 'left';\n }\n } else if (Math.abs(deltaX) >= Math.abs(deltaY)) {\n candidate = deltaX > 0 ? 'right' : 'left';\n } else {\n candidate = deltaY > 0 ? 'down' : 'up';\n }\n if (candidate && swipeDirections.includes(candidate)) {\n intendedSwipeDirectionRef.current = candidate;\n maxSwipeDisplacementRef.current = getDisplacement(candidate, deltaX, deltaY);\n setCurrentSwipeDirection(candidate);\n }\n } else {\n const direction = intendedSwipeDirectionRef.current;\n const currentDisplacement = getDisplacement(direction, cancelDeltaX, cancelDeltaY);\n if (currentDisplacement > SWIPE_THRESHOLD) {\n cancelledSwipeRef.current = false;\n setCurrentSwipeDirection(direction);\n } else if (!(swipeDirections.includes('left') && swipeDirections.includes('right')) && !(swipeDirections.includes('up') && swipeDirections.includes('down')) && maxSwipeDisplacementRef.current - currentDisplacement >= REVERSE_CANCEL_THRESHOLD) {\n // Mark that a change-of-mind has occurred\n cancelledSwipeRef.current = true;\n }\n }\n const dampedDelta = applyDirectionalDamping(deltaX, deltaY);\n let newOffsetX = initialTransformRef.current.x;\n let newOffsetY = initialTransformRef.current.y;\n const hasHorizontalDir = swipeDirections.includes('left') || swipeDirections.includes('right');\n const hasVerticalDir = swipeDirections.includes('up') || swipeDirections.includes('down');\n if (resolvedLockedDirection !== 'vertical' && hasHorizontalDir) {\n newOffsetX += dampedDelta.x;\n }\n if (resolvedLockedDirection !== 'horizontal' && hasVerticalDir) {\n newOffsetY += dampedDelta.y;\n }\n setResolvedDragOffset({\n x: newOffsetX,\n y: newOffsetY\n });\n }\n function handleKeyDown(event) {\n if (event.key === 'Escape') {\n if (!rootRef.current || !contains(rootRef.current, activeElement(ownerDocument(rootRef.current)))) {\n return;\n }\n store.closeToast(toast.id);\n }\n }\n React.useEffect(() => {\n const element = rootRef.current;\n if (!swipeEnabled || !element) {\n return undefined;\n }\n function preventDefaultTouchStart(event) {\n if (activePointerIdRef.current === null || !contains(element, getTarget(event))) {\n return;\n }\n\n // React's pointermove preventDefault is not enough on iOS; this\n // non-passive touchmove listener blocks native scrolling while dragging.\n event.preventDefault();\n }\n return addEventListener(element, 'touchmove', preventDefaultTouchStart, {\n passive: false\n });\n }, [swipeEnabled]);\n function getDragStyles() {\n const deltaX = dragOffset.x - initialTransform.x;\n const deltaY = dragOffset.y - initialTransform.y;\n return {\n transition: isSwiping ? 'none' : undefined,\n // While swiping, freeze the element at its current visual transform so it doesn't snap to the\n // end position.\n transform: isSwiping ? `translateX(${dragOffset.x}px) translateY(${dragOffset.y}px) scale(${initialTransform.scale})` : undefined,\n ['--toast-swipe-movement-x']: `${deltaX}px`,\n ['--toast-swipe-movement-y']: `${deltaY}px`\n };\n }\n const isHighPriority = toast.priority === 'high';\n const defaultProps = {\n role: isHighPriority ? 'alertdialog' : 'dialog',\n tabIndex: 0,\n 'aria-modal': false,\n 'aria-labelledby': titleId,\n 'aria-describedby': descriptionId,\n 'aria-hidden': isHighPriority && !focused ? true : undefined,\n onPointerDown: swipeEnabled ? handlePointerDown : undefined,\n onPointerMove: swipeEnabled ? handlePointerMove : undefined,\n onPointerUp: swipeEnabled ? handleSwipeEnd : undefined,\n onPointerCancel: swipeEnabled ? handleSwipeEnd : undefined,\n onKeyDown: handleKeyDown,\n inert: inertValue(toast.limited),\n style: {\n ...getDragStyles(),\n ['--toast-index']: toast.transitionStatus === 'ending' ? domIndex : visibleIndex,\n ['--toast-offset-y']: `${offsetY}px`,\n ['--toast-height']: toast.height ? `${toast.height}px` : undefined\n }\n };\n const toastRoot = React.useMemo(() => ({\n toast,\n setTitleId,\n setDescriptionId,\n recalculateHeight,\n visibleIndex,\n expanded\n }), [toast, setTitleId, setDescriptionId, recalculateHeight, visibleIndex, expanded]);\n const state = {\n transitionStatus: toast.transitionStatus,\n expanded,\n limited: toast.limited || false,\n type: toast.type,\n swiping: isSwiping,\n swipeDirection: currentSwipeDirection\n };\n const element = useRenderElement('div', componentProps, {\n ref: [forwardedRef, rootRef],\n state,\n stateAttributesMapping: toastRootStateAttributesMapping,\n props: [defaultProps, elementProps]\n });\n return /*#__PURE__*/_jsx(ToastRootContext.Provider, {\n value: toastRoot,\n children: element\n });\n});\nif (process.env.NODE_ENV !== \"production\") ToastRoot.displayName = \"ToastRoot\";","'use client';\n\nimport _formatErrorMessage from \"@base-ui/utils/formatErrorMessage\";\nimport * as React from 'react';\nexport const ToastRootContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== \"production\") ToastRootContext.displayName = \"ToastRootContext\";\nexport function useToastRootContext() {\n const context = React.useContext(ToastRootContext);\n if (!context) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? 'Base UI: ToastRootContext is missing. Toast parts must be used within <Toast.Root>.' : _formatErrorMessage(66));\n }\n return context;\n}","'use client';\n\nimport * as React from 'react';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { useToastRootContext } from \"../root/ToastRootContext.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\n\n/**\n * A container for the contents of a toast.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Toast](https://base-ui.com/react/components/toast)\n */\nexport const ToastContent = /*#__PURE__*/React.forwardRef(function ToastContent(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n ...elementProps\n } = componentProps;\n const {\n visibleIndex,\n expanded,\n recalculateHeight\n } = useToastRootContext();\n const contentRef = React.useRef(null);\n useIsoLayoutEffect(() => {\n recalculateHeight();\n const node = contentRef.current;\n if (!node || typeof ResizeObserver !== 'function' || typeof MutationObserver !== 'function') {\n return undefined;\n }\n const resizeObserver = new ResizeObserver(() => recalculateHeight(true));\n const mutationObserver = new MutationObserver(() => recalculateHeight(true));\n resizeObserver.observe(node);\n mutationObserver.observe(node, {\n childList: true,\n subtree: true,\n characterData: true\n });\n return () => {\n resizeObserver.disconnect();\n mutationObserver.disconnect();\n };\n }, [recalculateHeight]);\n const behind = visibleIndex > 0;\n const state = {\n expanded,\n behind\n };\n return useRenderElement('div', componentProps, {\n ref: [forwardedRef, contentRef],\n state,\n props: elementProps\n });\n});\nif (process.env.NODE_ENV !== \"production\") ToastContent.displayName = \"ToastContent\";","'use client';\n\nimport * as React from 'react';\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\nimport { useToastLabelElement, useToastLabelPart } from \"../utils/useToastLabelPart.mjs\";\n\n/**\n * A description that describes the toast.\n * Can be used as the default message for the toast when no title is provided.\n * Renders a `<p>` element.\n *\n * Documentation: [Base UI Toast](https://base-ui.com/react/components/toast)\n */\nexport const ToastDescription = /*#__PURE__*/React.forwardRef(function ToastDescription(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n id: idProp,\n children: childrenProp,\n ...elementProps\n } = componentProps;\n const {\n id,\n children,\n type,\n setId\n } = useToastLabelPart(idProp, childrenProp, 'description');\n const state = {\n type\n };\n const element = useRenderElement('p', componentProps, {\n ref: forwardedRef,\n state,\n props: {\n ...elementProps,\n id,\n children\n }\n });\n return useToastLabelElement(element, id, setId);\n});\nif (process.env.NODE_ENV !== \"production\") ToastDescription.displayName = \"ToastDescription\";","import * as React from 'react';\nexport function isRenderableNode(node) {\n if (node == null || typeof node === 'boolean' || node === '') {\n return false;\n }\n if (Array.isArray(node)) {\n return node.some(isRenderableNode);\n }\n return true;\n}\nexport function hasRenderableChildren(element) {\n return /*#__PURE__*/React.isValidElement(element) && isRenderableNode(element.props.children);\n}","'use client';\n\nimport { useId } from '@base-ui/utils/useId';\nimport { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';\nimport { useToastRootContext } from \"../root/ToastRootContext.mjs\";\nimport { hasRenderableChildren } from \"./isRenderableNode.mjs\";\n\n/**\n * Shared logic for `Toast.Title` and `Toast.Description`, which only differ by the rendered tag,\n * the fallback content, and which id setter they register with. Resolves the content and returns\n * the pieces each part passes to `useRenderElement` and `useToastLabelElement`.\n */\nexport function useToastLabelPart(idProp, childrenProp, part) {\n const {\n toast,\n setTitleId,\n setDescriptionId\n } = useToastRootContext();\n const setId = part === 'title' ? setTitleId : setDescriptionId;\n const children = childrenProp ?? (part === 'title' ? toast.title : toast.description);\n const id = useId(idProp);\n return {\n id,\n children,\n type: toast.type,\n setId\n };\n}\n\n/**\n * Mounts the evaluated label element only when it carries renderable content (so a `render` prop's\n * own children count, while a childless styling-only `render` stays conditional), registering the\n * generated id with the root while the part renders.\n */\nexport function useToastLabelElement(element, id, setId) {\n const shouldRender = hasRenderableChildren(element);\n useIsoLayoutEffect(() => {\n if (!shouldRender) {\n return undefined;\n }\n setId(id);\n return () => {\n setId(currentId => currentId === id ? undefined : currentId);\n };\n }, [shouldRender, id, setId]);\n return shouldRender ? element : null;\n}","'use client';\n\nimport * as React from 'react';\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\nimport { useToastLabelElement, useToastLabelPart } from \"../utils/useToastLabelPart.mjs\";\n\n/**\n * A title that labels the toast.\n * Renders an `<h2>` element.\n *\n * Documentation: [Base UI Toast](https://base-ui.com/react/components/toast)\n */\nexport const ToastTitle = /*#__PURE__*/React.forwardRef(function ToastTitle(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n id: idProp,\n children: childrenProp,\n ...elementProps\n } = componentProps;\n const {\n id,\n children,\n type,\n setId\n } = useToastLabelPart(idProp, childrenProp, 'title');\n const state = {\n type\n };\n const element = useRenderElement('h2', componentProps, {\n ref: forwardedRef,\n state,\n props: {\n ...elementProps,\n id,\n children\n }\n });\n return useToastLabelElement(element, id, setId);\n});\nif (process.env.NODE_ENV !== \"production\") ToastTitle.displayName = \"ToastTitle\";","'use client';\n\nimport * as React from 'react';\nimport { useToastRootContext } from \"../root/ToastRootContext.mjs\";\nimport { useToastProviderContext } from \"../provider/ToastProviderContext.mjs\";\nimport { useButton } from \"../../internals/use-button/useButton.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\n\n/**\n * Closes the toast when clicked.\n * Renders a `<button>` element.\n *\n * Documentation: [Base UI Toast](https://base-ui.com/react/components/toast)\n */\nexport const ToastClose = /*#__PURE__*/React.forwardRef(function ToastClose(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n disabled,\n nativeButton = true,\n ...elementProps\n } = componentProps;\n const store = useToastProviderContext();\n const {\n toast,\n expanded\n } = useToastRootContext();\n const [hasFocus, setHasFocus] = React.useState(false);\n const {\n getButtonProps,\n buttonRef\n } = useButton({\n disabled,\n native: nativeButton\n });\n const state = {\n type: toast.type\n };\n return useRenderElement('button', componentProps, {\n ref: [forwardedRef, buttonRef],\n state,\n props: [{\n 'aria-hidden': !expanded && !hasFocus,\n onClick() {\n store.closeToast(toast.id);\n },\n onFocus() {\n setHasFocus(true);\n },\n onBlur() {\n setHasFocus(false);\n }\n }, elementProps, getButtonProps]\n });\n});\nif (process.env.NODE_ENV !== \"production\") ToastClose.displayName = \"ToastClose\";","'use client';\n\nimport * as React from 'react';\nimport { useToastRootContext } from \"../root/ToastRootContext.mjs\";\nimport { useButton } from \"../../internals/use-button/useButton.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\nimport { hasRenderableChildren } from \"../utils/isRenderableNode.mjs\";\n\n/**\n * Performs an action when clicked.\n * Renders a `<button>` element.\n *\n * Documentation: [Base UI Toast](https://base-ui.com/react/components/toast)\n */\nexport const ToastAction = /*#__PURE__*/React.forwardRef(function ToastAction(componentProps, forwardedRef) {\n const {\n render,\n className,\n style,\n disabled,\n nativeButton = true,\n ...elementProps\n } = componentProps;\n const {\n toast\n } = useToastRootContext();\n const computedChildren = toast.actionProps?.children ?? elementProps.children;\n const {\n getButtonProps,\n buttonRef\n } = useButton({\n disabled,\n native: nativeButton\n });\n const state = {\n type: toast.type\n };\n const element = useRenderElement('button', componentProps, {\n ref: [forwardedRef, buttonRef],\n state,\n props: [elementProps, toast.actionProps, getButtonProps, {\n children: computedChildren\n }]\n });\n return hasRenderableChildren(element) ? element : null;\n});\nif (process.env.NODE_ENV !== \"production\") ToastAction.displayName = \"ToastAction\";","'use client';\n\nimport * as React from 'react';\nimport { FloatingPortalLite } from \"../../utils/FloatingPortalLite.mjs\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\n/**\n * A portal element that moves the viewport to a different part of the DOM.\n * By default, the portal element is appended to `<body>`.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Toast](https://base-ui.com/react/components/toast)\n */\nexport const ToastPortal = /*#__PURE__*/React.forwardRef(function ToastPortal(props, forwardedRef) {\n return /*#__PURE__*/_jsx(FloatingPortalLite, {\n ref: forwardedRef,\n ...props\n });\n});\nif (process.env.NODE_ENV !== \"production\") ToastPortal.displayName = \"ToastPortal\";","'use client';\n\nimport * as React from 'react';\nimport { isElement } from '@floating-ui/utils/dom';\nimport { EMPTY_OBJECT } from '@base-ui/utils/empty';\nimport { useAnchorPositioning } from \"../../internals/useAnchorPositioning.mjs\";\nimport { POPUP_COLLISION_AVOIDANCE } from \"../../internals/constants.mjs\";\nimport { ToastPositionerContext } from \"./ToastPositionerContext.mjs\";\nimport { useFloatingRootContext } from \"../../floating-ui-react/index.mjs\";\nimport { NOOP } from \"../../internals/noop.mjs\";\nimport { useToastProviderContext } from \"../provider/ToastProviderContext.mjs\";\nimport { usePositioner } from \"../../utils/usePositioner.mjs\";\n\n/**\n * Positions the toast against the anchor.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Toast](https://base-ui.com/react/components/toast)\n */\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport const ToastPositioner = /*#__PURE__*/React.forwardRef(function ToastPositioner(componentProps, forwardedRef) {\n const {\n toast,\n ...props\n } = componentProps;\n const store = useToastProviderContext();\n const positionerProps = toast.positionerProps ?? EMPTY_OBJECT;\n const {\n render,\n className,\n anchor: anchorProp = positionerProps.anchor,\n positionMethod = positionerProps.positionMethod ?? 'absolute',\n side = positionerProps.side ?? 'top',\n align = positionerProps.align ?? 'center',\n sideOffset = positionerProps.sideOffset ?? 0,\n alignOffset = positionerProps.alignOffset ?? 0,\n collisionBoundary = positionerProps.collisionBoundary ?? 'clipping-ancestors',\n collisionPadding = positionerProps.collisionPadding ?? 5,\n arrowPadding = positionerProps.arrowPadding ?? 5,\n sticky = positionerProps.sticky ?? false,\n disableAnchorTracking = positionerProps.disableAnchorTracking ?? false,\n collisionAvoidance = positionerProps.collisionAvoidance ?? POPUP_COLLISION_AVOIDANCE,\n style,\n ...elementProps\n } = props;\n const [positionerElement, setPositionerElement] = React.useState(null);\n const domIndex = store.useState('toastIndex', toast.id);\n const visibleIndex = store.useState('toastVisibleIndex', toast.id);\n const anchor = isElement(anchorProp) ? anchorProp : null;\n const floatingRootContext = useFloatingRootContext({\n open: true,\n onOpenChange: NOOP,\n elements: {\n floating: positionerElement,\n reference: anchor\n }\n });\n const positioning = useAnchorPositioning({\n anchor,\n positionMethod,\n floatingRootContext,\n mounted: true,\n side,\n sideOffset,\n align,\n alignOffset,\n collisionBoundary,\n collisionPadding,\n sticky,\n arrowPadding,\n disableAnchorTracking,\n keepMounted: true,\n collisionAvoidance\n });\n const state = {\n side: positioning.side,\n align: positioning.align,\n anchorHidden: positioning.anchorHidden\n };\n const element = usePositioner(componentProps, state, {\n styles: {\n ...positioning.positionerStyles,\n ['--toast-index']: toast.transitionStatus === 'ending' ? domIndex : visibleIndex\n },\n transitionStatus: toast.transitionStatus,\n props: elementProps,\n refs: [forwardedRef, setPositionerElement]\n });\n return /*#__PURE__*/_jsx(ToastPositionerContext.Provider, {\n value: positioning,\n children: element\n });\n});\nif (process.env.NODE_ENV !== \"production\") ToastPositioner.displayName = \"ToastPositioner\";","'use client';\n\nimport _formatErrorMessage from \"@base-ui/utils/formatErrorMessage\";\nimport * as React from 'react';\nexport const ToastPositionerContext = /*#__PURE__*/React.createContext(undefined);\nif (process.env.NODE_ENV !== \"production\") ToastPositionerContext.displayName = \"ToastPositionerContext\";\nexport function useToastPositionerContext() {\n const context = React.useContext(ToastPositionerContext);\n if (context === undefined) {\n throw new Error(process.env.NODE_ENV !== \"production\" ? 'Base UI: ToastPositionerContext is missing. ToastPositioner parts must be placed within <Toast.Positioner>.' : _formatErrorMessage(84));\n }\n return context;\n}","'use client';\n\nimport * as React from 'react';\nimport { useToastPositionerContext } from \"../positioner/ToastPositionerContext.mjs\";\nimport { useRenderElement } from \"../../internals/useRenderElement.mjs\";\n\n/**\n * Displays an element positioned against the toast anchor.\n * Renders a `<div>` element.\n *\n * Documentation: [Base UI Toast](https://base-ui.com/react/components/toast)\n */\nexport const ToastArrow = /*#__PURE__*/React.forwardRef(function ToastArrow(componentProps, forwardedRef) {\n const {\n className,\n render,\n style,\n ...elementProps\n } = componentProps;\n const {\n arrowRef,\n side,\n align,\n arrowUncentered,\n arrowStyles\n } = useToastPositionerContext();\n const state = {\n side,\n align,\n uncentered: arrowUncentered\n };\n return useRenderElement('div', componentProps, {\n state,\n ref: [forwardedRef, arrowRef],\n props: [{\n style: arrowStyles,\n 'aria-hidden': true\n }, elementProps]\n });\n});\nif (process.env.NODE_ENV !== \"production\") ToastArrow.displayName = \"ToastArrow\";","'use client';\n\nimport * as React from 'react';\nimport { useToastProviderContext } from \"./provider/ToastProviderContext.mjs\";\n/**\n * Returns the array of toasts and methods to manage them.\n */\nexport function useToastManager() {\n const store = useToastProviderContext();\n const toasts = store.useState('toasts');\n return React.useMemo(() => ({\n toasts,\n add: store.addToast,\n close: store.closeToast,\n update: store.updateToast,\n promise: store.promiseToast\n }), [toasts, store]);\n}","import { generateId } from '@base-ui/utils/generateId';\n/**\n * Creates a new toast manager.\n */\nexport function createToastManager() {\n const listeners = new Set();\n function emit(data) {\n listeners.forEach(listener => listener(data));\n }\n return {\n // This should be private aside from ToastProvider needing to access it.\n // https://x.com/drosenwasser/status/1816947740032872664\n ' subscribe': function subscribe(listener) {\n listeners.add(listener);\n return () => {\n listeners.delete(listener);\n };\n },\n add(options) {\n const id = options.id || generateId('toast');\n const toastToAdd = {\n ...options,\n id,\n transitionStatus: 'starting'\n };\n emit({\n action: 'add',\n options: toastToAdd\n });\n return id;\n },\n close(id) {\n emit({\n action: 'close',\n options: {\n id\n }\n });\n },\n update(id, updates) {\n emit({\n action: 'update',\n options: {\n ...updates,\n id\n }\n });\n },\n promise(promiseValue, options) {\n let handledPromise = promiseValue;\n emit({\n action: 'promise',\n options: {\n ...options,\n promise: promiseValue,\n setPromise(promise) {\n handledPromise = promise;\n }\n }\n });\n return handledPromise;\n }\n };\n}"],"mappings":"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","names":["React","jsx","React","cva","jsx","cva","jsx","jsx","index_parts_exports","React","React","SwitchRoot","element","React","SwitchThumb","jsx","jsxs","index_parts_exports","jsx","jsx","jsxs","jsx","jsx","jsxs","React","jsx","jsxs","jsx","jsx","Fragment","jsx","jsxs","index_parts_exports","React","React","React","_jsx","_jsxs","React","_jsx","_jsxs","PopoverTrigger","stateAttributesMapping","React","React","_jsx","PopoverPortal","React","React","_jsx","_jsxs","PopoverPositioner","React","React","_jsx","PopoverPopup","React","PopoverArrow","React","PopoverBackdrop","React","PopoverTitle","React","PopoverDescription","React","PopoverClose","React","PopoverViewport","jsx","index_parts_exports","PopoverTrigger","PopoverPortal","PopoverPositioner","PopoverArrow","PopoverTitle","PopoverDescription","PopoverClose","React","jsx","jsxs","React","index_parts_exports","React","React","selectors","_jsx","_jsxs","ToastProvider","React","_jsx","_jsxs","ToastViewport","React","ReactDOM","React","_jsx","ToastRoot","flushSync","element","React","ToastContent","React","React","ToastDescription","React","ToastTitle","React","ToastClose","React","ToastAction","React","_jsx","ToastPortal","React","React","_jsx","ToastPositioner","React","ToastArrow","React","XIcon","jsx","jsxs","ToastProvider","index_parts_exports","ToastViewport","ToastContent","ToastTitle","ToastDescription","ToastAction","ToastClose","XIcon"]}
|