pokepurple/addons/twitcher/generated/twitch_get_extension_live_channels.gd
Mario Steele c11a4ebbc2 Initial Commit
Initial commit of Code Base.
2025-06-12 14:31:14 -05:00

116 lines
No EOL
3.2 KiB
GDScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

@tool
extends TwitchData
# CLASS GOT AUTOGENERATED DON'T CHANGE MANUALLY. CHANGES CAN BE OVERWRITTEN EASILY.
class_name TwitchGetExtensionLiveChannels
##
## #/components/schemas/GetExtensionLiveChannelsResponse
class Response extends TwitchData:
## The list of broadcasters that are streaming live and that have installed or activated the extension.
@export var data: Array[TwitchExtensionLiveChannel]:
set(val):
data = val
track_data(&"data", val)
## This field contains the cursor used to page through the results. The field is empty if there are no more pages left to page through. Note that this field is a string compared to other endpoints that use a **Pagination** object. [Read More](https://dev.twitch.tv/docs/api/guide#pagination)
@export var pagination: String:
set(val):
pagination = val
track_data(&"pagination", val)
var response: BufferedHTTPClient.ResponseData
## Constructor with all required fields.
static func create(_data: Array[TwitchExtensionLiveChannel]) -> Response:
var response: Response = Response.new()
response.data = _data
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(TwitchExtensionLiveChannel.from_json(value))
if d.get("pagination", null) != null:
result.pagination = d["pagination"]
return result
func _has_pagination() -> bool:
if pagination == null || pagination == "": return false
return true
var _next_page: Callable
var _cur_iter: int = 0
func next_page() -> Response:
var response: Response = await _next_page.call()
_cur_iter = 0
_next_page = response._next_page
data = response.data
pagination = response.pagination
return response
func _iter_init(iter: Array) -> bool:
if data.is_empty(): return false
iter[0] = data[0]
return data.size() > 0
func _iter_next(iter: Array) -> bool:
if data.size() - 1 > _cur_iter:
_cur_iter += 1
iter[0] = data[_cur_iter]
if data.size() - 1 == _cur_iter && not _has_pagination():
return false
return true
func _iter_get(iter: Variant) -> Variant:
if data.size() - 1 == _cur_iter && _has_pagination():
await next_page()
return iter
## All optional parameters for TwitchAPI.get_extension_live_channels
## #/components/schemas/GetExtensionLiveChannelsOpt
class Opt extends TwitchData:
## The specific maximum number of items per page in the response. The actual number returned may be less than this limit. [Read More](https://dev.twitch.tv/docs/api/guide#pagination)
@export var first: int:
set(val):
first = val
track_data(&"first", val)
## The cursor used to get the next page of results. The `pagination` field in the response contains the cursors value. [Read More](https://dev.twitch.tv/docs/api/guide#pagination)
@export var after: String:
set(val):
after = val
track_data(&"after", 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("first", null) != null:
result.first = d["first"]
if d.get("after", null) != null:
result.after = d["after"]
return result