spotted 0.1.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +21 -0
- data/README.md +1 -1
- data/lib/spotted/client.rb +4 -0
- data/lib/spotted/internal/transport/base_client.rb +7 -1
- data/lib/spotted/models/audiobook_base.rb +182 -0
- data/lib/spotted/models/audiobook_list_response.rb +2 -174
- data/lib/spotted/models/audiobook_retrieve_response.rb +2 -174
- data/lib/spotted/models/chapter_list_response.rb +3 -183
- data/lib/spotted/models/chapter_retrieve_response.rb +3 -183
- data/lib/spotted/models/episode_object.rb +3 -166
- data/lib/spotted/models/me/audiobook_list_response.rb +2 -174
- data/lib/spotted/models/me/show_list_response.rb +3 -166
- data/lib/spotted/models/search_retrieve_response.rb +6 -345
- data/lib/spotted/models/show_base.rb +165 -0
- data/lib/spotted/models/show_list_response.rb +3 -163
- data/lib/spotted/models/show_retrieve_response.rb +2 -157
- data/lib/spotted/models/unwrap_webhook_event.rb +8 -0
- data/lib/spotted/models/webhook_unwrap_params.rb +14 -0
- data/lib/spotted/models.rb +9 -0
- data/lib/spotted/resources/webhooks.rb +22 -0
- data/lib/spotted/version.rb +1 -1
- data/lib/spotted.rb +5 -0
- data/rbi/spotted/client.rbi +3 -0
- data/rbi/spotted/internal/transport/base_client.rbi +5 -0
- data/rbi/spotted/internal/type/base_model.rbi +8 -4
- data/rbi/spotted/models/audiobook_base.rbi +219 -0
- data/rbi/spotted/models/audiobook_list_response.rbi +4 -212
- data/rbi/spotted/models/audiobook_retrieve_response.rbi +4 -209
- data/rbi/spotted/models/chapter_list_response.rbi +4 -249
- data/rbi/spotted/models/chapter_retrieve_response.rbi +4 -245
- data/rbi/spotted/models/episode_object.rbi +4 -199
- data/rbi/spotted/models/me/audiobook_list_response.rbi +4 -212
- data/rbi/spotted/models/me/show_list_response.rbi +6 -227
- data/rbi/spotted/models/search_retrieve_response.rbi +6 -473
- data/rbi/spotted/models/show_base.rbi +194 -0
- data/rbi/spotted/models/show_list_response.rbi +5 -216
- data/rbi/spotted/models/show_retrieve_response.rbi +4 -182
- data/rbi/spotted/models/unwrap_webhook_event.rbi +7 -0
- data/rbi/spotted/models/webhook_unwrap_params.rbi +27 -0
- data/rbi/spotted/models.rbi +12 -0
- data/rbi/spotted/resources/webhooks.rbi +19 -0
- data/sig/spotted/client.rbs +2 -0
- data/sig/spotted/internal/transport/base_client.rbs +2 -0
- data/sig/spotted/models/audiobook_base.rbs +122 -0
- data/sig/spotted/models/audiobook_list_response.rbs +8 -111
- data/sig/spotted/models/audiobook_retrieve_response.rbs +8 -113
- data/sig/spotted/models/chapter_list_response.rbs +4 -123
- data/sig/spotted/models/chapter_retrieve_response.rbs +4 -123
- data/sig/spotted/models/episode_object.rbs +4 -111
- data/sig/spotted/models/me/audiobook_list_response.rbs +8 -111
- data/sig/spotted/models/me/show_list_response.rbs +5 -121
- data/sig/spotted/models/search_retrieve_response.rbs +8 -234
- data/sig/spotted/models/show_base.rbs +110 -0
- data/sig/spotted/models/show_list_response.rbs +4 -116
- data/sig/spotted/models/show_retrieve_response.rbs +8 -101
- data/sig/spotted/models/unwrap_webhook_event.rbs +5 -0
- data/sig/spotted/models/webhook_unwrap_params.rbs +15 -0
- data/sig/spotted/models.rbs +8 -0
- data/sig/spotted/resources/webhooks.rbs +9 -0
- metadata +17 -2
|
@@ -22,14 +22,10 @@ module Spotted
|
|
|
22
22
|
attr_accessor :audio_preview_url
|
|
23
23
|
|
|
24
24
|
# The audiobook for which the chapter belongs.
|
|
25
|
-
sig { returns(Spotted::
|
|
25
|
+
sig { returns(Spotted::AudiobookBase) }
|
|
26
26
|
attr_reader :audiobook
|
|
27
27
|
|
|
28
|
-
sig
|
|
29
|
-
params(
|
|
30
|
-
audiobook: Spotted::Models::ChapterRetrieveResponse::Audiobook::OrHash
|
|
31
|
-
).void
|
|
32
|
-
end
|
|
28
|
+
sig { params(audiobook: Spotted::AudiobookBase::OrHash).void }
|
|
33
29
|
attr_writer :audiobook
|
|
34
30
|
|
|
35
31
|
# The number of the chapter
|
|
@@ -135,8 +131,7 @@ module Spotted
|
|
|
135
131
|
params(
|
|
136
132
|
id: String,
|
|
137
133
|
audio_preview_url: T.nilable(String),
|
|
138
|
-
audiobook:
|
|
139
|
-
Spotted::Models::ChapterRetrieveResponse::Audiobook::OrHash,
|
|
134
|
+
audiobook: Spotted::AudiobookBase::OrHash,
|
|
140
135
|
chapter_number: Integer,
|
|
141
136
|
description: String,
|
|
142
137
|
duration_ms: Integer,
|
|
@@ -218,7 +213,7 @@ module Spotted
|
|
|
218
213
|
{
|
|
219
214
|
id: String,
|
|
220
215
|
audio_preview_url: T.nilable(String),
|
|
221
|
-
audiobook: Spotted::
|
|
216
|
+
audiobook: Spotted::AudiobookBase,
|
|
222
217
|
chapter_number: Integer,
|
|
223
218
|
description: String,
|
|
224
219
|
duration_ms: Integer,
|
|
@@ -244,242 +239,6 @@ module Spotted
|
|
|
244
239
|
def to_hash
|
|
245
240
|
end
|
|
246
241
|
|
|
247
|
-
class Audiobook < Spotted::Internal::Type::BaseModel
|
|
248
|
-
OrHash =
|
|
249
|
-
T.type_alias do
|
|
250
|
-
T.any(
|
|
251
|
-
Spotted::Models::ChapterRetrieveResponse::Audiobook,
|
|
252
|
-
Spotted::Internal::AnyHash
|
|
253
|
-
)
|
|
254
|
-
end
|
|
255
|
-
|
|
256
|
-
# The [Spotify ID](/documentation/web-api/concepts/spotify-uris-ids) for the
|
|
257
|
-
# audiobook.
|
|
258
|
-
sig { returns(String) }
|
|
259
|
-
attr_accessor :id
|
|
260
|
-
|
|
261
|
-
# The author(s) for the audiobook.
|
|
262
|
-
sig { returns(T::Array[Spotted::AuthorObject]) }
|
|
263
|
-
attr_accessor :authors
|
|
264
|
-
|
|
265
|
-
# A list of the countries in which the audiobook can be played, identified by
|
|
266
|
-
# their [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)
|
|
267
|
-
# code.
|
|
268
|
-
sig { returns(T::Array[String]) }
|
|
269
|
-
attr_accessor :available_markets
|
|
270
|
-
|
|
271
|
-
# The copyright statements of the audiobook.
|
|
272
|
-
sig { returns(T::Array[Spotted::CopyrightObject]) }
|
|
273
|
-
attr_accessor :copyrights
|
|
274
|
-
|
|
275
|
-
# A description of the audiobook. HTML tags are stripped away from this field, use
|
|
276
|
-
# `html_description` field in case HTML tags are needed.
|
|
277
|
-
sig { returns(String) }
|
|
278
|
-
attr_accessor :description
|
|
279
|
-
|
|
280
|
-
# Whether or not the audiobook has explicit content (true = yes it does; false =
|
|
281
|
-
# no it does not OR unknown).
|
|
282
|
-
sig { returns(T::Boolean) }
|
|
283
|
-
attr_accessor :explicit
|
|
284
|
-
|
|
285
|
-
# External URLs for this audiobook.
|
|
286
|
-
sig { returns(Spotted::ExternalURLObject) }
|
|
287
|
-
attr_reader :external_urls
|
|
288
|
-
|
|
289
|
-
sig { params(external_urls: Spotted::ExternalURLObject::OrHash).void }
|
|
290
|
-
attr_writer :external_urls
|
|
291
|
-
|
|
292
|
-
# A link to the Web API endpoint providing full details of the audiobook.
|
|
293
|
-
sig { returns(String) }
|
|
294
|
-
attr_accessor :href
|
|
295
|
-
|
|
296
|
-
# A description of the audiobook. This field may contain HTML tags.
|
|
297
|
-
sig { returns(String) }
|
|
298
|
-
attr_accessor :html_description
|
|
299
|
-
|
|
300
|
-
# The cover art for the audiobook in various sizes, widest first.
|
|
301
|
-
sig { returns(T::Array[Spotted::ImageObject]) }
|
|
302
|
-
attr_accessor :images
|
|
303
|
-
|
|
304
|
-
# A list of the languages used in the audiobook, identified by their
|
|
305
|
-
# [ISO 639](https://en.wikipedia.org/wiki/ISO_639) code.
|
|
306
|
-
sig { returns(T::Array[String]) }
|
|
307
|
-
attr_accessor :languages
|
|
308
|
-
|
|
309
|
-
# The media type of the audiobook.
|
|
310
|
-
sig { returns(String) }
|
|
311
|
-
attr_accessor :media_type
|
|
312
|
-
|
|
313
|
-
# The name of the audiobook.
|
|
314
|
-
sig { returns(String) }
|
|
315
|
-
attr_accessor :name
|
|
316
|
-
|
|
317
|
-
# The narrator(s) for the audiobook.
|
|
318
|
-
sig { returns(T::Array[Spotted::NarratorObject]) }
|
|
319
|
-
attr_accessor :narrators
|
|
320
|
-
|
|
321
|
-
# The publisher of the audiobook.
|
|
322
|
-
sig { returns(String) }
|
|
323
|
-
attr_accessor :publisher
|
|
324
|
-
|
|
325
|
-
# The number of chapters in this audiobook.
|
|
326
|
-
sig { returns(Integer) }
|
|
327
|
-
attr_accessor :total_chapters
|
|
328
|
-
|
|
329
|
-
# The object type.
|
|
330
|
-
sig do
|
|
331
|
-
returns(
|
|
332
|
-
Spotted::Models::ChapterRetrieveResponse::Audiobook::Type::TaggedSymbol
|
|
333
|
-
)
|
|
334
|
-
end
|
|
335
|
-
attr_accessor :type
|
|
336
|
-
|
|
337
|
-
# The [Spotify URI](/documentation/web-api/concepts/spotify-uris-ids) for the
|
|
338
|
-
# audiobook.
|
|
339
|
-
sig { returns(String) }
|
|
340
|
-
attr_accessor :uri
|
|
341
|
-
|
|
342
|
-
# The edition of the audiobook.
|
|
343
|
-
sig { returns(T.nilable(String)) }
|
|
344
|
-
attr_reader :edition
|
|
345
|
-
|
|
346
|
-
sig { params(edition: String).void }
|
|
347
|
-
attr_writer :edition
|
|
348
|
-
|
|
349
|
-
# The audiobook for which the chapter belongs.
|
|
350
|
-
sig do
|
|
351
|
-
params(
|
|
352
|
-
id: String,
|
|
353
|
-
authors: T::Array[Spotted::AuthorObject::OrHash],
|
|
354
|
-
available_markets: T::Array[String],
|
|
355
|
-
copyrights: T::Array[Spotted::CopyrightObject::OrHash],
|
|
356
|
-
description: String,
|
|
357
|
-
explicit: T::Boolean,
|
|
358
|
-
external_urls: Spotted::ExternalURLObject::OrHash,
|
|
359
|
-
href: String,
|
|
360
|
-
html_description: String,
|
|
361
|
-
images: T::Array[Spotted::ImageObject::OrHash],
|
|
362
|
-
languages: T::Array[String],
|
|
363
|
-
media_type: String,
|
|
364
|
-
name: String,
|
|
365
|
-
narrators: T::Array[Spotted::NarratorObject::OrHash],
|
|
366
|
-
publisher: String,
|
|
367
|
-
total_chapters: Integer,
|
|
368
|
-
type:
|
|
369
|
-
Spotted::Models::ChapterRetrieveResponse::Audiobook::Type::OrSymbol,
|
|
370
|
-
uri: String,
|
|
371
|
-
edition: String
|
|
372
|
-
).returns(T.attached_class)
|
|
373
|
-
end
|
|
374
|
-
def self.new(
|
|
375
|
-
# The [Spotify ID](/documentation/web-api/concepts/spotify-uris-ids) for the
|
|
376
|
-
# audiobook.
|
|
377
|
-
id:,
|
|
378
|
-
# The author(s) for the audiobook.
|
|
379
|
-
authors:,
|
|
380
|
-
# A list of the countries in which the audiobook can be played, identified by
|
|
381
|
-
# their [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)
|
|
382
|
-
# code.
|
|
383
|
-
available_markets:,
|
|
384
|
-
# The copyright statements of the audiobook.
|
|
385
|
-
copyrights:,
|
|
386
|
-
# A description of the audiobook. HTML tags are stripped away from this field, use
|
|
387
|
-
# `html_description` field in case HTML tags are needed.
|
|
388
|
-
description:,
|
|
389
|
-
# Whether or not the audiobook has explicit content (true = yes it does; false =
|
|
390
|
-
# no it does not OR unknown).
|
|
391
|
-
explicit:,
|
|
392
|
-
# External URLs for this audiobook.
|
|
393
|
-
external_urls:,
|
|
394
|
-
# A link to the Web API endpoint providing full details of the audiobook.
|
|
395
|
-
href:,
|
|
396
|
-
# A description of the audiobook. This field may contain HTML tags.
|
|
397
|
-
html_description:,
|
|
398
|
-
# The cover art for the audiobook in various sizes, widest first.
|
|
399
|
-
images:,
|
|
400
|
-
# A list of the languages used in the audiobook, identified by their
|
|
401
|
-
# [ISO 639](https://en.wikipedia.org/wiki/ISO_639) code.
|
|
402
|
-
languages:,
|
|
403
|
-
# The media type of the audiobook.
|
|
404
|
-
media_type:,
|
|
405
|
-
# The name of the audiobook.
|
|
406
|
-
name:,
|
|
407
|
-
# The narrator(s) for the audiobook.
|
|
408
|
-
narrators:,
|
|
409
|
-
# The publisher of the audiobook.
|
|
410
|
-
publisher:,
|
|
411
|
-
# The number of chapters in this audiobook.
|
|
412
|
-
total_chapters:,
|
|
413
|
-
# The object type.
|
|
414
|
-
type:,
|
|
415
|
-
# The [Spotify URI](/documentation/web-api/concepts/spotify-uris-ids) for the
|
|
416
|
-
# audiobook.
|
|
417
|
-
uri:,
|
|
418
|
-
# The edition of the audiobook.
|
|
419
|
-
edition: nil
|
|
420
|
-
)
|
|
421
|
-
end
|
|
422
|
-
|
|
423
|
-
sig do
|
|
424
|
-
override.returns(
|
|
425
|
-
{
|
|
426
|
-
id: String,
|
|
427
|
-
authors: T::Array[Spotted::AuthorObject],
|
|
428
|
-
available_markets: T::Array[String],
|
|
429
|
-
copyrights: T::Array[Spotted::CopyrightObject],
|
|
430
|
-
description: String,
|
|
431
|
-
explicit: T::Boolean,
|
|
432
|
-
external_urls: Spotted::ExternalURLObject,
|
|
433
|
-
href: String,
|
|
434
|
-
html_description: String,
|
|
435
|
-
images: T::Array[Spotted::ImageObject],
|
|
436
|
-
languages: T::Array[String],
|
|
437
|
-
media_type: String,
|
|
438
|
-
name: String,
|
|
439
|
-
narrators: T::Array[Spotted::NarratorObject],
|
|
440
|
-
publisher: String,
|
|
441
|
-
total_chapters: Integer,
|
|
442
|
-
type:
|
|
443
|
-
Spotted::Models::ChapterRetrieveResponse::Audiobook::Type::TaggedSymbol,
|
|
444
|
-
uri: String,
|
|
445
|
-
edition: String
|
|
446
|
-
}
|
|
447
|
-
)
|
|
448
|
-
end
|
|
449
|
-
def to_hash
|
|
450
|
-
end
|
|
451
|
-
|
|
452
|
-
# The object type.
|
|
453
|
-
module Type
|
|
454
|
-
extend Spotted::Internal::Type::Enum
|
|
455
|
-
|
|
456
|
-
TaggedSymbol =
|
|
457
|
-
T.type_alias do
|
|
458
|
-
T.all(
|
|
459
|
-
Symbol,
|
|
460
|
-
Spotted::Models::ChapterRetrieveResponse::Audiobook::Type
|
|
461
|
-
)
|
|
462
|
-
end
|
|
463
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
464
|
-
|
|
465
|
-
AUDIOBOOK =
|
|
466
|
-
T.let(
|
|
467
|
-
:audiobook,
|
|
468
|
-
Spotted::Models::ChapterRetrieveResponse::Audiobook::Type::TaggedSymbol
|
|
469
|
-
)
|
|
470
|
-
|
|
471
|
-
sig do
|
|
472
|
-
override.returns(
|
|
473
|
-
T::Array[
|
|
474
|
-
Spotted::Models::ChapterRetrieveResponse::Audiobook::Type::TaggedSymbol
|
|
475
|
-
]
|
|
476
|
-
)
|
|
477
|
-
end
|
|
478
|
-
def self.values
|
|
479
|
-
end
|
|
480
|
-
end
|
|
481
|
-
end
|
|
482
|
-
|
|
483
242
|
# The precision with which `release_date` value is known.
|
|
484
243
|
module ReleaseDatePrecision
|
|
485
244
|
extend Spotted::Internal::Type::Enum
|
|
@@ -80,10 +80,10 @@ module Spotted
|
|
|
80
80
|
attr_accessor :release_date_precision
|
|
81
81
|
|
|
82
82
|
# The show on which the episode belongs.
|
|
83
|
-
sig { returns(Spotted::
|
|
83
|
+
sig { returns(Spotted::ShowBase) }
|
|
84
84
|
attr_reader :show
|
|
85
85
|
|
|
86
|
-
sig { params(show: Spotted::
|
|
86
|
+
sig { params(show: Spotted::ShowBase::OrHash).void }
|
|
87
87
|
attr_writer :show
|
|
88
88
|
|
|
89
89
|
# The object type.
|
|
@@ -139,7 +139,7 @@ module Spotted
|
|
|
139
139
|
release_date: String,
|
|
140
140
|
release_date_precision:
|
|
141
141
|
Spotted::EpisodeObject::ReleaseDatePrecision::OrSymbol,
|
|
142
|
-
show: Spotted::
|
|
142
|
+
show: Spotted::ShowBase::OrHash,
|
|
143
143
|
type: Spotted::EpisodeObject::Type::OrSymbol,
|
|
144
144
|
uri: String,
|
|
145
145
|
language: String,
|
|
@@ -222,7 +222,7 @@ module Spotted
|
|
|
222
222
|
release_date: String,
|
|
223
223
|
release_date_precision:
|
|
224
224
|
Spotted::EpisodeObject::ReleaseDatePrecision::TaggedSymbol,
|
|
225
|
-
show: Spotted::
|
|
225
|
+
show: Spotted::ShowBase,
|
|
226
226
|
type: Spotted::EpisodeObject::Type::TaggedSymbol,
|
|
227
227
|
uri: String,
|
|
228
228
|
language: String,
|
|
@@ -269,201 +269,6 @@ module Spotted
|
|
|
269
269
|
end
|
|
270
270
|
end
|
|
271
271
|
|
|
272
|
-
class Show < Spotted::Internal::Type::BaseModel
|
|
273
|
-
OrHash =
|
|
274
|
-
T.type_alias do
|
|
275
|
-
T.any(Spotted::EpisodeObject::Show, Spotted::Internal::AnyHash)
|
|
276
|
-
end
|
|
277
|
-
|
|
278
|
-
# The [Spotify ID](/documentation/web-api/concepts/spotify-uris-ids) for the show.
|
|
279
|
-
sig { returns(String) }
|
|
280
|
-
attr_accessor :id
|
|
281
|
-
|
|
282
|
-
# A list of the countries in which the show can be played, identified by their
|
|
283
|
-
# [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) code.
|
|
284
|
-
sig { returns(T::Array[String]) }
|
|
285
|
-
attr_accessor :available_markets
|
|
286
|
-
|
|
287
|
-
# The copyright statements of the show.
|
|
288
|
-
sig { returns(T::Array[Spotted::CopyrightObject]) }
|
|
289
|
-
attr_accessor :copyrights
|
|
290
|
-
|
|
291
|
-
# A description of the show. HTML tags are stripped away from this field, use
|
|
292
|
-
# `html_description` field in case HTML tags are needed.
|
|
293
|
-
sig { returns(String) }
|
|
294
|
-
attr_accessor :description
|
|
295
|
-
|
|
296
|
-
# Whether or not the show has explicit content (true = yes it does; false = no it
|
|
297
|
-
# does not OR unknown).
|
|
298
|
-
sig { returns(T::Boolean) }
|
|
299
|
-
attr_accessor :explicit
|
|
300
|
-
|
|
301
|
-
# External URLs for this show.
|
|
302
|
-
sig { returns(Spotted::ExternalURLObject) }
|
|
303
|
-
attr_reader :external_urls
|
|
304
|
-
|
|
305
|
-
sig { params(external_urls: Spotted::ExternalURLObject::OrHash).void }
|
|
306
|
-
attr_writer :external_urls
|
|
307
|
-
|
|
308
|
-
# A link to the Web API endpoint providing full details of the show.
|
|
309
|
-
sig { returns(String) }
|
|
310
|
-
attr_accessor :href
|
|
311
|
-
|
|
312
|
-
# A description of the show. This field may contain HTML tags.
|
|
313
|
-
sig { returns(String) }
|
|
314
|
-
attr_accessor :html_description
|
|
315
|
-
|
|
316
|
-
# The cover art for the show in various sizes, widest first.
|
|
317
|
-
sig { returns(T::Array[Spotted::ImageObject]) }
|
|
318
|
-
attr_accessor :images
|
|
319
|
-
|
|
320
|
-
# True if all of the shows episodes are hosted outside of Spotify's CDN. This
|
|
321
|
-
# field might be `null` in some cases.
|
|
322
|
-
sig { returns(T::Boolean) }
|
|
323
|
-
attr_accessor :is_externally_hosted
|
|
324
|
-
|
|
325
|
-
# A list of the languages used in the show, identified by their
|
|
326
|
-
# [ISO 639](https://en.wikipedia.org/wiki/ISO_639) code.
|
|
327
|
-
sig { returns(T::Array[String]) }
|
|
328
|
-
attr_accessor :languages
|
|
329
|
-
|
|
330
|
-
# The media type of the show.
|
|
331
|
-
sig { returns(String) }
|
|
332
|
-
attr_accessor :media_type
|
|
333
|
-
|
|
334
|
-
# The name of the episode.
|
|
335
|
-
sig { returns(String) }
|
|
336
|
-
attr_accessor :name
|
|
337
|
-
|
|
338
|
-
# The publisher of the show.
|
|
339
|
-
sig { returns(String) }
|
|
340
|
-
attr_accessor :publisher
|
|
341
|
-
|
|
342
|
-
# The total number of episodes in the show.
|
|
343
|
-
sig { returns(Integer) }
|
|
344
|
-
attr_accessor :total_episodes
|
|
345
|
-
|
|
346
|
-
# The object type.
|
|
347
|
-
sig { returns(Spotted::EpisodeObject::Show::Type::TaggedSymbol) }
|
|
348
|
-
attr_accessor :type
|
|
349
|
-
|
|
350
|
-
# The [Spotify URI](/documentation/web-api/concepts/spotify-uris-ids) for the
|
|
351
|
-
# show.
|
|
352
|
-
sig { returns(String) }
|
|
353
|
-
attr_accessor :uri
|
|
354
|
-
|
|
355
|
-
# The show on which the episode belongs.
|
|
356
|
-
sig do
|
|
357
|
-
params(
|
|
358
|
-
id: String,
|
|
359
|
-
available_markets: T::Array[String],
|
|
360
|
-
copyrights: T::Array[Spotted::CopyrightObject::OrHash],
|
|
361
|
-
description: String,
|
|
362
|
-
explicit: T::Boolean,
|
|
363
|
-
external_urls: Spotted::ExternalURLObject::OrHash,
|
|
364
|
-
href: String,
|
|
365
|
-
html_description: String,
|
|
366
|
-
images: T::Array[Spotted::ImageObject::OrHash],
|
|
367
|
-
is_externally_hosted: T::Boolean,
|
|
368
|
-
languages: T::Array[String],
|
|
369
|
-
media_type: String,
|
|
370
|
-
name: String,
|
|
371
|
-
publisher: String,
|
|
372
|
-
total_episodes: Integer,
|
|
373
|
-
type: Spotted::EpisodeObject::Show::Type::OrSymbol,
|
|
374
|
-
uri: String
|
|
375
|
-
).returns(T.attached_class)
|
|
376
|
-
end
|
|
377
|
-
def self.new(
|
|
378
|
-
# The [Spotify ID](/documentation/web-api/concepts/spotify-uris-ids) for the show.
|
|
379
|
-
id:,
|
|
380
|
-
# A list of the countries in which the show can be played, identified by their
|
|
381
|
-
# [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) code.
|
|
382
|
-
available_markets:,
|
|
383
|
-
# The copyright statements of the show.
|
|
384
|
-
copyrights:,
|
|
385
|
-
# A description of the show. HTML tags are stripped away from this field, use
|
|
386
|
-
# `html_description` field in case HTML tags are needed.
|
|
387
|
-
description:,
|
|
388
|
-
# Whether or not the show has explicit content (true = yes it does; false = no it
|
|
389
|
-
# does not OR unknown).
|
|
390
|
-
explicit:,
|
|
391
|
-
# External URLs for this show.
|
|
392
|
-
external_urls:,
|
|
393
|
-
# A link to the Web API endpoint providing full details of the show.
|
|
394
|
-
href:,
|
|
395
|
-
# A description of the show. This field may contain HTML tags.
|
|
396
|
-
html_description:,
|
|
397
|
-
# The cover art for the show in various sizes, widest first.
|
|
398
|
-
images:,
|
|
399
|
-
# True if all of the shows episodes are hosted outside of Spotify's CDN. This
|
|
400
|
-
# field might be `null` in some cases.
|
|
401
|
-
is_externally_hosted:,
|
|
402
|
-
# A list of the languages used in the show, identified by their
|
|
403
|
-
# [ISO 639](https://en.wikipedia.org/wiki/ISO_639) code.
|
|
404
|
-
languages:,
|
|
405
|
-
# The media type of the show.
|
|
406
|
-
media_type:,
|
|
407
|
-
# The name of the episode.
|
|
408
|
-
name:,
|
|
409
|
-
# The publisher of the show.
|
|
410
|
-
publisher:,
|
|
411
|
-
# The total number of episodes in the show.
|
|
412
|
-
total_episodes:,
|
|
413
|
-
# The object type.
|
|
414
|
-
type:,
|
|
415
|
-
# The [Spotify URI](/documentation/web-api/concepts/spotify-uris-ids) for the
|
|
416
|
-
# show.
|
|
417
|
-
uri:
|
|
418
|
-
)
|
|
419
|
-
end
|
|
420
|
-
|
|
421
|
-
sig do
|
|
422
|
-
override.returns(
|
|
423
|
-
{
|
|
424
|
-
id: String,
|
|
425
|
-
available_markets: T::Array[String],
|
|
426
|
-
copyrights: T::Array[Spotted::CopyrightObject],
|
|
427
|
-
description: String,
|
|
428
|
-
explicit: T::Boolean,
|
|
429
|
-
external_urls: Spotted::ExternalURLObject,
|
|
430
|
-
href: String,
|
|
431
|
-
html_description: String,
|
|
432
|
-
images: T::Array[Spotted::ImageObject],
|
|
433
|
-
is_externally_hosted: T::Boolean,
|
|
434
|
-
languages: T::Array[String],
|
|
435
|
-
media_type: String,
|
|
436
|
-
name: String,
|
|
437
|
-
publisher: String,
|
|
438
|
-
total_episodes: Integer,
|
|
439
|
-
type: Spotted::EpisodeObject::Show::Type::TaggedSymbol,
|
|
440
|
-
uri: String
|
|
441
|
-
}
|
|
442
|
-
)
|
|
443
|
-
end
|
|
444
|
-
def to_hash
|
|
445
|
-
end
|
|
446
|
-
|
|
447
|
-
# The object type.
|
|
448
|
-
module Type
|
|
449
|
-
extend Spotted::Internal::Type::Enum
|
|
450
|
-
|
|
451
|
-
TaggedSymbol =
|
|
452
|
-
T.type_alias { T.all(Symbol, Spotted::EpisodeObject::Show::Type) }
|
|
453
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
454
|
-
|
|
455
|
-
SHOW = T.let(:show, Spotted::EpisodeObject::Show::Type::TaggedSymbol)
|
|
456
|
-
|
|
457
|
-
sig do
|
|
458
|
-
override.returns(
|
|
459
|
-
T::Array[Spotted::EpisodeObject::Show::Type::TaggedSymbol]
|
|
460
|
-
)
|
|
461
|
-
end
|
|
462
|
-
def self.values
|
|
463
|
-
end
|
|
464
|
-
end
|
|
465
|
-
end
|
|
466
|
-
|
|
467
272
|
# The object type.
|
|
468
273
|
module Type
|
|
469
274
|
extend Spotted::Internal::Type::Enum
|