import { bind, derive } from "astal"; import { Gdk } from "astal/gtk4"; import AstalWp from "gi://AstalWp"; const volIncr = 5 / 100; const WirePlumber = function () { const audio = AstalWp.get_default()?.audio!; const speakers = bind(audio, "speakers"); return speakers.as((speakers) => { const defaultSpeaker = speakers.find((speaker) => speaker.is_default); if (!defaultSpeaker) { return <>; } return ( { defaultSpeaker.set_volume( Math.min(defaultSpeaker.volume + -Math.sign(dy) * volIncr, 1.0), ); }} > ); }); return ( {speakers.as((speakers) => { const defaultSpeaker = speakers.find((speaker) => speaker.is_default); if (!defaultSpeaker) { return <>; } return ( ); }; export default WirePlumber;