plex_ruby_sdk 0.15.0 → 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/models/operations/flattenseasons.rb +1 -0
- data/lib/plex_ruby_sdk/models/operations/get_actors_library_mediacontainer.rb +6 -6
- 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 -14
- 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_library_items_library_response_200_type.rb → get_library_items_optimizedforstreaming_1.rb} +3 -5
- 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_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_library_sections_all_media.rb +2 -2
- data/lib/plex_ruby_sdk/models/operations/get_library_sections_all_mediacontainer.rb +10 -10
- data/lib/plex_ruby_sdk/models/operations/get_library_sections_all_metadata.rb +6 -6
- data/lib/plex_ruby_sdk/models/operations/{streamtype.rb → get_library_sections_all_optimizedforstreaming_library_1.rb} +4 -9
- data/lib/plex_ruby_sdk/models/operations/get_library_sections_all_part.rb +2 -2
- data/lib/plex_ruby_sdk/models/operations/get_library_sections_all_stream.rb +5 -5
- 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_extras.rb +33 -0
- 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_stream.rb +18 -18
- 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_search_all_libraries_mediaguid.rb → get_search_all_libraries_guids.rb} +2 -3
- 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_writer.rb +12 -4
- 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.rb +18 -24
- data/lib/plex_ruby_sdk/sdkconfiguration.rb +3 -3
- metadata +18 -24
- 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_library_items_library_activedirection.rb +0 -21
- 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_fieldtype.rb +0 -37
- 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_sort.rb +0 -63
- data/lib/plex_ruby_sdk/models/operations/get_library_items_stream.rb +0 -181
- data/lib/plex_ruby_sdk/models/operations/get_library_sections_all_streamtype.rb +0 -25
- 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
@@ -8,199 +8,195 @@ module PlexRubySDK
|
|
8
8
|
module Models
|
9
9
|
module Operations
|
10
10
|
|
11
|
-
|
11
|
+
# Unknown
|
12
|
+
#
|
12
13
|
class GetSearchAllLibrariesMetadata
|
13
14
|
extend T::Sig
|
14
15
|
include Crystalline::MetadataFields
|
15
16
|
|
16
|
-
# Unix epoch datetime in seconds
|
17
|
-
field :added_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('addedAt') } }
|
18
17
|
|
18
|
+
field :added_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('addedAt') } }
|
19
|
+
# The art image URL for the media item.
|
20
|
+
field :art, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } }
|
21
|
+
# The audience rating for the media item.
|
22
|
+
field :audience_rating, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRating') } }
|
23
|
+
# The banner image URL for the media item.
|
24
|
+
field :banner, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('banner') } }
|
25
|
+
# The number of child items associated with this media item.
|
26
|
+
field :child_count, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('childCount') } }
|
27
|
+
# The duration of the media item in milliseconds.
|
28
|
+
field :duration, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
|
29
|
+
# The globally unique identifier for the media item.
|
19
30
|
field :guid, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('guid') } }
|
20
|
-
|
31
|
+
# The index position of the media item.
|
32
|
+
field :index, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('index') } }
|
33
|
+
# The unique key for the media item.
|
21
34
|
field :key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('key') } }
|
22
|
-
# The rating
|
23
|
-
|
24
|
-
#
|
35
|
+
# The critic rating for the media item.
|
36
|
+
field :rating, ::Float, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rating') } }
|
37
|
+
# The rating key (Media ID) of this media item. Note: Although this is always an integer, it is represented as a string in the API.
|
25
38
|
field :rating_key, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingKey') } }
|
26
|
-
|
39
|
+
# The total number of seasons (for TV shows).
|
40
|
+
field :season_count, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('seasonCount') } }
|
41
|
+
# A URL‐friendly version of the media title.
|
42
|
+
field :slug, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('slug') } }
|
43
|
+
# A synopsis of the media item.
|
27
44
|
field :summary, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('summary') } }
|
28
|
-
|
45
|
+
# A brief tagline for the media item.
|
46
|
+
field :tagline, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('tagline') } }
|
47
|
+
# The theme URL for the media item.
|
48
|
+
field :theme, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('theme') } }
|
49
|
+
# The thumbnail image URL for the media item.
|
50
|
+
field :thumb, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
|
51
|
+
# The title of the media item.
|
29
52
|
field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
|
30
|
-
# The
|
31
|
-
|
32
|
-
field :type, Models::Operations::GetSearchAllLibrariesType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(Models::Operations::GetSearchAllLibrariesType, false) } }
|
33
|
-
|
34
|
-
field :art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('art') } }
|
35
|
-
|
36
|
-
field :audience_rating, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRating') } }
|
53
|
+
# The sort title used for ordering media items.
|
54
|
+
field :title_sort, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('titleSort') } }
|
37
55
|
|
56
|
+
field :type, Models::Operations::GetSearchAllLibrariesType, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(Models::Operations::GetSearchAllLibrariesType, false) } }
|
57
|
+
# The URL for the audience rating image.
|
38
58
|
field :audience_rating_image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('audienceRatingImage') } }
|
39
|
-
|
40
|
-
field :banner, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('banner') } }
|
41
|
-
|
59
|
+
# The source from which chapter data is derived.
|
42
60
|
field :chapter_source, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('chapterSource') } }
|
43
|
-
|
44
|
-
field :child_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('childCount') } }
|
45
|
-
|
46
|
-
field :collection, T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesCollection]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Collection') } }
|
47
|
-
|
61
|
+
# The content rating for the media item.
|
48
62
|
field :content_rating, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('contentRating') } }
|
49
63
|
|
50
64
|
field :country, T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesCountry]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Country') } }
|
65
|
+
# The accuracy of the creation timestamp. This value indicates the format(s) provided (for example, 'epoch,local' means both epoch and local time formats are available).
|
66
|
+
field :created_at_accuracy, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('createdAtAccuracy') } }
|
67
|
+
# The time zone offset for the creation timestamp, represented as a string. This offset indicates the difference from UTC.
|
68
|
+
field :created_at_tz_offset, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('createdAtTZOffset') } }
|
51
69
|
|
52
70
|
field :director, T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesDirector]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Director') } }
|
53
|
-
|
54
|
-
field :duration, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('duration') } }
|
55
|
-
# Setting that indicates if credits markers detection is enabled. (-1 = Library default, 0 = Disabled).
|
56
|
-
field :enable_credits_marker_generation, T.nilable(Models::Operations::GetSearchAllLibrariesEnableCreditsMarkerGeneration), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('enableCreditsMarkerGeneration'), 'decoder': Utils.enum_from_string(Models::Operations::GetSearchAllLibrariesEnableCreditsMarkerGeneration, true) } }
|
57
|
-
# Setting that indicates how episodes are sorted for the show. (-1 = Library default, 0 = Oldest first, 1 = Newest first).
|
58
|
-
field :episode_sort, T.nilable(Models::Operations::GetSearchAllLibrariesEpisodeSort), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('episodeSort'), 'decoder': Utils.enum_from_string(Models::Operations::GetSearchAllLibrariesEpisodeSort, true) } }
|
59
71
|
# Setting that indicates if seasons are set to hidden for the show. (-1 = Library default, 0 = Hide, 1 = Show).
|
72
|
+
#
|
60
73
|
field :flatten_seasons, T.nilable(Models::Operations::GetSearchAllLibrariesFlattenSeasons), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('flattenSeasons'), 'decoder': Utils.enum_from_string(Models::Operations::GetSearchAllLibrariesFlattenSeasons, true) } }
|
61
74
|
|
62
75
|
field :genre, T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesGenre]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Genre') } }
|
63
|
-
|
76
|
+
# The art URL for the grandparent media item.
|
64
77
|
field :grandparent_art, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentArt') } }
|
65
|
-
|
78
|
+
# The GUID of the grandparent media item.
|
66
79
|
field :grandparent_guid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentGuid') } }
|
67
|
-
|
80
|
+
# The key of the grandparent media item.
|
68
81
|
field :grandparent_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentKey') } }
|
69
|
-
|
82
|
+
# The rating key of the grandparent media item.
|
70
83
|
field :grandparent_rating_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentRatingKey') } }
|
71
|
-
|
84
|
+
# The slug for the grandparent media item.
|
72
85
|
field :grandparent_slug, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentSlug') } }
|
73
|
-
|
86
|
+
# The theme URL for the grandparent media item.
|
74
87
|
field :grandparent_theme, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentTheme') } }
|
75
|
-
|
88
|
+
# The thumbnail URL for the grandparent media item.
|
76
89
|
field :grandparent_thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentThumb') } }
|
77
|
-
|
90
|
+
# The title of the grandparent media item.
|
78
91
|
field :grandparent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('grandparentTitle') } }
|
79
92
|
|
80
|
-
field :
|
81
|
-
|
82
|
-
field :has_premium_primary_extra, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasPremiumPrimaryExtra') } }
|
93
|
+
field :guids, T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesGuids]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } }
|
83
94
|
|
84
95
|
field :image, T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesImage]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Image') } }
|
85
|
-
|
86
|
-
field :
|
87
|
-
|
96
|
+
# The Unix timestamp representing the last time the item was rated.
|
97
|
+
field :last_rated_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('lastRatedAt') } }
|
98
|
+
# Unix timestamp for when the media item was last viewed.
|
88
99
|
field :last_viewed_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('lastViewedAt') } }
|
89
|
-
|
100
|
+
# The number of leaf items (end nodes) under this media item.
|
90
101
|
field :leaf_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('leafCount') } }
|
91
|
-
|
102
|
+
# The identifier for the library section.
|
92
103
|
field :library_section_id, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionID') } }
|
93
|
-
|
104
|
+
# The key corresponding to the library section.
|
94
105
|
field :library_section_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionKey') } }
|
95
|
-
|
106
|
+
# The title of the library section.
|
96
107
|
field :library_section_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('librarySectionTitle') } }
|
97
108
|
|
98
109
|
field :location, T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesLocation]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Location') } }
|
99
|
-
# The Media object is only included when type query is `4` or higher.
|
100
|
-
#
|
101
|
-
field :media, T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesMedia]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Media') } }
|
102
|
-
# The Guid object is only included in the response if the `includeGuids` parameter is set to `1`.
|
103
|
-
#
|
104
|
-
field :media_guid, T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesMediaGuid]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Guid') } }
|
105
|
-
|
106
|
-
field :meta_data_rating, T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesMetaDataRating]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Rating') } }
|
107
110
|
|
111
|
+
field :media, T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesMedia]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Media') } }
|
112
|
+
# The original release date of the media item.
|
108
113
|
field :originally_available_at, T.nilable(::Date), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originallyAvailableAt'), 'decoder': Utils.date_from_iso_format(true) } }
|
109
|
-
|
114
|
+
# The original title of the media item (if different).
|
110
115
|
field :original_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('originalTitle') } }
|
111
|
-
|
116
|
+
# The GUID of the parent media item.
|
112
117
|
field :parent_guid, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentGuid') } }
|
113
|
-
|
118
|
+
# The index position of the parent media item.
|
114
119
|
field :parent_index, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentIndex') } }
|
115
|
-
|
120
|
+
# The key of the parent media item.
|
116
121
|
field :parent_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentKey') } }
|
117
|
-
# The rating key of the parent item.
|
118
|
-
#
|
122
|
+
# The rating key of the parent media item.
|
119
123
|
field :parent_rating_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentRatingKey') } }
|
120
|
-
|
121
|
-
field :parent_slug, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentSlug') } }
|
122
|
-
|
123
|
-
field :parent_studio, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentStudio') } }
|
124
|
-
|
125
|
-
field :parent_theme, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentTheme') } }
|
126
|
-
|
124
|
+
# The thumbnail URL for the parent media item.
|
127
125
|
field :parent_thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentThumb') } }
|
128
|
-
|
126
|
+
# The title of the parent media item.
|
129
127
|
field :parent_title, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentTitle') } }
|
130
|
-
|
128
|
+
# The release year of the parent media item.
|
131
129
|
field :parent_year, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('parentYear') } }
|
132
|
-
|
130
|
+
# The primary extra key associated with this media item.
|
133
131
|
field :primary_extra_key, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('primaryExtraKey') } }
|
134
|
-
|
135
|
-
field :rating, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rating') } }
|
136
|
-
|
132
|
+
# The URL for the rating image.
|
137
133
|
field :rating_image, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('ratingImage') } }
|
138
134
|
|
139
135
|
field :role, T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesRole]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Role') } }
|
140
|
-
|
141
|
-
field :season_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('seasonCount') } }
|
142
136
|
# Setting that indicates the episode ordering for the show.
|
143
|
-
#
|
144
|
-
#
|
145
|
-
#
|
146
|
-
#
|
147
|
-
#
|
137
|
+
# Options:
|
138
|
+
# - None = Library default
|
139
|
+
# - tmdbAiring = The Movie Database (Aired)
|
140
|
+
# - aired = TheTVDB (Aired)
|
141
|
+
# - dvd = TheTVDB (DVD)
|
142
|
+
# - absolute = TheTVDB (Absolute)
|
148
143
|
#
|
149
144
|
field :show_ordering, T.nilable(Models::Operations::GetSearchAllLibrariesShowOrdering), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('showOrdering'), 'decoder': Utils.enum_from_string(Models::Operations::GetSearchAllLibrariesShowOrdering, true) } }
|
150
|
-
|
145
|
+
# Indicates whether child items should be skipped.
|
151
146
|
field :skip_children, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('skipChildren') } }
|
152
|
-
|
147
|
+
# The number of times this media item has been skipped.
|
153
148
|
field :skip_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('skipCount') } }
|
154
|
-
|
155
|
-
field :slug, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('slug') } }
|
156
|
-
|
149
|
+
# The studio that produced the media item.
|
157
150
|
field :studio, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('studio') } }
|
158
|
-
|
159
|
-
field :
|
160
|
-
|
161
|
-
field :theme, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('theme') } }
|
162
|
-
|
163
|
-
field :thumb, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
|
164
|
-
|
165
|
-
field :title_sort, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('titleSort') } }
|
151
|
+
# A classification that further describes the type of media item. For example, 'clip' indicates that the item is a short video clip.
|
152
|
+
field :subtype, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('subtype') } }
|
166
153
|
|
167
154
|
field :ultra_blur_colors, T.nilable(Models::Operations::GetSearchAllLibrariesUltraBlurColors), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('UltraBlurColors') } }
|
168
155
|
# Unix epoch datetime in seconds
|
169
156
|
field :updated_at, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('updatedAt') } }
|
170
|
-
|
157
|
+
# The rating provided by a user for the item. This value is expressed as a decimal number.
|
158
|
+
field :user_rating, T.nilable(::Float), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('userRating') } }
|
159
|
+
# The number of times this media item has been viewed.
|
171
160
|
field :view_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewCount') } }
|
172
|
-
|
161
|
+
# The number of leaf items that have been viewed.
|
173
162
|
field :viewed_leaf_count, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewedLeafCount') } }
|
174
|
-
|
163
|
+
# The current playback offset (in milliseconds).
|
175
164
|
field :view_offset, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('viewOffset') } }
|
176
165
|
|
177
166
|
field :writer, T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesWriter]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('Writer') } }
|
178
|
-
|
167
|
+
# The release year of the media item.
|
179
168
|
field :year, T.nilable(::Integer), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('year') } }
|
180
169
|
|
181
170
|
|
182
|
-
sig { params(added_at: ::Integer, guid: ::String, key: ::String, rating_key: ::String,
|
183
|
-
def initialize(added_at: nil,
|
171
|
+
sig { params(added_at: ::Integer, art: ::String, audience_rating: ::Float, banner: ::String, child_count: ::Integer, duration: ::Integer, guid: ::String, index: ::Integer, key: ::String, rating: ::Float, rating_key: ::String, season_count: ::Integer, slug: ::String, summary: ::String, tagline: ::String, theme: ::String, thumb: ::String, title: ::String, title_sort: ::String, type: Models::Operations::GetSearchAllLibrariesType, audience_rating_image: T.nilable(::String), chapter_source: T.nilable(::String), content_rating: T.nilable(::String), country: T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesCountry]), created_at_accuracy: T.nilable(::String), created_at_tz_offset: T.nilable(::String), director: T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesDirector]), flatten_seasons: T.nilable(Models::Operations::GetSearchAllLibrariesFlattenSeasons), genre: T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesGenre]), grandparent_art: T.nilable(::String), grandparent_guid: T.nilable(::String), grandparent_key: T.nilable(::String), grandparent_rating_key: T.nilable(::String), grandparent_slug: T.nilable(::String), grandparent_theme: T.nilable(::String), grandparent_thumb: T.nilable(::String), grandparent_title: T.nilable(::String), guids: T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesGuids]), image: T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesImage]), last_rated_at: T.nilable(::Integer), last_viewed_at: T.nilable(::Integer), leaf_count: T.nilable(::Integer), library_section_id: T.nilable(::Integer), library_section_key: T.nilable(::String), library_section_title: T.nilable(::String), location: T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesLocation]), media: T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesMedia]), originally_available_at: T.nilable(::Date), original_title: T.nilable(::String), parent_guid: T.nilable(::String), parent_index: T.nilable(::Integer), parent_key: T.nilable(::String), parent_rating_key: T.nilable(::String), parent_thumb: T.nilable(::String), parent_title: T.nilable(::String), parent_year: T.nilable(::Integer), primary_extra_key: T.nilable(::String), rating_image: T.nilable(::String), role: T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesRole]), show_ordering: T.nilable(Models::Operations::GetSearchAllLibrariesShowOrdering), skip_children: T.nilable(T::Boolean), skip_count: T.nilable(::Integer), studio: T.nilable(::String), subtype: T.nilable(::String), ultra_blur_colors: T.nilable(Models::Operations::GetSearchAllLibrariesUltraBlurColors), updated_at: T.nilable(::Integer), user_rating: T.nilable(::Float), view_count: T.nilable(::Integer), viewed_leaf_count: T.nilable(::Integer), view_offset: T.nilable(::Integer), writer: T.nilable(T::Array[Models::Operations::GetSearchAllLibrariesWriter]), year: T.nilable(::Integer)).void }
|
172
|
+
def initialize(added_at: nil, art: nil, audience_rating: nil, banner: nil, child_count: nil, duration: nil, guid: nil, index: nil, key: nil, rating: nil, rating_key: nil, season_count: nil, slug: nil, summary: nil, tagline: nil, theme: nil, thumb: nil, title: nil, title_sort: nil, type: nil, audience_rating_image: nil, chapter_source: nil, content_rating: nil, country: nil, created_at_accuracy: nil, created_at_tz_offset: nil, director: nil, flatten_seasons: nil, genre: nil, grandparent_art: nil, grandparent_guid: nil, grandparent_key: nil, grandparent_rating_key: nil, grandparent_slug: nil, grandparent_theme: nil, grandparent_thumb: nil, grandparent_title: nil, guids: nil, image: nil, last_rated_at: nil, last_viewed_at: nil, leaf_count: nil, library_section_id: nil, library_section_key: nil, library_section_title: nil, location: nil, media: nil, originally_available_at: nil, original_title: nil, parent_guid: nil, parent_index: nil, parent_key: nil, parent_rating_key: nil, parent_thumb: nil, parent_title: nil, parent_year: nil, primary_extra_key: nil, rating_image: nil, role: nil, show_ordering: nil, skip_children: nil, skip_count: nil, studio: nil, subtype: nil, ultra_blur_colors: nil, updated_at: nil, user_rating: nil, view_count: nil, viewed_leaf_count: nil, view_offset: nil, writer: nil, year: nil)
|
184
173
|
@added_at = added_at
|
174
|
+
@art = art
|
175
|
+
@audience_rating = audience_rating
|
176
|
+
@banner = banner
|
177
|
+
@child_count = child_count
|
178
|
+
@duration = duration
|
185
179
|
@guid = guid
|
180
|
+
@index = index
|
186
181
|
@key = key
|
182
|
+
@rating = rating
|
187
183
|
@rating_key = rating_key
|
184
|
+
@season_count = season_count
|
185
|
+
@slug = slug
|
188
186
|
@summary = summary
|
187
|
+
@tagline = tagline
|
188
|
+
@theme = theme
|
189
|
+
@thumb = thumb
|
189
190
|
@title = title
|
191
|
+
@title_sort = title_sort
|
190
192
|
@type = type
|
191
|
-
@art = art
|
192
|
-
@audience_rating = audience_rating
|
193
193
|
@audience_rating_image = audience_rating_image
|
194
|
-
@banner = banner
|
195
194
|
@chapter_source = chapter_source
|
196
|
-
@child_count = child_count
|
197
|
-
@collection = collection
|
198
195
|
@content_rating = content_rating
|
199
196
|
@country = country
|
197
|
+
@created_at_accuracy = created_at_accuracy
|
198
|
+
@created_at_tz_offset = created_at_tz_offset
|
200
199
|
@director = director
|
201
|
-
@duration = duration
|
202
|
-
@enable_credits_marker_generation = enable_credits_marker_generation
|
203
|
-
@episode_sort = episode_sort
|
204
200
|
@flatten_seasons = flatten_seasons
|
205
201
|
@genre = genre
|
206
202
|
@grandparent_art = grandparent_art
|
@@ -211,10 +207,9 @@ module PlexRubySDK
|
|
211
207
|
@grandparent_theme = grandparent_theme
|
212
208
|
@grandparent_thumb = grandparent_thumb
|
213
209
|
@grandparent_title = grandparent_title
|
214
|
-
@
|
215
|
-
@has_premium_primary_extra = has_premium_primary_extra
|
210
|
+
@guids = guids
|
216
211
|
@image = image
|
217
|
-
@
|
212
|
+
@last_rated_at = last_rated_at
|
218
213
|
@last_viewed_at = last_viewed_at
|
219
214
|
@leaf_count = leaf_count
|
220
215
|
@library_section_id = library_section_id
|
@@ -222,36 +217,26 @@ module PlexRubySDK
|
|
222
217
|
@library_section_title = library_section_title
|
223
218
|
@location = location
|
224
219
|
@media = media
|
225
|
-
@media_guid = media_guid
|
226
|
-
@meta_data_rating = meta_data_rating
|
227
220
|
@originally_available_at = originally_available_at
|
228
221
|
@original_title = original_title
|
229
222
|
@parent_guid = parent_guid
|
230
223
|
@parent_index = parent_index
|
231
224
|
@parent_key = parent_key
|
232
225
|
@parent_rating_key = parent_rating_key
|
233
|
-
@parent_slug = parent_slug
|
234
|
-
@parent_studio = parent_studio
|
235
|
-
@parent_theme = parent_theme
|
236
226
|
@parent_thumb = parent_thumb
|
237
227
|
@parent_title = parent_title
|
238
228
|
@parent_year = parent_year
|
239
229
|
@primary_extra_key = primary_extra_key
|
240
|
-
@rating = rating
|
241
230
|
@rating_image = rating_image
|
242
231
|
@role = role
|
243
|
-
@season_count = season_count
|
244
232
|
@show_ordering = show_ordering
|
245
233
|
@skip_children = skip_children
|
246
234
|
@skip_count = skip_count
|
247
|
-
@slug = slug
|
248
235
|
@studio = studio
|
249
|
-
@
|
250
|
-
@theme = theme
|
251
|
-
@thumb = thumb
|
252
|
-
@title_sort = title_sort
|
236
|
+
@subtype = subtype
|
253
237
|
@ultra_blur_colors = ultra_blur_colors
|
254
238
|
@updated_at = updated_at
|
239
|
+
@user_rating = user_rating
|
255
240
|
@view_count = view_count
|
256
241
|
@viewed_leaf_count = viewed_leaf_count
|
257
242
|
@view_offset = view_offset
|
@@ -262,25 +247,32 @@ module PlexRubySDK
|
|
262
247
|
def ==(other)
|
263
248
|
return false unless other.is_a? self.class
|
264
249
|
return false unless @added_at == other.added_at
|
250
|
+
return false unless @art == other.art
|
251
|
+
return false unless @audience_rating == other.audience_rating
|
252
|
+
return false unless @banner == other.banner
|
253
|
+
return false unless @child_count == other.child_count
|
254
|
+
return false unless @duration == other.duration
|
265
255
|
return false unless @guid == other.guid
|
256
|
+
return false unless @index == other.index
|
266
257
|
return false unless @key == other.key
|
258
|
+
return false unless @rating == other.rating
|
267
259
|
return false unless @rating_key == other.rating_key
|
260
|
+
return false unless @season_count == other.season_count
|
261
|
+
return false unless @slug == other.slug
|
268
262
|
return false unless @summary == other.summary
|
263
|
+
return false unless @tagline == other.tagline
|
264
|
+
return false unless @theme == other.theme
|
265
|
+
return false unless @thumb == other.thumb
|
269
266
|
return false unless @title == other.title
|
267
|
+
return false unless @title_sort == other.title_sort
|
270
268
|
return false unless @type == other.type
|
271
|
-
return false unless @art == other.art
|
272
|
-
return false unless @audience_rating == other.audience_rating
|
273
269
|
return false unless @audience_rating_image == other.audience_rating_image
|
274
|
-
return false unless @banner == other.banner
|
275
270
|
return false unless @chapter_source == other.chapter_source
|
276
|
-
return false unless @child_count == other.child_count
|
277
|
-
return false unless @collection == other.collection
|
278
271
|
return false unless @content_rating == other.content_rating
|
279
272
|
return false unless @country == other.country
|
273
|
+
return false unless @created_at_accuracy == other.created_at_accuracy
|
274
|
+
return false unless @created_at_tz_offset == other.created_at_tz_offset
|
280
275
|
return false unless @director == other.director
|
281
|
-
return false unless @duration == other.duration
|
282
|
-
return false unless @enable_credits_marker_generation == other.enable_credits_marker_generation
|
283
|
-
return false unless @episode_sort == other.episode_sort
|
284
276
|
return false unless @flatten_seasons == other.flatten_seasons
|
285
277
|
return false unless @genre == other.genre
|
286
278
|
return false unless @grandparent_art == other.grandparent_art
|
@@ -291,10 +283,9 @@ module PlexRubySDK
|
|
291
283
|
return false unless @grandparent_theme == other.grandparent_theme
|
292
284
|
return false unless @grandparent_thumb == other.grandparent_thumb
|
293
285
|
return false unless @grandparent_title == other.grandparent_title
|
294
|
-
return false unless @
|
295
|
-
return false unless @has_premium_primary_extra == other.has_premium_primary_extra
|
286
|
+
return false unless @guids == other.guids
|
296
287
|
return false unless @image == other.image
|
297
|
-
return false unless @
|
288
|
+
return false unless @last_rated_at == other.last_rated_at
|
298
289
|
return false unless @last_viewed_at == other.last_viewed_at
|
299
290
|
return false unless @leaf_count == other.leaf_count
|
300
291
|
return false unless @library_section_id == other.library_section_id
|
@@ -302,36 +293,26 @@ module PlexRubySDK
|
|
302
293
|
return false unless @library_section_title == other.library_section_title
|
303
294
|
return false unless @location == other.location
|
304
295
|
return false unless @media == other.media
|
305
|
-
return false unless @media_guid == other.media_guid
|
306
|
-
return false unless @meta_data_rating == other.meta_data_rating
|
307
296
|
return false unless @originally_available_at == other.originally_available_at
|
308
297
|
return false unless @original_title == other.original_title
|
309
298
|
return false unless @parent_guid == other.parent_guid
|
310
299
|
return false unless @parent_index == other.parent_index
|
311
300
|
return false unless @parent_key == other.parent_key
|
312
301
|
return false unless @parent_rating_key == other.parent_rating_key
|
313
|
-
return false unless @parent_slug == other.parent_slug
|
314
|
-
return false unless @parent_studio == other.parent_studio
|
315
|
-
return false unless @parent_theme == other.parent_theme
|
316
302
|
return false unless @parent_thumb == other.parent_thumb
|
317
303
|
return false unless @parent_title == other.parent_title
|
318
304
|
return false unless @parent_year == other.parent_year
|
319
305
|
return false unless @primary_extra_key == other.primary_extra_key
|
320
|
-
return false unless @rating == other.rating
|
321
306
|
return false unless @rating_image == other.rating_image
|
322
307
|
return false unless @role == other.role
|
323
|
-
return false unless @season_count == other.season_count
|
324
308
|
return false unless @show_ordering == other.show_ordering
|
325
309
|
return false unless @skip_children == other.skip_children
|
326
310
|
return false unless @skip_count == other.skip_count
|
327
|
-
return false unless @slug == other.slug
|
328
311
|
return false unless @studio == other.studio
|
329
|
-
return false unless @
|
330
|
-
return false unless @theme == other.theme
|
331
|
-
return false unless @thumb == other.thumb
|
332
|
-
return false unless @title_sort == other.title_sort
|
312
|
+
return false unless @subtype == other.subtype
|
333
313
|
return false unless @ultra_blur_colors == other.ultra_blur_colors
|
334
314
|
return false unless @updated_at == other.updated_at
|
315
|
+
return false unless @user_rating == other.user_rating
|
335
316
|
return false unless @view_count == other.view_count
|
336
317
|
return false unless @viewed_leaf_count == other.viewed_leaf_count
|
337
318
|
return false unless @view_offset == other.view_offset
|
@@ -8,11 +8,19 @@ module PlexRubySDK
|
|
8
8
|
module Models
|
9
9
|
module Operations
|
10
10
|
|
11
|
+
# Has this media been optimized for streaming. NOTE: This can be 0, 1, false or true
|
12
|
+
class GetSearchAllLibrariesOptimizedForStreaming
|
13
|
+
extend T::Sig
|
14
|
+
include Crystalline::MetadataFields
|
11
15
|
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
def initialize; end
|
20
|
+
|
21
|
+
def ==(other)
|
22
|
+
return false unless other.is_a? self.class
|
23
|
+
true
|
16
24
|
end
|
17
25
|
end
|
18
26
|
end
|
@@ -0,0 +1,20 @@
|
|
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 GetSearchAllLibrariesOptimizedForStreaming1 < T::Enum
|
13
|
+
enums do
|
14
|
+
ZERO = new(0)
|
15
|
+
ONE = new(1)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
data/lib/plex_ruby_sdk/models/operations/get_search_all_libraries_optimizedforstreaming_library_1.rb
ADDED
@@ -0,0 +1,20 @@
|
|
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 GetSearchAllLibrariesOptimizedForStreamingLibrary1 < T::Enum
|
13
|
+
enums do
|
14
|
+
ZERO = new(0)
|
15
|
+
ONE = new(1)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|