plex_ruby_sdk 0.3.6 → 0.4.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 (67) hide show
  1. checksums.yaml +4 -4
  2. data/lib/plex_ruby_sdk/authentication.rb +3 -10
  3. data/lib/plex_ruby_sdk/models/operations/action.rb +27 -0
  4. data/lib/plex_ruby_sdk/models/operations/activedirection.rb +19 -0
  5. data/lib/plex_ruby_sdk/models/operations/autoselectsubtitle.rb +2 -2
  6. data/lib/plex_ruby_sdk/models/operations/collection.rb +24 -0
  7. data/lib/plex_ruby_sdk/models/operations/connections.rb +10 -10
  8. data/lib/plex_ruby_sdk/models/operations/defaultdirection.rb +19 -0
  9. data/lib/plex_ruby_sdk/models/operations/defaultsubtitleaccessibility.rb +3 -3
  10. data/lib/plex_ruby_sdk/models/operations/defaultsubtitleforced.rb +2 -2
  11. data/lib/plex_ruby_sdk/models/operations/feature.rb +16 -4
  12. data/lib/plex_ruby_sdk/models/operations/flattenseasons.rb +18 -0
  13. data/lib/plex_ruby_sdk/models/operations/get_all_libraries_directory.rb +25 -25
  14. data/lib/plex_ruby_sdk/models/operations/get_all_libraries_mediacontainer.rb +5 -5
  15. data/lib/plex_ruby_sdk/models/operations/get_all_libraries_responsebody.rb +2 -2
  16. data/lib/plex_ruby_sdk/models/operations/get_library_items_field.rb +33 -0
  17. data/lib/plex_ruby_sdk/models/operations/get_library_items_fieldtype.rb +27 -0
  18. data/lib/plex_ruby_sdk/models/operations/get_library_items_filter.rb +36 -0
  19. data/lib/plex_ruby_sdk/models/operations/get_library_items_image.rb +30 -0
  20. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_response_type.rb +20 -0
  21. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_type.rb +42 -0
  22. data/lib/plex_ruby_sdk/models/operations/get_library_items_media.rb +22 -16
  23. data/lib/plex_ruby_sdk/models/operations/get_library_items_mediacontainer.rb +34 -18
  24. data/lib/plex_ruby_sdk/models/operations/get_library_items_metadata.rb +68 -23
  25. data/lib/plex_ruby_sdk/models/operations/get_library_items_operator.rb +27 -0
  26. data/lib/plex_ruby_sdk/models/operations/get_library_items_part.rb +19 -9
  27. data/lib/plex_ruby_sdk/models/operations/get_library_items_request.rb +10 -10
  28. data/lib/plex_ruby_sdk/models/operations/get_library_items_sort.rb +47 -0
  29. data/lib/plex_ruby_sdk/models/operations/get_library_items_type.rb +21 -0
  30. data/lib/plex_ruby_sdk/models/operations/get_server_resources_request.rb +2 -8
  31. data/lib/plex_ruby_sdk/models/operations/getpin_request.rb +2 -8
  32. data/lib/plex_ruby_sdk/models/operations/getplaylistcontents_queryparam_type.rb +4 -4
  33. data/lib/plex_ruby_sdk/models/operations/gettokenbypinid_request.rb +2 -8
  34. data/lib/plex_ruby_sdk/models/operations/gettokendetails_userplexaccount.rb +7 -4
  35. data/lib/plex_ruby_sdk/models/operations/gettopwatchedcontent_queryparam_type.rb +4 -4
  36. data/lib/plex_ruby_sdk/models/operations/hasthumbnail.rb +18 -0
  37. data/lib/plex_ruby_sdk/models/operations/includeguids.rb +2 -2
  38. data/lib/plex_ruby_sdk/models/operations/includehttps.rb +2 -2
  39. data/lib/plex_ruby_sdk/models/operations/includeipv6.rb +2 -2
  40. data/lib/plex_ruby_sdk/models/operations/includemeta.rb +2 -2
  41. data/lib/plex_ruby_sdk/models/operations/includerelay.rb +2 -2
  42. data/lib/plex_ruby_sdk/models/operations/location.rb +3 -3
  43. data/lib/plex_ruby_sdk/models/operations/mediaguid.rb +26 -0
  44. data/lib/plex_ruby_sdk/models/operations/mediareviewsvisibility.rb +3 -3
  45. data/lib/plex_ruby_sdk/models/operations/meta.rb +28 -0
  46. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_autoselectsubtitle.rb +2 -2
  47. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_defaultsubtitleaccessibility.rb +3 -3
  48. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_defaultsubtitleforced.rb +2 -2
  49. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_mediareviewsvisibility.rb +3 -3
  50. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_userplexaccount.rb +7 -4
  51. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_userprofile.rb +14 -14
  52. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_watchedindicator.rb +3 -3
  53. data/lib/plex_ruby_sdk/models/operations/protocol.rb +21 -0
  54. data/lib/plex_ruby_sdk/models/operations/queryparam_type.rb +4 -4
  55. data/lib/plex_ruby_sdk/models/operations/showordering.rb +27 -0
  56. data/lib/plex_ruby_sdk/models/operations/type.rb +4 -4
  57. data/lib/plex_ruby_sdk/models/operations/ultrablurcolors.rb +33 -0
  58. data/lib/plex_ruby_sdk/models/operations/uploadplaylist_request.rb +5 -2
  59. data/lib/plex_ruby_sdk/models/operations/userprofile.rb +14 -14
  60. data/lib/plex_ruby_sdk/models/operations/watchedindicator.rb +3 -3
  61. data/lib/plex_ruby_sdk/models/operations.rb +20 -1
  62. data/lib/plex_ruby_sdk/models/shared/security.rb +1 -1
  63. data/lib/plex_ruby_sdk/playlists.rb +4 -3
  64. data/lib/plex_ruby_sdk/plex.rb +5 -9
  65. data/lib/plex_ruby_sdk/sdkconfiguration.rb +3 -3
  66. metadata +22 -3
  67. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_request.rb +0 -33
@@ -12,37 +12,41 @@ module PlexRubySDK
12
12
  extend T::Sig
13
13
 
14
14
 
15
- field :aspect_ratio, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('aspectRatio') } }
15
+ field :aspect_ratio, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('aspectRatio') } }
16
16
 
17
- field :audio_channels, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannels') } }
17
+ field :audio_channels, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannels') } }
18
18
 
19
- field :audio_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioCodec') } }
19
+ field :audio_codec, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioCodec') } }
20
20
 
21
- field :bitrate, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitrate') } }
21
+ field :bitrate, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitrate') } }
22
22
 
23
- field :container, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
23
+ field :container, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
24
24
 
25
- field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
25
+ field :duration, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
26
26
 
27
- field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
27
+ field :height, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
28
28
 
29
- field :id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
29
+ field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
30
30
 
31
- field :part, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsPart]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
31
+ field :part, T::Array[::PlexRubySDK::Operations::GetLibraryItemsPart], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
32
32
 
33
- field :video_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } }
33
+ field :video_codec, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } }
34
34
 
35
- field :video_frame_rate, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoFrameRate') } }
35
+ field :video_frame_rate, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoFrameRate') } }
36
36
 
37
- field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
37
+ field :video_profile, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
38
38
 
39
- field :video_resolution, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoResolution') } }
39
+ field :video_resolution, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoResolution') } }
40
40
 
41
- field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
41
+ field :width, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
42
42
 
43
+ field :audio_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioProfile') } }
43
44
 
44
- sig { params(aspect_ratio: T.nilable(::Float), audio_channels: T.nilable(::Integer), audio_codec: T.nilable(::String), bitrate: T.nilable(::Integer), container: T.nilable(::String), duration: T.nilable(::Integer), height: T.nilable(::Integer), id: T.nilable(::Integer), part: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsPart]), 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 }
45
- def initialize(aspect_ratio: nil, audio_channels: nil, audio_codec: nil, bitrate: nil, container: nil, duration: nil, height: nil, id: nil, part: nil, video_codec: nil, video_frame_rate: nil, video_profile: nil, video_resolution: nil, width: nil)
45
+ field :has_voice_activity, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasVoiceActivity') } }
46
+
47
+
48
+ sig { params(aspect_ratio: ::Float, audio_channels: ::Integer, audio_codec: ::String, bitrate: ::Integer, container: ::String, duration: ::Integer, height: ::Integer, id: ::Integer, part: T::Array[::PlexRubySDK::Operations::GetLibraryItemsPart], video_codec: ::String, video_frame_rate: ::String, video_profile: ::String, video_resolution: ::String, width: ::Integer, audio_profile: T.nilable(::String), has_voice_activity: T.nilable(T::Boolean)).void }
49
+ def initialize(aspect_ratio: nil, audio_channels: nil, audio_codec: nil, bitrate: nil, container: nil, duration: nil, height: nil, id: nil, part: nil, video_codec: nil, video_frame_rate: nil, video_profile: nil, video_resolution: nil, width: nil, audio_profile: nil, has_voice_activity: nil)
46
50
  @aspect_ratio = aspect_ratio
47
51
  @audio_channels = audio_channels
48
52
  @audio_codec = audio_codec
@@ -57,6 +61,8 @@ module PlexRubySDK
57
61
  @video_profile = video_profile
58
62
  @video_resolution = video_resolution
59
63
  @width = width
64
+ @audio_profile = audio_profile
65
+ @has_voice_activity = has_voice_activity
60
66
  end
61
67
  end
62
68
  end
@@ -12,43 +12,55 @@ module PlexRubySDK
12
12
  extend T::Sig
13
13
 
14
14
 
15
- field :allow_sync, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } }
15
+ field :allow_sync, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } }
16
16
 
17
- field :art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } }
17
+ field :art, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } }
18
18
 
19
- field :identifier, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
19
+ field :content, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('content') } }
20
20
 
21
- field :library_section_id, T.nilable(::Object), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
21
+ field :identifier, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
22
22
 
23
- field :library_section_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
23
+ field :library_section_id, ::Object, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
24
24
 
25
- field :library_section_uuid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionUUID') } }
25
+ field :library_section_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
26
26
 
27
- field :media_tag_prefix, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagPrefix') } }
27
+ field :library_section_uuid, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionUUID') } }
28
28
 
29
- field :media_tag_version, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagVersion') } }
29
+ field :media_tag_prefix, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagPrefix') } }
30
30
 
31
- field :metadata, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMetadata]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Metadata') } }
31
+ field :media_tag_version, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagVersion') } }
32
32
 
33
- field :mixed_parents, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mixedParents') } }
33
+ field :metadata, T::Array[::PlexRubySDK::Operations::GetLibraryItemsMetadata], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Metadata') } }
34
+
35
+ field :offset, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('offset') } }
36
+
37
+ field :size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
38
+
39
+ field :thumb, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
34
40
 
35
- field :size, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
41
+ field :title1, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title1') } }
36
42
 
37
- field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
43
+ field :title2, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title2') } }
38
44
 
39
- field :title1, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title1') } }
45
+ field :total_size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('totalSize') } }
40
46
 
41
- field :title2, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title2') } }
47
+ field :view_group, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewGroup') } }
48
+ # The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.
49
+ #
50
+ field :meta, T.nilable(::PlexRubySDK::Operations::Meta), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Meta') } }
42
51
 
43
- field :view_group, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewGroup') } }
52
+ field :mixed_parents, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mixedParents') } }
53
+
54
+ field :nocache, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('nocache') } }
44
55
 
45
56
  field :view_mode, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewMode') } }
46
57
 
47
58
 
48
- sig { params(allow_sync: T.nilable(T::Boolean), art: T.nilable(::String), identifier: T.nilable(::String), library_section_id: T.nilable(::Object), library_section_title: T.nilable(::String), library_section_uuid: T.nilable(::String), media_tag_prefix: T.nilable(::String), media_tag_version: T.nilable(::Integer), metadata: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMetadata]), mixed_parents: T.nilable(T::Boolean), size: T.nilable(::Integer), thumb: T.nilable(::String), title1: T.nilable(::String), title2: T.nilable(::String), view_group: T.nilable(::String), view_mode: T.nilable(::Integer)).void }
49
- def initialize(allow_sync: nil, art: nil, identifier: nil, library_section_id: nil, library_section_title: nil, library_section_uuid: nil, media_tag_prefix: nil, media_tag_version: nil, metadata: nil, mixed_parents: nil, size: nil, thumb: nil, title1: nil, title2: nil, view_group: nil, view_mode: nil)
59
+ sig { params(allow_sync: T::Boolean, art: ::String, content: ::String, identifier: ::String, library_section_id: ::Object, library_section_title: ::String, library_section_uuid: ::String, media_tag_prefix: ::String, media_tag_version: ::Integer, metadata: T::Array[::PlexRubySDK::Operations::GetLibraryItemsMetadata], offset: ::Integer, size: ::Integer, thumb: ::String, title1: ::String, title2: ::String, total_size: ::Integer, view_group: ::String, meta: T.nilable(::PlexRubySDK::Operations::Meta), mixed_parents: T.nilable(T::Boolean), nocache: T.nilable(T::Boolean), view_mode: T.nilable(::Integer)).void }
60
+ def initialize(allow_sync: nil, art: nil, content: nil, identifier: nil, library_section_id: nil, library_section_title: nil, library_section_uuid: nil, media_tag_prefix: nil, media_tag_version: nil, metadata: nil, offset: nil, size: nil, thumb: nil, title1: nil, title2: nil, total_size: nil, view_group: nil, meta: nil, mixed_parents: nil, nocache: nil, view_mode: nil)
50
61
  @allow_sync = allow_sync
51
62
  @art = art
63
+ @content = content
52
64
  @identifier = identifier
53
65
  @library_section_id = library_section_id
54
66
  @library_section_title = library_section_title
@@ -56,12 +68,16 @@ module PlexRubySDK
56
68
  @media_tag_prefix = media_tag_prefix
57
69
  @media_tag_version = media_tag_version
58
70
  @metadata = metadata
59
- @mixed_parents = mixed_parents
71
+ @offset = offset
60
72
  @size = size
61
73
  @thumb = thumb
62
74
  @title1 = title1
63
75
  @title2 = title2
76
+ @total_size = total_size
64
77
  @view_group = view_group
78
+ @meta = meta
79
+ @mixed_parents = mixed_parents
80
+ @nocache = nocache
65
81
  @view_mode = view_mode
66
82
  end
67
83
  end
@@ -11,8 +11,23 @@ module PlexRubySDK
11
11
  class GetLibraryItemsMetadata < ::PlexRubySDK::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
+ # Unix epoch datetime in seconds
15
+ field :added_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('addedAt') } }
14
16
 
15
- field :added_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('addedAt') } }
17
+ field :guid, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('guid') } }
18
+
19
+ field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
20
+ # The rating key (Media ID) of this media item.
21
+ # Note: This is always an integer, but is represented as a string in the API.
22
+ #
23
+ field :rating_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingKey') } }
24
+
25
+ field :summary, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('summary') } }
26
+
27
+ field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
28
+ # The type of media content
29
+ #
30
+ field :type, ::PlexRubySDK::Operations::GetLibraryItemsType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::GetLibraryItemsType, false) } }
16
31
 
17
32
  field :art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } }
18
33
 
@@ -20,10 +35,14 @@ module PlexRubySDK
20
35
 
21
36
  field :audience_rating_image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRatingImage') } }
22
37
 
38
+ field :banner, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('banner') } }
39
+
23
40
  field :chapter_source, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chapterSource') } }
24
41
 
25
42
  field :child_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('childCount') } }
26
43
 
44
+ field :collection, T.nilable(T::Array[::PlexRubySDK::Operations::Collection]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Collection') } }
45
+
27
46
  field :content_rating, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('contentRating') } }
28
47
 
29
48
  field :country, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsCountry]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Country') } }
@@ -32,6 +51,8 @@ module PlexRubySDK
32
51
 
33
52
  field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
34
53
 
54
+ 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) } }
55
+
35
56
  field :genre, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsGenre]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Genre') } }
36
57
 
37
58
  field :grandparent_art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentArt') } }
@@ -42,27 +63,31 @@ module PlexRubySDK
42
63
 
43
64
  field :grandparent_rating_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentRatingKey') } }
44
65
 
66
+ field :grandparent_slug, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentSlug') } }
67
+
45
68
  field :grandparent_theme, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentTheme') } }
46
69
 
47
70
  field :grandparent_thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentThumb') } }
48
71
 
49
72
  field :grandparent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentTitle') } }
50
73
 
51
- field :guid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('guid') } }
52
-
53
74
  field :has_premium_extras, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasPremiumExtras') } }
54
75
 
55
76
  field :has_premium_primary_extra, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasPremiumPrimaryExtra') } }
56
77
 
57
- field :index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
78
+ field :image, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsImage]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Image') } }
58
79
 
59
- field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
80
+ field :index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
60
81
 
61
82
  field :last_viewed_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('lastViewedAt') } }
62
83
 
63
84
  field :leaf_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('leafCount') } }
64
-
85
+ # The Media object is only included when type query is `4` or higher.
86
+ #
65
87
  field :media, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMedia]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Media') } }
88
+ # The Guid object is only included in the response if the `includeGuids` parameter is set to `1`.
89
+ #
90
+ field :media_guid, T.nilable(T::Array[::PlexRubySDK::Operations::MediaGuid]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } }
66
91
 
67
92
  field :originally_available_at, T.nilable(::Date), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.date_from_iso_format(true) } }
68
93
 
@@ -73,7 +98,8 @@ module PlexRubySDK
73
98
  field :parent_index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentIndex') } }
74
99
 
75
100
  field :parent_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentKey') } }
76
-
101
+ # The rating key of the parent item.
102
+ #
77
103
  field :parent_rating_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentRatingKey') } }
78
104
 
79
105
  field :parent_studio, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentStudio') } }
@@ -92,15 +118,25 @@ module PlexRubySDK
92
118
 
93
119
  field :rating_image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingImage') } }
94
120
 
95
- field :rating_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingKey') } }
96
-
97
121
  field :role, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsRole]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Role') } }
98
122
 
123
+ field :season_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('seasonCount') } }
124
+ # Setting that indicates the episode ordering for the show
125
+ # None = Library default,
126
+ # tmdbAiring = The Movie Database (Aired),
127
+ # aired = TheTVDB (Aired),
128
+ # dvd = TheTVDB (DVD),
129
+ # absolute = TheTVDB (Absolute)).
130
+ #
131
+ 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) } }
132
+
133
+ field :skip_children, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('skipChildren') } }
134
+
99
135
  field :skip_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('skipCount') } }
100
136
 
101
- field :studio, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('studio') } }
137
+ field :slug, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('slug') } }
102
138
 
103
- field :summary, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('summary') } }
139
+ field :studio, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('studio') } }
104
140
 
105
141
  field :tagline, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagline') } }
106
142
 
@@ -108,12 +144,10 @@ module PlexRubySDK
108
144
 
109
145
  field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
110
146
 
111
- field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
112
-
113
147
  field :title_sort, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('titleSort') } }
114
148
 
115
- field :type, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
116
-
149
+ field :ultra_blur_colors, T.nilable(::PlexRubySDK::Operations::UltraBlurColors), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('UltraBlurColors') } }
150
+ # Unix epoch datetime in seconds
117
151
  field :updated_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('updatedAt') } }
118
152
 
119
153
  field :view_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewCount') } }
@@ -127,34 +161,44 @@ module PlexRubySDK
127
161
  field :year, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } }
128
162
 
129
163
 
130
- sig { params(added_at: T.nilable(::Integer), art: T.nilable(::String), 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::GetLibraryItemsCountry]), director: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsDirector]), duration: T.nilable(::Integer), 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_theme: T.nilable(::String), grandparent_thumb: T.nilable(::String), grandparent_title: T.nilable(::String), guid: T.nilable(::String), has_premium_extras: T.nilable(::String), has_premium_primary_extra: T.nilable(::String), index: T.nilable(::Integer), key: T.nilable(::String), last_viewed_at: T.nilable(::Integer), leaf_count: T.nilable(::Integer), media: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMedia]), 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_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), rating_key: T.nilable(::String), role: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsRole]), skip_count: T.nilable(::Integer), studio: T.nilable(::String), summary: T.nilable(::String), tagline: T.nilable(::String), theme: T.nilable(::String), thumb: T.nilable(::String), title: T.nilable(::String), title_sort: T.nilable(::String), type: T.nilable(::String), 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 }
131
- def initialize(added_at: nil, art: nil, audience_rating: nil, audience_rating_image: nil, chapter_source: nil, child_count: nil, content_rating: nil, country: nil, director: nil, duration: nil, genre: nil, grandparent_art: nil, grandparent_guid: nil, grandparent_key: nil, grandparent_rating_key: nil, grandparent_theme: nil, grandparent_thumb: nil, grandparent_title: nil, guid: nil, has_premium_extras: nil, has_premium_primary_extra: nil, index: nil, key: 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_studio: nil, parent_theme: nil, parent_thumb: nil, parent_title: nil, parent_year: nil, primary_extra_key: nil, rating: nil, rating_image: nil, rating_key: nil, role: nil, skip_count: nil, studio: nil, summary: nil, tagline: nil, theme: nil, thumb: nil, title: nil, title_sort: nil, type: nil, updated_at: nil, view_count: nil, viewed_leaf_count: nil, view_offset: nil, writer: nil, year: nil)
164
+ sig { params(added_at: ::Integer, guid: ::String, key: ::String, rating_key: ::String, summary: ::String, title: ::String, type: ::PlexRubySDK::Operations::GetLibraryItemsType, art: T.nilable(::String), audience_rating: T.nilable(::Float), audience_rating_image: T.nilable(::String), banner: T.nilable(::String), chapter_source: T.nilable(::String), child_count: T.nilable(::Integer), collection: T.nilable(T::Array[::PlexRubySDK::Operations::Collection]), content_rating: T.nilable(::String), country: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsCountry]), director: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsDirector]), duration: T.nilable(::Integer), 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), media: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsMedia]), media_guid: T.nilable(T::Array[::PlexRubySDK::Operations::MediaGuid]), 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_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::UltraBlurColors), updated_at: T.nilable(::Integer), view_count: T.nilable(::Integer), viewed_leaf_count: T.nilable(::Integer), view_offset: T.nilable(::Integer), writer: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsWriter]), year: T.nilable(::Integer)).void }
165
+ 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, 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, media: nil, media_guid: nil, originally_available_at: nil, original_title: nil, parent_guid: nil, parent_index: nil, parent_key: nil, parent_rating_key: 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)
132
166
  @added_at = added_at
167
+ @guid = guid
168
+ @key = key
169
+ @rating_key = rating_key
170
+ @summary = summary
171
+ @title = title
172
+ @type = type
133
173
  @art = art
134
174
  @audience_rating = audience_rating
135
175
  @audience_rating_image = audience_rating_image
176
+ @banner = banner
136
177
  @chapter_source = chapter_source
137
178
  @child_count = child_count
179
+ @collection = collection
138
180
  @content_rating = content_rating
139
181
  @country = country
140
182
  @director = director
141
183
  @duration = duration
184
+ @flatten_seasons = flatten_seasons
142
185
  @genre = genre
143
186
  @grandparent_art = grandparent_art
144
187
  @grandparent_guid = grandparent_guid
145
188
  @grandparent_key = grandparent_key
146
189
  @grandparent_rating_key = grandparent_rating_key
190
+ @grandparent_slug = grandparent_slug
147
191
  @grandparent_theme = grandparent_theme
148
192
  @grandparent_thumb = grandparent_thumb
149
193
  @grandparent_title = grandparent_title
150
- @guid = guid
151
194
  @has_premium_extras = has_premium_extras
152
195
  @has_premium_primary_extra = has_premium_primary_extra
196
+ @image = image
153
197
  @index = index
154
- @key = key
155
198
  @last_viewed_at = last_viewed_at
156
199
  @leaf_count = leaf_count
157
200
  @media = media
201
+ @media_guid = media_guid
158
202
  @originally_available_at = originally_available_at
159
203
  @original_title = original_title
160
204
  @parent_guid = parent_guid
@@ -169,17 +213,18 @@ module PlexRubySDK
169
213
  @primary_extra_key = primary_extra_key
170
214
  @rating = rating
171
215
  @rating_image = rating_image
172
- @rating_key = rating_key
173
216
  @role = role
217
+ @season_count = season_count
218
+ @show_ordering = show_ordering
219
+ @skip_children = skip_children
174
220
  @skip_count = skip_count
221
+ @slug = slug
175
222
  @studio = studio
176
- @summary = summary
177
223
  @tagline = tagline
178
224
  @theme = theme
179
225
  @thumb = thumb
180
- @title = title
181
226
  @title_sort = title_sort
182
- @type = type
227
+ @ultra_blur_colors = ultra_blur_colors
183
228
  @updated_at = updated_at
184
229
  @view_count = view_count
185
230
  @viewed_leaf_count = viewed_leaf_count
@@ -0,0 +1,27 @@
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 Operations
9
+
10
+
11
+ class GetLibraryItemsOperator < ::PlexRubySDK::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
16
+
17
+ field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
18
+
19
+
20
+ sig { params(key: ::String, title: ::String).void }
21
+ def initialize(key: nil, title: nil)
22
+ @key = key
23
+ @title = title
24
+ end
25
+ end
26
+ end
27
+ end
@@ -11,24 +11,31 @@ module PlexRubySDK
11
11
  class GetLibraryItemsPart < ::PlexRubySDK::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
+ # The container format of the media file.
15
+ #
16
+ field :container, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
14
17
 
15
- field :container, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
18
+ field :duration, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
16
19
 
17
- field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
20
+ field :file, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('file') } }
18
21
 
19
- field :file, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('file') } }
22
+ field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
20
23
 
21
- field :id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
24
+ field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
22
25
 
23
- field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
26
+ field :size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
24
27
 
25
- field :size, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
28
+ field :video_profile, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
26
29
 
27
- field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
30
+ field :audio_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioProfile') } }
28
31
 
32
+ field :has_thumbnail, T.nilable(::PlexRubySDK::Operations::HasThumbnail), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasThumbnail'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::HasThumbnail, true) } }
29
33
 
30
- sig { params(container: T.nilable(::String), duration: T.nilable(::Integer), file: T.nilable(::String), id: T.nilable(::Integer), key: T.nilable(::String), size: T.nilable(::Integer), video_profile: T.nilable(::String)).void }
31
- def initialize(container: nil, duration: nil, file: nil, id: nil, key: nil, size: nil, video_profile: nil)
34
+ field :indexes, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('indexes') } }
35
+
36
+
37
+ sig { params(container: ::String, duration: ::Integer, file: ::String, id: ::Integer, key: ::String, size: ::Integer, video_profile: ::String, audio_profile: T.nilable(::String), has_thumbnail: T.nilable(::PlexRubySDK::Operations::HasThumbnail), indexes: T.nilable(::String)).void }
38
+ def initialize(container: nil, duration: nil, file: nil, id: nil, key: nil, size: nil, video_profile: nil, audio_profile: nil, has_thumbnail: nil, indexes: nil)
32
39
  @container = container
33
40
  @duration = duration
34
41
  @file = file
@@ -36,6 +43,9 @@ module PlexRubySDK
36
43
  @key = key
37
44
  @size = size
38
45
  @video_profile = video_profile
46
+ @audio_profile = audio_profile
47
+ @has_thumbnail = has_thumbnail
48
+ @indexes = indexes
39
49
  end
40
50
  end
41
51
  end
@@ -17,6 +17,12 @@ module PlexRubySDK
17
17
  field :section_key, ::Integer, { 'path_param': { 'field_name': 'sectionKey', 'style': 'simple', 'explode': false } }
18
18
  # A key representing a specific tag within the section.
19
19
  field :tag, ::PlexRubySDK::Operations::Tag, { 'path_param': { 'field_name': 'tag', 'style': 'simple', 'explode': false } }
20
+ # Adds the Guids object to the response
21
+ #
22
+ field :include_guids, T.nilable(::PlexRubySDK::Operations::IncludeGuids), { 'query_param': { 'field_name': 'includeGuids', 'style': 'form', 'explode': true } }
23
+ # Adds the Meta object to the response
24
+ #
25
+ field :include_meta, T.nilable(::PlexRubySDK::Operations::IncludeMeta), { 'query_param': { 'field_name': 'includeMeta', 'style': 'form', 'explode': true } }
20
26
  # The type of media to retrieve.
21
27
  # 1 = movie
22
28
  # 2 = show
@@ -24,13 +30,7 @@ module PlexRubySDK
24
30
  # 4 = episode
25
31
  # E.g. A movie library will not return anything with type 3 as there are no seasons for movie libraries
26
32
  #
27
- field :type, ::PlexRubySDK::Operations::Type, { 'query_param': { 'field_name': 'type', 'style': 'form', 'explode': true } }
28
- # Adds the Guids object to the response
29
- #
30
- field :include_guids, T.nilable(::PlexRubySDK::Operations::IncludeGuids), { 'query_param': { 'field_name': 'includeGuids', 'style': 'form', 'explode': true } }
31
- # Adds the Meta object to the response
32
- #
33
- field :include_meta, T.nilable(::PlexRubySDK::Operations::IncludeMeta), { 'query_param': { 'field_name': 'includeMeta', 'style': 'form', 'explode': true } }
33
+ field :type, T.nilable(::PlexRubySDK::Operations::Type), { 'query_param': { 'field_name': 'type', 'style': 'form', 'explode': true } }
34
34
  # The number of items to return. If not specified, all items will be returned.
35
35
  # If the number of items exceeds the limit, the response will be paginated.
36
36
  # By default this is 50
@@ -43,13 +43,13 @@ module PlexRubySDK
43
43
  field :x_plex_container_start, T.nilable(::Integer), { 'query_param': { 'field_name': 'X-Plex-Container-Start', 'style': 'form', 'explode': true } }
44
44
 
45
45
 
46
- sig { params(section_key: ::Integer, tag: ::PlexRubySDK::Operations::Tag, type: ::PlexRubySDK::Operations::Type, include_guids: T.nilable(::PlexRubySDK::Operations::IncludeGuids), include_meta: T.nilable(::PlexRubySDK::Operations::IncludeMeta), x_plex_container_size: T.nilable(::Integer), x_plex_container_start: T.nilable(::Integer)).void }
47
- def initialize(section_key: nil, tag: nil, type: nil, include_guids: nil, include_meta: nil, x_plex_container_size: nil, x_plex_container_start: nil)
46
+ sig { params(section_key: ::Integer, tag: ::PlexRubySDK::Operations::Tag, include_guids: T.nilable(::PlexRubySDK::Operations::IncludeGuids), include_meta: T.nilable(::PlexRubySDK::Operations::IncludeMeta), type: T.nilable(::PlexRubySDK::Operations::Type), x_plex_container_size: T.nilable(::Integer), x_plex_container_start: T.nilable(::Integer)).void }
47
+ def initialize(section_key: nil, tag: nil, include_guids: nil, include_meta: nil, type: nil, x_plex_container_size: nil, x_plex_container_start: nil)
48
48
  @section_key = section_key
49
49
  @tag = tag
50
- @type = type
51
50
  @include_guids = include_guids
52
51
  @include_meta = include_meta
52
+ @type = type
53
53
  @x_plex_container_size = x_plex_container_size
54
54
  @x_plex_container_start = x_plex_container_start
55
55
  end
@@ -0,0 +1,47 @@
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 Operations
9
+
10
+
11
+ class GetLibraryItemsSort < ::PlexRubySDK::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # The direction of the sort. Can be either `asc` or `desc`.
15
+ #
16
+ field :default_direction, ::PlexRubySDK::Operations::DefaultDirection, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultDirection'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::DefaultDirection, false) } }
17
+
18
+ field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
19
+
20
+ field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
21
+
22
+ field :active, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('active') } }
23
+ # The direction of the sort. Can be either `asc` or `desc`.
24
+ #
25
+ field :active_direction, T.nilable(::PlexRubySDK::Operations::ActiveDirection), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('activeDirection'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::ActiveDirection, true) } }
26
+
27
+ field :default, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('default') } }
28
+
29
+ field :desc_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('descKey') } }
30
+
31
+ field :first_character_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('firstCharacterKey') } }
32
+
33
+
34
+ sig { params(default_direction: ::PlexRubySDK::Operations::DefaultDirection, key: ::String, title: ::String, active: T.nilable(T::Boolean), active_direction: T.nilable(::PlexRubySDK::Operations::ActiveDirection), default: T.nilable(::String), desc_key: T.nilable(::String), first_character_key: T.nilable(::String)).void }
35
+ def initialize(default_direction: nil, key: nil, title: nil, active: nil, active_direction: nil, default: nil, desc_key: nil, first_character_key: nil)
36
+ @default_direction = default_direction
37
+ @key = key
38
+ @title = title
39
+ @active = active
40
+ @active_direction = active_direction
41
+ @default = default
42
+ @desc_key = desc_key
43
+ @first_character_key = first_character_key
44
+ end
45
+ end
46
+ end
47
+ end
@@ -0,0 +1,21 @@
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 Operations
9
+
10
+ # GetLibraryItemsType - The type of media content
11
+ #
12
+ class GetLibraryItemsType < T::Enum
13
+ enums do
14
+ MOVIE = new('movie')
15
+ TV_SHOW = new('show')
16
+ SEASON = new('season')
17
+ EPISODE = new('episode')
18
+ end
19
+ end
20
+ end
21
+ end
@@ -14,11 +14,6 @@ module PlexRubySDK
14
14
  class GetServerResourcesRequest < ::PlexRubySDK::Utils::FieldAugmented
15
15
  extend T::Sig
16
16
 
17
- # The unique identifier for the client application
18
- # This is used to track the client application and its usage
19
- # (UUID, serial number, or other number unique per device)
20
- #
21
- field :client_id, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Client-Identifier', 'style': 'form', 'explode': true } }
22
17
  # Include Https entries in the results
23
18
  field :include_https, T.nilable(::PlexRubySDK::Operations::IncludeHttps), { 'query_param': { 'field_name': 'includeHttps', 'style': 'form', 'explode': true } }
24
19
  # Include IPv6 entries in the results
@@ -29,9 +24,8 @@ module PlexRubySDK
29
24
  field :include_relay, T.nilable(::PlexRubySDK::Operations::IncludeRelay), { 'query_param': { 'field_name': 'includeRelay', 'style': 'form', 'explode': true } }
30
25
 
31
26
 
32
- sig { params(client_id: T.nilable(::String), include_https: T.nilable(::PlexRubySDK::Operations::IncludeHttps), include_i_pv6: T.nilable(::PlexRubySDK::Operations::IncludeIPv6), include_relay: T.nilable(::PlexRubySDK::Operations::IncludeRelay)).void }
33
- def initialize(client_id: nil, include_https: nil, include_i_pv6: nil, include_relay: nil)
34
- @client_id = client_id
27
+ sig { params(include_https: T.nilable(::PlexRubySDK::Operations::IncludeHttps), include_i_pv6: T.nilable(::PlexRubySDK::Operations::IncludeIPv6), include_relay: T.nilable(::PlexRubySDK::Operations::IncludeRelay)).void }
28
+ def initialize(include_https: nil, include_i_pv6: nil, include_relay: nil)
35
29
  @include_https = include_https
36
30
  @include_i_pv6 = include_i_pv6
37
31
  @include_relay = include_relay