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
@@ -9,47 +9,12 @@ module PlexRubySDK
|
|
9
9
|
module Operations
|
10
10
|
|
11
11
|
|
12
|
-
class GetLibraryItemsLibraryResponseType
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
|
20
|
-
|
21
|
-
field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
|
22
|
-
|
23
|
-
field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
|
24
|
-
|
25
|
-
field :field, T.nilable(T::Array[Models::Operations::GetLibraryItemsLibraryField]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Field') } }
|
26
|
-
|
27
|
-
field :filter, T.nilable(T::Array[Models::Operations::GetLibraryItemsLibraryFilter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Filter') } }
|
28
|
-
|
29
|
-
field :sort, T.nilable(T::Array[Models::Operations::GetLibraryItemsLibrarySort]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Sort') } }
|
30
|
-
|
31
|
-
|
32
|
-
sig { params(active: T::Boolean, key: ::String, title: ::String, type: ::String, field: T.nilable(T::Array[Models::Operations::GetLibraryItemsLibraryField]), filter: T.nilable(T::Array[Models::Operations::GetLibraryItemsLibraryFilter]), sort: T.nilable(T::Array[Models::Operations::GetLibraryItemsLibrarySort])).void }
|
33
|
-
def initialize(active: nil, key: nil, title: nil, type: nil, field: nil, filter: nil, sort: nil)
|
34
|
-
@active = active
|
35
|
-
@key = key
|
36
|
-
@title = title
|
37
|
-
@type = type
|
38
|
-
@field = field
|
39
|
-
@filter = filter
|
40
|
-
@sort = sort
|
41
|
-
end
|
42
|
-
|
43
|
-
def ==(other)
|
44
|
-
return false unless other.is_a? self.class
|
45
|
-
return false unless @active == other.active
|
46
|
-
return false unless @key == other.key
|
47
|
-
return false unless @title == other.title
|
48
|
-
return false unless @type == other.type
|
49
|
-
return false unless @field == other.field
|
50
|
-
return false unless @filter == other.filter
|
51
|
-
return false unless @sort == other.sort
|
52
|
-
true
|
12
|
+
class GetLibraryItemsLibraryResponseType < T::Enum
|
13
|
+
enums do
|
14
|
+
COVER_POSTER = new('coverPoster')
|
15
|
+
BACKGROUND = new('background')
|
16
|
+
SNAPSHOT = new('snapshot')
|
17
|
+
CLEAR_LOGO = new('clearLogo')
|
53
18
|
end
|
54
19
|
end
|
55
20
|
end
|
@@ -8,16 +8,48 @@ module PlexRubySDK
|
|
8
8
|
module Models
|
9
9
|
module Operations
|
10
10
|
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
11
|
+
|
12
|
+
class GetLibraryItemsLibraryType
|
13
|
+
extend T::Sig
|
14
|
+
include Crystalline::MetadataFields
|
15
|
+
|
16
|
+
|
17
|
+
field :active, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('active') } }
|
18
|
+
|
19
|
+
field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
|
20
|
+
|
21
|
+
field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
|
22
|
+
|
23
|
+
field :type, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type') } }
|
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
|
+
|
32
|
+
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])).void }
|
33
|
+
def initialize(active: nil, key: nil, title: nil, type: nil, field: nil, filter: nil, sort: nil)
|
34
|
+
@active = active
|
35
|
+
@key = key
|
36
|
+
@title = title
|
37
|
+
@type = type
|
38
|
+
@field = field
|
39
|
+
@filter = filter
|
40
|
+
@sort = sort
|
41
|
+
end
|
42
|
+
|
43
|
+
def ==(other)
|
44
|
+
return false unless other.is_a? self.class
|
45
|
+
return false unless @active == other.active
|
46
|
+
return false unless @key == other.key
|
47
|
+
return false unless @title == other.title
|
48
|
+
return false unless @type == other.type
|
49
|
+
return false unless @field == other.field
|
50
|
+
return false unless @filter == other.filter
|
51
|
+
return false unless @sort == other.sort
|
52
|
+
true
|
21
53
|
end
|
22
54
|
end
|
23
55
|
end
|
@@ -8,16 +8,16 @@ module PlexRubySDK
|
|
8
8
|
module Models
|
9
9
|
module Operations
|
10
10
|
|
11
|
-
|
11
|
+
# The folder path for the media item.
|
12
12
|
class GetLibraryItemsLocation
|
13
13
|
extend T::Sig
|
14
14
|
include Crystalline::MetadataFields
|
15
15
|
|
16
16
|
|
17
|
-
field :path,
|
17
|
+
field :path, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('path') } }
|
18
18
|
|
19
19
|
|
20
|
-
sig { params(path:
|
20
|
+
sig { params(path: ::String).void }
|
21
21
|
def initialize(path: nil)
|
22
22
|
@path = path
|
23
23
|
end
|
@@ -13,59 +13,65 @@ module PlexRubySDK
|
|
13
13
|
extend T::Sig
|
14
14
|
include Crystalline::MetadataFields
|
15
15
|
|
16
|
-
|
17
|
-
field :container, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
|
18
|
-
|
16
|
+
# Unique media identifier.
|
19
17
|
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
|
20
|
-
|
21
|
-
field :part, T::Array[Models::Operations::GetLibraryItemsPart], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
|
22
|
-
|
18
|
+
# Aspect ratio of the video.
|
23
19
|
field :aspect_ratio, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('aspectRatio') } }
|
24
|
-
|
20
|
+
# Number of audio channels.
|
25
21
|
field :audio_channels, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioChannels') } }
|
26
|
-
|
22
|
+
# Audio codec used.
|
27
23
|
field :audio_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioCodec') } }
|
28
|
-
|
24
|
+
# The audio profile used for the media (e.g., DTS, Dolby Digital, etc.).
|
29
25
|
field :audio_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audioProfile') } }
|
30
|
-
|
26
|
+
# Bitrate in bits per second.
|
31
27
|
field :bitrate, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('bitrate') } }
|
28
|
+
# Container format of the media.
|
29
|
+
field :container, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('container') } }
|
32
30
|
|
31
|
+
field :display_offset, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('displayOffset') } }
|
32
|
+
# Duration of the media in milliseconds.
|
33
33
|
field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
|
34
|
-
|
34
|
+
# Indicates whether the media has 64-bit offsets.
|
35
|
+
# This is relevant for media files that may require larger offsets than what 32-bit integers can provide.
|
36
|
+
#
|
35
37
|
field :has64bit_offsets, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('has64bitOffsets') } }
|
36
|
-
|
38
|
+
# Indicates whether voice activity is detected.
|
37
39
|
field :has_voice_activity, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasVoiceActivity') } }
|
38
|
-
|
40
|
+
# Video height in pixels.
|
39
41
|
field :height, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('height') } }
|
42
|
+
# Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
|
43
|
+
field :optimized_for_streaming, T.nilable(T.any(Models::Operations::OptimizedForStreaming1, T::Boolean)), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('optimizedForStreaming') } }
|
40
44
|
|
41
|
-
field :
|
42
|
-
|
45
|
+
field :part, T.nilable(T::Array[Models::Operations::GetLibraryItemsPart]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Part') } }
|
46
|
+
# Video codec used.
|
43
47
|
field :video_codec, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoCodec') } }
|
44
|
-
|
48
|
+
# Frame rate of the video. Values found include NTSC, PAL, 24p
|
49
|
+
#
|
45
50
|
field :video_frame_rate, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoFrameRate') } }
|
46
|
-
|
51
|
+
# Video profile (e.g., main 10).
|
47
52
|
field :video_profile, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoProfile') } }
|
48
|
-
|
53
|
+
# Video resolution (e.g., 4k).
|
49
54
|
field :video_resolution, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('videoResolution') } }
|
50
|
-
|
55
|
+
# Video width in pixels.
|
51
56
|
field :width, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('width') } }
|
52
57
|
|
53
58
|
|
54
|
-
sig { params(
|
55
|
-
def initialize(
|
56
|
-
@container = container
|
59
|
+
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::OptimizedForStreaming1, T::Boolean)), part: T.nilable(T::Array[Models::Operations::GetLibraryItemsPart]), video_codec: T.nilable(::String), video_frame_rate: T.nilable(::String), video_profile: T.nilable(::String), video_resolution: T.nilable(::String), width: T.nilable(::Integer)).void }
|
60
|
+
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)
|
57
61
|
@id = id
|
58
|
-
@part = part
|
59
62
|
@aspect_ratio = aspect_ratio
|
60
63
|
@audio_channels = audio_channels
|
61
64
|
@audio_codec = audio_codec
|
62
65
|
@audio_profile = audio_profile
|
63
66
|
@bitrate = bitrate
|
67
|
+
@container = container
|
68
|
+
@display_offset = display_offset
|
64
69
|
@duration = duration
|
65
70
|
@has64bit_offsets = has64bit_offsets
|
66
71
|
@has_voice_activity = has_voice_activity
|
67
72
|
@height = height
|
68
73
|
@optimized_for_streaming = optimized_for_streaming
|
74
|
+
@part = part
|
69
75
|
@video_codec = video_codec
|
70
76
|
@video_frame_rate = video_frame_rate
|
71
77
|
@video_profile = video_profile
|
@@ -75,19 +81,20 @@ module PlexRubySDK
|
|
75
81
|
|
76
82
|
def ==(other)
|
77
83
|
return false unless other.is_a? self.class
|
78
|
-
return false unless @container == other.container
|
79
84
|
return false unless @id == other.id
|
80
|
-
return false unless @part == other.part
|
81
85
|
return false unless @aspect_ratio == other.aspect_ratio
|
82
86
|
return false unless @audio_channels == other.audio_channels
|
83
87
|
return false unless @audio_codec == other.audio_codec
|
84
88
|
return false unless @audio_profile == other.audio_profile
|
85
89
|
return false unless @bitrate == other.bitrate
|
90
|
+
return false unless @container == other.container
|
91
|
+
return false unless @display_offset == other.display_offset
|
86
92
|
return false unless @duration == other.duration
|
87
93
|
return false unless @has64bit_offsets == other.has64bit_offsets
|
88
94
|
return false unless @has_voice_activity == other.has_voice_activity
|
89
95
|
return false unless @height == other.height
|
90
96
|
return false unless @optimized_for_streaming == other.optimized_for_streaming
|
97
|
+
return false unless @part == other.part
|
91
98
|
return false unless @video_codec == other.video_codec
|
92
99
|
return false unless @video_frame_rate == other.video_frame_rate
|
93
100
|
return false unless @video_profile == other.video_profile
|
@@ -8,72 +8,66 @@ module PlexRubySDK
|
|
8
8
|
module Models
|
9
9
|
module Operations
|
10
10
|
|
11
|
-
|
12
|
-
#
|
11
|
+
|
13
12
|
class GetLibraryItemsMediaContainer
|
14
13
|
extend T::Sig
|
15
14
|
include Crystalline::MetadataFields
|
16
15
|
|
17
|
-
|
16
|
+
# Indicates whether syncing is allowed.
|
18
17
|
field :allow_sync, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('allowSync') } }
|
19
|
-
|
18
|
+
# URL for the background artwork of the media container.
|
20
19
|
field :art, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } }
|
21
|
-
|
20
|
+
# The content type or mode.
|
22
21
|
field :content, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('content') } }
|
23
|
-
|
22
|
+
# An plugin identifier for the media container.
|
24
23
|
field :identifier, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('identifier') } }
|
25
|
-
|
26
|
-
field :library_section_id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
|
27
|
-
|
28
|
-
field :library_section_title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
|
29
|
-
|
30
|
-
field :library_section_uuid, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionUUID') } }
|
31
|
-
|
24
|
+
# The prefix used for media tag resource paths.
|
32
25
|
field :media_tag_prefix, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagPrefix') } }
|
33
|
-
|
26
|
+
# The version number for media tags.
|
34
27
|
field :media_tag_version, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mediaTagVersion') } }
|
35
|
-
|
28
|
+
# An array of metadata items.
|
29
|
+
field :metadata, T::Array[Models::Operations::GetLibraryItemsMetadata], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Metadata') } }
|
30
|
+
# Specifies whether caching is disabled.
|
31
|
+
field :nocache, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('nocache') } }
|
32
|
+
# Offset value for pagination.
|
36
33
|
field :offset, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('offset') } }
|
37
|
-
|
34
|
+
# Number of media items returned in this response.
|
38
35
|
field :size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('size') } }
|
39
|
-
|
36
|
+
# URL for the thumbnail image of the media container.
|
40
37
|
field :thumb, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
|
41
|
-
|
38
|
+
# The primary title of the media container.
|
42
39
|
field :title1, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title1') } }
|
43
|
-
|
40
|
+
# The secondary title of the media container.
|
44
41
|
field :title2, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title2') } }
|
45
|
-
|
42
|
+
# Total number of media items in the library.
|
46
43
|
field :total_size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('totalSize') } }
|
47
|
-
|
44
|
+
# Identifier for the view group layout.
|
48
45
|
field :view_group, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewGroup') } }
|
49
|
-
|
50
|
-
field :
|
46
|
+
# The unique identifier for the library section.
|
47
|
+
field :library_section_id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
|
48
|
+
# The title of the library section.
|
49
|
+
field :library_section_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
|
50
|
+
# The universally unique identifier for the library section.
|
51
|
+
field :library_section_uuid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionUUID') } }
|
51
52
|
# The Meta object is only included in the response if the `includeMeta` parameter is set to `1`.
|
52
53
|
#
|
53
54
|
field :meta, T.nilable(Models::Operations::GetLibraryItemsMeta), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Meta') } }
|
54
|
-
|
55
|
-
field :metadata, T.nilable(T::Array[Models::Operations::GetLibraryItemsMetadata]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Metadata') } }
|
56
|
-
|
55
|
+
# Indicates if the media container has mixed parents.
|
57
56
|
field :mixed_parents, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mixedParents') } }
|
57
|
+
# Identifier for the view mode.
|
58
|
+
field :view_mode, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewMode') } }
|
58
59
|
|
59
|
-
field :nocache, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('nocache') } }
|
60
|
-
|
61
|
-
field :type, T.nilable(T::Array[Models::Operations::GetLibraryItemsType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Type') } }
|
62
|
-
|
63
|
-
field :view_mode, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewMode') } }
|
64
60
|
|
65
|
-
|
66
|
-
|
67
|
-
def initialize(allow_sync: nil, art: nil, content: nil, identifier: nil, library_section_id: nil, library_section_title: nil, library_section_uuid: nil, media_tag_prefix: nil, media_tag_version: nil, offset: nil, size: nil, thumb: nil, title1: nil, title2: nil, total_size: nil, view_group: nil, field_type: nil, meta: nil, metadata: nil, mixed_parents: nil, nocache: nil, type: nil, view_mode: nil)
|
61
|
+
sig { params(allow_sync: T::Boolean, art: ::String, content: ::String, identifier: ::String, media_tag_prefix: ::String, media_tag_version: ::Integer, metadata: T::Array[Models::Operations::GetLibraryItemsMetadata], nocache: T::Boolean, offset: ::Integer, size: ::Integer, thumb: ::String, title1: ::String, title2: ::String, total_size: ::Integer, view_group: ::String, library_section_id: T.nilable(::Integer), library_section_title: T.nilable(::String), library_section_uuid: T.nilable(::String), meta: T.nilable(Models::Operations::GetLibraryItemsMeta), mixed_parents: T.nilable(T::Boolean), view_mode: T.nilable(::String)).void }
|
62
|
+
def initialize(allow_sync: nil, art: nil, content: nil, identifier: nil, media_tag_prefix: nil, media_tag_version: nil, metadata: nil, nocache: nil, offset: nil, size: nil, thumb: nil, title1: nil, title2: nil, total_size: nil, view_group: nil, library_section_id: nil, library_section_title: nil, library_section_uuid: nil, meta: nil, mixed_parents: nil, view_mode: nil)
|
68
63
|
@allow_sync = allow_sync
|
69
64
|
@art = art
|
70
65
|
@content = content
|
71
66
|
@identifier = identifier
|
72
|
-
@library_section_id = library_section_id
|
73
|
-
@library_section_title = library_section_title
|
74
|
-
@library_section_uuid = library_section_uuid
|
75
67
|
@media_tag_prefix = media_tag_prefix
|
76
68
|
@media_tag_version = media_tag_version
|
69
|
+
@metadata = metadata
|
70
|
+
@nocache = nocache
|
77
71
|
@offset = offset
|
78
72
|
@size = size
|
79
73
|
@thumb = thumb
|
@@ -81,12 +75,11 @@ module PlexRubySDK
|
|
81
75
|
@title2 = title2
|
82
76
|
@total_size = total_size
|
83
77
|
@view_group = view_group
|
84
|
-
@
|
78
|
+
@library_section_id = library_section_id
|
79
|
+
@library_section_title = library_section_title
|
80
|
+
@library_section_uuid = library_section_uuid
|
85
81
|
@meta = meta
|
86
|
-
@metadata = metadata
|
87
82
|
@mixed_parents = mixed_parents
|
88
|
-
@nocache = nocache
|
89
|
-
@type = type
|
90
83
|
@view_mode = view_mode
|
91
84
|
end
|
92
85
|
|
@@ -96,11 +89,10 @@ module PlexRubySDK
|
|
96
89
|
return false unless @art == other.art
|
97
90
|
return false unless @content == other.content
|
98
91
|
return false unless @identifier == other.identifier
|
99
|
-
return false unless @library_section_id == other.library_section_id
|
100
|
-
return false unless @library_section_title == other.library_section_title
|
101
|
-
return false unless @library_section_uuid == other.library_section_uuid
|
102
92
|
return false unless @media_tag_prefix == other.media_tag_prefix
|
103
93
|
return false unless @media_tag_version == other.media_tag_version
|
94
|
+
return false unless @metadata == other.metadata
|
95
|
+
return false unless @nocache == other.nocache
|
104
96
|
return false unless @offset == other.offset
|
105
97
|
return false unless @size == other.size
|
106
98
|
return false unless @thumb == other.thumb
|
@@ -108,12 +100,11 @@ module PlexRubySDK
|
|
108
100
|
return false unless @title2 == other.title2
|
109
101
|
return false unless @total_size == other.total_size
|
110
102
|
return false unless @view_group == other.view_group
|
111
|
-
return false unless @
|
103
|
+
return false unless @library_section_id == other.library_section_id
|
104
|
+
return false unless @library_section_title == other.library_section_title
|
105
|
+
return false unless @library_section_uuid == other.library_section_uuid
|
112
106
|
return false unless @meta == other.meta
|
113
|
-
return false unless @metadata == other.metadata
|
114
107
|
return false unless @mixed_parents == other.mixed_parents
|
115
|
-
return false unless @nocache == other.nocache
|
116
|
-
return false unless @type == other.type
|
117
108
|
return false unless @view_mode == other.view_mode
|
118
109
|
true
|
119
110
|
end
|
@@ -15,12 +15,12 @@ module PlexRubySDK
|
|
15
15
|
include Crystalline::MetadataFields
|
16
16
|
|
17
17
|
|
18
|
-
field :field_type, T.nilable(T::Array[Models::Operations::
|
18
|
+
field :field_type, T.nilable(T::Array[Models::Operations::GetLibraryItemsFieldType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('FieldType') } }
|
19
19
|
|
20
|
-
field :type, T.nilable(T::Array[Models::Operations::
|
20
|
+
field :type, T.nilable(T::Array[Models::Operations::GetLibraryItemsLibraryType]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Type') } }
|
21
21
|
|
22
22
|
|
23
|
-
sig { params(field_type: T.nilable(T::Array[Models::Operations::
|
23
|
+
sig { params(field_type: T.nilable(T::Array[Models::Operations::GetLibraryItemsFieldType]), type: T.nilable(T::Array[Models::Operations::GetLibraryItemsLibraryType])).void }
|
24
24
|
def initialize(field_type: nil, type: nil)
|
25
25
|
@field_type = field_type
|
26
26
|
@type = type
|