#!/bin/bash

# blob:summary=Export the current theme's gum styling into the environment
# blob:hidden=true

# Meant to be sourced. gum_env.lua is fed into the compositor environment via
# hl.env at login, but that environment is captured once and is not refreshed on
# a theme switch, so anything launched from the session would otherwise inherit
# the login-time theme's gum colors. Export the current values instead.
_blob_gum_env="$HOME/.local/state/blob/current/theme/gum_env.lua"

if [[ -f $_blob_gum_env ]]; then
  while IFS=$'\t' read -r _blob_gum_key _blob_gum_value; do
    [[ -n $_blob_gum_key && -n $_blob_gum_value ]] && export "$_blob_gum_key=$_blob_gum_value"
  done < <(awk -F'"' '/hl\.env\("[A-Z0-9_]+", "[^"]+"\)/ { print $2 "\t" $4 }' "$_blob_gum_env")
fi

unset _blob_gum_env _blob_gum_key _blob_gum_value
