React Color Alpha
Alpha is a subcomponent of @react-color
.
Install
npm i @uiw/react-color-alpha
Usage
import React, { useState } from 'react';
import { hsvaToRgbaString } from '@uiw/color-convert';
import Alpha from '@uiw/react-color-alpha';
export default function Demo() {
const [hsva, setHsva] = useState({ h: 0, s: 0, v: 68, a: 1 });
return (
<>
<Alpha
hsva={hsva}
onChange={(newAlpha) => {
setHsva({ ...hsva, ...newAlpha });
}}
/>
<div style={{ background: hsvaToRgbaString(hsva), marginTop: 30, padding: 10 }}>
{JSON.stringify(hsva)}
</div>
</>
);
}
Props
import React from 'react';
import { HsvaColor } from '@uiw/color-convert';
import { Interaction } from '@uiw/react-drag-event-interactive';
import { PointerProps } from './Pointer';
export * from './Pointer';
export interface AlphaProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'> {
prefixCls?: string;
width?: React.CSSProperties['width'];
height?: React.CSSProperties['height'];
hsva: HsvaColor;
pointer?: (props: PointerProps) => JSX.Element;
radius?: React.CSSProperties['borderRadius'];
background?: string;
bgProps?: React.HTMLAttributes<HTMLDivElement>;
innerProps?: React.HTMLAttributes<HTMLDivElement>;
pointerProps?: PointerProps;
direction?: 'vertical' | 'horizontal';
onChange?: (newAlpha: {
a: number;
}, offset: Interaction) => void;
}
export declare const BACKGROUND_IMG = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMUlEQVQ4T2NkYGAQYcAP3uCTZhw1gGGYhAGBZIA/nYDCgBDAm9BGDWAAJyRCgLaBCAAgXwixzAS0pgAAAABJRU5ErkJggg==";
declare const Alpha: React.ForwardRefExoticComponent<AlphaProps & React.RefAttributes<HTMLDivElement>>;
export default Alpha;
interface PointerProps extends React.HTMLAttributes<HTMLDivElement> {
prefixCls?: string;
left?: string;
top?: string;
}
License
Licensed under the MIT License.