140 lines
No EOL
4.2 KiB
GDScript
140 lines
No EOL
4.2 KiB
GDScript
@tool
|
||
extends TwitchData
|
||
|
||
# CLASS GOT AUTOGENERATED DON'T CHANGE MANUALLY. CHANGES CAN BE OVERWRITTEN EASILY.
|
||
|
||
##
|
||
## #/components/schemas/StreamMarkers
|
||
class_name TwitchStreamMarkers
|
||
|
||
## The ID of the user that created the marker.
|
||
@export var user_id: String:
|
||
set(val):
|
||
user_id = val
|
||
track_data(&"user_id", val)
|
||
|
||
## The user’s display name.
|
||
@export var user_name: String:
|
||
set(val):
|
||
user_name = val
|
||
track_data(&"user_name", val)
|
||
|
||
## The user’s login name.
|
||
@export var user_login: String:
|
||
set(val):
|
||
user_login = val
|
||
track_data(&"user_login", val)
|
||
|
||
## A list of videos that contain markers. The list contains a single video.
|
||
@export var videos: Array[Variant]:
|
||
set(val):
|
||
videos = val
|
||
track_data(&"videos", val)
|
||
|
||
## An ID that identifies this video.
|
||
@export var video_id: String:
|
||
set(val):
|
||
video_id = val
|
||
track_data(&"video_id", val)
|
||
|
||
## The list of markers in this video. The list in ascending order by when the marker was created.
|
||
@export var markers: Array[Markers]:
|
||
set(val):
|
||
markers = val
|
||
track_data(&"markers", val)
|
||
var response: BufferedHTTPClient.ResponseData
|
||
|
||
|
||
## Constructor with all required fields.
|
||
static func create(_user_id: String, _user_name: String, _user_login: String, _videos: Array[Variant], _video_id: String, _markers: Array[Markers]) -> TwitchStreamMarkers:
|
||
var twitch_stream_markers: TwitchStreamMarkers = TwitchStreamMarkers.new()
|
||
twitch_stream_markers.user_id = _user_id
|
||
twitch_stream_markers.user_name = _user_name
|
||
twitch_stream_markers.user_login = _user_login
|
||
twitch_stream_markers.videos = _videos
|
||
twitch_stream_markers.video_id = _video_id
|
||
twitch_stream_markers.markers = _markers
|
||
return twitch_stream_markers
|
||
|
||
|
||
static func from_json(d: Dictionary) -> TwitchStreamMarkers:
|
||
var result: TwitchStreamMarkers = TwitchStreamMarkers.new()
|
||
if d.get("user_id", null) != null:
|
||
result.user_id = d["user_id"]
|
||
if d.get("user_name", null) != null:
|
||
result.user_name = d["user_name"]
|
||
if d.get("user_login", null) != null:
|
||
result.user_login = d["user_login"]
|
||
if d.get("videos", null) != null:
|
||
for value in d["videos"]:
|
||
result.videos.append(value)
|
||
if d.get("video_id", null) != null:
|
||
result.video_id = d["video_id"]
|
||
if d.get("markers", null) != null:
|
||
for value in d["markers"]:
|
||
result.markers.append(Markers.from_json(value))
|
||
return result
|
||
|
||
|
||
|
||
## The list of markers in this video. The list in ascending order by when the marker was created.
|
||
## #/components/schemas/StreamMarkers/Markers
|
||
class Markers extends TwitchData:
|
||
|
||
## An ID that identifies this marker.
|
||
@export var id: String:
|
||
set(val):
|
||
id = val
|
||
track_data(&"id", val)
|
||
|
||
## The UTC date and time (in RFC3339 format) of when the user created the marker.
|
||
@export var created_at: String:
|
||
set(val):
|
||
created_at = val
|
||
track_data(&"created_at", val)
|
||
|
||
## The description that the user gave the marker to help them remember why they marked the location. Is an empty string if the user didn’t provide one.
|
||
@export var description: String:
|
||
set(val):
|
||
description = val
|
||
track_data(&"description", val)
|
||
|
||
## The relative offset (in seconds) of the marker from the beginning of the stream.
|
||
@export var position_seconds: int:
|
||
set(val):
|
||
position_seconds = val
|
||
track_data(&"position_seconds", val)
|
||
|
||
## A URL that opens the video in Twitch Highlighter.
|
||
@export var url: String:
|
||
set(val):
|
||
url = val
|
||
track_data(&"url", val)
|
||
|
||
|
||
|
||
## Constructor with all required fields.
|
||
static func create(_id: String, _created_at: String, _description: String, _position_seconds: int, _url: String) -> Markers:
|
||
var markers: Markers = Markers.new()
|
||
markers.id = _id
|
||
markers.created_at = _created_at
|
||
markers.description = _description
|
||
markers.position_seconds = _position_seconds
|
||
markers.url = _url
|
||
return markers
|
||
|
||
|
||
static func from_json(d: Dictionary) -> Markers:
|
||
var result: Markers = Markers.new()
|
||
if d.get("id", null) != null:
|
||
result.id = d["id"]
|
||
if d.get("created_at", null) != null:
|
||
result.created_at = d["created_at"]
|
||
if d.get("description", null) != null:
|
||
result.description = d["description"]
|
||
if d.get("position_seconds", null) != null:
|
||
result.position_seconds = d["position_seconds"]
|
||
if d.get("url", null) != null:
|
||
result.url = d["url"]
|
||
return result
|
||
|