# shellcheck shell=sh disable=SC3043 disable=SC2034,SC2154

___x_cmd_theme_prompt_format(){
    ___x_cmd_theme_mini "$@"
}

xrc:theme:widget msg cwd1 symbol emoji
___x_cmd_theme_mini(){
    ___x_cmd_theme_headline_print

    {
        ___x_cmd_theme_widget_emoji
        [ -z "$X_emoji" ] || printf "%s "      "${X_emoji}"
    }

    {
        ___x_cmd_theme_widget_cwd1
        printf "%s" "$X_cwd1"
    }

    {
        ___x_cmd_theme_widget_symbol
        printf "\n%s "      "${X_symbol}"
    }
    ___X_CMD_THEME_TRANSIENT_PS1="$X_symbol"
}

___x_cmd_theme_linecount_ps1=2

___x_cmd_theme_headline(){
    local x_msg=
    X_headline="${___X_CMD_UNSEENCHAR_NEWLINE}"
    {
        ___x_cmd_theme_widget_msg
        ___x_cmd_theme_linecount_headline=1
        [ -n "$X_msg" ] || return 0
        X_headline="${X_headline}${X_msg}${___X_CMD_UNSEENCHAR_NEWLINE}"
    }

    ___x_cmd_theme_linecount_headline=2
}

___x_cmd_theme_headline_print(){
    [ -z "$___X_CMD_THEME_TRANSIENT_ENABLE" ] || return 0
    local X_headline=
    ___x_cmd_theme_headline
    printf "%s" "$X_headline"
}

XT_transient_ps1(){
    local x_=""
    theme:feature:get transient_time
    case "$x_" in
        always)
            ___x_cmd_theme_comp_transient time
            ___X_CMD_THEME_TIME_H_M_S="$x_"
            ___x_cmd_theme_widget_hms 2>/dev/null
            [ -z "$X_hms" ] || X_ps1="${X_hms} " ;;
    esac

    ___x_cmd_theme_widget_symbol
    [ -z "$X_symbol" ] || X_ps1="${X_ps1}${X_symbol} "
}

