plex_ruby_sdk 0.7.6 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. checksums.yaml +4 -4
  2. data/lib/plex_ruby_sdk/activities.rb +115 -12
  3. data/lib/plex_ruby_sdk/authentication.rb +233 -29
  4. data/lib/plex_ruby_sdk/butler.rb +283 -30
  5. data/lib/plex_ruby_sdk/hubs.rb +174 -21
  6. data/lib/plex_ruby_sdk/library.rb +911 -152
  7. data/lib/plex_ruby_sdk/log.rb +179 -24
  8. data/lib/plex_ruby_sdk/media.rb +288 -35
  9. data/lib/plex_ruby_sdk/models/operations/collection.rb +3 -3
  10. data/lib/plex_ruby_sdk/models/operations/country.rb +10 -4
  11. data/lib/plex_ruby_sdk/models/operations/director.rb +3 -3
  12. data/lib/plex_ruby_sdk/models/operations/genre.rb +11 -4
  13. data/lib/plex_ruby_sdk/models/operations/get_all_media_library_genre.rb +2 -1
  14. data/lib/plex_ruby_sdk/models/operations/{getondeck_guids.rb → get_all_media_library_guids.rb} +3 -2
  15. data/lib/plex_ruby_sdk/models/operations/get_all_media_library_media.rb +8 -8
  16. data/lib/plex_ruby_sdk/models/operations/get_all_media_library_metadata.rb +6 -6
  17. data/lib/plex_ruby_sdk/models/operations/get_all_media_library_role.rb +1 -1
  18. data/lib/plex_ruby_sdk/models/operations/get_all_media_library_stream.rb +17 -11
  19. data/lib/plex_ruby_sdk/models/operations/get_library_items_media.rb +2 -2
  20. data/lib/plex_ruby_sdk/models/operations/get_library_items_metadata.rb +7 -7
  21. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_media.rb +8 -8
  22. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_metadata.rb +3 -3
  23. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_producer.rb +39 -0
  24. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_similar.rb +30 -0
  25. data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_stream.rb +17 -11
  26. data/lib/plex_ruby_sdk/models/operations/get_recently_added_mediacontainer.rb +15 -15
  27. data/lib/plex_ruby_sdk/models/operations/get_recently_added_metadata.rb +119 -133
  28. data/lib/plex_ruby_sdk/models/operations/hasthumbnail.rb +1 -1
  29. data/lib/plex_ruby_sdk/models/operations/location.rb +3 -3
  30. data/lib/plex_ruby_sdk/models/operations/media.rb +27 -23
  31. data/lib/plex_ruby_sdk/models/operations/part.rb +23 -15
  32. data/lib/plex_ruby_sdk/models/operations/producer.rb +8 -11
  33. data/lib/plex_ruby_sdk/models/operations/{get_library_items_metadatarating.rb → rating.rb} +5 -5
  34. data/lib/plex_ruby_sdk/models/operations/role.rb +12 -12
  35. data/lib/plex_ruby_sdk/models/operations/similar.rb +4 -4
  36. data/lib/plex_ruby_sdk/models/operations/stream.rb +77 -44
  37. data/lib/plex_ruby_sdk/models/operations/writer.rb +15 -6
  38. data/lib/plex_ruby_sdk/models/operations.rb +18 -33
  39. data/lib/plex_ruby_sdk/playlists.rb +513 -60
  40. data/lib/plex_ruby_sdk/plex.rb +388 -38
  41. data/lib/plex_ruby_sdk/plex_api.rb +29 -10
  42. data/lib/plex_ruby_sdk/sdk_hooks/hooks.rb +103 -0
  43. data/lib/plex_ruby_sdk/sdk_hooks/registration.rb +35 -0
  44. data/lib/plex_ruby_sdk/sdk_hooks/types.rb +152 -0
  45. data/lib/plex_ruby_sdk/sdkconfiguration.rb +26 -7
  46. data/lib/plex_ruby_sdk/search.rb +174 -21
  47. data/lib/plex_ruby_sdk/server.rb +505 -53
  48. data/lib/plex_ruby_sdk/sessions.rb +228 -25
  49. data/lib/plex_ruby_sdk/statistics.rb +174 -21
  50. data/lib/plex_ruby_sdk/updater.rb +173 -20
  51. data/lib/plex_ruby_sdk/users.rb +56 -4
  52. data/lib/plex_ruby_sdk/utils/retries.rb +95 -0
  53. data/lib/plex_ruby_sdk/utils/utils.rb +10 -0
  54. data/lib/plex_ruby_sdk/video.rb +117 -14
  55. data/lib/plex_ruby_sdk/watchlist.rb +60 -7
  56. metadata +40 -23
  57. data/lib/plex_ruby_sdk/models/operations/get_library_items_enablecreditsmarkergeneration.rb +0 -18
  58. data/lib/plex_ruby_sdk/models/operations/get_library_items_episodesort.rb +0 -19
  59. data/lib/plex_ruby_sdk/models/operations/get_library_items_flattenseasons.rb +0 -19
  60. data/lib/plex_ruby_sdk/models/operations/get_library_items_mediaguid.rb +0 -26
  61. data/lib/plex_ruby_sdk/models/operations/get_library_items_optimizedforstreaming.rb +0 -18
  62. data/lib/plex_ruby_sdk/models/operations/get_library_items_showordering.rb +0 -27
  63. data/lib/plex_ruby_sdk/models/operations/getondeck_badrequest.rb +0 -24
  64. data/lib/plex_ruby_sdk/models/operations/getondeck_errors.rb +0 -30
  65. data/lib/plex_ruby_sdk/models/operations/getondeck_library_errors.rb +0 -30
  66. data/lib/plex_ruby_sdk/models/operations/getondeck_media.rb +0 -66
  67. data/lib/plex_ruby_sdk/models/operations/getondeck_mediacontainer.rb +0 -42
  68. data/lib/plex_ruby_sdk/models/operations/getondeck_metadata.rb +0 -129
  69. data/lib/plex_ruby_sdk/models/operations/getondeck_part.rb +0 -48
  70. data/lib/plex_ruby_sdk/models/operations/getondeck_response.rb +0 -39
  71. data/lib/plex_ruby_sdk/models/operations/getondeck_responsebody.rb +0 -24
  72. data/lib/plex_ruby_sdk/models/operations/getondeck_stream.rb +0 -90
  73. data/lib/plex_ruby_sdk/models/operations/getondeck_unauthorized.rb +0 -24
@@ -5,7 +5,10 @@
5
5
 
6
6
  require 'faraday'
7
7
  require 'faraday/multipart'
8
+ require 'faraday/retry'
8
9
  require 'sorbet-runtime'
10
+ require_relative 'sdk_hooks/hooks'
11
+ require_relative 'utils/retries'
9
12
 
10
13
  module PlexRubySDK
11
14
  extend T::Sig
@@ -25,8 +28,8 @@ module PlexRubySDK
25
28
  end
26
29
 
27
30
 
28
- sig { params(request: T.nilable(::PlexRubySDK::Operations::GetWatchListRequest), server_url: T.nilable(String)).returns(::PlexRubySDK::Operations::GetWatchListResponse) }
29
- def get_watch_list(request, server_url = nil)
31
+ sig { params(request: T.nilable(::PlexRubySDK::Operations::GetWatchListRequest), server_url: T.nilable(String), timeout_ms: T.nilable(Integer)).returns(::PlexRubySDK::Operations::GetWatchListResponse) }
32
+ def get_watch_list(request, server_url = nil, timeout_ms = nil)
30
33
  # get_watch_list - Get User Watchlist
31
34
  # Get User Watchlist
32
35
  base_url = Utils.template_url(GET_WATCH_LIST_SERVERS[0], {
@@ -43,11 +46,61 @@ module PlexRubySDK
43
46
  headers['Accept'] = 'application/json'
44
47
  headers['user-agent'] = @sdk_configuration.user_agent
45
48
 
46
- r = @sdk_configuration.client.get(url) do |req|
47
- req.headers = headers
48
- req.params = query_params
49
- security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
50
- Utils.configure_request_security(req, security) if !security.nil?
49
+ security = !@sdk_configuration.nil? && !@sdk_configuration.security_source.nil? ? @sdk_configuration.security_source.call : nil
50
+
51
+ timeout = (timeout_ms.to_f / 1000) unless timeout_ms.nil?
52
+ timeout ||= @sdk_configuration.timeout
53
+
54
+ connection = @sdk_configuration.client
55
+
56
+ hook_ctx = SDKHooks::HookContext.new(
57
+ base_url: base_url,
58
+ oauth2_scopes: nil,
59
+ operation_id: 'get-watch-list',
60
+ security_source: @sdk_configuration.security_source
61
+ )
62
+
63
+ error = T.let(nil, T.nilable(StandardError))
64
+ r = T.let(nil, T.nilable(Faraday::Response))
65
+
66
+ begin
67
+ r = connection.get(url) do |req|
68
+ req.headers.merge!(headers)
69
+ req.options.timeout = timeout unless timeout.nil?
70
+ req.params = query_params
71
+ Utils.configure_request_security(req, security)
72
+
73
+ @sdk_configuration.hooks.before_request(
74
+ hook_ctx: SDKHooks::BeforeRequestHookContext.new(
75
+ hook_ctx: hook_ctx
76
+ ),
77
+ request: req
78
+ )
79
+ end
80
+ rescue StandardError => e
81
+ error = e
82
+ ensure
83
+ if r.nil? || Utils.error_status?(r.status)
84
+ r = @sdk_configuration.hooks.after_error(
85
+ error: error,
86
+ hook_ctx: SDKHooks::AfterErrorHookContext.new(
87
+ hook_ctx: hook_ctx
88
+ ),
89
+ response: r
90
+ )
91
+ else
92
+ r = @sdk_configuration.hooks.after_success(
93
+ hook_ctx: SDKHooks::AfterSuccessHookContext.new(
94
+ hook_ctx: hook_ctx
95
+ ),
96
+ response: r
97
+ )
98
+ end
99
+
100
+ if r.nil?
101
+ raise error if !error.nil?
102
+ raise 'no response'
103
+ end
51
104
  end
52
105
 
53
106
  content_type = r.headers.fetch('Content-Type', 'application/octet-stream')
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: plex_ruby_sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.6
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - LukeHagar
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-03-08 00:00:00.000000000 Z
11
+ date: 2025-03-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: faraday-retry
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: 2.2.1
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 2.2.1
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: rack
43
57
  requirement: !ruby/object:Gem::Requirement
@@ -114,14 +128,28 @@ dependencies:
114
128
  requirements:
115
129
  - - "~>"
116
130
  - !ruby/object:Gem::Version
117
- version: 1.60.2
131
+ version: 1.73.2
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: 1.73.2
139
+ - !ruby/object:Gem::Dependency
140
+ name: rubocop-minitest
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: 0.37.1
118
146
  type: :development
119
147
  prerelease: false
120
148
  version_requirements: !ruby/object:Gem::Requirement
121
149
  requirements:
122
150
  - - "~>"
123
151
  - !ruby/object:Gem::Version
124
- version: 1.60.2
152
+ version: 0.37.1
125
153
  - !ruby/object:Gem::Dependency
126
154
  name: sorbet
127
155
  requirement: !ruby/object:Gem::Requirement
@@ -296,6 +324,7 @@ files:
296
324
  - lib/plex_ruby_sdk/models/operations/get_all_media_library_fieldtype.rb
297
325
  - lib/plex_ruby_sdk/models/operations/get_all_media_library_filter.rb
298
326
  - lib/plex_ruby_sdk/models/operations/get_all_media_library_genre.rb
327
+ - lib/plex_ruby_sdk/models/operations/get_all_media_library_guids.rb
299
328
  - lib/plex_ruby_sdk/models/operations/get_all_media_library_hasthumbnail.rb
300
329
  - lib/plex_ruby_sdk/models/operations/get_all_media_library_image.rb
301
330
  - lib/plex_ruby_sdk/models/operations/get_all_media_library_library_errors.rb
@@ -366,13 +395,10 @@ files:
366
395
  - lib/plex_ruby_sdk/models/operations/get_library_items_country.rb
367
396
  - lib/plex_ruby_sdk/models/operations/get_library_items_defaultdirection.rb
368
397
  - lib/plex_ruby_sdk/models/operations/get_library_items_director.rb
369
- - lib/plex_ruby_sdk/models/operations/get_library_items_enablecreditsmarkergeneration.rb
370
- - lib/plex_ruby_sdk/models/operations/get_library_items_episodesort.rb
371
398
  - lib/plex_ruby_sdk/models/operations/get_library_items_errors.rb
372
399
  - lib/plex_ruby_sdk/models/operations/get_library_items_field.rb
373
400
  - lib/plex_ruby_sdk/models/operations/get_library_items_fieldtype.rb
374
401
  - lib/plex_ruby_sdk/models/operations/get_library_items_filter.rb
375
- - lib/plex_ruby_sdk/models/operations/get_library_items_flattenseasons.rb
376
402
  - lib/plex_ruby_sdk/models/operations/get_library_items_genre.rb
377
403
  - lib/plex_ruby_sdk/models/operations/get_library_items_hasthumbnail.rb
378
404
  - lib/plex_ruby_sdk/models/operations/get_library_items_image.rb
@@ -390,12 +416,9 @@ files:
390
416
  - lib/plex_ruby_sdk/models/operations/get_library_items_location.rb
391
417
  - lib/plex_ruby_sdk/models/operations/get_library_items_media.rb
392
418
  - lib/plex_ruby_sdk/models/operations/get_library_items_mediacontainer.rb
393
- - lib/plex_ruby_sdk/models/operations/get_library_items_mediaguid.rb
394
419
  - lib/plex_ruby_sdk/models/operations/get_library_items_meta.rb
395
420
  - lib/plex_ruby_sdk/models/operations/get_library_items_metadata.rb
396
- - lib/plex_ruby_sdk/models/operations/get_library_items_metadatarating.rb
397
421
  - lib/plex_ruby_sdk/models/operations/get_library_items_operator.rb
398
- - lib/plex_ruby_sdk/models/operations/get_library_items_optimizedforstreaming.rb
399
422
  - lib/plex_ruby_sdk/models/operations/get_library_items_part.rb
400
423
  - lib/plex_ruby_sdk/models/operations/get_library_items_queryparam_includemeta.rb
401
424
  - lib/plex_ruby_sdk/models/operations/get_library_items_queryparam_type.rb
@@ -403,7 +426,6 @@ files:
403
426
  - lib/plex_ruby_sdk/models/operations/get_library_items_response.rb
404
427
  - lib/plex_ruby_sdk/models/operations/get_library_items_responsebody.rb
405
428
  - lib/plex_ruby_sdk/models/operations/get_library_items_role.rb
406
- - lib/plex_ruby_sdk/models/operations/get_library_items_showordering.rb
407
429
  - lib/plex_ruby_sdk/models/operations/get_library_items_sort.rb
408
430
  - lib/plex_ruby_sdk/models/operations/get_library_items_stream.rb
409
431
  - lib/plex_ruby_sdk/models/operations/get_library_items_type.rb
@@ -424,10 +446,12 @@ files:
424
446
  - lib/plex_ruby_sdk/models/operations/get_media_meta_data_mediacontainer.rb
425
447
  - lib/plex_ruby_sdk/models/operations/get_media_meta_data_metadata.rb
426
448
  - lib/plex_ruby_sdk/models/operations/get_media_meta_data_part.rb
449
+ - lib/plex_ruby_sdk/models/operations/get_media_meta_data_producer.rb
427
450
  - lib/plex_ruby_sdk/models/operations/get_media_meta_data_request.rb
428
451
  - lib/plex_ruby_sdk/models/operations/get_media_meta_data_response.rb
429
452
  - lib/plex_ruby_sdk/models/operations/get_media_meta_data_responsebody.rb
430
453
  - lib/plex_ruby_sdk/models/operations/get_media_meta_data_role.rb
454
+ - lib/plex_ruby_sdk/models/operations/get_media_meta_data_similar.rb
431
455
  - lib/plex_ruby_sdk/models/operations/get_media_meta_data_stream.rb
432
456
  - lib/plex_ruby_sdk/models/operations/get_media_meta_data_ultrablurcolors.rb
433
457
  - lib/plex_ruby_sdk/models/operations/get_media_meta_data_unauthorized.rb
@@ -651,18 +675,6 @@ files:
651
675
  - lib/plex_ruby_sdk/models/operations/getmyplexaccount_responsebody.rb
652
676
  - lib/plex_ruby_sdk/models/operations/getmyplexaccount_server_errors.rb
653
677
  - lib/plex_ruby_sdk/models/operations/getmyplexaccount_unauthorized.rb
654
- - lib/plex_ruby_sdk/models/operations/getondeck_badrequest.rb
655
- - lib/plex_ruby_sdk/models/operations/getondeck_errors.rb
656
- - lib/plex_ruby_sdk/models/operations/getondeck_guids.rb
657
- - lib/plex_ruby_sdk/models/operations/getondeck_library_errors.rb
658
- - lib/plex_ruby_sdk/models/operations/getondeck_media.rb
659
- - lib/plex_ruby_sdk/models/operations/getondeck_mediacontainer.rb
660
- - lib/plex_ruby_sdk/models/operations/getondeck_metadata.rb
661
- - lib/plex_ruby_sdk/models/operations/getondeck_part.rb
662
- - lib/plex_ruby_sdk/models/operations/getondeck_response.rb
663
- - lib/plex_ruby_sdk/models/operations/getondeck_responsebody.rb
664
- - lib/plex_ruby_sdk/models/operations/getondeck_stream.rb
665
- - lib/plex_ruby_sdk/models/operations/getondeck_unauthorized.rb
666
678
  - lib/plex_ruby_sdk/models/operations/getpin_authpincontainer.rb
667
679
  - lib/plex_ruby_sdk/models/operations/getpin_badrequest.rb
668
680
  - lib/plex_ruby_sdk/models/operations/getpin_errors.rb
@@ -972,6 +984,7 @@ files:
972
984
  - lib/plex_ruby_sdk/models/operations/queryparam_onlytransient.rb
973
985
  - lib/plex_ruby_sdk/models/operations/queryparam_smart.rb
974
986
  - lib/plex_ruby_sdk/models/operations/queryparam_type.rb
987
+ - lib/plex_ruby_sdk/models/operations/rating.rb
975
988
  - lib/plex_ruby_sdk/models/operations/ratings.rb
976
989
  - lib/plex_ruby_sdk/models/operations/release.rb
977
990
  - lib/plex_ruby_sdk/models/operations/responsebody.rb
@@ -1067,6 +1080,9 @@ files:
1067
1080
  - lib/plex_ruby_sdk/playlists.rb
1068
1081
  - lib/plex_ruby_sdk/plex.rb
1069
1082
  - lib/plex_ruby_sdk/plex_api.rb
1083
+ - lib/plex_ruby_sdk/sdk_hooks/hooks.rb
1084
+ - lib/plex_ruby_sdk/sdk_hooks/registration.rb
1085
+ - lib/plex_ruby_sdk/sdk_hooks/types.rb
1070
1086
  - lib/plex_ruby_sdk/sdkconfiguration.rb
1071
1087
  - lib/plex_ruby_sdk/search.rb
1072
1088
  - lib/plex_ruby_sdk/server.rb
@@ -1076,6 +1092,7 @@ files:
1076
1092
  - lib/plex_ruby_sdk/statistics.rb
1077
1093
  - lib/plex_ruby_sdk/updater.rb
1078
1094
  - lib/plex_ruby_sdk/users.rb
1095
+ - lib/plex_ruby_sdk/utils/retries.rb
1079
1096
  - lib/plex_ruby_sdk/utils/utils.rb
1080
1097
  - lib/plex_ruby_sdk/video.rb
1081
1098
  - lib/plex_ruby_sdk/watchlist.rb
@@ -1,18 +0,0 @@
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
- # GetLibraryItemsEnableCreditsMarkerGeneration - Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled).
11
- class GetLibraryItemsEnableCreditsMarkerGeneration < T::Enum
12
- enums do
13
- LIBRARY_DEFAULT = new('-1')
14
- DISABLED = new('0')
15
- end
16
- end
17
- end
18
- end
@@ -1,19 +0,0 @@
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
- # GetLibraryItemsEpisodeSort - Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first).
11
- class GetLibraryItemsEpisodeSort < T::Enum
12
- enums do
13
- LIBRARY_DEFAULT = new('-1')
14
- OLDEST_FIRST = new('0')
15
- NEWEST_FIRST = new('1')
16
- end
17
- end
18
- end
19
- end
@@ -1,19 +0,0 @@
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
- # GetLibraryItemsFlattenSeasons - Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show).
11
- class GetLibraryItemsFlattenSeasons < T::Enum
12
- enums do
13
- LIBRARY_DEFAULT = new('-1')
14
- HIDE = new('0')
15
- SHOW = new('1')
16
- end
17
- end
18
- end
19
- end
@@ -1,26 +0,0 @@
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 GetLibraryItemsMediaGuid < ::Crystalline::FieldAugmented
12
- extend T::Sig
13
-
14
- # Can be one of the following formats:
15
- # imdb://tt13015952, tmdb://2434012, tvdb://7945991
16
- #
17
- field :id, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
18
-
19
-
20
- sig { params(id: ::String).void }
21
- def initialize(id: nil)
22
- @id = id
23
- end
24
- end
25
- end
26
- end
@@ -1,18 +0,0 @@
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 GetLibraryItemsOptimizedForStreaming < T::Enum
12
- enums do
13
- DISABLE = new(0)
14
- ENABLE = new(1)
15
- end
16
- end
17
- end
18
- end
@@ -1,27 +0,0 @@
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
- # GetLibraryItemsShowOrdering - 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 GetLibraryItemsShowOrdering < T::Enum
18
- enums do
19
- NONE = new('None')
20
- TMDB_AIRING = new('tmdbAiring')
21
- TVDB_AIRED = new('aired')
22
- TVDB_DVD = new('dvd')
23
- TVDB_ABSOLUTE = new('absolute')
24
- end
25
- end
26
- end
27
- end
@@ -1,24 +0,0 @@
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
- # Bad Request - A parameter was not specified, or was specified incorrectly.
11
- class GetOnDeckBadRequest < ::Crystalline::FieldAugmented
12
- extend T::Sig
13
-
14
-
15
- field :errors, T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckErrors]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('errors') } }
16
-
17
-
18
- sig { params(errors: T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckErrors])).void }
19
- def initialize(errors: nil)
20
- @errors = errors
21
- end
22
- end
23
- end
24
- end
@@ -1,30 +0,0 @@
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 GetOnDeckErrors < ::Crystalline::FieldAugmented
12
- extend T::Sig
13
-
14
-
15
- field :code, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('code') } }
16
-
17
- field :message, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('message') } }
18
-
19
- field :status, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('status') } }
20
-
21
-
22
- sig { params(code: T.nilable(::Integer), message: T.nilable(::String), status: T.nilable(::Integer)).void }
23
- def initialize(code: nil, message: nil, status: nil)
24
- @code = code
25
- @message = message
26
- @status = status
27
- end
28
- end
29
- end
30
- end
@@ -1,30 +0,0 @@
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 GetOnDeckLibraryErrors < ::Crystalline::FieldAugmented
12
- extend T::Sig
13
-
14
-
15
- field :code, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('code') } }
16
-
17
- field :message, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('message') } }
18
-
19
- field :status, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('status') } }
20
-
21
-
22
- sig { params(code: T.nilable(::Integer), message: T.nilable(::String), status: T.nilable(::Integer)).void }
23
- def initialize(code: nil, message: nil, status: nil)
24
- @code = code
25
- @message = message
26
- @status = status
27
- end
28
- end
29
- end
30
- end
@@ -1,66 +0,0 @@
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 GetOnDeckMedia < ::Crystalline::FieldAugmented
12
- extend T::Sig
13
-
14
-
15
- field :aspect_ratio, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('aspectRatio') } }
16
-
17
- field :audio_channels, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannels') } }
18
-
19
- field :audio_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioCodec') } }
20
-
21
- field :audio_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioProfile') } }
22
-
23
- field :bitrate, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitrate') } }
24
-
25
- field :container, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
26
-
27
- field :duration, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
28
-
29
- field :height, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
30
-
31
- field :id, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
32
-
33
- field :part, T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckPart]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
34
-
35
- field :video_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } }
36
-
37
- field :video_frame_rate, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoFrameRate') } }
38
-
39
- field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
40
-
41
- field :video_resolution, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoResolution') } }
42
-
43
- field :width, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
44
-
45
-
46
- sig { params(aspect_ratio: T.nilable(::Float), audio_channels: T.nilable(::Float), audio_codec: T.nilable(::String), audio_profile: T.nilable(::String), bitrate: T.nilable(::Float), container: T.nilable(::String), duration: T.nilable(::Float), height: T.nilable(::Float), id: T.nilable(::Float), part: T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckPart]), video_codec: T.nilable(::String), video_frame_rate: T.nilable(::String), video_profile: T.nilable(::String), video_resolution: T.nilable(::String), width: T.nilable(::Float)).void }
47
- def initialize(aspect_ratio: nil, audio_channels: nil, audio_codec: nil, audio_profile: 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)
48
- @aspect_ratio = aspect_ratio
49
- @audio_channels = audio_channels
50
- @audio_codec = audio_codec
51
- @audio_profile = audio_profile
52
- @bitrate = bitrate
53
- @container = container
54
- @duration = duration
55
- @height = height
56
- @id = id
57
- @part = part
58
- @video_codec = video_codec
59
- @video_frame_rate = video_frame_rate
60
- @video_profile = video_profile
61
- @video_resolution = video_resolution
62
- @width = width
63
- end
64
- end
65
- end
66
- end
@@ -1,42 +0,0 @@
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 GetOnDeckMediaContainer < ::Crystalline::FieldAugmented
12
- extend T::Sig
13
-
14
-
15
- field :allow_sync, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } }
16
-
17
- field :identifier, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
18
-
19
- field :media_tag_prefix, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagPrefix') } }
20
-
21
- field :media_tag_version, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagVersion') } }
22
-
23
- field :metadata, T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckMetadata]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Metadata') } }
24
-
25
- field :mixed_parents, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mixedParents') } }
26
-
27
- field :size, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
28
-
29
-
30
- sig { params(allow_sync: T.nilable(T::Boolean), identifier: T.nilable(::String), media_tag_prefix: T.nilable(::String), media_tag_version: T.nilable(::Float), metadata: T.nilable(T::Array[::PlexRubySDK::Operations::GetOnDeckMetadata]), mixed_parents: T.nilable(T::Boolean), size: T.nilable(::Float)).void }
31
- def initialize(allow_sync: nil, identifier: nil, media_tag_prefix: nil, media_tag_version: nil, metadata: nil, mixed_parents: nil, size: nil)
32
- @allow_sync = allow_sync
33
- @identifier = identifier
34
- @media_tag_prefix = media_tag_prefix
35
- @media_tag_version = media_tag_version
36
- @metadata = metadata
37
- @mixed_parents = mixed_parents
38
- @size = size
39
- end
40
- end
41
- end
42
- end