fix typings

This commit is contained in:
Benjamin Palko 2025-04-08 00:14:44 -04:00
parent 31af598f7f
commit 98a3b5381e

View file

@ -7,13 +7,14 @@ const WirePlumber = function () {
const audio = AstalWp.get_default()?.audio!; const audio = AstalWp.get_default()?.audio!;
const speakers = bind(audio, "speakers"); const speakers = bind(audio, "speakers");
const defaultSpeaker = speakers.as((speakers) =>
speakers.find((speaker) => speaker.is_default),
);
return speakers.as((speakers) => {
const defaultSpeaker = speakers.find((speaker) => speaker.is_default);
if (!defaultSpeaker) {
return <></>;
}
return ( return (
<>
{defaultSpeaker.as((defaultSpeaker) =>
defaultSpeaker ? (
<menubutton <menubutton
onScroll={(_, __, dy) => { onScroll={(_, __, dy) => {
defaultSpeaker.set_volume( defaultSpeaker.set_volume(
@ -37,22 +38,28 @@ const WirePlumber = function () {
/> />
<popover cssClasses={["WirePlumberMenu"]}> <popover cssClasses={["WirePlumberMenu"]}>
<box vertical> <box vertical>
{speakers.map((speaker) => ( {speakers.as((speakers) =>
speakers.map((speaker) => (
<button <button
cssClasses={bind(speaker, "is_default").as((is_default) => [ cssClasses={bind(speaker, "is_default").as(
is_default ? "active" : "", (is_default) => [is_default ? "active" : ""],
])} )}
cursor={Gdk.Cursor.new_from_name("pointer", null)} cursor={Gdk.Cursor.new_from_name("pointer", null)}
onClicked={() => speaker.set_is_default(true)} onClicked={() => speaker.set_is_default(true)}
> >
{speaker.description} {speaker.description}
</button> </button>
))} )),
)}
</box> </box>
</popover> </popover>
</menubutton> </menubutton>
) : (
<></>
),
)}
</>
); );
});
}; };
export default WirePlumber; export default WirePlumber;