ci: regenerated with OpenAPI Doc , Speakeasy CLI 1.513.4

This commit is contained in:
speakeasybot
2025-03-10 00:08:34 +00:00
parent bec460dcc6
commit 475cde2751
107 changed files with 862 additions and 1730 deletions

View File

@@ -244,11 +244,9 @@ module PlexRubySDK
autoload :GetRecentlyAddedFieldType, 'plex_ruby_sdk/models/operations/get_recently_added_fieldtype.rb'
autoload :Meta, 'plex_ruby_sdk/models/operations/meta.rb'
autoload :GetRecentlyAddedHubsType, 'plex_ruby_sdk/models/operations/get_recently_added_hubs_type.rb'
autoload :FlattenSeasons, 'plex_ruby_sdk/models/operations/flattenseasons.rb'
autoload :EpisodeSort, 'plex_ruby_sdk/models/operations/episodesort.rb'
autoload :EnableCreditsMarkerGeneration, 'plex_ruby_sdk/models/operations/enablecreditsmarkergeneration.rb'
autoload :ShowOrdering, 'plex_ruby_sdk/models/operations/showordering.rb'
autoload :OptimizedForStreaming, 'plex_ruby_sdk/models/operations/optimizedforstreaming.rb'
autoload :GetRecentlyAddedHubsResponseType, 'plex_ruby_sdk/models/operations/get_recently_added_hubs_response_type.rb'
autoload :GetRecentlyAddedImage, 'plex_ruby_sdk/models/operations/get_recently_added_image.rb'
autoload :UltraBlurColors, 'plex_ruby_sdk/models/operations/ultrablurcolors.rb'
autoload :HasThumbnail, 'plex_ruby_sdk/models/operations/hasthumbnail.rb'
autoload :Stream, 'plex_ruby_sdk/models/operations/stream.rb'
autoload :Part, 'plex_ruby_sdk/models/operations/part.rb'
@@ -257,14 +255,13 @@ module PlexRubySDK
autoload :Country, 'plex_ruby_sdk/models/operations/country.rb'
autoload :Director, 'plex_ruby_sdk/models/operations/director.rb'
autoload :Writer, 'plex_ruby_sdk/models/operations/writer.rb'
autoload :Collection, 'plex_ruby_sdk/models/operations/collection.rb'
autoload :Role, 'plex_ruby_sdk/models/operations/role.rb'
autoload :Producer, 'plex_ruby_sdk/models/operations/producer.rb'
autoload :Rating, 'plex_ruby_sdk/models/operations/rating.rb'
autoload :Similar, 'plex_ruby_sdk/models/operations/similar.rb'
autoload :Location, 'plex_ruby_sdk/models/operations/location.rb'
autoload :MediaGuid, 'plex_ruby_sdk/models/operations/mediaguid.rb'
autoload :UltraBlurColors, 'plex_ruby_sdk/models/operations/ultrablurcolors.rb'
autoload :MetaDataRating, 'plex_ruby_sdk/models/operations/metadatarating.rb'
autoload :GetRecentlyAddedHubsResponseType, 'plex_ruby_sdk/models/operations/get_recently_added_hubs_response_type.rb'
autoload :GetRecentlyAddedImage, 'plex_ruby_sdk/models/operations/get_recently_added_image.rb'
autoload :Guids, 'plex_ruby_sdk/models/operations/guids.rb'
autoload :Collection, 'plex_ruby_sdk/models/operations/collection.rb'
autoload :GetRecentlyAddedMetadata, 'plex_ruby_sdk/models/operations/get_recently_added_metadata.rb'
autoload :GetRecentlyAddedMediaContainer, 'plex_ruby_sdk/models/operations/get_recently_added_mediacontainer.rb'
autoload :GetRecentlyAddedResponseBody, 'plex_ruby_sdk/models/operations/get_recently_added_responsebody.rb'
@@ -397,11 +394,11 @@ module PlexRubySDK
autoload :GetLibraryItemsOperator, 'plex_ruby_sdk/models/operations/get_library_items_operator.rb'
autoload :GetLibraryItemsFieldType, 'plex_ruby_sdk/models/operations/get_library_items_fieldtype.rb'
autoload :GetLibraryItemsLibraryType, 'plex_ruby_sdk/models/operations/get_library_items_library_type.rb'
autoload :GetLibraryItemsFlattenSeasons, 'plex_ruby_sdk/models/operations/get_library_items_flattenseasons.rb'
autoload :GetLibraryItemsEpisodeSort, 'plex_ruby_sdk/models/operations/get_library_items_episodesort.rb'
autoload :GetLibraryItemsEnableCreditsMarkerGeneration, 'plex_ruby_sdk/models/operations/get_library_items_enablecreditsmarkergeneration.rb'
autoload :GetLibraryItemsShowOrdering, 'plex_ruby_sdk/models/operations/get_library_items_showordering.rb'
autoload :GetLibraryItemsOptimizedForStreaming, 'plex_ruby_sdk/models/operations/get_library_items_optimizedforstreaming.rb'
autoload :FlattenSeasons, 'plex_ruby_sdk/models/operations/flattenseasons.rb'
autoload :EpisodeSort, 'plex_ruby_sdk/models/operations/episodesort.rb'
autoload :EnableCreditsMarkerGeneration, 'plex_ruby_sdk/models/operations/enablecreditsmarkergeneration.rb'
autoload :ShowOrdering, 'plex_ruby_sdk/models/operations/showordering.rb'
autoload :OptimizedForStreaming, 'plex_ruby_sdk/models/operations/optimizedforstreaming.rb'
autoload :GetLibraryItemsHasThumbnail, 'plex_ruby_sdk/models/operations/get_library_items_hasthumbnail.rb'
autoload :GetLibraryItemsStream, 'plex_ruby_sdk/models/operations/get_library_items_stream.rb'
autoload :GetLibraryItemsPart, 'plex_ruby_sdk/models/operations/get_library_items_part.rb'
@@ -413,9 +410,9 @@ module PlexRubySDK
autoload :GetLibraryItemsCollection, 'plex_ruby_sdk/models/operations/get_library_items_collection.rb'
autoload :GetLibraryItemsRole, 'plex_ruby_sdk/models/operations/get_library_items_role.rb'
autoload :GetLibraryItemsLocation, 'plex_ruby_sdk/models/operations/get_library_items_location.rb'
autoload :GetLibraryItemsMediaGuid, 'plex_ruby_sdk/models/operations/get_library_items_mediaguid.rb'
autoload :MediaGuid, 'plex_ruby_sdk/models/operations/mediaguid.rb'
autoload :GetLibraryItemsUltraBlurColors, 'plex_ruby_sdk/models/operations/get_library_items_ultrablurcolors.rb'
autoload :GetLibraryItemsMetaDataRating, 'plex_ruby_sdk/models/operations/get_library_items_metadatarating.rb'
autoload :MetaDataRating, 'plex_ruby_sdk/models/operations/metadatarating.rb'
autoload :GetLibraryItemsLibraryResponse200Type, 'plex_ruby_sdk/models/operations/get_library_items_library_response_200_type.rb'
autoload :GetLibraryItemsImage, 'plex_ruby_sdk/models/operations/get_library_items_image.rb'
autoload :GetLibraryItemsMetadata, 'plex_ruby_sdk/models/operations/get_library_items_metadata.rb'
@@ -464,7 +461,7 @@ module PlexRubySDK
autoload :GetAllMediaLibraryDirector, 'plex_ruby_sdk/models/operations/get_all_media_library_director.rb'
autoload :GetAllMediaLibraryWriter, 'plex_ruby_sdk/models/operations/get_all_media_library_writer.rb'
autoload :GetAllMediaLibraryRole, 'plex_ruby_sdk/models/operations/get_all_media_library_role.rb'
autoload :Guids, 'plex_ruby_sdk/models/operations/guids.rb'
autoload :GetAllMediaLibraryGuids, 'plex_ruby_sdk/models/operations/get_all_media_library_guids.rb'
autoload :GetAllMediaLibraryCollection, 'plex_ruby_sdk/models/operations/get_all_media_library_collection.rb'
autoload :GetAllMediaLibraryMetadata, 'plex_ruby_sdk/models/operations/get_all_media_library_metadata.rb'
autoload :GetAllMediaLibraryMediaContainer, 'plex_ruby_sdk/models/operations/get_all_media_library_mediacontainer.rb'
@@ -570,8 +567,8 @@ module PlexRubySDK
autoload :GetMediaMetaDataRole, 'plex_ruby_sdk/models/operations/get_media_meta_data_role.rb'
autoload :GetMediaMetaDataDirector, 'plex_ruby_sdk/models/operations/get_media_meta_data_director.rb'
autoload :GetMediaMetaDataWriter, 'plex_ruby_sdk/models/operations/get_media_meta_data_writer.rb'
autoload :Producer, 'plex_ruby_sdk/models/operations/producer.rb'
autoload :Similar, 'plex_ruby_sdk/models/operations/similar.rb'
autoload :GetMediaMetaDataProducer, 'plex_ruby_sdk/models/operations/get_media_meta_data_producer.rb'
autoload :GetMediaMetaDataSimilar, 'plex_ruby_sdk/models/operations/get_media_meta_data_similar.rb'
autoload :GetMediaMetaDataLocation, 'plex_ruby_sdk/models/operations/get_media_meta_data_location.rb'
autoload :GetMediaMetaDataMetadata, 'plex_ruby_sdk/models/operations/get_media_meta_data_metadata.rb'
autoload :GetMediaMetaDataMediaContainer, 'plex_ruby_sdk/models/operations/get_media_meta_data_mediacontainer.rb'
@@ -602,18 +599,6 @@ module PlexRubySDK
autoload :GetTopWatchedContentMediaContainer, 'plex_ruby_sdk/models/operations/gettopwatchedcontent_mediacontainer.rb'
autoload :GetTopWatchedContentResponseBody, 'plex_ruby_sdk/models/operations/gettopwatchedcontent_responsebody.rb'
autoload :GetTopWatchedContentResponse, 'plex_ruby_sdk/models/operations/gettopwatchedcontent_response.rb'
autoload :GetOnDeckLibraryErrors, 'plex_ruby_sdk/models/operations/getondeck_library_errors.rb'
autoload :GetOnDeckUnauthorized, 'plex_ruby_sdk/models/operations/getondeck_unauthorized.rb'
autoload :GetOnDeckErrors, 'plex_ruby_sdk/models/operations/getondeck_errors.rb'
autoload :GetOnDeckBadRequest, 'plex_ruby_sdk/models/operations/getondeck_badrequest.rb'
autoload :GetOnDeckStream, 'plex_ruby_sdk/models/operations/getondeck_stream.rb'
autoload :GetOnDeckPart, 'plex_ruby_sdk/models/operations/getondeck_part.rb'
autoload :GetOnDeckMedia, 'plex_ruby_sdk/models/operations/getondeck_media.rb'
autoload :GetOnDeckGuids, 'plex_ruby_sdk/models/operations/getondeck_guids.rb'
autoload :GetOnDeckMetadata, 'plex_ruby_sdk/models/operations/getondeck_metadata.rb'
autoload :GetOnDeckMediaContainer, 'plex_ruby_sdk/models/operations/getondeck_mediacontainer.rb'
autoload :GetOnDeckResponseBody, 'plex_ruby_sdk/models/operations/getondeck_responsebody.rb'
autoload :GetOnDeckResponse, 'plex_ruby_sdk/models/operations/getondeck_response.rb'
autoload :Filter, 'plex_ruby_sdk/models/operations/filter.rb'
autoload :Libtype, 'plex_ruby_sdk/models/operations/libtype.rb'
autoload :IncludeCollections, 'plex_ruby_sdk/models/operations/includecollections.rb'

View File

@@ -11,11 +11,11 @@ module PlexRubySDK
class Collection < ::Crystalline::FieldAugmented
extend T::Sig
field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
# The user-made collection this media item belongs to
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
sig { params(tag: T.nilable(::String)).void }
sig { params(tag: ::String).void }
def initialize(tag: nil)
@tag = tag
end

View File

@@ -7,17 +7,23 @@
module PlexRubySDK
module Operations
# The filter query string for country media items.
class Country < ::Crystalline::FieldAugmented
extend T::Sig
field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# The country of origin of this media item
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
field :filter, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
sig { params(tag: T.nilable(::String)).void }
def initialize(tag: nil)
sig { params(id: ::Integer, tag: ::String, filter: T.nilable(::String)).void }
def initialize(id: nil, tag: nil, filter: nil)
@id = id
@tag = tag
@filter = filter
end
end
end

View File

@@ -11,11 +11,11 @@ module PlexRubySDK
class Director < ::Crystalline::FieldAugmented
extend T::Sig
field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
# The role of Director
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
sig { params(tag: T.nilable(::String)).void }
sig { params(tag: ::String).void }
def initialize(tag: nil)
@tag = tag
end

View File

@@ -7,16 +7,23 @@
module PlexRubySDK
module Operations
# The filter query string for similar items.
class Genre < ::Crystalline::FieldAugmented
extend T::Sig
field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# The genre name of this media-item
#
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
sig { params(tag: T.nilable(::String)).void }
def initialize(tag: nil)
sig { params(filter: ::String, id: ::Integer, tag: ::String).void }
def initialize(filter: nil, id: nil, tag: nil)
@filter = filter
@id = id
@tag = tag
end
end

View File

@@ -11,7 +11,8 @@ module PlexRubySDK
class GetAllMediaLibraryGenre < ::Crystalline::FieldAugmented
extend T::Sig
# The country of origin of this media item
# The genre name of this media-item
#
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }

View File

@@ -8,10 +8,11 @@ module PlexRubySDK
module Operations
class GetOnDeckGuids < ::Crystalline::FieldAugmented
class GetAllMediaLibraryGuids < ::Crystalline::FieldAugmented
extend T::Sig
# The unique identifier for the Guid. Can be imdb://tt0286347, tmdb://1763, tvdb://2337
#
field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }

View File

@@ -11,12 +11,8 @@ module PlexRubySDK
class GetAllMediaLibraryMedia < ::Crystalline::FieldAugmented
extend T::Sig
# Indicates whether voice activity is detected.
field :has_voice_activity, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasVoiceActivity') } }
# Unique media identifier.
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# An array of parts for this media item.
field :part, T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryPart], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
# Aspect ratio of the video.
field :aspect_ratio, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('aspectRatio') } }
# Number of audio channels.
@@ -35,10 +31,14 @@ module PlexRubySDK
field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
# Indicates whether voice activity is detected.
field :has_voice_activity, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasVoiceActivity') } }
# Video height in pixels.
field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
# Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
field :optimized_for_streaming, T.nilable(::Object), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
# An array of parts for this media item.
field :part, T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryPart]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
# Video codec used.
field :video_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } }
# Frame rate of the video. Values found include NTSC, PAL, 24p
@@ -52,11 +52,9 @@ module PlexRubySDK
field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
sig { params(has_voice_activity: T::Boolean, id: ::Integer, part: T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryPart], aspect_ratio: T.nilable(::Float), audio_channels: T.nilable(::Integer), audio_codec: T.nilable(::String), audio_profile: T.nilable(::String), bitrate: T.nilable(::Integer), container: T.nilable(::String), display_offset: T.nilable(::Integer), duration: T.nilable(::Integer), has64bit_offsets: T.nilable(T::Boolean), height: T.nilable(::Integer), optimized_for_streaming: T.nilable(::Object), video_codec: T.nilable(::String), video_frame_rate: T.nilable(::String), video_profile: T.nilable(::String), video_resolution: T.nilable(::String), width: T.nilable(::Integer)).void }
def initialize(has_voice_activity: nil, id: nil, part: nil, aspect_ratio: nil, audio_channels: nil, audio_codec: nil, audio_profile: nil, bitrate: nil, container: nil, display_offset: nil, duration: nil, has64bit_offsets: nil, height: nil, optimized_for_streaming: nil, video_codec: nil, video_frame_rate: nil, video_profile: nil, video_resolution: nil, width: nil)
@has_voice_activity = has_voice_activity
sig { params(id: ::Integer, aspect_ratio: T.nilable(::Float), audio_channels: T.nilable(::Integer), audio_codec: T.nilable(::String), audio_profile: T.nilable(::String), bitrate: T.nilable(::Integer), container: T.nilable(::String), display_offset: T.nilable(::Integer), duration: T.nilable(::Integer), has64bit_offsets: T.nilable(T::Boolean), has_voice_activity: T.nilable(T::Boolean), height: T.nilable(::Integer), optimized_for_streaming: T.nilable(::Object), part: T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryPart]), video_codec: T.nilable(::String), video_frame_rate: T.nilable(::String), video_profile: T.nilable(::String), video_resolution: T.nilable(::String), width: T.nilable(::Integer)).void }
def initialize(id: nil, aspect_ratio: nil, audio_channels: nil, audio_codec: nil, audio_profile: nil, bitrate: nil, container: nil, display_offset: nil, duration: nil, has64bit_offsets: nil, has_voice_activity: nil, height: nil, optimized_for_streaming: nil, part: nil, video_codec: nil, video_frame_rate: nil, video_profile: nil, video_resolution: nil, width: nil)
@id = id
@part = part
@aspect_ratio = aspect_ratio
@audio_channels = audio_channels
@audio_codec = audio_codec
@@ -66,8 +64,10 @@ module PlexRubySDK
@display_offset = display_offset
@duration = duration
@has64bit_offsets = has64bit_offsets
@has_voice_activity = has_voice_activity
@height = height
@optimized_for_streaming = optimized_for_streaming
@part = part
@video_codec = video_codec
@video_frame_rate = video_frame_rate
@video_profile = video_profile

View File

@@ -52,8 +52,6 @@ module PlexRubySDK
field :title_sort, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('titleSort') } }
field :type, ::PlexRubySDK::Operations::GetAllMediaLibraryLibraryType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetAllMediaLibraryLibraryType, false) } }
# The release year of the media item.
field :year, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } }
# The URL for the audience rating image.
field :audience_rating_image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRatingImage') } }
# The source from which chapter data is derived.
@@ -89,7 +87,7 @@ module PlexRubySDK
# The title of the grandparent media item.
field :grandparent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentTitle') } }
field :guids, T.nilable(T::Array[::PlexRubySDK::Operations::Guids]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } }
field :guids, T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryGuids]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } }
field :image, T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryImage]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Image') } }
# The Unix timestamp representing the last time the item was rated.
@@ -140,10 +138,12 @@ module PlexRubySDK
field :view_offset, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewOffset') } }
field :writer, T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryWriter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Writer') } }
# The release year of the media item.
field :year, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } }
sig { params(added_at: ::Integer, art: ::String, audience_rating: ::Float, child_count: ::Integer, duration: ::Integer, guid: ::String, index: ::Integer, key: ::String, originally_available_at: ::Date, rating: ::Float, rating_key: ::String, season_count: ::Integer, slug: ::String, summary: ::String, tagline: ::String, theme: ::String, thumb: ::String, title: ::String, title_sort: ::String, type: ::PlexRubySDK::Operations::GetAllMediaLibraryLibraryType, year: ::Integer, audience_rating_image: T.nilable(::String), chapter_source: T.nilable(::String), collection: T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryCollection]), content_rating: T.nilable(::String), country: T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryCountry]), created_at_accuracy: T.nilable(::String), created_at_tz_offset: T.nilable(::String), director: T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryDirector]), genre: T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryGenre]), grandparent_art: T.nilable(::String), grandparent_guid: T.nilable(::String), grandparent_key: T.nilable(::String), grandparent_rating_key: T.nilable(::String), grandparent_slug: T.nilable(::String), grandparent_theme: T.nilable(::String), grandparent_thumb: T.nilable(::String), grandparent_title: T.nilable(::String), guids: T.nilable(T::Array[::PlexRubySDK::Operations::Guids]), image: T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryImage]), last_rated_at: T.nilable(::Integer), last_viewed_at: T.nilable(::Integer), leaf_count: T.nilable(::Integer), media: T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryMedia]), original_title: T.nilable(::String), parent_guid: T.nilable(::String), parent_index: T.nilable(::Integer), parent_key: T.nilable(::String), parent_rating_key: T.nilable(::String), parent_thumb: T.nilable(::String), parent_title: T.nilable(::String), primary_extra_key: T.nilable(::String), rating_image: T.nilable(::String), role: T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryRole]), skip_count: T.nilable(::Integer), studio: T.nilable(::String), subtype: T.nilable(::String), ultra_blur_colors: T.nilable(::PlexRubySDK::Operations::GetAllMediaLibraryUltraBlurColors), updated_at: T.nilable(::Integer), user_rating: T.nilable(::Float), view_count: T.nilable(::Integer), viewed_leaf_count: T.nilable(::Integer), view_offset: T.nilable(::Integer), writer: T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryWriter])).void }
def initialize(added_at: nil, art: nil, audience_rating: nil, child_count: nil, duration: nil, guid: nil, index: nil, key: nil, originally_available_at: nil, rating: nil, rating_key: nil, season_count: nil, slug: nil, summary: nil, tagline: nil, theme: nil, thumb: nil, title: nil, title_sort: nil, type: nil, year: nil, audience_rating_image: nil, chapter_source: nil, collection: nil, content_rating: nil, country: nil, created_at_accuracy: nil, created_at_tz_offset: nil, director: nil, genre: nil, grandparent_art: nil, grandparent_guid: nil, grandparent_key: nil, grandparent_rating_key: nil, grandparent_slug: nil, grandparent_theme: nil, grandparent_thumb: nil, grandparent_title: nil, guids: nil, image: nil, last_rated_at: nil, last_viewed_at: nil, leaf_count: nil, media: nil, original_title: nil, parent_guid: nil, parent_index: nil, parent_key: nil, parent_rating_key: nil, parent_thumb: nil, parent_title: nil, primary_extra_key: nil, rating_image: nil, role: nil, skip_count: nil, studio: nil, subtype: nil, ultra_blur_colors: nil, updated_at: nil, user_rating: nil, view_count: nil, viewed_leaf_count: nil, view_offset: nil, writer: nil)
sig { params(added_at: ::Integer, art: ::String, audience_rating: ::Float, child_count: ::Integer, duration: ::Integer, guid: ::String, index: ::Integer, key: ::String, originally_available_at: ::Date, rating: ::Float, rating_key: ::String, season_count: ::Integer, slug: ::String, summary: ::String, tagline: ::String, theme: ::String, thumb: ::String, title: ::String, title_sort: ::String, type: ::PlexRubySDK::Operations::GetAllMediaLibraryLibraryType, audience_rating_image: T.nilable(::String), chapter_source: T.nilable(::String), collection: T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryCollection]), content_rating: T.nilable(::String), country: T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryCountry]), created_at_accuracy: T.nilable(::String), created_at_tz_offset: T.nilable(::String), director: T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryDirector]), genre: T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryGenre]), grandparent_art: T.nilable(::String), grandparent_guid: T.nilable(::String), grandparent_key: T.nilable(::String), grandparent_rating_key: T.nilable(::String), grandparent_slug: T.nilable(::String), grandparent_theme: T.nilable(::String), grandparent_thumb: T.nilable(::String), grandparent_title: T.nilable(::String), guids: T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryGuids]), image: T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryImage]), last_rated_at: T.nilable(::Integer), last_viewed_at: T.nilable(::Integer), leaf_count: T.nilable(::Integer), media: T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryMedia]), original_title: T.nilable(::String), parent_guid: T.nilable(::String), parent_index: T.nilable(::Integer), parent_key: T.nilable(::String), parent_rating_key: T.nilable(::String), parent_thumb: T.nilable(::String), parent_title: T.nilable(::String), primary_extra_key: T.nilable(::String), rating_image: T.nilable(::String), role: T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryRole]), skip_count: T.nilable(::Integer), studio: T.nilable(::String), subtype: T.nilable(::String), ultra_blur_colors: T.nilable(::PlexRubySDK::Operations::GetAllMediaLibraryUltraBlurColors), updated_at: T.nilable(::Integer), user_rating: T.nilable(::Float), view_count: T.nilable(::Integer), viewed_leaf_count: T.nilable(::Integer), view_offset: T.nilable(::Integer), writer: T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryWriter]), year: T.nilable(::Integer)).void }
def initialize(added_at: nil, art: nil, audience_rating: nil, child_count: nil, duration: nil, guid: nil, index: nil, key: nil, originally_available_at: nil, rating: nil, rating_key: nil, season_count: nil, slug: nil, summary: nil, tagline: nil, theme: nil, thumb: nil, title: nil, title_sort: nil, type: nil, audience_rating_image: nil, chapter_source: nil, collection: nil, content_rating: nil, country: nil, created_at_accuracy: nil, created_at_tz_offset: nil, director: nil, genre: nil, grandparent_art: nil, grandparent_guid: nil, grandparent_key: nil, grandparent_rating_key: nil, grandparent_slug: nil, grandparent_theme: nil, grandparent_thumb: nil, grandparent_title: nil, guids: nil, image: nil, last_rated_at: nil, last_viewed_at: nil, leaf_count: nil, media: nil, original_title: nil, parent_guid: nil, parent_index: nil, parent_key: nil, parent_rating_key: nil, parent_thumb: nil, parent_title: nil, primary_extra_key: nil, rating_image: nil, role: nil, skip_count: nil, studio: nil, subtype: nil, ultra_blur_colors: nil, updated_at: nil, user_rating: nil, view_count: nil, viewed_leaf_count: nil, view_offset: nil, writer: nil, year: nil)
@added_at = added_at
@art = art
@audience_rating = audience_rating
@@ -164,7 +164,6 @@ module PlexRubySDK
@title = title
@title_sort = title_sort
@type = type
@year = year
@audience_rating_image = audience_rating_image
@chapter_source = chapter_source
@collection = collection
@@ -208,6 +207,7 @@ module PlexRubySDK
@viewed_leaf_count = viewed_leaf_count
@view_offset = view_offset
@writer = writer
@year = year
end
end
end

View File

@@ -11,7 +11,7 @@ module PlexRubySDK
class GetAllMediaLibraryRole < ::Crystalline::FieldAugmented
extend T::Sig
# The name of the actor for this role
# The display tag for the actor (typically the actor's name).
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }

View File

@@ -21,12 +21,6 @@ module PlexRubySDK
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# Index of the stream.
field :index, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
# Language of the stream.
field :language, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('language') } }
# ISO language code.
field :language_code, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageCode') } }
# Language tag (e.g., en).
field :language_tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageTag') } }
# Stream type (1=video, 2=audio, 3=subtitle).
field :stream_type, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType') } }
# Audio channel layout.
@@ -43,6 +37,8 @@ module PlexRubySDK
field :chroma_location, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaLocation') } }
# Chroma subsampling format.
field :chroma_subsampling, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaSubsampling') } }
field :closed_captions, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('closedCaptions') } }
# Coded video height.
field :coded_height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codedHeight') } }
# Coded video width.
@@ -76,6 +72,8 @@ module PlexRubySDK
# Indicates if the stream is a dub.
field :dub, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('dub') } }
field :embedded_in_video, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('embeddedInVideo') } }
field :forced, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('forced') } }
# Frame rate of the stream.
field :frame_rate, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('frameRate') } }
@@ -87,6 +85,12 @@ module PlexRubySDK
field :hearing_impaired, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hearingImpaired') } }
# Height of the video stream.
field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
# Language of the stream.
field :language, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('language') } }
# ISO language code.
field :language_code, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageCode') } }
# Language tag (e.g., en).
field :language_tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageTag') } }
# Video level.
field :level, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('level') } }
# Indicates if this is the original stream.
@@ -107,16 +111,13 @@ module PlexRubySDK
field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
sig { params(codec: ::String, display_title: ::String, extended_display_title: ::String, id: ::Integer, index: ::Integer, language: ::String, language_code: ::String, language_tag: ::String, stream_type: ::Integer, audio_channel_layout: T.nilable(::String), bit_depth: T.nilable(::Integer), bitrate: T.nilable(::Integer), can_auto_sync: T.nilable(T::Boolean), channels: T.nilable(::Integer), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), coded_height: T.nilable(::Integer), coded_width: T.nilable(::Integer), color_primaries: T.nilable(::String), color_range: T.nilable(::String), color_space: T.nilable(::String), color_trc: T.nilable(::String), default: T.nilable(T::Boolean), dovibl_compat_id: T.nilable(::Integer), dovibl_present: T.nilable(T::Boolean), doviel_present: T.nilable(T::Boolean), dovi_level: T.nilable(::Integer), dovi_present: T.nilable(T::Boolean), dovi_profile: T.nilable(::Integer), dovirpu_present: T.nilable(T::Boolean), dovi_version: T.nilable(::String), dub: T.nilable(T::Boolean), forced: T.nilable(T::Boolean), frame_rate: T.nilable(::Float), has_scaling_matrix: T.nilable(T::Boolean), header_compression: T.nilable(T::Boolean), hearing_impaired: T.nilable(T::Boolean), height: T.nilable(::Integer), level: T.nilable(::Integer), original: T.nilable(T::Boolean), profile: T.nilable(::String), ref_frames: T.nilable(::Integer), sampling_rate: T.nilable(::Integer), scan_type: T.nilable(::String), selected: T.nilable(T::Boolean), title: T.nilable(::String), width: T.nilable(::Integer)).void }
def initialize(codec: nil, display_title: nil, extended_display_title: nil, id: nil, index: nil, language: nil, language_code: nil, language_tag: nil, stream_type: nil, audio_channel_layout: nil, bit_depth: nil, bitrate: nil, can_auto_sync: nil, channels: nil, chroma_location: nil, chroma_subsampling: nil, coded_height: nil, coded_width: nil, color_primaries: nil, color_range: nil, color_space: nil, color_trc: nil, default: nil, dovibl_compat_id: nil, dovibl_present: nil, doviel_present: nil, dovi_level: nil, dovi_present: nil, dovi_profile: nil, dovirpu_present: nil, dovi_version: nil, dub: nil, forced: nil, frame_rate: nil, has_scaling_matrix: nil, header_compression: nil, hearing_impaired: nil, height: nil, level: nil, original: nil, profile: nil, ref_frames: nil, sampling_rate: nil, scan_type: nil, selected: nil, title: nil, width: nil)
sig { params(codec: ::String, display_title: ::String, extended_display_title: ::String, id: ::Integer, index: ::Integer, stream_type: ::Integer, audio_channel_layout: T.nilable(::String), bit_depth: T.nilable(::Integer), bitrate: T.nilable(::Integer), can_auto_sync: T.nilable(T::Boolean), channels: T.nilable(::Integer), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), closed_captions: T.nilable(T::Boolean), coded_height: T.nilable(::Integer), coded_width: T.nilable(::Integer), color_primaries: T.nilable(::String), color_range: T.nilable(::String), color_space: T.nilable(::String), color_trc: T.nilable(::String), default: T.nilable(T::Boolean), dovibl_compat_id: T.nilable(::Integer), dovibl_present: T.nilable(T::Boolean), doviel_present: T.nilable(T::Boolean), dovi_level: T.nilable(::Integer), dovi_present: T.nilable(T::Boolean), dovi_profile: T.nilable(::Integer), dovirpu_present: T.nilable(T::Boolean), dovi_version: T.nilable(::String), dub: T.nilable(T::Boolean), embedded_in_video: T.nilable(::String), forced: T.nilable(T::Boolean), frame_rate: T.nilable(::Float), has_scaling_matrix: T.nilable(T::Boolean), header_compression: T.nilable(T::Boolean), hearing_impaired: T.nilable(T::Boolean), height: T.nilable(::Integer), language: T.nilable(::String), language_code: T.nilable(::String), language_tag: T.nilable(::String), level: T.nilable(::Integer), original: T.nilable(T::Boolean), profile: T.nilable(::String), ref_frames: T.nilable(::Integer), sampling_rate: T.nilable(::Integer), scan_type: T.nilable(::String), selected: T.nilable(T::Boolean), title: T.nilable(::String), width: T.nilable(::Integer)).void }
def initialize(codec: nil, display_title: nil, extended_display_title: nil, id: nil, index: nil, stream_type: nil, audio_channel_layout: nil, bit_depth: nil, bitrate: nil, can_auto_sync: nil, channels: nil, chroma_location: nil, chroma_subsampling: nil, closed_captions: nil, coded_height: nil, coded_width: nil, color_primaries: nil, color_range: nil, color_space: nil, color_trc: nil, default: nil, dovibl_compat_id: nil, dovibl_present: nil, doviel_present: nil, dovi_level: nil, dovi_present: nil, dovi_profile: nil, dovirpu_present: nil, dovi_version: nil, dub: nil, embedded_in_video: nil, forced: nil, frame_rate: nil, has_scaling_matrix: nil, header_compression: nil, hearing_impaired: nil, height: nil, language: nil, language_code: nil, language_tag: nil, level: nil, original: nil, profile: nil, ref_frames: nil, sampling_rate: nil, scan_type: nil, selected: nil, title: nil, width: nil)
@codec = codec
@display_title = display_title
@extended_display_title = extended_display_title
@id = id
@index = index
@language = language
@language_code = language_code
@language_tag = language_tag
@stream_type = stream_type
@audio_channel_layout = audio_channel_layout
@bit_depth = bit_depth
@@ -125,6 +126,7 @@ module PlexRubySDK
@channels = channels
@chroma_location = chroma_location
@chroma_subsampling = chroma_subsampling
@closed_captions = closed_captions
@coded_height = coded_height
@coded_width = coded_width
@color_primaries = color_primaries
@@ -141,12 +143,16 @@ module PlexRubySDK
@dovirpu_present = dovirpu_present
@dovi_version = dovi_version
@dub = dub
@embedded_in_video = embedded_in_video
@forced = forced
@frame_rate = frame_rate
@has_scaling_matrix = has_scaling_matrix
@header_compression = header_compression
@hearing_impaired = hearing_impaired
@height = height
@language = language
@language_code = language_code
@language_tag = language_tag
@level = level
@original = original
@profile = profile

View File

@@ -1,18 +0,0 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
# GetLibraryItemsEnableCreditsMarkerGeneration - Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled).
class GetLibraryItemsEnableCreditsMarkerGeneration < T::Enum
enums do
LIBRARY_DEFAULT = new('-1')
DISABLED = new('0')
end
end
end
end

View File

@@ -1,19 +0,0 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
# GetLibraryItemsEpisodeSort - Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first).
class GetLibraryItemsEpisodeSort < T::Enum
enums do
LIBRARY_DEFAULT = new('-1')
OLDEST_FIRST = new('0')
NEWEST_FIRST = new('1')
end
end
end
end

View File

@@ -1,19 +0,0 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
# GetLibraryItemsFlattenSeasons - Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show).
class GetLibraryItemsFlattenSeasons < T::Enum
enums do
LIBRARY_DEFAULT = new('-1')
HIDE = new('0')
SHOW = new('1')
end
end
end
end

View File

@@ -36,7 +36,7 @@ module PlexRubySDK
field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
field :optimized_for_streaming, T.nilable(::PlexRubySDK::Operations::GetLibraryItemsOptimizedForStreaming), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetLibraryItemsOptimizedForStreaming, true) } }
field :optimized_for_streaming, T.nilable(::PlexRubySDK::Operations::OptimizedForStreaming), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::OptimizedForStreaming, true) } }
field :video_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } }
@@ -49,7 +49,7 @@ module PlexRubySDK
field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
sig { params(container: ::String, id: ::Integer, part: T::Array[::PlexRubySDK::Operations::GetLibraryItemsPart], aspect_ratio: T.nilable(::Float), audio_channels: T.nilable(::Integer), audio_codec: T.nilable(::String), audio_profile: T.nilable(::String), bitrate: T.nilable(::Integer), duration: T.nilable(::Integer), has64bit_offsets: T.nilable(T::Boolean), has_voice_activity: T.nilable(T::Boolean), height: T.nilable(::Integer), optimized_for_streaming: T.nilable(::PlexRubySDK::Operations::GetLibraryItemsOptimizedForStreaming), video_codec: T.nilable(::String), video_frame_rate: T.nilable(::String), video_profile: T.nilable(::String), video_resolution: T.nilable(::String), width: T.nilable(::Integer)).void }
sig { params(container: ::String, id: ::Integer, part: T::Array[::PlexRubySDK::Operations::GetLibraryItemsPart], aspect_ratio: T.nilable(::Float), audio_channels: T.nilable(::Integer), audio_codec: T.nilable(::String), audio_profile: T.nilable(::String), bitrate: T.nilable(::Integer), duration: T.nilable(::Integer), has64bit_offsets: T.nilable(T::Boolean), has_voice_activity: T.nilable(T::Boolean), height: T.nilable(::Integer), optimized_for_streaming: T.nilable(::PlexRubySDK::Operations::OptimizedForStreaming), video_codec: T.nilable(::String), video_frame_rate: T.nilable(::String), video_profile: T.nilable(::String), video_resolution: T.nilable(::String), width: T.nilable(::Integer)).void }
def initialize(container: nil, id: nil, part: nil, aspect_ratio: nil, audio_channels: nil, audio_codec: nil, audio_profile: nil, bitrate: nil, duration: nil, has64bit_offsets: nil, has_voice_activity: nil, height: nil, optimized_for_streaming: nil, video_codec: nil, video_frame_rate: nil, video_profile: nil, video_resolution: nil, width: nil)
@container = container
@id = id

View File

@@ -1,26 +0,0 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetLibraryItemsMediaGuid < ::Crystalline::FieldAugmented
extend T::Sig
# Can be one of the following formats:
# imdb://tt13015952, tmdb://2434012, tvdb://7945991
#
field :id, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
sig { params(id: ::String).void }
def initialize(id: nil)
@id = id
end
end
end
end

View File

@@ -51,11 +51,11 @@ module PlexRubySDK
field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
# Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled).
field :enable_credits_marker_generation, T.nilable(::PlexRubySDK::Operations::GetLibraryItemsEnableCreditsMarkerGeneration), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('enableCreditsMarkerGeneration'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetLibraryItemsEnableCreditsMarkerGeneration, true) } }
field :enable_credits_marker_generation, T.nilable(::PlexRubySDK::Operations::EnableCreditsMarkerGeneration), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('enableCreditsMarkerGeneration'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::EnableCreditsMarkerGeneration, true) } }
# Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first).
field :episode_sort, T.nilable(::PlexRubySDK::Operations::GetLibraryItemsEpisodeSort), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('episodeSort'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetLibraryItemsEpisodeSort, true) } }
field :episode_sort, T.nilable(::PlexRubySDK::Operations::EpisodeSort), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('episodeSort'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::EpisodeSort, true) } }
# Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show).
field :flatten_seasons, T.nilable(::PlexRubySDK::Operations::GetLibraryItemsFlattenSeasons), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('flattenSeasons'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetLibraryItemsFlattenSeasons, true) } }
field :flatten_seasons, T.nilable(::PlexRubySDK::Operations::FlattenSeasons), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('flattenSeasons'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::FlattenSeasons, true) } }
field :genre, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsGenre]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Genre') } }
@@ -99,9 +99,9 @@ module PlexRubySDK
field :media, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMedia]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Media') } }
# The Guid object is only included in the response if the `includeGuids` parameter is set to `1`.
#
field :media_guid, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMediaGuid]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } }
field :media_guid, T.nilable(T::Array[::PlexRubySDK::Operations::MediaGuid]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } }
field :meta_data_rating, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMetaDataRating]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Rating') } }
field :meta_data_rating, T.nilable(T::Array[::PlexRubySDK::Operations::MetaDataRating]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Rating') } }
field :originally_available_at, T.nilable(::Date), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.date_from_iso_format(true) } }
@@ -144,7 +144,7 @@ module PlexRubySDK
# dvd = TheTVDB (DVD),
# absolute = TheTVDB (Absolute)).
#
field :show_ordering, T.nilable(::PlexRubySDK::Operations::GetLibraryItemsShowOrdering), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('showOrdering'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetLibraryItemsShowOrdering, true) } }
field :show_ordering, T.nilable(::PlexRubySDK::Operations::ShowOrdering), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('showOrdering'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::ShowOrdering, true) } }
field :skip_children, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('skipChildren') } }
@@ -177,7 +177,7 @@ module PlexRubySDK
field :year, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } }
sig { params(added_at: ::Integer, guid: ::String, key: ::String, rating_key: ::String, summary: ::String, title: ::String, type: ::PlexRubySDK::Operations::GetLibraryItemsLibraryType, art: T.nilable(::String), audience_rating: T.nilable(::Float), audience_rating_image: T.nilable(::String), banner: T.nilable(::String), chapter_source: T.nilable(::String), child_count: T.nilable(::Integer), collection: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsCollection]), content_rating: T.nilable(::String), country: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsCountry]), director: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsDirector]), duration: T.nilable(::Integer), enable_credits_marker_generation: T.nilable(::PlexRubySDK::Operations::GetLibraryItemsEnableCreditsMarkerGeneration), episode_sort: T.nilable(::PlexRubySDK::Operations::GetLibraryItemsEpisodeSort), flatten_seasons: T.nilable(::PlexRubySDK::Operations::GetLibraryItemsFlattenSeasons), genre: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsGenre]), grandparent_art: T.nilable(::String), grandparent_guid: T.nilable(::String), grandparent_key: T.nilable(::String), grandparent_rating_key: T.nilable(::String), grandparent_slug: T.nilable(::String), grandparent_theme: T.nilable(::String), grandparent_thumb: T.nilable(::String), grandparent_title: T.nilable(::String), has_premium_extras: T.nilable(::String), has_premium_primary_extra: T.nilable(::String), image: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsImage]), index: T.nilable(::Integer), last_viewed_at: T.nilable(::Integer), leaf_count: T.nilable(::Integer), library_section_id: T.nilable(::Integer), library_section_key: T.nilable(::String), library_section_title: T.nilable(::String), location: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsLocation]), media: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMedia]), media_guid: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMediaGuid]), meta_data_rating: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMetaDataRating]), originally_available_at: T.nilable(::Date), original_title: T.nilable(::String), parent_guid: T.nilable(::String), parent_index: T.nilable(::Integer), parent_key: T.nilable(::String), parent_rating_key: T.nilable(::String), parent_slug: T.nilable(::String), parent_studio: T.nilable(::String), parent_theme: T.nilable(::String), parent_thumb: T.nilable(::String), parent_title: T.nilable(::String), parent_year: T.nilable(::Integer), primary_extra_key: T.nilable(::String), rating: T.nilable(::Float), rating_image: T.nilable(::String), role: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsRole]), season_count: T.nilable(::Integer), show_ordering: T.nilable(::PlexRubySDK::Operations::GetLibraryItemsShowOrdering), skip_children: T.nilable(T::Boolean), skip_count: T.nilable(::Integer), slug: T.nilable(::String), studio: T.nilable(::String), tagline: T.nilable(::String), theme: T.nilable(::String), thumb: T.nilable(::String), title_sort: T.nilable(::String), ultra_blur_colors: T.nilable(::PlexRubySDK::Operations::GetLibraryItemsUltraBlurColors), updated_at: T.nilable(::Integer), view_count: T.nilable(::Integer), viewed_leaf_count: T.nilable(::Integer), view_offset: T.nilable(::Integer), writer: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsWriter]), year: T.nilable(::Integer)).void }
sig { params(added_at: ::Integer, guid: ::String, key: ::String, rating_key: ::String, summary: ::String, title: ::String, type: ::PlexRubySDK::Operations::GetLibraryItemsLibraryType, art: T.nilable(::String), audience_rating: T.nilable(::Float), audience_rating_image: T.nilable(::String), banner: T.nilable(::String), chapter_source: T.nilable(::String), child_count: T.nilable(::Integer), collection: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsCollection]), content_rating: T.nilable(::String), country: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsCountry]), director: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsDirector]), duration: T.nilable(::Integer), enable_credits_marker_generation: T.nilable(::PlexRubySDK::Operations::EnableCreditsMarkerGeneration), episode_sort: T.nilable(::PlexRubySDK::Operations::EpisodeSort), flatten_seasons: T.nilable(::PlexRubySDK::Operations::FlattenSeasons), genre: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsGenre]), grandparent_art: T.nilable(::String), grandparent_guid: T.nilable(::String), grandparent_key: T.nilable(::String), grandparent_rating_key: T.nilable(::String), grandparent_slug: T.nilable(::String), grandparent_theme: T.nilable(::String), grandparent_thumb: T.nilable(::String), grandparent_title: T.nilable(::String), has_premium_extras: T.nilable(::String), has_premium_primary_extra: T.nilable(::String), image: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsImage]), index: T.nilable(::Integer), last_viewed_at: T.nilable(::Integer), leaf_count: T.nilable(::Integer), library_section_id: T.nilable(::Integer), library_section_key: T.nilable(::String), library_section_title: T.nilable(::String), location: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsLocation]), media: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMedia]), media_guid: T.nilable(T::Array[::PlexRubySDK::Operations::MediaGuid]), meta_data_rating: T.nilable(T::Array[::PlexRubySDK::Operations::MetaDataRating]), originally_available_at: T.nilable(::Date), original_title: T.nilable(::String), parent_guid: T.nilable(::String), parent_index: T.nilable(::Integer), parent_key: T.nilable(::String), parent_rating_key: T.nilable(::String), parent_slug: T.nilable(::String), parent_studio: T.nilable(::String), parent_theme: T.nilable(::String), parent_thumb: T.nilable(::String), parent_title: T.nilable(::String), parent_year: T.nilable(::Integer), primary_extra_key: T.nilable(::String), rating: T.nilable(::Float), rating_image: T.nilable(::String), role: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsRole]), season_count: T.nilable(::Integer), show_ordering: T.nilable(::PlexRubySDK::Operations::ShowOrdering), skip_children: T.nilable(T::Boolean), skip_count: T.nilable(::Integer), slug: T.nilable(::String), studio: T.nilable(::String), tagline: T.nilable(::String), theme: T.nilable(::String), thumb: T.nilable(::String), title_sort: T.nilable(::String), ultra_blur_colors: T.nilable(::PlexRubySDK::Operations::GetLibraryItemsUltraBlurColors), updated_at: T.nilable(::Integer), view_count: T.nilable(::Integer), viewed_leaf_count: T.nilable(::Integer), view_offset: T.nilable(::Integer), writer: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsWriter]), year: T.nilable(::Integer)).void }
def initialize(added_at: nil, guid: nil, key: nil, rating_key: nil, summary: nil, title: nil, type: nil, art: nil, audience_rating: nil, audience_rating_image: nil, banner: nil, chapter_source: nil, child_count: nil, collection: nil, content_rating: nil, country: nil, director: nil, duration: nil, enable_credits_marker_generation: nil, episode_sort: nil, flatten_seasons: nil, genre: nil, grandparent_art: nil, grandparent_guid: nil, grandparent_key: nil, grandparent_rating_key: nil, grandparent_slug: nil, grandparent_theme: nil, grandparent_thumb: nil, grandparent_title: nil, has_premium_extras: nil, has_premium_primary_extra: nil, image: nil, index: nil, last_viewed_at: nil, leaf_count: nil, library_section_id: nil, library_section_key: nil, library_section_title: nil, location: nil, media: nil, media_guid: nil, meta_data_rating: nil, originally_available_at: nil, original_title: nil, parent_guid: nil, parent_index: nil, parent_key: nil, parent_rating_key: nil, parent_slug: nil, parent_studio: nil, parent_theme: nil, parent_thumb: nil, parent_title: nil, parent_year: nil, primary_extra_key: nil, rating: nil, rating_image: nil, role: nil, season_count: nil, show_ordering: nil, skip_children: nil, skip_count: nil, slug: nil, studio: nil, tagline: nil, theme: nil, thumb: nil, title_sort: nil, ultra_blur_colors: nil, updated_at: nil, view_count: nil, viewed_leaf_count: nil, view_offset: nil, writer: nil, year: nil)
@added_at = added_at
@guid = guid

View File

@@ -1,18 +0,0 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetLibraryItemsOptimizedForStreaming < T::Enum
enums do
DISABLE = new(0)
ENABLE = new(1)
end
end
end
end

View File

@@ -1,27 +0,0 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
# GetLibraryItemsShowOrdering - Setting that indicates the episode ordering for the show.
# None = Library default,
# tmdbAiring = The Movie Database (Aired),
# aired = TheTVDB (Aired),
# dvd = TheTVDB (DVD),
# absolute = TheTVDB (Absolute)).
#
class GetLibraryItemsShowOrdering < T::Enum
enums do
NONE = new('None')
TMDB_AIRING = new('tmdbAiring')
TVDB_AIRED = new('aired')
TVDB_DVD = new('dvd')
TVDB_ABSOLUTE = new('absolute')
end
end
end
end

View File

@@ -11,12 +11,8 @@ module PlexRubySDK
class GetMediaMetaDataMedia < ::Crystalline::FieldAugmented
extend T::Sig
# Indicates whether voice activity is detected.
field :has_voice_activity, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasVoiceActivity') } }
# Unique media identifier.
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# An array of parts for this media item.
field :part, T::Array[::PlexRubySDK::Operations::GetMediaMetaDataPart], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
# Aspect ratio of the video.
field :aspect_ratio, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('aspectRatio') } }
# Number of audio channels.
@@ -35,10 +31,14 @@ module PlexRubySDK
field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
# Indicates whether voice activity is detected.
field :has_voice_activity, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasVoiceActivity') } }
# Video height in pixels.
field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
# Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
field :optimized_for_streaming, T.nilable(::Object), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
# An array of parts for this media item.
field :part, T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataPart]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
# Video codec used.
field :video_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } }
# Frame rate of the video. Values found include NTSC, PAL, 24p
@@ -52,11 +52,9 @@ module PlexRubySDK
field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
sig { params(has_voice_activity: T::Boolean, id: ::Integer, part: T::Array[::PlexRubySDK::Operations::GetMediaMetaDataPart], aspect_ratio: T.nilable(::Float), audio_channels: T.nilable(::Integer), audio_codec: T.nilable(::String), audio_profile: T.nilable(::String), bitrate: T.nilable(::Integer), container: T.nilable(::String), display_offset: T.nilable(::Integer), duration: T.nilable(::Integer), has64bit_offsets: T.nilable(T::Boolean), height: T.nilable(::Integer), optimized_for_streaming: T.nilable(::Object), video_codec: T.nilable(::String), video_frame_rate: T.nilable(::String), video_profile: T.nilable(::String), video_resolution: T.nilable(::String), width: T.nilable(::Integer)).void }
def initialize(has_voice_activity: nil, id: nil, part: nil, aspect_ratio: nil, audio_channels: nil, audio_codec: nil, audio_profile: nil, bitrate: nil, container: nil, display_offset: nil, duration: nil, has64bit_offsets: nil, height: nil, optimized_for_streaming: nil, video_codec: nil, video_frame_rate: nil, video_profile: nil, video_resolution: nil, width: nil)
@has_voice_activity = has_voice_activity
sig { params(id: ::Integer, aspect_ratio: T.nilable(::Float), audio_channels: T.nilable(::Integer), audio_codec: T.nilable(::String), audio_profile: T.nilable(::String), bitrate: T.nilable(::Integer), container: T.nilable(::String), display_offset: T.nilable(::Integer), duration: T.nilable(::Integer), has64bit_offsets: T.nilable(T::Boolean), has_voice_activity: T.nilable(T::Boolean), height: T.nilable(::Integer), optimized_for_streaming: T.nilable(::Object), part: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataPart]), video_codec: T.nilable(::String), video_frame_rate: T.nilable(::String), video_profile: T.nilable(::String), video_resolution: T.nilable(::String), width: T.nilable(::Integer)).void }
def initialize(id: nil, aspect_ratio: nil, audio_channels: nil, audio_codec: nil, audio_profile: nil, bitrate: nil, container: nil, display_offset: nil, duration: nil, has64bit_offsets: nil, has_voice_activity: nil, height: nil, optimized_for_streaming: nil, part: nil, video_codec: nil, video_frame_rate: nil, video_profile: nil, video_resolution: nil, width: nil)
@id = id
@part = part
@aspect_ratio = aspect_ratio
@audio_channels = audio_channels
@audio_codec = audio_codec
@@ -66,8 +64,10 @@ module PlexRubySDK
@display_offset = display_offset
@duration = duration
@has64bit_offsets = has64bit_offsets
@has_voice_activity = has_voice_activity
@height = height
@optimized_for_streaming = optimized_for_streaming
@part = part
@video_codec = video_codec
@video_frame_rate = video_frame_rate
@video_profile = video_profile

View File

@@ -106,7 +106,7 @@ module PlexRubySDK
field :primary_extra_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('primaryExtraKey') } }
# An array of Writer roles.
field :producer, T.nilable(T::Array[::PlexRubySDK::Operations::Producer]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Producer') } }
field :producer, T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataProducer]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Producer') } }
# The general rating
field :rating, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rating') } }
# The URL or identifier for the rating image (e.g., Rotten Tomatoes rating image).
@@ -116,7 +116,7 @@ module PlexRubySDK
# An array of Actor roles.
field :role, T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataRole]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Role') } }
# An array of similar content objects.
field :similar, T.nilable(T::Array[::PlexRubySDK::Operations::Similar]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Similar') } }
field :similar, T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataSimilar]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Similar') } }
# The number of times the item has been skipped.
field :skip_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('skipCount') } }
# A URL-friendly identifier for the item.
@@ -135,7 +135,7 @@ module PlexRubySDK
field :writer, T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataWriter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Writer') } }
sig { params(added_at: ::Integer, art: ::String, duration: ::Integer, guid: ::String, image: T::Array[::PlexRubySDK::Operations::GetMediaMetaDataImage], key: ::String, library_section_id: ::Integer, library_section_key: ::String, library_section_title: ::String, rating_key: ::String, summary: ::String, thumb: ::String, title: ::String, type: ::String, ultra_blur_colors: ::PlexRubySDK::Operations::GetMediaMetaDataUltraBlurColors, updated_at: ::Integer, year: ::Integer, audience_rating: T.nilable(::Float), audience_rating_image: T.nilable(::String), chapter_source: T.nilable(::String), child_count: T.nilable(::Integer), content_rating: T.nilable(::String), country: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataCountry]), director: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataDirector]), genre: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataGenre]), grandparent_art: T.nilable(::String), grandparent_guid: T.nilable(::String), grandparent_key: T.nilable(::String), grandparent_rating_key: T.nilable(::String), grandparent_slug: T.nilable(::String), grandparent_thumb: T.nilable(::String), grandparent_title: T.nilable(::String), guids: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataGuids]), index: T.nilable(::Integer), last_viewed_at: T.nilable(::Integer), leaf_count: T.nilable(::Integer), location: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataLocation]), media: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataMedia]), originally_available_at: T.nilable(::Date), original_title: T.nilable(::String), parent_guid: T.nilable(::String), parent_index: T.nilable(::Integer), parent_key: T.nilable(::String), parent_rating_key: T.nilable(::String), parent_thumb: T.nilable(::String), parent_title: T.nilable(::String), primary_extra_key: T.nilable(::String), producer: T.nilable(T::Array[::PlexRubySDK::Operations::Producer]), rating: T.nilable(::Float), rating_image: T.nilable(::String), ratings: T.nilable(T::Array[::PlexRubySDK::Operations::Ratings]), role: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataRole]), similar: T.nilable(T::Array[::PlexRubySDK::Operations::Similar]), skip_count: T.nilable(::Integer), slug: T.nilable(::String), studio: T.nilable(::String), tagline: T.nilable(::String), theme: T.nilable(::String), view_count: T.nilable(::Integer), viewed_leaf_count: T.nilable(::Integer), writer: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataWriter])).void }
sig { params(added_at: ::Integer, art: ::String, duration: ::Integer, guid: ::String, image: T::Array[::PlexRubySDK::Operations::GetMediaMetaDataImage], key: ::String, library_section_id: ::Integer, library_section_key: ::String, library_section_title: ::String, rating_key: ::String, summary: ::String, thumb: ::String, title: ::String, type: ::String, ultra_blur_colors: ::PlexRubySDK::Operations::GetMediaMetaDataUltraBlurColors, updated_at: ::Integer, year: ::Integer, audience_rating: T.nilable(::Float), audience_rating_image: T.nilable(::String), chapter_source: T.nilable(::String), child_count: T.nilable(::Integer), content_rating: T.nilable(::String), country: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataCountry]), director: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataDirector]), genre: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataGenre]), grandparent_art: T.nilable(::String), grandparent_guid: T.nilable(::String), grandparent_key: T.nilable(::String), grandparent_rating_key: T.nilable(::String), grandparent_slug: T.nilable(::String), grandparent_thumb: T.nilable(::String), grandparent_title: T.nilable(::String), guids: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataGuids]), index: T.nilable(::Integer), last_viewed_at: T.nilable(::Integer), leaf_count: T.nilable(::Integer), location: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataLocation]), media: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataMedia]), originally_available_at: T.nilable(::Date), original_title: T.nilable(::String), parent_guid: T.nilable(::String), parent_index: T.nilable(::Integer), parent_key: T.nilable(::String), parent_rating_key: T.nilable(::String), parent_thumb: T.nilable(::String), parent_title: T.nilable(::String), primary_extra_key: T.nilable(::String), producer: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataProducer]), rating: T.nilable(::Float), rating_image: T.nilable(::String), ratings: T.nilable(T::Array[::PlexRubySDK::Operations::Ratings]), role: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataRole]), similar: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataSimilar]), skip_count: T.nilable(::Integer), slug: T.nilable(::String), studio: T.nilable(::String), tagline: T.nilable(::String), theme: T.nilable(::String), view_count: T.nilable(::Integer), viewed_leaf_count: T.nilable(::Integer), writer: T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataWriter])).void }
def initialize(added_at: nil, art: nil, duration: nil, guid: nil, image: nil, key: nil, library_section_id: nil, library_section_key: nil, library_section_title: nil, rating_key: nil, summary: nil, thumb: nil, title: nil, type: nil, ultra_blur_colors: nil, updated_at: nil, year: nil, audience_rating: nil, audience_rating_image: nil, chapter_source: nil, child_count: nil, content_rating: nil, country: nil, director: nil, genre: nil, grandparent_art: nil, grandparent_guid: nil, grandparent_key: nil, grandparent_rating_key: nil, grandparent_slug: nil, grandparent_thumb: nil, grandparent_title: nil, guids: nil, index: nil, last_viewed_at: nil, leaf_count: nil, location: nil, media: nil, originally_available_at: nil, original_title: nil, parent_guid: nil, parent_index: nil, parent_key: nil, parent_rating_key: nil, parent_thumb: nil, parent_title: nil, primary_extra_key: nil, producer: nil, rating: nil, rating_image: nil, ratings: nil, role: nil, similar: nil, skip_count: nil, slug: nil, studio: nil, tagline: nil, theme: nil, view_count: nil, viewed_leaf_count: nil, writer: nil)
@added_at = added_at
@art = art

View File

@@ -0,0 +1,39 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetMediaMetaDataProducer < ::Crystalline::FieldAugmented
extend T::Sig
# The filter string for the role.
field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
# The unique role identifier.
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# The actor's name.
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
# A key associated with the actor tag.
field :tag_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
# The character name or role.
field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } }
# URL for the role thumbnail image.
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: ::String, role: T.nilable(::String), thumb: T.nilable(::String)).void }
def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, role: nil, thumb: nil)
@filter = filter
@id = id
@tag = tag
@tag_key = tag_key
@role = role
@thumb = thumb
end
end
end
end

View File

@@ -0,0 +1,30 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetMediaMetaDataSimilar < ::Crystalline::FieldAugmented
extend T::Sig
# The filter string for similar items.
field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
# The unique similar item identifier.
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# The tag or title of the similar content.
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
sig { params(filter: ::String, id: ::Integer, tag: ::String).void }
def initialize(filter: nil, id: nil, tag: nil)
@filter = filter
@id = id
@tag = tag
end
end
end
end

View File

@@ -21,12 +21,6 @@ module PlexRubySDK
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# Index of the stream.
field :index, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
# Language of the stream.
field :language, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('language') } }
# ISO language code.
field :language_code, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageCode') } }
# Language tag (e.g., en).
field :language_tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageTag') } }
# Stream type (1=video, 2=audio, 3=subtitle).
field :stream_type, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType') } }
# Audio channel layout.
@@ -43,6 +37,8 @@ module PlexRubySDK
field :chroma_location, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaLocation') } }
# Chroma subsampling format.
field :chroma_subsampling, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaSubsampling') } }
field :closed_captions, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('closedCaptions') } }
# Coded video height.
field :coded_height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codedHeight') } }
# Coded video width.
@@ -76,6 +72,8 @@ module PlexRubySDK
# Indicates if the stream is a dub.
field :dub, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('dub') } }
field :embedded_in_video, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('embeddedInVideo') } }
field :forced, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('forced') } }
# Frame rate of the stream.
field :frame_rate, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('frameRate') } }
@@ -87,6 +85,12 @@ module PlexRubySDK
field :hearing_impaired, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hearingImpaired') } }
# Height of the video stream.
field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
# Language of the stream.
field :language, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('language') } }
# ISO language code.
field :language_code, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageCode') } }
# Language tag (e.g., en).
field :language_tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageTag') } }
# Video level.
field :level, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('level') } }
# Indicates if this is the original stream.
@@ -107,16 +111,13 @@ module PlexRubySDK
field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
sig { params(codec: ::String, display_title: ::String, extended_display_title: ::String, id: ::Integer, index: ::Integer, language: ::String, language_code: ::String, language_tag: ::String, stream_type: ::Integer, audio_channel_layout: T.nilable(::String), bit_depth: T.nilable(::Integer), bitrate: T.nilable(::Integer), can_auto_sync: T.nilable(T::Boolean), channels: T.nilable(::Integer), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), coded_height: T.nilable(::Integer), coded_width: T.nilable(::Integer), color_primaries: T.nilable(::String), color_range: T.nilable(::String), color_space: T.nilable(::String), color_trc: T.nilable(::String), default: T.nilable(T::Boolean), dovibl_compat_id: T.nilable(::Integer), dovibl_present: T.nilable(T::Boolean), doviel_present: T.nilable(T::Boolean), dovi_level: T.nilable(::Integer), dovi_present: T.nilable(T::Boolean), dovi_profile: T.nilable(::Integer), dovirpu_present: T.nilable(T::Boolean), dovi_version: T.nilable(::String), dub: T.nilable(T::Boolean), forced: T.nilable(T::Boolean), frame_rate: T.nilable(::Float), has_scaling_matrix: T.nilable(T::Boolean), header_compression: T.nilable(T::Boolean), hearing_impaired: T.nilable(T::Boolean), height: T.nilable(::Integer), level: T.nilable(::Integer), original: T.nilable(T::Boolean), profile: T.nilable(::String), ref_frames: T.nilable(::Integer), sampling_rate: T.nilable(::Integer), scan_type: T.nilable(::String), selected: T.nilable(T::Boolean), title: T.nilable(::String), width: T.nilable(::Integer)).void }
def initialize(codec: nil, display_title: nil, extended_display_title: nil, id: nil, index: nil, language: nil, language_code: nil, language_tag: nil, stream_type: nil, audio_channel_layout: nil, bit_depth: nil, bitrate: nil, can_auto_sync: nil, channels: nil, chroma_location: nil, chroma_subsampling: nil, coded_height: nil, coded_width: nil, color_primaries: nil, color_range: nil, color_space: nil, color_trc: nil, default: nil, dovibl_compat_id: nil, dovibl_present: nil, doviel_present: nil, dovi_level: nil, dovi_present: nil, dovi_profile: nil, dovirpu_present: nil, dovi_version: nil, dub: nil, forced: nil, frame_rate: nil, has_scaling_matrix: nil, header_compression: nil, hearing_impaired: nil, height: nil, level: nil, original: nil, profile: nil, ref_frames: nil, sampling_rate: nil, scan_type: nil, selected: nil, title: nil, width: nil)
sig { params(codec: ::String, display_title: ::String, extended_display_title: ::String, id: ::Integer, index: ::Integer, stream_type: ::Integer, audio_channel_layout: T.nilable(::String), bit_depth: T.nilable(::Integer), bitrate: T.nilable(::Integer), can_auto_sync: T.nilable(T::Boolean), channels: T.nilable(::Integer), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), closed_captions: T.nilable(T::Boolean), coded_height: T.nilable(::Integer), coded_width: T.nilable(::Integer), color_primaries: T.nilable(::String), color_range: T.nilable(::String), color_space: T.nilable(::String), color_trc: T.nilable(::String), default: T.nilable(T::Boolean), dovibl_compat_id: T.nilable(::Integer), dovibl_present: T.nilable(T::Boolean), doviel_present: T.nilable(T::Boolean), dovi_level: T.nilable(::Integer), dovi_present: T.nilable(T::Boolean), dovi_profile: T.nilable(::Integer), dovirpu_present: T.nilable(T::Boolean), dovi_version: T.nilable(::String), dub: T.nilable(T::Boolean), embedded_in_video: T.nilable(::String), forced: T.nilable(T::Boolean), frame_rate: T.nilable(::Float), has_scaling_matrix: T.nilable(T::Boolean), header_compression: T.nilable(T::Boolean), hearing_impaired: T.nilable(T::Boolean), height: T.nilable(::Integer), language: T.nilable(::String), language_code: T.nilable(::String), language_tag: T.nilable(::String), level: T.nilable(::Integer), original: T.nilable(T::Boolean), profile: T.nilable(::String), ref_frames: T.nilable(::Integer), sampling_rate: T.nilable(::Integer), scan_type: T.nilable(::String), selected: T.nilable(T::Boolean), title: T.nilable(::String), width: T.nilable(::Integer)).void }
def initialize(codec: nil, display_title: nil, extended_display_title: nil, id: nil, index: nil, stream_type: nil, audio_channel_layout: nil, bit_depth: nil, bitrate: nil, can_auto_sync: nil, channels: nil, chroma_location: nil, chroma_subsampling: nil, closed_captions: nil, coded_height: nil, coded_width: nil, color_primaries: nil, color_range: nil, color_space: nil, color_trc: nil, default: nil, dovibl_compat_id: nil, dovibl_present: nil, doviel_present: nil, dovi_level: nil, dovi_present: nil, dovi_profile: nil, dovirpu_present: nil, dovi_version: nil, dub: nil, embedded_in_video: nil, forced: nil, frame_rate: nil, has_scaling_matrix: nil, header_compression: nil, hearing_impaired: nil, height: nil, language: nil, language_code: nil, language_tag: nil, level: nil, original: nil, profile: nil, ref_frames: nil, sampling_rate: nil, scan_type: nil, selected: nil, title: nil, width: nil)
@codec = codec
@display_title = display_title
@extended_display_title = extended_display_title
@id = id
@index = index
@language = language
@language_code = language_code
@language_tag = language_tag
@stream_type = stream_type
@audio_channel_layout = audio_channel_layout
@bit_depth = bit_depth
@@ -125,6 +126,7 @@ module PlexRubySDK
@channels = channels
@chroma_location = chroma_location
@chroma_subsampling = chroma_subsampling
@closed_captions = closed_captions
@coded_height = coded_height
@coded_width = coded_width
@color_primaries = color_primaries
@@ -141,12 +143,16 @@ module PlexRubySDK
@dovirpu_present = dovirpu_present
@dovi_version = dovi_version
@dub = dub
@embedded_in_video = embedded_in_video
@forced = forced
@frame_rate = frame_rate
@has_scaling_matrix = has_scaling_matrix
@header_compression = header_compression
@hearing_impaired = hearing_impaired
@height = height
@language = language
@language_code = language_code
@language_tag = language_tag
@level = level
@original = original
@profile = profile

View File

@@ -11,32 +11,32 @@ module PlexRubySDK
class GetRecentlyAddedMediaContainer < ::Crystalline::FieldAugmented
extend T::Sig
# Indicates whether syncing is allowed.
field :allow_sync, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } }
# An plugin identifier for the media container.
field :identifier, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
# Offset value for pagination.
field :offset, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('offset') } }
# Number of media items returned in this response.
field :size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
field :allow_sync, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } }
field :identifier, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
# Total number of media items in the library.
field :total_size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('totalSize') } }
# The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.
#
field :meta, T.nilable(::PlexRubySDK::Operations::Meta), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Meta') } }
# An array of metadata items.
field :metadata, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedMetadata]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Metadata') } }
field :offset, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('offset') } }
field :total_size, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('totalSize') } }
sig { params(size: ::Integer, allow_sync: T.nilable(T::Boolean), identifier: T.nilable(::String), meta: T.nilable(::PlexRubySDK::Operations::Meta), metadata: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedMetadata]), offset: T.nilable(::Integer), total_size: T.nilable(::Integer)).void }
def initialize(size: nil, allow_sync: nil, identifier: nil, meta: nil, metadata: nil, offset: nil, total_size: nil)
@size = size
sig { params(allow_sync: T::Boolean, identifier: ::String, offset: ::Integer, size: ::Integer, total_size: ::Integer, meta: T.nilable(::PlexRubySDK::Operations::Meta), metadata: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedMetadata])).void }
def initialize(allow_sync: nil, identifier: nil, offset: nil, size: nil, total_size: nil, meta: nil, metadata: nil)
@allow_sync = allow_sync
@identifier = identifier
@offset = offset
@size = size
@total_size = total_size
@meta = meta
@metadata = metadata
@offset = offset
@total_size = total_size
end
end
end

View File

@@ -7,199 +7,198 @@
module PlexRubySDK
module Operations
# Unknown
#
class GetRecentlyAddedMetadata < ::Crystalline::FieldAugmented
extend T::Sig
# Unix epoch datetime in seconds
field :added_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('addedAt') } }
# The art image URL for the media item.
field :art, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } }
# The audience rating for the media item.
field :audience_rating, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRating') } }
# The number of child items associated with this media item.
field :child_count, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('childCount') } }
# The duration of the media item in milliseconds.
field :duration, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
# The globally unique identifier for the media item.
field :guid, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('guid') } }
# The index position of the media item.
field :index, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
# The unique key for the media item.
field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
# The rating key (Media ID) of this media item.
# Note: This is always an integer, but is represented as a string in the API.
#
# The identifier for the library section.
field :library_section_id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
# The key corresponding to the library section.
field :library_section_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionKey') } }
# The title of the library section.
field :library_section_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
# The original release date of the media item.
field :originally_available_at, ::Date, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.date_from_iso_format(false) } }
# The studio of the parent media item.
field :parent_studio, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentStudio') } }
# The theme URL for the parent media item.
field :parent_theme, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentTheme') } }
# The critic rating for the media item.
field :rating, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rating') } }
# The rating key (Media ID) of this media item. Note: Although this is always an integer, it is represented as a string in the API.
field :rating_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingKey') } }
# The total number of seasons (for TV shows).
field :season_count, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('seasonCount') } }
# A URLfriendly version of the media title.
field :slug, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('slug') } }
# A synopsis of the media item.
field :summary, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('summary') } }
# A brief tagline for the media item.
field :tagline, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagline') } }
# The theme URL for the media item.
field :theme, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('theme') } }
# The thumbnail image URL for the media item.
field :thumb, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
# The title of the media item.
field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
# The type of media content
#
# The sort title used for ordering media items.
field :title_sort, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('titleSort') } }
field :type, ::PlexRubySDK::Operations::GetRecentlyAddedHubsType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetRecentlyAddedHubsType, false) } }
field :art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } }
field :audience_rating, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRating') } }
# The URL for the audience rating image.
field :audience_rating_image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRatingImage') } }
field :banner, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('banner') } }
# The source from which chapter data is derived.
field :chapter_source, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chapterSource') } }
field :child_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('childCount') } }
field :collection, T.nilable(T::Array[::PlexRubySDK::Operations::Collection]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Collection') } }
# The content rating for the media item.
field :content_rating, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('contentRating') } }
field :country, T.nilable(T::Array[::PlexRubySDK::Operations::Country]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Country') } }
# The accuracy of the creation timestamp. This value indicates the format(s) provided (for example, 'epoch,local' means both epoch and local time formats are available).
field :created_at_accuracy, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('createdAtAccuracy') } }
# The time zone offset for the creation timestamp, represented as a string. This offset indicates the difference from UTC.
field :created_at_tz_offset, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('createdAtTZOffset') } }
field :director, T.nilable(T::Array[::PlexRubySDK::Operations::Director]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Director') } }
field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
# Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled).
field :enable_credits_marker_generation, T.nilable(::PlexRubySDK::Operations::EnableCreditsMarkerGeneration), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('enableCreditsMarkerGeneration'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::EnableCreditsMarkerGeneration, true) } }
# Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first).
field :episode_sort, T.nilable(::PlexRubySDK::Operations::EpisodeSort), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('episodeSort'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::EpisodeSort, true) } }
# Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show).
field :flatten_seasons, T.nilable(::PlexRubySDK::Operations::FlattenSeasons), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('flattenSeasons'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::FlattenSeasons, true) } }
field :genre, T.nilable(T::Array[::PlexRubySDK::Operations::Genre]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Genre') } }
# The art URL for the grandparent media item.
field :grandparent_art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentArt') } }
# The GUID of the grandparent media item.
field :grandparent_guid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentGuid') } }
# The key of the grandparent media item.
field :grandparent_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentKey') } }
# The rating key of the grandparent media item.
field :grandparent_rating_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentRatingKey') } }
# The slug for the grandparent media item.
field :grandparent_slug, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentSlug') } }
# The theme URL for the grandparent media item.
field :grandparent_theme, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentTheme') } }
# The thumbnail URL for the grandparent media item.
field :grandparent_thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentThumb') } }
# The title of the grandparent media item.
field :grandparent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentTitle') } }
field :has_premium_extras, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasPremiumExtras') } }
field :has_premium_primary_extra, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasPremiumPrimaryExtra') } }
field :guids, T.nilable(T::Array[::PlexRubySDK::Operations::Guids]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } }
field :image, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedImage]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Image') } }
field :index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
# The Unix timestamp representing the last time the item was rated.
field :last_rated_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('lastRatedAt') } }
# Unix timestamp for when the media item was last viewed.
field :last_viewed_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('lastViewedAt') } }
# The number of leaf items (end nodes) under this media item.
field :leaf_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('leafCount') } }
field :library_section_id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
field :library_section_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionKey') } }
field :library_section_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
field :location, T.nilable(T::Array[::PlexRubySDK::Operations::Location]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Location') } }
# The Media object is only included when type query is `4` or higher.
#
field :media, T.nilable(T::Array[::PlexRubySDK::Operations::Media]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Media') } }
# The Guid object is only included in the response if the `includeGuids` parameter is set to `1`.
#
field :media_guid, T.nilable(T::Array[::PlexRubySDK::Operations::MediaGuid]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } }
field :meta_data_rating, T.nilable(T::Array[::PlexRubySDK::Operations::MetaDataRating]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Rating') } }
field :originally_available_at, T.nilable(::Date), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.date_from_iso_format(true) } }
# The original title of the media item (if different).
field :original_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originalTitle') } }
# The GUID of the parent media item.
field :parent_guid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentGuid') } }
# The index position of the parent media item.
field :parent_index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentIndex') } }
# The key of the parent media item.
field :parent_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentKey') } }
# The rating key of the parent item.
#
# The rating key of the parent media item.
field :parent_rating_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentRatingKey') } }
# The slug for the parent media item.
field :parent_slug, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentSlug') } }
field :parent_studio, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentStudio') } }
field :parent_theme, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentTheme') } }
# The thumbnail URL for the parent media item.
field :parent_thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentThumb') } }
# The title of the parent media item.
field :parent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentTitle') } }
# The release year of the parent media item.
field :parent_year, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentYear') } }
# The primary extra key associated with this media item.
field :primary_extra_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('primaryExtraKey') } }
field :rating, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rating') } }
field :producer, T.nilable(T::Array[::PlexRubySDK::Operations::Producer]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Producer') } }
field :rating1, T.nilable(T::Array[::PlexRubySDK::Operations::Rating]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Rating') } }
# The URL for the rating image.
field :rating_image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingImage') } }
field :role, T.nilable(T::Array[::PlexRubySDK::Operations::Role]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Role') } }
field :season_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('seasonCount') } }
# Setting that indicates the episode ordering for the show.
# None = Library default,
# tmdbAiring = The Movie Database (Aired),
# aired = TheTVDB (Aired),
# dvd = TheTVDB (DVD),
# absolute = TheTVDB (Absolute)).
#
field :show_ordering, T.nilable(::PlexRubySDK::Operations::ShowOrdering), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('showOrdering'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::ShowOrdering, true) } }
field :skip_children, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('skipChildren') } }
field :similar, T.nilable(T::Array[::PlexRubySDK::Operations::Similar]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Similar') } }
# The number of times this media item has been skipped.
field :skip_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('skipCount') } }
field :slug, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('slug') } }
# The studio that produced the media item.
field :studio, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('studio') } }
field :tagline, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagline') } }
field :theme, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('theme') } }
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
field :title_sort, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('titleSort') } }
# A classification that further describes the type of media item. For example, 'clip' indicates that the item is a short video clip.
field :subtype, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('subtype') } }
field :ultra_blur_colors, T.nilable(::PlexRubySDK::Operations::UltraBlurColors), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('UltraBlurColors') } }
# Unix epoch datetime in seconds
field :updated_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('updatedAt') } }
# The rating provided by a user for the item. This value is expressed as a decimal number.
field :user_rating, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('userRating') } }
# The number of times this media item has been viewed.
field :view_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewCount') } }
# The number of leaf items that have been viewed.
field :viewed_leaf_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewedLeafCount') } }
# The current playback offset (in milliseconds).
field :view_offset, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewOffset') } }
field :writer, T.nilable(T::Array[::PlexRubySDK::Operations::Writer]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Writer') } }
# The release year of the media item.
field :year, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } }
sig { params(added_at: ::Integer, guid: ::String, key: ::String, rating_key: ::String, summary: ::String, title: ::String, type: ::PlexRubySDK::Operations::GetRecentlyAddedHubsType, art: T.nilable(::String), audience_rating: T.nilable(::Float), audience_rating_image: T.nilable(::String), banner: T.nilable(::String), chapter_source: T.nilable(::String), child_count: T.nilable(::Integer), collection: T.nilable(T::Array[::PlexRubySDK::Operations::Collection]), content_rating: T.nilable(::String), country: T.nilable(T::Array[::PlexRubySDK::Operations::Country]), director: T.nilable(T::Array[::PlexRubySDK::Operations::Director]), duration: T.nilable(::Integer), enable_credits_marker_generation: T.nilable(::PlexRubySDK::Operations::EnableCreditsMarkerGeneration), episode_sort: T.nilable(::PlexRubySDK::Operations::EpisodeSort), flatten_seasons: T.nilable(::PlexRubySDK::Operations::FlattenSeasons), genre: T.nilable(T::Array[::PlexRubySDK::Operations::Genre]), grandparent_art: T.nilable(::String), grandparent_guid: T.nilable(::String), grandparent_key: T.nilable(::String), grandparent_rating_key: T.nilable(::String), grandparent_slug: T.nilable(::String), grandparent_theme: T.nilable(::String), grandparent_thumb: T.nilable(::String), grandparent_title: T.nilable(::String), has_premium_extras: T.nilable(::String), has_premium_primary_extra: T.nilable(::String), image: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedImage]), index: T.nilable(::Integer), last_viewed_at: T.nilable(::Integer), leaf_count: T.nilable(::Integer), library_section_id: T.nilable(::Integer), library_section_key: T.nilable(::String), library_section_title: T.nilable(::String), location: T.nilable(T::Array[::PlexRubySDK::Operations::Location]), media: T.nilable(T::Array[::PlexRubySDK::Operations::Media]), media_guid: T.nilable(T::Array[::PlexRubySDK::Operations::MediaGuid]), meta_data_rating: T.nilable(T::Array[::PlexRubySDK::Operations::MetaDataRating]), originally_available_at: T.nilable(::Date), original_title: T.nilable(::String), parent_guid: T.nilable(::String), parent_index: T.nilable(::Integer), parent_key: T.nilable(::String), parent_rating_key: T.nilable(::String), parent_slug: T.nilable(::String), parent_studio: T.nilable(::String), parent_theme: T.nilable(::String), parent_thumb: T.nilable(::String), parent_title: T.nilable(::String), parent_year: T.nilable(::Integer), primary_extra_key: T.nilable(::String), rating: T.nilable(::Float), rating_image: T.nilable(::String), role: T.nilable(T::Array[::PlexRubySDK::Operations::Role]), season_count: T.nilable(::Integer), show_ordering: T.nilable(::PlexRubySDK::Operations::ShowOrdering), skip_children: T.nilable(T::Boolean), skip_count: T.nilable(::Integer), slug: T.nilable(::String), studio: T.nilable(::String), tagline: T.nilable(::String), theme: T.nilable(::String), thumb: T.nilable(::String), title_sort: T.nilable(::String), ultra_blur_colors: T.nilable(::PlexRubySDK::Operations::UltraBlurColors), updated_at: T.nilable(::Integer), view_count: T.nilable(::Integer), viewed_leaf_count: T.nilable(::Integer), view_offset: T.nilable(::Integer), writer: T.nilable(T::Array[::PlexRubySDK::Operations::Writer]), year: T.nilable(::Integer)).void }
def initialize(added_at: nil, guid: nil, key: nil, rating_key: nil, summary: nil, title: nil, type: nil, art: nil, audience_rating: nil, audience_rating_image: nil, banner: nil, chapter_source: nil, child_count: nil, collection: nil, content_rating: nil, country: nil, director: nil, duration: nil, enable_credits_marker_generation: nil, episode_sort: nil, flatten_seasons: nil, genre: nil, grandparent_art: nil, grandparent_guid: nil, grandparent_key: nil, grandparent_rating_key: nil, grandparent_slug: nil, grandparent_theme: nil, grandparent_thumb: nil, grandparent_title: nil, has_premium_extras: nil, has_premium_primary_extra: nil, image: nil, index: nil, last_viewed_at: nil, leaf_count: nil, library_section_id: nil, library_section_key: nil, library_section_title: nil, location: nil, media: nil, media_guid: nil, meta_data_rating: nil, originally_available_at: nil, original_title: nil, parent_guid: nil, parent_index: nil, parent_key: nil, parent_rating_key: nil, parent_slug: nil, parent_studio: nil, parent_theme: nil, parent_thumb: nil, parent_title: nil, parent_year: nil, primary_extra_key: nil, rating: nil, rating_image: nil, role: nil, season_count: nil, show_ordering: nil, skip_children: nil, skip_count: nil, slug: nil, studio: nil, tagline: nil, theme: nil, thumb: nil, title_sort: nil, ultra_blur_colors: nil, updated_at: nil, view_count: nil, viewed_leaf_count: nil, view_offset: nil, writer: nil, year: nil)
sig { params(added_at: ::Integer, art: ::String, audience_rating: ::Float, child_count: ::Integer, duration: ::Integer, guid: ::String, index: ::Integer, key: ::String, library_section_id: ::Integer, library_section_key: ::String, library_section_title: ::String, originally_available_at: ::Date, parent_studio: ::String, parent_theme: ::String, rating: ::Float, rating_key: ::String, season_count: ::Integer, slug: ::String, summary: ::String, tagline: ::String, theme: ::String, thumb: ::String, title: ::String, title_sort: ::String, type: ::PlexRubySDK::Operations::GetRecentlyAddedHubsType, audience_rating_image: T.nilable(::String), chapter_source: T.nilable(::String), collection: T.nilable(T::Array[::PlexRubySDK::Operations::Collection]), content_rating: T.nilable(::String), country: T.nilable(T::Array[::PlexRubySDK::Operations::Country]), created_at_accuracy: T.nilable(::String), created_at_tz_offset: T.nilable(::String), director: T.nilable(T::Array[::PlexRubySDK::Operations::Director]), genre: T.nilable(T::Array[::PlexRubySDK::Operations::Genre]), grandparent_art: T.nilable(::String), grandparent_guid: T.nilable(::String), grandparent_key: T.nilable(::String), grandparent_rating_key: T.nilable(::String), grandparent_slug: T.nilable(::String), grandparent_theme: T.nilable(::String), grandparent_thumb: T.nilable(::String), grandparent_title: T.nilable(::String), guids: T.nilable(T::Array[::PlexRubySDK::Operations::Guids]), image: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedImage]), last_rated_at: T.nilable(::Integer), last_viewed_at: T.nilable(::Integer), leaf_count: T.nilable(::Integer), location: T.nilable(T::Array[::PlexRubySDK::Operations::Location]), media: T.nilable(T::Array[::PlexRubySDK::Operations::Media]), original_title: T.nilable(::String), parent_guid: T.nilable(::String), parent_index: T.nilable(::Integer), parent_key: T.nilable(::String), parent_rating_key: T.nilable(::String), parent_slug: T.nilable(::String), parent_thumb: T.nilable(::String), parent_title: T.nilable(::String), parent_year: T.nilable(::Integer), primary_extra_key: T.nilable(::String), producer: T.nilable(T::Array[::PlexRubySDK::Operations::Producer]), rating1: T.nilable(T::Array[::PlexRubySDK::Operations::Rating]), rating_image: T.nilable(::String), role: T.nilable(T::Array[::PlexRubySDK::Operations::Role]), similar: T.nilable(T::Array[::PlexRubySDK::Operations::Similar]), skip_count: T.nilable(::Integer), studio: T.nilable(::String), subtype: T.nilable(::String), ultra_blur_colors: T.nilable(::PlexRubySDK::Operations::UltraBlurColors), updated_at: T.nilable(::Integer), user_rating: T.nilable(::Float), view_count: T.nilable(::Integer), viewed_leaf_count: T.nilable(::Integer), view_offset: T.nilable(::Integer), writer: T.nilable(T::Array[::PlexRubySDK::Operations::Writer]), year: T.nilable(::Integer)).void }
def initialize(added_at: nil, art: nil, audience_rating: nil, child_count: nil, duration: nil, guid: nil, index: nil, key: nil, library_section_id: nil, library_section_key: nil, library_section_title: nil, originally_available_at: nil, parent_studio: nil, parent_theme: nil, rating: nil, rating_key: nil, season_count: nil, slug: nil, summary: nil, tagline: nil, theme: nil, thumb: nil, title: nil, title_sort: nil, type: nil, audience_rating_image: nil, chapter_source: nil, collection: nil, content_rating: nil, country: nil, created_at_accuracy: nil, created_at_tz_offset: nil, director: nil, genre: nil, grandparent_art: nil, grandparent_guid: nil, grandparent_key: nil, grandparent_rating_key: nil, grandparent_slug: nil, grandparent_theme: nil, grandparent_thumb: nil, grandparent_title: nil, guids: nil, image: nil, last_rated_at: nil, last_viewed_at: nil, leaf_count: nil, location: nil, media: nil, original_title: nil, parent_guid: nil, parent_index: nil, parent_key: nil, parent_rating_key: nil, parent_slug: nil, parent_thumb: nil, parent_title: nil, parent_year: nil, primary_extra_key: nil, producer: nil, rating1: nil, rating_image: nil, role: nil, similar: nil, skip_count: nil, studio: nil, subtype: nil, ultra_blur_colors: nil, updated_at: nil, user_rating: nil, view_count: nil, viewed_leaf_count: nil, view_offset: nil, writer: nil, year: nil)
@added_at = added_at
@guid = guid
@key = key
@rating_key = rating_key
@summary = summary
@title = title
@type = type
@art = art
@audience_rating = audience_rating
@audience_rating_image = audience_rating_image
@banner = banner
@chapter_source = chapter_source
@child_count = child_count
@duration = duration
@guid = guid
@index = index
@key = key
@library_section_id = library_section_id
@library_section_key = library_section_key
@library_section_title = library_section_title
@originally_available_at = originally_available_at
@parent_studio = parent_studio
@parent_theme = parent_theme
@rating = rating
@rating_key = rating_key
@season_count = season_count
@slug = slug
@summary = summary
@tagline = tagline
@theme = theme
@thumb = thumb
@title = title
@title_sort = title_sort
@type = type
@audience_rating_image = audience_rating_image
@chapter_source = chapter_source
@collection = collection
@content_rating = content_rating
@country = country
@created_at_accuracy = created_at_accuracy
@created_at_tz_offset = created_at_tz_offset
@director = director
@duration = duration
@enable_credits_marker_generation = enable_credits_marker_generation
@episode_sort = episode_sort
@flatten_seasons = flatten_seasons
@genre = genre
@grandparent_art = grandparent_art
@grandparent_guid = grandparent_guid
@@ -209,47 +208,34 @@ module PlexRubySDK
@grandparent_theme = grandparent_theme
@grandparent_thumb = grandparent_thumb
@grandparent_title = grandparent_title
@has_premium_extras = has_premium_extras
@has_premium_primary_extra = has_premium_primary_extra
@guids = guids
@image = image
@index = index
@last_rated_at = last_rated_at
@last_viewed_at = last_viewed_at
@leaf_count = leaf_count
@library_section_id = library_section_id
@library_section_key = library_section_key
@library_section_title = library_section_title
@location = location
@media = media
@media_guid = media_guid
@meta_data_rating = meta_data_rating
@originally_available_at = originally_available_at
@original_title = original_title
@parent_guid = parent_guid
@parent_index = parent_index
@parent_key = parent_key
@parent_rating_key = parent_rating_key
@parent_slug = parent_slug
@parent_studio = parent_studio
@parent_theme = parent_theme
@parent_thumb = parent_thumb
@parent_title = parent_title
@parent_year = parent_year
@primary_extra_key = primary_extra_key
@rating = rating
@producer = producer
@rating1 = rating1
@rating_image = rating_image
@role = role
@season_count = season_count
@show_ordering = show_ordering
@skip_children = skip_children
@similar = similar
@skip_count = skip_count
@slug = slug
@studio = studio
@tagline = tagline
@theme = theme
@thumb = thumb
@title_sort = title_sort
@subtype = subtype
@ultra_blur_colors = ultra_blur_colors
@updated_at = updated_at
@user_rating = user_rating
@view_count = view_count
@viewed_leaf_count = viewed_leaf_count
@view_offset = view_offset

View File

@@ -1,24 +0,0 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
# Bad Request - A parameter was not specified, or was specified incorrectly.
class GetOnDeckBadRequest < ::Crystalline::FieldAugmented
extend T::Sig
field :errors, T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckErrors]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('errors') } }
sig { params(errors: T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckErrors])).void }
def initialize(errors: nil)
@errors = errors
end
end
end
end

View File

@@ -1,30 +0,0 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetOnDeckErrors < ::Crystalline::FieldAugmented
extend T::Sig
field :code, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('code') } }
field :message, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('message') } }
field :status, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('status') } }
sig { params(code: T.nilable(::Integer), message: T.nilable(::String), status: T.nilable(::Integer)).void }
def initialize(code: nil, message: nil, status: nil)
@code = code
@message = message
@status = status
end
end
end
end

View File

@@ -1,30 +0,0 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetOnDeckLibraryErrors < ::Crystalline::FieldAugmented
extend T::Sig
field :code, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('code') } }
field :message, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('message') } }
field :status, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('status') } }
sig { params(code: T.nilable(::Integer), message: T.nilable(::String), status: T.nilable(::Integer)).void }
def initialize(code: nil, message: nil, status: nil)
@code = code
@message = message
@status = status
end
end
end
end

View File

@@ -1,66 +0,0 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetOnDeckMedia < ::Crystalline::FieldAugmented
extend T::Sig
field :aspect_ratio, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('aspectRatio') } }
field :audio_channels, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannels') } }
field :audio_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioCodec') } }
field :audio_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioProfile') } }
field :bitrate, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitrate') } }
field :container, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
field :duration, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
field :height, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
field :id, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
field :part, T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckPart]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
field :video_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } }
field :video_frame_rate, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoFrameRate') } }
field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
field :video_resolution, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoResolution') } }
field :width, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
sig { params(aspect_ratio: T.nilable(::Float), audio_channels: T.nilable(::Float), audio_codec: T.nilable(::String), audio_profile: T.nilable(::String), bitrate: T.nilable(::Float), container: T.nilable(::String), duration: T.nilable(::Float), height: T.nilable(::Float), id: T.nilable(::Float), part: T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckPart]), video_codec: T.nilable(::String), video_frame_rate: T.nilable(::String), video_profile: T.nilable(::String), video_resolution: T.nilable(::String), width: T.nilable(::Float)).void }
def initialize(aspect_ratio: nil, audio_channels: nil, audio_codec: nil, audio_profile: nil, bitrate: nil, container: nil, duration: nil, height: nil, id: nil, part: nil, video_codec: nil, video_frame_rate: nil, video_profile: nil, video_resolution: nil, width: nil)
@aspect_ratio = aspect_ratio
@audio_channels = audio_channels
@audio_codec = audio_codec
@audio_profile = audio_profile
@bitrate = bitrate
@container = container
@duration = duration
@height = height
@id = id
@part = part
@video_codec = video_codec
@video_frame_rate = video_frame_rate
@video_profile = video_profile
@video_resolution = video_resolution
@width = width
end
end
end
end

View File

@@ -1,42 +0,0 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetOnDeckMediaContainer < ::Crystalline::FieldAugmented
extend T::Sig
field :allow_sync, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } }
field :identifier, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
field :media_tag_prefix, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagPrefix') } }
field :media_tag_version, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagVersion') } }
field :metadata, T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckMetadata]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Metadata') } }
field :mixed_parents, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mixedParents') } }
field :size, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
sig { params(allow_sync: T.nilable(T::Boolean), identifier: T.nilable(::String), media_tag_prefix: T.nilable(::String), media_tag_version: T.nilable(::Float), metadata: T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckMetadata]), mixed_parents: T.nilable(T::Boolean), size: T.nilable(::Float)).void }
def initialize(allow_sync: nil, identifier: nil, media_tag_prefix: nil, media_tag_version: nil, metadata: nil, mixed_parents: nil, size: nil)
@allow_sync = allow_sync
@identifier = identifier
@media_tag_prefix = media_tag_prefix
@media_tag_version = media_tag_version
@metadata = metadata
@mixed_parents = mixed_parents
@size = size
end
end
end
end

View File

@@ -1,129 +0,0 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetOnDeckMetadata < ::Crystalline::FieldAugmented
extend T::Sig
field :added_at, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('addedAt') } }
field :allow_sync, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } }
field :art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } }
field :content_rating, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('contentRating') } }
field :duration, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
field :grandparent_art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentArt') } }
field :grandparent_guid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentGuid') } }
field :grandparent_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentKey') } }
field :grandparent_rating_key, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentRatingKey') } }
field :grandparent_theme, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentTheme') } }
field :grandparent_thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentThumb') } }
field :grandparent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentTitle') } }
field :guid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('guid') } }
field :guids, T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckGuids]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } }
field :index, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
field :last_viewed_at, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('lastViewedAt') } }
field :library_section_id, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
field :library_section_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionKey') } }
field :library_section_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
field :library_section_uuid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionUUID') } }
field :media, T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckMedia]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Media') } }
field :originally_available_at, T.nilable(::DateTime), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.datetime_from_iso_format(true) } }
field :parent_guid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentGuid') } }
field :parent_index, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentIndex') } }
field :parent_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentKey') } }
field :parent_rating_key, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentRatingKey') } }
field :parent_thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentThumb') } }
field :parent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentTitle') } }
field :rating_key, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingKey') } }
field :summary, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('summary') } }
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
field :type, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
field :updated_at, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('updatedAt') } }
field :year, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } }
sig { params(added_at: T.nilable(::Float), allow_sync: T.nilable(T::Boolean), art: T.nilable(::String), content_rating: T.nilable(::String), duration: T.nilable(::Float), grandparent_art: T.nilable(::String), grandparent_guid: T.nilable(::String), grandparent_key: T.nilable(::String), grandparent_rating_key: T.nilable(::Float), grandparent_theme: T.nilable(::String), grandparent_thumb: T.nilable(::String), grandparent_title: T.nilable(::String), guid: T.nilable(::String), guids: T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckGuids]), index: T.nilable(::Float), key: T.nilable(::String), last_viewed_at: T.nilable(::Float), library_section_id: T.nilable(::Float), library_section_key: T.nilable(::String), library_section_title: T.nilable(::String), library_section_uuid: T.nilable(::String), media: T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckMedia]), originally_available_at: T.nilable(::DateTime), parent_guid: T.nilable(::String), parent_index: T.nilable(::Float), parent_key: T.nilable(::String), parent_rating_key: T.nilable(::Float), parent_thumb: T.nilable(::String), parent_title: T.nilable(::String), rating_key: T.nilable(::Float), summary: T.nilable(::String), thumb: T.nilable(::String), title: T.nilable(::String), type: T.nilable(::String), updated_at: T.nilable(::Float), year: T.nilable(::Float)).void }
def initialize(added_at: nil, allow_sync: nil, art: nil, content_rating: nil, duration: nil, grandparent_art: nil, grandparent_guid: nil, grandparent_key: nil, grandparent_rating_key: nil, grandparent_theme: nil, grandparent_thumb: nil, grandparent_title: nil, guid: nil, guids: nil, index: nil, key: nil, last_viewed_at: nil, library_section_id: nil, library_section_key: nil, library_section_title: nil, library_section_uuid: nil, media: nil, originally_available_at: nil, parent_guid: nil, parent_index: nil, parent_key: nil, parent_rating_key: nil, parent_thumb: nil, parent_title: nil, rating_key: nil, summary: nil, thumb: nil, title: nil, type: nil, updated_at: nil, year: nil)
@added_at = added_at
@allow_sync = allow_sync
@art = art
@content_rating = content_rating
@duration = duration
@grandparent_art = grandparent_art
@grandparent_guid = grandparent_guid
@grandparent_key = grandparent_key
@grandparent_rating_key = grandparent_rating_key
@grandparent_theme = grandparent_theme
@grandparent_thumb = grandparent_thumb
@grandparent_title = grandparent_title
@guid = guid
@guids = guids
@index = index
@key = key
@last_viewed_at = last_viewed_at
@library_section_id = library_section_id
@library_section_key = library_section_key
@library_section_title = library_section_title
@library_section_uuid = library_section_uuid
@media = media
@originally_available_at = originally_available_at
@parent_guid = parent_guid
@parent_index = parent_index
@parent_key = parent_key
@parent_rating_key = parent_rating_key
@parent_thumb = parent_thumb
@parent_title = parent_title
@rating_key = rating_key
@summary = summary
@thumb = thumb
@title = title
@type = type
@updated_at = updated_at
@year = year
end
end
end
end

View File

@@ -1,48 +0,0 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetOnDeckPart < ::Crystalline::FieldAugmented
extend T::Sig
field :audio_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioProfile') } }
field :container, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
field :duration, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
field :file, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('file') } }
field :id, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
field :size, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
field :stream, T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckStream]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Stream') } }
field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
sig { params(audio_profile: T.nilable(::String), container: T.nilable(::String), duration: T.nilable(::Float), file: T.nilable(::String), id: T.nilable(::Float), key: T.nilable(::String), size: T.nilable(::Float), stream: T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckStream]), video_profile: T.nilable(::String)).void }
def initialize(audio_profile: nil, container: nil, duration: nil, file: nil, id: nil, key: nil, size: nil, stream: nil, video_profile: nil)
@audio_profile = audio_profile
@container = container
@duration = duration
@file = file
@id = id
@key = key
@size = size
@stream = stream
@video_profile = video_profile
end
end
end
end

View File

@@ -1,39 +0,0 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetOnDeckResponse < ::Crystalline::FieldAugmented
extend T::Sig
# HTTP response content type for this operation
field :content_type, ::String
# Raw HTTP response; suitable for custom response parsing
field :raw_response, ::Faraday::Response
# HTTP response status code for this operation
field :status_code, ::Integer
# Bad Request - A parameter was not specified, or was specified incorrectly.
field :bad_request, T.nilable(::PlexRubySDK::Operations::GetOnDeckBadRequest)
# The on Deck content
field :object, T.nilable(::PlexRubySDK::Operations::GetOnDeckResponseBody)
# Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
field :unauthorized, T.nilable(::PlexRubySDK::Operations::GetOnDeckUnauthorized)
sig { params(content_type: ::String, raw_response: ::Faraday::Response, status_code: ::Integer, bad_request: T.nilable(::PlexRubySDK::Operations::GetOnDeckBadRequest), object: T.nilable(::PlexRubySDK::Operations::GetOnDeckResponseBody), unauthorized: T.nilable(::PlexRubySDK::Operations::GetOnDeckUnauthorized)).void }
def initialize(content_type: nil, raw_response: nil, status_code: nil, bad_request: nil, object: nil, unauthorized: nil)
@content_type = content_type
@raw_response = raw_response
@status_code = status_code
@bad_request = bad_request
@object = object
@unauthorized = unauthorized
end
end
end
end

View File

@@ -1,24 +0,0 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
# The on Deck content
class GetOnDeckResponseBody < ::Crystalline::FieldAugmented
extend T::Sig
field :media_container, T.nilable(::PlexRubySDK::Operations::GetOnDeckMediaContainer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('MediaContainer') } }
sig { params(media_container: T.nilable(::PlexRubySDK::Operations::GetOnDeckMediaContainer)).void }
def initialize(media_container: nil)
@media_container = media_container
end
end
end
end

View File

@@ -1,90 +0,0 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
class GetOnDeckStream < ::Crystalline::FieldAugmented
extend T::Sig
field :bit_depth, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitDepth') } }
field :bitrate, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitrate') } }
field :chroma_location, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaLocation') } }
field :chroma_subsampling, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaSubsampling') } }
field :codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codec') } }
field :coded_height, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codedHeight') } }
field :coded_width, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codedWidth') } }
field :color_range, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorRange') } }
field :default, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('default') } }
field :display_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('displayTitle') } }
field :extended_display_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('extendedDisplayTitle') } }
field :frame_rate, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('frameRate') } }
field :height, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
field :id, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
field :index, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
field :language, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('language') } }
field :language_code, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageCode') } }
field :language_tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageTag') } }
field :level, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('level') } }
field :profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('profile') } }
field :ref_frames, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('refFrames') } }
field :stream_type, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType') } }
field :width, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
sig { params(bit_depth: T.nilable(::Float), bitrate: T.nilable(::Float), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), codec: T.nilable(::String), coded_height: T.nilable(::Float), coded_width: T.nilable(::Float), color_range: T.nilable(::String), default: T.nilable(T::Boolean), display_title: T.nilable(::String), extended_display_title: T.nilable(::String), frame_rate: T.nilable(::Float), height: T.nilable(::Float), id: T.nilable(::Float), index: T.nilable(::Float), language: T.nilable(::String), language_code: T.nilable(::String), language_tag: T.nilable(::String), level: T.nilable(::Float), profile: T.nilable(::String), ref_frames: T.nilable(::Float), stream_type: T.nilable(::Float), width: T.nilable(::Float)).void }
def initialize(bit_depth: nil, bitrate: nil, chroma_location: nil, chroma_subsampling: nil, codec: nil, coded_height: nil, coded_width: nil, color_range: nil, default: nil, display_title: nil, extended_display_title: nil, frame_rate: nil, height: nil, id: nil, index: nil, language: nil, language_code: nil, language_tag: nil, level: nil, profile: nil, ref_frames: nil, stream_type: nil, width: nil)
@bit_depth = bit_depth
@bitrate = bitrate
@chroma_location = chroma_location
@chroma_subsampling = chroma_subsampling
@codec = codec
@coded_height = coded_height
@coded_width = coded_width
@color_range = color_range
@default = default
@display_title = display_title
@extended_display_title = extended_display_title
@frame_rate = frame_rate
@height = height
@id = id
@index = index
@language = language
@language_code = language_code
@language_tag = language_tag
@level = level
@profile = profile
@ref_frames = ref_frames
@stream_type = stream_type
@width = width
end
end
end
end

View File

@@ -1,24 +0,0 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
# Unauthorized - Returned if the X-Plex-Token is missing from the header or query.
class GetOnDeckUnauthorized < ::Crystalline::FieldAugmented
extend T::Sig
field :errors, T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckLibraryErrors]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('errors') } }
sig { params(errors: T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckLibraryErrors])).void }
def initialize(errors: nil)
@errors = errors
end
end
end
end

View File

@@ -7,7 +7,7 @@
module PlexRubySDK
module Operations
# HasThumbnail - Indicates if the part has a thumbnail.
class HasThumbnail < T::Enum
enums do
FALSE = new('0')

View File

@@ -7,15 +7,15 @@
module PlexRubySDK
module Operations
# The folder path for the media item.
class Location < ::Crystalline::FieldAugmented
extend T::Sig
field :path, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('path') } }
field :path, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('path') } }
sig { params(path: T.nilable(::String)).void }
sig { params(path: ::String).void }
def initialize(path: nil)
@path = path
end

View File

@@ -11,59 +11,63 @@ module PlexRubySDK
class Media < ::Crystalline::FieldAugmented
extend T::Sig
field :container, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
# Unique media identifier.
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
field :part, T::Array[::PlexRubySDK::Operations::Part], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
# Aspect ratio of the video.
field :aspect_ratio, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('aspectRatio') } }
# Number of audio channels.
field :audio_channels, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannels') } }
# Audio codec used.
field :audio_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioCodec') } }
# The audio profile used for the media (e.g., DTS, Dolby Digital, etc.).
field :audio_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioProfile') } }
# Bitrate in bits per second.
field :bitrate, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitrate') } }
# File container type.
field :container, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
field :display_offset, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('displayOffset') } }
# Duration of the media in milliseconds.
field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
# Indicates whether voice activity is detected.
field :has_voice_activity, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasVoiceActivity') } }
# Video height in pixels.
field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
field :optimized_for_streaming, T.nilable(::PlexRubySDK::Operations::OptimizedForStreaming), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::OptimizedForStreaming, true) } }
# Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
field :optimized_for_streaming, T.nilable(::Object), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
# An array of parts for this media item.
field :part, T.nilable(T::Array[::PlexRubySDK::Operations::Part]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
# Video codec used.
field :video_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } }
# Frame rate of the video. Values found include NTSC, PAL, 24p
#
field :video_frame_rate, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoFrameRate') } }
# Video profile (e.g., main 10).
field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
# Video resolution (e.g., 4k).
field :video_resolution, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoResolution') } }
# Video width in pixels.
field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
sig { params(container: ::String, id: ::Integer, part: T::Array[::PlexRubySDK::Operations::Part], aspect_ratio: T.nilable(::Float), audio_channels: T.nilable(::Integer), audio_codec: T.nilable(::String), audio_profile: T.nilable(::String), bitrate: T.nilable(::Integer), duration: T.nilable(::Integer), has64bit_offsets: T.nilable(T::Boolean), has_voice_activity: T.nilable(T::Boolean), height: T.nilable(::Integer), optimized_for_streaming: T.nilable(::PlexRubySDK::Operations::OptimizedForStreaming), video_codec: T.nilable(::String), video_frame_rate: T.nilable(::String), video_profile: T.nilable(::String), video_resolution: T.nilable(::String), width: T.nilable(::Integer)).void }
def initialize(container: nil, id: nil, part: nil, aspect_ratio: nil, audio_channels: nil, audio_codec: nil, audio_profile: nil, bitrate: nil, duration: nil, has64bit_offsets: nil, has_voice_activity: nil, height: nil, optimized_for_streaming: nil, video_codec: nil, video_frame_rate: nil, video_profile: nil, video_resolution: nil, width: nil)
@container = container
sig { params(id: ::Integer, aspect_ratio: T.nilable(::Float), audio_channels: T.nilable(::Integer), audio_codec: T.nilable(::String), audio_profile: T.nilable(::String), bitrate: T.nilable(::Integer), container: T.nilable(::String), display_offset: T.nilable(::Integer), duration: T.nilable(::Integer), has64bit_offsets: T.nilable(T::Boolean), has_voice_activity: T.nilable(T::Boolean), height: T.nilable(::Integer), optimized_for_streaming: T.nilable(::Object), part: T.nilable(T::Array[::PlexRubySDK::Operations::Part]), video_codec: T.nilable(::String), video_frame_rate: T.nilable(::String), video_profile: T.nilable(::String), video_resolution: T.nilable(::String), width: T.nilable(::Integer)).void }
def initialize(id: nil, aspect_ratio: nil, audio_channels: nil, audio_codec: nil, audio_profile: nil, bitrate: nil, container: nil, display_offset: nil, duration: nil, has64bit_offsets: nil, has_voice_activity: nil, height: nil, optimized_for_streaming: nil, part: nil, video_codec: nil, video_frame_rate: nil, video_profile: nil, video_resolution: nil, width: nil)
@id = id
@part = part
@aspect_ratio = aspect_ratio
@audio_channels = audio_channels
@audio_codec = audio_codec
@audio_profile = audio_profile
@bitrate = bitrate
@container = container
@display_offset = display_offset
@duration = duration
@has64bit_offsets = has64bit_offsets
@has_voice_activity = has_voice_activity
@height = height
@optimized_for_streaming = optimized_for_streaming
@part = part
@video_codec = video_codec
@video_frame_rate = video_frame_rate
@video_profile = video_profile

View File

@@ -11,48 +11,56 @@ module PlexRubySDK
class Part < ::Crystalline::FieldAugmented
extend T::Sig
# The container format of the media file.
#
field :container, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
# File path for the part.
field :file, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('file') } }
# Unique part identifier.
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# Key to access this part.
field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
# File size in bytes.
field :size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
# Indicates if the part is accessible.
field :accessible, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('accessible') } }
# The audio profile used for the media (e.g., DTS, Dolby Digital, etc.).
field :audio_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioProfile') } }
# Container format of the part.
field :container, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
# Duration of the part in milliseconds.
field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
# Indicates if the part exists.
field :exists, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('exists') } }
field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
field :has_thumbnail, T.nilable(::PlexRubySDK::Operations::HasThumbnail), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasThumbnail'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::HasThumbnail, true) } }
field :indexes, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('indexes') } }
# Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
field :optimized_for_streaming, T.nilable(::Object), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
field :optimized_for_streaming, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
field :packet_length, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('packetLength') } }
# An array of streams for this part.
field :stream, T.nilable(T::Array[::PlexRubySDK::Operations::Stream]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Stream') } }
# Video profile for the part.
field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
sig { params(container: ::String, file: ::String, id: ::Integer, key: ::String, size: ::Integer, audio_profile: T.nilable(::String), duration: T.nilable(::Integer), has64bit_offsets: T.nilable(T::Boolean), has_thumbnail: T.nilable(::PlexRubySDK::Operations::HasThumbnail), indexes: T.nilable(::String), optimized_for_streaming: T.nilable(T::Boolean), stream: T.nilable(T::Array[::PlexRubySDK::Operations::Stream]), video_profile: T.nilable(::String)).void }
def initialize(container: nil, file: nil, id: nil, key: nil, size: nil, audio_profile: nil, duration: nil, has64bit_offsets: nil, has_thumbnail: nil, indexes: nil, optimized_for_streaming: nil, stream: nil, video_profile: nil)
@container = container
sig { params(file: ::String, id: ::Integer, key: ::String, size: ::Integer, accessible: T.nilable(T::Boolean), audio_profile: T.nilable(::String), container: T.nilable(::String), duration: T.nilable(::Integer), exists: T.nilable(T::Boolean), has64bit_offsets: T.nilable(T::Boolean), has_thumbnail: T.nilable(::PlexRubySDK::Operations::HasThumbnail), indexes: T.nilable(::String), optimized_for_streaming: T.nilable(::Object), packet_length: T.nilable(::Integer), stream: T.nilable(T::Array[::PlexRubySDK::Operations::Stream]), video_profile: T.nilable(::String)).void }
def initialize(file: nil, id: nil, key: nil, size: nil, accessible: nil, audio_profile: nil, container: nil, duration: nil, exists: nil, has64bit_offsets: nil, has_thumbnail: nil, indexes: nil, optimized_for_streaming: nil, packet_length: nil, stream: nil, video_profile: nil)
@file = file
@id = id
@key = key
@size = size
@accessible = accessible
@audio_profile = audio_profile
@container = container
@duration = duration
@exists = exists
@has64bit_offsets = has64bit_offsets
@has_thumbnail = has_thumbnail
@indexes = indexes
@optimized_for_streaming = optimized_for_streaming
@packet_length = packet_length
@stream = stream
@video_profile = video_profile
end

View File

@@ -11,27 +11,24 @@ module PlexRubySDK
class Producer < ::Crystalline::FieldAugmented
extend T::Sig
# The filter string for the role.
# The filter string used to query this producer.
field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
# The unique role identifier.
# Unique identifier for the producer.
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# The actor's name.
# The name of the producer
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
# A key associated with the actor tag.
field :tag_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
# The character name or role.
field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } }
# URL for the role thumbnail image.
# A unique key associated with the producer's tag, used for internal identification.
field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
# The URL of the thumbnail image for the actor.
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: ::String, role: T.nilable(::String), thumb: T.nilable(::String)).void }
def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, role: nil, thumb: nil)
sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: T.nilable(::String), thumb: T.nilable(::String)).void }
def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, thumb: nil)
@filter = filter
@id = id
@tag = tag
@tag_key = tag_key
@role = role
@thumb = thumb
end
end

View File

@@ -7,15 +7,15 @@
module PlexRubySDK
module Operations
class GetLibraryItemsMetaDataRating < ::Crystalline::FieldAugmented
# The type of rating, for example 'audience' or 'critic'.
class Rating < ::Crystalline::FieldAugmented
extend T::Sig
# A URI or path to the rating image.
field :image, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('image') } }
# The type of rating (e.g., audience, critic).
field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
# The value of the rating.
field :value, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('value') } }

View File

@@ -11,26 +11,26 @@ module PlexRubySDK
class Role < ::Crystalline::FieldAugmented
extend T::Sig
# The filter used to find the actor or tag.
field :filter, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
# The ID of the tag or actor.
field :id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# The role of the actor or tag in the media.
# The filter string used to query this actor. For example, it may indicate that this is an actor with a given key.
field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
# Unique identifier for the actor or role.
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# The display tag for the actor (typically the actor's name).
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
# The role played by the actor in the media item.
field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } }
# The name of the tag or actor.
field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
# Unique identifier for the tag.
# A unique key associated with the actor's tag, used for internal identification.
field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
# The thumbnail of the actor
# The URL of the thumbnail image for the actor.
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
sig { params(filter: T.nilable(::String), id: T.nilable(::Integer), role: T.nilable(::String), tag: T.nilable(::String), tag_key: T.nilable(::String), thumb: T.nilable(::String)).void }
def initialize(filter: nil, id: nil, role: nil, tag: nil, tag_key: nil, thumb: nil)
sig { params(filter: ::String, id: ::Integer, tag: ::String, role: T.nilable(::String), tag_key: T.nilable(::String), thumb: T.nilable(::String)).void }
def initialize(filter: nil, id: nil, tag: nil, role: nil, tag_key: nil, thumb: nil)
@filter = filter
@id = id
@role = role
@tag = tag
@role = role
@tag_key = tag_key
@thumb = thumb
end

View File

@@ -7,15 +7,15 @@
module PlexRubySDK
module Operations
# The display tag for the similar item, typically the title.
class Similar < ::Crystalline::FieldAugmented
extend T::Sig
# The filter string for similar items.
field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
# The unique similar item identifier.
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# The tag or title of the similar content.
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }

View File

@@ -11,87 +11,111 @@ module PlexRubySDK
class Stream < ::Crystalline::FieldAugmented
extend T::Sig
# Codec used by the stream
# Codec used by the stream.
field :codec, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codec') } }
# Display title for the stream.
field :display_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('displayTitle') } }
# Extended display title for the stream.
field :extended_display_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('extendedDisplayTitle') } }
# Unique stream identifier.
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# The index of the stream
# Index of the stream.
field :index, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
# Type of stream (1 = video, 2 = audio, 3 = subtitle)
# Stream type (1=video, 2=audio, 3=subtitle).
field :stream_type, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType') } }
# The audio channel layout
# Audio channel layout.
field :audio_channel_layout, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannelLayout') } }
# The bit depth of the video stream
# Bit depth of the video stream.
field :bit_depth, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitDepth') } }
# The bitrate of the stream in kbps
# Bitrate of the stream.
field :bitrate, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitrate') } }
# Indicates if the subtitle stream can auto-sync
# Indicates if the stream can auto-sync.
field :can_auto_sync, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('canAutoSync') } }
# Number of audio channels (for audio streams)
# Number of audio channels (for audio streams).
field :channels, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('channels') } }
# The chroma location of the video stream
# Chroma sample location.
field :chroma_location, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaLocation') } }
# The chroma subsampling format
# Chroma subsampling format.
field :chroma_subsampling, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaSubsampling') } }
field :closed_captions, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('closedCaptions') } }
# The coded height of the video stream
# Coded video height.
field :coded_height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codedHeight') } }
# The coded width of the video stream
# Coded video width.
field :coded_width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codedWidth') } }
# The color primaries of the video stream
# Color primaries used.
field :color_primaries, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorPrimaries') } }
# The color range of the video stream
# Color range (e.g., tv).
field :color_range, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorRange') } }
# The color space of the video stream
# Color space.
field :color_space, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorSpace') } }
# The transfer characteristics (TRC) of the video stream
# Color transfer characteristics.
field :color_trc, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('colorTrc') } }
# Indicates if this is the default stream
# Indicates if this stream is default.
field :default, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('default') } }
# Display title of the stream
field :display_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('displayTitle') } }
# Dolby Vision BL compatibility ID.
field :dovibl_compat_id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('DOVIBLCompatID') } }
# Indicates if Dolby Vision BL is present.
field :dovibl_present, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('DOVIBLPresent') } }
# Indicates if Dolby Vision EL is present.
field :doviel_present, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('DOVIELPresent') } }
# Dolby Vision level.
field :dovi_level, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('DOVILevel') } }
# Indicates if Dolby Vision is present.
field :dovi_present, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('DOVIPresent') } }
# Dolby Vision profile.
field :dovi_profile, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('DOVIProfile') } }
# Indicates if Dolby Vision RPU is present.
field :dovirpu_present, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('DOVIRPUPresent') } }
# Dolby Vision version.
field :dovi_version, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('DOVIVersion') } }
# Indicates if the stream is a dub.
field :dub, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('dub') } }
field :embedded_in_video, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('embeddedInVideo') } }
# Extended display title of the stream
field :extended_display_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('extendedDisplayTitle') } }
# The frame rate of the video stream
field :frame_rate, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('frameRate') } }
# Indicates if the stream has a scaling matrix
field :has_scaling_matrix, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasScalingMatrix') } }
field :forced, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('forced') } }
# Frame rate of the stream.
field :frame_rate, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('frameRate') } }
field :has_scaling_matrix, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasScalingMatrix') } }
# Indicates whether header compression is enabled.
field :header_compression, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('headerCompression') } }
# Indicates if the stream is for the hearing impaired.
field :hearing_impaired, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hearingImpaired') } }
# The height of the video stream
# Height of the video stream.
field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
# The language of the stream (for audio/subtitle streams)
# Language of the stream.
field :language, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('language') } }
# Language code of the stream
# ISO language code.
field :language_code, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageCode') } }
# Language tag of the stream
# Language tag (e.g., en).
field :language_tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageTag') } }
# The level of the video codec
# Video level.
field :level, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('level') } }
# The profile of the video codec
# Indicates if this is the original stream.
field :original, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('original') } }
# Video profile.
field :profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('profile') } }
# Number of reference frames
# Number of reference frames.
field :ref_frames, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('refFrames') } }
# Sampling rate of the audio stream in Hz
# Sampling rate for the audio stream.
field :sampling_rate, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('samplingRate') } }
# The scan type (progressive or interlaced)
field :scan_type, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('scanType') } }
# Indicates if the stream is selected
# Indicates if this stream is selected (applicable for audio streams).
field :selected, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('selected') } }
# The identifier of the video stream
field :stream_identifier, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamIdentifier') } }
# Title of the subtitle track (for subtitle streams)
# Optional title for the stream (e.g., language variant).
field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
# The width of the video stream
# Width of the video stream.
field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
sig { params(codec: ::String, id: ::Integer, index: ::Integer, stream_type: ::Integer, audio_channel_layout: T.nilable(::String), bit_depth: T.nilable(::Integer), bitrate: T.nilable(::Integer), can_auto_sync: T.nilable(T::Boolean), channels: T.nilable(::Integer), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), closed_captions: T.nilable(T::Boolean), coded_height: T.nilable(::Integer), coded_width: T.nilable(::Integer), color_primaries: T.nilable(::String), color_range: T.nilable(::String), color_space: T.nilable(::String), color_trc: T.nilable(::String), default: T.nilable(T::Boolean), display_title: T.nilable(::String), embedded_in_video: T.nilable(::String), extended_display_title: T.nilable(::String), frame_rate: T.nilable(::Float), has_scaling_matrix: T.nilable(T::Boolean), hearing_impaired: T.nilable(T::Boolean), height: T.nilable(::Integer), language: T.nilable(::String), language_code: T.nilable(::String), language_tag: T.nilable(::String), level: T.nilable(::Integer), profile: T.nilable(::String), ref_frames: T.nilable(::Integer), sampling_rate: T.nilable(::Integer), scan_type: T.nilable(::String), selected: T.nilable(T::Boolean), stream_identifier: T.nilable(::String), title: T.nilable(::String), width: T.nilable(::Integer)).void }
def initialize(codec: nil, id: nil, index: nil, stream_type: nil, audio_channel_layout: nil, bit_depth: nil, bitrate: nil, can_auto_sync: nil, channels: nil, chroma_location: nil, chroma_subsampling: nil, closed_captions: nil, coded_height: nil, coded_width: nil, color_primaries: nil, color_range: nil, color_space: nil, color_trc: nil, default: nil, display_title: nil, embedded_in_video: nil, extended_display_title: nil, frame_rate: nil, has_scaling_matrix: nil, hearing_impaired: nil, height: nil, language: nil, language_code: nil, language_tag: nil, level: nil, profile: nil, ref_frames: nil, sampling_rate: nil, scan_type: nil, selected: nil, stream_identifier: nil, title: nil, width: nil)
sig { params(codec: ::String, display_title: ::String, extended_display_title: ::String, id: ::Integer, index: ::Integer, stream_type: ::Integer, audio_channel_layout: T.nilable(::String), bit_depth: T.nilable(::Integer), bitrate: T.nilable(::Integer), can_auto_sync: T.nilable(T::Boolean), channels: T.nilable(::Integer), chroma_location: T.nilable(::String), chroma_subsampling: T.nilable(::String), closed_captions: T.nilable(T::Boolean), coded_height: T.nilable(::Integer), coded_width: T.nilable(::Integer), color_primaries: T.nilable(::String), color_range: T.nilable(::String), color_space: T.nilable(::String), color_trc: T.nilable(::String), default: T.nilable(T::Boolean), dovibl_compat_id: T.nilable(::Integer), dovibl_present: T.nilable(T::Boolean), doviel_present: T.nilable(T::Boolean), dovi_level: T.nilable(::Integer), dovi_present: T.nilable(T::Boolean), dovi_profile: T.nilable(::Integer), dovirpu_present: T.nilable(T::Boolean), dovi_version: T.nilable(::String), dub: T.nilable(T::Boolean), embedded_in_video: T.nilable(::String), forced: T.nilable(T::Boolean), frame_rate: T.nilable(::Float), has_scaling_matrix: T.nilable(T::Boolean), header_compression: T.nilable(T::Boolean), hearing_impaired: T.nilable(T::Boolean), height: T.nilable(::Integer), language: T.nilable(::String), language_code: T.nilable(::String), language_tag: T.nilable(::String), level: T.nilable(::Integer), original: T.nilable(T::Boolean), profile: T.nilable(::String), ref_frames: T.nilable(::Integer), sampling_rate: T.nilable(::Integer), scan_type: T.nilable(::String), selected: T.nilable(T::Boolean), title: T.nilable(::String), width: T.nilable(::Integer)).void }
def initialize(codec: nil, display_title: nil, extended_display_title: nil, id: nil, index: nil, stream_type: nil, audio_channel_layout: nil, bit_depth: nil, bitrate: nil, can_auto_sync: nil, channels: nil, chroma_location: nil, chroma_subsampling: nil, closed_captions: nil, coded_height: nil, coded_width: nil, color_primaries: nil, color_range: nil, color_space: nil, color_trc: nil, default: nil, dovibl_compat_id: nil, dovibl_present: nil, doviel_present: nil, dovi_level: nil, dovi_present: nil, dovi_profile: nil, dovirpu_present: nil, dovi_version: nil, dub: nil, embedded_in_video: nil, forced: nil, frame_rate: nil, has_scaling_matrix: nil, header_compression: nil, hearing_impaired: nil, height: nil, language: nil, language_code: nil, language_tag: nil, level: nil, original: nil, profile: nil, ref_frames: nil, sampling_rate: nil, scan_type: nil, selected: nil, title: nil, width: nil)
@codec = codec
@display_title = display_title
@extended_display_title = extended_display_title
@id = id
@index = index
@stream_type = stream_type
@@ -110,23 +134,32 @@ module PlexRubySDK
@color_space = color_space
@color_trc = color_trc
@default = default
@display_title = display_title
@dovibl_compat_id = dovibl_compat_id
@dovibl_present = dovibl_present
@doviel_present = doviel_present
@dovi_level = dovi_level
@dovi_present = dovi_present
@dovi_profile = dovi_profile
@dovirpu_present = dovirpu_present
@dovi_version = dovi_version
@dub = dub
@embedded_in_video = embedded_in_video
@extended_display_title = extended_display_title
@forced = forced
@frame_rate = frame_rate
@has_scaling_matrix = has_scaling_matrix
@header_compression = header_compression
@hearing_impaired = hearing_impaired
@height = height
@language = language
@language_code = language_code
@language_tag = language_tag
@level = level
@original = original
@profile = profile
@ref_frames = ref_frames
@sampling_rate = sampling_rate
@scan_type = scan_type
@selected = selected
@stream_identifier = stream_identifier
@title = title
@width = width
end

View File

@@ -11,13 +11,22 @@ module PlexRubySDK
class Writer < ::Crystalline::FieldAugmented
extend T::Sig
field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
# The filter string used to query this writer.
field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
# Unique identifier for the writer.
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# The role of Writer
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
# A unique key associated with the writers tag, used for internal identification.
field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
sig { params(tag: T.nilable(::String)).void }
def initialize(tag: nil)
sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: T.nilable(::String)).void }
def initialize(filter: nil, id: nil, tag: nil, tag_key: nil)
@filter = filter
@id = id
@tag = tag
@tag_key = tag_key
end
end
end