# shellcheck shell=bash disable=SC2098,2097,2012 #xrc

[ -n "$___X_CMD_ADVISE_MAN_XCMD_FOLDER" ] || xrc:mod:lib     advise env

___X_CMD_HELP_ARG_SEP=' '
___x_cmd_helpapp_gen_help(){
    local filepath="${1}"
    [ -f "$filepath" ] || N=help M="Unexisted filepath for advise jso. [filepath=$filepath]." log:ret:64
    shift

    local NO_COLOR="$NO_COLOR"
    { ___x_cmd_is_stdout2tty && ___x_cmd_runmode_allow_chatty; } || NO_COLOR=1
    helpapp:debug --argstr "'$*'" --filepath "$filepath" --NO_COLOR "${NO_COLOR:-null}" --___X_CMD_ROOT_ADV "$___X_CMD_ROOT_ADV" --___X_CMD_ADVISE_MAN_XCMD_FOLDER "$___X_CMD_ADVISE_MAN_XCMD_FOLDER" --___X_CMD_ADVISE_DEV_MOD "$___X_CMD_ADVISE_DEV_MOD" "Generate help"

    ___x_cmd tty update
    local IFS="$___X_CMD_HELP_ARG_SEP"
    local argstr="$*"

    ARGSTR="$argstr" \
    HELP_ARG_SEP="$___X_CMD_HELP_ARG_SEP" \
    ___X_CMD_ADVISE_DEV_MOD="$___X_CMD_ADVISE_DEV_MOD" \
    ___X_CMD_HELP_POSITION_ORDER="$___X_CMD_HELP_POSITION_ORDER" \
    ___X_CMD_HELP_NAME_COLOR="$___X_CMD_HELP_NAME_COLOR" \
    ___X_CMD_HELP_DESC_COLOR="$___X_CMD_HELP_DESC_COLOR" \
    ___X_CMD_HELP_TITLE_COLOR="$___X_CMD_HELP_TITLE_COLOR" \
    ___X_CMD_HELP_RULE_COLOR="$___X_CMD_HELP_RULE_COLOR" \
    ___X_CMD_HELP_CMD_COLOR="$___X_CMD_HELP_CMD_COLOR" \
    ___X_CMD_HELP_OTHER_NAME_COLOR="$___X_CMD_HELP_OTHER_NAME_COLOR" \
    ___X_CMD_HELP_OTHER_DESC_COLOR="$___X_CMD_HELP_OTHER_DESC_COLOR" \
    ___X_CMD_HELP_TLDR_CMD_COLOR="$___X_CMD_HELP_TLDR_CMD_COLOR" \
    ___X_CMD_HELP_TLDR_DESC_COLOR="$___X_CMD_HELP_TLDR_DESC_COLOR" \
    < "$filepath" ___x_cmd awk0 \
    -v COLUMNS="${COLUMNS:-100}" \
    -v NO_COLOR="$NO_COLOR" \
    -v ___X_CMD_ROOT_ADV="$___X_CMD_ROOT_ADV" \
    -v ___X_CMD_ADVISE_MAN_XCMD_FOLDER="$___X_CMD_ADVISE_MAN_XCMD_FOLDER" \
    -v ___X_CMD_LANG="$___X_CMD_LANG" \
    -f "$___X_CMD_ROOT_MOD/awk/lib/k.awk"           \
    -f "$___X_CMD_ROOT_MOD/awk/lib/ui/ui.awk"       \
    -f "$___X_CMD_ROOT_MOD/awk/lib/j/json.awk"      \
    -f "$___X_CMD_ROOT_MOD/awk/lib/j/jiter.awk"     \
    -f "$___X_CMD_ROOT_MOD/awk/lib/j/jop.awk"       \
    -f "$___X_CMD_ROOT_MOD/awk/lib/j/jcp.awk"       \
    -f "$___X_CMD_ROOT_MOD/awk/lib/u/wcwidth.awk"   \
    -f "$___X_CMD_ROOT_MOD/tui/lib/comp/share.awk"  \
    -f "$___X_CMD_ROOT_MOD/advise/lib/awk/advise.obj.awk"   \
    -f "$___X_CMD_ROOT_MOD/advise/lib/awk/advise.util.awk"  \
    -f "$___X_CMD_ROOT_MOD/advise/lib/awk/advise.share.awk" \
    -f "$___X_CMD_ROOT_MOD/helpapp/lib/awk/help.renderer.awk" \
    -f "$___X_CMD_ROOT_MOD/helpapp/lib/awk/help.awk"
}

___x_cmd_helpapp_gen_help_mod(){
    local mod="$1"; [ -n "$mod" ] || N=help M="Please provide module name" log:ret:64
    shift

    local x_=;
    ___x_cmd advise __get_mod_advise_jso_ "$mod" || N=help M="Unexisted advise jso file for [module=$mod]
Not found file: $x_" log:ret:64

    ___x_cmd_helpapp_gen_help "$x_" "$@"
}
