149 lines
5.8 KiB
GDScript3
149 lines
5.8 KiB
GDScript3
|
|
@tool
|
|||
|
|
extends TwitchData
|
|||
|
|
|
|||
|
|
# CLASS GOT AUTOGENERATED DON'T CHANGE MANUALLY. CHANGES CAN BE OVERWRITTEN EASILY.
|
|||
|
|
|
|||
|
|
class_name TwitchGetBitsLeaderboard
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
##
|
|||
|
|
## #/components/schemas/GetBitsLeaderboardResponse
|
|||
|
|
class Response extends TwitchData:
|
|||
|
|
|
|||
|
|
## A list of leaderboard leaders. The leaders are returned in rank order by how much they’ve cheered. The array is empty if nobody has cheered bits.
|
|||
|
|
@export var data: Array[TwitchBitsLeaderboard]:
|
|||
|
|
set(val):
|
|||
|
|
data = val
|
|||
|
|
track_data(&"data", val)
|
|||
|
|
|
|||
|
|
## The reporting window’s start and end dates, in RFC3339 format. The dates are calculated by using the _started\_at_ and _period_ query parameters. If you don’t specify the _started\_at_ query parameter, the fields contain empty strings.
|
|||
|
|
@export var date_range: ResponseDateRange:
|
|||
|
|
set(val):
|
|||
|
|
date_range = val
|
|||
|
|
track_data(&"date_range", val)
|
|||
|
|
|
|||
|
|
## The number of ranked users in `data`. This is the value in the _count_ query parameter or the total number of entries on the leaderboard, whichever is less.
|
|||
|
|
@export var total: int:
|
|||
|
|
set(val):
|
|||
|
|
total = val
|
|||
|
|
track_data(&"total", val)
|
|||
|
|
var response: BufferedHTTPClient.ResponseData
|
|||
|
|
|
|||
|
|
|
|||
|
|
## Constructor with all required fields.
|
|||
|
|
static func create(_data: Array[TwitchBitsLeaderboard], _date_range: ResponseDateRange, _total: int) -> Response:
|
|||
|
|
var response: Response = Response.new()
|
|||
|
|
response.data = _data
|
|||
|
|
response.date_range = _date_range
|
|||
|
|
response.total = _total
|
|||
|
|
return response
|
|||
|
|
|
|||
|
|
|
|||
|
|
static func from_json(d: Dictionary) -> Response:
|
|||
|
|
var result: Response = Response.new()
|
|||
|
|
if d.get("data", null) != null:
|
|||
|
|
for value in d["data"]:
|
|||
|
|
result.data.append(TwitchBitsLeaderboard.from_json(value))
|
|||
|
|
if d.get("date_range", null) != null:
|
|||
|
|
result.date_range = ResponseDateRange.from_json(d["date_range"])
|
|||
|
|
if d.get("total", null) != null:
|
|||
|
|
result.total = d["total"]
|
|||
|
|
return result
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
## The reporting window’s start and end dates, in RFC3339 format. The dates are calculated by using the _started\_at_ and _period_ query parameters. If you don’t specify the _started\_at_ query parameter, the fields contain empty strings.
|
|||
|
|
## #/components/schemas/GetBitsLeaderboardResponse/DateRange
|
|||
|
|
class ResponseDateRange extends TwitchData:
|
|||
|
|
|
|||
|
|
## The reporting window’s start date.
|
|||
|
|
@export var started_at: String:
|
|||
|
|
set(val):
|
|||
|
|
started_at = val
|
|||
|
|
track_data(&"started_at", val)
|
|||
|
|
|
|||
|
|
## The reporting window’s end date.
|
|||
|
|
@export var ended_at: String:
|
|||
|
|
set(val):
|
|||
|
|
ended_at = val
|
|||
|
|
track_data(&"ended_at", val)
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
## Constructor with all required fields.
|
|||
|
|
static func create(_started_at: String, _ended_at: String) -> ResponseDateRange:
|
|||
|
|
var response_date_range: ResponseDateRange = ResponseDateRange.new()
|
|||
|
|
response_date_range.started_at = _started_at
|
|||
|
|
response_date_range.ended_at = _ended_at
|
|||
|
|
return response_date_range
|
|||
|
|
|
|||
|
|
|
|||
|
|
static func from_json(d: Dictionary) -> ResponseDateRange:
|
|||
|
|
var result: ResponseDateRange = ResponseDateRange.new()
|
|||
|
|
if d.get("started_at", null) != null:
|
|||
|
|
result.started_at = d["started_at"]
|
|||
|
|
if d.get("ended_at", null) != null:
|
|||
|
|
result.ended_at = d["ended_at"]
|
|||
|
|
return result
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
## All optional parameters for TwitchAPI.get_bits_leaderboard
|
|||
|
|
## #/components/schemas/GetBitsLeaderboardOpt
|
|||
|
|
class Opt extends TwitchData:
|
|||
|
|
|
|||
|
|
## The number of results to return. The minimum count is 1 and the maximum is 100\. The default is 10.
|
|||
|
|
@export var count: int:
|
|||
|
|
set(val):
|
|||
|
|
count = val
|
|||
|
|
track_data(&"count", val)
|
|||
|
|
|
|||
|
|
## The time period over which data is aggregated (uses the PST time zone). Possible values are:
|
|||
|
|
##
|
|||
|
|
## * day — A day spans from 00:00:00 on the day specified in _started\_at_ and runs through 00:00:00 of the next day.
|
|||
|
|
## * week — A week spans from 00:00:00 on the Monday of the week specified in _started\_at_ and runs through 00:00:00 of the next Monday.
|
|||
|
|
## * month — A month spans from 00:00:00 on the first day of the month specified in _started\_at_ and runs through 00:00:00 of the first day of the next month.
|
|||
|
|
## * year — A year spans from 00:00:00 on the first day of the year specified in _started\_at_ and runs through 00:00:00 of the first day of the next year.
|
|||
|
|
## * all — Default. The lifetime of the broadcaster's channel.
|
|||
|
|
@export var period: String:
|
|||
|
|
set(val):
|
|||
|
|
period = val
|
|||
|
|
track_data(&"period", val)
|
|||
|
|
|
|||
|
|
## The start date, in RFC3339 format, used for determining the aggregation period. Specify this parameter only if you specify the _period_ query parameter. The start date is ignored if _period_ is all.
|
|||
|
|
##
|
|||
|
|
## Note that the date is converted to PST before being used, so if you set the start time to `2022-01-01T00:00:00.0Z` and _period_ to month, the actual reporting period is December 2021, not January 2022\. If you want the reporting period to be January 2022, you must set the start time to `2022-01-01T08:00:00.0Z` or `2022-01-01T00:00:00.0-08:00`.
|
|||
|
|
##
|
|||
|
|
## If your start date uses the ‘+’ offset operator (for example, `2022-01-01T00:00:00.0+05:00`), you must URL encode the start date.
|
|||
|
|
@export var started_at: String:
|
|||
|
|
set(val):
|
|||
|
|
started_at = val
|
|||
|
|
track_data(&"started_at", val)
|
|||
|
|
|
|||
|
|
## An ID that identifies a user that cheered bits in the channel. If _count_ is greater than 1, the response may include users ranked above and below the specified user. To get the leaderboard’s top leaders, don’t specify a user ID.
|
|||
|
|
@export var user_id: String:
|
|||
|
|
set(val):
|
|||
|
|
user_id = val
|
|||
|
|
track_data(&"user_id", val)
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
## Constructor with all required fields.
|
|||
|
|
static func create() -> Opt:
|
|||
|
|
var opt: Opt = Opt.new()
|
|||
|
|
return opt
|
|||
|
|
|
|||
|
|
|
|||
|
|
static func from_json(d: Dictionary) -> Opt:
|
|||
|
|
var result: Opt = Opt.new()
|
|||
|
|
if d.get("count", null) != null:
|
|||
|
|
result.count = d["count"]
|
|||
|
|
if d.get("period", null) != null:
|
|||
|
|
result.period = d["period"]
|
|||
|
|
if d.get("started_at", null) != null:
|
|||
|
|
result.started_at = d["started_at"]
|
|||
|
|
if d.get("user_id", null) != null:
|
|||
|
|
result.user_id = d["user_id"]
|
|||
|
|
return result
|
|||
|
|
|