spotted 0.24.0 → 0.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (275) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +1 -1
  4. data/lib/spotted/internal/type/base_model.rb +1 -0
  5. data/lib/spotted/models/album_bulk_retrieve_response.rb +26 -2
  6. data/lib/spotted/models/album_restriction_object.rb +13 -1
  7. data/lib/spotted/models/album_retrieve_response.rb +26 -2
  8. data/lib/spotted/models/artist_list_albums_response.rb +13 -1
  9. data/lib/spotted/models/artist_object.rb +13 -1
  10. data/lib/spotted/models/audio_analysis_retrieve_response.rb +39 -3
  11. data/lib/spotted/models/audio_feature_bulk_retrieve_response.rb +13 -1
  12. data/lib/spotted/models/audio_feature_retrieve_response.rb +13 -1
  13. data/lib/spotted/models/audiobook_base.rb +13 -1
  14. data/lib/spotted/models/audiobook_bulk_retrieve_response.rb +13 -1
  15. data/lib/spotted/models/audiobook_retrieve_response.rb +13 -1
  16. data/lib/spotted/models/author_object.rb +13 -1
  17. data/lib/spotted/models/browse/category_get_playlists_response.rb +13 -1
  18. data/lib/spotted/models/browse/category_list_response.rb +26 -2
  19. data/lib/spotted/models/browse/category_retrieve_response.rb +13 -1
  20. data/lib/spotted/models/browse_get_featured_playlists_response.rb +13 -1
  21. data/lib/spotted/models/browse_get_new_releases_response.rb +26 -2
  22. data/lib/spotted/models/chapter_bulk_retrieve_response.rb +13 -1
  23. data/lib/spotted/models/chapter_restriction_object.rb +13 -1
  24. data/lib/spotted/models/chapter_retrieve_response.rb +13 -1
  25. data/lib/spotted/models/copyright_object.rb +13 -1
  26. data/lib/spotted/models/episode_object.rb +13 -1
  27. data/lib/spotted/models/episode_restriction_object.rb +13 -1
  28. data/lib/spotted/models/external_id_object.rb +13 -1
  29. data/lib/spotted/models/external_url_object.rb +13 -1
  30. data/lib/spotted/models/followers_object.rb +13 -1
  31. data/lib/spotted/models/image_object.rb +13 -1
  32. data/lib/spotted/models/linked_track_object.rb +13 -1
  33. data/lib/spotted/models/me/album_list_response.rb +39 -3
  34. data/lib/spotted/models/me/album_remove_params.rb +13 -1
  35. data/lib/spotted/models/me/album_save_params.rb +13 -1
  36. data/lib/spotted/models/me/audiobook_list_response.rb +26 -2
  37. data/lib/spotted/models/me/context_object.rb +13 -1
  38. data/lib/spotted/models/me/device_object.rb +13 -1
  39. data/lib/spotted/models/me/episode_list_response.rb +13 -1
  40. data/lib/spotted/models/me/episode_remove_params.rb +13 -1
  41. data/lib/spotted/models/me/episode_save_params.rb +13 -1
  42. data/lib/spotted/models/me/following_bulk_retrieve_response.rb +30 -2
  43. data/lib/spotted/models/me/following_follow_params.rb +13 -1
  44. data/lib/spotted/models/me/following_unfollow_params.rb +13 -1
  45. data/lib/spotted/models/me/player/queue_get_response.rb +16 -1
  46. data/lib/spotted/models/me/player_get_currently_playing_response.rb +30 -2
  47. data/lib/spotted/models/me/player_get_state_response.rb +29 -2
  48. data/lib/spotted/models/me/player_list_recently_played_response.rb +16 -1
  49. data/lib/spotted/models/me/player_start_playback_params.rb +13 -1
  50. data/lib/spotted/models/me/player_transfer_params.rb +13 -1
  51. data/lib/spotted/models/me/show_list_response.rb +13 -1
  52. data/lib/spotted/models/me/show_remove_params.rb +13 -1
  53. data/lib/spotted/models/me/show_save_params.rb +13 -1
  54. data/lib/spotted/models/me/track_list_response.rb +13 -1
  55. data/lib/spotted/models/me/track_remove_params.rb +13 -1
  56. data/lib/spotted/models/me/track_save_params.rb +13 -1
  57. data/lib/spotted/models/me_retrieve_response.rb +26 -2
  58. data/lib/spotted/models/narrator_object.rb +13 -1
  59. data/lib/spotted/models/paging_playlist_object.rb +13 -1
  60. data/lib/spotted/models/playlist_retrieve_response.rb +18 -5
  61. data/lib/spotted/models/playlist_track_object.rb +13 -1
  62. data/lib/spotted/models/playlist_tracks_ref_object.rb +13 -1
  63. data/lib/spotted/models/playlist_update_params.rb +13 -1
  64. data/lib/spotted/models/playlist_user_object.rb +13 -1
  65. data/lib/spotted/models/playlists/follower_follow_params.rb +13 -1
  66. data/lib/spotted/models/playlists/track_add_params.rb +13 -1
  67. data/lib/spotted/models/playlists/track_remove_params.rb +13 -1
  68. data/lib/spotted/models/playlists/track_update_params.rb +13 -1
  69. data/lib/spotted/models/recommendation_get_response.rb +26 -2
  70. data/lib/spotted/models/resume_point_object.rb +13 -1
  71. data/lib/spotted/models/search_query_response.rb +91 -7
  72. data/lib/spotted/models/show_base.rb +13 -1
  73. data/lib/spotted/models/show_retrieve_response.rb +13 -1
  74. data/lib/spotted/models/simplified_artist_object.rb +13 -1
  75. data/lib/spotted/models/simplified_chapter_object.rb +13 -1
  76. data/lib/spotted/models/simplified_episode_object.rb +13 -1
  77. data/lib/spotted/models/simplified_playlist_object.rb +5 -4
  78. data/lib/spotted/models/simplified_track_object.rb +13 -1
  79. data/lib/spotted/models/time_interval_object.rb +16 -1
  80. data/lib/spotted/models/track_object.rb +26 -2
  81. data/lib/spotted/models/track_restriction_object.rb +13 -1
  82. data/lib/spotted/models/user_retrieve_profile_response.rb +13 -1
  83. data/lib/spotted/models/users/playlist_create_params.rb +13 -1
  84. data/lib/spotted/models/users/playlist_create_response.rb +18 -5
  85. data/lib/spotted/resources/me/albums.rb +6 -2
  86. data/lib/spotted/resources/me/episodes.rb +6 -2
  87. data/lib/spotted/resources/me/following.rb +6 -2
  88. data/lib/spotted/resources/me/player.rb +6 -2
  89. data/lib/spotted/resources/me/shows.rb +6 -2
  90. data/lib/spotted/resources/me/tracks.rb +6 -2
  91. data/lib/spotted/resources/playlists/followers.rb +3 -1
  92. data/lib/spotted/resources/playlists/tracks.rb +9 -3
  93. data/lib/spotted/resources/playlists.rb +3 -1
  94. data/lib/spotted/resources/users/playlists.rb +3 -1
  95. data/lib/spotted/version.rb +1 -1
  96. data/rbi/spotted/models/album_bulk_retrieve_response.rbi +41 -3
  97. data/rbi/spotted/models/album_restriction_object.rbi +22 -1
  98. data/rbi/spotted/models/album_retrieve_response.rbi +41 -3
  99. data/rbi/spotted/models/artist_list_albums_response.rbi +19 -0
  100. data/rbi/spotted/models/artist_object.rbi +19 -0
  101. data/rbi/spotted/models/audio_analysis_retrieve_response.rbi +57 -0
  102. data/rbi/spotted/models/audio_feature_bulk_retrieve_response.rbi +19 -0
  103. data/rbi/spotted/models/audio_feature_retrieve_response.rbi +19 -0
  104. data/rbi/spotted/models/audiobook_base.rbi +20 -1
  105. data/rbi/spotted/models/audiobook_bulk_retrieve_response.rbi +22 -3
  106. data/rbi/spotted/models/audiobook_retrieve_response.rbi +22 -3
  107. data/rbi/spotted/models/author_object.rbi +22 -3
  108. data/rbi/spotted/models/browse/category_get_playlists_response.rbi +25 -3
  109. data/rbi/spotted/models/browse/category_list_response.rbi +44 -6
  110. data/rbi/spotted/models/browse/category_retrieve_response.rbi +22 -3
  111. data/rbi/spotted/models/browse_get_featured_playlists_response.rbi +25 -3
  112. data/rbi/spotted/models/browse_get_new_releases_response.rbi +41 -3
  113. data/rbi/spotted/models/chapter_bulk_retrieve_response.rbi +19 -0
  114. data/rbi/spotted/models/chapter_restriction_object.rbi +21 -2
  115. data/rbi/spotted/models/chapter_retrieve_response.rbi +19 -0
  116. data/rbi/spotted/models/copyright_object.rbi +25 -2
  117. data/rbi/spotted/models/episode_object.rbi +19 -0
  118. data/rbi/spotted/models/episode_restriction_object.rbi +21 -2
  119. data/rbi/spotted/models/external_id_object.rbi +28 -2
  120. data/rbi/spotted/models/external_url_object.rbi +21 -2
  121. data/rbi/spotted/models/followers_object.rbi +27 -4
  122. data/rbi/spotted/models/image_object.rbi +26 -3
  123. data/rbi/spotted/models/linked_track_object.rbi +19 -0
  124. data/rbi/spotted/models/me/album_list_response.rbi +63 -6
  125. data/rbi/spotted/models/me/album_remove_params.rbi +23 -1
  126. data/rbi/spotted/models/me/album_save_params.rbi +23 -1
  127. data/rbi/spotted/models/me/audiobook_list_response.rbi +44 -6
  128. data/rbi/spotted/models/me/context_object.rbi +19 -0
  129. data/rbi/spotted/models/me/device_object.rbi +19 -0
  130. data/rbi/spotted/models/me/episode_list_response.rbi +27 -3
  131. data/rbi/spotted/models/me/episode_remove_params.rbi +23 -1
  132. data/rbi/spotted/models/me/episode_save_params.rbi +23 -1
  133. data/rbi/spotted/models/me/following_bulk_retrieve_response.rbi +47 -3
  134. data/rbi/spotted/models/me/following_follow_params.rbi +23 -1
  135. data/rbi/spotted/models/me/following_unfollow_params.rbi +23 -1
  136. data/rbi/spotted/models/me/player/queue_get_response.rbi +19 -0
  137. data/rbi/spotted/models/me/player_get_currently_playing_response.rbi +38 -0
  138. data/rbi/spotted/models/me/player_get_state_response.rbi +38 -0
  139. data/rbi/spotted/models/me/player_list_recently_played_response.rbi +19 -0
  140. data/rbi/spotted/models/me/player_start_playback_params.rbi +19 -0
  141. data/rbi/spotted/models/me/player_transfer_params.rbi +19 -0
  142. data/rbi/spotted/models/me/show_list_response.rbi +27 -4
  143. data/rbi/spotted/models/me/show_remove_params.rbi +23 -1
  144. data/rbi/spotted/models/me/show_save_params.rbi +23 -1
  145. data/rbi/spotted/models/me/track_list_response.rbi +29 -4
  146. data/rbi/spotted/models/me/track_remove_params.rbi +23 -1
  147. data/rbi/spotted/models/me/track_save_params.rbi +19 -0
  148. data/rbi/spotted/models/me_retrieve_response.rbi +47 -5
  149. data/rbi/spotted/models/narrator_object.rbi +22 -3
  150. data/rbi/spotted/models/paging_playlist_object.rbi +22 -3
  151. data/rbi/spotted/models/playlist_retrieve_response.rbi +30 -9
  152. data/rbi/spotted/models/playlist_track_object.rbi +19 -0
  153. data/rbi/spotted/models/playlist_tracks_ref_object.rbi +27 -2
  154. data/rbi/spotted/models/playlist_update_params.rbi +19 -0
  155. data/rbi/spotted/models/playlist_user_object.rbi +19 -0
  156. data/rbi/spotted/models/playlists/follower_follow_params.rbi +23 -1
  157. data/rbi/spotted/models/playlists/track_add_params.rbi +19 -0
  158. data/rbi/spotted/models/playlists/track_remove_params.rbi +19 -0
  159. data/rbi/spotted/models/playlists/track_update_params.rbi +19 -0
  160. data/rbi/spotted/models/recommendation_get_response.rbi +41 -3
  161. data/rbi/spotted/models/resume_point_object.rbi +27 -4
  162. data/rbi/spotted/models/search_query_response.rbi +151 -18
  163. data/rbi/spotted/models/show_base.rbi +20 -1
  164. data/rbi/spotted/models/show_retrieve_response.rbi +22 -3
  165. data/rbi/spotted/models/simplified_artist_object.rbi +19 -0
  166. data/rbi/spotted/models/simplified_chapter_object.rbi +19 -0
  167. data/rbi/spotted/models/simplified_episode_object.rbi +19 -0
  168. data/rbi/spotted/models/simplified_playlist_object.rbi +8 -6
  169. data/rbi/spotted/models/simplified_track_object.rbi +19 -0
  170. data/rbi/spotted/models/time_interval_object.rbi +31 -4
  171. data/rbi/spotted/models/track_object.rbi +38 -0
  172. data/rbi/spotted/models/track_restriction_object.rbi +21 -2
  173. data/rbi/spotted/models/user_retrieve_profile_response.rbi +19 -0
  174. data/rbi/spotted/models/users/playlist_create_params.rbi +19 -0
  175. data/rbi/spotted/models/users/playlist_create_response.rbi +30 -9
  176. data/rbi/spotted/resources/me/albums.rbi +14 -0
  177. data/rbi/spotted/resources/me/episodes.rbi +14 -0
  178. data/rbi/spotted/resources/me/following.rbi +14 -0
  179. data/rbi/spotted/resources/me/player.rbi +14 -0
  180. data/rbi/spotted/resources/me/shows.rbi +14 -0
  181. data/rbi/spotted/resources/me/tracks.rbi +14 -0
  182. data/rbi/spotted/resources/playlists/followers.rbi +7 -0
  183. data/rbi/spotted/resources/playlists/tracks.rbi +21 -0
  184. data/rbi/spotted/resources/playlists.rbi +7 -0
  185. data/rbi/spotted/resources/users/playlists.rbi +7 -0
  186. data/sig/spotted/models/album_bulk_retrieve_response.rbs +17 -3
  187. data/sig/spotted/models/album_restriction_object.rbs +10 -1
  188. data/sig/spotted/models/album_retrieve_response.rbs +17 -3
  189. data/sig/spotted/models/artist_list_albums_response.rbs +7 -0
  190. data/sig/spotted/models/artist_object.rbs +7 -0
  191. data/sig/spotted/models/audio_analysis_retrieve_response.rbs +21 -0
  192. data/sig/spotted/models/audio_feature_bulk_retrieve_response.rbs +7 -0
  193. data/sig/spotted/models/audio_feature_retrieve_response.rbs +7 -0
  194. data/sig/spotted/models/audiobook_base.rbs +9 -2
  195. data/sig/spotted/models/audiobook_bulk_retrieve_response.rbs +10 -3
  196. data/sig/spotted/models/audiobook_retrieve_response.rbs +10 -3
  197. data/sig/spotted/models/author_object.rbs +7 -3
  198. data/sig/spotted/models/browse/category_get_playlists_response.rbs +13 -3
  199. data/sig/spotted/models/browse/category_list_response.rbs +20 -6
  200. data/sig/spotted/models/browse/category_retrieve_response.rbs +10 -3
  201. data/sig/spotted/models/browse_get_featured_playlists_response.rbs +13 -3
  202. data/sig/spotted/models/browse_get_new_releases_response.rbs +17 -3
  203. data/sig/spotted/models/chapter_bulk_retrieve_response.rbs +7 -0
  204. data/sig/spotted/models/chapter_restriction_object.rbs +7 -3
  205. data/sig/spotted/models/chapter_retrieve_response.rbs +7 -0
  206. data/sig/spotted/models/copyright_object.rbs +7 -3
  207. data/sig/spotted/models/episode_object.rbs +7 -0
  208. data/sig/spotted/models/episode_restriction_object.rbs +7 -3
  209. data/sig/spotted/models/external_id_object.rbs +19 -4
  210. data/sig/spotted/models/external_url_object.rbs +7 -3
  211. data/sig/spotted/models/followers_object.rbs +11 -3
  212. data/sig/spotted/models/image_object.rbs +18 -3
  213. data/sig/spotted/models/linked_track_object.rbs +7 -0
  214. data/sig/spotted/models/me/album_list_response.rbs +30 -6
  215. data/sig/spotted/models/me/album_remove_params.rbs +8 -1
  216. data/sig/spotted/models/me/album_save_params.rbs +8 -1
  217. data/sig/spotted/models/me/audiobook_list_response.rbs +20 -6
  218. data/sig/spotted/models/me/context_object.rbs +7 -0
  219. data/sig/spotted/models/me/device_object.rbs +7 -0
  220. data/sig/spotted/models/me/episode_list_response.rbs +12 -3
  221. data/sig/spotted/models/me/episode_remove_params.rbs +8 -1
  222. data/sig/spotted/models/me/episode_save_params.rbs +8 -1
  223. data/sig/spotted/models/me/following_bulk_retrieve_response.rbs +18 -3
  224. data/sig/spotted/models/me/following_follow_params.rbs +8 -1
  225. data/sig/spotted/models/me/following_unfollow_params.rbs +8 -1
  226. data/sig/spotted/models/me/player/queue_get_response.rbs +7 -0
  227. data/sig/spotted/models/me/player_get_currently_playing_response.rbs +14 -0
  228. data/sig/spotted/models/me/player_get_state_response.rbs +14 -0
  229. data/sig/spotted/models/me/player_list_recently_played_response.rbs +7 -0
  230. data/sig/spotted/models/me/player_start_playback_params.rbs +7 -0
  231. data/sig/spotted/models/me/player_transfer_params.rbs +7 -1
  232. data/sig/spotted/models/me/show_list_response.rbs +16 -3
  233. data/sig/spotted/models/me/show_remove_params.rbs +8 -1
  234. data/sig/spotted/models/me/show_save_params.rbs +8 -1
  235. data/sig/spotted/models/me/track_list_response.rbs +16 -3
  236. data/sig/spotted/models/me/track_remove_params.rbs +8 -1
  237. data/sig/spotted/models/me/track_save_params.rbs +7 -0
  238. data/sig/spotted/models/me_retrieve_response.rbs +23 -3
  239. data/sig/spotted/models/narrator_object.rbs +7 -3
  240. data/sig/spotted/models/paging_playlist_object.rbs +10 -3
  241. data/sig/spotted/models/playlist_retrieve_response.rbs +10 -3
  242. data/sig/spotted/models/playlist_track_object.rbs +7 -0
  243. data/sig/spotted/models/playlist_tracks_ref_object.rbs +8 -3
  244. data/sig/spotted/models/playlist_update_params.rbs +13 -1
  245. data/sig/spotted/models/playlist_user_object.rbs +7 -0
  246. data/sig/spotted/models/playlists/follower_follow_params.rbs +8 -1
  247. data/sig/spotted/models/playlists/track_add_params.rbs +7 -1
  248. data/sig/spotted/models/playlists/track_remove_params.rbs +7 -0
  249. data/sig/spotted/models/playlists/track_update_params.rbs +7 -0
  250. data/sig/spotted/models/recommendation_get_response.rbs +17 -3
  251. data/sig/spotted/models/resume_point_object.rbs +11 -2
  252. data/sig/spotted/models/search_query_response.rbs +67 -18
  253. data/sig/spotted/models/show_base.rbs +9 -2
  254. data/sig/spotted/models/show_retrieve_response.rbs +10 -3
  255. data/sig/spotted/models/simplified_artist_object.rbs +7 -0
  256. data/sig/spotted/models/simplified_chapter_object.rbs +7 -0
  257. data/sig/spotted/models/simplified_episode_object.rbs +7 -0
  258. data/sig/spotted/models/simplified_track_object.rbs +7 -0
  259. data/sig/spotted/models/time_interval_object.rbs +12 -2
  260. data/sig/spotted/models/track_object.rbs +14 -0
  261. data/sig/spotted/models/track_restriction_object.rbs +7 -3
  262. data/sig/spotted/models/user_retrieve_profile_response.rbs +7 -0
  263. data/sig/spotted/models/users/playlist_create_params.rbs +13 -1
  264. data/sig/spotted/models/users/playlist_create_response.rbs +10 -3
  265. data/sig/spotted/resources/me/albums.rbs +2 -0
  266. data/sig/spotted/resources/me/episodes.rbs +2 -0
  267. data/sig/spotted/resources/me/following.rbs +2 -0
  268. data/sig/spotted/resources/me/player.rbs +2 -0
  269. data/sig/spotted/resources/me/shows.rbs +2 -0
  270. data/sig/spotted/resources/me/tracks.rbs +2 -0
  271. data/sig/spotted/resources/playlists/followers.rbs +1 -0
  272. data/sig/spotted/resources/playlists/tracks.rbs +3 -0
  273. data/sig/spotted/resources/playlists.rbs +1 -0
  274. data/sig/spotted/resources/users/playlists.rbs +1 -0
  275. metadata +2 -2
@@ -36,10 +36,22 @@ module Spotted
36
36
  end
37
37
  attr_writer :album
38
38
 
39
+ # The playlist's public/private status (if it should be added to the user's
40
+ # profile or not): `true` the playlist will be public, `false` the playlist will
41
+ # be private, `null` the playlist status is not relevant. For more about
42
+ # public/private status, see
43
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
44
+ sig { returns(T.nilable(T::Boolean)) }
45
+ attr_reader :published
46
+
47
+ sig { params(published: T::Boolean).void }
48
+ attr_writer :published
49
+
39
50
  sig do
40
51
  params(
41
52
  added_at: Time,
42
- album: Spotted::Models::Me::AlbumListResponse::Album::OrHash
53
+ album: Spotted::Models::Me::AlbumListResponse::Album::OrHash,
54
+ published: T::Boolean
43
55
  ).returns(T.attached_class)
44
56
  end
45
57
  def self.new(
@@ -50,7 +62,13 @@ module Spotted
50
62
  # album object.
51
63
  added_at: nil,
52
64
  # Information about the album.
53
- album: nil
65
+ album: nil,
66
+ # The playlist's public/private status (if it should be added to the user's
67
+ # profile or not): `true` the playlist will be public, `false` the playlist will
68
+ # be private, `null` the playlist status is not relevant. For more about
69
+ # public/private status, see
70
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
71
+ published: nil
54
72
  )
55
73
  end
56
74
 
@@ -58,7 +76,8 @@ module Spotted
58
76
  override.returns(
59
77
  {
60
78
  added_at: Time,
61
- album: Spotted::Models::Me::AlbumListResponse::Album
79
+ album: Spotted::Models::Me::AlbumListResponse::Album,
80
+ published: T::Boolean
62
81
  }
63
82
  )
64
83
  end
@@ -189,6 +208,17 @@ module Spotted
189
208
  sig { params(popularity: Integer).void }
190
209
  attr_writer :popularity
191
210
 
211
+ # The playlist's public/private status (if it should be added to the user's
212
+ # profile or not): `true` the playlist will be public, `false` the playlist will
213
+ # be private, `null` the playlist status is not relevant. For more about
214
+ # public/private status, see
215
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
216
+ sig { returns(T.nilable(T::Boolean)) }
217
+ attr_reader :published
218
+
219
+ sig { params(published: T::Boolean).void }
220
+ attr_writer :published
221
+
192
222
  # Included in the response when a content restriction is applied.
193
223
  sig { returns(T.nilable(Spotted::AlbumRestrictionObject)) }
194
224
  attr_reader :restrictions
@@ -236,6 +266,7 @@ module Spotted
236
266
  genres: T::Array[String],
237
267
  label: String,
238
268
  popularity: Integer,
269
+ published: T::Boolean,
239
270
  restrictions: Spotted::AlbumRestrictionObject::OrHash,
240
271
  tracks:
241
272
  Spotted::Models::Me::AlbumListResponse::Album::Tracks::OrHash,
@@ -285,6 +316,12 @@ module Spotted
285
316
  # The popularity of the album. The value will be between 0 and 100, with 100 being
286
317
  # the most popular.
287
318
  popularity: nil,
319
+ # The playlist's public/private status (if it should be added to the user's
320
+ # profile or not): `true` the playlist will be public, `false` the playlist will
321
+ # be private, `null` the playlist status is not relevant. For more about
322
+ # public/private status, see
323
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
324
+ published: nil,
288
325
  # Included in the response when a content restriction is applied.
289
326
  restrictions: nil,
290
327
  # The tracks of the album.
@@ -317,6 +354,7 @@ module Spotted
317
354
  genres: T::Array[String],
318
355
  label: String,
319
356
  popularity: Integer,
357
+ published: T::Boolean,
320
358
  restrictions: Spotted::AlbumRestrictionObject,
321
359
  tracks: Spotted::Models::Me::AlbumListResponse::Album::Tracks
322
360
  }
@@ -448,6 +486,17 @@ module Spotted
448
486
  end
449
487
  attr_writer :items
450
488
 
489
+ # The playlist's public/private status (if it should be added to the user's
490
+ # profile or not): `true` the playlist will be public, `false` the playlist will
491
+ # be private, `null` the playlist status is not relevant. For more about
492
+ # public/private status, see
493
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
494
+ sig { returns(T.nilable(T::Boolean)) }
495
+ attr_reader :published
496
+
497
+ sig { params(published: T::Boolean).void }
498
+ attr_writer :published
499
+
451
500
  # The tracks of the album.
452
501
  sig do
453
502
  params(
@@ -457,7 +506,8 @@ module Spotted
457
506
  offset: Integer,
458
507
  previous: T.nilable(String),
459
508
  total: Integer,
460
- items: T::Array[Spotted::SimplifiedTrackObject::OrHash]
509
+ items: T::Array[Spotted::SimplifiedTrackObject::OrHash],
510
+ published: T::Boolean
461
511
  ).returns(T.attached_class)
462
512
  end
463
513
  def self.new(
@@ -473,7 +523,13 @@ module Spotted
473
523
  previous:,
474
524
  # The total number of items available to return.
475
525
  total:,
476
- items: nil
526
+ items: nil,
527
+ # The playlist's public/private status (if it should be added to the user's
528
+ # profile or not): `true` the playlist will be public, `false` the playlist will
529
+ # be private, `null` the playlist status is not relevant. For more about
530
+ # public/private status, see
531
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
532
+ published: nil
477
533
  )
478
534
  end
479
535
 
@@ -486,7 +542,8 @@ module Spotted
486
542
  offset: Integer,
487
543
  previous: T.nilable(String),
488
544
  total: Integer,
489
- items: T::Array[Spotted::SimplifiedTrackObject]
545
+ items: T::Array[Spotted::SimplifiedTrackObject],
546
+ published: T::Boolean
490
547
  }
491
548
  )
492
549
  end
@@ -23,9 +23,21 @@ module Spotted
23
23
  sig { params(ids: T::Array[String]).void }
24
24
  attr_writer :ids
25
25
 
26
+ # The playlist's public/private status (if it should be added to the user's
27
+ # profile or not): `true` the playlist will be public, `false` the playlist will
28
+ # be private, `null` the playlist status is not relevant. For more about
29
+ # public/private status, see
30
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
31
+ sig { returns(T.nilable(T::Boolean)) }
32
+ attr_reader :published
33
+
34
+ sig { params(published: T::Boolean).void }
35
+ attr_writer :published
36
+
26
37
  sig do
27
38
  params(
28
39
  ids: T::Array[String],
40
+ published: T::Boolean,
29
41
  request_options: Spotted::RequestOptions::OrHash
30
42
  ).returns(T.attached_class)
31
43
  end
@@ -36,13 +48,23 @@ module Spotted
36
48
  # can be specified in one request. _**Note**: if the `ids` parameter is present in
37
49
  # the query string, any IDs listed here in the body will be ignored._
38
50
  ids: nil,
51
+ # The playlist's public/private status (if it should be added to the user's
52
+ # profile or not): `true` the playlist will be public, `false` the playlist will
53
+ # be private, `null` the playlist status is not relevant. For more about
54
+ # public/private status, see
55
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
56
+ published: nil,
39
57
  request_options: {}
40
58
  )
41
59
  end
42
60
 
43
61
  sig do
44
62
  override.returns(
45
- { ids: T::Array[String], request_options: Spotted::RequestOptions }
63
+ {
64
+ ids: T::Array[String],
65
+ published: T::Boolean,
66
+ request_options: Spotted::RequestOptions
67
+ }
46
68
  )
47
69
  end
48
70
  def to_hash
@@ -23,9 +23,21 @@ module Spotted
23
23
  sig { params(ids: T::Array[String]).void }
24
24
  attr_writer :ids
25
25
 
26
+ # The playlist's public/private status (if it should be added to the user's
27
+ # profile or not): `true` the playlist will be public, `false` the playlist will
28
+ # be private, `null` the playlist status is not relevant. For more about
29
+ # public/private status, see
30
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
31
+ sig { returns(T.nilable(T::Boolean)) }
32
+ attr_reader :published
33
+
34
+ sig { params(published: T::Boolean).void }
35
+ attr_writer :published
36
+
26
37
  sig do
27
38
  params(
28
39
  ids: T::Array[String],
40
+ published: T::Boolean,
29
41
  request_options: Spotted::RequestOptions::OrHash
30
42
  ).returns(T.attached_class)
31
43
  end
@@ -36,13 +48,23 @@ module Spotted
36
48
  # can be specified in one request. _**Note**: if the `ids` parameter is present in
37
49
  # the query string, any IDs listed here in the body will be ignored._
38
50
  ids: nil,
51
+ # The playlist's public/private status (if it should be added to the user's
52
+ # profile or not): `true` the playlist will be public, `false` the playlist will
53
+ # be private, `null` the playlist status is not relevant. For more about
54
+ # public/private status, see
55
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
56
+ published: nil,
39
57
  request_options: {}
40
58
  )
41
59
  end
42
60
 
43
61
  sig do
44
62
  override.returns(
45
- { ids: T::Array[String], request_options: Spotted::RequestOptions }
63
+ {
64
+ ids: T::Array[String],
65
+ published: T::Boolean,
66
+ request_options: Spotted::RequestOptions
67
+ }
46
68
  )
47
69
  end
48
70
  def to_hash
@@ -39,11 +39,23 @@ module Spotted
39
39
  end
40
40
  attr_writer :audiobook
41
41
 
42
+ # The playlist's public/private status (if it should be added to the user's
43
+ # profile or not): `true` the playlist will be public, `false` the playlist will
44
+ # be private, `null` the playlist status is not relevant. For more about
45
+ # public/private status, see
46
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
47
+ sig { returns(T.nilable(T::Boolean)) }
48
+ attr_reader :published
49
+
50
+ sig { params(published: T::Boolean).void }
51
+ attr_writer :published
52
+
42
53
  sig do
43
54
  params(
44
55
  added_at: Time,
45
56
  audiobook:
46
- Spotted::Models::Me::AudiobookListResponse::Audiobook::OrHash
57
+ Spotted::Models::Me::AudiobookListResponse::Audiobook::OrHash,
58
+ published: T::Boolean
47
59
  ).returns(T.attached_class)
48
60
  end
49
61
  def self.new(
@@ -54,7 +66,13 @@ module Spotted
54
66
  # release_date in an album object.
55
67
  added_at: nil,
56
68
  # Information about the audiobook.
57
- audiobook: nil
69
+ audiobook: nil,
70
+ # The playlist's public/private status (if it should be added to the user's
71
+ # profile or not): `true` the playlist will be public, `false` the playlist will
72
+ # be private, `null` the playlist status is not relevant. For more about
73
+ # public/private status, see
74
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
75
+ published: nil
58
76
  )
59
77
  end
60
78
 
@@ -62,7 +80,8 @@ module Spotted
62
80
  override.returns(
63
81
  {
64
82
  added_at: Time,
65
- audiobook: Spotted::Models::Me::AudiobookListResponse::Audiobook
83
+ audiobook: Spotted::Models::Me::AudiobookListResponse::Audiobook,
84
+ published: T::Boolean
66
85
  }
67
86
  )
68
87
  end
@@ -163,6 +182,17 @@ module Spotted
163
182
  end
164
183
  attr_writer :items
165
184
 
185
+ # The playlist's public/private status (if it should be added to the user's
186
+ # profile or not): `true` the playlist will be public, `false` the playlist will
187
+ # be private, `null` the playlist status is not relevant. For more about
188
+ # public/private status, see
189
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
190
+ sig { returns(T.nilable(T::Boolean)) }
191
+ attr_reader :published
192
+
193
+ sig { params(published: T::Boolean).void }
194
+ attr_writer :published
195
+
166
196
  # The chapters of the audiobook.
167
197
  sig do
168
198
  params(
@@ -172,7 +202,8 @@ module Spotted
172
202
  offset: Integer,
173
203
  previous: T.nilable(String),
174
204
  total: Integer,
175
- items: T::Array[Spotted::SimplifiedChapterObject::OrHash]
205
+ items: T::Array[Spotted::SimplifiedChapterObject::OrHash],
206
+ published: T::Boolean
176
207
  ).returns(T.attached_class)
177
208
  end
178
209
  def self.new(
@@ -188,7 +219,13 @@ module Spotted
188
219
  previous:,
189
220
  # The total number of items available to return.
190
221
  total:,
191
- items: nil
222
+ items: nil,
223
+ # The playlist's public/private status (if it should be added to the user's
224
+ # profile or not): `true` the playlist will be public, `false` the playlist will
225
+ # be private, `null` the playlist status is not relevant. For more about
226
+ # public/private status, see
227
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
228
+ published: nil
192
229
  )
193
230
  end
194
231
 
@@ -201,7 +238,8 @@ module Spotted
201
238
  offset: Integer,
202
239
  previous: T.nilable(String),
203
240
  total: Integer,
204
- items: T::Array[Spotted::SimplifiedChapterObject]
241
+ items: T::Array[Spotted::SimplifiedChapterObject],
242
+ published: T::Boolean
205
243
  }
206
244
  )
207
245
  end
@@ -23,6 +23,17 @@ module Spotted
23
23
  sig { params(href: String).void }
24
24
  attr_writer :href
25
25
 
26
+ # The playlist's public/private status (if it should be added to the user's
27
+ # profile or not): `true` the playlist will be public, `false` the playlist will
28
+ # be private, `null` the playlist status is not relevant. For more about
29
+ # public/private status, see
30
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
31
+ sig { returns(T.nilable(T::Boolean)) }
32
+ attr_reader :published
33
+
34
+ sig { params(published: T::Boolean).void }
35
+ attr_writer :published
36
+
26
37
  # The object type, e.g. "artist", "playlist", "album", "show".
27
38
  sig { returns(T.nilable(String)) }
28
39
  attr_reader :type
@@ -42,6 +53,7 @@ module Spotted
42
53
  params(
43
54
  external_urls: Spotted::ExternalURLObject::OrHash,
44
55
  href: String,
56
+ published: T::Boolean,
45
57
  type: String,
46
58
  uri: String
47
59
  ).returns(T.attached_class)
@@ -51,6 +63,12 @@ module Spotted
51
63
  external_urls: nil,
52
64
  # A link to the Web API endpoint providing full details of the track.
53
65
  href: nil,
66
+ # The playlist's public/private status (if it should be added to the user's
67
+ # profile or not): `true` the playlist will be public, `false` the playlist will
68
+ # be private, `null` the playlist status is not relevant. For more about
69
+ # public/private status, see
70
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
71
+ published: nil,
54
72
  # The object type, e.g. "artist", "playlist", "album", "show".
55
73
  type: nil,
56
74
  # The [Spotify URI](/documentation/web-api/concepts/spotify-uris-ids) for the
@@ -64,6 +82,7 @@ module Spotted
64
82
  {
65
83
  external_urls: Spotted::ExternalURLObject,
66
84
  href: String,
85
+ published: T::Boolean,
67
86
  type: String,
68
87
  uri: String
69
88
  }
@@ -46,6 +46,17 @@ module Spotted
46
46
  sig { params(name: String).void }
47
47
  attr_writer :name
48
48
 
49
+ # The playlist's public/private status (if it should be added to the user's
50
+ # profile or not): `true` the playlist will be public, `false` the playlist will
51
+ # be private, `null` the playlist status is not relevant. For more about
52
+ # public/private status, see
53
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
54
+ sig { returns(T.nilable(T::Boolean)) }
55
+ attr_reader :published
56
+
57
+ sig { params(published: T::Boolean).void }
58
+ attr_writer :published
59
+
49
60
  # If this device can be used to set the volume.
50
61
  sig { returns(T.nilable(T::Boolean)) }
51
62
  attr_reader :supports_volume
@@ -71,6 +82,7 @@ module Spotted
71
82
  is_private_session: T::Boolean,
72
83
  is_restricted: T::Boolean,
73
84
  name: String,
85
+ published: T::Boolean,
74
86
  supports_volume: T::Boolean,
75
87
  type: String,
76
88
  volume_percent: T.nilable(Integer)
@@ -92,6 +104,12 @@ module Spotted
92
104
  # configure (e.g. \"Loudest speaker\") and some devices have a generic name
93
105
  # associated with the manufacturer or device model.
94
106
  name: nil,
107
+ # The playlist's public/private status (if it should be added to the user's
108
+ # profile or not): `true` the playlist will be public, `false` the playlist will
109
+ # be private, `null` the playlist status is not relevant. For more about
110
+ # public/private status, see
111
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
112
+ published: nil,
95
113
  # If this device can be used to set the volume.
96
114
  supports_volume: nil,
97
115
  # Device type, such as "computer", "smartphone" or "speaker".
@@ -109,6 +127,7 @@ module Spotted
109
127
  is_private_session: T::Boolean,
110
128
  is_restricted: T::Boolean,
111
129
  name: String,
130
+ published: T::Boolean,
112
131
  supports_volume: T::Boolean,
113
132
  type: String,
114
133
  volume_percent: T.nilable(Integer)
@@ -28,10 +28,22 @@ module Spotted
28
28
  sig { params(episode: Spotted::EpisodeObject::OrHash).void }
29
29
  attr_writer :episode
30
30
 
31
+ # The playlist's public/private status (if it should be added to the user's
32
+ # profile or not): `true` the playlist will be public, `false` the playlist will
33
+ # be private, `null` the playlist status is not relevant. For more about
34
+ # public/private status, see
35
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
36
+ sig { returns(T.nilable(T::Boolean)) }
37
+ attr_reader :published
38
+
39
+ sig { params(published: T::Boolean).void }
40
+ attr_writer :published
41
+
31
42
  sig do
32
43
  params(
33
44
  added_at: Time,
34
- episode: Spotted::EpisodeObject::OrHash
45
+ episode: Spotted::EpisodeObject::OrHash,
46
+ published: T::Boolean
35
47
  ).returns(T.attached_class)
36
48
  end
37
49
  def self.new(
@@ -40,12 +52,24 @@ module Spotted
40
52
  # YYYY-MM-DDTHH:MM:SSZ.
41
53
  added_at: nil,
42
54
  # Information about the episode.
43
- episode: nil
55
+ episode: nil,
56
+ # The playlist's public/private status (if it should be added to the user's
57
+ # profile or not): `true` the playlist will be public, `false` the playlist will
58
+ # be private, `null` the playlist status is not relevant. For more about
59
+ # public/private status, see
60
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
61
+ published: nil
44
62
  )
45
63
  end
46
64
 
47
65
  sig do
48
- override.returns({ added_at: Time, episode: Spotted::EpisodeObject })
66
+ override.returns(
67
+ {
68
+ added_at: Time,
69
+ episode: Spotted::EpisodeObject,
70
+ published: T::Boolean
71
+ }
72
+ )
49
73
  end
50
74
  def to_hash
51
75
  end
@@ -23,9 +23,21 @@ module Spotted
23
23
  sig { params(ids: T::Array[String]).void }
24
24
  attr_writer :ids
25
25
 
26
+ # The playlist's public/private status (if it should be added to the user's
27
+ # profile or not): `true` the playlist will be public, `false` the playlist will
28
+ # be private, `null` the playlist status is not relevant. For more about
29
+ # public/private status, see
30
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
31
+ sig { returns(T.nilable(T::Boolean)) }
32
+ attr_reader :published
33
+
34
+ sig { params(published: T::Boolean).void }
35
+ attr_writer :published
36
+
26
37
  sig do
27
38
  params(
28
39
  ids: T::Array[String],
40
+ published: T::Boolean,
29
41
  request_options: Spotted::RequestOptions::OrHash
30
42
  ).returns(T.attached_class)
31
43
  end
@@ -36,13 +48,23 @@ module Spotted
36
48
  # is present in the query string, any IDs listed here in the body will be
37
49
  # ignored._
38
50
  ids: nil,
51
+ # The playlist's public/private status (if it should be added to the user's
52
+ # profile or not): `true` the playlist will be public, `false` the playlist will
53
+ # be private, `null` the playlist status is not relevant. For more about
54
+ # public/private status, see
55
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
56
+ published: nil,
39
57
  request_options: {}
40
58
  )
41
59
  end
42
60
 
43
61
  sig do
44
62
  override.returns(
45
- { ids: T::Array[String], request_options: Spotted::RequestOptions }
63
+ {
64
+ ids: T::Array[String],
65
+ published: T::Boolean,
66
+ request_options: Spotted::RequestOptions
67
+ }
46
68
  )
47
69
  end
48
70
  def to_hash
@@ -20,9 +20,21 @@ module Spotted
20
20
  sig { returns(T::Array[String]) }
21
21
  attr_accessor :ids
22
22
 
23
+ # The playlist's public/private status (if it should be added to the user's
24
+ # profile or not): `true` the playlist will be public, `false` the playlist will
25
+ # be private, `null` the playlist status is not relevant. For more about
26
+ # public/private status, see
27
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
28
+ sig { returns(T.nilable(T::Boolean)) }
29
+ attr_reader :published
30
+
31
+ sig { params(published: T::Boolean).void }
32
+ attr_writer :published
33
+
23
34
  sig do
24
35
  params(
25
36
  ids: T::Array[String],
37
+ published: T::Boolean,
26
38
  request_options: Spotted::RequestOptions::OrHash
27
39
  ).returns(T.attached_class)
28
40
  end
@@ -33,13 +45,23 @@ module Spotted
33
45
  # is present in the query string, any IDs listed here in the body will be
34
46
  # ignored._
35
47
  ids:,
48
+ # The playlist's public/private status (if it should be added to the user's
49
+ # profile or not): `true` the playlist will be public, `false` the playlist will
50
+ # be private, `null` the playlist status is not relevant. For more about
51
+ # public/private status, see
52
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
53
+ published: nil,
36
54
  request_options: {}
37
55
  )
38
56
  end
39
57
 
40
58
  sig do
41
59
  override.returns(
42
- { ids: T::Array[String], request_options: Spotted::RequestOptions }
60
+ {
61
+ ids: T::Array[String],
62
+ published: T::Boolean,
63
+ request_options: Spotted::RequestOptions
64
+ }
43
65
  )
44
66
  end
45
67
  def to_hash
@@ -99,6 +99,17 @@ module Spotted
99
99
  sig { params(next_: String).void }
100
100
  attr_writer :next_
101
101
 
102
+ # The playlist's public/private status (if it should be added to the user's
103
+ # profile or not): `true` the playlist will be public, `false` the playlist will
104
+ # be private, `null` the playlist status is not relevant. For more about
105
+ # public/private status, see
106
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
107
+ sig { returns(T.nilable(T::Boolean)) }
108
+ attr_reader :published
109
+
110
+ sig { params(published: T::Boolean).void }
111
+ attr_writer :published
112
+
102
113
  # The total number of items available to return.
103
114
  sig { returns(T.nilable(Integer)) }
104
115
  attr_reader :total
@@ -114,6 +125,7 @@ module Spotted
114
125
  items: T::Array[Spotted::ArtistObject::OrHash],
115
126
  limit: Integer,
116
127
  next_: String,
128
+ published: T::Boolean,
117
129
  total: Integer
118
130
  ).returns(T.attached_class)
119
131
  end
@@ -127,6 +139,12 @@ module Spotted
127
139
  limit: nil,
128
140
  # URL to the next page of items. ( `null` if none)
129
141
  next_: nil,
142
+ # The playlist's public/private status (if it should be added to the user's
143
+ # profile or not): `true` the playlist will be public, `false` the playlist will
144
+ # be private, `null` the playlist status is not relevant. For more about
145
+ # public/private status, see
146
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
147
+ published: nil,
130
148
  # The total number of items available to return.
131
149
  total: nil
132
150
  )
@@ -141,6 +159,7 @@ module Spotted
141
159
  items: T::Array[Spotted::ArtistObject],
142
160
  limit: Integer,
143
161
  next_: String,
162
+ published: T::Boolean,
144
163
  total: Integer
145
164
  }
146
165
  )
@@ -171,19 +190,44 @@ module Spotted
171
190
  sig { params(before: String).void }
172
191
  attr_writer :before
173
192
 
193
+ # The playlist's public/private status (if it should be added to the user's
194
+ # profile or not): `true` the playlist will be public, `false` the playlist will
195
+ # be private, `null` the playlist status is not relevant. For more about
196
+ # public/private status, see
197
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
198
+ sig { returns(T.nilable(T::Boolean)) }
199
+ attr_reader :published
200
+
201
+ sig { params(published: T::Boolean).void }
202
+ attr_writer :published
203
+
174
204
  # The cursors used to find the next set of items.
175
205
  sig do
176
- params(after: String, before: String).returns(T.attached_class)
206
+ params(
207
+ after: String,
208
+ before: String,
209
+ published: T::Boolean
210
+ ).returns(T.attached_class)
177
211
  end
178
212
  def self.new(
179
213
  # The cursor to use as key to find the next page of items.
180
214
  after: nil,
181
215
  # The cursor to use as key to find the previous page of items.
182
- before: nil
216
+ before: nil,
217
+ # The playlist's public/private status (if it should be added to the user's
218
+ # profile or not): `true` the playlist will be public, `false` the playlist will
219
+ # be private, `null` the playlist status is not relevant. For more about
220
+ # public/private status, see
221
+ # [Working with Playlists](/documentation/web-api/concepts/playlists)
222
+ published: nil
183
223
  )
184
224
  end
185
225
 
186
- sig { override.returns({ after: String, before: String }) }
226
+ sig do
227
+ override.returns(
228
+ { after: String, before: String, published: T::Boolean }
229
+ )
230
+ end
187
231
  def to_hash
188
232
  end
189
233
  end