import { type Assign, Popover } from '@ark-ui/solid' import type { ComponentProps } from 'solid-js' import { type PopoverVariantProps, popover } from 'styled-system/recipes' import type { HTMLStyledProps } from 'styled-system/types' import { createStyleContext } from './utils/create-style-context' const { withRootProvider, withContext } = createStyleContext(popover) export type RootProviderProps = ComponentProps export const RootProvider = withRootProvider< Assign >(Popover.RootProvider) export type RootProps = ComponentProps export const Root = withRootProvider>(Popover.Root) export const Anchor = withContext, Popover.AnchorBaseProps>>( Popover.Anchor, 'anchor', ) export const Arrow = withContext, Popover.ArrowBaseProps>>( Popover.Arrow, 'arrow', ) export const ArrowTip = withContext, Popover.ArrowTipBaseProps>>( Popover.ArrowTip, 'arrowTip', ) export const CloseTrigger = withContext< Assign, Popover.CloseTriggerBaseProps> >(Popover.CloseTrigger, 'closeTrigger') export const Content = withContext, Popover.ContentBaseProps>>( Popover.Content, 'content', ) export const Description = withContext< Assign, Popover.DescriptionBaseProps> >(Popover.Description, 'description') export const Indicator = withContext, Popover.IndicatorBaseProps>>( Popover.Indicator, 'indicator', ) export const Positioner = withContext, Popover.PositionerBaseProps>>( Popover.Positioner, 'positioner', ) export const Title = withContext, Popover.TitleBaseProps>>( Popover.Title, 'title', ) export const Trigger = withContext, Popover.TriggerBaseProps>>( Popover.Trigger, 'trigger', ) export { PopoverContext as Context } from '@ark-ui/solid'