# shellcheck shell=sh disable=SC3043

___x_cmd_gt_event(){
    param:scope       ___x_cmd_gt
    param:subcmd      ___x_cmd_gt_event     \
        repo          "list repo event"            \
        user          "list user event"            \
        org           "list organization event"
    param:subcmd:try
    param:run

    ___x_cmd_gt_event _param_help_doc
    return 1
}

# https://gitee.com/api/v5/swagger#/getV5ReposOwnerRepoEvents
# https://gitee.com/api/v5/swagger#/getV5NetworksOwnerRepoEvents
# shellcheck disable=SC2154,SC2034
___x_cmd_gt_event_repo() {
    param:scope     ___x_cmd_gt
    param:dsl       '
options:
    #1           "<owner_path>/<repo_path>"                 <>:RepoPath
    --id         "The laster record id"                     <>=""
    --limit      "Scrolling lists per page(max 100)"        <>:NatureNumber=20
    --json|-j    "output origin json data"
'
    param:run
    local repo="$1"
    local prev_id="$id"
    ___x_cmd_gt_param_init_owner_repo
    if [ -n "$json" ] || [ -n "$ENFORCE_JSON" ]; then
        ___x_cmd_gt_curl get "/repos/${owner_repo}/events" prev_id limit
    else
        ___x_cmd_gt_curl get "/repos/${owner_repo}/events" prev_id limit | \
            x jo 2c             .id .type .public .created_at | \
            x csv header --add   Id  Type  Public Time | \
            x csv static_tab
    fi
}
# EndSection

# Section: user event TODO: add user
# https://gitee.com/api/v5/swagger#/getV5UsersUsernameEvents
# https://gitee.com/api/v5/swagger#/getV5UsersUsernameReceivedEventsPublic
___x_cmd_gt_event_user() {
    param:void
}
# EndSection

# Section: org event TODO: add org
# https://gitee.com/api/v5/swagger#/getV5UsersUsernameEventsOrgsOrg
# https://gitee.com/api/v5/swagger#/getV5OrgsOrgEvents
___x_cmd_gt_event_org() {
    param:void
}
# EndSection