# shellcheck    shell=dash disable=SC2154

# xrc websrc
___x_cmd_pkg__ls_urls(){
    local name=; local version=; local net=; local url=;
    name="${1}"; [ -n "$name" ] || M='Provide a package name' N=pkg log:ret:1
    version="${2:-"$(___x_cmd pkg default_version "$name")"}"
    net="${3:-"${___X_CMD_WEBSRC_REGION:-internet}"}"

    local source="url"
    for osarch in linux/x64 linux/arm64 darwin/x64 darwin/arm64 win/x64; do
        ___x_cmd_pkg___attr "$name" "$version" "$osarch" "url.$net,npmurl.$net,npm"  2>/dev/null
        if [ -z "$___X_CMD_GHACTION_INSIDE" ] && [ "$npm" = yes ]; then
            source="npmurl"
        fi
        eval url="\$${source}_${net}"

        if [ -z "$url" ]; then
            printf "%s\n" "-"
        else
            printf "%s\n" "$url"
        fi
    done
}

___x_cmd_pkg__head_test_urls(){
    [ -n "$1" ] || M='Provide a package name' N=pkg log:ret:1
    ___x_cmd_pkg__ls_urls "$@" |  while ___x_cmd_readr url; do
        if [ -z "$url"  ] || [ "$url" = "-" ]; then
            printf "%s\n" "-"
            continue
        fi

        if eval "$(___x_cmd curl -sSI --max-time 10 -o /dev/null -w "http_code=%{http_code} ; time_total=%{time_total}" "$url" )" 2>/dev/null ; then
            time_total=$(___x_cmd_cmds_awk 'BEGIN{printf("%d\n",'"$time_total"'*1000)}')
            printf "%s=\"%s\"; " "url" "$url"
            printf "  %s=\"%s\";  " "http_code" "$http_code"
            printf "  %s=\"%sms\";\n" "time_total" "$time_total"
        else
            pkg:error "error occurred with curl url => $url"
        fi
    done
}