aboutsummaryrefslogtreecommitdiff
path: root/home/rices/schrottkatze/eww/configDir/bottomBar/traveldings.yuck
blob: 62de26e57ee928fcbcb68b227f3557b17aee981f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
(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
        :class { traveldings_data.live ? "traveldings_live" : "traveldings_disconnected" }
        :value {traveldings_data.progress * 100}
        :orientation "horizontal"
      )
    )
  )
)


(deflisten traveldings_data
  :initial "null"
  "traveldings current"
)