import React, {useEffect, useState} from "react"; import { RandomPaletteAlgorithm, RANDOM_PALETTE_ALGORITHMS, PaletteAlgorithmConfig, } from "./random-colors"; export type PaletteAlgorithmWidgetProps = { value: RandomPaletteAlgorithm; onChange: (value: RandomPaletteAlgorithm) => void; onPaletteConfigChange: (value: PaletteAlgorithmConfig) => void; }; export const PaletteAlgorithmWidget: React.FC = ({ value, onChange, onPaletteConfigChange = () => {} }) => { const id = "algorithm"; const [paletteConfig, setPaletteConfig] = useState({ hue: 120, hueInterval: 15, saturation: 50, valueMin: 20, valueMax: 80, }); useEffect(() => { onPaletteConfigChange(paletteConfig); }, [paletteConfig]) return (
{value === "threevals" && (
setPaletteConfig({...paletteConfig, hue: Number(e.target.value) }) } /> setPaletteConfig({...paletteConfig, hueInterval: Number(e.target.value) }) } /> setPaletteConfig({...paletteConfig, valueMin: Number(e.target.value) }) } /> setPaletteConfig({...paletteConfig, valueMax: Number(e.target.value) }) } /> setPaletteConfig({...paletteConfig, saturation: Number(e.target.value) }) } />
)}
); };