Files
Evergreen-Health-Mobile/src/devices/audio/parameters.ts
T
2026-10-09 16:46:35 +08:00

10 lines
635 B
TypeScript

import { boolValue, clamp, numberValue, type ParameterSnapshot } from '../parameterState'
export const defaults = { speakerVolume: 50, speakerSleepMode: false }
export const labels = { volume: '音箱音量', speaker_sleep_mode: '音箱睡眠模式' }
export function sync(state: typeof defaults, controls: ParameterSnapshot) {
const volume = numberValue(controls.volume?.attributes?.volume_level)
if (controls.volume?.available && volume !== undefined) state.speakerVolume = clamp(Math.round(volume * 100), 0, 100)
const sleep = boolValue(controls.speaker_sleep_mode)
if (sleep !== undefined) state.speakerSleepMode = sleep
}