plex_ruby_sdk 0.13.1 → 0.17.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.
- checksums.yaml +4 -4
- data/lib/plex_ruby_sdk/library.rb +13 -12
- data/lib/plex_ruby_sdk/models/errors/{get_all_media_library_badrequest.rb → get_library_sections_all_badrequest.rb} +3 -3
- data/lib/plex_ruby_sdk/models/errors/{get_all_media_library_errors.rb → get_library_sections_all_errors.rb} +1 -1
- data/lib/plex_ruby_sdk/models/errors/{get_all_media_library_library_errors.rb → get_library_sections_all_library_errors.rb} +1 -1
- data/lib/plex_ruby_sdk/models/errors/{get_all_media_library_unauthorized.rb → get_library_sections_all_unauthorized.rb} +3 -3
- data/lib/plex_ruby_sdk/models/errors.rb +4 -4
- data/lib/plex_ruby_sdk/models/operations/country.rb +8 -6
- data/lib/plex_ruby_sdk/models/operations/director.rb +18 -2
- data/lib/plex_ruby_sdk/models/operations/flattenseasons.rb +1 -0
- data/lib/plex_ruby_sdk/models/operations/genre.rb +3 -1
- data/lib/plex_ruby_sdk/models/operations/get_actors_library_mediacontainer.rb +6 -6
- data/lib/plex_ruby_sdk/models/operations/get_actors_library_queryparam_type.rb +5 -3
- data/lib/plex_ruby_sdk/models/operations/get_all_libraries_type.rb +4 -0
- data/lib/plex_ruby_sdk/models/operations/get_countries_library_queryparam_type.rb +5 -3
- data/lib/plex_ruby_sdk/models/operations/get_genres_library_queryparam_type.rb +5 -3
- data/lib/plex_ruby_sdk/models/operations/get_library_items_collection.rb +3 -3
- data/lib/plex_ruby_sdk/models/operations/get_library_items_country.rb +10 -4
- data/lib/plex_ruby_sdk/models/operations/get_library_items_director.rb +12 -4
- data/lib/plex_ruby_sdk/models/operations/get_library_items_filter.rb +2 -6
- data/lib/plex_ruby_sdk/models/operations/get_library_items_genre.rb +13 -6
- data/lib/plex_ruby_sdk/models/operations/{mediaguid.rb → get_library_items_guids.rb} +2 -3
- data/lib/plex_ruby_sdk/models/operations/get_library_items_hasthumbnail.rb +2 -1
- data/lib/plex_ruby_sdk/models/operations/get_library_items_image.rb +2 -2
- data/lib/plex_ruby_sdk/models/operations/{get_search_all_libraries_collection.rb → get_library_items_library_optimizedforstreaming.rb} +5 -9
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_response_type.rb +6 -41
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_type.rb +42 -10
- data/lib/plex_ruby_sdk/models/operations/get_library_items_location.rb +3 -3
- data/lib/plex_ruby_sdk/models/operations/get_library_items_media.rb +32 -25
- data/lib/plex_ruby_sdk/models/operations/get_library_items_mediacontainer.rb +39 -48
- data/lib/plex_ruby_sdk/models/operations/get_library_items_meta.rb +3 -3
- data/lib/plex_ruby_sdk/models/operations/get_library_items_metadata.rb +146 -141
- data/lib/plex_ruby_sdk/models/operations/get_library_items_optimizedforstreaming.rb +12 -4
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_optimizedforstreaming_1.rb → get_library_items_optimizedforstreaming_1.rb} +1 -1
- data/lib/plex_ruby_sdk/models/operations/get_library_items_part.rb +36 -28
- data/lib/plex_ruby_sdk/models/operations/get_library_items_producer.rb +53 -0
- data/lib/plex_ruby_sdk/models/operations/get_library_items_queryparam_type.rb +5 -3
- data/lib/plex_ruby_sdk/models/operations/get_library_items_role.rb +12 -18
- data/lib/plex_ruby_sdk/models/operations/get_library_items_similar.rb +41 -0
- data/lib/plex_ruby_sdk/models/operations/get_library_items_type.rb +14 -46
- data/lib/plex_ruby_sdk/models/operations/get_library_items_writer.rb +12 -4
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_activedirection.rb → get_library_sections_all_activedirection.rb} +2 -2
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_collection.rb → get_library_sections_all_collection.rb} +1 -1
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_country.rb → get_library_sections_all_country.rb} +1 -1
- data/lib/plex_ruby_sdk/models/operations/{get_library_items_library_activedirection.rb → get_library_sections_all_defaultdirection.rb} +2 -2
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_director.rb → get_library_sections_all_director.rb} +1 -1
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_field.rb → get_library_sections_all_field.rb} +1 -1
- data/lib/plex_ruby_sdk/models/operations/{get_library_items_library_fieldtype.rb → get_library_sections_all_fieldtype.rb} +3 -3
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_filter.rb → get_library_sections_all_filter.rb} +1 -1
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_genre.rb → get_library_sections_all_genre.rb} +1 -1
- data/lib/plex_ruby_sdk/models/operations/{get_search_all_libraries_mediaguid.rb → get_library_sections_all_guids.rb} +2 -3
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_hasthumbnail.rb → get_library_sections_all_hasthumbnail.rb} +2 -2
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_image.rb → get_library_sections_all_image.rb} +3 -3
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_library_optimizedforstreaming.rb → get_library_sections_all_library_optimizedforstreaming.rb} +1 -1
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_library_response_type.rb → get_library_sections_all_library_response_type.rb} +1 -1
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_library_type.rb → get_library_sections_all_library_type.rb} +6 -2
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_media.rb → get_library_sections_all_media.rb} +4 -4
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_mediacontainer.rb → get_library_sections_all_mediacontainer.rb} +13 -13
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_meta.rb → get_library_sections_all_meta.rb} +4 -4
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_metadata.rb → get_library_sections_all_metadata.rb} +18 -18
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_operator.rb → get_library_sections_all_operator.rb} +1 -1
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_optimizedforstreaming.rb → get_library_sections_all_optimizedforstreaming.rb} +1 -1
- data/lib/plex_ruby_sdk/models/operations/get_library_sections_all_optimizedforstreaming_1.rb +20 -0
- data/lib/plex_ruby_sdk/models/operations/get_library_sections_all_optimizedforstreaming_library_1.rb +20 -0
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_part.rb → get_library_sections_all_part.rb} +5 -5
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_queryparam_includemeta.rb → get_library_sections_all_queryparam_includemeta.rb} +2 -2
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_queryparam_type.rb → get_library_sections_all_queryparam_type.rb} +7 -5
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_request.rb → get_library_sections_all_request.rb} +4 -4
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_response.rb → get_library_sections_all_response.rb} +3 -3
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_responsebody.rb → get_library_sections_all_responsebody.rb} +3 -3
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_role.rb → get_library_sections_all_role.rb} +1 -1
- data/lib/plex_ruby_sdk/models/operations/{get_library_items_library_sort.rb → get_library_sections_all_sort.rb} +4 -4
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_stream.rb → get_library_sections_all_stream.rb} +6 -6
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_type.rb → get_library_sections_all_type.rb} +5 -5
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_ultrablurcolors.rb → get_library_sections_all_ultrablurcolors.rb} +1 -1
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_writer.rb → get_library_sections_all_writer.rb} +1 -1
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_attributes.rb +37 -0
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_chapter.rb +53 -0
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_country.rb +8 -6
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_director.rb +4 -4
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_extras.rb +33 -0
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_genre.rb +3 -1
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_guids.rb +2 -1
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_hasthumbnail.rb +1 -0
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_library_optimizedforstreaming.rb +1 -0
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_marker.rb +53 -0
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_media.rb +5 -3
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_mediacontainer.rb +10 -10
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_metadata.rb +22 -22
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_part.rb +16 -15
- data/lib/plex_ruby_sdk/models/operations/{metadatarating.rb → get_media_meta_data_ratings.rb} +3 -3
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_request.rb +3 -3
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_role.rb +12 -8
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_stream.rb +18 -18
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_type.rb +5 -1
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_writer.rb +2 -2
- data/lib/plex_ruby_sdk/models/operations/get_recently_added_hubs_type.rb +5 -1
- data/lib/plex_ruby_sdk/models/operations/get_recently_added_metadata.rb +18 -18
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_country.rb +10 -4
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_director.rb +12 -4
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_directory.rb +81 -0
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_flattenseasons.rb +1 -0
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_genre.rb +13 -6
- data/lib/plex_ruby_sdk/models/operations/{get_all_media_library_guids.rb → get_search_all_libraries_guids.rb} +4 -4
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_hasthumbnail.rb +2 -1
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_library_optimizedforstreaming.rb +29 -0
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_location.rb +3 -3
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_media.rb +32 -25
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_mediacontainer.rb +32 -4
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_metadata.rb +128 -147
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_optimizedforstreaming.rb +12 -4
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_optimizedforstreaming_1.rb +20 -0
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_optimizedforstreaming_library_1.rb +20 -0
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_part.rb +36 -28
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_role.rb +12 -18
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_showordering.rb +6 -5
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_type.rb +5 -1
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_writer.rb +12 -4
- data/lib/plex_ruby_sdk/models/operations/get_search_library_queryparam_type.rb +5 -3
- data/lib/plex_ruby_sdk/models/operations/getplaylistcontents_queryparam_type.rb +5 -3
- data/lib/plex_ruby_sdk/models/operations/gettopwatchedcontent_mediacontainer.rb +14 -14
- data/lib/plex_ruby_sdk/models/operations/{streamtype.rb → gettopwatchedcontent_queryparam_includeguids.rb} +4 -8
- data/lib/plex_ruby_sdk/models/operations/gettopwatchedcontent_queryparam_type.rb +5 -3
- data/lib/plex_ruby_sdk/models/operations/gettopwatchedcontent_request.rb +3 -3
- data/lib/plex_ruby_sdk/models/operations/guids.rb +3 -3
- data/lib/plex_ruby_sdk/models/operations/producer.rb +5 -4
- data/lib/plex_ruby_sdk/models/operations/queryparam_type.rb +5 -3
- data/lib/plex_ruby_sdk/models/operations/rating.rb +1 -1
- data/lib/plex_ruby_sdk/models/operations/role.rb +12 -8
- data/lib/plex_ruby_sdk/models/operations/searchresult.rb +10 -6
- data/lib/plex_ruby_sdk/models/operations/showordering.rb +6 -5
- data/lib/plex_ruby_sdk/models/operations/stream.rb +5 -5
- data/lib/plex_ruby_sdk/models/operations/type.rb +5 -3
- data/lib/plex_ruby_sdk/models/operations/writer.rb +7 -3
- data/lib/plex_ruby_sdk/models/operations.rb +54 -59
- data/lib/plex_ruby_sdk/sdkconfiguration.rb +3 -3
- metadata +57 -62
- data/lib/plex_ruby_sdk/models/operations/enablecreditsmarkergeneration.rb +0 -20
- data/lib/plex_ruby_sdk/models/operations/episodesort.rb +0 -21
- data/lib/plex_ruby_sdk/models/operations/get_all_media_library_defaultdirection.rb +0 -21
- data/lib/plex_ruby_sdk/models/operations/get_all_media_library_fieldtype.rb +0 -37
- data/lib/plex_ruby_sdk/models/operations/get_all_media_library_sort.rb +0 -63
- data/lib/plex_ruby_sdk/models/operations/get_all_media_library_streamtype.rb +0 -25
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_defaultdirection.rb +0 -21
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_field.rb +0 -45
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_filter.rb +0 -49
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_operator.rb +0 -37
- data/lib/plex_ruby_sdk/models/operations/get_library_items_library_response_200_type.rb +0 -22
- data/lib/plex_ruby_sdk/models/operations/get_library_items_stream.rb +0 -181
- data/lib/plex_ruby_sdk/models/operations/get_media_meta_data_streamtype.rb +0 -25
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_enablecreditsmarkergeneration.rb +0 -20
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_episodesort.rb +0 -21
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_metadatarating.rb +0 -41
- data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_stream.rb +0 -181
@@ -13,66 +13,74 @@ module PlexRubySDK
|
|
13
13
|
extend T::Sig
|
14
14
|
include Crystalline::MetadataFields
|
15
15
|
|
16
|
-
#
|
17
|
-
#
|
18
|
-
field :container, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
|
19
|
-
|
20
|
-
field :file, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('file') } }
|
21
|
-
|
16
|
+
# Unique part identifier.
|
22
17
|
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
|
23
|
-
|
24
|
-
field :
|
25
|
-
|
26
|
-
field :size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
|
27
|
-
|
18
|
+
# Indicates if the part is accessible.
|
19
|
+
field :accessible, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('accessible') } }
|
20
|
+
# The audio profile used for the media (e.g., DTS, Dolby Digital, etc.).
|
28
21
|
field :audio_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioProfile') } }
|
29
|
-
|
22
|
+
# Container format of the part.
|
23
|
+
field :container, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
|
24
|
+
# Duration of the part in milliseconds.
|
30
25
|
field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
|
26
|
+
# Indicates if the part exists.
|
27
|
+
field :exists, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('exists') } }
|
28
|
+
# File path for the part.
|
29
|
+
field :file, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('file') } }
|
31
30
|
|
32
31
|
field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
|
33
32
|
|
34
33
|
field :has_thumbnail, T.nilable(Models::Operations::GetLibraryItemsHasThumbnail), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasThumbnail'), 'decoder': Utils.enum_from_string(Models::Operations::GetLibraryItemsHasThumbnail, true) } }
|
35
34
|
|
36
35
|
field :indexes, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('indexes') } }
|
36
|
+
# Key to access this part.
|
37
|
+
field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
|
38
|
+
# Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
|
39
|
+
#
|
40
|
+
field :optimized_for_streaming, T.nilable(T.any(Models::Operations::GetLibraryItemsOptimizedForStreaming1, T::Boolean)), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
|
37
41
|
|
38
|
-
field :
|
39
|
-
|
40
|
-
field :
|
41
|
-
|
42
|
+
field :packet_length, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('packetLength') } }
|
43
|
+
# File size in bytes.
|
44
|
+
field :size, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
|
45
|
+
# Video profile for the part.
|
42
46
|
field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
|
43
47
|
|
44
48
|
|
45
|
-
sig { params(
|
46
|
-
def initialize(
|
47
|
-
@container = container
|
48
|
-
@file = file
|
49
|
+
sig { params(id: ::Integer, accessible: T.nilable(T::Boolean), audio_profile: T.nilable(::String), container: T.nilable(::String), duration: T.nilable(::Integer), exists: T.nilable(T::Boolean), file: T.nilable(::String), has64bit_offsets: T.nilable(T::Boolean), has_thumbnail: T.nilable(Models::Operations::GetLibraryItemsHasThumbnail), indexes: T.nilable(::String), key: T.nilable(::String), optimized_for_streaming: T.nilable(T.any(Models::Operations::GetLibraryItemsOptimizedForStreaming1, T::Boolean)), packet_length: T.nilable(::Integer), size: T.nilable(::Integer), video_profile: T.nilable(::String)).void }
|
50
|
+
def initialize(id: nil, accessible: nil, audio_profile: nil, container: nil, duration: nil, exists: nil, file: nil, has64bit_offsets: nil, has_thumbnail: nil, indexes: nil, key: nil, optimized_for_streaming: nil, packet_length: nil, size: nil, video_profile: nil)
|
49
51
|
@id = id
|
50
|
-
@
|
51
|
-
@size = size
|
52
|
+
@accessible = accessible
|
52
53
|
@audio_profile = audio_profile
|
54
|
+
@container = container
|
53
55
|
@duration = duration
|
56
|
+
@exists = exists
|
57
|
+
@file = file
|
54
58
|
@has64bit_offsets = has64bit_offsets
|
55
59
|
@has_thumbnail = has_thumbnail
|
56
60
|
@indexes = indexes
|
61
|
+
@key = key
|
57
62
|
@optimized_for_streaming = optimized_for_streaming
|
58
|
-
@
|
63
|
+
@packet_length = packet_length
|
64
|
+
@size = size
|
59
65
|
@video_profile = video_profile
|
60
66
|
end
|
61
67
|
|
62
68
|
def ==(other)
|
63
69
|
return false unless other.is_a? self.class
|
64
|
-
return false unless @container == other.container
|
65
|
-
return false unless @file == other.file
|
66
70
|
return false unless @id == other.id
|
67
|
-
return false unless @
|
68
|
-
return false unless @size == other.size
|
71
|
+
return false unless @accessible == other.accessible
|
69
72
|
return false unless @audio_profile == other.audio_profile
|
73
|
+
return false unless @container == other.container
|
70
74
|
return false unless @duration == other.duration
|
75
|
+
return false unless @exists == other.exists
|
76
|
+
return false unless @file == other.file
|
71
77
|
return false unless @has64bit_offsets == other.has64bit_offsets
|
72
78
|
return false unless @has_thumbnail == other.has_thumbnail
|
73
79
|
return false unless @indexes == other.indexes
|
80
|
+
return false unless @key == other.key
|
74
81
|
return false unless @optimized_for_streaming == other.optimized_for_streaming
|
75
|
-
return false unless @
|
82
|
+
return false unless @packet_length == other.packet_length
|
83
|
+
return false unless @size == other.size
|
76
84
|
return false unless @video_profile == other.video_profile
|
77
85
|
true
|
78
86
|
end
|
@@ -0,0 +1,53 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module PlexRubySDK
|
8
|
+
module Models
|
9
|
+
module Operations
|
10
|
+
|
11
|
+
|
12
|
+
class GetLibraryItemsProducer
|
13
|
+
extend T::Sig
|
14
|
+
include Crystalline::MetadataFields
|
15
|
+
|
16
|
+
# The filter string for the role.
|
17
|
+
field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
|
18
|
+
# The unique role identifier.
|
19
|
+
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
|
20
|
+
# The actor's name.
|
21
|
+
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
|
22
|
+
# A key associated with the actor tag.
|
23
|
+
field :tag_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
|
24
|
+
# The character name or role.
|
25
|
+
field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } }
|
26
|
+
# URL for the role thumbnail image.
|
27
|
+
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
|
28
|
+
|
29
|
+
|
30
|
+
sig { params(filter: ::String, id: ::Integer, tag: ::String, tag_key: ::String, role: T.nilable(::String), thumb: T.nilable(::String)).void }
|
31
|
+
def initialize(filter: nil, id: nil, tag: nil, tag_key: nil, role: nil, thumb: nil)
|
32
|
+
@filter = filter
|
33
|
+
@id = id
|
34
|
+
@tag = tag
|
35
|
+
@tag_key = tag_key
|
36
|
+
@role = role
|
37
|
+
@thumb = thumb
|
38
|
+
end
|
39
|
+
|
40
|
+
def ==(other)
|
41
|
+
return false unless other.is_a? self.class
|
42
|
+
return false unless @filter == other.filter
|
43
|
+
return false unless @id == other.id
|
44
|
+
return false unless @tag == other.tag
|
45
|
+
return false unless @tag_key == other.tag_key
|
46
|
+
return false unless @role == other.role
|
47
|
+
return false unless @thumb == other.thumb
|
48
|
+
true
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
@@ -21,9 +21,11 @@ module PlexRubySDK
|
|
21
21
|
TV_SHOW = new(2)
|
22
22
|
SEASON = new(3)
|
23
23
|
EPISODE = new(4)
|
24
|
-
|
25
|
-
ALBUM = new(
|
26
|
-
TRACK = new(
|
24
|
+
ARTIST = new(5)
|
25
|
+
ALBUM = new(6)
|
26
|
+
TRACK = new(7)
|
27
|
+
PHOTO_ALBUM = new(8)
|
28
|
+
PHOTO = new(9)
|
27
29
|
end
|
28
30
|
end
|
29
31
|
end
|
@@ -13,37 +13,31 @@ module PlexRubySDK
|
|
13
13
|
extend T::Sig
|
14
14
|
include Crystalline::MetadataFields
|
15
15
|
|
16
|
-
# The
|
17
|
-
|
18
|
-
#
|
19
|
-
field :id,
|
20
|
-
# The
|
16
|
+
# The unique identifier for the role.
|
17
|
+
# NOTE: This is different for each Plex server and is not globally unique.
|
18
|
+
#
|
19
|
+
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
|
20
|
+
# The display tag for the actor (typically the actor's name).
|
21
|
+
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
|
22
|
+
# The role played by the actor in the media item.
|
21
23
|
field :role, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('role') } }
|
22
|
-
# The
|
23
|
-
field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
|
24
|
-
# Unique identifier for the tag.
|
25
|
-
field :tag_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagKey') } }
|
26
|
-
# The thumbnail of the actor
|
24
|
+
# The absolute URL of the thumbnail image for the actor.
|
27
25
|
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
|
28
26
|
|
29
27
|
|
30
|
-
sig { params(
|
31
|
-
def initialize(
|
32
|
-
@filter = filter
|
28
|
+
sig { params(id: ::Integer, tag: ::String, role: T.nilable(::String), thumb: T.nilable(::String)).void }
|
29
|
+
def initialize(id: nil, tag: nil, role: nil, thumb: nil)
|
33
30
|
@id = id
|
34
|
-
@role = role
|
35
31
|
@tag = tag
|
36
|
-
@
|
32
|
+
@role = role
|
37
33
|
@thumb = thumb
|
38
34
|
end
|
39
35
|
|
40
36
|
def ==(other)
|
41
37
|
return false unless other.is_a? self.class
|
42
|
-
return false unless @filter == other.filter
|
43
38
|
return false unless @id == other.id
|
44
|
-
return false unless @role == other.role
|
45
39
|
return false unless @tag == other.tag
|
46
|
-
return false unless @
|
40
|
+
return false unless @role == other.role
|
47
41
|
return false unless @thumb == other.thumb
|
48
42
|
true
|
49
43
|
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
2
|
+
|
3
|
+
# typed: true
|
4
|
+
# frozen_string_literal: true
|
5
|
+
|
6
|
+
|
7
|
+
module PlexRubySDK
|
8
|
+
module Models
|
9
|
+
module Operations
|
10
|
+
|
11
|
+
|
12
|
+
class GetLibraryItemsSimilar
|
13
|
+
extend T::Sig
|
14
|
+
include Crystalline::MetadataFields
|
15
|
+
|
16
|
+
# The filter string for similar items.
|
17
|
+
field :filter, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('filter') } }
|
18
|
+
# The unique similar item identifier.
|
19
|
+
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
|
20
|
+
# The tag or title of the similar content.
|
21
|
+
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
|
22
|
+
|
23
|
+
|
24
|
+
sig { params(filter: ::String, id: ::Integer, tag: ::String).void }
|
25
|
+
def initialize(filter: nil, id: nil, tag: nil)
|
26
|
+
@filter = filter
|
27
|
+
@id = id
|
28
|
+
@tag = tag
|
29
|
+
end
|
30
|
+
|
31
|
+
def ==(other)
|
32
|
+
return false unless other.is_a? self.class
|
33
|
+
return false unless @filter == other.filter
|
34
|
+
return false unless @id == other.id
|
35
|
+
return false unless @tag == other.tag
|
36
|
+
true
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
@@ -8,52 +8,20 @@ module PlexRubySDK
|
|
8
8
|
module Models
|
9
9
|
module Operations
|
10
10
|
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
field :field, T.nilable(T::Array[Models::Operations::GetLibraryItemsField]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Field') } }
|
26
|
-
|
27
|
-
field :filter, T.nilable(T::Array[Models::Operations::GetLibraryItemsFilter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Filter') } }
|
28
|
-
|
29
|
-
field :sort, T.nilable(T::Array[Models::Operations::GetLibraryItemsSort]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Sort') } }
|
30
|
-
|
31
|
-
field :subtype, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('subtype') } }
|
32
|
-
|
33
|
-
|
34
|
-
sig { params(active: T::Boolean, key: ::String, title: ::String, type: ::String, field: T.nilable(T::Array[Models::Operations::GetLibraryItemsField]), filter: T.nilable(T::Array[Models::Operations::GetLibraryItemsFilter]), sort: T.nilable(T::Array[Models::Operations::GetLibraryItemsSort]), subtype: T.nilable(::String)).void }
|
35
|
-
def initialize(active: nil, key: nil, title: nil, type: nil, field: nil, filter: nil, sort: nil, subtype: nil)
|
36
|
-
@active = active
|
37
|
-
@key = key
|
38
|
-
@title = title
|
39
|
-
@type = type
|
40
|
-
@field = field
|
41
|
-
@filter = filter
|
42
|
-
@sort = sort
|
43
|
-
@subtype = subtype
|
44
|
-
end
|
45
|
-
|
46
|
-
def ==(other)
|
47
|
-
return false unless other.is_a? self.class
|
48
|
-
return false unless @active == other.active
|
49
|
-
return false unless @key == other.key
|
50
|
-
return false unless @title == other.title
|
51
|
-
return false unless @type == other.type
|
52
|
-
return false unless @field == other.field
|
53
|
-
return false unless @filter == other.filter
|
54
|
-
return false unless @sort == other.sort
|
55
|
-
return false unless @subtype == other.subtype
|
56
|
-
true
|
11
|
+
# GetLibraryItemsType - The type of media content in the Plex library. This can represent videos, music, or photos.
|
12
|
+
#
|
13
|
+
class GetLibraryItemsType < T::Enum
|
14
|
+
enums do
|
15
|
+
MOVIE = new('movie')
|
16
|
+
TV_SHOW = new('show')
|
17
|
+
SEASON = new('season')
|
18
|
+
EPISODE = new('episode')
|
19
|
+
ARTIST = new('artist')
|
20
|
+
ALBUM = new('album')
|
21
|
+
TRACK = new('track')
|
22
|
+
PHOTO_ALBUM = new('photoalbum')
|
23
|
+
PHOTO = new('photo')
|
24
|
+
COLLECTION = new('collection')
|
57
25
|
end
|
58
26
|
end
|
59
27
|
end
|
@@ -13,18 +13,26 @@ module PlexRubySDK
|
|
13
13
|
extend T::Sig
|
14
14
|
include Crystalline::MetadataFields
|
15
15
|
|
16
|
+
# Unique identifier for the writer.
|
17
|
+
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
|
18
|
+
# The role of Writer
|
19
|
+
field :tag, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
|
20
|
+
# The absolute URL of the thumbnail image for the writer.
|
21
|
+
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
|
16
22
|
|
17
|
-
field :tag, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tag') } }
|
18
23
|
|
19
|
-
|
20
|
-
|
21
|
-
|
24
|
+
sig { params(id: ::Integer, tag: ::String, thumb: T.nilable(::String)).void }
|
25
|
+
def initialize(id: nil, tag: nil, thumb: nil)
|
26
|
+
@id = id
|
22
27
|
@tag = tag
|
28
|
+
@thumb = thumb
|
23
29
|
end
|
24
30
|
|
25
31
|
def ==(other)
|
26
32
|
return false unless other.is_a? self.class
|
33
|
+
return false unless @id == other.id
|
27
34
|
return false unless @tag == other.tag
|
35
|
+
return false unless @thumb == other.thumb
|
28
36
|
true
|
29
37
|
end
|
30
38
|
end
|
@@ -8,9 +8,9 @@ module PlexRubySDK
|
|
8
8
|
module Models
|
9
9
|
module Operations
|
10
10
|
|
11
|
-
#
|
11
|
+
# GetLibrarySectionsAllActiveDirection - The direction of the sort. Can be either `asc` or `desc`.
|
12
12
|
#
|
13
|
-
class
|
13
|
+
class GetLibrarySectionsAllActiveDirection < T::Enum
|
14
14
|
enums do
|
15
15
|
ASCENDING = new('asc')
|
16
16
|
DESCENDING = new('desc')
|
@@ -8,9 +8,9 @@ module PlexRubySDK
|
|
8
8
|
module Models
|
9
9
|
module Operations
|
10
10
|
|
11
|
-
#
|
11
|
+
# GetLibrarySectionsAllDefaultDirection - The direction of the sort. Can be either `asc` or `desc`.
|
12
12
|
#
|
13
|
-
class
|
13
|
+
class GetLibrarySectionsAllDefaultDirection < T::Enum
|
14
14
|
enums do
|
15
15
|
ASCENDING = new('asc')
|
16
16
|
DESCENDING = new('desc')
|
@@ -9,17 +9,17 @@ module PlexRubySDK
|
|
9
9
|
module Operations
|
10
10
|
|
11
11
|
|
12
|
-
class
|
12
|
+
class GetLibrarySectionsAllFieldType
|
13
13
|
extend T::Sig
|
14
14
|
include Crystalline::MetadataFields
|
15
15
|
|
16
16
|
|
17
|
-
field :operator, T::Array[Models::Operations::
|
17
|
+
field :operator, T::Array[Models::Operations::GetLibrarySectionsAllOperator], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Operator') } }
|
18
18
|
|
19
19
|
field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
|
20
20
|
|
21
21
|
|
22
|
-
sig { params(operator: T::Array[Models::Operations::
|
22
|
+
sig { params(operator: T::Array[Models::Operations::GetLibrarySectionsAllOperator], type: ::String).void }
|
23
23
|
def initialize(operator: nil, type: nil)
|
24
24
|
@operator = operator
|
25
25
|
@type = type
|
@@ -9,12 +9,11 @@ module PlexRubySDK
|
|
9
9
|
module Operations
|
10
10
|
|
11
11
|
|
12
|
-
class
|
12
|
+
class GetLibrarySectionsAllGuids
|
13
13
|
extend T::Sig
|
14
14
|
include Crystalline::MetadataFields
|
15
15
|
|
16
|
-
# Can be
|
17
|
-
# imdb://tt13015952, tmdb://2434012, tvdb://7945991
|
16
|
+
# The unique identifier for the Guid. Can be prefixed with imdb://, tmdb://, tvdb://
|
18
17
|
#
|
19
18
|
field :id, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
|
20
19
|
|
@@ -8,8 +8,8 @@ module PlexRubySDK
|
|
8
8
|
module Models
|
9
9
|
module Operations
|
10
10
|
|
11
|
-
#
|
12
|
-
class
|
11
|
+
# GetLibrarySectionsAllHasThumbnail - Indicates if the part has a thumbnail.
|
12
|
+
class GetLibrarySectionsAllHasThumbnail < T::Enum
|
13
13
|
enums do
|
14
14
|
FALSE = new('0')
|
15
15
|
TRUE = new('1')
|
@@ -9,19 +9,19 @@ module PlexRubySDK
|
|
9
9
|
module Operations
|
10
10
|
|
11
11
|
|
12
|
-
class
|
12
|
+
class GetLibrarySectionsAllImage
|
13
13
|
extend T::Sig
|
14
14
|
include Crystalline::MetadataFields
|
15
15
|
|
16
16
|
|
17
17
|
field :alt, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('alt') } }
|
18
18
|
|
19
|
-
field :type, Models::Operations::
|
19
|
+
field :type, Models::Operations::GetLibrarySectionsAllLibraryResponseType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(Models::Operations::GetLibrarySectionsAllLibraryResponseType, false) } }
|
20
20
|
|
21
21
|
field :url, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('url') } }
|
22
22
|
|
23
23
|
|
24
|
-
sig { params(alt: ::String, type: Models::Operations::
|
24
|
+
sig { params(alt: ::String, type: Models::Operations::GetLibrarySectionsAllLibraryResponseType, url: ::String).void }
|
25
25
|
def initialize(alt: nil, type: nil, url: nil)
|
26
26
|
@alt = alt
|
27
27
|
@type = type
|
@@ -9,7 +9,7 @@ module PlexRubySDK
|
|
9
9
|
module Operations
|
10
10
|
|
11
11
|
# Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
|
12
|
-
class
|
12
|
+
class GetLibrarySectionsAllLibraryOptimizedForStreaming
|
13
13
|
extend T::Sig
|
14
14
|
include Crystalline::MetadataFields
|
15
15
|
|
@@ -8,9 +8,9 @@ module PlexRubySDK
|
|
8
8
|
module Models
|
9
9
|
module Operations
|
10
10
|
|
11
|
-
#
|
11
|
+
# GetLibrarySectionsAllLibraryType - The type of media content in the Plex library. This can represent videos, music, or photos.
|
12
12
|
#
|
13
|
-
class
|
13
|
+
class GetLibrarySectionsAllLibraryType < T::Enum
|
14
14
|
enums do
|
15
15
|
MOVIE = new('movie')
|
16
16
|
TV_SHOW = new('show')
|
@@ -18,6 +18,10 @@ module PlexRubySDK
|
|
18
18
|
EPISODE = new('episode')
|
19
19
|
ARTIST = new('artist')
|
20
20
|
ALBUM = new('album')
|
21
|
+
TRACK = new('track')
|
22
|
+
PHOTO_ALBUM = new('photoalbum')
|
23
|
+
PHOTO = new('photo')
|
24
|
+
COLLECTION = new('collection')
|
21
25
|
end
|
22
26
|
end
|
23
27
|
end
|
@@ -9,7 +9,7 @@ module PlexRubySDK
|
|
9
9
|
module Operations
|
10
10
|
|
11
11
|
|
12
|
-
class
|
12
|
+
class GetLibrarySectionsAllMedia
|
13
13
|
extend T::Sig
|
14
14
|
include Crystalline::MetadataFields
|
15
15
|
|
@@ -38,9 +38,9 @@ module PlexRubySDK
|
|
38
38
|
# Video height in pixels.
|
39
39
|
field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
|
40
40
|
# Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
|
41
|
-
field :optimized_for_streaming, T.nilable(T.any(Models::Operations::
|
41
|
+
field :optimized_for_streaming, T.nilable(T.any(Models::Operations::GetLibrarySectionsAllOptimizedForStreaming1, T::Boolean)), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
|
42
42
|
# An array of parts for this media item.
|
43
|
-
field :part, T.nilable(T::Array[Models::Operations::
|
43
|
+
field :part, T.nilable(T::Array[Models::Operations::GetLibrarySectionsAllPart]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
|
44
44
|
# Video codec used.
|
45
45
|
field :video_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } }
|
46
46
|
# Frame rate of the video. Values found include NTSC, PAL, 24p
|
@@ -54,7 +54,7 @@ module PlexRubySDK
|
|
54
54
|
field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
|
55
55
|
|
56
56
|
|
57
|
-
sig { params(id: ::Integer, aspect_ratio: T.nilable(::Float), audio_channels: T.nilable(::Integer), audio_codec: T.nilable(::String), audio_profile: T.nilable(::String), bitrate: T.nilable(::Integer), container: T.nilable(::String), display_offset: T.nilable(::Integer), duration: T.nilable(::Integer), has64bit_offsets: T.nilable(T::Boolean), has_voice_activity: T.nilable(T::Boolean), height: T.nilable(::Integer), optimized_for_streaming: T.nilable(T.any(Models::Operations::
|
57
|
+
sig { params(id: ::Integer, aspect_ratio: T.nilable(::Float), audio_channels: T.nilable(::Integer), audio_codec: T.nilable(::String), audio_profile: T.nilable(::String), bitrate: T.nilable(::Integer), container: T.nilable(::String), display_offset: T.nilable(::Integer), duration: T.nilable(::Integer), has64bit_offsets: T.nilable(T::Boolean), has_voice_activity: T.nilable(T::Boolean), height: T.nilable(::Integer), optimized_for_streaming: T.nilable(T.any(Models::Operations::GetLibrarySectionsAllOptimizedForStreaming1, T::Boolean)), part: T.nilable(T::Array[Models::Operations::GetLibrarySectionsAllPart]), 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 }
|
58
58
|
def initialize(id: nil, aspect_ratio: nil, audio_channels: nil, audio_codec: nil, audio_profile: nil, bitrate: nil, container: nil, display_offset: nil, duration: nil, has64bit_offsets: nil, has_voice_activity: nil, height: nil, optimized_for_streaming: nil, part: nil, video_codec: nil, video_frame_rate: nil, video_profile: nil, video_resolution: nil, width: nil)
|
59
59
|
@id = id
|
60
60
|
@aspect_ratio = aspect_ratio
|