plex_ruby_sdk 0.4.0 → 0.4.2

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 (115) hide show
  1. checksums.yaml +4 -4
  2. data/lib/plex_ruby_sdk/authentication.rb +4 -2
  3. data/lib/plex_ruby_sdk/hubs.rb +35 -0
  4. data/lib/plex_ruby_sdk/library.rb +9 -14
  5. data/lib/plex_ruby_sdk/models/operations/action.rb +27 -0
  6. data/lib/plex_ruby_sdk/models/operations/activedirection.rb +19 -0
  7. data/lib/plex_ruby_sdk/models/operations/collection.rb +24 -0
  8. data/lib/plex_ruby_sdk/models/operations/defaultdirection.rb +19 -0
  9. data/lib/plex_ruby_sdk/models/operations/feature.rb +16 -4
  10. data/lib/plex_ruby_sdk/models/operations/field.rb +7 -7
  11. data/lib/plex_ruby_sdk/models/operations/fieldtype.rb +3 -3
  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 +1 -1
  14. data/lib/plex_ruby_sdk/models/operations/get_library_details_field.rb +33 -0
  15. data/lib/plex_ruby_sdk/models/operations/get_library_details_fieldtype.rb +27 -0
  16. data/lib/plex_ruby_sdk/models/operations/get_library_details_mediacontainer.rb +2 -2
  17. data/lib/plex_ruby_sdk/models/operations/get_library_details_operator.rb +27 -0
  18. data/lib/plex_ruby_sdk/models/operations/get_library_details_sort.rb +39 -0
  19. data/lib/plex_ruby_sdk/models/operations/get_library_details_type.rb +3 -3
  20. data/lib/plex_ruby_sdk/models/operations/get_library_items_activedirection.rb +19 -0
  21. data/lib/plex_ruby_sdk/models/operations/get_library_items_collection.rb +24 -0
  22. data/lib/plex_ruby_sdk/models/operations/get_library_items_defaultdirection.rb +19 -0
  23. data/lib/plex_ruby_sdk/models/operations/get_library_items_flattenseasons.rb +18 -0
  24. data/lib/plex_ruby_sdk/models/operations/get_library_items_hasthumbnail.rb +18 -0
  25. data/lib/plex_ruby_sdk/models/operations/get_library_items_image.rb +30 -0
  26. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_activedirection.rb +19 -0
  27. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_defaultdirection.rb +19 -0
  28. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_field.rb +33 -0
  29. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_fieldtype.rb +27 -0
  30. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_filter.rb +36 -0
  31. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_operator.rb +27 -0
  32. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_response_200_type.rb +20 -0
  33. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_response_type.rb +42 -0
  34. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_sort.rb +47 -0
  35. data/lib/plex_ruby_sdk/models/operations/get_library_items_library_type.rb +21 -0
  36. data/lib/plex_ruby_sdk/models/operations/get_library_items_media.rb +28 -16
  37. data/lib/plex_ruby_sdk/models/operations/get_library_items_mediacontainer.rb +27 -8
  38. data/lib/plex_ruby_sdk/models/operations/get_library_items_mediaguid.rb +26 -0
  39. data/lib/plex_ruby_sdk/models/operations/get_library_items_meta.rb +28 -0
  40. data/lib/plex_ruby_sdk/models/operations/get_library_items_metadata.rb +78 -22
  41. data/lib/plex_ruby_sdk/models/operations/get_library_items_metadatarating.rb +30 -0
  42. data/lib/plex_ruby_sdk/models/operations/get_library_items_optimizedforstreaming.rb +18 -0
  43. data/lib/plex_ruby_sdk/models/operations/get_library_items_part.rb +28 -9
  44. data/lib/plex_ruby_sdk/models/operations/get_library_items_queryparam_includemeta.rb +19 -0
  45. data/lib/plex_ruby_sdk/models/operations/get_library_items_queryparam_type.rb +26 -0
  46. data/lib/plex_ruby_sdk/models/operations/get_library_items_request.rb +10 -10
  47. data/lib/plex_ruby_sdk/models/operations/get_library_items_role.rb +18 -3
  48. data/lib/plex_ruby_sdk/models/operations/get_library_items_showordering.rb +27 -0
  49. data/lib/plex_ruby_sdk/models/operations/get_library_items_sort.rb +12 -4
  50. data/lib/plex_ruby_sdk/models/operations/get_library_items_stream.rb +135 -0
  51. data/lib/plex_ruby_sdk/models/operations/get_library_items_ultrablurcolors.rb +33 -0
  52. data/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_part.rb +2 -2
  53. data/lib/plex_ruby_sdk/models/operations/get_meta_data_by_rating_key_stream.rb +117 -0
  54. data/lib/plex_ruby_sdk/models/operations/get_recently_added_activedirection.rb +19 -0
  55. data/lib/plex_ruby_sdk/models/operations/get_recently_added_defaultdirection.rb +19 -0
  56. data/lib/plex_ruby_sdk/models/operations/get_recently_added_field.rb +33 -0
  57. data/lib/plex_ruby_sdk/models/operations/get_recently_added_fieldtype.rb +27 -0
  58. data/lib/plex_ruby_sdk/models/operations/get_recently_added_filter.rb +36 -0
  59. data/lib/plex_ruby_sdk/models/operations/get_recently_added_hubs_response_type.rb +20 -0
  60. data/lib/plex_ruby_sdk/models/operations/get_recently_added_hubs_type.rb +21 -0
  61. data/lib/plex_ruby_sdk/models/operations/get_recently_added_image.rb +30 -0
  62. data/lib/plex_ruby_sdk/models/operations/{getrecentlyadded_unauthorized.rb → get_recently_added_library_badrequest.rb} +2 -2
  63. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_country.rb +24 -0
  64. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_director.rb +24 -0
  65. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_filter.rb +36 -0
  66. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_genre.rb +24 -0
  67. data/lib/plex_ruby_sdk/models/operations/{getrecentlyadded_errors.rb → get_recently_added_library_library_errors.rb} +1 -1
  68. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_media.rb +69 -0
  69. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_mediacontainer.rb +49 -0
  70. data/lib/plex_ruby_sdk/models/operations/{getrecentlyadded_metadata.rb → get_recently_added_library_metadata.rb} +8 -8
  71. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_part.rb +51 -0
  72. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_request.rb +55 -0
  73. data/lib/plex_ruby_sdk/models/operations/{getrecentlyadded_response.rb → get_recently_added_library_response.rb} +5 -5
  74. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_responsebody.rb +24 -0
  75. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_role.rb +24 -0
  76. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_type.rb +42 -0
  77. data/lib/plex_ruby_sdk/models/operations/{getrecentlyadded_badrequest.rb → get_recently_added_library_unauthorized.rb} +4 -4
  78. data/lib/plex_ruby_sdk/models/operations/get_recently_added_library_writer.rb +24 -0
  79. data/lib/plex_ruby_sdk/models/operations/get_recently_added_mediacontainer.rb +43 -0
  80. data/lib/plex_ruby_sdk/models/operations/get_recently_added_metadata.rb +252 -0
  81. data/lib/plex_ruby_sdk/models/operations/get_recently_added_operator.rb +27 -0
  82. data/lib/plex_ruby_sdk/models/operations/get_recently_added_request.rb +55 -0
  83. data/lib/plex_ruby_sdk/models/operations/get_recently_added_response.rb +33 -0
  84. data/lib/plex_ruby_sdk/models/operations/{getrecentlyadded_responsebody.rb → get_recently_added_responsebody.rb} +1 -1
  85. data/lib/plex_ruby_sdk/models/operations/get_recently_added_sort.rb +47 -0
  86. data/lib/plex_ruby_sdk/models/operations/get_recently_added_type.rb +42 -0
  87. data/lib/plex_ruby_sdk/models/operations/get_search_library_queryparam_type.rb +26 -0
  88. data/lib/plex_ruby_sdk/models/operations/get_search_library_request.rb +2 -2
  89. data/lib/plex_ruby_sdk/models/operations/getpin_request.rb +8 -2
  90. data/lib/plex_ruby_sdk/models/operations/getplaylistcontents_queryparam_type.rb +1 -1
  91. data/lib/plex_ruby_sdk/models/operations/gettokendetails_userplexaccount.rb +5 -2
  92. data/lib/plex_ruby_sdk/models/operations/gettopwatchedcontent_queryparam_type.rb +1 -1
  93. data/lib/plex_ruby_sdk/models/operations/hasthumbnail.rb +18 -0
  94. data/lib/plex_ruby_sdk/models/operations/media.rb +26 -20
  95. data/lib/plex_ruby_sdk/models/operations/meta.rb +3 -3
  96. data/lib/plex_ruby_sdk/models/operations/metadatarating.rb +30 -0
  97. data/lib/plex_ruby_sdk/models/operations/operator.rb +3 -3
  98. data/lib/plex_ruby_sdk/models/operations/optimizedforstreaming.rb +18 -0
  99. data/lib/plex_ruby_sdk/models/operations/part.rb +25 -15
  100. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_request.rb +45 -0
  101. data/lib/plex_ruby_sdk/models/operations/post_users_sign_in_data_userplexaccount.rb +5 -2
  102. data/lib/plex_ruby_sdk/models/operations/queryparam_includemeta.rb +19 -0
  103. data/lib/plex_ruby_sdk/models/operations/queryparam_type.rb +1 -1
  104. data/lib/plex_ruby_sdk/models/operations/role.rb +18 -3
  105. data/lib/plex_ruby_sdk/models/operations/showordering.rb +27 -0
  106. data/lib/plex_ruby_sdk/models/operations/sort.rb +19 -11
  107. data/lib/plex_ruby_sdk/models/operations/stream.rb +58 -40
  108. data/lib/plex_ruby_sdk/models/operations/type.rb +1 -1
  109. data/lib/plex_ruby_sdk/models/operations/ultrablurcolors.rb +33 -0
  110. data/lib/plex_ruby_sdk/models/operations.rb +100 -32
  111. data/lib/plex_ruby_sdk/sdkconfiguration.rb +3 -3
  112. metadata +79 -11
  113. data/lib/plex_ruby_sdk/models/operations/getrecentlyadded_mediacontainer.rb +0 -42
  114. data/lib/plex_ruby_sdk/models/operations/getrecentlyadded_request.rb +0 -33
  115. /data/lib/plex_ruby_sdk/models/operations/{getrecentlyadded_library_errors.rb → get_recently_added_library_errors.rb} +0 -0
@@ -12,57 +12,63 @@ 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(::Float), { '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(::Float), { '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(::Float), { '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 :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
27
+ field :height, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
28
+
29
+ field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
28
30
 
29
- field :height, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
31
+ field :part, T::Array[::PlexRubySDK::Operations::Part], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
30
32
 
31
- field :id, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
33
+ field :video_codec, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } }
32
34
 
33
- field :optimized_for_streaming, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
35
+ field :video_frame_rate, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoFrameRate') } }
34
36
 
35
- field :part, T.nilable(T::Array[::PlexRubySDK::Operations::Part]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
37
+ field :video_profile, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
36
38
 
37
- field :video_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } }
39
+ field :video_resolution, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoResolution') } }
38
40
 
39
- field :video_frame_rate, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoFrameRate') } }
41
+ field :width, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
40
42
 
41
- field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
43
+ field :audio_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioProfile') } }
44
+
45
+ field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
42
46
 
43
- field :video_resolution, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoResolution') } }
47
+ field :has_voice_activity, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasVoiceActivity') } }
44
48
 
45
- field :width, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
49
+ 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) } }
46
50
 
47
51
 
48
- sig { params(aspect_ratio: T.nilable(::Float), audio_channels: T.nilable(::Float), audio_codec: T.nilable(::String), bitrate: T.nilable(::Float), container: T.nilable(::String), duration: T.nilable(::Float), has64bit_offsets: T.nilable(T::Boolean), height: T.nilable(::Float), id: T.nilable(::Float), optimized_for_streaming: T.nilable(::Float), part: T.nilable(T::Array[::PlexRubySDK::Operations::Part]), video_codec: T.nilable(::String), video_frame_rate: T.nilable(::String), video_profile: T.nilable(::String), video_resolution: T.nilable(::Float), width: T.nilable(::Float)).void }
49
- def initialize(aspect_ratio: nil, audio_channels: nil, audio_codec: nil, bitrate: nil, container: nil, duration: nil, has64bit_offsets: nil, height: nil, id: nil, optimized_for_streaming: nil, part: nil, video_codec: nil, video_frame_rate: nil, video_profile: nil, video_resolution: nil, width: nil)
52
+ 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::Part], video_codec: ::String, video_frame_rate: ::String, video_profile: ::String, video_resolution: ::String, width: ::Integer, audio_profile: T.nilable(::String), has64bit_offsets: T.nilable(T::Boolean), has_voice_activity: T.nilable(T::Boolean), optimized_for_streaming: T.nilable(::PlexRubySDK::Operations::OptimizedForStreaming)).void }
53
+ 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, has64bit_offsets: nil, has_voice_activity: nil, optimized_for_streaming: nil)
50
54
  @aspect_ratio = aspect_ratio
51
55
  @audio_channels = audio_channels
52
56
  @audio_codec = audio_codec
53
57
  @bitrate = bitrate
54
58
  @container = container
55
59
  @duration = duration
56
- @has64bit_offsets = has64bit_offsets
57
60
  @height = height
58
61
  @id = id
59
- @optimized_for_streaming = optimized_for_streaming
60
62
  @part = part
61
63
  @video_codec = video_codec
62
64
  @video_frame_rate = video_frame_rate
63
65
  @video_profile = video_profile
64
66
  @video_resolution = video_resolution
65
67
  @width = width
68
+ @audio_profile = audio_profile
69
+ @has64bit_offsets = has64bit_offsets
70
+ @has_voice_activity = has_voice_activity
71
+ @optimized_for_streaming = optimized_for_streaming
66
72
  end
67
73
  end
68
74
  end
@@ -13,12 +13,12 @@ module PlexRubySDK
13
13
  extend T::Sig
14
14
 
15
15
 
16
- field :field_type, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsFieldType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('FieldType') } }
16
+ field :field_type, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedFieldType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('FieldType') } }
17
17
 
18
- field :type, T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Type') } }
18
+ field :type, T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Type') } }
19
19
 
20
20
 
21
- sig { params(field_type: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsFieldType]), type: T.nilable(T::Array[::PlexRubySDK::Operations::GetLibraryItemsType])).void }
21
+ sig { params(field_type: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedFieldType]), type: T.nilable(T::Array[::PlexRubySDK::Operations::GetRecentlyAddedType])).void }
22
22
  def initialize(field_type: nil, type: nil)
23
23
  @field_type = field_type
24
24
  @type = type
@@ -0,0 +1,30 @@
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 MetaDataRating < ::PlexRubySDK::Utils::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # A URI or path to the rating image.
15
+ field :image, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('image') } }
16
+ # The type of rating (e.g., audience, critic).
17
+ field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
18
+ # The value of the rating.
19
+ field :value, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('value') } }
20
+
21
+
22
+ sig { params(image: ::String, type: ::String, value: ::Float).void }
23
+ def initialize(image: nil, type: nil, value: nil)
24
+ @image = image
25
+ @type = type
26
+ @value = value
27
+ end
28
+ end
29
+ end
30
+ end
@@ -12,12 +12,12 @@ module PlexRubySDK
12
12
  extend T::Sig
13
13
 
14
14
 
15
- field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
15
+ field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
16
16
 
17
- field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
17
+ field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
18
18
 
19
19
 
20
- sig { params(key: T.nilable(::String), title: T.nilable(::String)).void }
20
+ sig { params(key: ::String, title: ::String).void }
21
21
  def initialize(key: nil, title: nil)
22
22
  @key = key
23
23
  @title = title
@@ -0,0 +1,18 @@
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 OptimizedForStreaming < T::Enum
12
+ enums do
13
+ DISABLE = new(0)
14
+ ENABLE = new(1)
15
+ end
16
+ end
17
+ end
18
+ end
@@ -11,40 +11,50 @@ module PlexRubySDK
11
11
  class Part < ::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(::Float), { '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 :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
24
+ field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
22
25
 
23
- field :has_thumbnail, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasThumbnail') } }
26
+ field :size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
24
27
 
25
- field :id, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
28
+ field :video_profile, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
26
29
 
27
- field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
30
+ field :audio_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioProfile') } }
28
31
 
29
- field :optimized_for_streaming, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
32
+ field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
30
33
 
31
- field :size, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
34
+ 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) } }
35
+
36
+ field :indexes, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('indexes') } }
37
+
38
+ field :optimized_for_streaming, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
32
39
 
33
- field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
40
+ field :stream, T.nilable(T::Array[::PlexRubySDK::Operations::Stream]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Stream') } }
34
41
 
35
42
 
36
- sig { params(container: T.nilable(::String), duration: T.nilable(::Float), file: T.nilable(::String), has64bit_offsets: T.nilable(T::Boolean), has_thumbnail: T.nilable(::Float), id: T.nilable(::Float), key: T.nilable(::String), optimized_for_streaming: T.nilable(T::Boolean), size: T.nilable(::Float), video_profile: T.nilable(::String)).void }
37
- def initialize(container: nil, duration: nil, file: nil, has64bit_offsets: nil, has_thumbnail: nil, id: nil, key: nil, optimized_for_streaming: nil, size: nil, video_profile: nil)
43
+ sig { params(container: ::String, duration: ::Integer, file: ::String, id: ::Integer, key: ::String, size: ::Integer, video_profile: ::String, audio_profile: T.nilable(::String), has64bit_offsets: T.nilable(T::Boolean), has_thumbnail: T.nilable(::PlexRubySDK::Operations::HasThumbnail), indexes: T.nilable(::String), optimized_for_streaming: T.nilable(T::Boolean), stream: T.nilable(T::Array[::PlexRubySDK::Operations::Stream])).void }
44
+ def initialize(container: nil, duration: nil, file: nil, id: nil, key: nil, size: nil, video_profile: nil, audio_profile: nil, has64bit_offsets: nil, has_thumbnail: nil, indexes: nil, optimized_for_streaming: nil, stream: nil)
38
45
  @container = container
39
46
  @duration = duration
40
47
  @file = file
41
- @has64bit_offsets = has64bit_offsets
42
- @has_thumbnail = has_thumbnail
43
48
  @id = id
44
49
  @key = key
45
- @optimized_for_streaming = optimized_for_streaming
46
50
  @size = size
47
51
  @video_profile = video_profile
52
+ @audio_profile = audio_profile
53
+ @has64bit_offsets = has64bit_offsets
54
+ @has_thumbnail = has_thumbnail
55
+ @indexes = indexes
56
+ @optimized_for_streaming = optimized_for_streaming
57
+ @stream = stream
48
58
  end
49
59
  end
50
60
  end
@@ -0,0 +1,45 @@
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
+ POST_USERS_SIGN_IN_DATA_REQUEST_SERVERS = [
10
+ 'https://plex.tv/api/v2/'
11
+ ].freeze
12
+
13
+
14
+ class PostUsersSignInDataRequest < ::PlexRubySDK::Utils::FieldAugmented
15
+ extend T::Sig
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
+
23
+ field :client_name, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Product', 'style': 'form', 'explode': true } }
24
+
25
+ field :client_platform, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Platform', 'style': 'form', 'explode': true } }
26
+
27
+ field :client_version, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Version', 'style': 'form', 'explode': true } }
28
+
29
+ field :device_name, T.nilable(::String), { 'query_param': { 'field_name': 'X-Plex-Device', 'style': 'form', 'explode': true } }
30
+ # Login credentials
31
+ field :request_body, T.nilable(::PlexRubySDK::Operations::PostUsersSignInDataRequestBody), { 'request': { 'media_type': 'application/x-www-form-urlencoded' } }
32
+
33
+
34
+ sig { params(client_id: T.nilable(::String), client_name: T.nilable(::String), client_platform: T.nilable(::String), client_version: T.nilable(::String), device_name: T.nilable(::String), request_body: T.nilable(::PlexRubySDK::Operations::PostUsersSignInDataRequestBody)).void }
35
+ def initialize(client_id: nil, client_name: nil, client_platform: nil, client_version: nil, device_name: nil, request_body: nil)
36
+ @client_id = client_id
37
+ @client_name = client_name
38
+ @client_platform = client_platform
39
+ @client_version = client_version
40
+ @device_name = device_name
41
+ @request_body = request_body
42
+ end
43
+ end
44
+ end
45
+ end
@@ -22,6 +22,8 @@ module PlexRubySDK
22
22
  field :ads_consent_set_at, ::DateTime, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('adsConsentSetAt'), 'decoder': Utils.datetime_from_iso_format(false) } }
23
23
  # Unknown
24
24
  field :anonymous, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('anonymous') } }
25
+
26
+ field :attribution_partner, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('attributionPartner') } }
25
27
  # The account token
26
28
  field :auth_token, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('authToken') } }
27
29
  # If the two-factor authentication backup codes have been created
@@ -102,12 +104,13 @@ module PlexRubySDK
102
104
  field :roles, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('roles') } }
103
105
 
104
106
 
105
- sig { params(ads_consent: T::Boolean, ads_consent_reminder_at: ::DateTime, ads_consent_set_at: ::DateTime, anonymous: T::Boolean, auth_token: ::String, backup_codes_created: T::Boolean, confirmed: T::Boolean, country: ::String, email: ::String, email_only_auth: T::Boolean, entitlements: T::Array[::String], experimental_features: T::Boolean, friendly_name: ::String, guest: T::Boolean, has_password: T::Boolean, home: T::Boolean, home_admin: T::Boolean, home_size: ::Integer, id: ::Integer, joined_at: ::Integer, locale: ::String, mailing_list_active: T::Boolean, mailing_list_status: ::PlexRubySDK::Operations::PostUsersSignInDataMailingListStatus, max_home_size: ::Integer, past_subscriptions: T::Array[::PlexRubySDK::Operations::PastSubscription], profile: ::PlexRubySDK::Operations::PostUsersSignInDataUserProfile, protected: T::Boolean, remember_expires_at: ::Integer, restricted: T::Boolean, scrobble_types: ::String, services: T::Array[::PlexRubySDK::Operations::PostUsersSignInDataServices], subscription: ::PlexRubySDK::Operations::PostUsersSignInDataSubscription, subscription_description: ::String, subscriptions: T::Array[::PlexRubySDK::Operations::PostUsersSignInDataAuthenticationSubscription], thumb: ::String, title: ::String, trials: T::Array[::PlexRubySDK::Operations::Trials], two_factor_enabled: T::Boolean, username: ::String, uuid: ::String, pin: T.nilable(::String), roles: T.nilable(T::Array[::String])).void }
106
- def initialize(ads_consent: nil, ads_consent_reminder_at: nil, ads_consent_set_at: nil, anonymous: nil, auth_token: nil, backup_codes_created: nil, confirmed: nil, country: nil, email: nil, email_only_auth: nil, entitlements: nil, experimental_features: nil, friendly_name: nil, guest: nil, has_password: nil, home: nil, home_admin: nil, home_size: nil, id: nil, joined_at: nil, locale: nil, mailing_list_active: nil, mailing_list_status: nil, max_home_size: nil, past_subscriptions: nil, profile: nil, protected: nil, remember_expires_at: nil, restricted: nil, scrobble_types: nil, services: nil, subscription: nil, subscription_description: nil, subscriptions: nil, thumb: nil, title: nil, trials: nil, two_factor_enabled: nil, username: nil, uuid: nil, pin: nil, roles: nil)
107
+ sig { params(ads_consent: T::Boolean, ads_consent_reminder_at: ::DateTime, ads_consent_set_at: ::DateTime, anonymous: T::Boolean, attribution_partner: ::String, auth_token: ::String, backup_codes_created: T::Boolean, confirmed: T::Boolean, country: ::String, email: ::String, email_only_auth: T::Boolean, entitlements: T::Array[::String], experimental_features: T::Boolean, friendly_name: ::String, guest: T::Boolean, has_password: T::Boolean, home: T::Boolean, home_admin: T::Boolean, home_size: ::Integer, id: ::Integer, joined_at: ::Integer, locale: ::String, mailing_list_active: T::Boolean, mailing_list_status: ::PlexRubySDK::Operations::PostUsersSignInDataMailingListStatus, max_home_size: ::Integer, past_subscriptions: T::Array[::PlexRubySDK::Operations::PastSubscription], profile: ::PlexRubySDK::Operations::PostUsersSignInDataUserProfile, protected: T::Boolean, remember_expires_at: ::Integer, restricted: T::Boolean, scrobble_types: ::String, services: T::Array[::PlexRubySDK::Operations::PostUsersSignInDataServices], subscription: ::PlexRubySDK::Operations::PostUsersSignInDataSubscription, subscription_description: ::String, subscriptions: T::Array[::PlexRubySDK::Operations::PostUsersSignInDataAuthenticationSubscription], thumb: ::String, title: ::String, trials: T::Array[::PlexRubySDK::Operations::Trials], two_factor_enabled: T::Boolean, username: ::String, uuid: ::String, pin: T.nilable(::String), roles: T.nilable(T::Array[::String])).void }
108
+ def initialize(ads_consent: nil, ads_consent_reminder_at: nil, ads_consent_set_at: nil, anonymous: nil, attribution_partner: nil, auth_token: nil, backup_codes_created: nil, confirmed: nil, country: nil, email: nil, email_only_auth: nil, entitlements: nil, experimental_features: nil, friendly_name: nil, guest: nil, has_password: nil, home: nil, home_admin: nil, home_size: nil, id: nil, joined_at: nil, locale: nil, mailing_list_active: nil, mailing_list_status: nil, max_home_size: nil, past_subscriptions: nil, profile: nil, protected: nil, remember_expires_at: nil, restricted: nil, scrobble_types: nil, services: nil, subscription: nil, subscription_description: nil, subscriptions: nil, thumb: nil, title: nil, trials: nil, two_factor_enabled: nil, username: nil, uuid: nil, pin: nil, roles: nil)
107
109
  @ads_consent = ads_consent
108
110
  @ads_consent_reminder_at = ads_consent_reminder_at
109
111
  @ads_consent_set_at = ads_consent_set_at
110
112
  @anonymous = anonymous
113
+ @attribution_partner = attribution_partner
111
114
  @auth_token = auth_token
112
115
  @backup_codes_created = backup_codes_created
113
116
  @confirmed = confirmed
@@ -0,0 +1,19 @@
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
+ # QueryParamIncludeMeta - Adds the Meta object to the response
11
+ #
12
+ class QueryParamIncludeMeta < T::Enum
13
+ enums do
14
+ DISABLE = new(0)
15
+ ENABLE = new(1)
16
+ end
17
+ end
18
+ end
19
+ end
@@ -17,7 +17,7 @@ module PlexRubySDK
17
17
  class QueryParamType < T::Enum
18
18
  enums do
19
19
  MOVIE = new(1)
20
- SHOW = new(2)
20
+ TV_SHOW = new(2)
21
21
  SEASON = new(3)
22
22
  EPISODE = new(4)
23
23
  end
@@ -11,13 +11,28 @@ module PlexRubySDK
11
11
  class Role < ::PlexRubySDK::Utils::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
-
14
+ # The filter used to find the actor or tag.
15
+ field :filter, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
16
+ # The ID of the tag or actor.
17
+ field :id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
18
+ # The role of the actor or tag in the media.
19
+ field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } }
20
+ # The name of the tag or actor.
15
21
  field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
22
+ # Unique identifier for the tag.
23
+ field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
24
+ # The thumbnail of the actor
25
+ field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
16
26
 
17
27
 
18
- sig { params(tag: T.nilable(::String)).void }
19
- def initialize(tag: nil)
28
+ sig { params(filter: T.nilable(::String), id: T.nilable(::Integer), role: T.nilable(::String), tag: T.nilable(::String), tag_key: T.nilable(::String), thumb: T.nilable(::String)).void }
29
+ def initialize(filter: nil, id: nil, role: nil, tag: nil, tag_key: nil, thumb: nil)
30
+ @filter = filter
31
+ @id = id
32
+ @role = role
20
33
  @tag = tag
34
+ @tag_key = tag_key
35
+ @thumb = thumb
21
36
  end
22
37
  end
23
38
  end
@@ -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
+ # ShowOrdering - Setting that indicates the episode ordering for the show
11
+ # None = Library default,
12
+ # tmdbAiring = The Movie Database (Aired),
13
+ # aired = TheTVDB (Aired),
14
+ # dvd = TheTVDB (DVD),
15
+ # absolute = TheTVDB (Absolute)).
16
+ #
17
+ class ShowOrdering < T::Enum
18
+ enums do
19
+ NONE = new('None')
20
+ TMDB_AIRING = new('tmdbAiring')
21
+ AIRED = new('aired')
22
+ DVD = new('dvd')
23
+ ABSOLUTE = new('absolute')
24
+ end
25
+ end
26
+ end
27
+ end
@@ -11,28 +11,36 @@ module PlexRubySDK
11
11
  class Sort < ::PlexRubySDK::Utils::FieldAugmented
12
12
  extend T::Sig
13
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) } }
14
17
 
15
- field :default, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('default') } }
18
+ field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
16
19
 
17
- field :default_direction, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('defaultDirection') } }
20
+ field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
18
21
 
19
- field :desc_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('descKey') } }
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) } }
20
26
 
21
- field :first_character_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('firstCharacterKey') } }
27
+ field :default, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('default') } }
22
28
 
23
- field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
29
+ field :desc_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('descKey') } }
24
30
 
25
- field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
31
+ field :first_character_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('firstCharacterKey') } }
26
32
 
27
33
 
28
- sig { params(default: T.nilable(::String), default_direction: T.nilable(::String), desc_key: T.nilable(::String), first_character_key: T.nilable(::String), key: T.nilable(::String), title: T.nilable(::String)).void }
29
- def initialize(default: nil, default_direction: nil, desc_key: nil, first_character_key: nil, key: nil, title: nil)
30
- @default = default
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)
31
36
  @default_direction = default_direction
32
- @desc_key = desc_key
33
- @first_character_key = first_character_key
34
37
  @key = key
35
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
36
44
  end
37
45
  end
38
46
  end