import React from "react"; import type { PresetDef } from "../scenarios/types"; interface PresetBarProps

> { presets?: Record>; currentValues: P; onSelectPreset: (preset: PresetDef

) => void; } export function PresetBar

>({ presets, currentValues, onSelectPreset, }: PresetBarProps

): React.JSX.Element | null { if (!presets || Object.keys(presets).length === 0) return null; const presetList = Object.values(presets); return (

Kịch bản mẫu:
{presetList.map((preset) => { const isMatch = Object.keys(preset.params).every((k) => { const expected = preset.params[k]; const actual = currentValues[k]; return actual !== undefined && Math.abs(expected - actual) < 1e-4; }); return ( ); })}
); }