Special thanks to:

SubList
SubList - Bill Reminder & Renewal Alerts


Using my app is also a way to support me:
Zipora: Zip/RAR/7Z Unarchiver Scap: Screenshot & Markup Edit Screen Test Deskmark Keyzer Vidwall Hub VidCrop Vidwall Mousio Hint Mousio Musicer Audioer FileSentinel FocusCursor Videoer KeyClicker DayBar Iconed Menuist Quick RSS Quick RSS Web Serve Copybook Generator DevTutor for SwiftUI RegexMate Time Passage Iconize Folder Textsound Saver Create Custom Symbols DevHub Resume Revise Palette Genius Symbol Scribe

React Color Swatch === [![Buy me a coffee](https://img.shields.io/badge/Buy_Me_a_Coffee-ffdd00?logo=buy-me-a-coffee&logoColor=black)](https://jaywcjlove.github.io/#/sponsor) [![Follow On X](https://img.shields.io/badge/Follow%20on%20X-333333?logo=x&logoColor=white)](https://x.com/jaywcjlove) [![npm version](https://img.shields.io/npm/v/@uiw/react-color-swatch.svg)](https://www.npmjs.com/package/@uiw/react-color-swatch) [![Open in unpkg](https://img.shields.io/badge/Open%20in-unpkg-blue)](https://uiwjs.github.io/npm-unpkg/#/pkg/@uiw/react-color-swatch/file/README.md) Swatch Component is a subcomponent of [**`@react-color`**](https://uiwjs.github.io/react-color). [![react-color-swatch](https://user-images.githubusercontent.com/1680273/125950289-f965e6c2-c21f-4b5c-a05c-a27aa07e738f.png)](https://uiwjs.github.io/react-color/#/swatch) ## Install ```bash npm i @uiw/react-color-swatch ``` ## Usage ```tsx mdx:preview import React, { useState } from 'react'; import { hsvaToHex, getContrastingColor, } from '@uiw/color-convert'; import Swatch from '@uiw/react-color-swatch'; function Point(props: { color?: string; checked?: boolean }) { if (!props.checked) return null; return (
); } function Demo() { const [hex, setHex] = useState("#fff"); return ( , style: { display: 'flex', alignItems: 'center', justifyContent: 'center', }, }} onChange={(hsvColor) => { setHex(hsvaToHex(hsvColor)) }} /> ); } export default Demo; ``` ```tsx mdx:preview import React, { useState } from 'react'; import { hsvaToHex, getContrastingColor } from '@uiw/color-convert'; import Swatch from '@uiw/react-color-swatch'; function Point(props: { color?: string; checked?: boolean }) { if (!props.checked) return null; return (
); } function Demo() { const [hex, setHex] = useState("#fff"); return ( (
)} onChange={(hsvColor) => { setHex(hsvaToHex(hsvColor)) }} /> ); } export default Demo; ``` ## Props ```ts import React from 'react'; import type * as CSS from 'csstype'; import { HsvaColor, ColorResult } from '@uiw/color-convert'; export type SwatchPresetColor = { color: string; title?: string; } | string; export interface SwatchRectRenderProps extends React.HTMLAttributes { title: string; color: string; checked: boolean; style: CSS.Properties; onClick: (evn: React.MouseEvent) => void; }; export interface SwatchProps extends Omit, 'onChange' | 'color'> { prefixCls?: string; color?: string; colors?: SwatchPresetColor[]; rectProps?: React.HTMLAttributes; rectRender?: (props: SwatchRectRenderProps) => JSX.Element; onChange?: (hsva: HsvaColor, color: ColorResult, evn: React.MouseEvent) => void; addonAfter?: React.ReactNode; addonBefore?: React.ReactNode; } declare const Swatch: React.ForwardRefExoticComponent>; export default Swatch; ``` ## Contributors As always, thanks to our amazing contributors! Made with [contributors](https://github.com/jaywcjlove/github-action-contributors). ## License Licensed under the MIT License.