plex_ruby_sdk 0.15.0 → 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/plex_ruby_sdk/models/operations/flattenseasons.rb +1 -0
- data/lib/plex_ruby_sdk/models/operations/get_actors_library_mediacontainer.rb +6 -6
- data/lib/plex_ruby_sdk/models/operations/get_library_items_collection.rb +3 -3
- data/lib/plex_ruby_sdk/models/operations/get_library_items_country.rb +10 -4
- data/lib/plex_ruby_sdk/models/operations/get_library_items_director.rb +12 -4
- data/lib/plex_ruby_sdk/models/operations/get_library_items_filter.rb +2 -6
- data/lib/plex_ruby_sdk/models/operations/get_library_items_genre.rb +13 -6
- data/lib/plex_ruby_sdk/models/operations/{mediaguid.rb → get_library_items_guids.rb} +2 -3
- data/lib/plex_ruby_sdk/models/operations/get_library_items_hasthumbnail.rb +2 -1
- data/lib/plex_ruby_sdk/models/operations/get_library_items_image.rb +2 -2
- data/lib/plex_ruby_sdk/models/operations/{get_search_all_libraries_collection.rb → get_library_items_library_optimizedforstreaming.rb} +5 -9
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_response_type.rb +6 -41
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_type.rb +42 -14
- data/lib/plex_ruby_sdk/models/operations/get_library_items_location.rb +3 -3
- data/lib/plex_ruby_sdk/models/operations/get_library_items_media.rb +32 -25
- data/lib/plex_ruby_sdk/models/operations/get_library_items_mediacontainer.rb +39 -48
- data/lib/plex_ruby_sdk/models/operations/get_library_items_meta.rb +3 -3
- data/lib/plex_ruby_sdk/models/operations/get_library_items_metadata.rb +146 -141
- data/lib/plex_ruby_sdk/models/operations/get_library_items_optimizedforstreaming.rb +12 -4
- data/lib/plex_ruby_sdk/models/operations/{get_library_items_library_response_200_type.rb → get_library_items_optimizedforstreaming_1.rb} +3 -5
- data/lib/plex_ruby_sdk/models/operations/get_library_items_part.rb +36 -28
- data/lib/plex_ruby_sdk/models/operations/get_library_items_producer.rb +53 -0
- data/lib/plex_ruby_sdk/models/operations/get_library_items_role.rb +12 -18
- data/lib/plex_ruby_sdk/models/operations/get_library_items_similar.rb +41 -0
- data/lib/plex_ruby_sdk/models/operations/get_library_items_type.rb +14 -46
- data/lib/plex_ruby_sdk/models/operations/get_library_items_writer.rb +12 -4
- data/lib/plex_ruby_sdk/models/operations/get_library_sections_all_media.rb +2 -2
- data/lib/plex_ruby_sdk/models/operations/get_library_sections_all_mediacontainer.rb +10 -10
- data/lib/plex_ruby_sdk/models/operations/get_library_sections_all_metadata.rb +6 -6
- data/lib/plex_ruby_sdk/models/operations/{streamtype.rb → get_library_sections_all_optimizedforstreaming_library_1.rb} +4 -9
- data/lib/plex_ruby_sdk/models/operations/get_library_sections_all_part.rb +2 -2
- data/lib/plex_ruby_sdk/models/operations/get_library_sections_all_stream.rb +5 -5
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_attributes.rb +37 -0
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_chapter.rb +53 -0
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_extras.rb +33 -0
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_hasthumbnail.rb +1 -0
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_library_optimizedforstreaming.rb +1 -0
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_marker.rb +53 -0
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_media.rb +5 -3
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_mediacontainer.rb +10 -10
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_metadata.rb +22 -22
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_part.rb +16 -15
- data/lib/plex_ruby_sdk/models/operations/{metadatarating.rb → get_media_meta_data_ratings.rb} +3 -3
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_stream.rb +18 -18
- data/lib/plex_ruby_sdk/models/operations/get_recently_added_metadata.rb +18 -18
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_country.rb +10 -4
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_director.rb +12 -4
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_directory.rb +81 -0
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_flattenseasons.rb +1 -0
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_genre.rb +13 -6
- data/lib/plex_ruby_sdk/models/operations/{get_search_all_libraries_mediaguid.rb → get_search_all_libraries_guids.rb} +2 -3
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_hasthumbnail.rb +2 -1
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_library_optimizedforstreaming.rb +29 -0
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_location.rb +3 -3
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_media.rb +32 -25
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_mediacontainer.rb +32 -4
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_metadata.rb +128 -147
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_optimizedforstreaming.rb +12 -4
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_optimizedforstreaming_1.rb +20 -0
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_optimizedforstreaming_library_1.rb +20 -0
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_part.rb +36 -28
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_role.rb +12 -18
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_showordering.rb +6 -5
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_writer.rb +12 -4
- data/lib/plex_ruby_sdk/models/operations/searchresult.rb +10 -6
- data/lib/plex_ruby_sdk/models/operations/showordering.rb +6 -5
- data/lib/plex_ruby_sdk/models/operations/stream.rb +5 -5
- data/lib/plex_ruby_sdk/models/operations.rb +18 -24
- data/lib/plex_ruby_sdk/sdkconfiguration.rb +3 -3
- metadata +18 -24
- data/lib/plex_ruby_sdk/models/operations/enablecreditsmarkergeneration.rb +0 -20
- data/lib/plex_ruby_sdk/models/operations/episodesort.rb +0 -21
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_activedirection.rb +0 -21
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_defaultdirection.rb +0 -21
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_field.rb +0 -45
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_fieldtype.rb +0 -37
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_filter.rb +0 -49
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_operator.rb +0 -37
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_sort.rb +0 -63
- data/lib/plex_ruby_sdk/models/operations/get_library_items_stream.rb +0 -181
- data/lib/plex_ruby_sdk/models/operations/get_library_sections_all_streamtype.rb +0 -25
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_streamtype.rb +0 -25
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_enablecreditsmarkergeneration.rb +0 -20
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_episodesort.rb +0 -21
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_metadatarating.rb +0 -41
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_stream.rb +0 -181
@@ -13,66 +13,74 @@ module PlexRubySDK
|
|
13
13
|
extend T::Sig
|
14
14
|
include Crystalline::MetadataFields
|
15
15
|
|
16
|
-
#
|
17
|
-
#
|
18
|
-
field :container, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
|
19
|
-
|
20
|
-
field :file, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('file') } }
|
21
|
-
|
16
|
+
# Unique part identifier.
|
22
17
|
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
|
23
|
-
|
24
|
-
field :
|
25
|
-
|
26
|
-
field :size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
|
27
|
-
|
18
|
+
# Indicates if the part is accessible.
|
19
|
+
field :accessible, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('accessible') } }
|
20
|
+
# The audio profile used for the media (e.g., DTS, Dolby Digital, etc.).
|
28
21
|
field :audio_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioProfile') } }
|
29
|
-
|
22
|
+
# Container format of the part.
|
23
|
+
field :container, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
|
24
|
+
# Duration of the part in milliseconds.
|
30
25
|
field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
|
26
|
+
# Indicates if the part exists.
|
27
|
+
field :exists, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('exists') } }
|
28
|
+
# File path for the part.
|
29
|
+
field :file, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('file') } }
|
31
30
|
|
32
31
|
field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
|
33
32
|
|
34
33
|
field :has_thumbnail, T.nilable(Models::Operations::GetLibraryItemsHasThumbnail), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasThumbnail'), 'decoder': Utils.enum_from_string(Models::Operations::GetLibraryItemsHasThumbnail, true) } }
|
35
34
|
|
36
35
|
field :indexes, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('indexes') } }
|
36
|
+
# Key to access this part.
|
37
|
+
field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
|
38
|
+
# Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
|
39
|
+
#
|
40
|
+
field :optimized_for_streaming, T.nilable(T.any(Models::Operations::GetLibraryItemsOptimizedForStreaming1, T::Boolean)), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
|
37
41
|
|
38
|
-
field :
|
39
|
-
|
40
|
-
field :
|
41
|
-
|
42
|
+
field :packet_length, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('packetLength') } }
|
43
|
+
# File size in bytes.
|
44
|
+
field :size, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
|
45
|
+
# Video profile for the part.
|
42
46
|
field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
|
43
47
|
|
44
48
|
|
45
|
-
sig { params(
|
46
|
-
def initialize(
|
47
|
-
@container = container
|
48
|
-
@file = file
|
49
|
+
sig { params(id: ::Integer, accessible: T.nilable(T::Boolean), audio_profile: T.nilable(::String), container: T.nilable(::String), duration: T.nilable(::Integer), exists: T.nilable(T::Boolean), file: T.nilable(::String), has64bit_offsets: T.nilable(T::Boolean), has_thumbnail: T.nilable(Models::Operations::GetLibraryItemsHasThumbnail), indexes: T.nilable(::String), key: T.nilable(::String), optimized_for_streaming: T.nilable(T.any(Models::Operations::GetLibraryItemsOptimizedForStreaming1, T::Boolean)), packet_length: T.nilable(::Integer), size: T.nilable(::Integer), video_profile: T.nilable(::String)).void }
|
50
|
+
def initialize(id: nil, accessible: nil, audio_profile: nil, container: nil, duration: nil, exists: nil, file: nil, has64bit_offsets: nil, has_thumbnail: nil, indexes: nil, key: nil, optimized_for_streaming: nil, packet_length: nil, size: nil, video_profile: nil)
|
49
51
|
@id = id
|
50
|
-
@
|
51
|
-
@size = size
|
52
|
+
@accessible = accessible
|
52
53
|
@audio_profile = audio_profile
|
54
|
+
@container = container
|
53
55
|
@duration = duration
|
56
|
+
@exists = exists
|
57
|
+
@file = file
|
54
58
|
@has64bit_offsets = has64bit_offsets
|
55
59
|
@has_thumbnail = has_thumbnail
|
56
60
|
@indexes = indexes
|
61
|
+
@key = key
|
57
62
|
@optimized_for_streaming = optimized_for_streaming
|
58
|
-
@
|
63
|
+
@packet_length = packet_length
|
64
|
+
@size = size
|
59
65
|
@video_profile = video_profile
|
60
66
|
end
|
61
67
|
|
62
68
|
def ==(other)
|
63
69
|
return false unless other.is_a? self.class
|
64
|
-
return false unless @container == other.container
|
65
|
-
return false unless @file == other.file
|
66
70
|
return false unless @id == other.id
|
67
|
-
return false unless @
|
68
|
-
return false unless @size == other.size
|
71
|
+
return false unless @accessible == other.accessible
|
69
72
|
return false unless @audio_profile == other.audio_profile
|
73
|
+
return false unless @container == other.container
|
70
74
|
return false unless @duration == other.duration
|
75
|
+
return false unless @exists == other.exists
|
76
|
+
return false unless @file == other.file
|
71
77
|
return false unless @has64bit_offsets == other.has64bit_offsets
|
72
78
|
return false unless @has_thumbnail == other.has_thumbnail
|
73
79
|
return false unless @indexes == other.indexes
|
80
|
+
return false unless @key == other.key
|
74
81
|
return false unless @optimized_for_streaming == other.optimized_for_streaming
|
75
|
-
return false unless @
|
82
|
+
return false unless @packet_length == other.packet_length
|
83
|
+
return false unless @size == other.size
|
76
84
|
return false unless @video_profile == other.video_profile
|
77
85
|
true
|
78
86
|
end
|
@@ -0,0 +1,53 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module PlexRubySDK
|
8
|
+
module Models
|
9
|
+
module Operations
|
10
|
+
|
11
|
+
|
12
|
+
class GetLibraryItemsProducer
|
13
|
+
extend T::Sig
|
14
|
+
include Crystalline::MetadataFields
|
15
|
+
|
16
|
+
# The filter string for the role.
|
17
|
+
field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
|
18
|
+
# The unique role identifier.
|
19
|
+
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
|
20
|
+
# The actor's name.
|
21
|
+
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
|
22
|
+
# A key associated with the actor tag.
|
23
|
+
field :tag_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
|
24
|
+
# The character name or role.
|
25
|
+
field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } }
|
26
|
+
# URL for the role thumbnail image.
|
27
|
+
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
|
28
|
+
|
29
|
+
|
30
|
+
sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: ::String, role: T.nilable(::String), thumb: T.nilable(::String)).void }
|
31
|
+
def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, role: nil, thumb: nil)
|
32
|
+
@filter = filter
|
33
|
+
@id = id
|
34
|
+
@tag = tag
|
35
|
+
@tag_key = tag_key
|
36
|
+
@role = role
|
37
|
+
@thumb = thumb
|
38
|
+
end
|
39
|
+
|
40
|
+
def ==(other)
|
41
|
+
return false unless other.is_a? self.class
|
42
|
+
return false unless @filter == other.filter
|
43
|
+
return false unless @id == other.id
|
44
|
+
return false unless @tag == other.tag
|
45
|
+
return false unless @tag_key == other.tag_key
|
46
|
+
return false unless @role == other.role
|
47
|
+
return false unless @thumb == other.thumb
|
48
|
+
true
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
@@ -13,37 +13,31 @@ module PlexRubySDK
|
|
13
13
|
extend T::Sig
|
14
14
|
include Crystalline::MetadataFields
|
15
15
|
|
16
|
-
# The
|
17
|
-
|
18
|
-
#
|
19
|
-
field :id,
|
20
|
-
# The
|
16
|
+
# The unique identifier for the role.
|
17
|
+
# NOTE: This is different for each Plex server and is not globally unique.
|
18
|
+
#
|
19
|
+
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
|
20
|
+
# The display tag for the actor (typically the actor's name).
|
21
|
+
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
|
22
|
+
# The role played by the actor in the media item.
|
21
23
|
field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } }
|
22
|
-
# The
|
23
|
-
field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
|
24
|
-
# Unique identifier for the tag.
|
25
|
-
field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
|
26
|
-
# The thumbnail of the actor
|
24
|
+
# The absolute URL of the thumbnail image for the actor.
|
27
25
|
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
|
28
26
|
|
29
27
|
|
30
|
-
sig { params(
|
31
|
-
def initialize(
|
32
|
-
@filter = filter
|
28
|
+
sig { params(id: ::Integer, tag: ::String, role: T.nilable(::String), thumb: T.nilable(::String)).void }
|
29
|
+
def initialize(id: nil, tag: nil, role: nil, thumb: nil)
|
33
30
|
@id = id
|
34
|
-
@role = role
|
35
31
|
@tag = tag
|
36
|
-
@
|
32
|
+
@role = role
|
37
33
|
@thumb = thumb
|
38
34
|
end
|
39
35
|
|
40
36
|
def ==(other)
|
41
37
|
return false unless other.is_a? self.class
|
42
|
-
return false unless @filter == other.filter
|
43
38
|
return false unless @id == other.id
|
44
|
-
return false unless @role == other.role
|
45
39
|
return false unless @tag == other.tag
|
46
|
-
return false unless @
|
40
|
+
return false unless @role == other.role
|
47
41
|
return false unless @thumb == other.thumb
|
48
42
|
true
|
49
43
|
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module PlexRubySDK
|
8
|
+
module Models
|
9
|
+
module Operations
|
10
|
+
|
11
|
+
|
12
|
+
class GetLibraryItemsSimilar
|
13
|
+
extend T::Sig
|
14
|
+
include Crystalline::MetadataFields
|
15
|
+
|
16
|
+
# The filter string for similar items.
|
17
|
+
field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
|
18
|
+
# The unique similar item identifier.
|
19
|
+
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
|
20
|
+
# The tag or title of the similar content.
|
21
|
+
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
|
22
|
+
|
23
|
+
|
24
|
+
sig { params(filter: ::String, id: ::Integer, tag: ::String).void }
|
25
|
+
def initialize(filter: nil, id: nil, tag: nil)
|
26
|
+
@filter = filter
|
27
|
+
@id = id
|
28
|
+
@tag = tag
|
29
|
+
end
|
30
|
+
|
31
|
+
def ==(other)
|
32
|
+
return false unless other.is_a? self.class
|
33
|
+
return false unless @filter == other.filter
|
34
|
+
return false unless @id == other.id
|
35
|
+
return false unless @tag == other.tag
|
36
|
+
true
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
@@ -8,52 +8,20 @@ module PlexRubySDK
|
|
8
8
|
module Models
|
9
9
|
module Operations
|
10
10
|
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
field :field, T.nilable(T::Array[Models::Operations::GetLibraryItemsField]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Field') } }
|
26
|
-
|
27
|
-
field :filter, T.nilable(T::Array[Models::Operations::GetLibraryItemsFilter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Filter') } }
|
28
|
-
|
29
|
-
field :sort, T.nilable(T::Array[Models::Operations::GetLibraryItemsSort]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Sort') } }
|
30
|
-
|
31
|
-
field :subtype, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('subtype') } }
|
32
|
-
|
33
|
-
|
34
|
-
sig { params(active: T::Boolean, key: ::String, title: ::String, type: ::String, field: T.nilable(T::Array[Models::Operations::GetLibraryItemsField]), filter: T.nilable(T::Array[Models::Operations::GetLibraryItemsFilter]), sort: T.nilable(T::Array[Models::Operations::GetLibraryItemsSort]), subtype: T.nilable(::String)).void }
|
35
|
-
def initialize(active: nil, key: nil, title: nil, type: nil, field: nil, filter: nil, sort: nil, subtype: nil)
|
36
|
-
@active = active
|
37
|
-
@key = key
|
38
|
-
@title = title
|
39
|
-
@type = type
|
40
|
-
@field = field
|
41
|
-
@filter = filter
|
42
|
-
@sort = sort
|
43
|
-
@subtype = subtype
|
44
|
-
end
|
45
|
-
|
46
|
-
def ==(other)
|
47
|
-
return false unless other.is_a? self.class
|
48
|
-
return false unless @active == other.active
|
49
|
-
return false unless @key == other.key
|
50
|
-
return false unless @title == other.title
|
51
|
-
return false unless @type == other.type
|
52
|
-
return false unless @field == other.field
|
53
|
-
return false unless @filter == other.filter
|
54
|
-
return false unless @sort == other.sort
|
55
|
-
return false unless @subtype == other.subtype
|
56
|
-
true
|
11
|
+
# GetLibraryItemsType - The type of media content in the Plex library. This can represent videos, music, or photos.
|
12
|
+
#
|
13
|
+
class GetLibraryItemsType < T::Enum
|
14
|
+
enums do
|
15
|
+
MOVIE = new('movie')
|
16
|
+
TV_SHOW = new('show')
|
17
|
+
SEASON = new('season')
|
18
|
+
EPISODE = new('episode')
|
19
|
+
ARTIST = new('artist')
|
20
|
+
ALBUM = new('album')
|
21
|
+
TRACK = new('track')
|
22
|
+
PHOTO_ALBUM = new('photoalbum')
|
23
|
+
PHOTO = new('photo')
|
24
|
+
COLLECTION = new('collection')
|
57
25
|
end
|
58
26
|
end
|
59
27
|
end
|
@@ -13,18 +13,26 @@ module PlexRubySDK
|
|
13
13
|
extend T::Sig
|
14
14
|
include Crystalline::MetadataFields
|
15
15
|
|
16
|
+
# Unique identifier for the writer.
|
17
|
+
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
|
18
|
+
# The role of Writer
|
19
|
+
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
|
20
|
+
# The absolute URL of the thumbnail image for the writer.
|
21
|
+
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
|
16
22
|
|
17
|
-
field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
|
18
23
|
|
19
|
-
|
20
|
-
|
21
|
-
|
24
|
+
sig { params(id: ::Integer, tag: ::String, thumb: T.nilable(::String)).void }
|
25
|
+
def initialize(id: nil, tag: nil, thumb: nil)
|
26
|
+
@id = id
|
22
27
|
@tag = tag
|
28
|
+
@thumb = thumb
|
23
29
|
end
|
24
30
|
|
25
31
|
def ==(other)
|
26
32
|
return false unless other.is_a? self.class
|
33
|
+
return false unless @id == other.id
|
27
34
|
return false unless @tag == other.tag
|
35
|
+
return false unless @thumb == other.thumb
|
28
36
|
true
|
29
37
|
end
|
30
38
|
end
|
@@ -38,7 +38,7 @@ module PlexRubySDK
|
|
38
38
|
# Video height in pixels.
|
39
39
|
field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
|
40
40
|
# Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
|
41
|
-
field :optimized_for_streaming, T.nilable(T.any(Models::Operations::
|
41
|
+
field :optimized_for_streaming, T.nilable(T.any(Models::Operations::GetLibrarySectionsAllOptimizedForStreaming1, T::Boolean)), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
|
42
42
|
# An array of parts for this media item.
|
43
43
|
field :part, T.nilable(T::Array[Models::Operations::GetLibrarySectionsAllPart]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
|
44
44
|
# Video codec used.
|
@@ -54,7 +54,7 @@ module PlexRubySDK
|
|
54
54
|
field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
|
55
55
|
|
56
56
|
|
57
|
-
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(T.any(Models::Operations::
|
57
|
+
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(T.any(Models::Operations::GetLibrarySectionsAllOptimizedForStreaming1, T::Boolean)), part: T.nilable(T::Array[Models::Operations::GetLibrarySectionsAllPart]), 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 }
|
58
58
|
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)
|
59
59
|
@id = id
|
60
60
|
@aspect_ratio = aspect_ratio
|
@@ -21,10 +21,6 @@ module PlexRubySDK
|
|
21
21
|
field :content, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('content') } }
|
22
22
|
# An plugin identifier for the media container.
|
23
23
|
field :identifier, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
|
24
|
-
# The unique identifier for the library section.
|
25
|
-
field :library_section_id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
|
26
|
-
# The title of the library section.
|
27
|
-
field :library_section_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
|
28
24
|
# The prefix used for media tag resource paths.
|
29
25
|
field :media_tag_prefix, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagPrefix') } }
|
30
26
|
# The version number for media tags.
|
@@ -45,6 +41,10 @@ module PlexRubySDK
|
|
45
41
|
field :total_size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('totalSize') } }
|
46
42
|
# Identifier for the view group layout.
|
47
43
|
field :view_group, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewGroup') } }
|
44
|
+
# The unique identifier for the library section.
|
45
|
+
field :library_section_id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
|
46
|
+
# The title of the library section.
|
47
|
+
field :library_section_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
|
48
48
|
# The universally unique identifier for the library section.
|
49
49
|
field :library_section_uuid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionUUID') } }
|
50
50
|
# The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.
|
@@ -54,14 +54,12 @@ module PlexRubySDK
|
|
54
54
|
field :metadata, T.nilable(T::Array[Models::Operations::GetLibrarySectionsAllMetadata]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Metadata') } }
|
55
55
|
|
56
56
|
|
57
|
-
sig { params(allow_sync: T::Boolean, art: ::String, content: ::String, identifier: ::String,
|
58
|
-
def initialize(allow_sync: nil, art: nil, content: nil, identifier: nil,
|
57
|
+
sig { params(allow_sync: T::Boolean, art: ::String, content: ::String, identifier: ::String, media_tag_prefix: ::String, media_tag_version: ::Integer, nocache: T::Boolean, offset: ::Integer, size: ::Integer, thumb: ::String, title1: ::String, title2: ::String, total_size: ::Integer, view_group: ::String, library_section_id: T.nilable(::Integer), library_section_title: T.nilable(::String), library_section_uuid: T.nilable(::String), meta: T.nilable(Models::Operations::GetLibrarySectionsAllMeta), metadata: T.nilable(T::Array[Models::Operations::GetLibrarySectionsAllMetadata])).void }
|
58
|
+
def initialize(allow_sync: nil, art: nil, content: nil, identifier: nil, media_tag_prefix: nil, media_tag_version: nil, nocache: nil, offset: nil, size: nil, thumb: nil, title1: nil, title2: nil, total_size: nil, view_group: nil, library_section_id: nil, library_section_title: nil, library_section_uuid: nil, meta: nil, metadata: nil)
|
59
59
|
@allow_sync = allow_sync
|
60
60
|
@art = art
|
61
61
|
@content = content
|
62
62
|
@identifier = identifier
|
63
|
-
@library_section_id = library_section_id
|
64
|
-
@library_section_title = library_section_title
|
65
63
|
@media_tag_prefix = media_tag_prefix
|
66
64
|
@media_tag_version = media_tag_version
|
67
65
|
@nocache = nocache
|
@@ -72,6 +70,8 @@ module PlexRubySDK
|
|
72
70
|
@title2 = title2
|
73
71
|
@total_size = total_size
|
74
72
|
@view_group = view_group
|
73
|
+
@library_section_id = library_section_id
|
74
|
+
@library_section_title = library_section_title
|
75
75
|
@library_section_uuid = library_section_uuid
|
76
76
|
@meta = meta
|
77
77
|
@metadata = metadata
|
@@ -83,8 +83,6 @@ module PlexRubySDK
|
|
83
83
|
return false unless @art == other.art
|
84
84
|
return false unless @content == other.content
|
85
85
|
return false unless @identifier == other.identifier
|
86
|
-
return false unless @library_section_id == other.library_section_id
|
87
|
-
return false unless @library_section_title == other.library_section_title
|
88
86
|
return false unless @media_tag_prefix == other.media_tag_prefix
|
89
87
|
return false unless @media_tag_version == other.media_tag_version
|
90
88
|
return false unless @nocache == other.nocache
|
@@ -95,6 +93,8 @@ module PlexRubySDK
|
|
95
93
|
return false unless @title2 == other.title2
|
96
94
|
return false unless @total_size == other.total_size
|
97
95
|
return false unless @view_group == other.view_group
|
96
|
+
return false unless @library_section_id == other.library_section_id
|
97
|
+
return false unless @library_section_title == other.library_section_title
|
98
98
|
return false unless @library_section_uuid == other.library_section_uuid
|
99
99
|
return false unless @meta == other.meta
|
100
100
|
return false unless @metadata == other.metadata
|
@@ -30,8 +30,6 @@ module PlexRubySDK
|
|
30
30
|
field :index, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
|
31
31
|
# The unique key for the media item.
|
32
32
|
field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
|
33
|
-
# The original release date of the media item.
|
34
|
-
field :originally_available_at, ::Date, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.date_from_iso_format(false) } }
|
35
33
|
# The critic rating for the media item.
|
36
34
|
field :rating, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rating') } }
|
37
35
|
# 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.
|
@@ -100,6 +98,8 @@ module PlexRubySDK
|
|
100
98
|
field :leaf_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('leafCount') } }
|
101
99
|
|
102
100
|
field :media, T.nilable(T::Array[Models::Operations::GetLibrarySectionsAllMedia]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Media') } }
|
101
|
+
# The original release date of the media item.
|
102
|
+
field :originally_available_at, T.nilable(::Date), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.date_from_iso_format(true) } }
|
103
103
|
# The original title of the media item (if different).
|
104
104
|
field :original_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originalTitle') } }
|
105
105
|
# The GUID of the parent media item.
|
@@ -144,8 +144,8 @@ module PlexRubySDK
|
|
144
144
|
field :year, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } }
|
145
145
|
|
146
146
|
|
147
|
-
sig { params(added_at: ::Integer, art: ::String, audience_rating: ::Float, child_count: ::Integer, duration: ::Integer, guid: ::String, index: ::Integer, key: ::String,
|
148
|
-
def initialize(added_at: nil, art: nil, audience_rating: nil, child_count: nil, duration: nil, guid: nil, index: nil, key: nil,
|
147
|
+
sig { params(added_at: ::Integer, art: ::String, audience_rating: ::Float, child_count: ::Integer, duration: ::Integer, guid: ::String, index: ::Integer, key: ::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: Models::Operations::GetLibrarySectionsAllLibraryType, audience_rating_image: T.nilable(::String), chapter_source: T.nilable(::String), collection: T.nilable(T::Array[Models::Operations::GetLibrarySectionsAllCollection]), content_rating: T.nilable(::String), country: T.nilable(T::Array[Models::Operations::GetLibrarySectionsAllCountry]), created_at_accuracy: T.nilable(::String), created_at_tz_offset: T.nilable(::String), director: T.nilable(T::Array[Models::Operations::GetLibrarySectionsAllDirector]), genre: T.nilable(T::Array[Models::Operations::GetLibrarySectionsAllGenre]), 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[Models::Operations::GetLibrarySectionsAllGuids]), image: T.nilable(T::Array[Models::Operations::GetLibrarySectionsAllImage]), last_rated_at: T.nilable(::Integer), last_viewed_at: T.nilable(::Integer), leaf_count: T.nilable(::Integer), media: T.nilable(T::Array[Models::Operations::GetLibrarySectionsAllMedia]), 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), rating_image: T.nilable(::String), role: T.nilable(T::Array[Models::Operations::GetLibrarySectionsAllRole]), skip_count: T.nilable(::Integer), studio: T.nilable(::String), subtype: T.nilable(::String), ultra_blur_colors: T.nilable(Models::Operations::GetLibrarySectionsAllUltraBlurColors), 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[Models::Operations::GetLibrarySectionsAllWriter]), year: T.nilable(::Integer)).void }
|
148
|
+
def initialize(added_at: nil, art: nil, audience_rating: nil, child_count: nil, duration: nil, guid: nil, index: nil, key: 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, 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, 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)
|
149
149
|
@added_at = added_at
|
150
150
|
@art = art
|
151
151
|
@audience_rating = audience_rating
|
@@ -154,7 +154,6 @@ module PlexRubySDK
|
|
154
154
|
@guid = guid
|
155
155
|
@index = index
|
156
156
|
@key = key
|
157
|
-
@originally_available_at = originally_available_at
|
158
157
|
@rating = rating
|
159
158
|
@rating_key = rating_key
|
160
159
|
@season_count = season_count
|
@@ -189,6 +188,7 @@ module PlexRubySDK
|
|
189
188
|
@last_viewed_at = last_viewed_at
|
190
189
|
@leaf_count = leaf_count
|
191
190
|
@media = media
|
191
|
+
@originally_available_at = originally_available_at
|
192
192
|
@original_title = original_title
|
193
193
|
@parent_guid = parent_guid
|
194
194
|
@parent_index = parent_index
|
@@ -222,7 +222,6 @@ module PlexRubySDK
|
|
222
222
|
return false unless @guid == other.guid
|
223
223
|
return false unless @index == other.index
|
224
224
|
return false unless @key == other.key
|
225
|
-
return false unless @originally_available_at == other.originally_available_at
|
226
225
|
return false unless @rating == other.rating
|
227
226
|
return false unless @rating_key == other.rating_key
|
228
227
|
return false unless @season_count == other.season_count
|
@@ -257,6 +256,7 @@ module PlexRubySDK
|
|
257
256
|
return false unless @last_viewed_at == other.last_viewed_at
|
258
257
|
return false unless @leaf_count == other.leaf_count
|
259
258
|
return false unless @media == other.media
|
259
|
+
return false unless @originally_available_at == other.originally_available_at
|
260
260
|
return false unless @original_title == other.original_title
|
261
261
|
return false unless @parent_guid == other.parent_guid
|
262
262
|
return false unless @parent_index == other.parent_index
|
@@ -8,16 +8,11 @@ module PlexRubySDK
|
|
8
8
|
module Models
|
9
9
|
module Operations
|
10
10
|
|
11
|
-
|
12
|
-
|
13
|
-
# - 2 = audio
|
14
|
-
# - 3 = subtitle
|
15
|
-
#
|
16
|
-
class StreamType < T::Enum
|
11
|
+
|
12
|
+
class GetLibrarySectionsAllOptimizedForStreamingLibrary1 < T::Enum
|
17
13
|
enums do
|
18
|
-
|
19
|
-
|
20
|
-
SUBTITLE = new(3)
|
14
|
+
ZERO = new(0)
|
15
|
+
ONE = new(1)
|
21
16
|
end
|
22
17
|
end
|
23
18
|
end
|
@@ -38,7 +38,7 @@ module PlexRubySDK
|
|
38
38
|
|
39
39
|
field :indexes, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('indexes') } }
|
40
40
|
# Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
|
41
|
-
field :optimized_for_streaming, T.nilable(T.any(Models::Operations::
|
41
|
+
field :optimized_for_streaming, T.nilable(T.any(Models::Operations::GetLibrarySectionsAllOptimizedForStreamingLibrary1, T::Boolean)), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
|
42
42
|
|
43
43
|
field :packet_length, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('packetLength') } }
|
44
44
|
# An array of streams for this part.
|
@@ -47,7 +47,7 @@ module PlexRubySDK
|
|
47
47
|
field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
|
48
48
|
|
49
49
|
|
50
|
-
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(Models::Operations::GetLibrarySectionsAllHasThumbnail), indexes: T.nilable(::String), optimized_for_streaming: T.nilable(T.any(Models::Operations::
|
50
|
+
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(Models::Operations::GetLibrarySectionsAllHasThumbnail), indexes: T.nilable(::String), optimized_for_streaming: T.nilable(T.any(Models::Operations::GetLibrarySectionsAllOptimizedForStreamingLibrary1, T::Boolean)), packet_length: T.nilable(::Integer), stream: T.nilable(T::Array[Models::Operations::GetLibrarySectionsAllStream]), video_profile: T.nilable(::String)).void }
|
51
51
|
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)
|
52
52
|
@file = file
|
53
53
|
@id = id
|
@@ -22,11 +22,11 @@ module PlexRubySDK
|
|
22
22
|
# Unique stream identifier.
|
23
23
|
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
|
24
24
|
# Stream type:
|
25
|
-
# -
|
26
|
-
# -
|
27
|
-
# -
|
25
|
+
# - VIDEO = 1
|
26
|
+
# - AUDIO = 2
|
27
|
+
# - SUBTITLE = 3
|
28
28
|
#
|
29
|
-
field :stream_type,
|
29
|
+
field :stream_type, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType') } }
|
30
30
|
# Audio channel layout.
|
31
31
|
field :audio_channel_layout, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannelLayout') } }
|
32
32
|
# Bit depth of the video stream.
|
@@ -121,7 +121,7 @@ module PlexRubySDK
|
|
121
121
|
field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
|
122
122
|
|
123
123
|
|
124
|
-
sig { params(codec: ::String, display_title: ::String, extended_display_title: ::String, id: ::Integer, stream_type:
|
124
|
+
sig { params(codec: ::String, display_title: ::String, extended_display_title: ::String, id: ::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), format: T.nilable(::String), 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), index: T.nilable(::Integer), key: T.nilable(::String), 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 }
|
125
125
|
def initialize(codec: nil, display_title: nil, extended_display_title: nil, id: 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, format: nil, frame_rate: nil, has_scaling_matrix: nil, header_compression: nil, hearing_impaired: nil, height: nil, index: nil, key: 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)
|
126
126
|
@codec = codec
|
127
127
|
@display_title = display_title
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module PlexRubySDK
|
8
|
+
module Models
|
9
|
+
module Operations
|
10
|
+
|
11
|
+
# Attributes associated with the marker.
|
12
|
+
class GetMediaMetaDataAttributes
|
13
|
+
extend T::Sig
|
14
|
+
include Crystalline::MetadataFields
|
15
|
+
|
16
|
+
# The identifier for the attributes.
|
17
|
+
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
|
18
|
+
# The version number of the marker attributes.
|
19
|
+
field :version, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('version') } }
|
20
|
+
|
21
|
+
|
22
|
+
sig { params(id: ::Integer, version: T.nilable(::Integer)).void }
|
23
|
+
def initialize(id: nil, version: nil)
|
24
|
+
@id = id
|
25
|
+
@version = version
|
26
|
+
end
|
27
|
+
|
28
|
+
def ==(other)
|
29
|
+
return false unless other.is_a? self.class
|
30
|
+
return false unless @id == other.id
|
31
|
+
return false unless @version == other.version
|
32
|
+
true
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|