# shellcheck shell=bash disable=SC2154,SC2034

___x_cmd_shodan_query_search(){
    local X_help_cmd='x help -m shodan query search';   help:arg:parse
    shodan:arg:format:all

    local IFS=" "
    set -- /shodan/query/search --data-urlencode "query=$*"

    ___x_cmd_shodan_query_search___"$format" "$@"
}


___x_cmd_shodan_query_search___app(){
    local data; data="$( ___x_cmd_shodan_query_search___csv "$@" )" || shodan:data:ret
    ___x_cmd_pipevar    data    x csv --app
}

___x_cmd_shodan_query_search___csv(){
    local data; data="$( ___x_cmd_shodan_query_search___raw "$@" )" || shodan:data:ret
    ___x_cmd_pipevar    data    ___x_cmd_shodan_query_search___parser_json2csv
}

___x_cmd_shodan_query_search___json(){
    local data; data="$( ___x_cmd_shodan_query_search___raw "$@" )" || shodan:data:ret
    ___x_cmd_pipevar    data
}

___x_cmd_shodan_query_search___raw(){
    local IFS=" "
    ___x_cmd_shodan_ourl get "$@"
}

# Section: parser

___x_cmd_shodan_query_search___parser_json2csv(){
    x jo . .matches |\
        x ja 2c .title .votes .query .description .timestamp  |\
        x csv header --add  Title Votes query Description Timestamp
}

# EndSection
