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.
Files changed (61) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +21 -0
  3. data/README.md +1 -1
  4. data/lib/spotted/client.rb +4 -0
  5. data/lib/spotted/internal/transport/base_client.rb +7 -1
  6. data/lib/spotted/models/audiobook_base.rb +182 -0
  7. data/lib/spotted/models/audiobook_list_response.rb +2 -174
  8. data/lib/spotted/models/audiobook_retrieve_response.rb +2 -174
  9. data/lib/spotted/models/chapter_list_response.rb +3 -183
  10. data/lib/spotted/models/chapter_retrieve_response.rb +3 -183
  11. data/lib/spotted/models/episode_object.rb +3 -166
  12. data/lib/spotted/models/me/audiobook_list_response.rb +2 -174
  13. data/lib/spotted/models/me/show_list_response.rb +3 -166
  14. data/lib/spotted/models/search_retrieve_response.rb +6 -345
  15. data/lib/spotted/models/show_base.rb +165 -0
  16. data/lib/spotted/models/show_list_response.rb +3 -163
  17. data/lib/spotted/models/show_retrieve_response.rb +2 -157
  18. data/lib/spotted/models/unwrap_webhook_event.rb +8 -0
  19. data/lib/spotted/models/webhook_unwrap_params.rb +14 -0
  20. data/lib/spotted/models.rb +9 -0
  21. data/lib/spotted/resources/webhooks.rb +22 -0
  22. data/lib/spotted/version.rb +1 -1
  23. data/lib/spotted.rb +5 -0
  24. data/rbi/spotted/client.rbi +3 -0
  25. data/rbi/spotted/internal/transport/base_client.rbi +5 -0
  26. data/rbi/spotted/internal/type/base_model.rbi +8 -4
  27. data/rbi/spotted/models/audiobook_base.rbi +219 -0
  28. data/rbi/spotted/models/audiobook_list_response.rbi +4 -212
  29. data/rbi/spotted/models/audiobook_retrieve_response.rbi +4 -209
  30. data/rbi/spotted/models/chapter_list_response.rbi +4 -249
  31. data/rbi/spotted/models/chapter_retrieve_response.rbi +4 -245
  32. data/rbi/spotted/models/episode_object.rbi +4 -199
  33. data/rbi/spotted/models/me/audiobook_list_response.rbi +4 -212
  34. data/rbi/spotted/models/me/show_list_response.rbi +6 -227
  35. data/rbi/spotted/models/search_retrieve_response.rbi +6 -473
  36. data/rbi/spotted/models/show_base.rbi +194 -0
  37. data/rbi/spotted/models/show_list_response.rbi +5 -216
  38. data/rbi/spotted/models/show_retrieve_response.rbi +4 -182
  39. data/rbi/spotted/models/unwrap_webhook_event.rbi +7 -0
  40. data/rbi/spotted/models/webhook_unwrap_params.rbi +27 -0
  41. data/rbi/spotted/models.rbi +12 -0
  42. data/rbi/spotted/resources/webhooks.rbi +19 -0
  43. data/sig/spotted/client.rbs +2 -0
  44. data/sig/spotted/internal/transport/base_client.rbs +2 -0
  45. data/sig/spotted/models/audiobook_base.rbs +122 -0
  46. data/sig/spotted/models/audiobook_list_response.rbs +8 -111
  47. data/sig/spotted/models/audiobook_retrieve_response.rbs +8 -113
  48. data/sig/spotted/models/chapter_list_response.rbs +4 -123
  49. data/sig/spotted/models/chapter_retrieve_response.rbs +4 -123
  50. data/sig/spotted/models/episode_object.rbs +4 -111
  51. data/sig/spotted/models/me/audiobook_list_response.rbs +8 -111
  52. data/sig/spotted/models/me/show_list_response.rbs +5 -121
  53. data/sig/spotted/models/search_retrieve_response.rbs +8 -234
  54. data/sig/spotted/models/show_base.rbs +110 -0
  55. data/sig/spotted/models/show_list_response.rbs +4 -116
  56. data/sig/spotted/models/show_retrieve_response.rbs +8 -101
  57. data/sig/spotted/models/unwrap_webhook_event.rbs +5 -0
  58. data/sig/spotted/models/webhook_unwrap_params.rbs +15 -0
  59. data/sig/spotted/models.rbs +8 -0
  60. data/sig/spotted/resources/webhooks.rbs +9 -0
  61. metadata +17 -2
@@ -24,6 +24,8 @@ module Spotted
24
24
 
25
25
  AudioAnalysisRetrieveParams = Spotted::Models::AudioAnalysisRetrieveParams
26
26
 
27
+ AudiobookBase = Spotted::Models::AudiobookBase
28
+
27
29
  AudiobookListChaptersParams = Spotted::Models::AudiobookListChaptersParams
28
30
 
29
31
  AudiobookListParams = Spotted::Models::AudiobookListParams
@@ -100,6 +102,8 @@ module Spotted
100
102
 
101
103
  SearchRetrieveParams = Spotted::Models::SearchRetrieveParams
102
104
 
105
+ ShowBase = Spotted::Models::ShowBase
106
+
103
107
  ShowListEpisodesParams = Spotted::Models::ShowListEpisodesParams
104
108
 
105
109
  ShowListParams = Spotted::Models::ShowListParams
@@ -126,7 +130,15 @@ module Spotted
126
130
 
127
131
  TrackRetrieveParams = Spotted::Models::TrackRetrieveParams
128
132
 
133
+ UnwrapWebhookEvent =
134
+ T.let(
135
+ Spotted::Models::UnwrapWebhookEvent,
136
+ Spotted::Internal::Type::Converter
137
+ )
138
+
129
139
  UserRetrieveProfileParams = Spotted::Models::UserRetrieveProfileParams
130
140
 
131
141
  Users = Spotted::Models::Users
142
+
143
+ WebhookUnwrapParams = Spotted::Models::WebhookUnwrapParams
132
144
  end
@@ -0,0 +1,19 @@
1
+ # typed: strong
2
+
3
+ module Spotted
4
+ module Resources
5
+ class Webhooks
6
+ sig { params(payload: String).returns(T.anything) }
7
+ def unwrap(
8
+ # The raw webhook payload as a string
9
+ payload
10
+ )
11
+ end
12
+
13
+ # @api private
14
+ sig { params(client: Spotted::Client).returns(T.attached_class) }
15
+ def self.new(client:)
16
+ end
17
+ end
18
+ end
19
+ end
@@ -42,6 +42,8 @@ module Spotted
42
42
 
43
43
  attr_reader recommendations: Spotted::Resources::Recommendations
44
44
 
45
+ attr_reader webhooks: Spotted::Resources::Webhooks
46
+
45
47
  attr_reader markets: Spotted::Resources::Markets
46
48
 
47
49
  # @api private
@@ -87,6 +87,8 @@ module Spotted
87
87
 
88
88
  private def auth_headers: -> ::Hash[String, String]
89
89
 
90
+ private def user_agent: -> String
91
+
90
92
  private def generate_idempotency_key: -> String
91
93
 
92
94
  private def build_request: (
@@ -0,0 +1,122 @@
1
+ module Spotted
2
+ module Models
3
+ type audiobook_base =
4
+ {
5
+ id: String,
6
+ authors: ::Array[Spotted::AuthorObject],
7
+ available_markets: ::Array[String],
8
+ copyrights: ::Array[Spotted::CopyrightObject],
9
+ description: String,
10
+ explicit: bool,
11
+ external_urls: Spotted::ExternalURLObject,
12
+ href: String,
13
+ html_description: String,
14
+ images: ::Array[Spotted::ImageObject],
15
+ languages: ::Array[String],
16
+ media_type: String,
17
+ name: String,
18
+ narrators: ::Array[Spotted::NarratorObject],
19
+ publisher: String,
20
+ total_chapters: Integer,
21
+ type: Spotted::Models::AudiobookBase::type_,
22
+ uri: String,
23
+ edition: String
24
+ }
25
+
26
+ class AudiobookBase < Spotted::Internal::Type::BaseModel
27
+ attr_accessor id: String
28
+
29
+ attr_accessor authors: ::Array[Spotted::AuthorObject]
30
+
31
+ attr_accessor available_markets: ::Array[String]
32
+
33
+ attr_accessor copyrights: ::Array[Spotted::CopyrightObject]
34
+
35
+ attr_accessor description: String
36
+
37
+ attr_accessor explicit: bool
38
+
39
+ attr_accessor external_urls: Spotted::ExternalURLObject
40
+
41
+ attr_accessor href: String
42
+
43
+ attr_accessor html_description: String
44
+
45
+ attr_accessor images: ::Array[Spotted::ImageObject]
46
+
47
+ attr_accessor languages: ::Array[String]
48
+
49
+ attr_accessor media_type: String
50
+
51
+ attr_accessor name: String
52
+
53
+ attr_accessor narrators: ::Array[Spotted::NarratorObject]
54
+
55
+ attr_accessor publisher: String
56
+
57
+ attr_accessor total_chapters: Integer
58
+
59
+ attr_accessor type: Spotted::Models::AudiobookBase::type_
60
+
61
+ attr_accessor uri: String
62
+
63
+ attr_reader edition: String?
64
+
65
+ def edition=: (String) -> String
66
+
67
+ def initialize: (
68
+ id: String,
69
+ authors: ::Array[Spotted::AuthorObject],
70
+ available_markets: ::Array[String],
71
+ copyrights: ::Array[Spotted::CopyrightObject],
72
+ description: String,
73
+ explicit: bool,
74
+ external_urls: Spotted::ExternalURLObject,
75
+ href: String,
76
+ html_description: String,
77
+ images: ::Array[Spotted::ImageObject],
78
+ languages: ::Array[String],
79
+ media_type: String,
80
+ name: String,
81
+ narrators: ::Array[Spotted::NarratorObject],
82
+ publisher: String,
83
+ total_chapters: Integer,
84
+ type: Spotted::Models::AudiobookBase::type_,
85
+ uri: String,
86
+ ?edition: String
87
+ ) -> void
88
+
89
+ def to_hash: -> {
90
+ id: String,
91
+ authors: ::Array[Spotted::AuthorObject],
92
+ available_markets: ::Array[String],
93
+ copyrights: ::Array[Spotted::CopyrightObject],
94
+ description: String,
95
+ explicit: bool,
96
+ external_urls: Spotted::ExternalURLObject,
97
+ href: String,
98
+ html_description: String,
99
+ images: ::Array[Spotted::ImageObject],
100
+ languages: ::Array[String],
101
+ media_type: String,
102
+ name: String,
103
+ narrators: ::Array[Spotted::NarratorObject],
104
+ publisher: String,
105
+ total_chapters: Integer,
106
+ type: Spotted::Models::AudiobookBase::type_,
107
+ uri: String,
108
+ edition: String
109
+ }
110
+
111
+ type type_ = :audiobook
112
+
113
+ module Type
114
+ extend Spotted::Internal::Type::Enum
115
+
116
+ AUDIOBOOK: :audiobook
117
+
118
+ def self?.values: -> ::Array[Spotted::Models::AudiobookBase::type_]
119
+ end
120
+ end
121
+ end
122
+ end
@@ -16,115 +16,22 @@ module Spotted
16
16
 
17
17
  type audiobook =
18
18
  {
19
- id: String,
20
- authors: ::Array[Spotted::AuthorObject],
21
- available_markets: ::Array[String],
22
- chapters: Spotted::Models::AudiobookListResponse::Audiobook::Chapters,
23
- copyrights: ::Array[Spotted::CopyrightObject],
24
- description: String,
25
- explicit: bool,
26
- external_urls: Spotted::ExternalURLObject,
27
- href: String,
28
- html_description: String,
29
- images: ::Array[Spotted::ImageObject],
30
- languages: ::Array[String],
31
- media_type: String,
32
- name: String,
33
- narrators: ::Array[Spotted::NarratorObject],
34
- publisher: String,
35
- total_chapters: Integer,
36
- type: Spotted::Models::AudiobookListResponse::Audiobook::type_,
37
- uri: String,
38
- edition: String
19
+ chapters: Spotted::Models::AudiobookListResponse::Audiobook::Chapters
39
20
  }
40
21
 
41
- class Audiobook < Spotted::Internal::Type::BaseModel
42
- attr_accessor id: String
22
+ class Audiobook < Spotted::Models::AudiobookBase
23
+ def chapters: -> Spotted::Models::AudiobookListResponse::Audiobook::Chapters
43
24
 
44
- attr_accessor authors: ::Array[Spotted::AuthorObject]
45
-
46
- attr_accessor available_markets: ::Array[String]
47
-
48
- attr_accessor chapters: Spotted::Models::AudiobookListResponse::Audiobook::Chapters
49
-
50
- attr_accessor copyrights: ::Array[Spotted::CopyrightObject]
51
-
52
- attr_accessor description: String
53
-
54
- attr_accessor explicit: bool
55
-
56
- attr_accessor external_urls: Spotted::ExternalURLObject
57
-
58
- attr_accessor href: String
59
-
60
- attr_accessor html_description: String
61
-
62
- attr_accessor images: ::Array[Spotted::ImageObject]
63
-
64
- attr_accessor languages: ::Array[String]
65
-
66
- attr_accessor media_type: String
67
-
68
- attr_accessor name: String
69
-
70
- attr_accessor narrators: ::Array[Spotted::NarratorObject]
71
-
72
- attr_accessor publisher: String
73
-
74
- attr_accessor total_chapters: Integer
75
-
76
- attr_accessor type: Spotted::Models::AudiobookListResponse::Audiobook::type_
77
-
78
- attr_accessor uri: String
79
-
80
- attr_reader edition: String?
81
-
82
- def edition=: (String) -> String
25
+ def chapters=: (
26
+ Spotted::Models::AudiobookListResponse::Audiobook::Chapters _
27
+ ) -> Spotted::Models::AudiobookListResponse::Audiobook::Chapters
83
28
 
84
29
  def initialize: (
85
- id: String,
86
- authors: ::Array[Spotted::AuthorObject],
87
- available_markets: ::Array[String],
88
- chapters: Spotted::Models::AudiobookListResponse::Audiobook::Chapters,
89
- copyrights: ::Array[Spotted::CopyrightObject],
90
- description: String,
91
- explicit: bool,
92
- external_urls: Spotted::ExternalURLObject,
93
- href: String,
94
- html_description: String,
95
- images: ::Array[Spotted::ImageObject],
96
- languages: ::Array[String],
97
- media_type: String,
98
- name: String,
99
- narrators: ::Array[Spotted::NarratorObject],
100
- publisher: String,
101
- total_chapters: Integer,
102
- type: Spotted::Models::AudiobookListResponse::Audiobook::type_,
103
- uri: String,
104
- ?edition: String
30
+ chapters: Spotted::Models::AudiobookListResponse::Audiobook::Chapters
105
31
  ) -> void
106
32
 
107
33
  def to_hash: -> {
108
- id: String,
109
- authors: ::Array[Spotted::AuthorObject],
110
- available_markets: ::Array[String],
111
- chapters: Spotted::Models::AudiobookListResponse::Audiobook::Chapters,
112
- copyrights: ::Array[Spotted::CopyrightObject],
113
- description: String,
114
- explicit: bool,
115
- external_urls: Spotted::ExternalURLObject,
116
- href: String,
117
- html_description: String,
118
- images: ::Array[Spotted::ImageObject],
119
- languages: ::Array[String],
120
- media_type: String,
121
- name: String,
122
- narrators: ::Array[Spotted::NarratorObject],
123
- publisher: String,
124
- total_chapters: Integer,
125
- type: Spotted::Models::AudiobookListResponse::Audiobook::type_,
126
- uri: String,
127
- edition: String
34
+ chapters: Spotted::Models::AudiobookListResponse::Audiobook::Chapters
128
35
  }
129
36
 
130
37
  type chapters =
@@ -173,16 +80,6 @@ module Spotted
173
80
  total: Integer
174
81
  }
175
82
  end
176
-
177
- type type_ = :audiobook
178
-
179
- module Type
180
- extend Spotted::Internal::Type::Enum
181
-
182
- AUDIOBOOK: :audiobook
183
-
184
- def self?.values: -> ::Array[Spotted::Models::AudiobookListResponse::Audiobook::type_]
185
- end
186
83
  end
187
84
  end
188
85
  end
@@ -1,116 +1,21 @@
1
1
  module Spotted
2
2
  module Models
3
3
  type audiobook_retrieve_response =
4
- {
5
- id: String,
6
- authors: ::Array[Spotted::AuthorObject],
7
- available_markets: ::Array[String],
8
- chapters: Spotted::Models::AudiobookRetrieveResponse::Chapters,
9
- copyrights: ::Array[Spotted::CopyrightObject],
10
- description: String,
11
- explicit: bool,
12
- external_urls: Spotted::ExternalURLObject,
13
- href: String,
14
- html_description: String,
15
- images: ::Array[Spotted::ImageObject],
16
- languages: ::Array[String],
17
- media_type: String,
18
- name: String,
19
- narrators: ::Array[Spotted::NarratorObject],
20
- publisher: String,
21
- total_chapters: Integer,
22
- type: Spotted::Models::AudiobookRetrieveResponse::type_,
23
- uri: String,
24
- edition: String
25
- }
26
-
27
- class AudiobookRetrieveResponse < Spotted::Internal::Type::BaseModel
28
- attr_accessor id: String
29
-
30
- attr_accessor authors: ::Array[Spotted::AuthorObject]
31
-
32
- attr_accessor available_markets: ::Array[String]
33
-
34
- attr_accessor chapters: Spotted::Models::AudiobookRetrieveResponse::Chapters
35
-
36
- attr_accessor copyrights: ::Array[Spotted::CopyrightObject]
37
-
38
- attr_accessor description: String
39
-
40
- attr_accessor explicit: bool
41
-
42
- attr_accessor external_urls: Spotted::ExternalURLObject
43
-
44
- attr_accessor href: String
45
-
46
- attr_accessor html_description: String
47
-
48
- attr_accessor images: ::Array[Spotted::ImageObject]
49
-
50
- attr_accessor languages: ::Array[String]
4
+ { chapters: Spotted::Models::AudiobookRetrieveResponse::Chapters }
51
5
 
52
- attr_accessor media_type: String
6
+ class AudiobookRetrieveResponse < Spotted::Models::AudiobookBase
7
+ def chapters: -> Spotted::Models::AudiobookRetrieveResponse::Chapters
53
8
 
54
- attr_accessor name: String
55
-
56
- attr_accessor narrators: ::Array[Spotted::NarratorObject]
57
-
58
- attr_accessor publisher: String
59
-
60
- attr_accessor total_chapters: Integer
61
-
62
- attr_accessor type: Spotted::Models::AudiobookRetrieveResponse::type_
63
-
64
- attr_accessor uri: String
65
-
66
- attr_reader edition: String?
67
-
68
- def edition=: (String) -> String
9
+ def chapters=: (
10
+ Spotted::Models::AudiobookRetrieveResponse::Chapters _
11
+ ) -> Spotted::Models::AudiobookRetrieveResponse::Chapters
69
12
 
70
13
  def initialize: (
71
- id: String,
72
- authors: ::Array[Spotted::AuthorObject],
73
- available_markets: ::Array[String],
74
- chapters: Spotted::Models::AudiobookRetrieveResponse::Chapters,
75
- copyrights: ::Array[Spotted::CopyrightObject],
76
- description: String,
77
- explicit: bool,
78
- external_urls: Spotted::ExternalURLObject,
79
- href: String,
80
- html_description: String,
81
- images: ::Array[Spotted::ImageObject],
82
- languages: ::Array[String],
83
- media_type: String,
84
- name: String,
85
- narrators: ::Array[Spotted::NarratorObject],
86
- publisher: String,
87
- total_chapters: Integer,
88
- type: Spotted::Models::AudiobookRetrieveResponse::type_,
89
- uri: String,
90
- ?edition: String
14
+ chapters: Spotted::Models::AudiobookRetrieveResponse::Chapters
91
15
  ) -> void
92
16
 
93
17
  def to_hash: -> {
94
- id: String,
95
- authors: ::Array[Spotted::AuthorObject],
96
- available_markets: ::Array[String],
97
- chapters: Spotted::Models::AudiobookRetrieveResponse::Chapters,
98
- copyrights: ::Array[Spotted::CopyrightObject],
99
- description: String,
100
- explicit: bool,
101
- external_urls: Spotted::ExternalURLObject,
102
- href: String,
103
- html_description: String,
104
- images: ::Array[Spotted::ImageObject],
105
- languages: ::Array[String],
106
- media_type: String,
107
- name: String,
108
- narrators: ::Array[Spotted::NarratorObject],
109
- publisher: String,
110
- total_chapters: Integer,
111
- type: Spotted::Models::AudiobookRetrieveResponse::type_,
112
- uri: String,
113
- edition: String
18
+ chapters: Spotted::Models::AudiobookRetrieveResponse::Chapters
114
19
  }
115
20
 
116
21
  type chapters =
@@ -159,16 +64,6 @@ module Spotted
159
64
  total: Integer
160
65
  }
161
66
  end
162
-
163
- type type_ = :audiobook
164
-
165
- module Type
166
- extend Spotted::Internal::Type::Enum
167
-
168
- AUDIOBOOK: :audiobook
169
-
170
- def self?.values: -> ::Array[Spotted::Models::AudiobookRetrieveResponse::type_]
171
- end
172
67
  end
173
68
  end
174
69
  end
@@ -18,7 +18,7 @@ module Spotted
18
18
  {
19
19
  id: String,
20
20
  audio_preview_url: String?,
21
- audiobook: Spotted::Models::ChapterListResponse::Chapter::Audiobook,
21
+ audiobook: Spotted::AudiobookBase,
22
22
  chapter_number: Integer,
23
23
  description: String,
24
24
  duration_ms: Integer,
@@ -44,7 +44,7 @@ module Spotted
44
44
 
45
45
  attr_accessor audio_preview_url: String?
46
46
 
47
- attr_accessor audiobook: Spotted::Models::ChapterListResponse::Chapter::Audiobook
47
+ attr_accessor audiobook: Spotted::AudiobookBase
48
48
 
49
49
  attr_accessor chapter_number: Integer
50
50
 
@@ -95,7 +95,7 @@ module Spotted
95
95
  def initialize: (
96
96
  id: String,
97
97
  audio_preview_url: String?,
98
- audiobook: Spotted::Models::ChapterListResponse::Chapter::Audiobook,
98
+ audiobook: Spotted::AudiobookBase,
99
99
  chapter_number: Integer,
100
100
  description: String,
101
101
  duration_ms: Integer,
@@ -119,7 +119,7 @@ module Spotted
119
119
  def to_hash: -> {
120
120
  id: String,
121
121
  audio_preview_url: String?,
122
- audiobook: Spotted::Models::ChapterListResponse::Chapter::Audiobook,
122
+ audiobook: Spotted::AudiobookBase,
123
123
  chapter_number: Integer,
124
124
  description: String,
125
125
  duration_ms: Integer,
@@ -140,125 +140,6 @@ module Spotted
140
140
  resume_point: Spotted::ResumePointObject
141
141
  }
142
142
 
143
- type audiobook =
144
- {
145
- id: String,
146
- authors: ::Array[Spotted::AuthorObject],
147
- available_markets: ::Array[String],
148
- copyrights: ::Array[Spotted::CopyrightObject],
149
- description: String,
150
- explicit: bool,
151
- external_urls: Spotted::ExternalURLObject,
152
- href: String,
153
- html_description: String,
154
- images: ::Array[Spotted::ImageObject],
155
- languages: ::Array[String],
156
- media_type: String,
157
- name: String,
158
- narrators: ::Array[Spotted::NarratorObject],
159
- publisher: String,
160
- total_chapters: Integer,
161
- type: Spotted::Models::ChapterListResponse::Chapter::Audiobook::type_,
162
- uri: String,
163
- edition: String
164
- }
165
-
166
- class Audiobook < Spotted::Internal::Type::BaseModel
167
- attr_accessor id: String
168
-
169
- attr_accessor authors: ::Array[Spotted::AuthorObject]
170
-
171
- attr_accessor available_markets: ::Array[String]
172
-
173
- attr_accessor copyrights: ::Array[Spotted::CopyrightObject]
174
-
175
- attr_accessor description: String
176
-
177
- attr_accessor explicit: bool
178
-
179
- attr_accessor external_urls: Spotted::ExternalURLObject
180
-
181
- attr_accessor href: String
182
-
183
- attr_accessor html_description: String
184
-
185
- attr_accessor images: ::Array[Spotted::ImageObject]
186
-
187
- attr_accessor languages: ::Array[String]
188
-
189
- attr_accessor media_type: String
190
-
191
- attr_accessor name: String
192
-
193
- attr_accessor narrators: ::Array[Spotted::NarratorObject]
194
-
195
- attr_accessor publisher: String
196
-
197
- attr_accessor total_chapters: Integer
198
-
199
- attr_accessor type: Spotted::Models::ChapterListResponse::Chapter::Audiobook::type_
200
-
201
- attr_accessor uri: String
202
-
203
- attr_reader edition: String?
204
-
205
- def edition=: (String) -> String
206
-
207
- def initialize: (
208
- id: String,
209
- authors: ::Array[Spotted::AuthorObject],
210
- available_markets: ::Array[String],
211
- copyrights: ::Array[Spotted::CopyrightObject],
212
- description: String,
213
- explicit: bool,
214
- external_urls: Spotted::ExternalURLObject,
215
- href: String,
216
- html_description: String,
217
- images: ::Array[Spotted::ImageObject],
218
- languages: ::Array[String],
219
- media_type: String,
220
- name: String,
221
- narrators: ::Array[Spotted::NarratorObject],
222
- publisher: String,
223
- total_chapters: Integer,
224
- type: Spotted::Models::ChapterListResponse::Chapter::Audiobook::type_,
225
- uri: String,
226
- ?edition: String
227
- ) -> void
228
-
229
- def to_hash: -> {
230
- id: String,
231
- authors: ::Array[Spotted::AuthorObject],
232
- available_markets: ::Array[String],
233
- copyrights: ::Array[Spotted::CopyrightObject],
234
- description: String,
235
- explicit: bool,
236
- external_urls: Spotted::ExternalURLObject,
237
- href: String,
238
- html_description: String,
239
- images: ::Array[Spotted::ImageObject],
240
- languages: ::Array[String],
241
- media_type: String,
242
- name: String,
243
- narrators: ::Array[Spotted::NarratorObject],
244
- publisher: String,
245
- total_chapters: Integer,
246
- type: Spotted::Models::ChapterListResponse::Chapter::Audiobook::type_,
247
- uri: String,
248
- edition: String
249
- }
250
-
251
- type type_ = :audiobook
252
-
253
- module Type
254
- extend Spotted::Internal::Type::Enum
255
-
256
- AUDIOBOOK: :audiobook
257
-
258
- def self?.values: -> ::Array[Spotted::Models::ChapterListResponse::Chapter::Audiobook::type_]
259
- end
260
- end
261
-
262
143
  type release_date_precision = :year | :month | :day
263
144
 
264
145
  module ReleaseDatePrecision