import { PanelSectionRow, ToggleField, SliderField, DropdownItem } from "@decky/ui"; import { ConfigurationData } from "../config/configSchema"; interface ConfigurationSectionProps { config: ConfigurationData; onConfigChange: (fieldName: keyof ConfigurationData, value: boolean | number | string) => Promise; } export function ConfigurationSection({ config, onConfigChange }: ConfigurationSectionProps) { return ( <>
LSFG Configuration
onConfigChange('enable', value)} /> {/* onConfigChange('dll', e.target.value)} /> */} onConfigChange('multiplier', value)} /> onConfigChange('flow_scale', value)} /> onConfigChange('performance_mode', value)} /> onConfigChange('hdr_mode', value)} />
Experimental Features
onConfigChange('experimental_present_mode', value.data)} rgOptions={[ { data: "", label: "Default (FIFO)" }, { data: "fifo", label: "FIFO" }, { data: "vsync", label: "VSync" }, { data: "mailbox", label: "Mailbox" }, { data: "immediate", label: "Immediate" } ]} /> 0 ? ` (${config.experimental_fps_limit} FPS)` : ' (Off)'}`} description="Base framerate cap for DXVK games, before frame multiplier (0 = disabled)" value={config.experimental_fps_limit} min={0} max={60} step={1} onChange={(value) => onConfigChange('experimental_fps_limit', value)} /> ); }