# shellcheck shell=dash

# Actually bootrc is already loaded in xrc
xrc:mod:lib     websrc      set info is testcn

___X_CMD_WEBSRC_REPO=x-cmd
___X_CMD_WEBSRC_REPO_BRANCH=latest

___x_cmd_websrc___main(){
    if [ "$#" -eq 0 ]; then
        ___x_cmd_websrc_env
        return 0
    fi

    local op="$1";          shift
    case "$op" in
        is|\
        local|global|env|\
        gitdomain|gitdomain_| \
        uproot|load|reset|set|autoset| \
        testcn)             ___x_cmd_websrc_"$op" "$@" ;;
        --help|-h|*)        ___x_cmd help -m websrc; return 0 ;;
    esac
}

___x_cmd_websrc_gitdomain_(){
    if [ -z "$___X_CMD_WEBSRC_REGION" ]; then
        ___x_cmd_websrc_load
    fi

    # git.x-cmd.com
    case "$___X_CMD_WEBSRC_REGION" in
        cn)     ___X_CMD_WEBSRC_GITDOMAIN_="gitee.com" ;;
        *)      ___X_CMD_WEBSRC_GITDOMAIN_="github.com" ;;
    esac

    x_="$___X_CMD_WEBSRC_GITDOMAIN_"
}

___x_cmd_websrc_gitdomain(){
    local ___X_CMD_WEBSRC_GITDOMAIN_
    ___x_cmd_websrc_gitdomain_
    printf "%s\n" "$___X_CMD_WEBSRC_GITDOMAIN_"
}


___x_cmd_websrc_load(){
    local fp="${___X_CMD_ROOT_CFG}/websrc/region.setup.sh"
    if [ -f "$fp" ]; then
        . "$fp"
    else
        fp="${___X_CMD_ROOT_GCFG}/websrc/region.setup.sh"
        [ -f "$fp" ] || ___x_cmd_websrc_set_default -g
        . "$fp"
    fi
}

___x_cmd_websrc_autoset(){
    local fp="${___X_CMD_ROOT_GCFG}/websrc/region.setup.sh"
    x:debug "websrc autoset"
    if [ -f "$fp" ]; then
        ___x_cmd_websrc_set "$@"
    else
        ___x_cmd_websrc_set -g "$@"
    fi
}
