plex_ruby_sdk 0.11.1 → 0.12.1

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.
Files changed (24) hide show
  1. checksums.yaml +4 -4
  2. data/lib/plex_ruby_sdk/models/operations/attributes.rb +37 -0
  3. data/lib/plex_ruby_sdk/models/operations/chapter.rb +53 -0
  4. data/lib/plex_ruby_sdk/models/operations/extras.rb +33 -0
  5. data/lib/plex_ruby_sdk/models/operations/get_all_media_library_stream.rb +20 -8
  6. data/lib/plex_ruby_sdk/models/operations/get_all_media_library_streamtype.rb +25 -0
  7. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_country.rb +9 -9
  8. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_director.rb +8 -12
  9. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_genre.rb +5 -4
  10. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_image.rb +5 -5
  11. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_library_type.rb +22 -0
  12. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_metadata.rb +144 -95
  13. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_role.rb +11 -11
  14. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_stream.rb +20 -8
  15. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_streamtype.rb +25 -0
  16. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_type.rb +25 -0
  17. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_ultrablurcolors.rb +4 -4
  18. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_writer.rb +8 -12
  19. data/lib/plex_ruby_sdk/models/operations/marker.rb +53 -0
  20. data/lib/plex_ruby_sdk/models/operations/stream.rb +20 -8
  21. data/lib/plex_ruby_sdk/models/operations/streamtype.rb +25 -0
  22. data/lib/plex_ruby_sdk/models/operations.rb +9 -0
  23. data/lib/plex_ruby_sdk/sdkconfiguration.rb +3 -3
  24. metadata +11 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1ed4cde88cb2bbe8f15487f50442bb355a67f60acc78a64267cdd34f54dd3040
4
- data.tar.gz: 140dcb2114e04e8a7986575243bd79e5f8bd526f1512b8b05f527aab988b1309
3
+ metadata.gz: 97556b2066dba837c1cbfc20ab9b743e79f1ef6c4bc219c451dec89d0d689e63
4
+ data.tar.gz: 1d782c6cb9dce807852da84bc0c8207d62c3e98599be188b8f5650de19c0a039
5
5
  SHA512:
6
- metadata.gz: c825b0dbab1a903c783d927dbf2d9dc0385af5839194b6a88f173364013fb4d6df2c78ae20442b41adf9c9fde51e515a8d91a3b73f55064b591deff6d65b25f1
7
- data.tar.gz: 73fc2a9c757427a11c342ef25e3e01514f3ac61212e5db4e8bf6d61496d56547a7e54d248b6c4185423efe8d8abf256734e47fb57596a89f69ee674a695a5772
6
+ metadata.gz: b1b5b7b4e5e677220bd335ffc777052f54a608f2e93447b9916fc97c04e7c2ff6bdb0243739320b5ec8dc85b0dd939cbe71f7044bfb8a39653b8af2f683b2b04
7
+ data.tar.gz: 83915e6719cf5c9482c14c055173d744b869fc2207a81b98d9f14287ebe42de9ebe3e0caea9bdc51cbe970258fcabbf1d90b5447a4a5d382ef717fb4183a8223
@@ -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 Attributes
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
@@ -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
+ # The thumbnail for the chapter
12
+ class Chapter
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :end_time_offset, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('endTimeOffset') } }
18
+
19
+ field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
20
+
21
+ field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
22
+
23
+ field :index, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
24
+
25
+ field :start_time_offset, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('startTimeOffset') } }
26
+
27
+ field :thumb, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
28
+
29
+
30
+ sig { params(end_time_offset: ::Integer, filter: ::String, id: ::Integer, index: ::Integer, start_time_offset: ::Integer, thumb: ::String).void }
31
+ def initialize(end_time_offset: nil, filter: nil, id: nil, index: nil, start_time_offset: nil, thumb: nil)
32
+ @end_time_offset = end_time_offset
33
+ @filter = filter
34
+ @id = id
35
+ @index = index
36
+ @start_time_offset = start_time_offset
37
+ @thumb = thumb
38
+ end
39
+
40
+ def ==(other)
41
+ return false unless other.is_a? self.class
42
+ return false unless @end_time_offset == other.end_time_offset
43
+ return false unless @filter == other.filter
44
+ return false unless @id == other.id
45
+ return false unless @index == other.index
46
+ return false unless @start_time_offset == other.start_time_offset
47
+ return false unless @thumb == other.thumb
48
+ true
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,33 @@
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 Extras
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # The size of the extras.
17
+ field :size, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
18
+
19
+
20
+ sig { params(size: T.nilable(::Integer)).void }
21
+ def initialize(size: nil)
22
+ @size = size
23
+ end
24
+
25
+ def ==(other)
26
+ return false unless other.is_a? self.class
27
+ return false unless @size == other.size
28
+ true
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -21,10 +21,12 @@ module PlexRubySDK
21
21
  field :extended_display_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('extendedDisplayTitle') } }
22
22
  # Unique stream identifier.
23
23
  field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
24
- # Index of the stream.
25
- field :index, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
26
- # Stream type (1=video, 2=audio, 3=subtitle).
27
- field :stream_type, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType') } }
24
+ # Stream type:
25
+ # - 1 = video
26
+ # - 2 = audio
27
+ # - 3 = subtitle
28
+ #
29
+ field :stream_type, Models::Operations::GetAllMediaLibraryStreamType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType'), 'decoder': Utils.enum_from_string(Models::Operations::GetAllMediaLibraryStreamType, false) } }
28
30
  # Audio channel layout.
29
31
  field :audio_channel_layout, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannelLayout') } }
30
32
  # Bit depth of the video stream.
@@ -77,6 +79,8 @@ module PlexRubySDK
77
79
  field :embedded_in_video, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('embeddedInVideo') } }
78
80
 
79
81
  field :forced, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('forced') } }
82
+ # Format of the stream (e.g., srt).
83
+ field :format, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('format') } }
80
84
  # Frame rate of the stream.
81
85
  field :frame_rate, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('frameRate') } }
82
86
 
@@ -87,6 +91,10 @@ module PlexRubySDK
87
91
  field :hearing_impaired, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hearingImpaired') } }
88
92
  # Height of the video stream.
89
93
  field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
94
+ # Index of the stream.
95
+ field :index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
96
+ # Key to access this stream part.
97
+ field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
90
98
  # Language of the stream.
91
99
  field :language, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('language') } }
92
100
  # ISO language code.
@@ -113,13 +121,12 @@ module PlexRubySDK
113
121
  field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
114
122
 
115
123
 
116
- 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 }
117
- 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)
124
+ sig { params(codec: ::String, display_title: ::String, extended_display_title: ::String, id: ::Integer, stream_type: Models::Operations::GetAllMediaLibraryStreamType, 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
+ 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)
118
126
  @codec = codec
119
127
  @display_title = display_title
120
128
  @extended_display_title = extended_display_title
121
129
  @id = id
122
- @index = index
123
130
  @stream_type = stream_type
124
131
  @audio_channel_layout = audio_channel_layout
125
132
  @bit_depth = bit_depth
@@ -147,11 +154,14 @@ module PlexRubySDK
147
154
  @dub = dub
148
155
  @embedded_in_video = embedded_in_video
149
156
  @forced = forced
157
+ @format = format
150
158
  @frame_rate = frame_rate
151
159
  @has_scaling_matrix = has_scaling_matrix
152
160
  @header_compression = header_compression
153
161
  @hearing_impaired = hearing_impaired
154
162
  @height = height
163
+ @index = index
164
+ @key = key
155
165
  @language = language
156
166
  @language_code = language_code
157
167
  @language_tag = language_tag
@@ -172,7 +182,6 @@ module PlexRubySDK
172
182
  return false unless @display_title == other.display_title
173
183
  return false unless @extended_display_title == other.extended_display_title
174
184
  return false unless @id == other.id
175
- return false unless @index == other.index
176
185
  return false unless @stream_type == other.stream_type
177
186
  return false unless @audio_channel_layout == other.audio_channel_layout
178
187
  return false unless @bit_depth == other.bit_depth
@@ -200,11 +209,14 @@ module PlexRubySDK
200
209
  return false unless @dub == other.dub
201
210
  return false unless @embedded_in_video == other.embedded_in_video
202
211
  return false unless @forced == other.forced
212
+ return false unless @format == other.format
203
213
  return false unless @frame_rate == other.frame_rate
204
214
  return false unless @has_scaling_matrix == other.has_scaling_matrix
205
215
  return false unless @header_compression == other.header_compression
206
216
  return false unless @hearing_impaired == other.hearing_impaired
207
217
  return false unless @height == other.height
218
+ return false unless @index == other.index
219
+ return false unless @key == other.key
208
220
  return false unless @language == other.language
209
221
  return false unless @language_code == other.language_code
210
222
  return false unless @language_tag == other.language_tag
@@ -0,0 +1,25 @@
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
+ # GetAllMediaLibraryStreamType - Stream type:
12
+ # - 1 = video
13
+ # - 2 = audio
14
+ # - 3 = subtitle
15
+ #
16
+ class GetAllMediaLibraryStreamType < T::Enum
17
+ enums do
18
+ VIDEO = new(1)
19
+ AUDIO = new(2)
20
+ SUBTITLE = new(3)
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
@@ -8,31 +8,31 @@ module PlexRubySDK
8
8
  module Models
9
9
  module Operations
10
10
 
11
-
11
+ # The filter query string for country media items.
12
12
  class GetMediaMetaDataCountry
13
13
  extend T::Sig
14
14
  include Crystalline::MetadataFields
15
15
 
16
- # The filter string for the country.
17
- field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
18
- # The unique country identifier.
16
+
19
17
  field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
20
- # The country name.
18
+ # The country of origin of this media item
21
19
  field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
22
20
 
21
+ field :filter, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
23
22
 
24
- sig { params(filter: ::String, id: ::Integer, tag: ::String).void }
25
- def initialize(filter: nil, id: nil, tag: nil)
26
- @filter = filter
23
+
24
+ sig { params(id: ::Integer, tag: ::String, filter: T.nilable(::String)).void }
25
+ def initialize(id: nil, tag: nil, filter: nil)
27
26
  @id = id
28
27
  @tag = tag
28
+ @filter = filter
29
29
  end
30
30
 
31
31
  def ==(other)
32
32
  return false unless other.is_a? self.class
33
- return false unless @filter == other.filter
34
33
  return false unless @id == other.id
35
34
  return false unless @tag == other.tag
35
+ return false unless @filter == other.filter
36
36
  true
37
37
  end
38
38
  end
@@ -13,27 +13,24 @@ module PlexRubySDK
13
13
  extend T::Sig
14
14
  include Crystalline::MetadataFields
15
15
 
16
- # The filter string for the role.
16
+ # The filter string used to query this director.
17
17
  field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
18
- # The unique role identifier.
18
+ # Unique identifier for the director.
19
19
  field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
20
- # The actor's name.
20
+ # The role of Director
21
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.
22
+ # A unique key associated with the director's tag, used for internal identification.
23
+ field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
24
+ # The URL of the thumbnail image for the director.
27
25
  field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
28
26
 
29
27
 
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)
28
+ sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: T.nilable(::String), thumb: T.nilable(::String)).void }
29
+ def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, thumb: nil)
32
30
  @filter = filter
33
31
  @id = id
34
32
  @tag = tag
35
33
  @tag_key = tag_key
36
- @role = role
37
34
  @thumb = thumb
38
35
  end
39
36
 
@@ -43,7 +40,6 @@ module PlexRubySDK
43
40
  return false unless @id == other.id
44
41
  return false unless @tag == other.tag
45
42
  return false unless @tag_key == other.tag_key
46
- return false unless @role == other.role
47
43
  return false unless @thumb == other.thumb
48
44
  true
49
45
  end
@@ -8,16 +8,17 @@ module PlexRubySDK
8
8
  module Models
9
9
  module Operations
10
10
 
11
-
11
+ # The filter query string for similar items.
12
12
  class GetMediaMetaDataGenre
13
13
  extend T::Sig
14
14
  include Crystalline::MetadataFields
15
15
 
16
- # The filter string for the genre.
16
+
17
17
  field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
18
- # The unique genre identifier.
18
+
19
19
  field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
20
- # The genre name.
20
+ # The genre name of this media-item
21
+ #
21
22
  field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
22
23
 
23
24
 
@@ -13,15 +13,15 @@ module PlexRubySDK
13
13
  extend T::Sig
14
14
  include Crystalline::MetadataFields
15
15
 
16
- # Alternate text for the image.
16
+
17
17
  field :alt, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('alt') } }
18
- # The type of image (e.g., coverPoster, background, clearLogo).
19
- field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
20
- # The URL of the image.
18
+
19
+ field :type, Models::Operations::GetMediaMetaDataLibraryType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(Models::Operations::GetMediaMetaDataLibraryType, false) } }
20
+
21
21
  field :url, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('url') } }
22
22
 
23
23
 
24
- sig { params(alt: ::String, type: ::String, url: ::String).void }
24
+ sig { params(alt: ::String, type: Models::Operations::GetMediaMetaDataLibraryType, url: ::String).void }
25
25
  def initialize(alt: nil, type: nil, url: nil)
26
26
  @alt = alt
27
27
  @type = type
@@ -0,0 +1,22 @@
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 GetMediaMetaDataLibraryType < T::Enum
13
+ enums do
14
+ COVER_POSTER = new('coverPoster')
15
+ BACKGROUND = new('background')
16
+ SNAPSHOT = new('snapshot')
17
+ CLEAR_LOGO = new('clearLogo')
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end