import Hyprland from 'resource:///com/github/Aylur/ags/service/hyprland.js'; import { CenterBox, Label } from 'resource:///com/github/Aylur/ags/widget.js'; import { execAsync } from 'resource:///com/github/Aylur/ags/utils.js'; import PopupWindow from './misc/popup.js'; import CursorBox from './misc/cursorbox.js'; const PowermenuWidget = () => CenterBox({ class_name: 'powermenu', // @ts-expect-error vertical: false, start_widget: CursorBox({ class_name: 'shutdown button', on_primary_click_release: () => execAsync(['systemctl', 'poweroff']) .catch(print), child: Label({ label: '襤', }), }), center_widget: CursorBox({ class_name: 'reboot button', on_primary_click_release: () => execAsync(['systemctl', 'reboot']) .catch(print), child: Label({ label: '勒', }), }), end_widget: CursorBox({ class_name: 'logout button', on_primary_click_release: () => Hyprland.sendMessage('dispatch exit') .catch(print), child: Label({ label: '', }), }), }); export default () => PopupWindow({ name: 'powermenu', child: PowermenuWidget(), });