nix-configs/modules/desktop-environment/home/panels/eww/configDir/bottomBar/traveldings.yuck
2024-09-11 02:09:08 +02:00

50 lines
1.3 KiB
Text

(defwidget traveldings []
(revealer
:class "traveldings"
:transition "crossfade"
:reveal { traveldings_data != "null" }
(traveldingsBarWidget)
)
)
(defwidget traveldingsBarWidget []
(overlay
(box
:width 640
(label
:halign "start"
:text "${traveldings_data.line} -> ${strlength(traveldings_data.arrival_station) > 24 ? "${substring(traveldings_data.arrival_station, 0, 24)}…" : traveldings_data.arrival_station}${traveldings_data.arrival_platform_data_available ? " (Gl. ${traveldings_data.arrival_platform_real})" : ""}"
)
(label
:halign "end"
:text { traveldings_data.time_left >= 3600 ? formattime(traveldings_data.time_left, "noch %-Hh %-Mmin", "Etc/UTC") : formattime(traveldings_data.time_left, "noch %-Mmin", "Etc/UTC") }
)
)
(box
(progress
:value {traveldings_data.progress * 100}
:orientation "horizontal"
)
)
)
)
(defwindow traveldingsWindow
:monitor 0
:stacking "overlay"
:exclusive "false"
:geometry (geometry
:x "0%"
:y "6.6%"
:width "30%"
:height "20%"
:anchor "bottom center")
(box
:class "traveldingsWindow"
(label :text "TODO"))
)
(deflisten traveldings_data
:initial "null"
"traveldings current"
)