import React, {ReactNode, LiHTMLAttributes} from 'react'
import {styled} from '@karma.run/react'
import {themeMiddleware, Theme} from '../style/themeContext'
import {FontSize, BorderRadius, ZIndex, Spacing} from '../style/helpers'
export const SelectList = styled(
'ul',
({theme}) => ({
overflow: 'auto',
position: 'absolute',
zIndex: ZIndex.Tooltip,
cursor: 'pointer',
userSelect: 'none',
width: '100%',
maxHeight: 300,
margin: 0,
padding: 0,
fontSize: FontSize.Medium,
backgroundColor: theme.colors.white,
borderBottomLeftRadius: BorderRadius.Small,
borderBottomRightRadius: BorderRadius.Small,
boxShadow: '0 2px 4px 0 rgba(0, 0, 0, 0.2)',
':focus': {
outline: 'none'
}
}),
themeMiddleware
)
interface SelectListItemElementProps {
readonly isHighlighted: boolean
readonly theme: Theme
}
const SelectListItemElement = styled(
'li',
({isHighlighted, theme}: SelectListItemElementProps) => ({
listStyle: 'none',
padding: `${Spacing.Tiny}px ${Spacing.ExtraSmall}px`,
backgroundColor: isHighlighted ? theme.colors.grayLight : undefined
}),
themeMiddleware
)
export interface SelectListItemProps extends LiHTMLAttributes {
readonly highlighted?: boolean
readonly children?: ReactNode
}
export function SelectListItem({highlighted = false, ...props}: SelectListItemProps) {
return
}