# shellcheck shell=dash

___x_cmd_gcode_group_repo(){
    param:subcmd ___x_cmd_gcode_group_repo    \
        ls          "list group repo"
    param:subcmd:try
    param:run

    ___x_cmd_gcode_group_repo _param_help_doc
    return 1
}

# Section: List
# http://localhost:4000/13.7/ee/api/groups.html#list-a-groups-projects
___x_cmd_gcode_group_repo_ls(){
    param:scope     ___x_cmd_gcode
    param:dsl       '
options:
    #1              "<group_path> or .id=<group_id>"    <>
    --page          "page"                              <>:NatureNumber=1
    --per_page      "per_page"                          <>:NatureNumber=20
    --visibility    "Limit by visibility"               <>=""
    --archived      "Limit by archived status"
    --owned         "owned"
    --json|-j       "output json data"
'
    param:run
    [ -n "$1" ] || M='accepts arg (<group_path> or .id=<group_id>), received empty' arg:ret:64
    local _avt_group="$1"
    ___x_cmd_gcode____transform_avt_group || return

    if [ -n "$json" ] || [ -n "$ENFORCE_JSON" ]; then
        ___x_cmd_gcode_get_multi "/groups/$_avt_group/projects"  visibility archived
    else
        ___x_cmd_gcode_get_multi "/groups/$_avt_group/projects"  visibility archived | \
            x jo 2c            .id .name .path .visibility .web_url | \
            x csv header --add  ID  Name  Path  Visibility  URL     | \
            x csv static_tab
    fi
}
# EndSection