spotted 0.1.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 +7 -0
- data/.ignore +2 -0
- data/CHANGELOG.md +25 -0
- data/README.md +236 -0
- data/SECURITY.md +27 -0
- data/lib/spotted/client.rb +169 -0
- data/lib/spotted/errors.rb +228 -0
- data/lib/spotted/file_part.rb +58 -0
- data/lib/spotted/internal/cursor_url_page.rb +86 -0
- data/lib/spotted/internal/oauth2.rb +87 -0
- data/lib/spotted/internal/transport/base_client.rb +567 -0
- data/lib/spotted/internal/transport/pooled_net_requester.rb +204 -0
- data/lib/spotted/internal/type/array_of.rb +168 -0
- data/lib/spotted/internal/type/base_model.rb +529 -0
- data/lib/spotted/internal/type/base_page.rb +55 -0
- data/lib/spotted/internal/type/boolean.rb +77 -0
- data/lib/spotted/internal/type/converter.rb +327 -0
- data/lib/spotted/internal/type/enum.rb +131 -0
- data/lib/spotted/internal/type/file_input.rb +111 -0
- data/lib/spotted/internal/type/hash_of.rb +188 -0
- data/lib/spotted/internal/type/request_parameters.rb +42 -0
- data/lib/spotted/internal/type/union.rb +237 -0
- data/lib/spotted/internal/type/unknown.rb +81 -0
- data/lib/spotted/internal/util.rb +915 -0
- data/lib/spotted/internal.rb +20 -0
- data/lib/spotted/models/album_list_params.rb +43 -0
- data/lib/spotted/models/album_list_response.rb +297 -0
- data/lib/spotted/models/album_list_tracks_params.rb +50 -0
- data/lib/spotted/models/album_restriction_object.rb +39 -0
- data/lib/spotted/models/album_retrieve_params.rb +33 -0
- data/lib/spotted/models/album_retrieve_response.rb +287 -0
- data/lib/spotted/models/artist_list_albums_params.rb +61 -0
- data/lib/spotted/models/artist_list_albums_response.rb +195 -0
- data/lib/spotted/models/artist_list_params.rb +27 -0
- data/lib/spotted/models/artist_list_related_artists_params.rb +14 -0
- data/lib/spotted/models/artist_list_related_artists_response.rb +16 -0
- data/lib/spotted/models/artist_list_response.rb +16 -0
- data/lib/spotted/models/artist_list_top_tracks_params.rb +33 -0
- data/lib/spotted/models/artist_list_top_tracks_response.rb +16 -0
- data/lib/spotted/models/artist_object.rb +108 -0
- data/lib/spotted/models/artist_retrieve_params.rb +14 -0
- data/lib/spotted/models/audio_analysis_retrieve_params.rb +14 -0
- data/lib/spotted/models/audio_analysis_retrieve_response.rb +628 -0
- data/lib/spotted/models/audio_feature_list_params.rb +27 -0
- data/lib/spotted/models/audio_feature_list_response.rb +214 -0
- data/lib/spotted/models/audio_feature_retrieve_params.rb +14 -0
- data/lib/spotted/models/audio_feature_retrieve_response.rb +203 -0
- data/lib/spotted/models/audiobook_list_chapters_params.rb +50 -0
- data/lib/spotted/models/audiobook_list_params.rb +43 -0
- data/lib/spotted/models/audiobook_list_response.rb +266 -0
- data/lib/spotted/models/audiobook_retrieve_params.rb +33 -0
- data/lib/spotted/models/audiobook_retrieve_response.rb +255 -0
- data/lib/spotted/models/author_object.rb +19 -0
- data/lib/spotted/models/browse/category_get_playlists_params.rb +36 -0
- data/lib/spotted/models/browse/category_get_playlists_response.rb +29 -0
- data/lib/spotted/models/browse/category_list_params.rb +51 -0
- data/lib/spotted/models/browse/category_list_response.rb +121 -0
- data/lib/spotted/models/browse/category_retrieve_params.rb +34 -0
- data/lib/spotted/models/browse/category_retrieve_response.rb +47 -0
- data/lib/spotted/models/browse_get_featured_playlists_params.rb +49 -0
- data/lib/spotted/models/browse_get_featured_playlists_response.rb +27 -0
- data/lib/spotted/models/browse_get_new_releases_params.rb +34 -0
- data/lib/spotted/models/browse_get_new_releases_response.rb +245 -0
- data/lib/spotted/models/chapter_list_params.rb +43 -0
- data/lib/spotted/models/chapter_list_response.rb +408 -0
- data/lib/spotted/models/chapter_restriction_object.rb +29 -0
- data/lib/spotted/models/chapter_retrieve_params.rb +33 -0
- data/lib/spotted/models/chapter_retrieve_response.rb +398 -0
- data/lib/spotted/models/copyright_object.rb +28 -0
- data/lib/spotted/models/episode_list_params.rb +43 -0
- data/lib/spotted/models/episode_list_response.rb +16 -0
- data/lib/spotted/models/episode_object.rb +382 -0
- data/lib/spotted/models/episode_restriction_object.rb +28 -0
- data/lib/spotted/models/episode_retrieve_params.rb +33 -0
- data/lib/spotted/models/external_id_object.rb +35 -0
- data/lib/spotted/models/external_url_object.rb +20 -0
- data/lib/spotted/models/followers_object.rb +28 -0
- data/lib/spotted/models/image_object.rb +35 -0
- data/lib/spotted/models/linked_track_object.rb +53 -0
- data/lib/spotted/models/market_list_params.rb +14 -0
- data/lib/spotted/models/market_list_response.rb +16 -0
- data/lib/spotted/models/me/album_check_params.rb +29 -0
- data/lib/spotted/models/me/album_check_response.rb +10 -0
- data/lib/spotted/models/me/album_list_params.rb +52 -0
- data/lib/spotted/models/me/album_list_response.rb +318 -0
- data/lib/spotted/models/me/album_remove_params.rb +31 -0
- data/lib/spotted/models/me/album_save_params.rb +31 -0
- data/lib/spotted/models/me/audiobook_check_params.rb +29 -0
- data/lib/spotted/models/me/audiobook_check_response.rb +10 -0
- data/lib/spotted/models/me/audiobook_list_params.rb +36 -0
- data/lib/spotted/models/me/audiobook_list_response.rb +287 -0
- data/lib/spotted/models/me/audiobook_remove_params.rb +29 -0
- data/lib/spotted/models/me/audiobook_save_params.rb +29 -0
- data/lib/spotted/models/me/context_object.rb +46 -0
- data/lib/spotted/models/me/device_object.rb +82 -0
- data/lib/spotted/models/me/episode_check_params.rb +29 -0
- data/lib/spotted/models/me/episode_check_response.rb +10 -0
- data/lib/spotted/models/me/episode_list_params.rb +52 -0
- data/lib/spotted/models/me/episode_list_response.rb +32 -0
- data/lib/spotted/models/me/episode_remove_params.rb +31 -0
- data/lib/spotted/models/me/episode_save_params.rb +31 -0
- data/lib/spotted/models/me/following_check_params.rb +49 -0
- data/lib/spotted/models/me/following_check_response.rb +10 -0
- data/lib/spotted/models/me/following_follow_params.rb +50 -0
- data/lib/spotted/models/me/following_list_params.rb +53 -0
- data/lib/spotted/models/me/following_list_response.rb +94 -0
- data/lib/spotted/models/me/following_unfollow_params.rb +50 -0
- data/lib/spotted/models/me/player/queue_add_params.rb +38 -0
- data/lib/spotted/models/me/player/queue_get_params.rb +18 -0
- data/lib/spotted/models/me/player/queue_get_response.rb +59 -0
- data/lib/spotted/models/me/player_get_currently_playing_params.rb +48 -0
- data/lib/spotted/models/me/player_get_currently_playing_response.rb +175 -0
- data/lib/spotted/models/me/player_get_devices_params.rb +16 -0
- data/lib/spotted/models/me/player_get_devices_response.rb +18 -0
- data/lib/spotted/models/me/player_get_state_params.rb +48 -0
- data/lib/spotted/models/me/player_get_state_response.rb +200 -0
- data/lib/spotted/models/me/player_list_recently_played_params.rb +45 -0
- data/lib/spotted/models/me/player_list_recently_played_response.rb +35 -0
- data/lib/spotted/models/me/player_pause_playback_params.rb +28 -0
- data/lib/spotted/models/me/player_seek_to_position_params.rb +38 -0
- data/lib/spotted/models/me/player_set_repeat_mode_params.rb +38 -0
- data/lib/spotted/models/me/player_set_volume_params.rb +36 -0
- data/lib/spotted/models/me/player_skip_next_params.rb +28 -0
- data/lib/spotted/models/me/player_skip_previous_params.rb +28 -0
- data/lib/spotted/models/me/player_start_playback_params.rb +68 -0
- data/lib/spotted/models/me/player_toggle_shuffle_params.rb +37 -0
- data/lib/spotted/models/me/player_transfer_params.rb +40 -0
- data/lib/spotted/models/me/playlist_list_params.rb +36 -0
- data/lib/spotted/models/me/show_check_params.rb +29 -0
- data/lib/spotted/models/me/show_check_response.rb +10 -0
- data/lib/spotted/models/me/show_list_params.rb +36 -0
- data/lib/spotted/models/me/show_list_response.rb +197 -0
- data/lib/spotted/models/me/show_remove_params.rb +47 -0
- data/lib/spotted/models/me/show_save_params.rb +31 -0
- data/lib/spotted/models/me/top_list_top_artists_params.rb +47 -0
- data/lib/spotted/models/me/top_list_top_tracks_params.rb +47 -0
- data/lib/spotted/models/me/track_check_params.rb +29 -0
- data/lib/spotted/models/me/track_check_response.rb +10 -0
- data/lib/spotted/models/me/track_list_params.rb +52 -0
- data/lib/spotted/models/me/track_list_response.rb +34 -0
- data/lib/spotted/models/me/track_remove_params.rb +31 -0
- data/lib/spotted/models/me/track_save_params.rb +74 -0
- data/lib/spotted/models/me_retrieve_params.rb +14 -0
- data/lib/spotted/models/me_retrieve_response.rb +157 -0
- data/lib/spotted/models/narrator_object.rb +19 -0
- data/lib/spotted/models/paging_playlist_object.rb +66 -0
- data/lib/spotted/models/playlist_retrieve_params.rb +63 -0
- data/lib/spotted/models/playlist_retrieve_response.rb +217 -0
- data/lib/spotted/models/playlist_track_object.rb +64 -0
- data/lib/spotted/models/playlist_tracks_ref_object.rb +28 -0
- data/lib/spotted/models/playlist_update_params.rb +56 -0
- data/lib/spotted/models/playlist_user_object.rb +65 -0
- data/lib/spotted/models/playlists/follower_check_params.rb +29 -0
- data/lib/spotted/models/playlists/follower_check_response.rb +10 -0
- data/lib/spotted/models/playlists/follower_follow_params.rb +30 -0
- data/lib/spotted/models/playlists/follower_unfollow_params.rb +16 -0
- data/lib/spotted/models/playlists/image_list_params.rb +16 -0
- data/lib/spotted/models/playlists/image_list_response.rb +10 -0
- data/lib/spotted/models/playlists/image_update_params.rb +24 -0
- data/lib/spotted/models/playlists/track_add_params.rb +45 -0
- data/lib/spotted/models/playlists/track_add_response.rb +18 -0
- data/lib/spotted/models/playlists/track_list_params.rb +82 -0
- data/lib/spotted/models/playlists/track_remove_params.rb +52 -0
- data/lib/spotted/models/playlists/track_remove_response.rb +18 -0
- data/lib/spotted/models/playlists/track_update_params.rb +67 -0
- data/lib/spotted/models/playlists/track_update_response.rb +18 -0
- data/lib/spotted/models/recommendation_get_params.rb +549 -0
- data/lib/spotted/models/recommendation_get_response.rb +86 -0
- data/lib/spotted/models/recommendation_list_available_genre_seeds_params.rb +14 -0
- data/lib/spotted/models/recommendation_list_available_genre_seeds_response.rb +16 -0
- data/lib/spotted/models/resume_point_object.rb +27 -0
- data/lib/spotted/models/search_retrieve_params.rb +120 -0
- data/lib/spotted/models/search_retrieve_response.rb +930 -0
- data/lib/spotted/models/show_list_episodes_params.rb +50 -0
- data/lib/spotted/models/show_list_params.rb +43 -0
- data/lib/spotted/models/show_list_response.rb +176 -0
- data/lib/spotted/models/show_retrieve_params.rb +33 -0
- data/lib/spotted/models/show_retrieve_response.rb +238 -0
- data/lib/spotted/models/simplified_artist_object.rb +73 -0
- data/lib/spotted/models/simplified_chapter_object.rb +209 -0
- data/lib/spotted/models/simplified_episode_object.rb +211 -0
- data/lib/spotted/models/simplified_playlist_object.rb +147 -0
- data/lib/spotted/models/simplified_track_object.rb +161 -0
- data/lib/spotted/models/time_interval_object.rb +32 -0
- data/lib/spotted/models/track_list_params.rb +43 -0
- data/lib/spotted/models/track_list_response.rb +16 -0
- data/lib/spotted/models/track_object.rb +375 -0
- data/lib/spotted/models/track_restriction_object.rb +28 -0
- data/lib/spotted/models/track_retrieve_params.rb +33 -0
- data/lib/spotted/models/user_retrieve_profile_params.rb +14 -0
- data/lib/spotted/models/user_retrieve_profile_response.rb +90 -0
- data/lib/spotted/models/users/playlist_create_params.rb +65 -0
- data/lib/spotted/models/users/playlist_create_response.rb +219 -0
- data/lib/spotted/models/users/playlist_list_params.rb +36 -0
- data/lib/spotted/models.rb +168 -0
- data/lib/spotted/request_options.rb +77 -0
- data/lib/spotted/resources/albums.rb +102 -0
- data/lib/spotted/resources/artists.rb +150 -0
- data/lib/spotted/resources/audio_analysis.rb +41 -0
- data/lib/spotted/resources/audio_features.rb +67 -0
- data/lib/spotted/resources/audiobooks.rb +105 -0
- data/lib/spotted/resources/browse/categories.rb +105 -0
- data/lib/spotted/resources/browse.rb +78 -0
- data/lib/spotted/resources/chapters.rb +72 -0
- data/lib/spotted/resources/episodes.rb +69 -0
- data/lib/spotted/resources/markets.rb +32 -0
- data/lib/spotted/resources/me/albums.rb +127 -0
- data/lib/spotted/resources/me/audiobooks.rb +121 -0
- data/lib/spotted/resources/me/episodes.rb +138 -0
- data/lib/spotted/resources/me/following.rb +133 -0
- data/lib/spotted/resources/me/player/queue.rb +65 -0
- data/lib/spotted/resources/me/player.rb +382 -0
- data/lib/spotted/resources/me/playlists.rb +44 -0
- data/lib/spotted/resources/me/shows.rb +127 -0
- data/lib/spotted/resources/me/top.rb +76 -0
- data/lib/spotted/resources/me/tracks.rb +121 -0
- data/lib/spotted/resources/me.rb +69 -0
- data/lib/spotted/resources/playlists/followers.rb +93 -0
- data/lib/spotted/resources/playlists/images.rb +67 -0
- data/lib/spotted/resources/playlists/tracks.rb +157 -0
- data/lib/spotted/resources/playlists.rb +91 -0
- data/lib/spotted/resources/recommendations.rb +160 -0
- data/lib/spotted/resources/search.rb +51 -0
- data/lib/spotted/resources/shows.rb +102 -0
- data/lib/spotted/resources/tracks.rb +69 -0
- data/lib/spotted/resources/users/playlists.rb +82 -0
- data/lib/spotted/resources/users.rb +41 -0
- data/lib/spotted/version.rb +5 -0
- data/lib/spotted.rb +257 -0
- data/manifest.yaml +15 -0
- data/rbi/spotted/client.rbi +104 -0
- data/rbi/spotted/errors.rbi +205 -0
- data/rbi/spotted/file_part.rbi +37 -0
- data/rbi/spotted/internal/cursor_url_page.rbi +22 -0
- data/rbi/spotted/internal/oauth2.rbi +34 -0
- data/rbi/spotted/internal/transport/base_client.rbi +292 -0
- data/rbi/spotted/internal/transport/pooled_net_requester.rbi +79 -0
- data/rbi/spotted/internal/type/array_of.rbi +104 -0
- data/rbi/spotted/internal/type/base_model.rbi +302 -0
- data/rbi/spotted/internal/type/base_page.rbi +42 -0
- data/rbi/spotted/internal/type/boolean.rbi +58 -0
- data/rbi/spotted/internal/type/converter.rbi +216 -0
- data/rbi/spotted/internal/type/enum.rbi +82 -0
- data/rbi/spotted/internal/type/file_input.rbi +59 -0
- data/rbi/spotted/internal/type/hash_of.rbi +104 -0
- data/rbi/spotted/internal/type/request_parameters.rbi +29 -0
- data/rbi/spotted/internal/type/union.rbi +128 -0
- data/rbi/spotted/internal/type/unknown.rbi +58 -0
- data/rbi/spotted/internal/util.rbi +484 -0
- data/rbi/spotted/internal.rbi +16 -0
- data/rbi/spotted/models/album_list_params.rbi +74 -0
- data/rbi/spotted/models/album_list_response.rbi +479 -0
- data/rbi/spotted/models/album_list_tracks_params.rbi +86 -0
- data/rbi/spotted/models/album_restriction_object.rbi +82 -0
- data/rbi/spotted/models/album_retrieve_params.rbi +59 -0
- data/rbi/spotted/models/album_retrieve_response.rbi +439 -0
- data/rbi/spotted/models/artist_list_albums_params.rbi +103 -0
- data/rbi/spotted/models/artist_list_albums_response.rbi +338 -0
- data/rbi/spotted/models/artist_list_params.rbi +44 -0
- data/rbi/spotted/models/artist_list_related_artists_params.rbi +30 -0
- data/rbi/spotted/models/artist_list_related_artists_response.rbi +30 -0
- data/rbi/spotted/models/artist_list_response.rbi +27 -0
- data/rbi/spotted/models/artist_list_top_tracks_params.rbi +59 -0
- data/rbi/spotted/models/artist_list_top_tracks_response.rbi +30 -0
- data/rbi/spotted/models/artist_object.rbi +166 -0
- data/rbi/spotted/models/artist_retrieve_params.rbi +27 -0
- data/rbi/spotted/models/audio_analysis_retrieve_params.rbi +30 -0
- data/rbi/spotted/models/audio_analysis_retrieve_response.rbi +1080 -0
- data/rbi/spotted/models/audio_feature_list_params.rbi +44 -0
- data/rbi/spotted/models/audio_feature_list_response.rbi +382 -0
- data/rbi/spotted/models/audio_feature_retrieve_params.rbi +27 -0
- data/rbi/spotted/models/audio_feature_retrieve_response.rbi +338 -0
- data/rbi/spotted/models/audiobook_list_chapters_params.rbi +89 -0
- data/rbi/spotted/models/audiobook_list_params.rbi +74 -0
- data/rbi/spotted/models/audiobook_list_response.rbi +377 -0
- data/rbi/spotted/models/audiobook_retrieve_params.rbi +59 -0
- data/rbi/spotted/models/audiobook_retrieve_response.rbi +332 -0
- data/rbi/spotted/models/author_object.rbi +30 -0
- data/rbi/spotted/models/browse/category_get_playlists_params.rbi +64 -0
- data/rbi/spotted/models/browse/category_get_playlists_response.rbi +51 -0
- data/rbi/spotted/models/browse/category_list_params.rbi +89 -0
- data/rbi/spotted/models/browse/category_list_response.rbi +204 -0
- data/rbi/spotted/models/browse/category_retrieve_params.rbi +62 -0
- data/rbi/spotted/models/browse/category_retrieve_response.rbi +68 -0
- data/rbi/spotted/models/browse_get_featured_playlists_params.rbi +87 -0
- data/rbi/spotted/models/browse_get_featured_playlists_response.rbi +49 -0
- data/rbi/spotted/models/browse_get_new_releases_params.rbi +59 -0
- data/rbi/spotted/models/browse_get_new_releases_response.rbi +423 -0
- data/rbi/spotted/models/chapter_list_params.rbi +74 -0
- data/rbi/spotted/models/chapter_list_response.rbi +588 -0
- data/rbi/spotted/models/chapter_restriction_object.rbi +50 -0
- data/rbi/spotted/models/chapter_retrieve_params.rbi +59 -0
- data/rbi/spotted/models/chapter_retrieve_response.rbi +551 -0
- data/rbi/spotted/models/copyright_object.rbi +41 -0
- data/rbi/spotted/models/episode_list_params.rbi +74 -0
- data/rbi/spotted/models/episode_list_response.rbi +30 -0
- data/rbi/spotted/models/episode_object.rbi +485 -0
- data/rbi/spotted/models/episode_restriction_object.rbi +48 -0
- data/rbi/spotted/models/episode_retrieve_params.rbi +59 -0
- data/rbi/spotted/models/external_id_object.rbi +50 -0
- data/rbi/spotted/models/external_url_object.rbi +32 -0
- data/rbi/spotted/models/followers_object.rbi +42 -0
- data/rbi/spotted/models/image_object.rbi +47 -0
- data/rbi/spotted/models/linked_track_object.rbi +88 -0
- data/rbi/spotted/models/market_list_params.rbi +27 -0
- data/rbi/spotted/models/market_list_response.rbi +26 -0
- data/rbi/spotted/models/me/album_check_params.rbi +46 -0
- data/rbi/spotted/models/me/album_check_response.rbi +13 -0
- data/rbi/spotted/models/me/album_list_params.rbi +88 -0
- data/rbi/spotted/models/me/album_list_response.rbi +529 -0
- data/rbi/spotted/models/me/album_remove_params.rbi +56 -0
- data/rbi/spotted/models/me/album_save_params.rbi +56 -0
- data/rbi/spotted/models/me/audiobook_check_params.rbi +46 -0
- data/rbi/spotted/models/me/audiobook_check_response.rbi +13 -0
- data/rbi/spotted/models/me/audiobook_list_params.rbi +61 -0
- data/rbi/spotted/models/me/audiobook_list_response.rbi +414 -0
- data/rbi/spotted/models/me/audiobook_remove_params.rbi +49 -0
- data/rbi/spotted/models/me/audiobook_save_params.rbi +46 -0
- data/rbi/spotted/models/me/context_object.rbi +77 -0
- data/rbi/spotted/models/me/device_object.rbi +123 -0
- data/rbi/spotted/models/me/episode_check_params.rbi +46 -0
- data/rbi/spotted/models/me/episode_check_response.rbi +13 -0
- data/rbi/spotted/models/me/episode_list_params.rbi +88 -0
- data/rbi/spotted/models/me/episode_list_response.rbi +55 -0
- data/rbi/spotted/models/me/episode_remove_params.rbi +56 -0
- data/rbi/spotted/models/me/episode_save_params.rbi +53 -0
- data/rbi/spotted/models/me/following_check_params.rbi +86 -0
- data/rbi/spotted/models/me/following_check_response.rbi +13 -0
- data/rbi/spotted/models/me/following_follow_params.rbi +91 -0
- data/rbi/spotted/models/me/following_list_params.rbi +89 -0
- data/rbi/spotted/models/me/following_list_response.rbi +187 -0
- data/rbi/spotted/models/me/following_unfollow_params.rbi +97 -0
- data/rbi/spotted/models/me/player/queue_add_params.rbi +63 -0
- data/rbi/spotted/models/me/player/queue_get_params.rbi +34 -0
- data/rbi/spotted/models/me/player/queue_get_response.rbi +143 -0
- data/rbi/spotted/models/me/player_get_currently_playing_params.rbi +88 -0
- data/rbi/spotted/models/me/player_get_currently_playing_response.rbi +304 -0
- data/rbi/spotted/models/me/player_get_devices_params.rbi +32 -0
- data/rbi/spotted/models/me/player_get_devices_response.rbi +34 -0
- data/rbi/spotted/models/me/player_get_state_params.rbi +85 -0
- data/rbi/spotted/models/me/player_get_state_response.rbi +335 -0
- data/rbi/spotted/models/me/player_list_recently_played_params.rbi +77 -0
- data/rbi/spotted/models/me/player_list_recently_played_response.rbi +67 -0
- data/rbi/spotted/models/me/player_pause_playback_params.rbi +50 -0
- data/rbi/spotted/models/me/player_seek_to_position_params.rbi +65 -0
- data/rbi/spotted/models/me/player_set_repeat_mode_params.rbi +65 -0
- data/rbi/spotted/models/me/player_set_volume_params.rbi +61 -0
- data/rbi/spotted/models/me/player_skip_next_params.rbi +47 -0
- data/rbi/spotted/models/me/player_skip_previous_params.rbi +50 -0
- data/rbi/spotted/models/me/player_start_playback_params.rbi +113 -0
- data/rbi/spotted/models/me/player_toggle_shuffle_params.rbi +63 -0
- data/rbi/spotted/models/me/player_transfer_params.rbi +66 -0
- data/rbi/spotted/models/me/playlist_list_params.rbi +61 -0
- data/rbi/spotted/models/me/show_check_params.rbi +46 -0
- data/rbi/spotted/models/me/show_check_response.rbi +13 -0
- data/rbi/spotted/models/me/show_list_params.rbi +61 -0
- data/rbi/spotted/models/me/show_list_response.rbi +277 -0
- data/rbi/spotted/models/me/show_remove_params.rbi +83 -0
- data/rbi/spotted/models/me/show_save_params.rbi +56 -0
- data/rbi/spotted/models/me/top_list_top_artists_params.rbi +81 -0
- data/rbi/spotted/models/me/top_list_top_tracks_params.rbi +81 -0
- data/rbi/spotted/models/me/track_check_params.rbi +46 -0
- data/rbi/spotted/models/me/track_check_response.rbi +13 -0
- data/rbi/spotted/models/me/track_list_params.rbi +88 -0
- data/rbi/spotted/models/me/track_list_response.rbi +58 -0
- data/rbi/spotted/models/me/track_remove_params.rbi +56 -0
- data/rbi/spotted/models/me/track_save_params.rbi +130 -0
- data/rbi/spotted/models/me_retrieve_params.rbi +27 -0
- data/rbi/spotted/models/me_retrieve_response.rbi +257 -0
- data/rbi/spotted/models/narrator_object.rbi +30 -0
- data/rbi/spotted/models/paging_playlist_object.rbi +83 -0
- data/rbi/spotted/models/playlist_retrieve_params.rbi +112 -0
- data/rbi/spotted/models/playlist_retrieve_response.rbi +327 -0
- data/rbi/spotted/models/playlist_track_object.rbi +101 -0
- data/rbi/spotted/models/playlist_tracks_ref_object.rbi +41 -0
- data/rbi/spotted/models/playlist_update_params.rbi +93 -0
- data/rbi/spotted/models/playlist_user_object.rbi +109 -0
- data/rbi/spotted/models/playlists/follower_check_params.rbi +52 -0
- data/rbi/spotted/models/playlists/follower_check_response.rbi +13 -0
- data/rbi/spotted/models/playlists/follower_follow_params.rbi +54 -0
- data/rbi/spotted/models/playlists/follower_unfollow_params.rbi +32 -0
- data/rbi/spotted/models/playlists/image_list_params.rbi +32 -0
- data/rbi/spotted/models/playlists/image_list_response.rbi +13 -0
- data/rbi/spotted/models/playlists/image_update_params.rbi +45 -0
- data/rbi/spotted/models/playlists/track_add_params.rbi +82 -0
- data/rbi/spotted/models/playlists/track_add_response.rbi +31 -0
- data/rbi/spotted/models/playlists/track_list_params.rbi +141 -0
- data/rbi/spotted/models/playlists/track_remove_params.rbi +100 -0
- data/rbi/spotted/models/playlists/track_remove_response.rbi +31 -0
- data/rbi/spotted/models/playlists/track_update_params.rbi +111 -0
- data/rbi/spotted/models/playlists/track_update_response.rbi +31 -0
- data/rbi/spotted/models/recommendation_get_params.rbi +864 -0
- data/rbi/spotted/models/recommendation_get_response.rbi +152 -0
- data/rbi/spotted/models/recommendation_list_available_genre_seeds_params.rbi +30 -0
- data/rbi/spotted/models/recommendation_list_available_genre_seeds_response.rbi +26 -0
- data/rbi/spotted/models/resume_point_object.rbi +47 -0
- data/rbi/spotted/models/search_retrieve_params.rbi +218 -0
- data/rbi/spotted/models/search_retrieve_response.rbi +1381 -0
- data/rbi/spotted/models/show_list_episodes_params.rbi +86 -0
- data/rbi/spotted/models/show_list_params.rbi +74 -0
- data/rbi/spotted/models/show_list_response.rbi +238 -0
- data/rbi/spotted/models/show_retrieve_params.rbi +59 -0
- data/rbi/spotted/models/show_retrieve_response.rbi +305 -0
- data/rbi/spotted/models/simplified_artist_object.rbi +121 -0
- data/rbi/spotted/models/simplified_chapter_object.rbi +287 -0
- data/rbi/spotted/models/simplified_episode_object.rbi +289 -0
- data/rbi/spotted/models/simplified_playlist_object.rbi +230 -0
- data/rbi/spotted/models/simplified_track_object.rbi +239 -0
- data/rbi/spotted/models/time_interval_object.rbi +54 -0
- data/rbi/spotted/models/track_list_params.rbi +74 -0
- data/rbi/spotted/models/track_list_response.rbi +27 -0
- data/rbi/spotted/models/track_object.rbi +556 -0
- data/rbi/spotted/models/track_restriction_object.rbi +48 -0
- data/rbi/spotted/models/track_retrieve_params.rbi +59 -0
- data/rbi/spotted/models/user_retrieve_profile_params.rbi +27 -0
- data/rbi/spotted/models/user_retrieve_profile_response.rbi +159 -0
- data/rbi/spotted/models/users/playlist_create_params.rbi +107 -0
- data/rbi/spotted/models/users/playlist_create_response.rbi +336 -0
- data/rbi/spotted/models/users/playlist_list_params.rbi +64 -0
- data/rbi/spotted/models.rbi +132 -0
- data/rbi/spotted/request_options.rbi +57 -0
- data/rbi/spotted/resources/albums.rbi +100 -0
- data/rbi/spotted/resources/artists.rbi +129 -0
- data/rbi/spotted/resources/audio_analysis.rbi +29 -0
- data/rbi/spotted/resources/audio_features.rbi +44 -0
- data/rbi/spotted/resources/audiobooks.rbi +105 -0
- data/rbi/spotted/resources/browse/categories.rbi +91 -0
- data/rbi/spotted/resources/browse.rbi +63 -0
- data/rbi/spotted/resources/chapters.rbi +69 -0
- data/rbi/spotted/resources/episodes.rbi +66 -0
- data/rbi/spotted/resources/markets.rbi +21 -0
- data/rbi/spotted/resources/me/albums.rbi +101 -0
- data/rbi/spotted/resources/me/audiobooks.rbi +86 -0
- data/rbi/spotted/resources/me/episodes.rbi +112 -0
- data/rbi/spotted/resources/me/following.rbi +99 -0
- data/rbi/spotted/resources/me/player/queue.rbi +45 -0
- data/rbi/spotted/resources/me/player.rbi +315 -0
- data/rbi/spotted/resources/me/playlists.rbi +34 -0
- data/rbi/spotted/resources/me/shows.rbi +101 -0
- data/rbi/spotted/resources/me/top.rbi +62 -0
- data/rbi/spotted/resources/me/tracks.rbi +112 -0
- data/rbi/spotted/resources/me.rbi +49 -0
- data/rbi/spotted/resources/playlists/followers.rbi +70 -0
- data/rbi/spotted/resources/playlists/images.rbi +47 -0
- data/rbi/spotted/resources/playlists/tracks.rbi +177 -0
- data/rbi/spotted/resources/playlists.rbi +102 -0
- data/rbi/spotted/resources/recommendations.rbi +336 -0
- data/rbi/spotted/resources/search.rbi +71 -0
- data/rbi/spotted/resources/shows.rbi +100 -0
- data/rbi/spotted/resources/tracks.rbi +66 -0
- data/rbi/spotted/resources/users/playlists.rbi +78 -0
- data/rbi/spotted/resources/users.rbi +29 -0
- data/rbi/spotted/version.rbi +5 -0
- data/sig/spotted/client.rbs +62 -0
- data/sig/spotted/errors.rbs +117 -0
- data/sig/spotted/file_part.rbs +21 -0
- data/sig/spotted/internal/cursor_url_page.rbs +13 -0
- data/sig/spotted/internal/oauth2.rbs +19 -0
- data/sig/spotted/internal/transport/base_client.rbs +131 -0
- data/sig/spotted/internal/transport/pooled_net_requester.rbs +45 -0
- data/sig/spotted/internal/type/array_of.rbs +48 -0
- data/sig/spotted/internal/type/base_model.rbs +102 -0
- data/sig/spotted/internal/type/base_page.rbs +24 -0
- data/sig/spotted/internal/type/boolean.rbs +26 -0
- data/sig/spotted/internal/type/converter.rbs +79 -0
- data/sig/spotted/internal/type/enum.rbs +32 -0
- data/sig/spotted/internal/type/file_input.rbs +25 -0
- data/sig/spotted/internal/type/hash_of.rbs +48 -0
- data/sig/spotted/internal/type/request_parameters.rbs +17 -0
- data/sig/spotted/internal/type/union.rbs +52 -0
- data/sig/spotted/internal/type/unknown.rbs +26 -0
- data/sig/spotted/internal/util.rbs +185 -0
- data/sig/spotted/internal.rbs +9 -0
- data/sig/spotted/models/album_list_params.rbs +30 -0
- data/sig/spotted/models/album_list_response.rbs +237 -0
- data/sig/spotted/models/album_list_tracks_params.rbs +38 -0
- data/sig/spotted/models/album_restriction_object.rbs +34 -0
- data/sig/spotted/models/album_retrieve_params.rbs +25 -0
- data/sig/spotted/models/album_retrieve_response.rbs +222 -0
- data/sig/spotted/models/artist_list_albums_params.rbs +49 -0
- data/sig/spotted/models/artist_list_albums_response.rbs +141 -0
- data/sig/spotted/models/artist_list_params.rbs +20 -0
- data/sig/spotted/models/artist_list_related_artists_params.rbs +15 -0
- data/sig/spotted/models/artist_list_related_artists_response.rbs +14 -0
- data/sig/spotted/models/artist_list_response.rbs +13 -0
- data/sig/spotted/models/artist_list_top_tracks_params.rbs +25 -0
- data/sig/spotted/models/artist_list_top_tracks_response.rbs +14 -0
- data/sig/spotted/models/artist_object.rbs +101 -0
- data/sig/spotted/models/artist_retrieve_params.rbs +15 -0
- data/sig/spotted/models/audio_analysis_retrieve_params.rbs +15 -0
- data/sig/spotted/models/audio_analysis_retrieve_response.rbs +518 -0
- data/sig/spotted/models/audio_feature_list_params.rbs +20 -0
- data/sig/spotted/models/audio_feature_list_response.rbs +170 -0
- data/sig/spotted/models/audio_feature_retrieve_params.rbs +15 -0
- data/sig/spotted/models/audio_feature_retrieve_response.rbs +153 -0
- data/sig/spotted/models/audiobook_list_chapters_params.rbs +38 -0
- data/sig/spotted/models/audiobook_list_params.rbs +30 -0
- data/sig/spotted/models/audiobook_list_response.rbs +189 -0
- data/sig/spotted/models/audiobook_retrieve_params.rbs +25 -0
- data/sig/spotted/models/audiobook_retrieve_response.rbs +174 -0
- data/sig/spotted/models/author_object.rbs +15 -0
- data/sig/spotted/models/browse/category_get_playlists_params.rbs +34 -0
- data/sig/spotted/models/browse/category_get_playlists_response.rbs +30 -0
- data/sig/spotted/models/browse/category_list_params.rbs +40 -0
- data/sig/spotted/models/browse/category_list_response.rbs +101 -0
- data/sig/spotted/models/browse/category_retrieve_params.rbs +27 -0
- data/sig/spotted/models/browse/category_retrieve_response.rbs +37 -0
- data/sig/spotted/models/browse_get_featured_playlists_params.rbs +38 -0
- data/sig/spotted/models/browse_get_featured_playlists_response.rbs +28 -0
- data/sig/spotted/models/browse_get_new_releases_params.rbs +32 -0
- data/sig/spotted/models/browse_get_new_releases_response.rbs +185 -0
- data/sig/spotted/models/chapter_list_params.rbs +30 -0
- data/sig/spotted/models/chapter_list_response.rbs +286 -0
- data/sig/spotted/models/chapter_restriction_object.rbs +15 -0
- data/sig/spotted/models/chapter_retrieve_params.rbs +25 -0
- data/sig/spotted/models/chapter_retrieve_response.rbs +271 -0
- data/sig/spotted/models/copyright_object.rbs +19 -0
- data/sig/spotted/models/episode_list_params.rbs +30 -0
- data/sig/spotted/models/episode_list_response.rbs +13 -0
- data/sig/spotted/models/episode_object.rbs +259 -0
- data/sig/spotted/models/episode_restriction_object.rbs +15 -0
- data/sig/spotted/models/episode_retrieve_params.rbs +25 -0
- data/sig/spotted/models/external_id_object.rbs +23 -0
- data/sig/spotted/models/external_url_object.rbs +15 -0
- data/sig/spotted/models/followers_object.rbs +17 -0
- data/sig/spotted/models/image_object.rbs +17 -0
- data/sig/spotted/models/linked_track_object.rbs +52 -0
- data/sig/spotted/models/market_list_params.rbs +14 -0
- data/sig/spotted/models/market_list_response.rbs +15 -0
- data/sig/spotted/models/me/album_check_params.rbs +25 -0
- data/sig/spotted/models/me/album_check_response.rbs +9 -0
- data/sig/spotted/models/me/album_list_params.rbs +40 -0
- data/sig/spotted/models/me/album_list_response.rbs +249 -0
- data/sig/spotted/models/me/album_remove_params.rbs +28 -0
- data/sig/spotted/models/me/album_save_params.rbs +28 -0
- data/sig/spotted/models/me/audiobook_check_params.rbs +25 -0
- data/sig/spotted/models/me/audiobook_check_response.rbs +9 -0
- data/sig/spotted/models/me/audiobook_list_params.rbs +34 -0
- data/sig/spotted/models/me/audiobook_list_response.rbs +204 -0
- data/sig/spotted/models/me/audiobook_remove_params.rbs +25 -0
- data/sig/spotted/models/me/audiobook_save_params.rbs +25 -0
- data/sig/spotted/models/me/context_object.rbs +47 -0
- data/sig/spotted/models/me/device_object.rbs +69 -0
- data/sig/spotted/models/me/episode_check_params.rbs +25 -0
- data/sig/spotted/models/me/episode_check_response.rbs +9 -0
- data/sig/spotted/models/me/episode_list_params.rbs +40 -0
- data/sig/spotted/models/me/episode_list_response.rbs +25 -0
- data/sig/spotted/models/me/episode_remove_params.rbs +28 -0
- data/sig/spotted/models/me/episode_save_params.rbs +26 -0
- data/sig/spotted/models/me/following_check_params.rbs +41 -0
- data/sig/spotted/models/me/following_check_response.rbs +9 -0
- data/sig/spotted/models/me/following_follow_params.rbs +44 -0
- data/sig/spotted/models/me/following_list_params.rbs +52 -0
- data/sig/spotted/models/me/following_list_response.rbs +94 -0
- data/sig/spotted/models/me/following_unfollow_params.rbs +46 -0
- data/sig/spotted/models/me/player/queue_add_params.rbs +34 -0
- data/sig/spotted/models/me/player/queue_get_params.rbs +19 -0
- data/sig/spotted/models/me/player/queue_get_response.rbs +53 -0
- data/sig/spotted/models/me/player_get_currently_playing_params.rbs +34 -0
- data/sig/spotted/models/me/player_get_currently_playing_response.rbs +160 -0
- data/sig/spotted/models/me/player_get_devices_params.rbs +17 -0
- data/sig/spotted/models/me/player_get_devices_response.rbs +16 -0
- data/sig/spotted/models/me/player_get_state_params.rbs +34 -0
- data/sig/spotted/models/me/player_get_state_response.rbs +181 -0
- data/sig/spotted/models/me/player_list_recently_played_params.rbs +40 -0
- data/sig/spotted/models/me/player_list_recently_played_response.rbs +38 -0
- data/sig/spotted/models/me/player_pause_playback_params.rbs +27 -0
- data/sig/spotted/models/me/player_seek_to_position_params.rbs +32 -0
- data/sig/spotted/models/me/player_set_repeat_mode_params.rbs +32 -0
- data/sig/spotted/models/me/player_set_volume_params.rbs +32 -0
- data/sig/spotted/models/me/player_skip_next_params.rbs +27 -0
- data/sig/spotted/models/me/player_skip_previous_params.rbs +27 -0
- data/sig/spotted/models/me/player_start_playback_params.rbs +58 -0
- data/sig/spotted/models/me/player_toggle_shuffle_params.rbs +32 -0
- data/sig/spotted/models/me/player_transfer_params.rbs +32 -0
- data/sig/spotted/models/me/playlist_list_params.rbs +34 -0
- data/sig/spotted/models/me/show_check_params.rbs +25 -0
- data/sig/spotted/models/me/show_check_response.rbs +9 -0
- data/sig/spotted/models/me/show_list_params.rbs +34 -0
- data/sig/spotted/models/me/show_list_response.rbs +137 -0
- data/sig/spotted/models/me/show_remove_params.rbs +34 -0
- data/sig/spotted/models/me/show_save_params.rbs +28 -0
- data/sig/spotted/models/me/top_list_top_artists_params.rbs +40 -0
- data/sig/spotted/models/me/top_list_top_tracks_params.rbs +40 -0
- data/sig/spotted/models/me/track_check_params.rbs +25 -0
- data/sig/spotted/models/me/track_check_response.rbs +9 -0
- data/sig/spotted/models/me/track_list_params.rbs +40 -0
- data/sig/spotted/models/me/track_list_response.rbs +21 -0
- data/sig/spotted/models/me/track_remove_params.rbs +28 -0
- data/sig/spotted/models/me/track_save_params.rbs +49 -0
- data/sig/spotted/models/me_retrieve_params.rbs +14 -0
- data/sig/spotted/models/me_retrieve_response.rbs +121 -0
- data/sig/spotted/models/narrator_object.rbs +15 -0
- data/sig/spotted/models/paging_playlist_object.rbs +50 -0
- data/sig/spotted/models/playlist_retrieve_params.rbs +38 -0
- data/sig/spotted/models/playlist_retrieve_response.rbs +178 -0
- data/sig/spotted/models/playlist_track_object.rbs +55 -0
- data/sig/spotted/models/playlist_tracks_ref_object.rbs +19 -0
- data/sig/spotted/models/playlist_update_params.rbs +44 -0
- data/sig/spotted/models/playlist_user_object.rbs +64 -0
- data/sig/spotted/models/playlists/follower_check_params.rbs +27 -0
- data/sig/spotted/models/playlists/follower_check_response.rbs +9 -0
- data/sig/spotted/models/playlists/follower_follow_params.rbs +27 -0
- data/sig/spotted/models/playlists/follower_unfollow_params.rbs +17 -0
- data/sig/spotted/models/playlists/image_list_params.rbs +17 -0
- data/sig/spotted/models/playlists/image_list_response.rbs +9 -0
- data/sig/spotted/models/playlists/image_update_params.rbs +25 -0
- data/sig/spotted/models/playlists/track_add_params.rbs +34 -0
- data/sig/spotted/models/playlists/track_add_response.rbs +17 -0
- data/sig/spotted/models/playlists/track_list_params.rbs +58 -0
- data/sig/spotted/models/playlists/track_remove_params.rbs +47 -0
- data/sig/spotted/models/playlists/track_remove_response.rbs +17 -0
- data/sig/spotted/models/playlists/track_update_params.rbs +58 -0
- data/sig/spotted/models/playlists/track_update_response.rbs +17 -0
- data/sig/spotted/models/recommendation_get_params.rbs +350 -0
- data/sig/spotted/models/recommendation_get_response.rbs +79 -0
- data/sig/spotted/models/recommendation_list_available_genre_seeds_params.rbs +15 -0
- data/sig/spotted/models/recommendation_list_available_genre_seeds_response.rbs +14 -0
- data/sig/spotted/models/resume_point_object.rbs +23 -0
- data/sig/spotted/models/search_retrieve_params.rbs +88 -0
- data/sig/spotted/models/search_retrieve_response.rbs +706 -0
- data/sig/spotted/models/show_list_episodes_params.rbs +38 -0
- data/sig/spotted/models/show_list_params.rbs +30 -0
- data/sig/spotted/models/show_list_response.rbs +125 -0
- data/sig/spotted/models/show_retrieve_params.rbs +25 -0
- data/sig/spotted/models/show_retrieve_response.rbs +162 -0
- data/sig/spotted/models/simplified_artist_object.rbs +71 -0
- data/sig/spotted/models/simplified_chapter_object.rbs +147 -0
- data/sig/spotted/models/simplified_episode_object.rbs +147 -0
- data/sig/spotted/models/simplified_playlist_object.rbs +126 -0
- data/sig/spotted/models/simplified_track_object.rbs +140 -0
- data/sig/spotted/models/time_interval_object.rbs +28 -0
- data/sig/spotted/models/track_list_params.rbs +30 -0
- data/sig/spotted/models/track_list_response.rbs +13 -0
- data/sig/spotted/models/track_object.rbs +295 -0
- data/sig/spotted/models/track_restriction_object.rbs +15 -0
- data/sig/spotted/models/track_retrieve_params.rbs +25 -0
- data/sig/spotted/models/user_retrieve_profile_params.rbs +15 -0
- data/sig/spotted/models/user_retrieve_profile_response.rbs +85 -0
- data/sig/spotted/models/users/playlist_create_params.rbs +44 -0
- data/sig/spotted/models/users/playlist_create_response.rbs +180 -0
- data/sig/spotted/models/users/playlist_list_params.rbs +34 -0
- data/sig/spotted/models.rbs +127 -0
- data/sig/spotted/request_options.rbs +34 -0
- data/sig/spotted/resources/albums.rbs +27 -0
- data/sig/spotted/resources/artists.rbs +37 -0
- data/sig/spotted/resources/audio_analysis.rbs +12 -0
- data/sig/spotted/resources/audio_features.rbs +17 -0
- data/sig/spotted/resources/audiobooks.rbs +27 -0
- data/sig/spotted/resources/browse/categories.rbs +29 -0
- data/sig/spotted/resources/browse.rbs +22 -0
- data/sig/spotted/resources/chapters.rbs +19 -0
- data/sig/spotted/resources/episodes.rbs +19 -0
- data/sig/spotted/resources/markets.rbs +11 -0
- data/sig/spotted/resources/me/albums.rbs +31 -0
- data/sig/spotted/resources/me/audiobooks.rbs +27 -0
- data/sig/spotted/resources/me/episodes.rbs +31 -0
- data/sig/spotted/resources/me/following.rbs +34 -0
- data/sig/spotted/resources/me/player/queue.rbs +21 -0
- data/sig/spotted/resources/me/player.rbs +88 -0
- data/sig/spotted/resources/me/playlists.rbs +15 -0
- data/sig/spotted/resources/me/shows.rbs +31 -0
- data/sig/spotted/resources/me/top.rbs +23 -0
- data/sig/spotted/resources/me/tracks.rbs +32 -0
- data/sig/spotted/resources/me.rbs +29 -0
- data/sig/spotted/resources/playlists/followers.rbs +26 -0
- data/sig/spotted/resources/playlists/images.rbs +20 -0
- data/sig/spotted/resources/playlists/tracks.rbs +43 -0
- data/sig/spotted/resources/playlists.rbs +30 -0
- data/sig/spotted/resources/recommendations.rbs +62 -0
- data/sig/spotted/resources/search.rbs +17 -0
- data/sig/spotted/resources/shows.rbs +27 -0
- data/sig/spotted/resources/tracks.rbs +19 -0
- data/sig/spotted/resources/users/playlists.rbs +25 -0
- data/sig/spotted/resources/users.rbs +14 -0
- data/sig/spotted/version.rbs +3 -0
- metadata +734 -0
|
@@ -0,0 +1,556 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Spotted
|
|
4
|
+
module Models
|
|
5
|
+
class TrackObject < Spotted::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias { T.any(Spotted::TrackObject, Spotted::Internal::AnyHash) }
|
|
8
|
+
|
|
9
|
+
# The [Spotify ID](/documentation/web-api/concepts/spotify-uris-ids) for the
|
|
10
|
+
# track.
|
|
11
|
+
sig { returns(T.nilable(String)) }
|
|
12
|
+
attr_reader :id
|
|
13
|
+
|
|
14
|
+
sig { params(id: String).void }
|
|
15
|
+
attr_writer :id
|
|
16
|
+
|
|
17
|
+
# The album on which the track appears. The album object includes a link in `href`
|
|
18
|
+
# to full information about the album.
|
|
19
|
+
sig { returns(T.nilable(Spotted::TrackObject::Album)) }
|
|
20
|
+
attr_reader :album
|
|
21
|
+
|
|
22
|
+
sig { params(album: Spotted::TrackObject::Album::OrHash).void }
|
|
23
|
+
attr_writer :album
|
|
24
|
+
|
|
25
|
+
# The artists who performed the track. Each artist object includes a link in
|
|
26
|
+
# `href` to more detailed information about the artist.
|
|
27
|
+
sig { returns(T.nilable(T::Array[Spotted::SimplifiedArtistObject])) }
|
|
28
|
+
attr_reader :artists
|
|
29
|
+
|
|
30
|
+
sig do
|
|
31
|
+
params(artists: T::Array[Spotted::SimplifiedArtistObject::OrHash]).void
|
|
32
|
+
end
|
|
33
|
+
attr_writer :artists
|
|
34
|
+
|
|
35
|
+
# A list of the countries in which the track can be played, identified by their
|
|
36
|
+
# [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) code.
|
|
37
|
+
sig { returns(T.nilable(T::Array[String])) }
|
|
38
|
+
attr_reader :available_markets
|
|
39
|
+
|
|
40
|
+
sig { params(available_markets: T::Array[String]).void }
|
|
41
|
+
attr_writer :available_markets
|
|
42
|
+
|
|
43
|
+
# The disc number (usually `1` unless the album consists of more than one disc).
|
|
44
|
+
sig { returns(T.nilable(Integer)) }
|
|
45
|
+
attr_reader :disc_number
|
|
46
|
+
|
|
47
|
+
sig { params(disc_number: Integer).void }
|
|
48
|
+
attr_writer :disc_number
|
|
49
|
+
|
|
50
|
+
# The track length in milliseconds.
|
|
51
|
+
sig { returns(T.nilable(Integer)) }
|
|
52
|
+
attr_reader :duration_ms
|
|
53
|
+
|
|
54
|
+
sig { params(duration_ms: Integer).void }
|
|
55
|
+
attr_writer :duration_ms
|
|
56
|
+
|
|
57
|
+
# Whether or not the track has explicit lyrics ( `true` = yes it does; `false` =
|
|
58
|
+
# no it does not OR unknown).
|
|
59
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
60
|
+
attr_reader :explicit
|
|
61
|
+
|
|
62
|
+
sig { params(explicit: T::Boolean).void }
|
|
63
|
+
attr_writer :explicit
|
|
64
|
+
|
|
65
|
+
# Known external IDs for the track.
|
|
66
|
+
sig { returns(T.nilable(Spotted::ExternalIDObject)) }
|
|
67
|
+
attr_reader :external_ids
|
|
68
|
+
|
|
69
|
+
sig { params(external_ids: Spotted::ExternalIDObject::OrHash).void }
|
|
70
|
+
attr_writer :external_ids
|
|
71
|
+
|
|
72
|
+
# Known external URLs for this track.
|
|
73
|
+
sig { returns(T.nilable(Spotted::ExternalURLObject)) }
|
|
74
|
+
attr_reader :external_urls
|
|
75
|
+
|
|
76
|
+
sig { params(external_urls: Spotted::ExternalURLObject::OrHash).void }
|
|
77
|
+
attr_writer :external_urls
|
|
78
|
+
|
|
79
|
+
# A link to the Web API endpoint providing full details of the track.
|
|
80
|
+
sig { returns(T.nilable(String)) }
|
|
81
|
+
attr_reader :href
|
|
82
|
+
|
|
83
|
+
sig { params(href: String).void }
|
|
84
|
+
attr_writer :href
|
|
85
|
+
|
|
86
|
+
# Whether or not the track is from a local file.
|
|
87
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
88
|
+
attr_reader :is_local
|
|
89
|
+
|
|
90
|
+
sig { params(is_local: T::Boolean).void }
|
|
91
|
+
attr_writer :is_local
|
|
92
|
+
|
|
93
|
+
# Part of the response when
|
|
94
|
+
# [Track Relinking](/documentation/web-api/concepts/track-relinking) is applied.
|
|
95
|
+
# If `true`, the track is playable in the given market. Otherwise `false`.
|
|
96
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
97
|
+
attr_reader :is_playable
|
|
98
|
+
|
|
99
|
+
sig { params(is_playable: T::Boolean).void }
|
|
100
|
+
attr_writer :is_playable
|
|
101
|
+
|
|
102
|
+
# Part of the response when
|
|
103
|
+
# [Track Relinking](/documentation/web-api/concepts/track-relinking) is applied,
|
|
104
|
+
# and the requested track has been replaced with different track. The track in the
|
|
105
|
+
# `linked_from` object contains information about the originally requested track.
|
|
106
|
+
sig { returns(T.nilable(Spotted::LinkedTrackObject)) }
|
|
107
|
+
attr_reader :linked_from
|
|
108
|
+
|
|
109
|
+
sig { params(linked_from: Spotted::LinkedTrackObject::OrHash).void }
|
|
110
|
+
attr_writer :linked_from
|
|
111
|
+
|
|
112
|
+
# The name of the track.
|
|
113
|
+
sig { returns(T.nilable(String)) }
|
|
114
|
+
attr_reader :name
|
|
115
|
+
|
|
116
|
+
sig { params(name: String).void }
|
|
117
|
+
attr_writer :name
|
|
118
|
+
|
|
119
|
+
# The popularity of the track. The value will be between 0 and 100, with 100 being
|
|
120
|
+
# the most popular.<br/>The popularity of a track is a value between 0 and 100,
|
|
121
|
+
# with 100 being the most popular. The popularity is calculated by algorithm and
|
|
122
|
+
# is based, in the most part, on the total number of plays the track has had and
|
|
123
|
+
# how recent those plays are.<br/>Generally speaking, songs that are being played
|
|
124
|
+
# a lot now will have a higher popularity than songs that were played a lot in the
|
|
125
|
+
# past. Duplicate tracks (e.g. the same track from a single and an album) are
|
|
126
|
+
# rated independently. Artist and album popularity is derived mathematically from
|
|
127
|
+
# track popularity. _**Note**: the popularity value may lag actual popularity by a
|
|
128
|
+
# few days: the value is not updated in real time._
|
|
129
|
+
sig { returns(T.nilable(Integer)) }
|
|
130
|
+
attr_reader :popularity
|
|
131
|
+
|
|
132
|
+
sig { params(popularity: Integer).void }
|
|
133
|
+
attr_writer :popularity
|
|
134
|
+
|
|
135
|
+
# A link to a 30 second preview (MP3 format) of the track. Can be `null`
|
|
136
|
+
sig { returns(T.nilable(String)) }
|
|
137
|
+
attr_accessor :preview_url
|
|
138
|
+
|
|
139
|
+
# Included in the response when a content restriction is applied.
|
|
140
|
+
sig { returns(T.nilable(Spotted::TrackRestrictionObject)) }
|
|
141
|
+
attr_reader :restrictions
|
|
142
|
+
|
|
143
|
+
sig { params(restrictions: Spotted::TrackRestrictionObject::OrHash).void }
|
|
144
|
+
attr_writer :restrictions
|
|
145
|
+
|
|
146
|
+
# The number of the track. If an album has several discs, the track number is the
|
|
147
|
+
# number on the specified disc.
|
|
148
|
+
sig { returns(T.nilable(Integer)) }
|
|
149
|
+
attr_reader :track_number
|
|
150
|
+
|
|
151
|
+
sig { params(track_number: Integer).void }
|
|
152
|
+
attr_writer :track_number
|
|
153
|
+
|
|
154
|
+
# The object type: "track".
|
|
155
|
+
sig { returns(T.nilable(Spotted::TrackObject::Type::TaggedSymbol)) }
|
|
156
|
+
attr_reader :type
|
|
157
|
+
|
|
158
|
+
sig { params(type: Spotted::TrackObject::Type::OrSymbol).void }
|
|
159
|
+
attr_writer :type
|
|
160
|
+
|
|
161
|
+
# The [Spotify URI](/documentation/web-api/concepts/spotify-uris-ids) for the
|
|
162
|
+
# track.
|
|
163
|
+
sig { returns(T.nilable(String)) }
|
|
164
|
+
attr_reader :uri
|
|
165
|
+
|
|
166
|
+
sig { params(uri: String).void }
|
|
167
|
+
attr_writer :uri
|
|
168
|
+
|
|
169
|
+
sig do
|
|
170
|
+
params(
|
|
171
|
+
id: String,
|
|
172
|
+
album: Spotted::TrackObject::Album::OrHash,
|
|
173
|
+
artists: T::Array[Spotted::SimplifiedArtistObject::OrHash],
|
|
174
|
+
available_markets: T::Array[String],
|
|
175
|
+
disc_number: Integer,
|
|
176
|
+
duration_ms: Integer,
|
|
177
|
+
explicit: T::Boolean,
|
|
178
|
+
external_ids: Spotted::ExternalIDObject::OrHash,
|
|
179
|
+
external_urls: Spotted::ExternalURLObject::OrHash,
|
|
180
|
+
href: String,
|
|
181
|
+
is_local: T::Boolean,
|
|
182
|
+
is_playable: T::Boolean,
|
|
183
|
+
linked_from: Spotted::LinkedTrackObject::OrHash,
|
|
184
|
+
name: String,
|
|
185
|
+
popularity: Integer,
|
|
186
|
+
preview_url: T.nilable(String),
|
|
187
|
+
restrictions: Spotted::TrackRestrictionObject::OrHash,
|
|
188
|
+
track_number: Integer,
|
|
189
|
+
type: Spotted::TrackObject::Type::OrSymbol,
|
|
190
|
+
uri: String
|
|
191
|
+
).returns(T.attached_class)
|
|
192
|
+
end
|
|
193
|
+
def self.new(
|
|
194
|
+
# The [Spotify ID](/documentation/web-api/concepts/spotify-uris-ids) for the
|
|
195
|
+
# track.
|
|
196
|
+
id: nil,
|
|
197
|
+
# The album on which the track appears. The album object includes a link in `href`
|
|
198
|
+
# to full information about the album.
|
|
199
|
+
album: nil,
|
|
200
|
+
# The artists who performed the track. Each artist object includes a link in
|
|
201
|
+
# `href` to more detailed information about the artist.
|
|
202
|
+
artists: nil,
|
|
203
|
+
# A list of the countries in which the track can be played, identified by their
|
|
204
|
+
# [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) code.
|
|
205
|
+
available_markets: nil,
|
|
206
|
+
# The disc number (usually `1` unless the album consists of more than one disc).
|
|
207
|
+
disc_number: nil,
|
|
208
|
+
# The track length in milliseconds.
|
|
209
|
+
duration_ms: nil,
|
|
210
|
+
# Whether or not the track has explicit lyrics ( `true` = yes it does; `false` =
|
|
211
|
+
# no it does not OR unknown).
|
|
212
|
+
explicit: nil,
|
|
213
|
+
# Known external IDs for the track.
|
|
214
|
+
external_ids: nil,
|
|
215
|
+
# Known external URLs for this track.
|
|
216
|
+
external_urls: nil,
|
|
217
|
+
# A link to the Web API endpoint providing full details of the track.
|
|
218
|
+
href: nil,
|
|
219
|
+
# Whether or not the track is from a local file.
|
|
220
|
+
is_local: nil,
|
|
221
|
+
# Part of the response when
|
|
222
|
+
# [Track Relinking](/documentation/web-api/concepts/track-relinking) is applied.
|
|
223
|
+
# If `true`, the track is playable in the given market. Otherwise `false`.
|
|
224
|
+
is_playable: nil,
|
|
225
|
+
# Part of the response when
|
|
226
|
+
# [Track Relinking](/documentation/web-api/concepts/track-relinking) is applied,
|
|
227
|
+
# and the requested track has been replaced with different track. The track in the
|
|
228
|
+
# `linked_from` object contains information about the originally requested track.
|
|
229
|
+
linked_from: nil,
|
|
230
|
+
# The name of the track.
|
|
231
|
+
name: nil,
|
|
232
|
+
# The popularity of the track. The value will be between 0 and 100, with 100 being
|
|
233
|
+
# the most popular.<br/>The popularity of a track is a value between 0 and 100,
|
|
234
|
+
# with 100 being the most popular. The popularity is calculated by algorithm and
|
|
235
|
+
# is based, in the most part, on the total number of plays the track has had and
|
|
236
|
+
# how recent those plays are.<br/>Generally speaking, songs that are being played
|
|
237
|
+
# a lot now will have a higher popularity than songs that were played a lot in the
|
|
238
|
+
# past. Duplicate tracks (e.g. the same track from a single and an album) are
|
|
239
|
+
# rated independently. Artist and album popularity is derived mathematically from
|
|
240
|
+
# track popularity. _**Note**: the popularity value may lag actual popularity by a
|
|
241
|
+
# few days: the value is not updated in real time._
|
|
242
|
+
popularity: nil,
|
|
243
|
+
# A link to a 30 second preview (MP3 format) of the track. Can be `null`
|
|
244
|
+
preview_url: nil,
|
|
245
|
+
# Included in the response when a content restriction is applied.
|
|
246
|
+
restrictions: nil,
|
|
247
|
+
# The number of the track. If an album has several discs, the track number is the
|
|
248
|
+
# number on the specified disc.
|
|
249
|
+
track_number: nil,
|
|
250
|
+
# The object type: "track".
|
|
251
|
+
type: nil,
|
|
252
|
+
# The [Spotify URI](/documentation/web-api/concepts/spotify-uris-ids) for the
|
|
253
|
+
# track.
|
|
254
|
+
uri: nil
|
|
255
|
+
)
|
|
256
|
+
end
|
|
257
|
+
|
|
258
|
+
sig do
|
|
259
|
+
override.returns(
|
|
260
|
+
{
|
|
261
|
+
id: String,
|
|
262
|
+
album: Spotted::TrackObject::Album,
|
|
263
|
+
artists: T::Array[Spotted::SimplifiedArtistObject],
|
|
264
|
+
available_markets: T::Array[String],
|
|
265
|
+
disc_number: Integer,
|
|
266
|
+
duration_ms: Integer,
|
|
267
|
+
explicit: T::Boolean,
|
|
268
|
+
external_ids: Spotted::ExternalIDObject,
|
|
269
|
+
external_urls: Spotted::ExternalURLObject,
|
|
270
|
+
href: String,
|
|
271
|
+
is_local: T::Boolean,
|
|
272
|
+
is_playable: T::Boolean,
|
|
273
|
+
linked_from: Spotted::LinkedTrackObject,
|
|
274
|
+
name: String,
|
|
275
|
+
popularity: Integer,
|
|
276
|
+
preview_url: T.nilable(String),
|
|
277
|
+
restrictions: Spotted::TrackRestrictionObject,
|
|
278
|
+
track_number: Integer,
|
|
279
|
+
type: Spotted::TrackObject::Type::TaggedSymbol,
|
|
280
|
+
uri: String
|
|
281
|
+
}
|
|
282
|
+
)
|
|
283
|
+
end
|
|
284
|
+
def to_hash
|
|
285
|
+
end
|
|
286
|
+
|
|
287
|
+
class Album < Spotted::Internal::Type::BaseModel
|
|
288
|
+
OrHash =
|
|
289
|
+
T.type_alias do
|
|
290
|
+
T.any(Spotted::TrackObject::Album, Spotted::Internal::AnyHash)
|
|
291
|
+
end
|
|
292
|
+
|
|
293
|
+
# The [Spotify ID](/documentation/web-api/concepts/spotify-uris-ids) for the
|
|
294
|
+
# album.
|
|
295
|
+
sig { returns(String) }
|
|
296
|
+
attr_accessor :id
|
|
297
|
+
|
|
298
|
+
# The type of the album.
|
|
299
|
+
sig { returns(Spotted::TrackObject::Album::AlbumType::TaggedSymbol) }
|
|
300
|
+
attr_accessor :album_type
|
|
301
|
+
|
|
302
|
+
# The artists of the album. Each artist object includes a link in `href` to more
|
|
303
|
+
# detailed information about the artist.
|
|
304
|
+
sig { returns(T::Array[Spotted::SimplifiedArtistObject]) }
|
|
305
|
+
attr_accessor :artists
|
|
306
|
+
|
|
307
|
+
# The markets in which the album is available:
|
|
308
|
+
# [ISO 3166-1 alpha-2 country codes](http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
|
|
309
|
+
# _**NOTE**: an album is considered available in a market when at least 1 of its
|
|
310
|
+
# tracks is available in that market._
|
|
311
|
+
sig { returns(T::Array[String]) }
|
|
312
|
+
attr_accessor :available_markets
|
|
313
|
+
|
|
314
|
+
# Known external URLs for this album.
|
|
315
|
+
sig { returns(Spotted::ExternalURLObject) }
|
|
316
|
+
attr_reader :external_urls
|
|
317
|
+
|
|
318
|
+
sig { params(external_urls: Spotted::ExternalURLObject::OrHash).void }
|
|
319
|
+
attr_writer :external_urls
|
|
320
|
+
|
|
321
|
+
# A link to the Web API endpoint providing full details of the album.
|
|
322
|
+
sig { returns(String) }
|
|
323
|
+
attr_accessor :href
|
|
324
|
+
|
|
325
|
+
# The cover art for the album in various sizes, widest first.
|
|
326
|
+
sig { returns(T::Array[Spotted::ImageObject]) }
|
|
327
|
+
attr_accessor :images
|
|
328
|
+
|
|
329
|
+
# The name of the album. In case of an album takedown, the value may be an empty
|
|
330
|
+
# string.
|
|
331
|
+
sig { returns(String) }
|
|
332
|
+
attr_accessor :name
|
|
333
|
+
|
|
334
|
+
# The date the album was first released.
|
|
335
|
+
sig { returns(String) }
|
|
336
|
+
attr_accessor :release_date
|
|
337
|
+
|
|
338
|
+
# The precision with which `release_date` value is known.
|
|
339
|
+
sig do
|
|
340
|
+
returns(
|
|
341
|
+
Spotted::TrackObject::Album::ReleaseDatePrecision::TaggedSymbol
|
|
342
|
+
)
|
|
343
|
+
end
|
|
344
|
+
attr_accessor :release_date_precision
|
|
345
|
+
|
|
346
|
+
# The number of tracks in the album.
|
|
347
|
+
sig { returns(Integer) }
|
|
348
|
+
attr_accessor :total_tracks
|
|
349
|
+
|
|
350
|
+
# The object type.
|
|
351
|
+
sig { returns(Spotted::TrackObject::Album::Type::TaggedSymbol) }
|
|
352
|
+
attr_accessor :type
|
|
353
|
+
|
|
354
|
+
# The [Spotify URI](/documentation/web-api/concepts/spotify-uris-ids) for the
|
|
355
|
+
# album.
|
|
356
|
+
sig { returns(String) }
|
|
357
|
+
attr_accessor :uri
|
|
358
|
+
|
|
359
|
+
# Included in the response when a content restriction is applied.
|
|
360
|
+
sig { returns(T.nilable(Spotted::AlbumRestrictionObject)) }
|
|
361
|
+
attr_reader :restrictions
|
|
362
|
+
|
|
363
|
+
sig do
|
|
364
|
+
params(restrictions: Spotted::AlbumRestrictionObject::OrHash).void
|
|
365
|
+
end
|
|
366
|
+
attr_writer :restrictions
|
|
367
|
+
|
|
368
|
+
# The album on which the track appears. The album object includes a link in `href`
|
|
369
|
+
# to full information about the album.
|
|
370
|
+
sig do
|
|
371
|
+
params(
|
|
372
|
+
id: String,
|
|
373
|
+
album_type: Spotted::TrackObject::Album::AlbumType::OrSymbol,
|
|
374
|
+
artists: T::Array[Spotted::SimplifiedArtistObject::OrHash],
|
|
375
|
+
available_markets: T::Array[String],
|
|
376
|
+
external_urls: Spotted::ExternalURLObject::OrHash,
|
|
377
|
+
href: String,
|
|
378
|
+
images: T::Array[Spotted::ImageObject::OrHash],
|
|
379
|
+
name: String,
|
|
380
|
+
release_date: String,
|
|
381
|
+
release_date_precision:
|
|
382
|
+
Spotted::TrackObject::Album::ReleaseDatePrecision::OrSymbol,
|
|
383
|
+
total_tracks: Integer,
|
|
384
|
+
type: Spotted::TrackObject::Album::Type::OrSymbol,
|
|
385
|
+
uri: String,
|
|
386
|
+
restrictions: Spotted::AlbumRestrictionObject::OrHash
|
|
387
|
+
).returns(T.attached_class)
|
|
388
|
+
end
|
|
389
|
+
def self.new(
|
|
390
|
+
# The [Spotify ID](/documentation/web-api/concepts/spotify-uris-ids) for the
|
|
391
|
+
# album.
|
|
392
|
+
id:,
|
|
393
|
+
# The type of the album.
|
|
394
|
+
album_type:,
|
|
395
|
+
# The artists of the album. Each artist object includes a link in `href` to more
|
|
396
|
+
# detailed information about the artist.
|
|
397
|
+
artists:,
|
|
398
|
+
# The markets in which the album is available:
|
|
399
|
+
# [ISO 3166-1 alpha-2 country codes](http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
|
|
400
|
+
# _**NOTE**: an album is considered available in a market when at least 1 of its
|
|
401
|
+
# tracks is available in that market._
|
|
402
|
+
available_markets:,
|
|
403
|
+
# Known external URLs for this album.
|
|
404
|
+
external_urls:,
|
|
405
|
+
# A link to the Web API endpoint providing full details of the album.
|
|
406
|
+
href:,
|
|
407
|
+
# The cover art for the album in various sizes, widest first.
|
|
408
|
+
images:,
|
|
409
|
+
# The name of the album. In case of an album takedown, the value may be an empty
|
|
410
|
+
# string.
|
|
411
|
+
name:,
|
|
412
|
+
# The date the album was first released.
|
|
413
|
+
release_date:,
|
|
414
|
+
# The precision with which `release_date` value is known.
|
|
415
|
+
release_date_precision:,
|
|
416
|
+
# The number of tracks in the album.
|
|
417
|
+
total_tracks:,
|
|
418
|
+
# The object type.
|
|
419
|
+
type:,
|
|
420
|
+
# The [Spotify URI](/documentation/web-api/concepts/spotify-uris-ids) for the
|
|
421
|
+
# album.
|
|
422
|
+
uri:,
|
|
423
|
+
# Included in the response when a content restriction is applied.
|
|
424
|
+
restrictions: nil
|
|
425
|
+
)
|
|
426
|
+
end
|
|
427
|
+
|
|
428
|
+
sig do
|
|
429
|
+
override.returns(
|
|
430
|
+
{
|
|
431
|
+
id: String,
|
|
432
|
+
album_type: Spotted::TrackObject::Album::AlbumType::TaggedSymbol,
|
|
433
|
+
artists: T::Array[Spotted::SimplifiedArtistObject],
|
|
434
|
+
available_markets: T::Array[String],
|
|
435
|
+
external_urls: Spotted::ExternalURLObject,
|
|
436
|
+
href: String,
|
|
437
|
+
images: T::Array[Spotted::ImageObject],
|
|
438
|
+
name: String,
|
|
439
|
+
release_date: String,
|
|
440
|
+
release_date_precision:
|
|
441
|
+
Spotted::TrackObject::Album::ReleaseDatePrecision::TaggedSymbol,
|
|
442
|
+
total_tracks: Integer,
|
|
443
|
+
type: Spotted::TrackObject::Album::Type::TaggedSymbol,
|
|
444
|
+
uri: String,
|
|
445
|
+
restrictions: Spotted::AlbumRestrictionObject
|
|
446
|
+
}
|
|
447
|
+
)
|
|
448
|
+
end
|
|
449
|
+
def to_hash
|
|
450
|
+
end
|
|
451
|
+
|
|
452
|
+
# The type of the album.
|
|
453
|
+
module AlbumType
|
|
454
|
+
extend Spotted::Internal::Type::Enum
|
|
455
|
+
|
|
456
|
+
TaggedSymbol =
|
|
457
|
+
T.type_alias do
|
|
458
|
+
T.all(Symbol, Spotted::TrackObject::Album::AlbumType)
|
|
459
|
+
end
|
|
460
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
461
|
+
|
|
462
|
+
ALBUM =
|
|
463
|
+
T.let(:album, Spotted::TrackObject::Album::AlbumType::TaggedSymbol)
|
|
464
|
+
SINGLE =
|
|
465
|
+
T.let(:single, Spotted::TrackObject::Album::AlbumType::TaggedSymbol)
|
|
466
|
+
COMPILATION =
|
|
467
|
+
T.let(
|
|
468
|
+
:compilation,
|
|
469
|
+
Spotted::TrackObject::Album::AlbumType::TaggedSymbol
|
|
470
|
+
)
|
|
471
|
+
|
|
472
|
+
sig do
|
|
473
|
+
override.returns(
|
|
474
|
+
T::Array[Spotted::TrackObject::Album::AlbumType::TaggedSymbol]
|
|
475
|
+
)
|
|
476
|
+
end
|
|
477
|
+
def self.values
|
|
478
|
+
end
|
|
479
|
+
end
|
|
480
|
+
|
|
481
|
+
# The precision with which `release_date` value is known.
|
|
482
|
+
module ReleaseDatePrecision
|
|
483
|
+
extend Spotted::Internal::Type::Enum
|
|
484
|
+
|
|
485
|
+
TaggedSymbol =
|
|
486
|
+
T.type_alias do
|
|
487
|
+
T.all(Symbol, Spotted::TrackObject::Album::ReleaseDatePrecision)
|
|
488
|
+
end
|
|
489
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
490
|
+
|
|
491
|
+
YEAR =
|
|
492
|
+
T.let(
|
|
493
|
+
:year,
|
|
494
|
+
Spotted::TrackObject::Album::ReleaseDatePrecision::TaggedSymbol
|
|
495
|
+
)
|
|
496
|
+
MONTH =
|
|
497
|
+
T.let(
|
|
498
|
+
:month,
|
|
499
|
+
Spotted::TrackObject::Album::ReleaseDatePrecision::TaggedSymbol
|
|
500
|
+
)
|
|
501
|
+
DAY =
|
|
502
|
+
T.let(
|
|
503
|
+
:day,
|
|
504
|
+
Spotted::TrackObject::Album::ReleaseDatePrecision::TaggedSymbol
|
|
505
|
+
)
|
|
506
|
+
|
|
507
|
+
sig do
|
|
508
|
+
override.returns(
|
|
509
|
+
T::Array[
|
|
510
|
+
Spotted::TrackObject::Album::ReleaseDatePrecision::TaggedSymbol
|
|
511
|
+
]
|
|
512
|
+
)
|
|
513
|
+
end
|
|
514
|
+
def self.values
|
|
515
|
+
end
|
|
516
|
+
end
|
|
517
|
+
|
|
518
|
+
# The object type.
|
|
519
|
+
module Type
|
|
520
|
+
extend Spotted::Internal::Type::Enum
|
|
521
|
+
|
|
522
|
+
TaggedSymbol =
|
|
523
|
+
T.type_alias { T.all(Symbol, Spotted::TrackObject::Album::Type) }
|
|
524
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
525
|
+
|
|
526
|
+
ALBUM = T.let(:album, Spotted::TrackObject::Album::Type::TaggedSymbol)
|
|
527
|
+
|
|
528
|
+
sig do
|
|
529
|
+
override.returns(
|
|
530
|
+
T::Array[Spotted::TrackObject::Album::Type::TaggedSymbol]
|
|
531
|
+
)
|
|
532
|
+
end
|
|
533
|
+
def self.values
|
|
534
|
+
end
|
|
535
|
+
end
|
|
536
|
+
end
|
|
537
|
+
|
|
538
|
+
# The object type: "track".
|
|
539
|
+
module Type
|
|
540
|
+
extend Spotted::Internal::Type::Enum
|
|
541
|
+
|
|
542
|
+
TaggedSymbol =
|
|
543
|
+
T.type_alias { T.all(Symbol, Spotted::TrackObject::Type) }
|
|
544
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
545
|
+
|
|
546
|
+
TRACK = T.let(:track, Spotted::TrackObject::Type::TaggedSymbol)
|
|
547
|
+
|
|
548
|
+
sig do
|
|
549
|
+
override.returns(T::Array[Spotted::TrackObject::Type::TaggedSymbol])
|
|
550
|
+
end
|
|
551
|
+
def self.values
|
|
552
|
+
end
|
|
553
|
+
end
|
|
554
|
+
end
|
|
555
|
+
end
|
|
556
|
+
end
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Spotted
|
|
4
|
+
module Models
|
|
5
|
+
class TrackRestrictionObject < Spotted::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(Spotted::TrackRestrictionObject, Spotted::Internal::AnyHash)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
# The reason for the restriction. Supported values:
|
|
12
|
+
#
|
|
13
|
+
# - `market` - The content item is not available in the given market.
|
|
14
|
+
# - `product` - The content item is not available for the user's subscription
|
|
15
|
+
# type.
|
|
16
|
+
# - `explicit` - The content item is explicit and the user's account is set to not
|
|
17
|
+
# play explicit content.
|
|
18
|
+
#
|
|
19
|
+
# Additional reasons may be added in the future. **Note**: If you use this field,
|
|
20
|
+
# make sure that your application safely handles unknown values.
|
|
21
|
+
sig { returns(T.nilable(String)) }
|
|
22
|
+
attr_reader :reason
|
|
23
|
+
|
|
24
|
+
sig { params(reason: String).void }
|
|
25
|
+
attr_writer :reason
|
|
26
|
+
|
|
27
|
+
sig { params(reason: String).returns(T.attached_class) }
|
|
28
|
+
def self.new(
|
|
29
|
+
# The reason for the restriction. Supported values:
|
|
30
|
+
#
|
|
31
|
+
# - `market` - The content item is not available in the given market.
|
|
32
|
+
# - `product` - The content item is not available for the user's subscription
|
|
33
|
+
# type.
|
|
34
|
+
# - `explicit` - The content item is explicit and the user's account is set to not
|
|
35
|
+
# play explicit content.
|
|
36
|
+
#
|
|
37
|
+
# Additional reasons may be added in the future. **Note**: If you use this field,
|
|
38
|
+
# make sure that your application safely handles unknown values.
|
|
39
|
+
reason: nil
|
|
40
|
+
)
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
sig { override.returns({ reason: String }) }
|
|
44
|
+
def to_hash
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Spotted
|
|
4
|
+
module Models
|
|
5
|
+
class TrackRetrieveParams < Spotted::Internal::Type::BaseModel
|
|
6
|
+
extend Spotted::Internal::Type::RequestParameters::Converter
|
|
7
|
+
include Spotted::Internal::Type::RequestParameters
|
|
8
|
+
|
|
9
|
+
OrHash =
|
|
10
|
+
T.type_alias do
|
|
11
|
+
T.any(Spotted::TrackRetrieveParams, Spotted::Internal::AnyHash)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# An
|
|
15
|
+
# [ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
|
|
16
|
+
# If a country code is specified, only content that is available in that market
|
|
17
|
+
# will be returned.<br/> If a valid user access token is specified in the request
|
|
18
|
+
# header, the country associated with the user account will take priority over
|
|
19
|
+
# this parameter.<br/> _**Note**: If neither market or user country are provided,
|
|
20
|
+
# the content is considered unavailable for the client._<br/> Users can view the
|
|
21
|
+
# country that is associated with their account in the
|
|
22
|
+
# [account settings](https://www.spotify.com/account/overview/).
|
|
23
|
+
sig { returns(T.nilable(String)) }
|
|
24
|
+
attr_reader :market
|
|
25
|
+
|
|
26
|
+
sig { params(market: String).void }
|
|
27
|
+
attr_writer :market
|
|
28
|
+
|
|
29
|
+
sig do
|
|
30
|
+
params(
|
|
31
|
+
market: String,
|
|
32
|
+
request_options: Spotted::RequestOptions::OrHash
|
|
33
|
+
).returns(T.attached_class)
|
|
34
|
+
end
|
|
35
|
+
def self.new(
|
|
36
|
+
# An
|
|
37
|
+
# [ISO 3166-1 alpha-2 country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
|
|
38
|
+
# If a country code is specified, only content that is available in that market
|
|
39
|
+
# will be returned.<br/> If a valid user access token is specified in the request
|
|
40
|
+
# header, the country associated with the user account will take priority over
|
|
41
|
+
# this parameter.<br/> _**Note**: If neither market or user country are provided,
|
|
42
|
+
# the content is considered unavailable for the client._<br/> Users can view the
|
|
43
|
+
# country that is associated with their account in the
|
|
44
|
+
# [account settings](https://www.spotify.com/account/overview/).
|
|
45
|
+
market: nil,
|
|
46
|
+
request_options: {}
|
|
47
|
+
)
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
sig do
|
|
51
|
+
override.returns(
|
|
52
|
+
{ market: String, request_options: Spotted::RequestOptions }
|
|
53
|
+
)
|
|
54
|
+
end
|
|
55
|
+
def to_hash
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Spotted
|
|
4
|
+
module Models
|
|
5
|
+
class UserRetrieveProfileParams < Spotted::Internal::Type::BaseModel
|
|
6
|
+
extend Spotted::Internal::Type::RequestParameters::Converter
|
|
7
|
+
include Spotted::Internal::Type::RequestParameters
|
|
8
|
+
|
|
9
|
+
OrHash =
|
|
10
|
+
T.type_alias do
|
|
11
|
+
T.any(Spotted::UserRetrieveProfileParams, Spotted::Internal::AnyHash)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
sig do
|
|
15
|
+
params(request_options: Spotted::RequestOptions::OrHash).returns(
|
|
16
|
+
T.attached_class
|
|
17
|
+
)
|
|
18
|
+
end
|
|
19
|
+
def self.new(request_options: {})
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
sig { override.returns({ request_options: Spotted::RequestOptions }) }
|
|
23
|
+
def to_hash
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|