#!/usr/bin/env bash

if [[ -z "${BASH_VERSION:-}" ]]; then
  echo "Unsupported shell"
  return 1 2>/dev/null || exit 1
fi

_bash_polyjuice_source="${BASH_SOURCE[0]}"
export BASH_POLYJUICE_PATH="$(cd "$(dirname "$_bash_polyjuice_source")" && pwd)"
export BASH_POLYJUICE_SETTINGS_PATH="$BASH_POLYJUICE_PATH/settings"
export BASH_POLYJUICE_ALIASES_PATH="$BASH_POLYJUICE_PATH/aliases"
export BASH_POLYJUICE_FUNCTIONS_PATH="$BASH_POLYJUICE_PATH/functions"
export BASH_POLYJUICE_INTEGRATIONS_PATH="$BASH_POLYJUICE_PATH/integrations"
export BASH_POLYJUICE_KEYBINDINGS_PATH="$BASH_POLYJUICE_PATH/keybindings"
export BASH_POLYJUICE_STARSHIP_CONFIG_FILE="$BASH_POLYJUICE_PATH/../starship/starship_default.toml"
export BASH_POLYJUICE_HELIX_CONFIG_FILE="$BASH_POLYJUICE_PATH/../helix/config.toml"

for _file in "$BASH_POLYJUICE_SETTINGS_PATH"/*.sh; do
  [[ -f "$_file" ]] && source "$_file"
done

for _file in "$BASH_POLYJUICE_ALIASES_PATH"/*.sh; do
  [[ -f "$_file" ]] && source "$_file"
done

for _file in "$BASH_POLYJUICE_FUNCTIONS_PATH"/*.sh; do
  [[ -f "$_file" ]] && source "$_file"
done

for _file in "$BASH_POLYJUICE_INTEGRATIONS_PATH"/*.sh; do
  [[ -f "$_file" ]] && source "$_file"
done

for _file in "$BASH_POLYJUICE_KEYBINDINGS_PATH"/*.sh; do
  [[ -f "$_file" ]] && source "$_file"
done

unset _file
unset _bash_polyjuice_source
