import { useTranslation } from "react-i18next" import { useColorGradingContext } from "../../services/color-grading-provider" import { ParameterSlider } from "../controls/parameter-slider" export function HSLSection() { const { t } = useTranslation() const { state, updateBasicParameter } = useColorGradingContext() return (
{/* Заголовок секции */}
{t("colorGrading.hsl.description", "Advanced HSL adjustments and secondary color correction")}
{/* HSL слайдеры */}
updateBasicParameter("hue", value)} min={-180} max={180} defaultValue={0} formatValue={(v) => `${v}°`} className="[&_input]:bg-gradient-to-r [&_input]:from-red-500 [&_input]:via-yellow-500 [&_input]:via-green-500 [&_input]:via-cyan-500 [&_input]:via-blue-500 [&_input]:via-purple-500 [&_input]:to-red-500" /> updateBasicParameter("saturation", value)} min={-100} max={100} defaultValue={0} formatValue={(v) => (v > 0 ? `+${v}` : v.toString())} className="[&_input]:bg-gradient-to-r [&_input]:from-gray-500 [&_input]:to-purple-500" /> updateBasicParameter("luminance", value)} min={-100} max={100} defaultValue={0} formatValue={(v) => (v > 0 ? `+${v}` : v.toString())} className="[&_input]:bg-gradient-to-r [&_input]:from-black [&_input]:via-gray-500 [&_input]:to-white" />
{/* Дополнительные параметры */}
{t("colorGrading.hsl.advanced", "Advanced")}
updateBasicParameter("pivot", value)} min={0} max={1} step={0.01} defaultValue={0.5} formatValue={(v) => v.toFixed(2)} /> updateBasicParameter("saturation", value)} min={-100} max={100} defaultValue={0} formatValue={(v) => (v > 0 ? `+${v}` : v.toString())} />
) }