# shellcheck disable=SC2154,SC2142

alias ourl:param:format:init='
local format="${app:-${csv:-${tsv:-json}}}"
[ -n "$format" ] || { [ ! -t 1 ] || ! ___x_cmd_is_interactive; } || format="app"
'

OURL_PARAM_FORMAT_DEFITION='
-j|--json   "Output in json format"
--csv       "Output in csv format"
--tsv       "Output in tsv format"
--app       "Open app"
'


alias ourl:data:ret='{ [ -z "$data" ] || ___x_cmd_pipevar data x j2y >&2; return 1; }'

# Section: arg format
alias ourl:arg:format:init='
local format
'

alias ourl:arg:format:match='
case "$1" in
    --tsv)      format=tsv;     shift ;;
    --csv)      format=csv;     shift ;;
    --raw)      format=raw;     shift ;;
    --app)      format=app;     shift ;;
    -j|--json)  format=json;    shift ;;
    *)          ;;
esac
'

alias ourl:arg:format:fini='
if [ -z "$format" ]; then
    if  ! [ -t 1 ] || ! ___x_cmd_is_interactive; then
        format=csv
    else
        format=app
    fi
fi
'

alias ourl:arg:format:all='
ourl:arg:format:init
ourl:arg:format:match
ourl:arg:format:fini
'
# EndSection
