您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

color-picker.tsx 831B

12345678910111213141516171819202122232425262728
  1. import * as DropdownMenu from '@radix-ui/react-dropdown-menu'
  2. import { strokes } from 'state/shape-styles'
  3. import { ColorStyle } from 'types'
  4. import { RowButton, IconWrapper } from '../shared'
  5. import { Square } from 'react-feather'
  6. import ColorContent from './color-content'
  7. interface Props {
  8. color: ColorStyle
  9. onChange: (color: ColorStyle) => void
  10. }
  11. export default function ColorPicker({ color, onChange }: Props): JSX.Element {
  12. return (
  13. <DropdownMenu.Root dir="ltr">
  14. <DropdownMenu.Trigger
  15. as={RowButton}
  16. bp={{ '@initial': 'mobile', '@sm': 'small' }}
  17. >
  18. <label htmlFor="color">Color</label>
  19. <IconWrapper>
  20. <Square fill={strokes[color]} />
  21. </IconWrapper>
  22. </DropdownMenu.Trigger>
  23. <ColorContent onChange={onChange} />
  24. </DropdownMenu.Root>
  25. )
  26. }