plex_ruby_sdk 0.7.6 → 0.7.7

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 (51) hide show
  1. checksums.yaml +4 -4
  2. data/lib/plex_ruby_sdk/library.rb +0 -44
  3. data/lib/plex_ruby_sdk/models/operations/collection.rb +3 -3
  4. data/lib/plex_ruby_sdk/models/operations/country.rb +10 -4
  5. data/lib/plex_ruby_sdk/models/operations/director.rb +3 -3
  6. data/lib/plex_ruby_sdk/models/operations/genre.rb +11 -4
  7. data/lib/plex_ruby_sdk/models/operations/get_all_media_library_genre.rb +2 -1
  8. data/lib/plex_ruby_sdk/models/operations/{getondeck_guids.rb → get_all_media_library_guids.rb} +3 -2
  9. data/lib/plex_ruby_sdk/models/operations/get_all_media_library_media.rb +8 -8
  10. data/lib/plex_ruby_sdk/models/operations/get_all_media_library_metadata.rb +6 -6
  11. data/lib/plex_ruby_sdk/models/operations/get_all_media_library_role.rb +1 -1
  12. data/lib/plex_ruby_sdk/models/operations/get_all_media_library_stream.rb +17 -11
  13. data/lib/plex_ruby_sdk/models/operations/get_library_items_media.rb +2 -2
  14. data/lib/plex_ruby_sdk/models/operations/get_library_items_metadata.rb +7 -7
  15. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_media.rb +8 -8
  16. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_metadata.rb +3 -3
  17. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_producer.rb +39 -0
  18. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_similar.rb +30 -0
  19. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_stream.rb +17 -11
  20. data/lib/plex_ruby_sdk/models/operations/get_recently_added_mediacontainer.rb +15 -15
  21. data/lib/plex_ruby_sdk/models/operations/get_recently_added_metadata.rb +119 -133
  22. data/lib/plex_ruby_sdk/models/operations/hasthumbnail.rb +1 -1
  23. data/lib/plex_ruby_sdk/models/operations/location.rb +3 -3
  24. data/lib/plex_ruby_sdk/models/operations/media.rb +27 -23
  25. data/lib/plex_ruby_sdk/models/operations/part.rb +23 -15
  26. data/lib/plex_ruby_sdk/models/operations/producer.rb +8 -11
  27. data/lib/plex_ruby_sdk/models/operations/{get_library_items_metadatarating.rb → rating.rb} +5 -5
  28. data/lib/plex_ruby_sdk/models/operations/role.rb +12 -12
  29. data/lib/plex_ruby_sdk/models/operations/similar.rb +4 -4
  30. data/lib/plex_ruby_sdk/models/operations/stream.rb +77 -44
  31. data/lib/plex_ruby_sdk/models/operations/writer.rb +15 -6
  32. data/lib/plex_ruby_sdk/models/operations.rb +18 -33
  33. data/lib/plex_ruby_sdk/sdkconfiguration.rb +2 -2
  34. metadata +6 -21
  35. data/lib/plex_ruby_sdk/models/operations/get_library_items_enablecreditsmarkergeneration.rb +0 -18
  36. data/lib/plex_ruby_sdk/models/operations/get_library_items_episodesort.rb +0 -19
  37. data/lib/plex_ruby_sdk/models/operations/get_library_items_flattenseasons.rb +0 -19
  38. data/lib/plex_ruby_sdk/models/operations/get_library_items_mediaguid.rb +0 -26
  39. data/lib/plex_ruby_sdk/models/operations/get_library_items_optimizedforstreaming.rb +0 -18
  40. data/lib/plex_ruby_sdk/models/operations/get_library_items_showordering.rb +0 -27
  41. data/lib/plex_ruby_sdk/models/operations/getondeck_badrequest.rb +0 -24
  42. data/lib/plex_ruby_sdk/models/operations/getondeck_errors.rb +0 -30
  43. data/lib/plex_ruby_sdk/models/operations/getondeck_library_errors.rb +0 -30
  44. data/lib/plex_ruby_sdk/models/operations/getondeck_media.rb +0 -66
  45. data/lib/plex_ruby_sdk/models/operations/getondeck_mediacontainer.rb +0 -42
  46. data/lib/plex_ruby_sdk/models/operations/getondeck_metadata.rb +0 -129
  47. data/lib/plex_ruby_sdk/models/operations/getondeck_part.rb +0 -48
  48. data/lib/plex_ruby_sdk/models/operations/getondeck_response.rb +0 -39
  49. data/lib/plex_ruby_sdk/models/operations/getondeck_responsebody.rb +0 -24
  50. data/lib/plex_ruby_sdk/models/operations/getondeck_stream.rb +0 -90
  51. data/lib/plex_ruby_sdk/models/operations/getondeck_unauthorized.rb +0 -24
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4b8b622094d434fde37a0b34f26f097d8c2b8eaa04bb8bafdff645cf20c50bd3
4
- data.tar.gz: baf49018305a2bf3eac2d9a2a3092f945489fbec9ac241f9f877f517bedc8096
3
+ metadata.gz: dc5669c272bc4c54f69e1761805f666a6b72f36eb36bcc1434b779837efe3a8e
4
+ data.tar.gz: 69d1507df62ebe5e46d44305e2dd6d09e2770993cab0b7dcfa1473bb9eb49cab
5
5
  SHA512:
6
- metadata.gz: b30dcd992f48b78a8f56cdfb249cc83d8cf460f4b8bf86f2b24d88d0b7dc8c04443f332ad5c0898d05249a1745cb6faea6687636d9aaa5a194298d64784508bb
7
- data.tar.gz: 6482c2d21a0f9ee8158e9e7228115ce53d13b9ae0fff55873b091418ad8093fc2c3c273fa0142e907f22c3fd4c94e2bd6c4a820de049255c1fdfbd6fe098907b
6
+ metadata.gz: 9c4bd2b7f9f46463baf38cd598414c2b43957c56b6a47269d0b64db878d4054ad352b1d575c0c8349f24a81fc265ab911684e0851c576e57c2714a798f6dd8d2
7
+ data.tar.gz: ee762271f9f25e9e61dfb7b4e168c78e5d665a647fa479b47c5838b5ba054a1416f6554d7c2c4b2ebbe427fe3d23959e27a98670bb84bea769857830ca0d340a
@@ -925,49 +925,5 @@ module PlexRubySDK
925
925
 
926
926
  res
927
927
  end
928
-
929
-
930
- sig { returns(::PlexRubySDK::Operations::GetOnDeckResponse) }
931
- def get_on_deck
932
- # get_on_deck - Get On Deck
933
- # This endpoint will return the on deck content.
934
- #
935
- url, params = @sdk_configuration.get_server_details
936
- base_url = Utils.template_url(url, params)
937
- url = "#{base_url}/library/onDeck"
938
- headers = {}
939
- headers['Accept'] = 'application/json'
940
- headers['user-agent'] = @sdk_configuration.user_agent
941
-
942
- r = @sdk_configuration.client.get(url) do |req|
943
- req.headers = headers
944
- security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
945
- Utils.configure_request_security(req, security) if !security.nil?
946
- end
947
-
948
- content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
949
-
950
- res = ::PlexRubySDK::Operations::GetOnDeckResponse.new(
951
- status_code: r.status, content_type: content_type, raw_response: r
952
- )
953
- if r.status == 200
954
- if Utils.match_content_type(content_type, 'application/json')
955
- out = Crystalline.unmarshal_json(JSON.parse(r.env.response_body), ::PlexRubySDK::Operations::GetOnDeckResponseBody)
956
- res.object = out
957
- end
958
- elsif r.status == 400
959
- if Utils.match_content_type(content_type, 'application/json')
960
- out = Crystalline.unmarshal_json(JSON.parse(r.env.response_body), ::PlexRubySDK::Operations::GetOnDeckBadRequest)
961
- res.bad_request = out
962
- end
963
- elsif r.status == 401
964
- if Utils.match_content_type(content_type, 'application/json')
965
- out = Crystalline.unmarshal_json(JSON.parse(r.env.response_body), ::PlexRubySDK::Operations::GetOnDeckUnauthorized)
966
- res.unauthorized = out
967
- end
968
- end
969
-
970
- res
971
- end
972
928
  end
973
929
  end
@@ -11,11 +11,11 @@ module PlexRubySDK
11
11
  class Collection < ::Crystalline::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
+ # The user-made collection this media item belongs to
15
+ field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
14
16
 
15
- field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
16
17
 
17
-
18
- sig { params(tag: T.nilable(::String)).void }
18
+ sig { params(tag: ::String).void }
19
19
  def initialize(tag: nil)
20
20
  @tag = tag
21
21
  end
@@ -7,17 +7,23 @@
7
7
  module PlexRubySDK
8
8
  module Operations
9
9
 
10
-
10
+ # The filter query string for country media items.
11
11
  class Country < ::Crystalline::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
14
 
15
- field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
15
+ field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
16
+ # The country of origin of this media item
17
+ field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
18
+
19
+ field :filter, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
16
20
 
17
21
 
18
- sig { params(tag: T.nilable(::String)).void }
19
- def initialize(tag: nil)
22
+ sig { params(id: ::Integer, tag: ::String, filter: T.nilable(::String)).void }
23
+ def initialize(id: nil, tag: nil, filter: nil)
24
+ @id = id
20
25
  @tag = tag
26
+ @filter = filter
21
27
  end
22
28
  end
23
29
  end
@@ -11,11 +11,11 @@ module PlexRubySDK
11
11
  class Director < ::Crystalline::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
+ # The role of Director
15
+ field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
14
16
 
15
- field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
16
17
 
17
-
18
- sig { params(tag: T.nilable(::String)).void }
18
+ sig { params(tag: ::String).void }
19
19
  def initialize(tag: nil)
20
20
  @tag = tag
21
21
  end
@@ -7,16 +7,23 @@
7
7
  module PlexRubySDK
8
8
  module Operations
9
9
 
10
-
10
+ # The filter query string for similar items.
11
11
  class Genre < ::Crystalline::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
14
 
15
- field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
15
+ field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
16
+
17
+ field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
18
+ # The genre name of this media-item
19
+ #
20
+ field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
16
21
 
17
22
 
18
- sig { params(tag: T.nilable(::String)).void }
19
- def initialize(tag: nil)
23
+ sig { params(filter: ::String, id: ::Integer, tag: ::String).void }
24
+ def initialize(filter: nil, id: nil, tag: nil)
25
+ @filter = filter
26
+ @id = id
20
27
  @tag = tag
21
28
  end
22
29
  end
@@ -11,7 +11,8 @@ module PlexRubySDK
11
11
  class GetAllMediaLibraryGenre < ::Crystalline::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
- # The country of origin of this media item
14
+ # The genre name of this media-item
15
+ #
15
16
  field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
16
17
 
17
18
 
@@ -8,10 +8,11 @@ module PlexRubySDK
8
8
  module Operations
9
9
 
10
10
 
11
- class GetOnDeckGuids < ::Crystalline::FieldAugmented
11
+ class GetAllMediaLibraryGuids < ::Crystalline::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
-
14
+ # The unique identifier for the Guid. Can be imdb://tt0286347, tmdb://1763, tvdb://2337
15
+ #
15
16
  field :id, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
16
17
 
17
18
 
@@ -11,12 +11,8 @@ module PlexRubySDK
11
11
  class GetAllMediaLibraryMedia < ::Crystalline::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
- # Indicates whether voice activity is detected.
15
- field :has_voice_activity, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasVoiceActivity') } }
16
14
  # Unique media identifier.
17
15
  field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
18
- # An array of parts for this media item.
19
- field :part, T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryPart], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
20
16
  # Aspect ratio of the video.
21
17
  field :aspect_ratio, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('aspectRatio') } }
22
18
  # Number of audio channels.
@@ -35,10 +31,14 @@ module PlexRubySDK
35
31
  field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
36
32
 
37
33
  field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
34
+ # Indicates whether voice activity is detected.
35
+ field :has_voice_activity, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasVoiceActivity') } }
38
36
  # Video height in pixels.
39
37
  field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
40
38
  # Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
41
39
  field :optimized_for_streaming, T.nilable(::Object), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
40
+ # An array of parts for this media item.
41
+ field :part, T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryPart]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
42
42
  # Video codec used.
43
43
  field :video_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } }
44
44
  # Frame rate of the video. Values found include NTSC, PAL, 24p
@@ -52,11 +52,9 @@ module PlexRubySDK
52
52
  field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
53
53
 
54
54
 
55
- 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 }
56
- 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)
57
- @has_voice_activity = has_voice_activity
55
+ 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 }
56
+ 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)
58
57
  @id = id
59
- @part = part
60
58
  @aspect_ratio = aspect_ratio
61
59
  @audio_channels = audio_channels
62
60
  @audio_codec = audio_codec
@@ -66,8 +64,10 @@ module PlexRubySDK
66
64
  @display_offset = display_offset
67
65
  @duration = duration
68
66
  @has64bit_offsets = has64bit_offsets
67
+ @has_voice_activity = has_voice_activity
69
68
  @height = height
70
69
  @optimized_for_streaming = optimized_for_streaming
70
+ @part = part
71
71
  @video_codec = video_codec
72
72
  @video_frame_rate = video_frame_rate
73
73
  @video_profile = video_profile
@@ -52,8 +52,6 @@ module PlexRubySDK
52
52
  field :title_sort, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('titleSort') } }
53
53
 
54
54
  field :type, ::PlexRubySDK::Operations::GetAllMediaLibraryLibraryType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetAllMediaLibraryLibraryType, false) } }
55
- # The release year of the media item.
56
- field :year, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } }
57
55
  # The URL for the audience rating image.
58
56
  field :audience_rating_image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRatingImage') } }
59
57
  # The source from which chapter data is derived.
@@ -89,7 +87,7 @@ module PlexRubySDK
89
87
  # The title of the grandparent media item.
90
88
  field :grandparent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentTitle') } }
91
89
 
92
- field :guids, T.nilable(T::Array[::PlexRubySDK::Operations::Guids]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } }
90
+ field :guids, T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryGuids]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } }
93
91
 
94
92
  field :image, T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryImage]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Image') } }
95
93
  # The Unix timestamp representing the last time the item was rated.
@@ -140,10 +138,12 @@ module PlexRubySDK
140
138
  field :view_offset, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewOffset') } }
141
139
 
142
140
  field :writer, T.nilable(T::Array[::PlexRubySDK::Operations::GetAllMediaLibraryWriter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Writer') } }
141
+ # The release year of the media item.
142
+ field :year, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } }
143
143
 
144
144
 
145
- 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 }
146
- 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)
145
+ 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 }
146
+ 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)
147
147
  @added_at = added_at
148
148
  @art = art
149
149
  @audience_rating = audience_rating
@@ -164,7 +164,6 @@ module PlexRubySDK
164
164
  @title = title
165
165
  @title_sort = title_sort
166
166
  @type = type
167
- @year = year
168
167
  @audience_rating_image = audience_rating_image
169
168
  @chapter_source = chapter_source
170
169
  @collection = collection
@@ -208,6 +207,7 @@ module PlexRubySDK
208
207
  @viewed_leaf_count = viewed_leaf_count
209
208
  @view_offset = view_offset
210
209
  @writer = writer
210
+ @year = year
211
211
  end
212
212
  end
213
213
  end
@@ -11,7 +11,7 @@ module PlexRubySDK
11
11
  class GetAllMediaLibraryRole < ::Crystalline::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
- # The name of the actor for this role
14
+ # The display tag for the actor (typically the actor's name).
15
15
  field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
16
16
 
17
17
 
@@ -21,12 +21,6 @@ module PlexRubySDK
21
21
  field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
22
22
  # Index of the stream.
23
23
  field :index, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
24
- # Language of the stream.
25
- field :language, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('language') } }
26
- # ISO language code.
27
- field :language_code, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageCode') } }
28
- # Language tag (e.g., en).
29
- field :language_tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageTag') } }
30
24
  # Stream type (1=video, 2=audio, 3=subtitle).
31
25
  field :stream_type, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('streamType') } }
32
26
  # Audio channel layout.
@@ -43,6 +37,8 @@ module PlexRubySDK
43
37
  field :chroma_location, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaLocation') } }
44
38
  # Chroma subsampling format.
45
39
  field :chroma_subsampling, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chromaSubsampling') } }
40
+
41
+ field :closed_captions, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('closedCaptions') } }
46
42
  # Coded video height.
47
43
  field :coded_height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('codedHeight') } }
48
44
  # Coded video width.
@@ -76,6 +72,8 @@ module PlexRubySDK
76
72
  # Indicates if the stream is a dub.
77
73
  field :dub, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('dub') } }
78
74
 
75
+ field :embedded_in_video, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('embeddedInVideo') } }
76
+
79
77
  field :forced, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('forced') } }
80
78
  # Frame rate of the stream.
81
79
  field :frame_rate, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('frameRate') } }
@@ -87,6 +85,12 @@ module PlexRubySDK
87
85
  field :hearing_impaired, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hearingImpaired') } }
88
86
  # Height of the video stream.
89
87
  field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
88
+ # Language of the stream.
89
+ field :language, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('language') } }
90
+ # ISO language code.
91
+ field :language_code, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageCode') } }
92
+ # Language tag (e.g., en).
93
+ field :language_tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('languageTag') } }
90
94
  # Video level.
91
95
  field :level, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('level') } }
92
96
  # Indicates if this is the original stream.
@@ -107,16 +111,13 @@ module PlexRubySDK
107
111
  field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
108
112
 
109
113
 
110
- 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 }
111
- 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)
114
+ 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 }
115
+ 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)
112
116
  @codec = codec
113
117
  @display_title = display_title
114
118
  @extended_display_title = extended_display_title
115
119
  @id = id
116
120
  @index = index
117
- @language = language
118
- @language_code = language_code
119
- @language_tag = language_tag
120
121
  @stream_type = stream_type
121
122
  @audio_channel_layout = audio_channel_layout
122
123
  @bit_depth = bit_depth
@@ -125,6 +126,7 @@ module PlexRubySDK
125
126
  @channels = channels
126
127
  @chroma_location = chroma_location
127
128
  @chroma_subsampling = chroma_subsampling
129
+ @closed_captions = closed_captions
128
130
  @coded_height = coded_height
129
131
  @coded_width = coded_width
130
132
  @color_primaries = color_primaries
@@ -141,12 +143,16 @@ module PlexRubySDK
141
143
  @dovirpu_present = dovirpu_present
142
144
  @dovi_version = dovi_version
143
145
  @dub = dub
146
+ @embedded_in_video = embedded_in_video
144
147
  @forced = forced
145
148
  @frame_rate = frame_rate
146
149
  @has_scaling_matrix = has_scaling_matrix
147
150
  @header_compression = header_compression
148
151
  @hearing_impaired = hearing_impaired
149
152
  @height = height
153
+ @language = language
154
+ @language_code = language_code
155
+ @language_tag = language_tag
150
156
  @level = level
151
157
  @original = original
152
158
  @profile = profile
@@ -36,7 +36,7 @@ module PlexRubySDK
36
36
 
37
37
  field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
38
38
 
39
- 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) } }
39
+ 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) } }
40
40
 
41
41
  field :video_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } }
42
42
 
@@ -49,7 +49,7 @@ module PlexRubySDK
49
49
  field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
50
50
 
51
51
 
52
- 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 }
52
+ 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 }
53
53
  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)
54
54
  @container = container
55
55
  @id = id
@@ -51,11 +51,11 @@ module PlexRubySDK
51
51
 
52
52
  field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
53
53
  # Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled).
54
- 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) } }
54
+ 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) } }
55
55
  # Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first).
56
- 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) } }
56
+ 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) } }
57
57
  # Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show).
58
- 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) } }
58
+ 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) } }
59
59
 
60
60
  field :genre, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsGenre]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Genre') } }
61
61
 
@@ -99,9 +99,9 @@ module PlexRubySDK
99
99
  field :media, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMedia]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Media') } }
100
100
  # The Guid object is only included in the response if the `includeGuids` parameter is set to `1`.
101
101
  #
102
- field :media_guid, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMediaGuid]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } }
102
+ field :media_guid, T.nilable(T::Array[::PlexRubySDK::Operations::MediaGuid]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } }
103
103
 
104
- field :meta_data_rating, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMetaDataRating]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Rating') } }
104
+ field :meta_data_rating, T.nilable(T::Array[::PlexRubySDK::Operations::MetaDataRating]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Rating') } }
105
105
 
106
106
  field :originally_available_at, T.nilable(::Date), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.date_from_iso_format(true) } }
107
107
 
@@ -144,7 +144,7 @@ module PlexRubySDK
144
144
  # dvd = TheTVDB (DVD),
145
145
  # absolute = TheTVDB (Absolute)).
146
146
  #
147
- 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) } }
147
+ 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) } }
148
148
 
149
149
  field :skip_children, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('skipChildren') } }
150
150
 
@@ -177,7 +177,7 @@ module PlexRubySDK
177
177
  field :year, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } }
178
178
 
179
179
 
180
- 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 }
180
+ 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 }
181
181
  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)
182
182
  @added_at = added_at
183
183
  @guid = guid
@@ -11,12 +11,8 @@ module PlexRubySDK
11
11
  class GetMediaMetaDataMedia < ::Crystalline::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
- # Indicates whether voice activity is detected.
15
- field :has_voice_activity, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasVoiceActivity') } }
16
14
  # Unique media identifier.
17
15
  field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
18
- # An array of parts for this media item.
19
- field :part, T::Array[::PlexRubySDK::Operations::GetMediaMetaDataPart], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
20
16
  # Aspect ratio of the video.
21
17
  field :aspect_ratio, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('aspectRatio') } }
22
18
  # Number of audio channels.
@@ -35,10 +31,14 @@ module PlexRubySDK
35
31
  field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
36
32
 
37
33
  field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
34
+ # Indicates whether voice activity is detected.
35
+ field :has_voice_activity, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasVoiceActivity') } }
38
36
  # Video height in pixels.
39
37
  field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
40
38
  # Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
41
39
  field :optimized_for_streaming, T.nilable(::Object), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
40
+ # An array of parts for this media item.
41
+ field :part, T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataPart]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
42
42
  # Video codec used.
43
43
  field :video_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } }
44
44
  # Frame rate of the video. Values found include NTSC, PAL, 24p
@@ -52,11 +52,9 @@ module PlexRubySDK
52
52
  field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
53
53
 
54
54
 
55
- 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 }
56
- 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)
57
- @has_voice_activity = has_voice_activity
55
+ 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 }
56
+ 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)
58
57
  @id = id
59
- @part = part
60
58
  @aspect_ratio = aspect_ratio
61
59
  @audio_channels = audio_channels
62
60
  @audio_codec = audio_codec
@@ -66,8 +64,10 @@ module PlexRubySDK
66
64
  @display_offset = display_offset
67
65
  @duration = duration
68
66
  @has64bit_offsets = has64bit_offsets
67
+ @has_voice_activity = has_voice_activity
69
68
  @height = height
70
69
  @optimized_for_streaming = optimized_for_streaming
70
+ @part = part
71
71
  @video_codec = video_codec
72
72
  @video_frame_rate = video_frame_rate
73
73
  @video_profile = video_profile
@@ -106,7 +106,7 @@ module PlexRubySDK
106
106
 
107
107
  field :primary_extra_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('primaryExtraKey') } }
108
108
  # An array of Writer roles.
109
- field :producer, T.nilable(T::Array[::PlexRubySDK::Operations::Producer]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Producer') } }
109
+ field :producer, T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataProducer]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Producer') } }
110
110
  # The general rating
111
111
  field :rating, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rating') } }
112
112
  # The URL or identifier for the rating image (e.g., Rotten Tomatoes rating image).
@@ -116,7 +116,7 @@ module PlexRubySDK
116
116
  # An array of Actor roles.
117
117
  field :role, T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataRole]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Role') } }
118
118
  # An array of similar content objects.
119
- field :similar, T.nilable(T::Array[::PlexRubySDK::Operations::Similar]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Similar') } }
119
+ field :similar, T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataSimilar]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Similar') } }
120
120
  # The number of times the item has been skipped.
121
121
  field :skip_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('skipCount') } }
122
122
  # A URL-friendly identifier for the item.
@@ -135,7 +135,7 @@ module PlexRubySDK
135
135
  field :writer, T.nilable(T::Array[::PlexRubySDK::Operations::GetMediaMetaDataWriter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Writer') } }
136
136
 
137
137
 
138
- 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 }
138
+ 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 }
139
139
  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)
140
140
  @added_at = added_at
141
141
  @art = art