# shellcheck shell=dash

___x_cmd log init node

xrc:mod:lib     node        __setarg_ enginerun load subcmd co

# Parsing the argument ...
___x_cmd_node___main(){
    [ "$#" -gt 0 ] || {
        ( ___x_cmd_node___cmd node )
        return
    }

    local op="$1"; shift
    case "$op" in
        load)           ___x_cmd_node_load "$@" ;;
        loaded)         ___x_cmd_node_loaded ;;

        ,|，|co)        ___x_cmd_node_co "$@" ;;
        ,,|，，|coco)   ___x_cmd_node_coco "$@" ;;

        "$___X_CMD_ENGINE_SUBCMD_NAME")
                        ___x_cmd_node___enginerun "$@" ;;
        *)              ___x_cmd_node___enginerun "$op" "$@" ;;
    esac
}

___x_cmd_node___cmd(){
    if ___x_cmd_hasbin "$1"; then
        "$@"
        return
    fi
    ___x_cmd snap --run "$@"
}
