spotted 0.11.0 → 0.12.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 (84) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +13 -0
  3. data/README.md +1 -1
  4. data/lib/spotted/client.rb +60 -1
  5. data/lib/spotted/models/album_bulk_retrieve_response.rb +13 -25
  6. data/lib/spotted/models/album_retrieve_response.rb +13 -25
  7. data/lib/spotted/models/artist_list_albums_response.rb +5 -17
  8. data/lib/spotted/models/audio_analysis_retrieve_response.rb +3 -8
  9. data/lib/spotted/models/audiobook_base.rb +4 -16
  10. data/lib/spotted/models/audiobook_bulk_retrieve_response.rb +8 -8
  11. data/lib/spotted/models/audiobook_retrieve_response.rb +8 -8
  12. data/lib/spotted/models/browse/category_list_response.rb +9 -9
  13. data/lib/spotted/models/browse_get_new_releases_response.rb +14 -26
  14. data/lib/spotted/models/chapter_bulk_retrieve_response.rb +5 -17
  15. data/lib/spotted/models/chapter_retrieve_response.rb +5 -17
  16. data/lib/spotted/models/episode_object.rb +5 -17
  17. data/lib/spotted/models/me/album_list_response.rb +13 -25
  18. data/lib/spotted/models/me/audiobook_list_response.rb +8 -8
  19. data/lib/spotted/models/me/following_bulk_retrieve_params.rb +5 -15
  20. data/lib/spotted/models/paging_playlist_object.rb +8 -8
  21. data/lib/spotted/models/playlist_retrieve_response.rb +8 -8
  22. data/lib/spotted/models/search_query_response.rb +54 -66
  23. data/lib/spotted/models/show_base.rb +4 -16
  24. data/lib/spotted/models/show_retrieve_response.rb +8 -8
  25. data/lib/spotted/models/simplified_chapter_object.rb +5 -17
  26. data/lib/spotted/models/simplified_episode_object.rb +5 -17
  27. data/lib/spotted/models/track_object.rb +5 -17
  28. data/lib/spotted/models/users/playlist_create_response.rb +8 -8
  29. data/lib/spotted/resources/me/following.rb +3 -3
  30. data/lib/spotted/resources/playlists/images.rb +3 -3
  31. data/lib/spotted/version.rb +1 -1
  32. data/rbi/spotted/models/album_bulk_retrieve_response.rbi +21 -52
  33. data/rbi/spotted/models/album_retrieve_response.rbi +21 -43
  34. data/rbi/spotted/models/artist_list_albums_response.rbi +7 -36
  35. data/rbi/spotted/models/audio_analysis_retrieve_response.rbi +3 -8
  36. data/rbi/spotted/models/audiobook_base.rbi +7 -25
  37. data/rbi/spotted/models/audiobook_bulk_retrieve_response.rbi +16 -9
  38. data/rbi/spotted/models/audiobook_retrieve_response.rbi +14 -9
  39. data/rbi/spotted/models/browse/category_list_response.rbi +31 -19
  40. data/rbi/spotted/models/browse_get_new_releases_response.rbi +38 -62
  41. data/rbi/spotted/models/chapter_bulk_retrieve_response.rbi +7 -43
  42. data/rbi/spotted/models/chapter_retrieve_response.rbi +7 -36
  43. data/rbi/spotted/models/episode_object.rbi +7 -24
  44. data/rbi/spotted/models/me/album_list_response.rbi +23 -52
  45. data/rbi/spotted/models/me/audiobook_list_response.rbi +18 -9
  46. data/rbi/spotted/models/me/following_bulk_retrieve_params.rbi +5 -34
  47. data/rbi/spotted/models/paging_playlist_object.rbi +14 -9
  48. data/rbi/spotted/models/playlist_retrieve_response.rbi +14 -9
  49. data/rbi/spotted/models/search_query_response.rbi +96 -101
  50. data/rbi/spotted/models/show_base.rbi +7 -23
  51. data/rbi/spotted/models/show_retrieve_response.rbi +14 -9
  52. data/rbi/spotted/models/simplified_chapter_object.rbi +7 -27
  53. data/rbi/spotted/models/simplified_episode_object.rbi +7 -27
  54. data/rbi/spotted/models/track_object.rbi +7 -26
  55. data/rbi/spotted/models/users/playlist_create_response.rbi +14 -9
  56. data/rbi/spotted/resources/me/following.rbi +3 -3
  57. data/rbi/spotted/resources/playlists/images.rbi +1 -1
  58. data/sig/spotted/models/album_bulk_retrieve_response.rbs +17 -23
  59. data/sig/spotted/models/album_retrieve_response.rbs +17 -23
  60. data/sig/spotted/models/artist_list_albums_response.rbs +5 -15
  61. data/sig/spotted/models/audio_analysis_retrieve_response.rbs +3 -8
  62. data/sig/spotted/models/audiobook_base.rbs +5 -15
  63. data/sig/spotted/models/audiobook_bulk_retrieve_response.rbs +12 -8
  64. data/sig/spotted/models/audiobook_retrieve_response.rbs +12 -8
  65. data/sig/spotted/models/browse/category_list_response.rbs +12 -8
  66. data/sig/spotted/models/browse_get_new_releases_response.rbs +17 -23
  67. data/sig/spotted/models/chapter_bulk_retrieve_response.rbs +5 -15
  68. data/sig/spotted/models/chapter_retrieve_response.rbs +5 -15
  69. data/sig/spotted/models/episode_object.rbs +5 -15
  70. data/sig/spotted/models/me/album_list_response.rbs +17 -23
  71. data/sig/spotted/models/me/audiobook_list_response.rbs +12 -8
  72. data/sig/spotted/models/me/following_bulk_retrieve_params.rbs +4 -18
  73. data/sig/spotted/models/paging_playlist_object.rbs +12 -8
  74. data/sig/spotted/models/playlist_retrieve_response.rbs +12 -8
  75. data/sig/spotted/models/search_query_response.rbs +75 -63
  76. data/sig/spotted/models/show_base.rbs +5 -15
  77. data/sig/spotted/models/show_retrieve_response.rbs +12 -8
  78. data/sig/spotted/models/simplified_chapter_object.rbs +5 -15
  79. data/sig/spotted/models/simplified_episode_object.rbs +5 -15
  80. data/sig/spotted/models/track_object.rbs +5 -15
  81. data/sig/spotted/models/users/playlist_create_response.rbs +12 -8
  82. data/sig/spotted/resources/me/following.rbs +1 -1
  83. data/sig/spotted/resources/playlists/images.rbs +1 -1
  84. metadata +2 -2
@@ -131,9 +131,6 @@ module Spotted
131
131
  sig { returns(String) }
132
132
  attr_accessor :href
133
133
 
134
- sig { returns(T::Array[Spotted::SimplifiedChapterObject]) }
135
- attr_accessor :items
136
-
137
134
  # The maximum number of items in the response (as set in the query or by default).
138
135
  sig { returns(Integer) }
139
136
  attr_accessor :limit
@@ -154,22 +151,33 @@ module Spotted
154
151
  sig { returns(Integer) }
155
152
  attr_accessor :total
156
153
 
154
+ sig do
155
+ returns(T.nilable(T::Array[Spotted::SimplifiedChapterObject]))
156
+ end
157
+ attr_reader :items
158
+
159
+ sig do
160
+ params(
161
+ items: T::Array[Spotted::SimplifiedChapterObject::OrHash]
162
+ ).void
163
+ end
164
+ attr_writer :items
165
+
157
166
  # The chapters of the audiobook.
158
167
  sig do
159
168
  params(
160
169
  href: String,
161
- items: T::Array[Spotted::SimplifiedChapterObject::OrHash],
162
170
  limit: Integer,
163
171
  next_: T.nilable(String),
164
172
  offset: Integer,
165
173
  previous: T.nilable(String),
166
- total: Integer
174
+ total: Integer,
175
+ items: T::Array[Spotted::SimplifiedChapterObject::OrHash]
167
176
  ).returns(T.attached_class)
168
177
  end
169
178
  def self.new(
170
179
  # A link to the Web API endpoint returning the full result of the request
171
180
  href:,
172
- items:,
173
181
  # The maximum number of items in the response (as set in the query or by default).
174
182
  limit:,
175
183
  # URL to the next page of items. ( `null` if none)
@@ -179,7 +187,8 @@ module Spotted
179
187
  # URL to the previous page of items. ( `null` if none)
180
188
  previous:,
181
189
  # The total number of items available to return.
182
- total:
190
+ total:,
191
+ items: nil
183
192
  )
184
193
  end
185
194
 
@@ -187,12 +196,12 @@ module Spotted
187
196
  override.returns(
188
197
  {
189
198
  href: String,
190
- items: T::Array[Spotted::SimplifiedChapterObject],
191
199
  limit: Integer,
192
200
  next_: T.nilable(String),
193
201
  offset: Integer,
194
202
  previous: T.nilable(String),
195
- total: Integer
203
+ total: Integer,
204
+ items: T::Array[Spotted::SimplifiedChapterObject]
196
205
  }
197
206
  )
198
207
  end
@@ -16,9 +16,7 @@ module Spotted
16
16
  end
17
17
 
18
18
  # The ID type: currently only `artist` is supported.
19
- sig do
20
- returns(Spotted::Me::FollowingBulkRetrieveParams::Type::OrSymbol)
21
- end
19
+ sig { returns(Symbol) }
22
20
  attr_accessor :type
23
21
 
24
22
  # The last artist ID retrieved from the previous request.
@@ -37,19 +35,19 @@ module Spotted
37
35
 
38
36
  sig do
39
37
  params(
40
- type: Spotted::Me::FollowingBulkRetrieveParams::Type::OrSymbol,
41
38
  after: String,
42
39
  limit: Integer,
40
+ type: Symbol,
43
41
  request_options: Spotted::RequestOptions::OrHash
44
42
  ).returns(T.attached_class)
45
43
  end
46
44
  def self.new(
47
- # The ID type: currently only `artist` is supported.
48
- type:,
49
45
  # The last artist ID retrieved from the previous request.
50
46
  after: nil,
51
47
  # The maximum number of items to return. Default: 20. Minimum: 1. Maximum: 50.
52
48
  limit: nil,
49
+ # The ID type: currently only `artist` is supported.
50
+ type: :artist,
53
51
  request_options: {}
54
52
  )
55
53
  end
@@ -57,7 +55,7 @@ module Spotted
57
55
  sig do
58
56
  override.returns(
59
57
  {
60
- type: Spotted::Me::FollowingBulkRetrieveParams::Type::OrSymbol,
58
+ type: Symbol,
61
59
  after: String,
62
60
  limit: Integer,
63
61
  request_options: Spotted::RequestOptions
@@ -66,33 +64,6 @@ module Spotted
66
64
  end
67
65
  def to_hash
68
66
  end
69
-
70
- # The ID type: currently only `artist` is supported.
71
- module Type
72
- extend Spotted::Internal::Type::Enum
73
-
74
- TaggedSymbol =
75
- T.type_alias do
76
- T.all(Symbol, Spotted::Me::FollowingBulkRetrieveParams::Type)
77
- end
78
- OrSymbol = T.type_alias { T.any(Symbol, String) }
79
-
80
- ARTIST =
81
- T.let(
82
- :artist,
83
- Spotted::Me::FollowingBulkRetrieveParams::Type::TaggedSymbol
84
- )
85
-
86
- sig do
87
- override.returns(
88
- T::Array[
89
- Spotted::Me::FollowingBulkRetrieveParams::Type::TaggedSymbol
90
- ]
91
- )
92
- end
93
- def self.values
94
- end
95
- end
96
67
  end
97
68
  end
98
69
  end
@@ -12,9 +12,6 @@ module Spotted
12
12
  sig { returns(String) }
13
13
  attr_accessor :href
14
14
 
15
- sig { returns(T::Array[Spotted::SimplifiedPlaylistObject]) }
16
- attr_accessor :items
17
-
18
15
  # The maximum number of items in the response (as set in the query or by default).
19
16
  sig { returns(Integer) }
20
17
  attr_accessor :limit
@@ -35,21 +32,28 @@ module Spotted
35
32
  sig { returns(Integer) }
36
33
  attr_accessor :total
37
34
 
35
+ sig { returns(T.nilable(T::Array[Spotted::SimplifiedPlaylistObject])) }
36
+ attr_reader :items
37
+
38
+ sig do
39
+ params(items: T::Array[Spotted::SimplifiedPlaylistObject::OrHash]).void
40
+ end
41
+ attr_writer :items
42
+
38
43
  sig do
39
44
  params(
40
45
  href: String,
41
- items: T::Array[Spotted::SimplifiedPlaylistObject::OrHash],
42
46
  limit: Integer,
43
47
  next_: T.nilable(String),
44
48
  offset: Integer,
45
49
  previous: T.nilable(String),
46
- total: Integer
50
+ total: Integer,
51
+ items: T::Array[Spotted::SimplifiedPlaylistObject::OrHash]
47
52
  ).returns(T.attached_class)
48
53
  end
49
54
  def self.new(
50
55
  # A link to the Web API endpoint returning the full result of the request
51
56
  href:,
52
- items:,
53
57
  # The maximum number of items in the response (as set in the query or by default).
54
58
  limit:,
55
59
  # URL to the next page of items. ( `null` if none)
@@ -59,7 +63,8 @@ module Spotted
59
63
  # URL to the previous page of items. ( `null` if none)
60
64
  previous:,
61
65
  # The total number of items available to return.
62
- total:
66
+ total:,
67
+ items: nil
63
68
  )
64
69
  end
65
70
 
@@ -67,12 +72,12 @@ module Spotted
67
72
  override.returns(
68
73
  {
69
74
  href: String,
70
- items: T::Array[Spotted::SimplifiedPlaylistObject],
71
75
  limit: Integer,
72
76
  next_: T.nilable(String),
73
77
  offset: Integer,
74
78
  previous: T.nilable(String),
75
- total: Integer
79
+ total: Integer,
80
+ items: T::Array[Spotted::SimplifiedPlaylistObject]
76
81
  }
77
82
  )
78
83
  end
@@ -254,9 +254,6 @@ module Spotted
254
254
  sig { returns(String) }
255
255
  attr_accessor :href
256
256
 
257
- sig { returns(T::Array[Spotted::PlaylistTrackObject]) }
258
- attr_accessor :items
259
-
260
257
  # The maximum number of items in the response (as set in the query or by default).
261
258
  sig { returns(Integer) }
262
259
  attr_accessor :limit
@@ -277,22 +274,29 @@ module Spotted
277
274
  sig { returns(Integer) }
278
275
  attr_accessor :total
279
276
 
277
+ sig { returns(T.nilable(T::Array[Spotted::PlaylistTrackObject])) }
278
+ attr_reader :items
279
+
280
+ sig do
281
+ params(items: T::Array[Spotted::PlaylistTrackObject::OrHash]).void
282
+ end
283
+ attr_writer :items
284
+
280
285
  # The tracks of the playlist.
281
286
  sig do
282
287
  params(
283
288
  href: String,
284
- items: T::Array[Spotted::PlaylistTrackObject::OrHash],
285
289
  limit: Integer,
286
290
  next_: T.nilable(String),
287
291
  offset: Integer,
288
292
  previous: T.nilable(String),
289
- total: Integer
293
+ total: Integer,
294
+ items: T::Array[Spotted::PlaylistTrackObject::OrHash]
290
295
  ).returns(T.attached_class)
291
296
  end
292
297
  def self.new(
293
298
  # A link to the Web API endpoint returning the full result of the request
294
299
  href:,
295
- items:,
296
300
  # The maximum number of items in the response (as set in the query or by default).
297
301
  limit:,
298
302
  # URL to the next page of items. ( `null` if none)
@@ -302,7 +306,8 @@ module Spotted
302
306
  # URL to the previous page of items. ( `null` if none)
303
307
  previous:,
304
308
  # The total number of items available to return.
305
- total:
309
+ total:,
310
+ items: nil
306
311
  )
307
312
  end
308
313
 
@@ -310,12 +315,12 @@ module Spotted
310
315
  override.returns(
311
316
  {
312
317
  href: String,
313
- items: T::Array[Spotted::PlaylistTrackObject],
314
318
  limit: Integer,
315
319
  next_: T.nilable(String),
316
320
  offset: Integer,
317
321
  previous: T.nilable(String),
318
- total: Integer
322
+ total: Integer,
323
+ items: T::Array[Spotted::PlaylistTrackObject]
319
324
  }
320
325
  )
321
326
  end