aboutsummaryrefslogtreecommitdiff
path: root/ags/modules/bar.js
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--ags/modules/bar.js131
1 files changed, 0 insertions, 131 deletions
diff --git a/ags/modules/bar.js b/ags/modules/bar.js
deleted file mode 100644
index 28fdaee..0000000
--- a/ags/modules/bar.js
+++ /dev/null
@@ -1,131 +0,0 @@
-const hyprland = await Service.import("hyprland")
-const audio = await Service.import("audio")
-const battery = await Service.import("battery")
-const network = await Service.import("network")
-
-const hour = Variable("", {
- poll: [60000, 'date "+%H:%M"']
-})
-
-function IconLabel(icon, label) {
- return [
- Widget.Icon({ icon }),
- Widget.Label({ label }),
- ]
-}
-
-function Workspaces() {
- const active = hyprland.active.workspace.bind("id")
- const workspaces = hyprland.bind("workspaces")
- .as(ws => ws.map(({ id }) => Widget.Button({
- on_clicked: () => hyprland.messageAsync(`dispatch workspace ${id}`),
- child: Widget.Label(`${id}`),
- class_name: active.as(i => `${i === id ? "focused" : ""}`)
- })))
- return Widget.Box({
- class_name: "workspaces",
- children: workspaces,
- })
-}
-
-//function SysTray() {
-//
-//}
-
-function Clock() {
- return Widget.Label({
- class_name: "clock",
- label: hour.bind(),
- })
-}
-
-function Network() {
- const label = network.wifi.bind("strength").as(s => ` ${s}`)
- return Widget.Box({
- class_name: "network",
- children: [
- Widget.Label({ label })
- ]
- })
-}
-
-function Volume() {
- const icons = {
- 101: "overamplified",
- 67: "high",
- 34: "medium",
- 1: "low",
- 0: "muted",
- }
- function getIcon() {
- const icon = audio.speaker.is_muted ? 0 : [101, 67, 34, 1, 0].find(
- threshold => threshold <= audio.speaker.volume * 100)
-
- return `audio-volume-${icons[icon]}-symbolic`
- }
-
- const icon = Utils.watch(getIcon(), audio.speaker, getIcon)
- const label = audio.speaker.bind("volume").as(v => ` ${Math.floor(v * 100 + 0.01)}%`)
-
- return Widget.Box({
- class_name: "volume",
- children: IconLabel(icon, label)
- })
-}
-
-function Battery() {
- const label = battery.bind("percent").as(p => ` ${p}%`)
- const icon = battery.bind("percent").as(p =>
- `battery-level-${Math.floor(p / 10) * 10}-symbolic`
- )
-
- return Widget.Box({
- class_name: "battery",
- children: IconLabel(icon, label)
- })
-}
-
-function Left() {
- return Widget.Box({
- spacing: 10,
- children: [
- Workspaces(),
- //SysTray(),
- ]
- })
-}
-function Center() {
- return Widget.Box({
- spacing: 10,
- children: [
- Clock(),
- ]
- })
-}
-function Right() {
- return Widget.Box({
- hpack: "end",
- spacing: 10,
- children: [
- Network(),
- Volume(),
- Battery(),
- ]
- })
-}
-
-export function Bar(monitor = 0) {
- return Widget.Window({
- name: `bar-${monitor}`,
- class_name: "bar",
- monitor,
- anchor: ["top", "left", "right"],
- exclusivity: "exclusive",
- child: Widget.CenterBox({
- start_widget: Left(),
- center_widget: Center(),
- end_widget: Right(),
- }),
- })
-}
-