//   --// waybar config generated by wbarconfgen.sh //--   //
{
  // sourced from header module //
  "output": "DP-1",
  "layer": "top",
  "position": "top",
  "mod": "dock",
  "height": 31,
  "exclusive": true,
  "passthrough": false,
  "gtk-layer-shell": true,
  "reload_style_on_change": true,
  // positions generated based on config.ctl //
  "modules-left": [
    "custom/padd",
    
    "custom/l_end",
    "custom/power",
    "custom/cliphist",
    "custom/r_end",
    
    "custom/l_end",
    "privacy",
    "tray",
    "custom/r_end",
    
    "custom/padd",
  ],
  "modules-center": [
    "custom/padd",
    
    "custom/l_end",
    "network",
    "custom/r_end",
    
    "custom/l_end",
    "memory",
    "cpu",
    "custom/r_end",
    
    "custom/l_end",
    "idle_inhibitor",
    "clock",
    "custom/r_end",
    
    "custom/padd",
  ],
  "modules-right": [
    "custom/padd",
    
    "custom/l_end",
    "backlight",
    "pulseaudio",
    "custom/r_end",
    
    "custom/l_end",
    "wlr/taskbar",
    "custom/r_end",
    
    "custom/padd",
  ],
  // sourced from modules based on config.ctl //
  "hyprland/workspaces": {
    "disable-scroll": true,
    "rotate": 0,
    "all-outputs": true,
    "active-only": false,
    "persistent-workspaces": {},
  },
  "custom/cava": {
    "format": "{}",
    "exec": "waybar_cava.sh",
    "restart-interval": 1,
    "hide-empty": true,
  },
  "mpris": {
    "format": "{player_icon} {dynamic}",
    "rotate": 0,
    "format-paused": "{status_icon} <i>{dynamic}</i>",
    "player-icons": {
      "default": "▶",
      "mpv": "🎵",
    },
    "status-icons": {
      "paused": "",
    },
    // "ignored-players": ["firefox"]
    "max-length": 1000,
    "interval": 1,
  },
  "cpu": {
    "interval": 10,
    "format": "󰍛 {usage}%",
    "rotate": 0,
    "format-alt": "{icon0}{icon1}{icon2}{icon3}",
    "format-icons": ["▁", "▂", "▃", "▄", "▅", "▆", "▇", "█"],
  },
  "memory": {
    "states": {
      "c": 90, // critical
      "h": 60, // high
      "m": 30, // medium
    },
    "interval": 30,
    "format": "󰾆 {used}gb",
    "rotate": 0,
    "format-m": "󰾅 {used}gb",
    "format-h": "󰓅 {used}gb",
    "format-c": " {used}gb",
    "format-alt": "󰾆 {percentage}%",
    "max-length": 10,
    "tooltip": true,
    "tooltip-format": "󰾆 {percentage}%\n {used:0.1f}gb/{total:0.1f}gb",
  },
  "custom/power": {
    "format": " {}",
    "rotate": 0,
    "exec": "echo ; echo  logout",
    "on-click": "logoutlaunch.sh 2",
    "on-click-right": "logoutlaunch.sh 1",
    "interval": 86400, // once every day
    "tooltip": true,
  },
  "custom/cliphist": {
    "format": " {}",
    "rotate": 0,
    "exec": "echo ; echo 󰅇 clipboard history",
    "on-click": "sleep 0.1 && cliphist.sh c",
    "on-click-right": "sleep 0.1 && cliphist.sh d",
    "on-click-middle": "sleep 0.1 && cliphist.sh w",
    "interval": 86400, // once every day
    "tooltip": true,
  },
  "wlr/taskbar": {
    "format": "{icon}",
    "rotate": 0,
    "icon-size": 25,
    "icon-theme": "Gruvbox-Plus-Dark",
    "spacing": 0,
    "tooltip-format": "{title}",
    "on-click": "activate",
    "on-click-middle": "close",
    "ignore-list": ["Alacritty"],
    "app_ids-mapping": {
      "firefoxdeveloperedition": "firefox-developer-edition",
      "jetbrains-datagrip": "DataGrip",
    },
  },
  "custom/spotify": {
    "exec": "mediaplayer.py --player spotify",
    "format": " {}",
    "rotate": 0,
    "return-type": "json",
    "on-click": "playerctl play-pause --player spotify",
    "on-click-right": "playerctl next --player spotify",
    "on-click-middle": "playerctl previous --player spotify",
    "on-scroll-up": "volumecontrol.sh -p spotify i",
    "on-scroll-down": "volumecontrol.sh -p spotify d",
    "max-length": 25,
    "escape": true,
    "tooltip": true,
  },
  "idle_inhibitor": {
    "format": "{icon}",
    "rotate": 0,
    "format-icons": {
      "activated": "󰥔 ",
      "deactivated": " ",
    },
  },
  "clock": {
    "format": "{:%I:%M %p | 󰃭 %d·%m·%y}",
    "rotate": 0,
    "format-alt": "{:%R 󰃭 %d·%m·%y}",
    "tooltip-format": "<span>{calendar}</span>",
    "calendar": {
      "mode": "month",
      "mode-mon-col": 3,
      "on-scroll": 1,
      "on-click-right": "mode",
      "format": {
        "months": "<span color='#ffead3'><b>{}</b></span>",
        "weekdays": "<span color='#ffcc66'><b>{}</b></span>",
        "today": "<span color='#ff6699'><b>{}</b></span>",
      },
    },
    
    "actions": {
      "on-click-right": "mode",
      "on-click-forward": "tz_up",
      "on-click-backward": "tz_down",
      "on-scroll-up": "shift_up",
      "on-scroll-down": "shift_down",
    },
  },
  "privacy": {
    "icon-size": 14,
    "icon-spacing": 5,
    "transition-duration": 250,
    "modules": [
      {
        "type": "screenshare",
        "tooltip": true,
        "tooltip-icon-size": 24,
      },
      {
        "type": "audio-in",
        "tooltip": true,
        "tooltip-icon-size": 24,
      },
    ],
  },
  "tray": {
    "icon-size": 25,
    "rotate": 0,
    "spacing": 5,
  },
  "battery": {
    "states": {
      "good": 95,
      "warning": 30,
      "critical": 20,
    },
    "format": "{icon} {capacity}%",
    "rotate": 0,
    "format-charging": " {capacity}%",
    "format-plugged": " {capacity}%",
    "format-alt": "{time} {icon}",
    "format-icons": ["󰂎", "󰁺", "󰁻", "󰁼", "󰁽", "󰁾", "󰁿", "󰂀", "󰂁", "󰂂", "󰁹"],
  },
  "backlight": {
    "device": "intel_backlight",
    "rotate": 0,
    "format": "{icon} {percent}%",
    "format-icons": ["", "", "", "", "", "", "", "", ""],
    "on-scroll-up": "brightnessctl set 1%+",
    "on-scroll-down": "brightnessctl set 1%-",
    "min-length": 6,
  },
  "network": {
    "tooltip": true,
    "format-wifi": " ",
    "rotate": 0,
    "format-ethernet": "<span foreground='#99ffdd'> {bandwidthDownBytes}</span> <span foreground='#ffcc66'> {bandwidthUpBytes}</span> ",
    "tooltip-format": "Network: <big><b>{essid}</b></big>\nSignal strength: <b>{signaldBm}dBm ({signalStrength}%)</b>\nFrequency: <b>{frequency}MHz</b>\nInterface: <b>{ifname}</b>\nIP: <b>{ipaddr}/{cidr}</b>\nGateway: <b>{gwaddr}</b>\nNetmask: <b>{netmask}</b>",
    "format-linked": "󰈀 {ifname} (No IP)",
    "format-disconnected": "󰖪 ",
    "tooltip-format-disconnected": "Disconnected",
    // "format-alt": "<span foreground='#99ffdd'> {bandwidthDownBytes}</span> <span foreground='#ffcc66'> {bandwidthUpBytes}</span>",
    "interval": 2,
  },
  "pulseaudio": {
    "format": "{icon} {volume}",
    "rotate": 0,
    "format-muted": "婢",
    // "on-click": "pavucontrol -t 3",
    "on-click": "volumecontrol.sh -s ''",
    "on-click-right": "volumecontrol.sh -s ''",
    // "on-click-middle": "volumecontrol.sh -o m",
    "on-click-middle": "pavucontrol -t 3",
    "on-scroll-up": "volumecontrol.sh -o i",
    "on-scroll-down": "volumecontrol.sh -o d",
    "tooltip-format": "{icon} {desc} // {volume}%",
    "scroll-step": 5,
    "format-icons": {
      "headphone": "",
      "hands-free": "",
      "headset": "",
      "phone": "",
      "portable": "",
      "car": "",
      "default": [" ", " ", " "],
    },
  },
  "pulseaudio#microphone": {
    "format": "{format_source}",
    "rotate": 0,
    "format-source": "",
    "format-source-muted": "",
    "on-click": "pavucontrol -t 4",
    "on-click-middle": "volumecontrol.sh -i m",
    "on-scroll-up": "volumecontrol.sh -i i",
    "on-scroll-down": "volumecontrol.sh -i d",
    "tooltip-format": "{format_source} {source_desc} // {source_volume}%",
    "scroll-step": 5,
  },
  // modules for padding //
  "custom/l_end": {
    "format": " ",
    "interval": "once",
    "tooltip": false,
  },
  "custom/r_end": {
    "format": " ",
    "interval": "once",
    "tooltip": false,
  },
  "custom/sl_end": {
    "format": " ",
    "interval": "once",
    "tooltip": false,
  },
  "custom/sr_end": {
    "format": " ",
    "interval": "once",
    "tooltip": false,
  },
  "custom/rl_end": {
    "format": " ",
    "interval": "once",
    "tooltip": false,
  },
  "custom/rr_end": {
    "format": " ",
    "interval": "once",
    "tooltip": false,
  },
  "custom/padd": {
    "format": "  ",
    "interval": "once",
    "tooltip": false,
  },
}
