# shellcheck shell=dash

# ref：https://api.stackexchange.com/docs/search
___x_cmd_se___search_api(){
    local order; local intitle; local sort; local site

    while [ $# -gt 0 ]; do
        case "$1" in
            --site)      site="$2";     [ $# -ge 2 ] || N=se M="Please provide site value"      log:ret:64; shift 2 ;;
            --title)     intitle="$2";  [ $# -ge 2 ] || N=se M="Please provide title value"     log:ret:64; shift 2 ;;
            --sort)      sort="$2";     [ $# -ge 2 ] || N=se M="Please provide sort value"      log:ret:64; shift 2 ;;
            --order)     order="$2";    [ $# -ge 2 ] || N=se M="Please provide order value"     log:ret:64; shift 2 ;;
            *)           break;;
        esac
    done

    sort="${sort:-"activity"}"
    site="${site:-"stackoverflow"}"
    order="${order:-"desc"}"
    filter="!nNPvSNP4(R"

    local data
    data="$(
        ___x_cmd curl gencode site=="$site" \
            intitle=="$intitle" filter=="$filter" \
            sort=="$sort" order=="$order"
    )"

    se:debug "request body[$data]"

    ___x_cmd ccmd 10d -- eval x curl -sS \
        -G "$data" \
        "https://api.stackexchange.com/2.3/search"
}
