(include "bottomBar/workspaces.yuck")
(include "bottomBar/traveldings.yuck")

(defwindow bottomBar
  :monitor 0
  :stacking "fg"
  :wm-ignore true
  :exclusive true
  :geometry (geometry
              :width "100%"
              :height "33px"
              :anchor "bottom center")
  (bottomBar))

(defwidget bottomBar []
  (overlay
    :class "bottomBar"
    (transform
      :translate-y "1.5px"
      (centerbox
        (box
          :halign "start"
          (workspaceWidget)
        )
        (box
          :halign "center"
          (traveldings)
        )
        (box
          :halign "end"
          ; (label :text "${iceData.speed}km/h")
          (mullvadThing)
        )
      )
    )
    (box
      :class "lesbianFlag"
      :height 1
      ( flagEl :flipped true :color "#D52D00")
      ( flagEl :flipped true :color "#EF7627")
      ( flagEl :flipped true :color "#FF9A56")
      ( flagEl :flipped true :color "#FFFFFF")
      ( flagEl :flipped true :color "#D162A4")
      ( flagEl :flipped true :color "#B55690")
      ( flagEl :flipped true :color "#A30262")
    )
  )
)

(deflisten mullvad
  :initial "{\"state\":\"init\"}"
  `mullvad status -j listen`
)

(defwidget mullvadThing []
  (box
    :class "container"
    (button
      :height 16
      :width 16
      :class "mullvad-state-${mullvad.state}"
    )
  )
)

(defwidget iceTacho []
  (box
    :class "iceTacho"
    :tooltip "Tz${iceTachoData.tzn} (BR ${iceTachoData.br})"
    (label :text "${iceTachoData.speed} km/h")
  )
)

(deflisten iceTachoData
  :initial "null"
  { "~/.config/eww/scripts/iceTacho.nu" }
)
