import Gtk from "gi://Gtk?version=3.0" import { execAsync, Variable } from "astal" import Dropdown from "./Dropdown" const actions = [ { label: "lock", icon: "system-lock-screen-symbolic", cmd: ["hyprlock"] }, { label: "suspend", icon: "weather-clear-night-symbolic", cmd: ["systemctl", "suspend"], }, { label: "log out", icon: "system-log-out-symbolic", cmd: ["hyprctl", "dispatch", "exit"], }, { label: "reboot", icon: "system-reboot-symbolic", cmd: ["systemctl", "reboot"], }, { label: "shut down", icon: "system-shutdown-symbolic", cmd: ["systemctl", "poweroff"], }, ] function PowerRow(action: (typeof actions)[number]) { return ( ) } export function PowerWidget(gdkmonitor: Gdk.Monitor) { const open = Variable(false) const button = ( ) const popup = ( {actions.map((action) => PowerRow(action))} ) return { button, popup } }