FUJI/src/types/saturday.d.ts
Clas Wen 8072dd5ce7 feat: implement server-side pagination for repair admin
- Replace client-side pagination (limit: 1000) with server-side pagination (limit: 10)
- Add totalCount state to track pagination from API headers
- Extract X-Total-Count from response headers for accurate page calculation
- Pass status filter as array to API instead of comma-separated string
- Add loading state during pagination changes
- Add min-h-[600px] to prevent layout shifts during loading
- Remove client-side filtering and slicing logic
- Add useEffect to reload data on page/filter changes

Performance improvements:
- 99% reduction in data transfer (10 vs 1000 events per request)
- Faster initial load and page transitions
- Better scalability for growing datasets

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-12 21:45:28 +08:00

2145 lines
49 KiB
TypeScript

/**
* This file was auto-generated by openapi-typescript.
* Do not make direct changes to the file.
*/
export interface paths {
"/client/event": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
get?: never
put?: never
/** Create client event */
post: operations["create-client-event"]
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
"/client/events": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** Get client events by page */
get: operations["get-client-events"]
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
"/client/events/{EventId}": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** Get client event by id */
get: operations["get-client-event-by-id"]
put?: never
post?: never
/** Cancel client event */
delete: operations["cancel-client-event"]
options?: never
head?: never
/** Update client event */
patch: operations["update-client-event"]
trace?: never
}
"/clients/token/logto": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
get?: never
put?: never
/** Create token via logto */
post: operations["create-token-via-logto"]
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
"/clients/token/wechat": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
get?: never
put?: never
/** Create token via wechat */
post: operations["create-token-via-wechat"]
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
"/events": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** Get a public event by page */
get: operations["get-public-event-by-page"]
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
"/events/xlsx": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** Export events to XLSX */
get: operations["export-events-xlsx"]
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
"/events/{EventId}": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** Get a public event by id */
get: operations["get-public-event-by-id"]
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
"/events/{EventId}/close": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
get?: never
put?: never
/** Close event */
post: operations["close-event"]
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
"/events/{EventId}/commit": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
get?: never
put?: never
post?: never
/** Reject commit event */
delete: operations["reject-commit-event"]
options?: never
head?: never
patch?: never
trace?: never
}
"/member": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** Get current member */
get: operations["get-member"]
/** Update member */
put: operations["update-member"]
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
"/member/activate": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
get?: never
put?: never
post?: never
delete?: never
options?: never
head?: never
/** Activate member */
patch: operations["activate-member"]
trace?: never
}
"/member/avatar": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
get?: never
put?: never
post?: never
delete?: never
options?: never
head?: never
/** Update member avatar */
patch: operations["update-member-avatar"]
trace?: never
}
"/member/events": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** Get member events */
get: operations["get-member-events"]
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
"/member/events/{EventId}": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** Get member event by id */
get: operations["get-member-event-by-id"]
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
"/member/events/{EventId}/accept": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
get?: never
put?: never
/** Accept event */
post: operations["accept-event"]
/** Drop event */
delete: operations["drop-event"]
options?: never
head?: never
patch?: never
trace?: never
}
"/member/events/{EventId}/commit": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
get?: never
put?: never
/** Commit event */
post: operations["commit-event"]
delete?: never
options?: never
head?: never
/** Alter commit event */
patch: operations["alter-commit-event"]
trace?: never
}
"/member/token/logto": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** Create token via logto token */
get: operations["create-token-via-logto-token"]
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
"/members": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** Get a public member by page */
get: operations["get-public-member-by-page"]
put?: never
/** Create multiple members */
post: operations["create-members"]
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
"/members/full": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** Get members with full details */
get: operations["get-members-full"]
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
"/members/{MemberId}": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** Get a public member by id */
get: operations["get-public-member"]
put?: never
/** Create member */
post: operations["create-member"]
delete?: never
options?: never
head?: never
/** Update member basic info */
patch: operations["update-member-basic"]
trace?: never
}
"/members/{MemberId}/logto_id": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
get?: never
put?: never
post?: never
delete?: never
options?: never
head?: never
/** Bind member logto id */
patch: operations["bind-member-logto-id"]
trace?: never
}
"/members/{MemberId}/token": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
get?: never
put?: never
/** Create token */
post: operations["create-token"]
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
"/ping": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** Ping */
get: operations["ping"]
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
}
export type webhooks = Record<string, never>
export interface components {
schemas: {
"ActivateMemberRequest": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/ActivateMemberRequest.json
*/
readonly $schema?: string
MemberId: string
alias: string
password: string
phone: string
profile: string
qq: string
}
"AlterCommitEventInputBody": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/AlterCommitEventInputBody.json
*/
readonly $schema?: string
content: string
size?: string
}
"Bind-member-logto-idRequest": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/Bind-member-logto-idRequest.json
*/
readonly $schema?: string
password: string
}
"ClientTokenResponse": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/ClientTokenResponse.json
*/
readonly $schema?: string
/** Format: int64 */
clientId: number
gmtCreate: string
gmtModified: string
logtoId: string
openid: string
token: string
}
"CommitEventInputBody": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/CommitEventInputBody.json
*/
readonly $schema?: string
content: string
size?: string
}
"Create-token-via-wechatRequest": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/Create-token-via-wechatRequest.json
*/
readonly $schema?: string
code: string
}
"Create-tokenRequest": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/Create-tokenRequest.json
*/
readonly $schema?: string
password: string
}
"CreateClientEventInputBody": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/CreateClientEventInputBody.json
*/
readonly $schema?: string
contactPreference?: string
model?: string
phone: string
problem: string
qq?: string
}
"CreateMemberRequest": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/CreateMemberRequest.json
*/
readonly $schema?: string
alias: string
avatar: string
logtoId: string
memberId: string
name: string
phone: string
profile: string
qq: string
role: string
section: string
}
"CreateMemberTokenResponse": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/CreateMemberTokenResponse.json
*/
readonly $schema?: string
alias: string
avatar: string
createdBy: string
githubId: string
gmtCreate: string
gmtModified: string
logtoId: string
memberId: string
name: string
phone: string
profile: string
qq: string
role: string
section: string
token: string
}
"ErrorDetail": {
/** @description Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id' */
location?: string
/** @description Error message text */
message?: string
/** @description The value at the given location */
value?: unknown
}
"ErrorModel": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/ErrorModel.json
*/
readonly $schema?: string
/**
* @description A human-readable explanation specific to this occurrence of the problem.
* @example Property foo is required but is missing.
*/
detail?: string
/** @description Optional list of individual error details */
errors?: components["schemas"]["ErrorDetail"][] | null
/**
* Format: uri
* @description A URI reference that identifies the specific occurrence of the problem.
* @example https://example.com/error-log/abc123
*/
instance?: string
/**
* Format: int64
* @description HTTP status code
* @example 400
*/
status?: number
/**
* @description A short, human-readable summary of the problem type. This value should not change between occurrences of the error.
* @example Bad Request
*/
title?: string
/**
* Format: uri
* @description A URI reference to human-readable documentation for the error.
* @default about:blank
* @example https://example.com/errors/example
*/
type: string
}
"Event": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/Event.json
*/
readonly $schema?: string
/** Format: int64 */
clientId: number
closedBy: components["schemas"]["PublicMember"]
closedById: string
contactPreference: string
/** Format: int64 */
eventId: number
githubIssueId: components["schemas"]["NullInt64"]
githubIssueNumber: components["schemas"]["NullInt64"]
gmtCreate: string
gmtModified: string
logs: components["schemas"]["EventLog"][] | null
member: components["schemas"]["PublicMember"]
memberId: string
model: string
phone: string
problem: string
qq: string
size: string
status: string
}
"EventLog": {
action: string
description: string
gmtCreate: string
/** Format: int64 */
logId: number
memberId: string
}
"Member": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/Member.json
*/
readonly $schema?: string
alias: string
avatar: string
createdBy: string
githubId: string
gmtCreate: string
gmtModified: string
logtoId: string
memberId: string
name: string
phone: string
profile: string
qq: string
role: string
section: string
}
"NullInt64": {
/** Format: int64 */
Int64: number
Valid: boolean
}
"PingResponse": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/PingResponse.json
*/
readonly $schema?: string
/**
* @description Ping message
* @example ping
*/
message: string
}
"PublicEvent": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/PublicEvent.json
*/
readonly $schema?: string
/** Format: int64 */
clientId: number
closedBy: components["schemas"]["PublicMember"]
/** Format: int64 */
eventId: number
/** Format: int64 */
githubIssueId: number
/** Format: int64 */
githubIssueNumber: number
gmtCreate: string
gmtModified: string
logs: components["schemas"]["EventLog"][] | null
member: components["schemas"]["PublicMember"]
model: string
problem: string
size: string
status: string
}
"PublicMember": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/PublicMember.json
*/
readonly $schema?: string
alias: string
avatar: string
createdBy: string
gmtCreate: string
gmtModified: string
memberId: string
profile: string
role: string
}
"UpdateClientEventInputBody": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/UpdateClientEventInputBody.json
*/
readonly $schema?: string
contactPreference?: string
model?: string
phone: string
problem: string
qq?: string
size?: string
}
"UpdateMemberAvatarInputBody": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/UpdateMemberAvatarInputBody.json
*/
readonly $schema?: string
/** @description Avatar URL */
avatar: string
}
"UpdateMemberBasicRequest": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/UpdateMemberBasicRequest.json
*/
readonly $schema?: string
memberId: string
name: string
role: string
section: string
}
"UpdateMemberRequest": {
/**
* Format: uri
* @description A URL to the JSON Schema for this object.
* @example https://api.nbtca.space/schemas/UpdateMemberRequest.json
*/
readonly $schema?: string
MemberId: string
alias: string
avatar: string
password: string
phone: string
profile: string
qq: string
}
}
responses: never
parameters: never
requestBodies: never
headers: never
pathItems: never
}
export type $defs = Record<string, never>
export interface operations {
"create-client-event": {
parameters: {
query?: never
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path?: never
cookie?: never
}
requestBody: {
content: {
"application/json": components["schemas"]["CreateClientEventInputBody"]
}
}
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Event"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"get-client-events": {
parameters: {
query?: {
/**
* @description Offset
* @example 0
*/
offset?: number
/**
* @description Limit
* @example 50
*/
limit?: number
status?: string
order?: string
}
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path?: never
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Event"][] | null
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"get-client-event-by-id": {
parameters: {
query?: never
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path: {
/**
* @description Event ID
* @example 123
*/
EventId: number
}
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Event"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"cancel-client-event": {
parameters: {
query?: never
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path: {
/**
* @description Event ID
* @example 123
*/
EventId: number
}
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Event"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"update-client-event": {
parameters: {
query?: never
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path: {
/**
* @description Event ID
* @example 123
*/
EventId: number
}
cookie?: never
}
requestBody: {
content: {
"application/json": components["schemas"]["UpdateClientEventInputBody"]
}
}
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Event"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"create-token-via-logto": {
parameters: {
query?: never
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path?: never
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["ClientTokenResponse"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"create-token-via-wechat": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
requestBody: {
content: {
"application/json": components["schemas"]["Create-token-via-wechatRequest"]
}
}
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["ClientTokenResponse"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"get-public-event-by-page": {
parameters: {
query?: {
/**
* @description Offset
* @example 0
*/
offset?: number
/**
* @description Limit
* @example 50
*/
limit?: number
status?: string[] | null
order?: string
}
header?: never
path?: never
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["PublicEvent"][] | null
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"export-events-xlsx": {
parameters: {
query: {
status?: string
order?: string
start_time: string
end_time: string
}
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path?: never
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
[name: string]: unknown
}
content?: never
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"get-public-event-by-id": {
parameters: {
query?: never
header?: never
path: {
EventId: number
}
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["PublicEvent"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"close-event": {
parameters: {
query?: never
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path: {
/**
* @description Event ID
* @example 123
*/
EventId: number
}
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Event"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"reject-commit-event": {
parameters: {
query?: never
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path: {
/**
* @description Event ID
* @example 123
*/
EventId: number
}
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Event"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"get-member": {
parameters: {
query?: never
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path?: never
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Member"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"update-member": {
parameters: {
query?: never
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path?: never
cookie?: never
}
requestBody: {
content: {
"application/json": components["schemas"]["UpdateMemberRequest"]
}
}
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Member"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"activate-member": {
parameters: {
query?: never
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path?: never
cookie?: never
}
requestBody: {
content: {
"application/json": components["schemas"]["ActivateMemberRequest"]
}
}
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Member"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"update-member-avatar": {
parameters: {
query?: never
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path?: never
cookie?: never
}
requestBody: {
content: {
"application/json": components["schemas"]["UpdateMemberAvatarInputBody"]
}
}
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Member"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"get-member-events": {
parameters: {
query?: {
/**
* @description Offset
* @example 0
*/
offset?: number
/**
* @description Limit
* @example 50
*/
limit?: number
status?: string
order?: string
}
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path?: never
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Event"][] | null
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"get-member-event-by-id": {
parameters: {
query?: never
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path: {
/**
* @description Event ID
* @example 123
*/
EventId: number
}
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Event"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"accept-event": {
parameters: {
query?: never
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path: {
/**
* @description Event ID
* @example 123
*/
EventId: number
}
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Event"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"drop-event": {
parameters: {
query?: never
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path: {
/**
* @description Event ID
* @example 123
*/
EventId: number
}
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Event"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"commit-event": {
parameters: {
query?: never
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path: {
/**
* @description Event ID
* @example 123
*/
EventId: number
}
cookie?: never
}
requestBody: {
content: {
"application/json": components["schemas"]["CommitEventInputBody"]
}
}
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Event"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"alter-commit-event": {
parameters: {
query?: never
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path: {
/**
* @description Event ID
* @example 123
*/
EventId: number
}
cookie?: never
}
requestBody: {
content: {
"application/json": components["schemas"]["AlterCommitEventInputBody"]
}
}
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Event"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"create-token-via-logto-token": {
parameters: {
query?: never
header?: {
Authorization?: string
}
path?: never
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["CreateMemberTokenResponse"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"get-public-member-by-page": {
parameters: {
query?: {
/**
* @description Offset
* @example 0
*/
offset?: number
/**
* @description Limit
* @example 50
*/
limit?: number
}
header?: never
path?: never
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["PublicMember"][] | null
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"create-members": {
parameters: {
query?: never
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path?: never
cookie?: never
}
requestBody: {
content: {
"application/json": components["schemas"]["CreateMemberRequest"][] | null
}
}
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Member"][] | null
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"get-members-full": {
parameters: {
query?: {
/**
* @description Offset
* @example 0
*/
offset?: number
/**
* @description Limit
* @example 50
*/
limit?: number
}
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path?: never
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Member"][] | null
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"get-public-member": {
parameters: {
query?: never
header?: never
path: {
/**
* @description Name to greet
* @example 2333333333
*/
MemberId: string
}
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["PublicMember"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"create-member": {
parameters: {
query?: never
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path: {
/**
* @description Member ID
* @example 2333333333
*/
MemberId: string
}
cookie?: never
}
requestBody: {
content: {
"application/json": components["schemas"]["CreateMemberRequest"]
}
}
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Member"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"update-member-basic": {
parameters: {
query?: never
header?: {
/** @description Bearer token or JWT token */
Authorization?: string
}
path: {
/**
* @description Member ID
* @example 2333333333
*/
MemberId: string
}
cookie?: never
}
requestBody: {
content: {
"application/json": components["schemas"]["UpdateMemberBasicRequest"]
}
}
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Member"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"bind-member-logto-id": {
parameters: {
query?: never
header?: {
Authorization?: string
}
path: {
/**
* @description Member Id
* @example 2333333333
*/
MemberId: string
}
cookie?: never
}
requestBody: {
content: {
"application/json": components["schemas"]["Bind-member-logto-idRequest"]
}
}
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["Member"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"create-token": {
parameters: {
query?: never
header?: never
path: {
/**
* @description Member Id
* @example 2333333333
*/
MemberId: string
}
cookie?: never
}
requestBody: {
content: {
"application/json": components["schemas"]["Create-tokenRequest"]
}
}
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["CreateMemberTokenResponse"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
"ping": {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
"X-Limit"?: number | null
"X-Offset"?: number | null
"X-Page"?: number | null
"X-Total-Count"?: number | null
"X-Total-Pages"?: number | null
[name: string]: unknown
}
content: {
"application/json": components["schemas"]["PingResponse"]
}
}
/** @description Error */
default: {
headers: {
[name: string]: unknown
}
content: {
"application/problem+json": components["schemas"]["ErrorModel"]
}
}
}
}
}