import { gamepadSliderClasses, ConfirmModal, SliderField } from "../deck-components"; import { useState, FC, CSSProperties } from "react"; interface ColorPickerModalProps { closeModal: () => void; onConfirm?(HSLString: string): any; title?: string; defaultH?: number; defaultS?: number; defaultL?: number; defaultA?: number; } export const ColorPickerModal: FC = ({ closeModal, onConfirm = () => {}, title = "Color Picker", defaultH = 0, defaultS = 100, defaultL = 50, defaultA = 1, }) => { const [H, setH] = useState(defaultH); const [S, setS] = useState(defaultS); const [L, setL] = useState(defaultL); const [A, setA] = useState(defaultA); const colorPickerCSSVars = { "--decky-color-picker-hvalue": `${H}`, "--decky-color-picker-svalue": `${S}%`, "--decky-color-picker-lvalue": `${L}%`, "--decky-color-picker-avalue": `${A}`, } as CSSProperties; return ( { onConfirm(`hsla(${H}, ${S}%, ${L}%, ${A})`); closeModal(); }} >
{title}
); };