# shellcheck shell=dash
___x_cmd_gx_ws_edit(){
    [ $# -gt 0 ] ||     set -- edit

    local op="$1";      shift
    case "$op" in
        edit)               ___x_cmd_gx_ws___edit                    "$@" ;;
        open)               ___x_cmd_gx_ws_edit_open                 "$@" ;;
    esac

}
___x_cmd_gx_ws___edit(){
    local x_
    ___x_cmd_gx_ws_provider_ || return
    local provider="$x_"

    ___x_cmd_gx_ws_repopath_ || return
    local p="$x_"

    gx:debug "x $provider repo edit  $*"
    x "$provider" repo edit   "$@" "$p" 
}

___x_cmd_gx_ws_edit_open(){
    local x_
    ___x_cmd_gx_ws_gethttpurl_ || return
    local httpurl="$x_"

    ___x_cmd_gx_ws_repopath_ || return
    local p="$x_"

    ___x_cmd_gx_ws_provider_ || return
    local provider="$x_"

    case "$provider" in
        gh|gt)         x browse "$httpurl/$p/settings"           ;;
        gitcode|gl)    x browse "$httpurl/$p"  ;;
        *)             return 1                                  ;;
    esac
}

