+163
-915
patches/@spotify__web-api-ts-sdk.patch
+163
-915
patches/@spotify__web-api-ts-sdk.patch
···
1
-
diff --git a/dist/cjs/SpotifyApi.d.ts b/dist/cjs/SpotifyApi.d.ts
2
-
index cf5eff3cb728065892287539b2a85e2fe16b283b..fe3c2a037f4e47e6c748753a5661261552cfcc1b 100644
3
-
--- a/dist/cjs/SpotifyApi.d.ts
4
-
+++ b/dist/cjs/SpotifyApi.d.ts
5
-
@@ -35,7 +35,7 @@ export declare class SpotifyApi {
6
-
search: SearchExecutionFunction;
7
-
currentUser: CurrentUserEndpoints;
8
-
constructor(authentication: IAuthStrategy, config?: SdkOptions);
9
-
- makeRequest<TReturnType>(method: "GET" | "POST" | "PUT" | "DELETE", url: string, body?: any, contentType?: string | undefined): Promise<TReturnType>;
10
-
+ makeRequest<TReturnType>(method: "GET" | "POST" | "PUT" | "DELETE", url: string, body?: any, contentType?: string | undefined): Promise<TReturnType | null>;
11
-
private initializeSdk;
12
-
switchAuthenticationStrategy(authentication: IAuthStrategy): void;
13
-
/**
14
1
diff --git a/dist/cjs/SpotifyApi.js.map b/dist/cjs/SpotifyApi.js.map
15
2
index 2d356d41a56db1b8984445364ad2a94c05632cfa..195edd6643860eb7cc5da74c080cfaef47c9a323 100644
16
3
--- a/dist/cjs/SpotifyApi.js.map
···
109
96
\ No newline at end of file
110
97
+{"version":3,"file":"GenericCache.js","sourceRoot":"","sources":["../../../src/caching/GenericCache.ts"],"names":[],"mappings":"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"}
111
98
\ No newline at end of file
112
-
diff --git a/dist/cjs/endpoints/AlbumsEndpoints.d.ts b/dist/cjs/endpoints/AlbumsEndpoints.d.ts
113
-
index 18274fea2c934cd17f8ca87d551477cf8bda5291..bed7d9e02f1e65693b5f6772e78463a52ef442a8 100644
114
-
--- a/dist/cjs/endpoints/AlbumsEndpoints.d.ts
115
-
+++ b/dist/cjs/endpoints/AlbumsEndpoints.d.ts
116
-
@@ -3,5 +3,5 @@ import EndpointsBase from './EndpointsBase.js';
117
-
export default class AlbumsEndpoints extends EndpointsBase {
118
-
get(id: string, market?: Market): Promise<Album>;
119
-
get(ids: string[], market?: Market): Promise<Album[]>;
120
-
- tracks(albumId: string, market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedTrack>>;
121
-
+ tracks(albumId: string, market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedTrack> | null>;
122
-
}
123
-
diff --git a/dist/cjs/endpoints/AlbumsEndpoints.js b/dist/cjs/endpoints/AlbumsEndpoints.js
124
-
index 558f566069a7756bd8506298655a3d04dc9d0727..2eb39da32149091646eed89e3461f64aff27297e 100644
125
-
--- a/dist/cjs/endpoints/AlbumsEndpoints.js
126
-
+++ b/dist/cjs/endpoints/AlbumsEndpoints.js
127
-
@@ -14,6 +14,8 @@ class AlbumsEndpoints extends EndpointsBase_js_1.default {
128
-
const params = this.paramsFor({ ids: idOrIds, market });
129
-
// TODO: only returns top 20, validate here
130
-
const response = await this.getRequest(`albums${params}`);
131
-
+ if (!response)
132
-
+ return response;
133
-
return response.albums;
134
-
}
135
-
tracks(albumId, market, limit, offset) {
136
99
diff --git a/dist/cjs/endpoints/AlbumsEndpoints.js.map b/dist/cjs/endpoints/AlbumsEndpoints.js.map
137
-
index 13c3a0d24c5ffef9729936189d90d7639729896d..fc40487a6c97f94a0480f25290934be5d4dcbbe8 100644
100
+
index 13c3a0d24c5ffef9729936189d90d7639729896d..298227fb7a1617bbaaeacb240b74e1ea57948799 100644
138
101
--- a/dist/cjs/endpoints/AlbumsEndpoints.js.map
139
102
+++ b/dist/cjs/endpoints/AlbumsEndpoints.js.map
140
103
@@ -1 +1 @@
141
104
-{"version":3,"file":"AlbumsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/AlbumsEndpoints.ts"],"names":[],"mappings":";;;;;AACA,0EAA+C;AAE/C,MAAqB,eAAgB,SAAQ,0BAAa;IAI/C,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAe;QACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAQ,UAAU,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;YACzE,OAAO,KAAK,CAAC;SAChB;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAS,SAAS,MAAM,EAAE,CAAC,CAAC;QAClE,OAAO,QAAQ,CAAC,MAAM,CAAC;IAC3B,CAAC;IAEM,MAAM,CAAC,OAAe,EAAE,MAAe,EAAE,KAAkB,EAAE,MAAe;QAC/E,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,UAAU,CAAwB,UAAU,OAAO,UAAU,MAAM,EAAE,CAAC,CAAC;IACvF,CAAC;CACJ;AArBD,kCAqBC"}
142
105
\ No newline at end of file
143
-
+{"version":3,"file":"AlbumsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/AlbumsEndpoints.ts"],"names":[],"mappings":";;;;;AACA,0EAA+C;AAE/C,MAAqB,eAAgB,SAAQ,0BAAa;IAI/C,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAe;QACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAQ,UAAU,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;YACzE,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAS,SAAS,MAAM,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC/B,OAAO,QAAQ,CAAC,MAAM,CAAC;IAC3B,CAAC;IAEM,MAAM,CAAC,OAAe,EAAE,MAAe,EAAE,KAAkB,EAAE,MAAe;QAC/E,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,UAAU,CAAwB,UAAU,OAAO,UAAU,MAAM,EAAE,CAAC,CAAC;IACvF,CAAC;CACJ;AAtBD,kCAsBC"}
106
+
+{"version":3,"file":"AlbumsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/AlbumsEndpoints.ts"],"names":[],"mappings":";;;;;AACA,0EAA+C;AAE/C,MAAqB,eAAgB,SAAQ,0BAAa;IAI/C,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAe;QACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAQ,UAAU,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;YACzE,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAS,SAAS,MAAM,EAAE,CAAC,CAAC;QAClE,OAAO,QAAQ,CAAC,MAAM,CAAC;IAC3B,CAAC;IAEM,MAAM,CAAC,OAAe,EAAE,MAAe,EAAE,KAAkB,EAAE,MAAe;QAC/E,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,UAAU,CAAwB,UAAU,OAAO,UAAU,MAAM,EAAE,CAAC,CAAC;IACvF,CAAC;CACJ;AArBD,kCAqBC"}
144
107
\ No newline at end of file
145
-
diff --git a/dist/cjs/endpoints/ArtistsEndpoints.d.ts b/dist/cjs/endpoints/ArtistsEndpoints.d.ts
146
-
index 4b5237b7acbc95486893d7384fb6adcdf71ee74a..8bdba8fcbc5a9c45deb1a49580764c7cbbd1cd7b 100644
147
-
--- a/dist/cjs/endpoints/ArtistsEndpoints.d.ts
148
-
+++ b/dist/cjs/endpoints/ArtistsEndpoints.d.ts
149
-
@@ -3,7 +3,7 @@ import EndpointsBase from "./EndpointsBase.js";
150
-
export default class ArtistsEndpoints extends EndpointsBase {
151
-
get(id: string): Promise<Artist>;
152
-
get(ids: string[]): Promise<Artist[]>;
153
-
- albums(id: string, includeGroups?: string, market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedAlbum>>;
154
-
- topTracks(id: string, market: Market): Promise<TopTracksResult>;
155
-
- relatedArtists(id: string): Promise<Artists>;
156
-
+ albums(id: string, includeGroups?: string, market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedAlbum> | null>;
157
-
+ topTracks(id: string, market: Market): Promise<TopTracksResult | null>;
158
-
+ relatedArtists(id: string): Promise<Artists | null>;
159
-
}
160
-
diff --git a/dist/cjs/endpoints/ArtistsEndpoints.js b/dist/cjs/endpoints/ArtistsEndpoints.js
161
-
index 6c6eee4d65b70db5df80865431c035ab10d60262..09a222ee0b5a3a0b93396008bb72a2ba69728c28 100644
162
-
--- a/dist/cjs/endpoints/ArtistsEndpoints.js
163
-
+++ b/dist/cjs/endpoints/ArtistsEndpoints.js
164
-
@@ -12,6 +12,8 @@ class ArtistsEndpoints extends EndpointsBase_js_1.default {
165
-
}
166
-
const params = this.paramsFor({ ids: idOrIds });
167
-
const response = await this.getRequest(`artists${params}`);
168
-
+ if (!response)
169
-
+ return response;
170
-
return response.artists;
171
-
}
172
-
albums(id, includeGroups, market, limit, offset) {
173
108
diff --git a/dist/cjs/endpoints/ArtistsEndpoints.js.map b/dist/cjs/endpoints/ArtistsEndpoints.js.map
174
-
index 8bf5c0c2e5bfbeabc81b764bc66814010a7e828b..b7d33f131af79fb432943e5f78b69afbafff1f9b 100644
109
+
index 8bf5c0c2e5bfbeabc81b764bc66814010a7e828b..3ef89674d83081ce15e1a24a3a80fb7cff9071f9 100644
175
110
--- a/dist/cjs/endpoints/ArtistsEndpoints.js.map
176
111
+++ b/dist/cjs/endpoints/ArtistsEndpoints.js.map
177
112
@@ -1 +1 @@
178
113
-{"version":3,"file":"ArtistsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/ArtistsEndpoints.ts"],"names":[],"mappings":";;;;;AAUA,0EAA+C;AAE/C,MAAqB,gBAAiB,SAAQ,0BAAa;IAGhD,KAAK,CAAC,GAAG,CAAC,OAA0B;QACvC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAS,WAAW,OAAO,EAAE,CAAC,CAAC;YAC7D,OAAO,MAAM,CAAC;SACjB;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAU,UAAU,MAAM,EAAE,CAAC,CAAC;QACpE,OAAO,QAAQ,CAAC,OAAO,CAAC;IAC5B,CAAC;IAEM,MAAM,CACT,EAAU,EACV,aAAsB,EACtB,MAAe,EACf,KAAkB,EAClB,MAAe;QAEf,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC;YAC1B,cAAc,EAAE,aAAa;YAC7B,MAAM;YACN,KAAK;YACL,MAAM;SACT,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,UAAU,CAClB,WAAW,EAAE,UAAU,MAAM,EAAE,CAClC,CAAC;IACN,CAAC;IAEM,SAAS,CAAC,EAAU,EAAE,MAAc;QACvC,+FAA+F;QAC/F,0BAA0B;QAE1B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC,UAAU,CAClB,WAAW,EAAE,cAAc,MAAM,EAAE,CACtC,CAAC;IACN,CAAC;IAEM,cAAc,CAAC,EAAU;QAC5B,OAAO,IAAI,CAAC,UAAU,CAAU,WAAW,EAAE,kBAAkB,CAAC,CAAC;IACrE,CAAC;CACJ;AA7CD,mCA6CC"}
179
114
\ No newline at end of file
180
-
+{"version":3,"file":"ArtistsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/ArtistsEndpoints.ts"],"names":[],"mappings":";;;;;AAUA,0EAA+C;AAE/C,MAAqB,gBAAiB,SAAQ,0BAAa;IAGhD,KAAK,CAAC,GAAG,CAAC,OAA0B;QACvC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAS,WAAW,OAAO,EAAE,CAAC,CAAC;YAC7D,OAAO,MAAM,CAAC;QAClB,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAU,UAAU,MAAM,EAAE,CAAC,CAAC;QACpE,IAAI,CAAC,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC/B,OAAO,QAAQ,CAAC,OAAO,CAAC;IAC5B,CAAC;IAEM,MAAM,CACT,EAAU,EACV,aAAsB,EACtB,MAAe,EACf,KAAkB,EAClB,MAAe;QAEf,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC;YAC1B,cAAc,EAAE,aAAa;YAC7B,MAAM;YACN,KAAK;YACL,MAAM;SACT,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,UAAU,CAClB,WAAW,EAAE,UAAU,MAAM,EAAE,CAClC,CAAC;IACN,CAAC;IAEM,SAAS,CAAC,EAAU,EAAE,MAAc;QACvC,+FAA+F;QAC/F,0BAA0B;QAE1B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC,UAAU,CAClB,WAAW,EAAE,cAAc,MAAM,EAAE,CACtC,CAAC;IACN,CAAC;IAEM,cAAc,CAAC,EAAU;QAC5B,OAAO,IAAI,CAAC,UAAU,CAAU,WAAW,EAAE,kBAAkB,CAAC,CAAC;IACrE,CAAC;CACJ;AA9CD,mCA8CC"}
115
+
+{"version":3,"file":"ArtistsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/ArtistsEndpoints.ts"],"names":[],"mappings":";;;;;AAUA,0EAA+C;AAE/C,MAAqB,gBAAiB,SAAQ,0BAAa;IAGhD,KAAK,CAAC,GAAG,CAAC,OAA0B;QACvC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAS,WAAW,OAAO,EAAE,CAAC,CAAC;YAC7D,OAAO,MAAM,CAAC;QAClB,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAU,UAAU,MAAM,EAAE,CAAC,CAAC;QACpE,OAAO,QAAQ,CAAC,OAAO,CAAC;IAC5B,CAAC;IAEM,MAAM,CACT,EAAU,EACV,aAAsB,EACtB,MAAe,EACf,KAAkB,EAClB,MAAe;QAEf,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC;YAC1B,cAAc,EAAE,aAAa;YAC7B,MAAM;YACN,KAAK;YACL,MAAM;SACT,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,UAAU,CAClB,WAAW,EAAE,UAAU,MAAM,EAAE,CAClC,CAAC;IACN,CAAC;IAEM,SAAS,CAAC,EAAU,EAAE,MAAc;QACvC,+FAA+F;QAC/F,0BAA0B;QAE1B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC,UAAU,CAClB,WAAW,EAAE,cAAc,MAAM,EAAE,CACtC,CAAC;IACN,CAAC;IAEM,cAAc,CAAC,EAAU;QAC5B,OAAO,IAAI,CAAC,UAAU,CAAU,WAAW,EAAE,kBAAkB,CAAC,CAAC;IACrE,CAAC;CACJ;AA7CD,mCA6CC"}
181
116
\ No newline at end of file
182
-
diff --git a/dist/cjs/endpoints/AudiobooksEndpoints.d.ts b/dist/cjs/endpoints/AudiobooksEndpoints.d.ts
183
-
index cfe18b338a678454c67cba7086ef4b292e0ab54a..33f2577aa2b4050e49f22b3bdca75b8ba1993fdd 100644
184
-
--- a/dist/cjs/endpoints/AudiobooksEndpoints.d.ts
185
-
+++ b/dist/cjs/endpoints/AudiobooksEndpoints.d.ts
186
-
@@ -3,5 +3,5 @@ import EndpointsBase from './EndpointsBase.js';
187
-
export default class AudiobooksEndpoints extends EndpointsBase {
188
-
get(id: string, market?: Market): Promise<Audiobook>;
189
-
get(ids: string[], market?: Market): Promise<Audiobook[]>;
190
-
- getAudiobookChapters(id: string, market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedChapter>>;
191
-
+ getAudiobookChapters(id: string, market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedChapter> | null>;
192
-
}
193
-
diff --git a/dist/cjs/endpoints/AudiobooksEndpoints.js b/dist/cjs/endpoints/AudiobooksEndpoints.js
194
-
index 5cd33ac00e938d5af436107bbf0dfb055d1f87c0..e227dda6bb5c8720b801245827fe768e4ad54693 100644
195
-
--- a/dist/cjs/endpoints/AudiobooksEndpoints.js
196
-
+++ b/dist/cjs/endpoints/AudiobooksEndpoints.js
197
-
@@ -12,6 +12,8 @@ class AudiobooksEndpoints extends EndpointsBase_js_1.default {
198
-
}
199
-
const params = this.paramsFor({ ids: idOrIds, market });
200
-
const response = await this.getRequest(`audiobooks${params}`);
201
-
+ if (!response)
202
-
+ return response;
203
-
return response.audiobooks;
204
-
}
205
-
getAudiobookChapters(id, market, limit, offset) {
206
117
diff --git a/dist/cjs/endpoints/AudiobooksEndpoints.js.map b/dist/cjs/endpoints/AudiobooksEndpoints.js.map
207
-
index 4f5a448ad51548883d3eb68a057aa825e766e146..7fa408648e38a4091db7288d18d9b4893e47fe98 100644
118
+
index 4f5a448ad51548883d3eb68a057aa825e766e146..d87a7c24f3292e3d4728d9398d70222b524ac2c6 100644
208
119
--- a/dist/cjs/endpoints/AudiobooksEndpoints.js.map
209
120
+++ b/dist/cjs/endpoints/AudiobooksEndpoints.js.map
210
121
@@ -1 +1 @@
211
122
-{"version":3,"file":"AudiobooksEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/AudiobooksEndpoints.ts"],"names":[],"mappings":";;;;;AACA,0EAA+C;AAE/C,MAAqB,mBAAoB,SAAQ,0BAAa;IAGnD,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAe;QACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAY,cAAc,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;SACvE;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAa,aAAa,MAAM,EAAE,CAAC,CAAC;QAC1E,OAAO,QAAQ,CAAC,UAAU,CAAC;IAC/B,CAAC;IAEM,oBAAoB,CAAC,EAAU,EAAE,MAAe,EAAE,KAAkB,EAAE,MAAe;QACxF,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,UAAU,CAA0B,cAAc,EAAE,YAAY,MAAM,EAAE,CAAC,CAAC;IAC1F,CAAC;CAEJ;AAnBD,sCAmBC"}
212
123
\ No newline at end of file
213
-
+{"version":3,"file":"AudiobooksEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/AudiobooksEndpoints.ts"],"names":[],"mappings":";;;;;AACA,0EAA+C;AAE/C,MAAqB,mBAAoB,SAAQ,0BAAa;IAGnD,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAe;QACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAY,cAAc,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QACxE,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAa,aAAa,MAAM,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC/B,OAAO,QAAQ,CAAC,UAAU,CAAC;IAC/B,CAAC;IAEM,oBAAoB,CAAC,EAAU,EAAE,MAAe,EAAE,KAAkB,EAAE,MAAe;QACxF,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,UAAU,CAA0B,cAAc,EAAE,YAAY,MAAM,EAAE,CAAC,CAAC;IAC1F,CAAC;CAEJ;AApBD,sCAoBC"}
124
+
+{"version":3,"file":"AudiobooksEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/AudiobooksEndpoints.ts"],"names":[],"mappings":";;;;;AACA,0EAA+C;AAE/C,MAAqB,mBAAoB,SAAQ,0BAAa;IAGnD,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAe;QACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAY,cAAc,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QACxE,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAa,aAAa,MAAM,EAAE,CAAC,CAAC;QAC1E,OAAO,QAAQ,CAAC,UAAU,CAAC;IAC/B,CAAC;IAEM,oBAAoB,CAAC,EAAU,EAAE,MAAe,EAAE,KAAkB,EAAE,MAAe;QACxF,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,UAAU,CAA0B,cAAc,EAAE,YAAY,MAAM,EAAE,CAAC,CAAC;IAC1F,CAAC;CAEJ;AAnBD,sCAmBC"}
214
125
\ No newline at end of file
215
-
diff --git a/dist/cjs/endpoints/BrowseEndpoints.d.ts b/dist/cjs/endpoints/BrowseEndpoints.d.ts
216
-
index 7f998995a6b7cdb8c31dcfc9d0284826cf9b8a90..87b59ecd24941b849bd43e472ab8421cbba0e0d3 100644
217
-
--- a/dist/cjs/endpoints/BrowseEndpoints.d.ts
218
-
+++ b/dist/cjs/endpoints/BrowseEndpoints.d.ts
219
-
@@ -1,9 +1,9 @@
220
-
import type { CountryCodeA2, MaxInt, Categories, Category, NewReleases, FeaturedPlaylists } from '../types.js';
221
-
import EndpointsBase from './EndpointsBase.js';
222
-
export default class BrowseEndpoints extends EndpointsBase {
223
-
- getCategories(country?: CountryCodeA2, locale?: string, limit?: MaxInt<50>, offset?: number): Promise<Categories>;
224
-
- getCategory(categoryId: string, country?: CountryCodeA2, locale?: string): Promise<Category>;
225
-
- getNewReleases(country?: string, limit?: MaxInt<50>, offset?: number): Promise<NewReleases>;
226
-
- getFeaturedPlaylists(country?: CountryCodeA2, locale?: string, timestamp?: string, limit?: MaxInt<50>, offset?: number): Promise<FeaturedPlaylists>;
227
-
- getPlaylistsForCategory(category_id: string, country?: CountryCodeA2, limit?: MaxInt<50>, offset?: number): Promise<FeaturedPlaylists>;
228
-
+ getCategories(country?: CountryCodeA2, locale?: string, limit?: MaxInt<50>, offset?: number): Promise<Categories | null>;
229
-
+ getCategory(categoryId: string, country?: CountryCodeA2, locale?: string): Promise<Category | null>;
230
-
+ getNewReleases(country?: string, limit?: MaxInt<50>, offset?: number): Promise<NewReleases | null>;
231
-
+ getFeaturedPlaylists(country?: CountryCodeA2, locale?: string, timestamp?: string, limit?: MaxInt<50>, offset?: number): Promise<FeaturedPlaylists | null>;
232
-
+ getPlaylistsForCategory(category_id: string, country?: CountryCodeA2, limit?: MaxInt<50>, offset?: number): Promise<FeaturedPlaylists | null>;
233
-
}
234
-
diff --git a/dist/cjs/endpoints/ChaptersEndpoints.js b/dist/cjs/endpoints/ChaptersEndpoints.js
235
-
index f3ac2c65fb099887371999b1b018b54e8a6ef532..6b6dbc9ccba2f74c2b611ecab82d5f0764b7bd77 100644
236
-
--- a/dist/cjs/endpoints/ChaptersEndpoints.js
237
-
+++ b/dist/cjs/endpoints/ChaptersEndpoints.js
238
-
@@ -13,6 +13,8 @@ class ChaptersEndpoints extends EndpointsBase_js_1.default {
239
-
// TODO: Only returns top 50, validate / pre-check here
240
-
const params = this.paramsFor({ ids: idOrIds, market });
241
-
const response = await this.getRequest(`chapters${params}`);
242
-
+ if (!response)
243
-
+ return response;
244
-
return response.chapters;
245
-
}
246
-
}
247
126
diff --git a/dist/cjs/endpoints/ChaptersEndpoints.js.map b/dist/cjs/endpoints/ChaptersEndpoints.js.map
248
-
index b47dff3998031c839fc89777937b00373ad8bd4e..2b2588de79ed0f2cbb141428dac235e9517550de 100644
127
+
index b47dff3998031c839fc89777937b00373ad8bd4e..a78b064098b825d65f1272420f388fcbbc79ff8f 100644
249
128
--- a/dist/cjs/endpoints/ChaptersEndpoints.js.map
250
129
+++ b/dist/cjs/endpoints/ChaptersEndpoints.js.map
251
130
@@ -1 +1 @@
252
131
-{"version":3,"file":"ChaptersEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/ChaptersEndpoints.ts"],"names":[],"mappings":";;;;;AACA,0EAA+C;AAK/C,MAAqB,iBAAkB,SAAQ,0BAAa;IAGjD,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAqB;QAC9D,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAU,YAAY,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;SACnE;QAED,uDAAuD;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAW,WAAW,MAAM,EAAE,CAAC,CAAC;QACtE,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC7B,CAAC;CACJ;AAdD,oCAcC"}
253
132
\ No newline at end of file
254
-
+{"version":3,"file":"ChaptersEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/ChaptersEndpoints.ts"],"names":[],"mappings":";;;;;AACA,0EAA+C;AAK/C,MAAqB,iBAAkB,SAAQ,0BAAa;IAGjD,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAqB;QAC9D,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAU,YAAY,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,uDAAuD;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAW,WAAW,MAAM,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC/B,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC7B,CAAC;CACJ;AAfD,oCAeC"}
133
+
+{"version":3,"file":"ChaptersEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/ChaptersEndpoints.ts"],"names":[],"mappings":";;;;;AACA,0EAA+C;AAK/C,MAAqB,iBAAkB,SAAQ,0BAAa;IAGjD,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAqB;QAC9D,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAU,YAAY,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,uDAAuD;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAW,WAAW,MAAM,EAAE,CAAC,CAAC;QACtE,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC7B,CAAC;CACJ;AAdD,oCAcC"}
255
134
\ No newline at end of file
256
-
diff --git a/dist/cjs/endpoints/CurrentUserEndpoints.d.ts b/dist/cjs/endpoints/CurrentUserEndpoints.d.ts
257
-
index ef1c96f9bb072d17d9ce2aecfd3ac918c0f268f9..20d31d09d22308a87cb0be7072c2a40937b58206 100644
258
-
--- a/dist/cjs/endpoints/CurrentUserEndpoints.d.ts
259
-
+++ b/dist/cjs/endpoints/CurrentUserEndpoints.d.ts
260
-
@@ -9,47 +9,47 @@ export default class CurrentUserEndpoints extends EndpointsBase {
261
-
shows: CurrentUserShowsEndpoints;
262
-
tracks: CurrentUserTracksEndpoints;
263
-
constructor(api: SpotifyApi);
264
-
- profile(): Promise<UserProfile>;
265
-
- topItems<T extends "artists" | "tracks">(type: T, time_range?: 'short_term' | 'medium_term' | 'long_term', limit?: MaxInt<50>, offset?: number): Promise<Page<T extends "artists" ? Artist : Track>>;
266
-
- followedArtists(after?: string, limit?: MaxInt<50>): Promise<FollowedArtists>;
267
-
+ profile(): Promise<UserProfile | null>;
268
-
+ topItems<T extends "artists" | "tracks">(type: T, time_range?: 'short_term' | 'medium_term' | 'long_term', limit?: MaxInt<50>, offset?: number): Promise<Page<T extends "artists" ? Artist : Track> | null>;
269
-
+ followedArtists(after?: string, limit?: MaxInt<50>): Promise<FollowedArtists | null>;
270
-
followArtistsOrUsers(ids: string[], type: 'artist' | 'user'): Promise<void>;
271
-
unfollowArtistsOrUsers(ids: string[], type: 'artist' | 'user'): Promise<void>;
272
-
- followsArtistsOrUsers(ids: string[], type: 'artist' | 'user'): Promise<boolean[]>;
273
-
+ followsArtistsOrUsers(ids: string[], type: 'artist' | 'user'): Promise<boolean[] | null>;
274
-
}
275
-
declare class CurrentUserAlbumsEndpoints extends EndpointsBase {
276
-
- savedAlbums(limit?: MaxInt<50>, offset?: number, market?: Market): Promise<Page<SavedAlbum>>;
277
-
+ savedAlbums(limit?: MaxInt<50>, offset?: number, market?: Market): Promise<Page<SavedAlbum> | null>;
278
-
saveAlbums(ids: string[]): Promise<void>;
279
-
removeSavedAlbums(ids: string[]): Promise<void>;
280
-
- hasSavedAlbums(ids: string[]): Promise<boolean[]>;
281
-
+ hasSavedAlbums(ids: string[]): Promise<boolean[] | null>;
282
-
}
283
-
declare class CurrentUserAudiobooksEndpoints extends EndpointsBase {
284
-
- savedAudiobooks(limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedAudiobook>>;
285
-
+ savedAudiobooks(limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedAudiobook> | null>;
286
-
saveAudiobooks(ids: string[]): Promise<void>;
287
-
removeSavedAudiobooks(ids: string[]): Promise<void>;
288
-
- hasSavedAudiobooks(ids: string[]): Promise<boolean[]>;
289
-
+ hasSavedAudiobooks(ids: string[]): Promise<boolean[] | null>;
290
-
}
291
-
declare class CurrentUserEpisodesEndpoints extends EndpointsBase {
292
-
- savedEpisodes(market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SavedEpisode>>;
293
-
+ savedEpisodes(market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SavedEpisode> | null>;
294
-
saveEpisodes(ids: string[]): Promise<void>;
295
-
removeSavedEpisodes(ids: string[]): Promise<void>;
296
-
- hasSavedEpisodes(ids: string[]): Promise<boolean[]>;
297
-
+ hasSavedEpisodes(ids: string[]): Promise<boolean[] | null>;
298
-
}
299
-
declare class CurrentUserPlaylistsEndpoints extends EndpointsBase {
300
-
- playlists(limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedPlaylist>>;
301
-
+ playlists(limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedPlaylist> | null>;
302
-
follow(playlist_id: string): Promise<void>;
303
-
unfollow(playlist_id: string): Promise<void>;
304
-
- isFollowing(playlistId: string, ids: string[]): Promise<boolean[]>;
305
-
+ isFollowing(playlistId: string, ids: string[]): Promise<boolean[] | null>;
306
-
}
307
-
declare class CurrentUserShowsEndpoints extends EndpointsBase {
308
-
- savedShows(limit?: MaxInt<50>, offset?: number): Promise<Page<SavedShow>>;
309
-
+ savedShows(limit?: MaxInt<50>, offset?: number): Promise<Page<SavedShow> | null>;
310
-
saveShows(ids: string[]): Promise<unknown>;
311
-
removeSavedShows(ids: string[], market?: Market): Promise<unknown>;
312
-
- hasSavedShow(ids: string[]): Promise<boolean[]>;
313
-
+ hasSavedShow(ids: string[]): Promise<boolean[] | null>;
314
-
}
315
-
declare class CurrentUserTracksEndpoints extends EndpointsBase {
316
-
- savedTracks(limit?: MaxInt<50>, offset?: number, market?: Market): Promise<Page<SavedTrack>>;
317
-
+ savedTracks(limit?: MaxInt<50>, offset?: number, market?: Market): Promise<Page<SavedTrack> | null>;
318
-
saveTracks(ids: string[]): Promise<void>;
319
-
removeSavedTracks(ids: string[]): Promise<void>;
320
-
- hasSavedTracks(ids: string[]): Promise<boolean[]>;
321
-
+ hasSavedTracks(ids: string[]): Promise<boolean[] | null>;
322
-
}
323
-
export {};
324
-
diff --git a/dist/cjs/endpoints/EndpointsBase.d.ts b/dist/cjs/endpoints/EndpointsBase.d.ts
325
-
index c91dff76bfa4664d7a9976f84c98a8e65b08cb70..62e63dac60f91346fae2b6dc121e309df52ba3f3 100644
326
-
--- a/dist/cjs/endpoints/EndpointsBase.d.ts
327
-
+++ b/dist/cjs/endpoints/EndpointsBase.d.ts
328
-
@@ -2,9 +2,9 @@ import { SpotifyApi } from "../SpotifyApi.js";
329
-
export default class EndpointsBase {
330
-
protected api: SpotifyApi;
331
-
constructor(api: SpotifyApi);
332
-
- protected getRequest<TReturnType>(url: string): Promise<TReturnType>;
333
-
- protected postRequest<TReturnType, TBody = unknown>(url: string, body?: TBody, contentType?: string | undefined): Promise<TReturnType>;
334
-
- protected putRequest<TReturnType, TBody = unknown>(url: string, body?: TBody, contentType?: string | undefined): Promise<TReturnType>;
335
-
- protected deleteRequest<TReturnType, TBody = unknown>(url: string, body?: TBody): Promise<TReturnType>;
336
-
+ protected getRequest<TReturnType>(url: string): Promise<TReturnType | null>;
337
-
+ protected postRequest<TReturnType, TBody = unknown>(url: string, body?: TBody, contentType?: string | undefined): Promise<TReturnType | null>;
338
-
+ protected putRequest<TReturnType, TBody = unknown>(url: string, body?: TBody, contentType?: string | undefined): Promise<TReturnType | null>;
339
-
+ protected deleteRequest<TReturnType, TBody = unknown>(url: string, body?: TBody): Promise<TReturnType | null>;
340
-
protected paramsFor(args: any): string;
341
-
}
342
135
diff --git a/dist/cjs/endpoints/EndpointsBase.js.map b/dist/cjs/endpoints/EndpointsBase.js.map
343
136
index f0473508d6cc503ca83c96ded895d202b48977b3..1b8c6d680673f2fedda300ebe82ccdbe7111b782 100644
344
137
--- a/dist/cjs/endpoints/EndpointsBase.js.map
···
348
141
\ No newline at end of file
349
142
+{"version":3,"file":"EndpointsBase.js","sourceRoot":"","sources":["../../../src/endpoints/EndpointsBase.ts"],"names":[],"mappings":";;AAEA,MAAqB,aAAa;IACR;IAAtB,YAAsB,GAAe;QAAf,QAAG,GAAH,GAAG,CAAY;IACrC,CAAC;IAES,KAAK,CAAC,UAAU,CAAc,GAAW;QAC/C,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAc,KAAK,EAAE,GAAG,CAAC,CAAC;IAC/D,CAAC;IAES,KAAK,CAAC,WAAW,CAA+B,GAAW,EAAE,IAAY,EAAE,cAAkC,SAAS;QAC5H,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAc,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IACnF,CAAC;IAES,KAAK,CAAC,UAAU,CAA+B,GAAW,EAAE,IAAY,EAAE,cAAkC,SAAS;QAC3H,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAc,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IAClF,CAAC;IAES,KAAK,CAAC,aAAa,CAA+B,GAAW,EAAE,IAAY;QACjF,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAc,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IACxE,CAAC;IAES,SAAS,CAAC,IAAS;QACzB,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,KAAK,IAAI,GAAG,IAAI,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/C,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,EAAE,CAAC;gBACnF,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC7C,CAAC;QACL,CAAC;QACD,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,CAAC;CACJ;AA7BD,gCA6BC"}
350
143
\ No newline at end of file
351
-
diff --git a/dist/cjs/endpoints/EpisodesEndpoints.js b/dist/cjs/endpoints/EpisodesEndpoints.js
352
-
index aa809afbe2f5e30bab4622b94c978700341651d8..58960a963d789cb7320bcee8517f8128762e85ad 100644
353
-
--- a/dist/cjs/endpoints/EpisodesEndpoints.js
354
-
+++ b/dist/cjs/endpoints/EpisodesEndpoints.js
355
-
@@ -12,6 +12,8 @@ class EpisodesEndpoints extends EndpointsBase_js_1.default {
356
-
}
357
-
const params = this.paramsFor({ ids: idOrIds, market });
358
-
const response = await this.getRequest(`episodes${params}`);
359
-
+ if (!response)
360
-
+ return response;
361
-
return response.episodes;
362
-
}
363
-
}
364
144
diff --git a/dist/cjs/endpoints/EpisodesEndpoints.js.map b/dist/cjs/endpoints/EpisodesEndpoints.js.map
365
-
index 017ea1fb67b3751fff77c143d67f57514bb5b996..c60f6af5f86147d8059412c3d89e4ba9beab762d 100644
145
+
index 017ea1fb67b3751fff77c143d67f57514bb5b996..bc10678835b90f42d2a9be229570c95c3b8a56e5 100644
366
146
--- a/dist/cjs/endpoints/EpisodesEndpoints.js.map
367
147
+++ b/dist/cjs/endpoints/EpisodesEndpoints.js.map
368
148
@@ -1 +1 @@
369
149
-{"version":3,"file":"EpisodesEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/EpisodesEndpoints.ts"],"names":[],"mappings":";;;;;AACA,0EAA+C;AAE/C,MAAqB,iBAAkB,SAAQ,0BAAa;IAIjD,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAc;QACvD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAU,YAAY,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;SACnE;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAW,WAAW,MAAM,EAAE,CAAC,CAAC;QACtE,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC7B,CAAC;CACJ;AAdD,oCAcC"}
370
150
\ No newline at end of file
371
-
+{"version":3,"file":"EpisodesEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/EpisodesEndpoints.ts"],"names":[],"mappings":";;;;;AACA,0EAA+C;AAE/C,MAAqB,iBAAkB,SAAQ,0BAAa;IAIjD,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAc;QACvD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAU,YAAY,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAW,WAAW,MAAM,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC/B,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC7B,CAAC;CACJ;AAfD,oCAeC"}
151
+
+{"version":3,"file":"EpisodesEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/EpisodesEndpoints.ts"],"names":[],"mappings":";;;;;AACA,0EAA+C;AAE/C,MAAqB,iBAAkB,SAAQ,0BAAa;IAIjD,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAc;QACvD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAU,YAAY,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAW,WAAW,MAAM,EAAE,CAAC,CAAC;QACtE,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC7B,CAAC;CACJ;AAdD,oCAcC"}
372
152
\ No newline at end of file
373
-
diff --git a/dist/cjs/endpoints/MarketsEndpoints.d.ts b/dist/cjs/endpoints/MarketsEndpoints.d.ts
374
-
index 4ceb08e53ada5c140d6cba3267e8d60b35586827..cc046b287cf3a12a23cdec477d197319189b0c6b 100644
375
-
--- a/dist/cjs/endpoints/MarketsEndpoints.d.ts
376
-
+++ b/dist/cjs/endpoints/MarketsEndpoints.d.ts
377
-
@@ -1,5 +1,5 @@
378
-
import type { Markets } from '../types.js';
379
-
import EndpointsBase from './EndpointsBase.js';
380
-
export default class MarketsEndpoints extends EndpointsBase {
381
-
- getAvailableMarkets(): Promise<Markets>;
382
-
+ getAvailableMarkets(): Promise<Markets | null>;
383
-
}
384
-
diff --git a/dist/cjs/endpoints/PlayerEndpoints.d.ts b/dist/cjs/endpoints/PlayerEndpoints.d.ts
385
-
index 52792b8fb66f5a4e5056c674a175fb12d9b6c43b..2b6ec0f5e0199cd5d908e63fe6b410fce8c55315 100644
386
-
--- a/dist/cjs/endpoints/PlayerEndpoints.d.ts
387
-
+++ b/dist/cjs/endpoints/PlayerEndpoints.d.ts
388
-
@@ -5,11 +5,11 @@ interface QueryRange {
389
-
type: "before" | "after";
390
-
}
391
-
export default class PlayerEndpoints extends EndpointsBase {
392
-
- getPlaybackState(market?: Market, additional_types?: string): Promise<PlaybackState>;
393
-
- getAvailableDevices(): Promise<Devices>;
394
-
- getCurrentlyPlayingTrack(market?: Market, additional_types?: string): Promise<PlaybackState>;
395
-
- getRecentlyPlayedTracks(limit?: MaxInt<50>, queryRange?: QueryRange): Promise<RecentlyPlayedTracksPage>;
396
-
- getUsersQueue(): Promise<Queue>;
397
-
+ getPlaybackState(market?: Market, additional_types?: string): Promise<PlaybackState | null>;
398
-
+ getAvailableDevices(): Promise<Devices | null>;
399
-
+ getCurrentlyPlayingTrack(market?: Market, additional_types?: string): Promise<PlaybackState | null>;
400
-
+ getRecentlyPlayedTracks(limit?: MaxInt<50>, queryRange?: QueryRange): Promise<RecentlyPlayedTracksPage | null>;
401
-
+ getUsersQueue(): Promise<Queue | null>;
402
-
transferPlayback(device_ids: string[], play?: boolean): Promise<void>;
403
-
startResumePlayback(device_id: string, context_uri?: string, uris?: string[], offset?: object, positionMs?: number): Promise<void>;
404
-
pausePlayback(device_id: string): Promise<void>;
405
153
diff --git a/dist/cjs/endpoints/PlayerEndpoints.js.map b/dist/cjs/endpoints/PlayerEndpoints.js.map
406
154
index 94159b453d45d007e614ab4f0d81e8eafd4501f3..c862611b08e57318150f4218c0d74580b4a5473b 100644
407
155
--- a/dist/cjs/endpoints/PlayerEndpoints.js.map
···
412
160
+{"version":3,"file":"PlayerEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/PlayerEndpoints.ts"],"names":[],"mappings":"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"}
413
161
\ No newline at end of file
414
162
diff --git a/dist/cjs/endpoints/PlaylistsEndpoints.d.ts b/dist/cjs/endpoints/PlaylistsEndpoints.d.ts
415
-
index 8760c8c7b8d61681a85537a40d33aafeff8d1cd0..1477d0769fae34f47b34a4d85c46e29337dac979 100644
163
+
index 8760c8c7b8d61681a85537a40d33aafeff8d1cd0..8a439ea2f95f5bdbd5bec4cc9dde867e06d74ec2 100644
416
164
--- a/dist/cjs/endpoints/PlaylistsEndpoints.d.ts
417
165
+++ b/dist/cjs/endpoints/PlaylistsEndpoints.d.ts
418
-
@@ -1,17 +1,16 @@
166
+
@@ -1,4 +1,3 @@
419
167
-/// <reference types="node" />
420
168
import type { Market, Playlist, MaxInt, Page, Track, SnapshotReference, Image, PlaylistedTrack, QueryAdditionalTypes, TrackItem } from '../types.js';
421
169
import EndpointsBase from './EndpointsBase.js';
422
170
export default class PlaylistsEndpoints extends EndpointsBase {
423
-
- getPlaylist<AdditionalTypes extends QueryAdditionalTypes | undefined = undefined>(playlist_id: string, market?: Market, fields?: string, additional_types?: AdditionalTypes): Promise<Playlist<AdditionalTypes extends undefined ? Track : TrackItem>>;
424
-
- getPlaylistItems<AdditionalTypes extends QueryAdditionalTypes | undefined = undefined>(playlist_id: string, market?: Market, fields?: string, limit?: MaxInt<50>, offset?: number, additional_types?: AdditionalTypes): Promise<Page<PlaylistedTrack<AdditionalTypes extends undefined ? Track : TrackItem>>>;
425
-
+ getPlaylist<AdditionalTypes extends QueryAdditionalTypes | undefined = undefined>(playlist_id: string, market?: Market, fields?: string, additional_types?: AdditionalTypes): Promise<Playlist<AdditionalTypes extends undefined ? Track : TrackItem> | null>;
426
-
+ getPlaylistItems<AdditionalTypes extends QueryAdditionalTypes | undefined = undefined>(playlist_id: string, market?: Market, fields?: string, limit?: MaxInt<50>, offset?: number, additional_types?: AdditionalTypes): Promise<Page<PlaylistedTrack<AdditionalTypes extends undefined ? Track : TrackItem>> | null>;
427
-
changePlaylistDetails(playlist_id: string, request: ChangePlaylistDetailsRequest): Promise<void>;
428
-
- movePlaylistItems(playlist_id: string, range_start: number, range_length: number, moveToPosition: number): Promise<SnapshotReference>;
429
-
- updatePlaylistItems(playlist_id: string, request: UpdatePlaylistItemsRequest): Promise<SnapshotReference>;
430
-
+ movePlaylistItems(playlist_id: string, range_start: number, range_length: number, moveToPosition: number): Promise<SnapshotReference | null>;
431
-
+ updatePlaylistItems(playlist_id: string, request: UpdatePlaylistItemsRequest): Promise<SnapshotReference | null>;
432
-
addItemsToPlaylist(playlist_id: string, uris?: string[], position?: number): Promise<void>;
433
-
removeItemsFromPlaylist(playlist_id: string, request: RemovePlaylistItemsRequest): Promise<void>;
434
-
- getUsersPlaylists(user_id: string, limit?: MaxInt<50>, offset?: number): Promise<Page<Playlist<TrackItem>>>;
435
-
- createPlaylist(user_id: string, request: CreatePlaylistRequest): Promise<Playlist<TrackItem>>;
436
-
- getPlaylistCoverImage(playlist_id: string): Promise<Image[]>;
437
-
+ getUsersPlaylists(user_id: string, limit?: MaxInt<50>, offset?: number): Promise<Page<Playlist<TrackItem>> | null>;
438
-
+ createPlaylist(user_id: string, request: CreatePlaylistRequest): Promise<Playlist<TrackItem> | null>;
439
-
+ getPlaylistCoverImage(playlist_id: string): Promise<Image[] | null>;
440
-
addCustomPlaylistCoverImage(playlist_id: string, imageData: Buffer | HTMLImageElement | HTMLCanvasElement | string): Promise<void>;
441
-
addCustomPlaylistCoverImageFromBase64String(playlist_id: string, base64EncodedJpeg: string): Promise<void>;
442
-
}
443
171
diff --git a/dist/cjs/endpoints/PlaylistsEndpoints.js.map b/dist/cjs/endpoints/PlaylistsEndpoints.js.map
444
172
index 4bfe4e675a39d5043db26002aca95c1b321aed01..733e9743acf49400060efdb6d211e6871ef151c6 100644
445
173
--- a/dist/cjs/endpoints/PlaylistsEndpoints.js.map
···
449
177
\ No newline at end of file
450
178
+{"version":3,"file":"PlaylistsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/PlaylistsEndpoints.ts"],"names":[],"mappings":"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"}
451
179
\ No newline at end of file
452
-
diff --git a/dist/cjs/endpoints/RecommendationsEndpoints.d.ts b/dist/cjs/endpoints/RecommendationsEndpoints.d.ts
453
-
index ddd71517d997daee270a15e60782d6bd29fa3a6a..cf864f5fa1f48da6fc836df78a3a19e70eece0c5 100644
454
-
--- a/dist/cjs/endpoints/RecommendationsEndpoints.d.ts
455
-
+++ b/dist/cjs/endpoints/RecommendationsEndpoints.d.ts
456
-
@@ -1,8 +1,8 @@
457
-
import type { Genres, Track } from '../types.js';
458
-
import EndpointsBase from './EndpointsBase.js';
459
-
export default class RecommendationsEndpoints extends EndpointsBase {
460
-
- get(request: RecommendationsRequestRequiredArguments | RecommendationsRequest): Promise<RecommendationsResponse>;
461
-
- genreSeeds(): Promise<Genres>;
462
-
+ get(request: RecommendationsRequestRequiredArguments | RecommendationsRequest): Promise<RecommendationsResponse | null>;
463
-
+ genreSeeds(): Promise<Genres | null>;
464
-
}
465
-
export interface RecommendationsRequestRequiredArguments {
466
-
seed_artists?: string[];
467
-
diff --git a/dist/cjs/endpoints/SearchEndpoints.d.ts b/dist/cjs/endpoints/SearchEndpoints.d.ts
468
-
index 71fcb99808b86ed766d459b11d09a2ad5080408d..6656f5bc3f1c94612ed548b96693692c7859cdf0 100644
469
-
--- a/dist/cjs/endpoints/SearchEndpoints.d.ts
470
-
+++ b/dist/cjs/endpoints/SearchEndpoints.d.ts
471
-
@@ -1,8 +1,8 @@
472
-
import type { ItemTypes, Market, MaxInt, SearchResults } from '../types.js';
473
-
import EndpointsBase from './EndpointsBase.js';
474
-
export interface SearchExecutionFunction {
475
-
- <const T extends readonly ItemTypes[]>(q: string, type: T, market?: Market, limit?: MaxInt<50>, offset?: number, include_external?: string): Promise<SearchResults<T>>;
476
-
+ <const T extends readonly ItemTypes[]>(q: string, type: T, market?: Market, limit?: MaxInt<50>, offset?: number, include_external?: string): Promise<SearchResults<T> | null>;
477
-
}
478
-
export default class SearchEndpoints extends EndpointsBase {
479
-
- execute<const T extends readonly ItemTypes[]>(q: string, type: T, market?: Market, limit?: MaxInt<50>, offset?: number, include_external?: string): Promise<SearchResults<T>>;
480
-
+ execute<const T extends readonly ItemTypes[]>(q: string, type: T, market?: Market, limit?: MaxInt<50>, offset?: number, include_external?: string): Promise<SearchResults<T> | null>;
481
-
}
482
-
diff --git a/dist/cjs/endpoints/ShowsEndpoints.d.ts b/dist/cjs/endpoints/ShowsEndpoints.d.ts
483
-
index 41b64a4de6399faa92e28aec51b977cddd06d00b..4e6fe35b6161bf21820819775281600f74a23325 100644
484
-
--- a/dist/cjs/endpoints/ShowsEndpoints.d.ts
485
-
+++ b/dist/cjs/endpoints/ShowsEndpoints.d.ts
486
-
@@ -3,5 +3,5 @@ import EndpointsBase from './EndpointsBase.js';
487
-
export default class ShowsEndpoints extends EndpointsBase {
488
-
get(id: string, market: Market): Promise<Show>;
489
-
get(ids: string[], market: Market): Promise<Show[]>;
490
-
- episodes(id: string, market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedEpisode>>;
491
-
+ episodes(id: string, market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedEpisode> | null>;
492
-
}
493
-
diff --git a/dist/cjs/endpoints/ShowsEndpoints.js b/dist/cjs/endpoints/ShowsEndpoints.js
494
-
index fe5565df19dc961e1a238e07847d230e3d4d27e6..4864a186e753748e85544e36da09f90d2c20e3b6 100644
495
-
--- a/dist/cjs/endpoints/ShowsEndpoints.js
496
-
+++ b/dist/cjs/endpoints/ShowsEndpoints.js
497
-
@@ -13,6 +13,8 @@ class ShowsEndpoints extends EndpointsBase_js_1.default {
498
-
// TODO: only returns 50, validate here
499
-
const params = this.paramsFor({ ids: idOrIds, market });
500
-
const response = await this.getRequest(`shows${params}`);
501
-
+ if (!response)
502
-
+ return response;
503
-
return response.shows;
504
-
}
505
-
episodes(id, market, limit, offset) {
506
180
diff --git a/dist/cjs/endpoints/ShowsEndpoints.js.map b/dist/cjs/endpoints/ShowsEndpoints.js.map
507
-
index 4b4438eaaa344bbe5161c18ce31a25dd0a007e19..bc822b62ea5a1c3f4d733c89eb61f321bdfc849c 100644
181
+
index 4b4438eaaa344bbe5161c18ce31a25dd0a007e19..1cc228ddceafcfb3551c3431b2401a99cdd2f747 100644
508
182
--- a/dist/cjs/endpoints/ShowsEndpoints.js.map
509
183
+++ b/dist/cjs/endpoints/ShowsEndpoints.js.map
510
184
@@ -1 +1 @@
511
185
-{"version":3,"file":"ShowsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/ShowsEndpoints.ts"],"names":[],"mappings":";;;;;AACA,0EAA+C;AAE/C,MAAqB,cAAe,SAAQ,0BAAa;IAI9C,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAc;QACvD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;YACzC,OAAO,IAAI,CAAC,UAAU,CAAO,SAAS,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;SAC7D;QAED,uCAAuC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAQ,QAAQ,MAAM,EAAE,CAAC,CAAC;QAChE,OAAO,QAAQ,CAAC,KAAK,CAAC;IAC1B,CAAC;IAEM,QAAQ,CAAC,EAAU,EAAE,MAAe,EAAE,KAAkB,EAAE,MAAe;QAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QACxD,OAAO,IAAI,CAAC,UAAU,CAA0B,SAAS,EAAE,YAAY,MAAM,EAAE,CAAC,CAAC;IACrF,CAAC;CACJ;AApBD,iCAoBC"}
512
186
\ No newline at end of file
513
-
+{"version":3,"file":"ShowsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/ShowsEndpoints.ts"],"names":[],"mappings":";;;;;AACA,0EAA+C;AAE/C,MAAqB,cAAe,SAAQ,0BAAa;IAI9C,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAc;QACvD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;YACzC,OAAO,IAAI,CAAC,UAAU,CAAO,SAAS,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,uCAAuC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAQ,QAAQ,MAAM,EAAE,CAAC,CAAC;QAChE,IAAI,CAAC,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC/B,OAAO,QAAQ,CAAC,KAAK,CAAC;IAC1B,CAAC;IAEM,QAAQ,CAAC,EAAU,EAAE,MAAe,EAAE,KAAkB,EAAE,MAAe;QAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QACxD,OAAO,IAAI,CAAC,UAAU,CAA0B,SAAS,EAAE,YAAY,MAAM,EAAE,CAAC,CAAC;IACrF,CAAC;CACJ;AArBD,iCAqBC"}
187
+
+{"version":3,"file":"ShowsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/ShowsEndpoints.ts"],"names":[],"mappings":";;;;;AACA,0EAA+C;AAE/C,MAAqB,cAAe,SAAQ,0BAAa;IAI9C,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAc;QACvD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;YACzC,OAAO,IAAI,CAAC,UAAU,CAAO,SAAS,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,uCAAuC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAQ,QAAQ,MAAM,EAAE,CAAC,CAAC;QAChE,OAAO,QAAQ,CAAC,KAAK,CAAC;IAC1B,CAAC;IAEM,QAAQ,CAAC,EAAU,EAAE,MAAe,EAAE,KAAkB,EAAE,MAAe;QAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QACxD,OAAO,IAAI,CAAC,UAAU,CAA0B,SAAS,EAAE,YAAY,MAAM,EAAE,CAAC,CAAC;IACrF,CAAC;CACJ;AApBD,iCAoBC"}
514
188
\ No newline at end of file
515
-
diff --git a/dist/cjs/endpoints/TracksEndpoints.d.ts b/dist/cjs/endpoints/TracksEndpoints.d.ts
516
-
index 5a2811cbe7365ec4e81823f69046dea8141941de..7a8109f3f656be9ed76e4f781e83343c85a907d7 100644
517
-
--- a/dist/cjs/endpoints/TracksEndpoints.d.ts
518
-
+++ b/dist/cjs/endpoints/TracksEndpoints.d.ts
519
-
@@ -5,5 +5,5 @@ export default class TracksEndpoints extends EndpointsBase {
520
-
get(ids: string[], market?: Market): Promise<Track[]>;
521
-
audioFeatures(id: string): Promise<AudioFeatures>;
522
-
audioFeatures(ids: string[]): Promise<AudioFeatures[]>;
523
-
- audioAnalysis(id: string): Promise<AudioAnalysis>;
524
-
+ audioAnalysis(id: string): Promise<AudioAnalysis | null>;
525
-
}
526
-
diff --git a/dist/cjs/endpoints/TracksEndpoints.js b/dist/cjs/endpoints/TracksEndpoints.js
527
-
index ff233256c9f33dba91583197a8b5ef27e21f470d..b2979f790208db343d83ef929994ec5fe2d30dc9 100644
528
-
--- a/dist/cjs/endpoints/TracksEndpoints.js
529
-
+++ b/dist/cjs/endpoints/TracksEndpoints.js
530
-
@@ -13,6 +13,8 @@ class TracksEndpoints extends EndpointsBase_js_1.default {
531
-
const params = this.paramsFor({ ids: idOrIds, market });
532
-
// TODO: only returns top 20, validate here
533
-
const response = await this.getRequest(`tracks${params}`);
534
-
+ if (!response)
535
-
+ return response;
536
-
return response.tracks;
537
-
}
538
-
async audioFeatures(idOrIds) {
539
-
@@ -21,6 +23,8 @@ class TracksEndpoints extends EndpointsBase_js_1.default {
540
-
}
541
-
const params = this.paramsFor({ ids: idOrIds });
542
-
const response = await this.getRequest(`audio-features${params}`);
543
-
+ if (!response)
544
-
+ return response;
545
-
return response.audio_features;
546
-
}
547
-
audioAnalysis(id) {
548
189
diff --git a/dist/cjs/endpoints/TracksEndpoints.js.map b/dist/cjs/endpoints/TracksEndpoints.js.map
549
-
index 4a7e10a5243a977c350f671555dabed75ecb6bea..2b87ede72498b34c2bf5eed23e422b56610daff6 100644
190
+
index 4a7e10a5243a977c350f671555dabed75ecb6bea..d3a3d4c9ea19af96f1f0bc95ed4a32fe51015ab4 100644
550
191
--- a/dist/cjs/endpoints/TracksEndpoints.js.map
551
192
+++ b/dist/cjs/endpoints/TracksEndpoints.js.map
552
193
@@ -1 +1 @@
553
194
-{"version":3,"file":"TracksEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/TracksEndpoints.ts"],"names":[],"mappings":";;;;;AACA,0EAA+C;AAE/C,MAAqB,eAAgB,SAAQ,0BAAa;IAI/C,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAe;QACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAQ,UAAU,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;SAC/D;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAS,SAAS,MAAM,EAAE,CAAC,CAAC;QAClE,OAAO,QAAQ,CAAC,MAAM,CAAC;IAC3B,CAAC;IAIM,KAAK,CAAC,aAAa,CAAC,OAA0B;QACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,OAAO,IAAI,CAAC,UAAU,CAAgB,kBAAkB,OAAO,EAAE,CAAC,CAAC;SACtE;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAA0B,iBAAiB,MAAM,EAAE,CAAC,CAAC;QAC3F,OAAO,QAAQ,CAAC,cAAc,CAAC;IACnC,CAAC;IAEM,aAAa,CAAC,EAAU;QAC3B,OAAO,IAAI,CAAC,UAAU,CAAgB,kBAAkB,EAAE,EAAE,CAAC,CAAC;IAClE,CAAC;CAEJ;AA/BD,kCA+BC"}
554
195
\ No newline at end of file
555
-
+{"version":3,"file":"TracksEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/TracksEndpoints.ts"],"names":[],"mappings":";;;;;AACA,0EAA+C;AAE/C,MAAqB,eAAgB,SAAQ,0BAAa;IAI/C,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAe;QACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAQ,UAAU,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAS,SAAS,MAAM,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC/B,OAAO,QAAQ,CAAC,MAAM,CAAC;IAC3B,CAAC;IAIM,KAAK,CAAC,aAAa,CAAC,OAA0B;QACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,UAAU,CAAgB,kBAAkB,OAAO,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAA0B,iBAAiB,MAAM,EAAE,CAAC,CAAC;QAC3F,IAAI,CAAC,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC/B,OAAO,QAAQ,CAAC,cAAc,CAAC;IACnC,CAAC;IAEM,aAAa,CAAC,EAAU;QAC3B,OAAO,IAAI,CAAC,UAAU,CAAgB,kBAAkB,EAAE,EAAE,CAAC,CAAC;IAClE,CAAC;CAEJ;AAjCD,kCAiCC"}
196
+
+{"version":3,"file":"TracksEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/TracksEndpoints.ts"],"names":[],"mappings":";;;;;AACA,0EAA+C;AAE/C,MAAqB,eAAgB,SAAQ,0BAAa;IAI/C,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAe;QACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAQ,UAAU,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAS,SAAS,MAAM,EAAE,CAAC,CAAC;QAClE,OAAO,QAAQ,CAAC,MAAM,CAAC;IAC3B,CAAC;IAIM,KAAK,CAAC,aAAa,CAAC,OAA0B;QACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,UAAU,CAAgB,kBAAkB,OAAO,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAA0B,iBAAiB,MAAM,EAAE,CAAC,CAAC;QAC3F,OAAO,QAAQ,CAAC,cAAc,CAAC;IACnC,CAAC;IAEM,aAAa,CAAC,EAAU;QAC3B,OAAO,IAAI,CAAC,UAAU,CAAgB,kBAAkB,EAAE,EAAE,CAAC,CAAC;IAClE,CAAC;CAEJ;AA/BD,kCA+BC"}
197
+
\ No newline at end of file
198
+
diff --git a/dist/cjs/index.d.ts b/dist/cjs/index.d.ts
199
+
index fbf77964cdd33a0bac5c37ad35e2b1af18d95cd4..44ddaef876d324384ab51d28b5a83300d3be84e7 100644
200
+
--- a/dist/cjs/index.d.ts
201
+
+++ b/dist/cjs/index.d.ts
202
+
@@ -12,7 +12,8 @@ import DocumentLocationRedirectionStrategy from "./redirection/DocumentLocationR
203
+
import DefaultResponseValidator from "./responsevalidation/DefaultResponseValidator.js";
204
+
import DefaultResponseDeserializer from "./serialization/DefaultResponseDeserializer.js";
205
+
import { Scopes } from "./Scopes.js";
206
+
+import ProvidedAccessTokenStrategy from "./auth/ProvidedAccessTokenStrategy.js";
207
+
import { emptyAccessToken } from "./auth/IAuthStrategy.js";
208
+
-export { SpotifyApi, AuthorizationCodeWithPKCEStrategy, ClientCredentialsStrategy, InMemoryCachingStrategy, LocalStorageCachingStrategy, GenericCache, ConsoleLoggingErrorHandler, NoOpErrorHandler, DocumentLocationRedirectionStrategy, DefaultResponseValidator, DefaultResponseDeserializer, Scopes, emptyAccessToken };
209
+
+export { SpotifyApi, AuthorizationCodeWithPKCEStrategy, ClientCredentialsStrategy, InMemoryCachingStrategy, LocalStorageCachingStrategy, GenericCache, ConsoleLoggingErrorHandler, NoOpErrorHandler, DocumentLocationRedirectionStrategy, DefaultResponseValidator, DefaultResponseDeserializer, Scopes, ProvidedAccessTokenStrategy, emptyAccessToken, };
210
+
export type * from "./types.js";
211
+
-export type { IAuthStrategy, ICacheStore, };
212
+
+export type { IAuthStrategy, ICacheStore };
213
+
diff --git a/dist/cjs/index.js b/dist/cjs/index.js
214
+
index 8a61bc1e3b1d350548a56297763db57b348cf036..7fa6b7fe124d083df5e433bf9ca062431b9a931a 100644
215
+
--- a/dist/cjs/index.js
216
+
+++ b/dist/cjs/index.js
217
+
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
218
+
return (mod && mod.__esModule) ? mod : { "default": mod };
219
+
};
220
+
Object.defineProperty(exports, "__esModule", { value: true });
221
+
-exports.emptyAccessToken = exports.Scopes = exports.DefaultResponseDeserializer = exports.DefaultResponseValidator = exports.DocumentLocationRedirectionStrategy = exports.NoOpErrorHandler = exports.ConsoleLoggingErrorHandler = exports.GenericCache = exports.LocalStorageCachingStrategy = exports.InMemoryCachingStrategy = exports.ClientCredentialsStrategy = exports.AuthorizationCodeWithPKCEStrategy = exports.SpotifyApi = void 0;
222
+
+exports.emptyAccessToken = exports.ProvidedAccessTokenStrategy = exports.Scopes = exports.DefaultResponseDeserializer = exports.DefaultResponseValidator = exports.DocumentLocationRedirectionStrategy = exports.NoOpErrorHandler = exports.ConsoleLoggingErrorHandler = exports.GenericCache = exports.LocalStorageCachingStrategy = exports.InMemoryCachingStrategy = exports.ClientCredentialsStrategy = exports.AuthorizationCodeWithPKCEStrategy = exports.SpotifyApi = void 0;
223
+
const SpotifyApi_js_1 = require("./SpotifyApi.js");
224
+
Object.defineProperty(exports, "SpotifyApi", { enumerable: true, get: function () { return SpotifyApi_js_1.SpotifyApi; } });
225
+
const AuthorizationCodeWithPKCEStrategy_js_1 = __importDefault(require("./auth/AuthorizationCodeWithPKCEStrategy.js"));
226
+
@@ -28,6 +28,8 @@ const DefaultResponseDeserializer_js_1 = __importDefault(require("./serializatio
227
+
exports.DefaultResponseDeserializer = DefaultResponseDeserializer_js_1.default;
228
+
const Scopes_js_1 = require("./Scopes.js");
229
+
Object.defineProperty(exports, "Scopes", { enumerable: true, get: function () { return Scopes_js_1.Scopes; } });
230
+
+const ProvidedAccessTokenStrategy_js_1 = __importDefault(require("./auth/ProvidedAccessTokenStrategy.js"));
231
+
+exports.ProvidedAccessTokenStrategy = ProvidedAccessTokenStrategy_js_1.default;
232
+
const IAuthStrategy_js_1 = require("./auth/IAuthStrategy.js");
233
+
Object.defineProperty(exports, "emptyAccessToken", { enumerable: true, get: function () { return IAuthStrategy_js_1.emptyAccessToken; } });
234
+
//# sourceMappingURL=index.js.map
235
+
\ No newline at end of file
236
+
diff --git a/dist/cjs/index.js.map b/dist/cjs/index.js.map
237
+
index 46aff6b589a7a9b2ba5c22bae770313f827ee9d3..158f74fc9607ace092aa7a1e4cabb2e4cc234957 100644
238
+
--- a/dist/cjs/index.js.map
239
+
+++ b/dist/cjs/index.js.map
240
+
@@ -1 +1 @@
241
+
-{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,mDAA6C;AAiBzC,2FAjBK,0BAAU,OAiBL;AAhBd,uHAA4F;AAiBxF,4CAjBG,8CAAiC,CAiBH;AAhBrC,uGAA4E;AAiBxE,oCAjBG,sCAAyB,CAiBH;AAf7B,sGAA2E;AAgBvE,kCAhBG,oCAAuB,CAgBH;AAf3B,8GAAmF;AAgB/E,sCAhBG,wCAA2B,CAgBH;AAd/B,gFAAqD;AAejD,uBAfG,yBAAY,CAeH;AAdhB,kHAAuF;AAenF,qCAfG,uCAA0B,CAeH;AAd9B,8FAAmE;AAe/D,2BAfG,6BAAgB,CAeH;AAdpB,kIAAuG;AAenG,8CAfG,gDAAmC,CAeH;AAdvC,mHAAwF;AAepF,mCAfG,qCAAwB,CAeH;AAd5B,oHAAyF;AAerF,sCAfG,wCAA2B,CAeH;AAd/B,2CAAqC;AAejC,uFAfK,kBAAM,OAeL;AAdV,8DAA2D;AAevD,iGAfK,mCAAgB,OAeL"}
556
242
\ No newline at end of file
557
-
diff --git a/dist/cjs/endpoints/UsersEndpoints.d.ts b/dist/cjs/endpoints/UsersEndpoints.d.ts
558
-
index 613633e0d2cf885fbc0aca7a67855b67dbcc465e..172bf9cf6f6d69e2fad97b578ef487d28e34f90f 100644
559
-
--- a/dist/cjs/endpoints/UsersEndpoints.d.ts
560
-
+++ b/dist/cjs/endpoints/UsersEndpoints.d.ts
561
-
@@ -1,5 +1,5 @@
562
-
import type { User } from '../types.js';
563
-
import EndpointsBase from './EndpointsBase.js';
564
-
export default class UsersEndpoints extends EndpointsBase {
565
-
- profile(userId: string): Promise<User>;
566
-
+ profile(userId: string): Promise<User | null>;
567
-
}
243
+
+{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,mDAA6C;AAkB3C,2FAlBO,0BAAU,OAkBP;AAjBZ,uHAA4F;AAkB1F,4CAlBK,8CAAiC,CAkBL;AAjBnC,uGAA4E;AAkB1E,oCAlBK,sCAAyB,CAkBL;AAhB3B,sGAA2E;AAiBzE,kCAjBK,oCAAuB,CAiBL;AAhBzB,8GAAmF;AAiBjF,sCAjBK,wCAA2B,CAiBL;AAf7B,gFAAqD;AAgBnD,uBAhBK,yBAAY,CAgBL;AAfd,kHAAuF;AAgBrF,qCAhBK,uCAA0B,CAgBL;AAf5B,8FAAmE;AAgBjE,2BAhBK,6BAAgB,CAgBL;AAflB,kIAAuG;AAgBrG,8CAhBK,gDAAmC,CAgBL;AAfrC,mHAAwF;AAgBtF,mCAhBK,qCAAwB,CAgBL;AAf1B,oHAAyF;AAgBvF,sCAhBK,wCAA2B,CAgBL;AAf7B,2CAAqC;AAgBnC,uFAhBO,kBAAM,OAgBP;AAfR,2GAAgF;AAgB9E,sCAhBK,wCAA2B,CAgBL;AAf7B,8DAA2D;AAgBzD,iGAhBO,mCAAgB,OAgBP"}
244
+
\ No newline at end of file
568
245
diff --git a/dist/cjs/responsevalidation/DefaultResponseValidator.js.map b/dist/cjs/responsevalidation/DefaultResponseValidator.js.map
569
246
index 068804c9b81eb0a8b14280e3cac9ae1f978d788f..183a8e3201157d54088092006c84a3502f752ba4 100644
570
247
--- a/dist/cjs/responsevalidation/DefaultResponseValidator.js.map
···
583
260
\ No newline at end of file
584
261
+{"version":3,"file":"DefaultResponseDeserializer.js","sourceRoot":"","sources":["../../../src/serialization/DefaultResponseDeserializer.ts"],"names":[],"mappings":";;AAEA,MAAqB,2BAA2B;IACrC,KAAK,CAAC,WAAW,CAAc,QAAkB;QACpD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAEnC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC9B,OAAO,IAAmB,CAAC;QAC/B,CAAC;QAED,OAAO,IAAmB,CAAC;IAC/B,CAAC;CACJ;AAXD,8CAWC"}
585
262
\ No newline at end of file
586
-
diff --git a/dist/mjs/SpotifyApi.d.ts b/dist/mjs/SpotifyApi.d.ts
587
-
index cf5eff3cb728065892287539b2a85e2fe16b283b..fe3c2a037f4e47e6c748753a5661261552cfcc1b 100644
588
-
--- a/dist/mjs/SpotifyApi.d.ts
589
-
+++ b/dist/mjs/SpotifyApi.d.ts
590
-
@@ -35,7 +35,7 @@ export declare class SpotifyApi {
591
-
search: SearchExecutionFunction;
592
-
currentUser: CurrentUserEndpoints;
593
-
constructor(authentication: IAuthStrategy, config?: SdkOptions);
594
-
- makeRequest<TReturnType>(method: "GET" | "POST" | "PUT" | "DELETE", url: string, body?: any, contentType?: string | undefined): Promise<TReturnType>;
595
-
+ makeRequest<TReturnType>(method: "GET" | "POST" | "PUT" | "DELETE", url: string, body?: any, contentType?: string | undefined): Promise<TReturnType | null>;
596
-
private initializeSdk;
597
-
switchAuthenticationStrategy(authentication: IAuthStrategy): void;
598
-
/**
599
263
diff --git a/dist/mjs/SpotifyApi.js.map b/dist/mjs/SpotifyApi.js.map
600
264
index e98086ce346896a304fce6450801e17c0ec79b2a..8a04aacb1823ed6fbc8fb4d5ce9a7050ad0e7754 100644
601
265
--- a/dist/mjs/SpotifyApi.js.map
···
668
332
\ No newline at end of file
669
333
+{"version":3,"file":"GenericCache.js","sourceRoot":"","sources":["../../../src/caching/GenericCache.ts"],"names":[],"mappings":"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"}
670
334
\ No newline at end of file
671
-
diff --git a/dist/mjs/endpoints/AlbumsEndpoints.d.ts b/dist/mjs/endpoints/AlbumsEndpoints.d.ts
672
-
index 18274fea2c934cd17f8ca87d551477cf8bda5291..bed7d9e02f1e65693b5f6772e78463a52ef442a8 100644
673
-
--- a/dist/mjs/endpoints/AlbumsEndpoints.d.ts
674
-
+++ b/dist/mjs/endpoints/AlbumsEndpoints.d.ts
675
-
@@ -3,5 +3,5 @@ import EndpointsBase from './EndpointsBase.js';
676
-
export default class AlbumsEndpoints extends EndpointsBase {
677
-
get(id: string, market?: Market): Promise<Album>;
678
-
get(ids: string[], market?: Market): Promise<Album[]>;
679
-
- tracks(albumId: string, market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedTrack>>;
680
-
+ tracks(albumId: string, market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedTrack> | null>;
681
-
}
682
-
diff --git a/dist/mjs/endpoints/AlbumsEndpoints.js b/dist/mjs/endpoints/AlbumsEndpoints.js
683
-
index f93c182f9ab3a47c25db61a5cc896b65b89c249d..1b761c1b125b704e5c6fe48ba278ceb999f34192 100644
684
-
--- a/dist/mjs/endpoints/AlbumsEndpoints.js
685
-
+++ b/dist/mjs/endpoints/AlbumsEndpoints.js
686
-
@@ -9,6 +9,8 @@ export default class AlbumsEndpoints extends EndpointsBase {
687
-
const params = this.paramsFor({ ids: idOrIds, market });
688
-
// TODO: only returns top 20, validate here
689
-
const response = await this.getRequest(`albums${params}`);
690
-
+ if (!response)
691
-
+ return response;
692
-
return response.albums;
693
-
}
694
-
tracks(albumId, market, limit, offset) {
695
335
diff --git a/dist/mjs/endpoints/AlbumsEndpoints.js.map b/dist/mjs/endpoints/AlbumsEndpoints.js.map
696
-
index e0b9429b4a0a7bcf28635430262b0345c40938b2..07be0dc89ec1e4dcb7020fb0e8474f13b7712a36 100644
336
+
index e0b9429b4a0a7bcf28635430262b0345c40938b2..2b89fc1b01507a7230d7c891bda9e407d6ffb445 100644
697
337
--- a/dist/mjs/endpoints/AlbumsEndpoints.js.map
698
338
+++ b/dist/mjs/endpoints/AlbumsEndpoints.js.map
699
339
@@ -1 +1 @@
700
340
-{"version":3,"file":"AlbumsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/AlbumsEndpoints.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,aAAa;IAI/C,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAe;QACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAQ,UAAU,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;YACzE,OAAO,KAAK,CAAC;SAChB;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAS,SAAS,MAAM,EAAE,CAAC,CAAC;QAClE,OAAO,QAAQ,CAAC,MAAM,CAAC;IAC3B,CAAC;IAEM,MAAM,CAAC,OAAe,EAAE,MAAe,EAAE,KAAkB,EAAE,MAAe;QAC/E,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,UAAU,CAAwB,UAAU,OAAO,UAAU,MAAM,EAAE,CAAC,CAAC;IACvF,CAAC;CACJ"}
701
341
\ No newline at end of file
702
-
+{"version":3,"file":"AlbumsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/AlbumsEndpoints.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,aAAa;IAI/C,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAe;QACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAQ,UAAU,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;YACzE,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAS,SAAS,MAAM,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC/B,OAAO,QAAQ,CAAC,MAAM,CAAC;IAC3B,CAAC;IAEM,MAAM,CAAC,OAAe,EAAE,MAAe,EAAE,KAAkB,EAAE,MAAe;QAC/E,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,UAAU,CAAwB,UAAU,OAAO,UAAU,MAAM,EAAE,CAAC,CAAC;IACvF,CAAC;CACJ"}
342
+
+{"version":3,"file":"AlbumsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/AlbumsEndpoints.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,aAAa;IAI/C,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAe;QACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAQ,UAAU,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;YACzE,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAS,SAAS,MAAM,EAAE,CAAC,CAAC;QAClE,OAAO,QAAQ,CAAC,MAAM,CAAC;IAC3B,CAAC;IAEM,MAAM,CAAC,OAAe,EAAE,MAAe,EAAE,KAAkB,EAAE,MAAe;QAC/E,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,UAAU,CAAwB,UAAU,OAAO,UAAU,MAAM,EAAE,CAAC,CAAC;IACvF,CAAC;CACJ"}
703
343
\ No newline at end of file
704
-
diff --git a/dist/mjs/endpoints/ArtistsEndpoints.d.ts b/dist/mjs/endpoints/ArtistsEndpoints.d.ts
705
-
index 4b5237b7acbc95486893d7384fb6adcdf71ee74a..8bdba8fcbc5a9c45deb1a49580764c7cbbd1cd7b 100644
706
-
--- a/dist/mjs/endpoints/ArtistsEndpoints.d.ts
707
-
+++ b/dist/mjs/endpoints/ArtistsEndpoints.d.ts
708
-
@@ -3,7 +3,7 @@ import EndpointsBase from "./EndpointsBase.js";
709
-
export default class ArtistsEndpoints extends EndpointsBase {
710
-
get(id: string): Promise<Artist>;
711
-
get(ids: string[]): Promise<Artist[]>;
712
-
- albums(id: string, includeGroups?: string, market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedAlbum>>;
713
-
- topTracks(id: string, market: Market): Promise<TopTracksResult>;
714
-
- relatedArtists(id: string): Promise<Artists>;
715
-
+ albums(id: string, includeGroups?: string, market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedAlbum> | null>;
716
-
+ topTracks(id: string, market: Market): Promise<TopTracksResult | null>;
717
-
+ relatedArtists(id: string): Promise<Artists | null>;
718
-
}
719
-
diff --git a/dist/mjs/endpoints/ArtistsEndpoints.js b/dist/mjs/endpoints/ArtistsEndpoints.js
720
-
index ab7fe438b8946ba19b545ba7c7fea4a3d021b7f2..8c786497cde5010bc4558712eaee1b271017f1c2 100644
721
-
--- a/dist/mjs/endpoints/ArtistsEndpoints.js
722
-
+++ b/dist/mjs/endpoints/ArtistsEndpoints.js
723
-
@@ -7,6 +7,8 @@ export default class ArtistsEndpoints extends EndpointsBase {
724
-
}
725
-
const params = this.paramsFor({ ids: idOrIds });
726
-
const response = await this.getRequest(`artists${params}`);
727
-
+ if (!response)
728
-
+ return response;
729
-
return response.artists;
730
-
}
731
-
albums(id, includeGroups, market, limit, offset) {
732
344
diff --git a/dist/mjs/endpoints/ArtistsEndpoints.js.map b/dist/mjs/endpoints/ArtistsEndpoints.js.map
733
-
index 033e2a97bc6d715d348326791260fc2303addd1d..c83be3b97ed6fac3630a5bf9928193102e6f78d5 100644
345
+
index 033e2a97bc6d715d348326791260fc2303addd1d..f662e72b69a48f1e5929bf8f1a25b599b6984161 100644
734
346
--- a/dist/mjs/endpoints/ArtistsEndpoints.js.map
735
347
+++ b/dist/mjs/endpoints/ArtistsEndpoints.js.map
736
348
@@ -1 +1 @@
737
349
-{"version":3,"file":"ArtistsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/ArtistsEndpoints.ts"],"names":[],"mappings":"AAUA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,aAAa;IAGhD,KAAK,CAAC,GAAG,CAAC,OAA0B;QACvC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAS,WAAW,OAAO,EAAE,CAAC,CAAC;YAC7D,OAAO,MAAM,CAAC;SACjB;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAU,UAAU,MAAM,EAAE,CAAC,CAAC;QACpE,OAAO,QAAQ,CAAC,OAAO,CAAC;IAC5B,CAAC;IAEM,MAAM,CACT,EAAU,EACV,aAAsB,EACtB,MAAe,EACf,KAAkB,EAClB,MAAe;QAEf,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC;YAC1B,cAAc,EAAE,aAAa;YAC7B,MAAM;YACN,KAAK;YACL,MAAM;SACT,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,UAAU,CAClB,WAAW,EAAE,UAAU,MAAM,EAAE,CAClC,CAAC;IACN,CAAC;IAEM,SAAS,CAAC,EAAU,EAAE,MAAc;QACvC,+FAA+F;QAC/F,0BAA0B;QAE1B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC,UAAU,CAClB,WAAW,EAAE,cAAc,MAAM,EAAE,CACtC,CAAC;IACN,CAAC;IAEM,cAAc,CAAC,EAAU;QAC5B,OAAO,IAAI,CAAC,UAAU,CAAU,WAAW,EAAE,kBAAkB,CAAC,CAAC;IACrE,CAAC;CACJ"}
738
350
\ No newline at end of file
739
-
+{"version":3,"file":"ArtistsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/ArtistsEndpoints.ts"],"names":[],"mappings":"AAUA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,aAAa;IAGhD,KAAK,CAAC,GAAG,CAAC,OAA0B;QACvC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAS,WAAW,OAAO,EAAE,CAAC,CAAC;YAC7D,OAAO,MAAM,CAAC;QAClB,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAU,UAAU,MAAM,EAAE,CAAC,CAAC;QACpE,IAAI,CAAC,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC/B,OAAO,QAAQ,CAAC,OAAO,CAAC;IAC5B,CAAC;IAEM,MAAM,CACT,EAAU,EACV,aAAsB,EACtB,MAAe,EACf,KAAkB,EAClB,MAAe;QAEf,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC;YAC1B,cAAc,EAAE,aAAa;YAC7B,MAAM;YACN,KAAK;YACL,MAAM;SACT,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,UAAU,CAClB,WAAW,EAAE,UAAU,MAAM,EAAE,CAClC,CAAC;IACN,CAAC;IAEM,SAAS,CAAC,EAAU,EAAE,MAAc;QACvC,+FAA+F;QAC/F,0BAA0B;QAE1B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC,UAAU,CAClB,WAAW,EAAE,cAAc,MAAM,EAAE,CACtC,CAAC;IACN,CAAC;IAEM,cAAc,CAAC,EAAU;QAC5B,OAAO,IAAI,CAAC,UAAU,CAAU,WAAW,EAAE,kBAAkB,CAAC,CAAC;IACrE,CAAC;CACJ"}
351
+
+{"version":3,"file":"ArtistsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/ArtistsEndpoints.ts"],"names":[],"mappings":"AAUA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,aAAa;IAGhD,KAAK,CAAC,GAAG,CAAC,OAA0B;QACvC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAS,WAAW,OAAO,EAAE,CAAC,CAAC;YAC7D,OAAO,MAAM,CAAC;QAClB,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAU,UAAU,MAAM,EAAE,CAAC,CAAC;QACpE,OAAO,QAAQ,CAAC,OAAO,CAAC;IAC5B,CAAC;IAEM,MAAM,CACT,EAAU,EACV,aAAsB,EACtB,MAAe,EACf,KAAkB,EAClB,MAAe;QAEf,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC;YAC1B,cAAc,EAAE,aAAa;YAC7B,MAAM;YACN,KAAK;YACL,MAAM;SACT,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,UAAU,CAClB,WAAW,EAAE,UAAU,MAAM,EAAE,CAClC,CAAC;IACN,CAAC;IAEM,SAAS,CAAC,EAAU,EAAE,MAAc;QACvC,+FAA+F;QAC/F,0BAA0B;QAE1B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC,UAAU,CAClB,WAAW,EAAE,cAAc,MAAM,EAAE,CACtC,CAAC;IACN,CAAC;IAEM,cAAc,CAAC,EAAU;QAC5B,OAAO,IAAI,CAAC,UAAU,CAAU,WAAW,EAAE,kBAAkB,CAAC,CAAC;IACrE,CAAC;CACJ"}
740
352
\ No newline at end of file
741
-
diff --git a/dist/mjs/endpoints/AudiobooksEndpoints.d.ts b/dist/mjs/endpoints/AudiobooksEndpoints.d.ts
742
-
index cfe18b338a678454c67cba7086ef4b292e0ab54a..33f2577aa2b4050e49f22b3bdca75b8ba1993fdd 100644
743
-
--- a/dist/mjs/endpoints/AudiobooksEndpoints.d.ts
744
-
+++ b/dist/mjs/endpoints/AudiobooksEndpoints.d.ts
745
-
@@ -3,5 +3,5 @@ import EndpointsBase from './EndpointsBase.js';
746
-
export default class AudiobooksEndpoints extends EndpointsBase {
747
-
get(id: string, market?: Market): Promise<Audiobook>;
748
-
get(ids: string[], market?: Market): Promise<Audiobook[]>;
749
-
- getAudiobookChapters(id: string, market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedChapter>>;
750
-
+ getAudiobookChapters(id: string, market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedChapter> | null>;
751
-
}
752
-
diff --git a/dist/mjs/endpoints/AudiobooksEndpoints.js b/dist/mjs/endpoints/AudiobooksEndpoints.js
753
-
index 3e7854353fff37736fd746eb929285dda337486f..571cb4acbc2f4554115ae2604837a9afd842e241 100644
754
-
--- a/dist/mjs/endpoints/AudiobooksEndpoints.js
755
-
+++ b/dist/mjs/endpoints/AudiobooksEndpoints.js
756
-
@@ -7,6 +7,8 @@ export default class AudiobooksEndpoints extends EndpointsBase {
757
-
}
758
-
const params = this.paramsFor({ ids: idOrIds, market });
759
-
const response = await this.getRequest(`audiobooks${params}`);
760
-
+ if (!response)
761
-
+ return response;
762
-
return response.audiobooks;
763
-
}
764
-
getAudiobookChapters(id, market, limit, offset) {
765
353
diff --git a/dist/mjs/endpoints/AudiobooksEndpoints.js.map b/dist/mjs/endpoints/AudiobooksEndpoints.js.map
766
-
index 916809ef07644ef1d5ce8b1c9feb0e5d7ff747b0..07c830a5638b4fa623b78a8d389bf75cb0f6dbc0 100644
354
+
index 916809ef07644ef1d5ce8b1c9feb0e5d7ff747b0..cbae806d0e71e1b3d050abc26e910189f9d46aad 100644
767
355
--- a/dist/mjs/endpoints/AudiobooksEndpoints.js.map
768
356
+++ b/dist/mjs/endpoints/AudiobooksEndpoints.js.map
769
357
@@ -1 +1 @@
770
358
-{"version":3,"file":"AudiobooksEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/AudiobooksEndpoints.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,aAAa;IAGnD,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAe;QACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAY,cAAc,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;SACvE;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAa,aAAa,MAAM,EAAE,CAAC,CAAC;QAC1E,OAAO,QAAQ,CAAC,UAAU,CAAC;IAC/B,CAAC;IAEM,oBAAoB,CAAC,EAAU,EAAE,MAAe,EAAE,KAAkB,EAAE,MAAe;QACxF,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,UAAU,CAA0B,cAAc,EAAE,YAAY,MAAM,EAAE,CAAC,CAAC;IAC1F,CAAC;CAEJ"}
771
359
\ No newline at end of file
772
-
+{"version":3,"file":"AudiobooksEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/AudiobooksEndpoints.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,aAAa;IAGnD,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAe;QACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAY,cAAc,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QACxE,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAa,aAAa,MAAM,EAAE,CAAC,CAAC;QAC1E,IAAI,CAAC,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC/B,OAAO,QAAQ,CAAC,UAAU,CAAC;IAC/B,CAAC;IAEM,oBAAoB,CAAC,EAAU,EAAE,MAAe,EAAE,KAAkB,EAAE,MAAe;QACxF,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,UAAU,CAA0B,cAAc,EAAE,YAAY,MAAM,EAAE,CAAC,CAAC;IAC1F,CAAC;CAEJ"}
360
+
+{"version":3,"file":"AudiobooksEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/AudiobooksEndpoints.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,aAAa;IAGnD,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAe;QACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAY,cAAc,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QACxE,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAa,aAAa,MAAM,EAAE,CAAC,CAAC;QAC1E,OAAO,QAAQ,CAAC,UAAU,CAAC;IAC/B,CAAC;IAEM,oBAAoB,CAAC,EAAU,EAAE,MAAe,EAAE,KAAkB,EAAE,MAAe;QACxF,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,UAAU,CAA0B,cAAc,EAAE,YAAY,MAAM,EAAE,CAAC,CAAC;IAC1F,CAAC;CAEJ"}
773
361
\ No newline at end of file
774
-
diff --git a/dist/mjs/endpoints/BrowseEndpoints.d.ts b/dist/mjs/endpoints/BrowseEndpoints.d.ts
775
-
index 7f998995a6b7cdb8c31dcfc9d0284826cf9b8a90..87b59ecd24941b849bd43e472ab8421cbba0e0d3 100644
776
-
--- a/dist/mjs/endpoints/BrowseEndpoints.d.ts
777
-
+++ b/dist/mjs/endpoints/BrowseEndpoints.d.ts
778
-
@@ -1,9 +1,9 @@
779
-
import type { CountryCodeA2, MaxInt, Categories, Category, NewReleases, FeaturedPlaylists } from '../types.js';
780
-
import EndpointsBase from './EndpointsBase.js';
781
-
export default class BrowseEndpoints extends EndpointsBase {
782
-
- getCategories(country?: CountryCodeA2, locale?: string, limit?: MaxInt<50>, offset?: number): Promise<Categories>;
783
-
- getCategory(categoryId: string, country?: CountryCodeA2, locale?: string): Promise<Category>;
784
-
- getNewReleases(country?: string, limit?: MaxInt<50>, offset?: number): Promise<NewReleases>;
785
-
- getFeaturedPlaylists(country?: CountryCodeA2, locale?: string, timestamp?: string, limit?: MaxInt<50>, offset?: number): Promise<FeaturedPlaylists>;
786
-
- getPlaylistsForCategory(category_id: string, country?: CountryCodeA2, limit?: MaxInt<50>, offset?: number): Promise<FeaturedPlaylists>;
787
-
+ getCategories(country?: CountryCodeA2, locale?: string, limit?: MaxInt<50>, offset?: number): Promise<Categories | null>;
788
-
+ getCategory(categoryId: string, country?: CountryCodeA2, locale?: string): Promise<Category | null>;
789
-
+ getNewReleases(country?: string, limit?: MaxInt<50>, offset?: number): Promise<NewReleases | null>;
790
-
+ getFeaturedPlaylists(country?: CountryCodeA2, locale?: string, timestamp?: string, limit?: MaxInt<50>, offset?: number): Promise<FeaturedPlaylists | null>;
791
-
+ getPlaylistsForCategory(category_id: string, country?: CountryCodeA2, limit?: MaxInt<50>, offset?: number): Promise<FeaturedPlaylists | null>;
792
-
}
793
-
diff --git a/dist/mjs/endpoints/ChaptersEndpoints.js b/dist/mjs/endpoints/ChaptersEndpoints.js
794
-
index 057eecb900d09464670463c5cb24feb41ff80e4e..6d3e3a846de0f82e683685d3f083356e6ed1a634 100644
795
-
--- a/dist/mjs/endpoints/ChaptersEndpoints.js
796
-
+++ b/dist/mjs/endpoints/ChaptersEndpoints.js
797
-
@@ -8,6 +8,8 @@ export default class ChaptersEndpoints extends EndpointsBase {
798
-
// TODO: Only returns top 50, validate / pre-check here
799
-
const params = this.paramsFor({ ids: idOrIds, market });
800
-
const response = await this.getRequest(`chapters${params}`);
801
-
+ if (!response)
802
-
+ return response;
803
-
return response.chapters;
804
-
}
805
-
}
806
362
diff --git a/dist/mjs/endpoints/ChaptersEndpoints.js.map b/dist/mjs/endpoints/ChaptersEndpoints.js.map
807
-
index d686d3ea29f38e83ebabd541f0ef9fa58f914cd9..4930112f3e0b51baa979cc53721081c717a4598d 100644
363
+
index d686d3ea29f38e83ebabd541f0ef9fa58f914cd9..5889fb7b1d5d40275a93b9432e4fd9de9c3142aa 100644
808
364
--- a/dist/mjs/endpoints/ChaptersEndpoints.js.map
809
365
+++ b/dist/mjs/endpoints/ChaptersEndpoints.js.map
810
366
@@ -1 +1 @@
811
367
-{"version":3,"file":"ChaptersEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/ChaptersEndpoints.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAK/C,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,aAAa;IAGjD,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAqB;QAC9D,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAU,YAAY,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;SACnE;QAED,uDAAuD;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAW,WAAW,MAAM,EAAE,CAAC,CAAC;QACtE,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC7B,CAAC;CACJ"}
812
368
\ No newline at end of file
813
-
+{"version":3,"file":"ChaptersEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/ChaptersEndpoints.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAK/C,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,aAAa;IAGjD,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAqB;QAC9D,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAU,YAAY,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,uDAAuD;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAW,WAAW,MAAM,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC/B,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC7B,CAAC;CACJ"}
369
+
+{"version":3,"file":"ChaptersEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/ChaptersEndpoints.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAK/C,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,aAAa;IAGjD,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAqB;QAC9D,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAU,YAAY,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,uDAAuD;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAW,WAAW,MAAM,EAAE,CAAC,CAAC;QACtE,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC7B,CAAC;CACJ"}
814
370
\ No newline at end of file
815
-
diff --git a/dist/mjs/endpoints/CurrentUserEndpoints.d.ts b/dist/mjs/endpoints/CurrentUserEndpoints.d.ts
816
-
index ef1c96f9bb072d17d9ce2aecfd3ac918c0f268f9..20d31d09d22308a87cb0be7072c2a40937b58206 100644
817
-
--- a/dist/mjs/endpoints/CurrentUserEndpoints.d.ts
818
-
+++ b/dist/mjs/endpoints/CurrentUserEndpoints.d.ts
819
-
@@ -9,47 +9,47 @@ export default class CurrentUserEndpoints extends EndpointsBase {
820
-
shows: CurrentUserShowsEndpoints;
821
-
tracks: CurrentUserTracksEndpoints;
822
-
constructor(api: SpotifyApi);
823
-
- profile(): Promise<UserProfile>;
824
-
- topItems<T extends "artists" | "tracks">(type: T, time_range?: 'short_term' | 'medium_term' | 'long_term', limit?: MaxInt<50>, offset?: number): Promise<Page<T extends "artists" ? Artist : Track>>;
825
-
- followedArtists(after?: string, limit?: MaxInt<50>): Promise<FollowedArtists>;
826
-
+ profile(): Promise<UserProfile | null>;
827
-
+ topItems<T extends "artists" | "tracks">(type: T, time_range?: 'short_term' | 'medium_term' | 'long_term', limit?: MaxInt<50>, offset?: number): Promise<Page<T extends "artists" ? Artist : Track> | null>;
828
-
+ followedArtists(after?: string, limit?: MaxInt<50>): Promise<FollowedArtists | null>;
829
-
followArtistsOrUsers(ids: string[], type: 'artist' | 'user'): Promise<void>;
830
-
unfollowArtistsOrUsers(ids: string[], type: 'artist' | 'user'): Promise<void>;
831
-
- followsArtistsOrUsers(ids: string[], type: 'artist' | 'user'): Promise<boolean[]>;
832
-
+ followsArtistsOrUsers(ids: string[], type: 'artist' | 'user'): Promise<boolean[] | null>;
833
-
}
834
-
declare class CurrentUserAlbumsEndpoints extends EndpointsBase {
835
-
- savedAlbums(limit?: MaxInt<50>, offset?: number, market?: Market): Promise<Page<SavedAlbum>>;
836
-
+ savedAlbums(limit?: MaxInt<50>, offset?: number, market?: Market): Promise<Page<SavedAlbum> | null>;
837
-
saveAlbums(ids: string[]): Promise<void>;
838
-
removeSavedAlbums(ids: string[]): Promise<void>;
839
-
- hasSavedAlbums(ids: string[]): Promise<boolean[]>;
840
-
+ hasSavedAlbums(ids: string[]): Promise<boolean[] | null>;
841
-
}
842
-
declare class CurrentUserAudiobooksEndpoints extends EndpointsBase {
843
-
- savedAudiobooks(limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedAudiobook>>;
844
-
+ savedAudiobooks(limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedAudiobook> | null>;
845
-
saveAudiobooks(ids: string[]): Promise<void>;
846
-
removeSavedAudiobooks(ids: string[]): Promise<void>;
847
-
- hasSavedAudiobooks(ids: string[]): Promise<boolean[]>;
848
-
+ hasSavedAudiobooks(ids: string[]): Promise<boolean[] | null>;
849
-
}
850
-
declare class CurrentUserEpisodesEndpoints extends EndpointsBase {
851
-
- savedEpisodes(market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SavedEpisode>>;
852
-
+ savedEpisodes(market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SavedEpisode> | null>;
853
-
saveEpisodes(ids: string[]): Promise<void>;
854
-
removeSavedEpisodes(ids: string[]): Promise<void>;
855
-
- hasSavedEpisodes(ids: string[]): Promise<boolean[]>;
856
-
+ hasSavedEpisodes(ids: string[]): Promise<boolean[] | null>;
857
-
}
858
-
declare class CurrentUserPlaylistsEndpoints extends EndpointsBase {
859
-
- playlists(limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedPlaylist>>;
860
-
+ playlists(limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedPlaylist> | null>;
861
-
follow(playlist_id: string): Promise<void>;
862
-
unfollow(playlist_id: string): Promise<void>;
863
-
- isFollowing(playlistId: string, ids: string[]): Promise<boolean[]>;
864
-
+ isFollowing(playlistId: string, ids: string[]): Promise<boolean[] | null>;
865
-
}
866
-
declare class CurrentUserShowsEndpoints extends EndpointsBase {
867
-
- savedShows(limit?: MaxInt<50>, offset?: number): Promise<Page<SavedShow>>;
868
-
+ savedShows(limit?: MaxInt<50>, offset?: number): Promise<Page<SavedShow> | null>;
869
-
saveShows(ids: string[]): Promise<unknown>;
870
-
removeSavedShows(ids: string[], market?: Market): Promise<unknown>;
871
-
- hasSavedShow(ids: string[]): Promise<boolean[]>;
872
-
+ hasSavedShow(ids: string[]): Promise<boolean[] | null>;
873
-
}
874
-
declare class CurrentUserTracksEndpoints extends EndpointsBase {
875
-
- savedTracks(limit?: MaxInt<50>, offset?: number, market?: Market): Promise<Page<SavedTrack>>;
876
-
+ savedTracks(limit?: MaxInt<50>, offset?: number, market?: Market): Promise<Page<SavedTrack> | null>;
877
-
saveTracks(ids: string[]): Promise<void>;
878
-
removeSavedTracks(ids: string[]): Promise<void>;
879
-
- hasSavedTracks(ids: string[]): Promise<boolean[]>;
880
-
+ hasSavedTracks(ids: string[]): Promise<boolean[] | null>;
881
-
}
882
-
export {};
883
-
diff --git a/dist/mjs/endpoints/EndpointsBase.d.ts b/dist/mjs/endpoints/EndpointsBase.d.ts
884
-
index c91dff76bfa4664d7a9976f84c98a8e65b08cb70..62e63dac60f91346fae2b6dc121e309df52ba3f3 100644
885
-
--- a/dist/mjs/endpoints/EndpointsBase.d.ts
886
-
+++ b/dist/mjs/endpoints/EndpointsBase.d.ts
887
-
@@ -2,9 +2,9 @@ import { SpotifyApi } from "../SpotifyApi.js";
888
-
export default class EndpointsBase {
889
-
protected api: SpotifyApi;
890
-
constructor(api: SpotifyApi);
891
-
- protected getRequest<TReturnType>(url: string): Promise<TReturnType>;
892
-
- protected postRequest<TReturnType, TBody = unknown>(url: string, body?: TBody, contentType?: string | undefined): Promise<TReturnType>;
893
-
- protected putRequest<TReturnType, TBody = unknown>(url: string, body?: TBody, contentType?: string | undefined): Promise<TReturnType>;
894
-
- protected deleteRequest<TReturnType, TBody = unknown>(url: string, body?: TBody): Promise<TReturnType>;
895
-
+ protected getRequest<TReturnType>(url: string): Promise<TReturnType | null>;
896
-
+ protected postRequest<TReturnType, TBody = unknown>(url: string, body?: TBody, contentType?: string | undefined): Promise<TReturnType | null>;
897
-
+ protected putRequest<TReturnType, TBody = unknown>(url: string, body?: TBody, contentType?: string | undefined): Promise<TReturnType | null>;
898
-
+ protected deleteRequest<TReturnType, TBody = unknown>(url: string, body?: TBody): Promise<TReturnType | null>;
899
-
protected paramsFor(args: any): string;
900
-
}
901
371
diff --git a/dist/mjs/endpoints/EndpointsBase.js.map b/dist/mjs/endpoints/EndpointsBase.js.map
902
372
index e93c0f83790363247c53b09de0fa2fa19523eb6a..ab3c7550cdc23ea60e4aa5503a02f4c4b1cd1a64 100644
903
373
--- a/dist/mjs/endpoints/EndpointsBase.js.map
···
907
377
\ No newline at end of file
908
378
+{"version":3,"file":"EndpointsBase.js","sourceRoot":"","sources":["../../../src/endpoints/EndpointsBase.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,OAAO,aAAa;IACR;IAAtB,YAAsB,GAAe;QAAf,QAAG,GAAH,GAAG,CAAY;IACrC,CAAC;IAES,KAAK,CAAC,UAAU,CAAc,GAAW;QAC/C,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAc,KAAK,EAAE,GAAG,CAAC,CAAC;IAC/D,CAAC;IAES,KAAK,CAAC,WAAW,CAA+B,GAAW,EAAE,IAAY,EAAE,cAAkC,SAAS;QAC5H,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAc,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IACnF,CAAC;IAES,KAAK,CAAC,UAAU,CAA+B,GAAW,EAAE,IAAY,EAAE,cAAkC,SAAS;QAC3H,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAc,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IAClF,CAAC;IAES,KAAK,CAAC,aAAa,CAA+B,GAAW,EAAE,IAAY;QACjF,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAc,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IACxE,CAAC;IAES,SAAS,CAAC,IAAS;QACzB,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,KAAK,IAAI,GAAG,IAAI,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/C,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,EAAE,CAAC;gBACnF,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC7C,CAAC;QACL,CAAC;QACD,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,CAAC;CACJ"}
909
379
\ No newline at end of file
910
-
diff --git a/dist/mjs/endpoints/EpisodesEndpoints.js b/dist/mjs/endpoints/EpisodesEndpoints.js
911
-
index c526dba76d93e55281b093f8ba9762b8b248b1a4..1e301fe0ab04b6a053ca7518027d4e34e135d5ac 100644
912
-
--- a/dist/mjs/endpoints/EpisodesEndpoints.js
913
-
+++ b/dist/mjs/endpoints/EpisodesEndpoints.js
914
-
@@ -7,6 +7,8 @@ export default class EpisodesEndpoints extends EndpointsBase {
915
-
}
916
-
const params = this.paramsFor({ ids: idOrIds, market });
917
-
const response = await this.getRequest(`episodes${params}`);
918
-
+ if (!response)
919
-
+ return response;
920
-
return response.episodes;
921
-
}
922
-
}
923
380
diff --git a/dist/mjs/endpoints/EpisodesEndpoints.js.map b/dist/mjs/endpoints/EpisodesEndpoints.js.map
924
-
index 19c79bb444c2b9e1ad0727be8846d2711ef74a47..678e9c7aebd4344dc960b2bda2674b1c140e0b3e 100644
381
+
index 19c79bb444c2b9e1ad0727be8846d2711ef74a47..858b2e925ab48fa3746b03562c976d435fadfe9b 100644
925
382
--- a/dist/mjs/endpoints/EpisodesEndpoints.js.map
926
383
+++ b/dist/mjs/endpoints/EpisodesEndpoints.js.map
927
384
@@ -1 +1 @@
928
385
-{"version":3,"file":"EpisodesEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/EpisodesEndpoints.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,aAAa;IAIjD,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAc;QACvD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAU,YAAY,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;SACnE;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAW,WAAW,MAAM,EAAE,CAAC,CAAC;QACtE,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC7B,CAAC;CACJ"}
929
386
\ No newline at end of file
930
-
+{"version":3,"file":"EpisodesEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/EpisodesEndpoints.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,aAAa;IAIjD,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAc;QACvD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAU,YAAY,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAW,WAAW,MAAM,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC/B,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC7B,CAAC;CACJ"}
387
+
+{"version":3,"file":"EpisodesEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/EpisodesEndpoints.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,aAAa;IAIjD,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAc;QACvD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAU,YAAY,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAW,WAAW,MAAM,EAAE,CAAC,CAAC;QACtE,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC7B,CAAC;CACJ"}
931
388
\ No newline at end of file
932
-
diff --git a/dist/mjs/endpoints/MarketsEndpoints.d.ts b/dist/mjs/endpoints/MarketsEndpoints.d.ts
933
-
index 4ceb08e53ada5c140d6cba3267e8d60b35586827..cc046b287cf3a12a23cdec477d197319189b0c6b 100644
934
-
--- a/dist/mjs/endpoints/MarketsEndpoints.d.ts
935
-
+++ b/dist/mjs/endpoints/MarketsEndpoints.d.ts
936
-
@@ -1,5 +1,5 @@
937
-
import type { Markets } from '../types.js';
938
-
import EndpointsBase from './EndpointsBase.js';
939
-
export default class MarketsEndpoints extends EndpointsBase {
940
-
- getAvailableMarkets(): Promise<Markets>;
941
-
+ getAvailableMarkets(): Promise<Markets | null>;
942
-
}
943
-
diff --git a/dist/mjs/endpoints/PlayerEndpoints.d.ts b/dist/mjs/endpoints/PlayerEndpoints.d.ts
944
-
index 52792b8fb66f5a4e5056c674a175fb12d9b6c43b..2b6ec0f5e0199cd5d908e63fe6b410fce8c55315 100644
945
-
--- a/dist/mjs/endpoints/PlayerEndpoints.d.ts
946
-
+++ b/dist/mjs/endpoints/PlayerEndpoints.d.ts
947
-
@@ -5,11 +5,11 @@ interface QueryRange {
948
-
type: "before" | "after";
949
-
}
950
-
export default class PlayerEndpoints extends EndpointsBase {
951
-
- getPlaybackState(market?: Market, additional_types?: string): Promise<PlaybackState>;
952
-
- getAvailableDevices(): Promise<Devices>;
953
-
- getCurrentlyPlayingTrack(market?: Market, additional_types?: string): Promise<PlaybackState>;
954
-
- getRecentlyPlayedTracks(limit?: MaxInt<50>, queryRange?: QueryRange): Promise<RecentlyPlayedTracksPage>;
955
-
- getUsersQueue(): Promise<Queue>;
956
-
+ getPlaybackState(market?: Market, additional_types?: string): Promise<PlaybackState | null>;
957
-
+ getAvailableDevices(): Promise<Devices | null>;
958
-
+ getCurrentlyPlayingTrack(market?: Market, additional_types?: string): Promise<PlaybackState | null>;
959
-
+ getRecentlyPlayedTracks(limit?: MaxInt<50>, queryRange?: QueryRange): Promise<RecentlyPlayedTracksPage | null>;
960
-
+ getUsersQueue(): Promise<Queue | null>;
961
-
transferPlayback(device_ids: string[], play?: boolean): Promise<void>;
962
-
startResumePlayback(device_id: string, context_uri?: string, uris?: string[], offset?: object, positionMs?: number): Promise<void>;
963
-
pausePlayback(device_id: string): Promise<void>;
964
389
diff --git a/dist/mjs/endpoints/PlayerEndpoints.js.map b/dist/mjs/endpoints/PlayerEndpoints.js.map
965
390
index 6b1c7937d058d128aa981035117b3fa06d4564cf..015469900dd2ed19f8ab3d962bb6aa469fc65265 100644
966
391
--- a/dist/mjs/endpoints/PlayerEndpoints.js.map
···
971
396
+{"version":3,"file":"PlayerEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/PlayerEndpoints.ts"],"names":[],"mappings":"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"}
972
397
\ No newline at end of file
973
398
diff --git a/dist/mjs/endpoints/PlaylistsEndpoints.d.ts b/dist/mjs/endpoints/PlaylistsEndpoints.d.ts
974
-
index 8760c8c7b8d61681a85537a40d33aafeff8d1cd0..1477d0769fae34f47b34a4d85c46e29337dac979 100644
399
+
index 8760c8c7b8d61681a85537a40d33aafeff8d1cd0..8a439ea2f95f5bdbd5bec4cc9dde867e06d74ec2 100644
975
400
--- a/dist/mjs/endpoints/PlaylistsEndpoints.d.ts
976
401
+++ b/dist/mjs/endpoints/PlaylistsEndpoints.d.ts
977
-
@@ -1,17 +1,16 @@
402
+
@@ -1,4 +1,3 @@
978
403
-/// <reference types="node" />
979
404
import type { Market, Playlist, MaxInt, Page, Track, SnapshotReference, Image, PlaylistedTrack, QueryAdditionalTypes, TrackItem } from '../types.js';
980
405
import EndpointsBase from './EndpointsBase.js';
981
406
export default class PlaylistsEndpoints extends EndpointsBase {
982
-
- getPlaylist<AdditionalTypes extends QueryAdditionalTypes | undefined = undefined>(playlist_id: string, market?: Market, fields?: string, additional_types?: AdditionalTypes): Promise<Playlist<AdditionalTypes extends undefined ? Track : TrackItem>>;
983
-
- getPlaylistItems<AdditionalTypes extends QueryAdditionalTypes | undefined = undefined>(playlist_id: string, market?: Market, fields?: string, limit?: MaxInt<50>, offset?: number, additional_types?: AdditionalTypes): Promise<Page<PlaylistedTrack<AdditionalTypes extends undefined ? Track : TrackItem>>>;
984
-
+ getPlaylist<AdditionalTypes extends QueryAdditionalTypes | undefined = undefined>(playlist_id: string, market?: Market, fields?: string, additional_types?: AdditionalTypes): Promise<Playlist<AdditionalTypes extends undefined ? Track : TrackItem> | null>;
985
-
+ getPlaylistItems<AdditionalTypes extends QueryAdditionalTypes | undefined = undefined>(playlist_id: string, market?: Market, fields?: string, limit?: MaxInt<50>, offset?: number, additional_types?: AdditionalTypes): Promise<Page<PlaylistedTrack<AdditionalTypes extends undefined ? Track : TrackItem>> | null>;
986
-
changePlaylistDetails(playlist_id: string, request: ChangePlaylistDetailsRequest): Promise<void>;
987
-
- movePlaylistItems(playlist_id: string, range_start: number, range_length: number, moveToPosition: number): Promise<SnapshotReference>;
988
-
- updatePlaylistItems(playlist_id: string, request: UpdatePlaylistItemsRequest): Promise<SnapshotReference>;
989
-
+ movePlaylistItems(playlist_id: string, range_start: number, range_length: number, moveToPosition: number): Promise<SnapshotReference | null>;
990
-
+ updatePlaylistItems(playlist_id: string, request: UpdatePlaylistItemsRequest): Promise<SnapshotReference | null>;
991
-
addItemsToPlaylist(playlist_id: string, uris?: string[], position?: number): Promise<void>;
992
-
removeItemsFromPlaylist(playlist_id: string, request: RemovePlaylistItemsRequest): Promise<void>;
993
-
- getUsersPlaylists(user_id: string, limit?: MaxInt<50>, offset?: number): Promise<Page<Playlist<TrackItem>>>;
994
-
- createPlaylist(user_id: string, request: CreatePlaylistRequest): Promise<Playlist<TrackItem>>;
995
-
- getPlaylistCoverImage(playlist_id: string): Promise<Image[]>;
996
-
+ getUsersPlaylists(user_id: string, limit?: MaxInt<50>, offset?: number): Promise<Page<Playlist<TrackItem>> | null>;
997
-
+ createPlaylist(user_id: string, request: CreatePlaylistRequest): Promise<Playlist<TrackItem> | null>;
998
-
+ getPlaylistCoverImage(playlist_id: string): Promise<Image[] | null>;
999
-
addCustomPlaylistCoverImage(playlist_id: string, imageData: Buffer | HTMLImageElement | HTMLCanvasElement | string): Promise<void>;
1000
-
addCustomPlaylistCoverImageFromBase64String(playlist_id: string, base64EncodedJpeg: string): Promise<void>;
1001
-
}
1002
407
diff --git a/dist/mjs/endpoints/PlaylistsEndpoints.js.map b/dist/mjs/endpoints/PlaylistsEndpoints.js.map
1003
408
index 0482d4fe4c4294e273f728a2e5b046420f303a5a..7d15483da9c877cd43a2e33cec89be974d34b55b 100644
1004
409
--- a/dist/mjs/endpoints/PlaylistsEndpoints.js.map
···
1008
413
\ No newline at end of file
1009
414
+{"version":3,"file":"PlaylistsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/PlaylistsEndpoints.ts"],"names":[],"mappings":"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"}
1010
415
\ No newline at end of file
1011
-
diff --git a/dist/mjs/endpoints/RecommendationsEndpoints.d.ts b/dist/mjs/endpoints/RecommendationsEndpoints.d.ts
1012
-
index ddd71517d997daee270a15e60782d6bd29fa3a6a..cf864f5fa1f48da6fc836df78a3a19e70eece0c5 100644
1013
-
--- a/dist/mjs/endpoints/RecommendationsEndpoints.d.ts
1014
-
+++ b/dist/mjs/endpoints/RecommendationsEndpoints.d.ts
1015
-
@@ -1,8 +1,8 @@
1016
-
import type { Genres, Track } from '../types.js';
1017
-
import EndpointsBase from './EndpointsBase.js';
1018
-
export default class RecommendationsEndpoints extends EndpointsBase {
1019
-
- get(request: RecommendationsRequestRequiredArguments | RecommendationsRequest): Promise<RecommendationsResponse>;
1020
-
- genreSeeds(): Promise<Genres>;
1021
-
+ get(request: RecommendationsRequestRequiredArguments | RecommendationsRequest): Promise<RecommendationsResponse | null>;
1022
-
+ genreSeeds(): Promise<Genres | null>;
1023
-
}
1024
-
export interface RecommendationsRequestRequiredArguments {
1025
-
seed_artists?: string[];
1026
-
diff --git a/dist/mjs/endpoints/SearchEndpoints.d.ts b/dist/mjs/endpoints/SearchEndpoints.d.ts
1027
-
index 71fcb99808b86ed766d459b11d09a2ad5080408d..6656f5bc3f1c94612ed548b96693692c7859cdf0 100644
1028
-
--- a/dist/mjs/endpoints/SearchEndpoints.d.ts
1029
-
+++ b/dist/mjs/endpoints/SearchEndpoints.d.ts
1030
-
@@ -1,8 +1,8 @@
1031
-
import type { ItemTypes, Market, MaxInt, SearchResults } from '../types.js';
1032
-
import EndpointsBase from './EndpointsBase.js';
1033
-
export interface SearchExecutionFunction {
1034
-
- <const T extends readonly ItemTypes[]>(q: string, type: T, market?: Market, limit?: MaxInt<50>, offset?: number, include_external?: string): Promise<SearchResults<T>>;
1035
-
+ <const T extends readonly ItemTypes[]>(q: string, type: T, market?: Market, limit?: MaxInt<50>, offset?: number, include_external?: string): Promise<SearchResults<T> | null>;
1036
-
}
1037
-
export default class SearchEndpoints extends EndpointsBase {
1038
-
- execute<const T extends readonly ItemTypes[]>(q: string, type: T, market?: Market, limit?: MaxInt<50>, offset?: number, include_external?: string): Promise<SearchResults<T>>;
1039
-
+ execute<const T extends readonly ItemTypes[]>(q: string, type: T, market?: Market, limit?: MaxInt<50>, offset?: number, include_external?: string): Promise<SearchResults<T> | null>;
1040
-
}
1041
-
diff --git a/dist/mjs/endpoints/ShowsEndpoints.d.ts b/dist/mjs/endpoints/ShowsEndpoints.d.ts
1042
-
index 41b64a4de6399faa92e28aec51b977cddd06d00b..4e6fe35b6161bf21820819775281600f74a23325 100644
1043
-
--- a/dist/mjs/endpoints/ShowsEndpoints.d.ts
1044
-
+++ b/dist/mjs/endpoints/ShowsEndpoints.d.ts
1045
-
@@ -3,5 +3,5 @@ import EndpointsBase from './EndpointsBase.js';
1046
-
export default class ShowsEndpoints extends EndpointsBase {
1047
-
get(id: string, market: Market): Promise<Show>;
1048
-
get(ids: string[], market: Market): Promise<Show[]>;
1049
-
- episodes(id: string, market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedEpisode>>;
1050
-
+ episodes(id: string, market?: Market, limit?: MaxInt<50>, offset?: number): Promise<Page<SimplifiedEpisode> | null>;
1051
-
}
1052
-
diff --git a/dist/mjs/endpoints/ShowsEndpoints.js b/dist/mjs/endpoints/ShowsEndpoints.js
1053
-
index d19128c3c9ba72d5a968bb19d9e5b9d4863194e3..88e6701f007445bcc75c233490adf6d0a27a18db 100644
1054
-
--- a/dist/mjs/endpoints/ShowsEndpoints.js
1055
-
+++ b/dist/mjs/endpoints/ShowsEndpoints.js
1056
-
@@ -8,6 +8,8 @@ export default class ShowsEndpoints extends EndpointsBase {
1057
-
// TODO: only returns 50, validate here
1058
-
const params = this.paramsFor({ ids: idOrIds, market });
1059
-
const response = await this.getRequest(`shows${params}`);
1060
-
+ if (!response)
1061
-
+ return response;
1062
-
return response.shows;
1063
-
}
1064
-
episodes(id, market, limit, offset) {
1065
416
diff --git a/dist/mjs/endpoints/ShowsEndpoints.js.map b/dist/mjs/endpoints/ShowsEndpoints.js.map
1066
-
index 3f1eb890cfd275ad7bb8439691256c8b9b6a7971..5e87e6f5390575a5d65f6b3fc430c087ffba03e1 100644
417
+
index 3f1eb890cfd275ad7bb8439691256c8b9b6a7971..6e1fbe7ad3e743c9461aec546320d427df1f8ac8 100644
1067
418
--- a/dist/mjs/endpoints/ShowsEndpoints.js.map
1068
419
+++ b/dist/mjs/endpoints/ShowsEndpoints.js.map
1069
420
@@ -1 +1 @@
1070
421
-{"version":3,"file":"ShowsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/ShowsEndpoints.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,aAAa;IAI9C,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAc;QACvD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;YACzC,OAAO,IAAI,CAAC,UAAU,CAAO,SAAS,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;SAC7D;QAED,uCAAuC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAQ,QAAQ,MAAM,EAAE,CAAC,CAAC;QAChE,OAAO,QAAQ,CAAC,KAAK,CAAC;IAC1B,CAAC;IAEM,QAAQ,CAAC,EAAU,EAAE,MAAe,EAAE,KAAkB,EAAE,MAAe;QAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QACxD,OAAO,IAAI,CAAC,UAAU,CAA0B,SAAS,EAAE,YAAY,MAAM,EAAE,CAAC,CAAC;IACrF,CAAC;CACJ"}
1071
422
\ No newline at end of file
1072
-
+{"version":3,"file":"ShowsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/ShowsEndpoints.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,aAAa;IAI9C,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAc;QACvD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;YACzC,OAAO,IAAI,CAAC,UAAU,CAAO,SAAS,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,uCAAuC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAQ,QAAQ,MAAM,EAAE,CAAC,CAAC;QAChE,IAAI,CAAC,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC/B,OAAO,QAAQ,CAAC,KAAK,CAAC;IAC1B,CAAC;IAEM,QAAQ,CAAC,EAAU,EAAE,MAAe,EAAE,KAAkB,EAAE,MAAe;QAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QACxD,OAAO,IAAI,CAAC,UAAU,CAA0B,SAAS,EAAE,YAAY,MAAM,EAAE,CAAC,CAAC;IACrF,CAAC;CACJ"}
423
+
+{"version":3,"file":"ShowsEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/ShowsEndpoints.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,aAAa;IAI9C,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAc;QACvD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;YACzC,OAAO,IAAI,CAAC,UAAU,CAAO,SAAS,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,uCAAuC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAQ,QAAQ,MAAM,EAAE,CAAC,CAAC;QAChE,OAAO,QAAQ,CAAC,KAAK,CAAC;IAC1B,CAAC;IAEM,QAAQ,CAAC,EAAU,EAAE,MAAe,EAAE,KAAkB,EAAE,MAAe;QAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QACxD,OAAO,IAAI,CAAC,UAAU,CAA0B,SAAS,EAAE,YAAY,MAAM,EAAE,CAAC,CAAC;IACrF,CAAC;CACJ"}
1073
424
\ No newline at end of file
1074
-
diff --git a/dist/mjs/endpoints/TracksEndpoints.d.ts b/dist/mjs/endpoints/TracksEndpoints.d.ts
1075
-
index 5a2811cbe7365ec4e81823f69046dea8141941de..7a8109f3f656be9ed76e4f781e83343c85a907d7 100644
1076
-
--- a/dist/mjs/endpoints/TracksEndpoints.d.ts
1077
-
+++ b/dist/mjs/endpoints/TracksEndpoints.d.ts
1078
-
@@ -5,5 +5,5 @@ export default class TracksEndpoints extends EndpointsBase {
1079
-
get(ids: string[], market?: Market): Promise<Track[]>;
1080
-
audioFeatures(id: string): Promise<AudioFeatures>;
1081
-
audioFeatures(ids: string[]): Promise<AudioFeatures[]>;
1082
-
- audioAnalysis(id: string): Promise<AudioAnalysis>;
1083
-
+ audioAnalysis(id: string): Promise<AudioAnalysis | null>;
1084
-
}
1085
-
diff --git a/dist/mjs/endpoints/TracksEndpoints.js b/dist/mjs/endpoints/TracksEndpoints.js
1086
-
index 203d45d432745ef347824e4b03a7b6fcfd5743e1..29eff54383e6ce4a7ce5b5b7293d4566f91ffc0e 100644
1087
-
--- a/dist/mjs/endpoints/TracksEndpoints.js
1088
-
+++ b/dist/mjs/endpoints/TracksEndpoints.js
1089
-
@@ -8,6 +8,8 @@ export default class TracksEndpoints extends EndpointsBase {
1090
-
const params = this.paramsFor({ ids: idOrIds, market });
1091
-
// TODO: only returns top 20, validate here
1092
-
const response = await this.getRequest(`tracks${params}`);
1093
-
+ if (!response)
1094
-
+ return response;
1095
-
return response.tracks;
1096
-
}
1097
-
async audioFeatures(idOrIds) {
1098
-
@@ -16,6 +18,8 @@ export default class TracksEndpoints extends EndpointsBase {
1099
-
}
1100
-
const params = this.paramsFor({ ids: idOrIds });
1101
-
const response = await this.getRequest(`audio-features${params}`);
1102
-
+ if (!response)
1103
-
+ return response;
1104
-
return response.audio_features;
1105
-
}
1106
-
audioAnalysis(id) {
1107
425
diff --git a/dist/mjs/endpoints/TracksEndpoints.js.map b/dist/mjs/endpoints/TracksEndpoints.js.map
1108
-
index 979607aae926efc41a44f301b96ff9419a4b3b65..bf8fa7c3ca4506d867e073438df2fbd668b627c0 100644
426
+
index 979607aae926efc41a44f301b96ff9419a4b3b65..c84a80853f5e023d29ad53a0b4449e137f9b9841 100644
1109
427
--- a/dist/mjs/endpoints/TracksEndpoints.js.map
1110
428
+++ b/dist/mjs/endpoints/TracksEndpoints.js.map
1111
429
@@ -1 +1 @@
1112
430
-{"version":3,"file":"TracksEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/TracksEndpoints.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,aAAa;IAI/C,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAe;QACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAQ,UAAU,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;SAC/D;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAS,SAAS,MAAM,EAAE,CAAC,CAAC;QAClE,OAAO,QAAQ,CAAC,MAAM,CAAC;IAC3B,CAAC;IAIM,KAAK,CAAC,aAAa,CAAC,OAA0B;QACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC7B,OAAO,IAAI,CAAC,UAAU,CAAgB,kBAAkB,OAAO,EAAE,CAAC,CAAC;SACtE;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAA0B,iBAAiB,MAAM,EAAE,CAAC,CAAC;QAC3F,OAAO,QAAQ,CAAC,cAAc,CAAC;IACnC,CAAC;IAEM,aAAa,CAAC,EAAU;QAC3B,OAAO,IAAI,CAAC,UAAU,CAAgB,kBAAkB,EAAE,EAAE,CAAC,CAAC;IAClE,CAAC;CAEJ"}
1113
431
\ No newline at end of file
1114
-
+{"version":3,"file":"TracksEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/TracksEndpoints.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,aAAa;IAI/C,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAe;QACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAQ,UAAU,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAS,SAAS,MAAM,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC/B,OAAO,QAAQ,CAAC,MAAM,CAAC;IAC3B,CAAC;IAIM,KAAK,CAAC,aAAa,CAAC,OAA0B;QACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,UAAU,CAAgB,kBAAkB,OAAO,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAA0B,iBAAiB,MAAM,EAAE,CAAC,CAAC;QAC3F,IAAI,CAAC,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC/B,OAAO,QAAQ,CAAC,cAAc,CAAC;IACnC,CAAC;IAEM,aAAa,CAAC,EAAU;QAC3B,OAAO,IAAI,CAAC,UAAU,CAAgB,kBAAkB,EAAE,EAAE,CAAC,CAAC;IAClE,CAAC;CAEJ"}
432
+
+{"version":3,"file":"TracksEndpoints.js","sourceRoot":"","sources":["../../../src/endpoints/TracksEndpoints.ts"],"names":[],"mappings":"AACA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,aAAa;IAI/C,KAAK,CAAC,GAAG,CAAC,OAA0B,EAAE,MAAe;QACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC1C,OAAO,IAAI,CAAC,UAAU,CAAQ,UAAU,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAS,SAAS,MAAM,EAAE,CAAC,CAAC;QAClE,OAAO,QAAQ,CAAC,MAAM,CAAC;IAC3B,CAAC;IAIM,KAAK,CAAC,aAAa,CAAC,OAA0B;QACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,UAAU,CAAgB,kBAAkB,OAAO,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;QAChD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAA0B,iBAAiB,MAAM,EAAE,CAAC,CAAC;QAC3F,OAAO,QAAQ,CAAC,cAAc,CAAC;IACnC,CAAC;IAEM,aAAa,CAAC,EAAU;QAC3B,OAAO,IAAI,CAAC,UAAU,CAAgB,kBAAkB,EAAE,EAAE,CAAC,CAAC;IAClE,CAAC;CAEJ"}
433
+
\ No newline at end of file
434
+
diff --git a/dist/mjs/index.d.ts b/dist/mjs/index.d.ts
435
+
index fbf77964cdd33a0bac5c37ad35e2b1af18d95cd4..44ddaef876d324384ab51d28b5a83300d3be84e7 100644
436
+
--- a/dist/mjs/index.d.ts
437
+
+++ b/dist/mjs/index.d.ts
438
+
@@ -12,7 +12,8 @@ import DocumentLocationRedirectionStrategy from "./redirection/DocumentLocationR
439
+
import DefaultResponseValidator from "./responsevalidation/DefaultResponseValidator.js";
440
+
import DefaultResponseDeserializer from "./serialization/DefaultResponseDeserializer.js";
441
+
import { Scopes } from "./Scopes.js";
442
+
+import ProvidedAccessTokenStrategy from "./auth/ProvidedAccessTokenStrategy.js";
443
+
import { emptyAccessToken } from "./auth/IAuthStrategy.js";
444
+
-export { SpotifyApi, AuthorizationCodeWithPKCEStrategy, ClientCredentialsStrategy, InMemoryCachingStrategy, LocalStorageCachingStrategy, GenericCache, ConsoleLoggingErrorHandler, NoOpErrorHandler, DocumentLocationRedirectionStrategy, DefaultResponseValidator, DefaultResponseDeserializer, Scopes, emptyAccessToken };
445
+
+export { SpotifyApi, AuthorizationCodeWithPKCEStrategy, ClientCredentialsStrategy, InMemoryCachingStrategy, LocalStorageCachingStrategy, GenericCache, ConsoleLoggingErrorHandler, NoOpErrorHandler, DocumentLocationRedirectionStrategy, DefaultResponseValidator, DefaultResponseDeserializer, Scopes, ProvidedAccessTokenStrategy, emptyAccessToken, };
446
+
export type * from "./types.js";
447
+
-export type { IAuthStrategy, ICacheStore, };
448
+
+export type { IAuthStrategy, ICacheStore };
449
+
diff --git a/dist/mjs/index.js b/dist/mjs/index.js
450
+
index b850ca13517ccfc7df23ea9655f26075c9d06e92..88008269940e3448565381716765aad8e8102e41 100644
451
+
--- a/dist/mjs/index.js
452
+
+++ b/dist/mjs/index.js
453
+
@@ -10,6 +10,7 @@ import DocumentLocationRedirectionStrategy from "./redirection/DocumentLocationR
454
+
import DefaultResponseValidator from "./responsevalidation/DefaultResponseValidator.js";
455
+
import DefaultResponseDeserializer from "./serialization/DefaultResponseDeserializer.js";
456
+
import { Scopes } from "./Scopes.js";
457
+
+import ProvidedAccessTokenStrategy from "./auth/ProvidedAccessTokenStrategy.js";
458
+
import { emptyAccessToken } from "./auth/IAuthStrategy.js";
459
+
-export { SpotifyApi, AuthorizationCodeWithPKCEStrategy, ClientCredentialsStrategy, InMemoryCachingStrategy, LocalStorageCachingStrategy, GenericCache, ConsoleLoggingErrorHandler, NoOpErrorHandler, DocumentLocationRedirectionStrategy, DefaultResponseValidator, DefaultResponseDeserializer, Scopes, emptyAccessToken };
460
+
+export { SpotifyApi, AuthorizationCodeWithPKCEStrategy, ClientCredentialsStrategy, InMemoryCachingStrategy, LocalStorageCachingStrategy, GenericCache, ConsoleLoggingErrorHandler, NoOpErrorHandler, DocumentLocationRedirectionStrategy, DefaultResponseValidator, DefaultResponseDeserializer, Scopes, ProvidedAccessTokenStrategy, emptyAccessToken, };
461
+
//# sourceMappingURL=index.js.map
462
+
\ No newline at end of file
463
+
diff --git a/dist/mjs/index.js.map b/dist/mjs/index.js.map
464
+
index 5713a86abb96eea14b688db85121fea9a0154532..f10ec14395391f8f9fb580f526620088f9eeffd6 100644
465
+
--- a/dist/mjs/index.js.map
466
+
+++ b/dist/mjs/index.js.map
467
+
@@ -1 +1 @@
468
+
-{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,iCAAiC,MAAM,6CAA6C,CAAC;AAC5F,OAAO,yBAAyB,MAAM,qCAAqC,CAAC;AAE5E,OAAO,uBAAuB,MAAM,sCAAsC,CAAC;AAC3E,OAAO,2BAA2B,MAAM,0CAA0C,CAAC;AAEnF,OAAO,YAAY,MAAM,2BAA2B,CAAC;AACrD,OAAO,0BAA0B,MAAM,+CAA+C,CAAC;AACvF,OAAO,gBAAgB,MAAM,qCAAqC,CAAC;AACnE,OAAO,mCAAmC,MAAM,sDAAsD,CAAC;AACvG,OAAO,wBAAwB,MAAM,kDAAkD,CAAC;AACxF,OAAO,2BAA2B,MAAM,gDAAgD,CAAC;AACzF,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EACH,UAAU,EACV,iCAAiC,EACjC,yBAAyB,EACzB,uBAAuB,EACvB,2BAA2B,EAC3B,YAAY,EACZ,0BAA0B,EAC1B,gBAAgB,EAChB,mCAAmC,EACnC,wBAAwB,EACxB,2BAA2B,EAC3B,MAAM,EACN,gBAAgB,EACnB,CAAA"}
469
+
\ No newline at end of file
470
+
+{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,iCAAiC,MAAM,6CAA6C,CAAC;AAC5F,OAAO,yBAAyB,MAAM,qCAAqC,CAAC;AAE5E,OAAO,uBAAuB,MAAM,sCAAsC,CAAC;AAC3E,OAAO,2BAA2B,MAAM,0CAA0C,CAAC;AAEnF,OAAO,YAAY,MAAM,2BAA2B,CAAC;AACrD,OAAO,0BAA0B,MAAM,+CAA+C,CAAC;AACvF,OAAO,gBAAgB,MAAM,qCAAqC,CAAC;AACnE,OAAO,mCAAmC,MAAM,sDAAsD,CAAC;AACvG,OAAO,wBAAwB,MAAM,kDAAkD,CAAC;AACxF,OAAO,2BAA2B,MAAM,gDAAgD,CAAC;AACzF,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,2BAA2B,MAAM,uCAAuC,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EACL,UAAU,EACV,iCAAiC,EACjC,yBAAyB,EACzB,uBAAuB,EACvB,2BAA2B,EAC3B,YAAY,EACZ,0BAA0B,EAC1B,gBAAgB,EAChB,mCAAmC,EACnC,wBAAwB,EACxB,2BAA2B,EAC3B,MAAM,EACN,2BAA2B,EAC3B,gBAAgB,GACjB,CAAC"}
1115
471
\ No newline at end of file
1116
-
diff --git a/dist/mjs/endpoints/UsersEndpoints.d.ts b/dist/mjs/endpoints/UsersEndpoints.d.ts
1117
-
index 613633e0d2cf885fbc0aca7a67855b67dbcc465e..172bf9cf6f6d69e2fad97b578ef487d28e34f90f 100644
1118
-
--- a/dist/mjs/endpoints/UsersEndpoints.d.ts
1119
-
+++ b/dist/mjs/endpoints/UsersEndpoints.d.ts
1120
-
@@ -1,5 +1,5 @@
1121
-
import type { User } from '../types.js';
1122
-
import EndpointsBase from './EndpointsBase.js';
1123
-
export default class UsersEndpoints extends EndpointsBase {
1124
-
- profile(userId: string): Promise<User>;
1125
-
+ profile(userId: string): Promise<User | null>;
1126
-
}
1127
472
diff --git a/dist/mjs/responsevalidation/DefaultResponseValidator.js.map b/dist/mjs/responsevalidation/DefaultResponseValidator.js.map
1128
473
index 02df457d0327575055c3c1b8ff28eb7ddad93532..9a36ddcdd58aeb0753350e88204064e4f7e5f009 100644
1129
474
--- a/dist/mjs/responsevalidation/DefaultResponseValidator.js.map
···
1142
487
\ No newline at end of file
1143
488
+{"version":3,"file":"DefaultResponseDeserializer.js","sourceRoot":"","sources":["../../../src/serialization/DefaultResponseDeserializer.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,OAAO,2BAA2B;IACrC,KAAK,CAAC,WAAW,CAAc,QAAkB;QACpD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAEnC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC9B,OAAO,IAAmB,CAAC;QAC/B,CAAC;QAED,OAAO,IAAmB,CAAC;IAC/B,CAAC;CACJ"}
1144
489
\ No newline at end of file
1145
-
diff --git a/src/SpotifyApi.ts b/src/SpotifyApi.ts
1146
-
index cc3438644134cdf4ce25456be665def9f0e4bff7..6cb80d473be9ebb70d8eb641a962545e54f27bf4 100644
1147
-
--- a/src/SpotifyApi.ts
1148
-
+++ b/src/SpotifyApi.ts
1149
-
@@ -74,7 +74,7 @@ export class SpotifyApi {
1150
-
this.authenticationStrategy.setConfiguration(this.sdkConfig);
1151
-
}
490
+
diff --git a/src/index.ts b/src/index.ts
491
+
index c930787038206b886c1769a30324c1863f36ad4c..7697be275db7b9f690ea2ac5675358181c944321 100644
492
+
--- a/src/index.ts
493
+
+++ b/src/index.ts
494
+
@@ -12,27 +12,26 @@ import DocumentLocationRedirectionStrategy from "./redirection/DocumentLocationR
495
+
import DefaultResponseValidator from "./responsevalidation/DefaultResponseValidator.js";
496
+
import DefaultResponseDeserializer from "./serialization/DefaultResponseDeserializer.js";
497
+
import { Scopes } from "./Scopes.js";
498
+
+import ProvidedAccessTokenStrategy from "./auth/ProvidedAccessTokenStrategy.js";
499
+
import { emptyAccessToken } from "./auth/IAuthStrategy.js";
1152
500
1153
-
- public async makeRequest<TReturnType>(method: "GET" | "POST" | "PUT" | "DELETE", url: string, body: any = undefined, contentType: string | undefined = undefined): Promise<TReturnType> {
1154
-
+ public async makeRequest<TReturnType>(method: "GET" | "POST" | "PUT" | "DELETE", url: string, body: any = undefined, contentType: string | undefined = undefined): Promise<TReturnType | null> {
1155
-
try {
1156
-
const accessToken = await this.authenticationStrategy.getOrCreateAccessToken();
1157
-
if (isEmptyAccessToken(accessToken)) {
1158
-
diff --git a/src/endpoints/AlbumsEndpoints.ts b/src/endpoints/AlbumsEndpoints.ts
1159
-
index 79311e52dabcb0318bd09600d1bd3de0e70525b0..f5d300eb6aae9d0eb86cfc0e8b18e484a1997b7e 100644
1160
-
--- a/src/endpoints/AlbumsEndpoints.ts
1161
-
+++ b/src/endpoints/AlbumsEndpoints.ts
1162
-
@@ -15,6 +15,7 @@ export default class AlbumsEndpoints extends EndpointsBase {
1163
-
const params = this.paramsFor({ ids: idOrIds, market });
1164
-
// TODO: only returns top 20, validate here
1165
-
const response = await this.getRequest<Albums>(`albums${params}`);
1166
-
+ if (!response) return response;
1167
-
return response.albums;
1168
-
}
1169
-
1170
-
diff --git a/src/endpoints/ArtistsEndpoints.ts b/src/endpoints/ArtistsEndpoints.ts
1171
-
index f1e95ca5ae7bfe7afad48de0efc998fc96abe312..d7cbe4b02baeae866268da2dc0346327a6f3dd0f 100644
1172
-
--- a/src/endpoints/ArtistsEndpoints.ts
1173
-
+++ b/src/endpoints/ArtistsEndpoints.ts
1174
-
@@ -21,6 +21,7 @@ export default class ArtistsEndpoints extends EndpointsBase {
1175
-
1176
-
const params = this.paramsFor({ ids: idOrIds });
1177
-
const response = await this.getRequest<Artists>(`artists${params}`);
1178
-
+ if (!response) return response;
1179
-
return response.artists;
1180
-
}
1181
-
1182
-
diff --git a/src/endpoints/AudiobooksEndpoints.ts b/src/endpoints/AudiobooksEndpoints.ts
1183
-
index ceaa6465119e98c624f777308f90ea1a1e1bc5b5..6620b7e18394f79fb30c28bb6b53b8ed5e4e5220 100644
1184
-
--- a/src/endpoints/AudiobooksEndpoints.ts
1185
-
+++ b/src/endpoints/AudiobooksEndpoints.ts
1186
-
@@ -12,6 +12,7 @@ export default class AudiobooksEndpoints extends EndpointsBase {
1187
-
1188
-
const params = this.paramsFor({ ids: idOrIds, market });
1189
-
const response = await this.getRequest<Audiobooks>(`audiobooks${params}`);
1190
-
+ if (!response) return response;
1191
-
return response.audiobooks;
1192
-
}
1193
-
1194
-
diff --git a/src/endpoints/ChaptersEndpoints.ts b/src/endpoints/ChaptersEndpoints.ts
1195
-
index 80afd92cfc9ed41e74b8fe5e8b31aa9c5c17f8c4..4989c6c70c7990f2c3e96b3c2e206c97bbbf396c 100644
1196
-
--- a/src/endpoints/ChaptersEndpoints.ts
1197
-
+++ b/src/endpoints/ChaptersEndpoints.ts
1198
-
@@ -16,6 +16,7 @@ export default class ChaptersEndpoints extends EndpointsBase {
1199
-
// TODO: Only returns top 50, validate / pre-check here
1200
-
const params = this.paramsFor({ ids: idOrIds, market });
1201
-
const response = await this.getRequest<Chapters>(`chapters${params}`);
1202
-
+ if (!response) return response;
1203
-
return response.chapters;
1204
-
}
1205
-
}
1206
-
diff --git a/src/endpoints/EndpointsBase.ts b/src/endpoints/EndpointsBase.ts
1207
-
index 588270c5581f8d4f617750c8486f77ed942a4ae8..8f1f38b971e23c6e250b1ad0c9d1ff1d9ae7cdbd 100644
1208
-
--- a/src/endpoints/EndpointsBase.ts
1209
-
+++ b/src/endpoints/EndpointsBase.ts
1210
-
@@ -4,19 +4,19 @@ export default class EndpointsBase {
1211
-
constructor(protected api: SpotifyApi) {
1212
-
}
1213
-
1214
-
- protected async getRequest<TReturnType>(url: string): Promise<TReturnType> {
1215
-
+ protected async getRequest<TReturnType>(url: string): Promise<TReturnType | null> {
1216
-
return await this.api.makeRequest<TReturnType>("GET", url);
1217
-
}
1218
-
1219
-
- protected async postRequest<TReturnType, TBody = unknown>(url: string, body?: TBody, contentType: string | undefined = undefined): Promise<TReturnType> {
1220
-
+ protected async postRequest<TReturnType, TBody = unknown>(url: string, body?: TBody, contentType: string | undefined = undefined): Promise<TReturnType | null> {
1221
-
return await this.api.makeRequest<TReturnType>("POST", url, body, contentType);
1222
-
}
1223
-
1224
-
- protected async putRequest<TReturnType, TBody = unknown>(url: string, body?: TBody, contentType: string | undefined = undefined): Promise<TReturnType> {
1225
-
+ protected async putRequest<TReturnType, TBody = unknown>(url: string, body?: TBody, contentType: string | undefined = undefined): Promise<TReturnType | null> {
1226
-
return await this.api.makeRequest<TReturnType>("PUT", url, body, contentType);
1227
-
}
501
+
export {
502
+
- SpotifyApi,
503
+
- AuthorizationCodeWithPKCEStrategy,
504
+
- ClientCredentialsStrategy,
505
+
- InMemoryCachingStrategy,
506
+
- LocalStorageCachingStrategy,
507
+
- GenericCache,
508
+
- ConsoleLoggingErrorHandler,
509
+
- NoOpErrorHandler,
510
+
- DocumentLocationRedirectionStrategy,
511
+
- DefaultResponseValidator,
512
+
- DefaultResponseDeserializer,
513
+
- Scopes,
514
+
- emptyAccessToken
515
+
-}
516
+
+ SpotifyApi,
517
+
+ AuthorizationCodeWithPKCEStrategy,
518
+
+ ClientCredentialsStrategy,
519
+
+ InMemoryCachingStrategy,
520
+
+ LocalStorageCachingStrategy,
521
+
+ GenericCache,
522
+
+ ConsoleLoggingErrorHandler,
523
+
+ NoOpErrorHandler,
524
+
+ DocumentLocationRedirectionStrategy,
525
+
+ DefaultResponseValidator,
526
+
+ DefaultResponseDeserializer,
527
+
+ Scopes,
528
+
+ ProvidedAccessTokenStrategy,
529
+
+ emptyAccessToken,
530
+
+};
1228
531
1229
-
- protected async deleteRequest<TReturnType, TBody = unknown>(url: string, body?: TBody): Promise<TReturnType> {
1230
-
+ protected async deleteRequest<TReturnType, TBody = unknown>(url: string, body?: TBody): Promise<TReturnType | null> {
1231
-
return await this.api.makeRequest<TReturnType>("DELETE", url, body);
1232
-
}
1233
-
1234
-
diff --git a/src/endpoints/EpisodesEndpoints.ts b/src/endpoints/EpisodesEndpoints.ts
1235
-
index c002e872232ccad4056172d02a662c3168f3b180..b19df1797ef9ed84d6f6f89dd488c84b4cfb31ab 100644
1236
-
--- a/src/endpoints/EpisodesEndpoints.ts
1237
-
+++ b/src/endpoints/EpisodesEndpoints.ts
1238
-
@@ -13,6 +13,7 @@ export default class EpisodesEndpoints extends EndpointsBase {
1239
-
1240
-
const params = this.paramsFor({ ids: idOrIds, market });
1241
-
const response = await this.getRequest<Episodes>(`episodes${params}`);
1242
-
+ if (!response) return response;
1243
-
return response.episodes;
1244
-
}
1245
-
}
1246
-
diff --git a/src/endpoints/SearchEndpoints.ts b/src/endpoints/SearchEndpoints.ts
1247
-
index c6d08d27dc979bef80652f1c389e3b8249a670b9..ba788ddd6ddd8809fdf83c040edc78a4fe91c1a9 100644
1248
-
--- a/src/endpoints/SearchEndpoints.ts
1249
-
+++ b/src/endpoints/SearchEndpoints.ts
1250
-
@@ -2,7 +2,7 @@ import type { ItemTypes, Market, MaxInt, SearchResults } from '../types.js';
1251
-
import EndpointsBase from './EndpointsBase.js';
532
+
export type * from "./types.js";
1252
533
1253
-
export interface SearchExecutionFunction {
1254
-
- <const T extends readonly ItemTypes[]>(q: string, type: T, market?: Market, limit?: MaxInt<50>, offset?: number, include_external?: string): Promise<SearchResults<T>>;
1255
-
+ <const T extends readonly ItemTypes[]>(q: string, type: T, market?: Market, limit?: MaxInt<50>, offset?: number, include_external?: string): Promise<SearchResults<T> | null>;
1256
-
}
1257
-
1258
-
export default class SearchEndpoints extends EndpointsBase {
1259
-
diff --git a/src/endpoints/ShowsEndpoints.ts b/src/endpoints/ShowsEndpoints.ts
1260
-
index 664c3a6a82ffd75b0eadbac0092330ba0e19aed1..fd59f795d5b789416e4c25f890ee4b159a972c43 100644
1261
-
--- a/src/endpoints/ShowsEndpoints.ts
1262
-
+++ b/src/endpoints/ShowsEndpoints.ts
1263
-
@@ -14,6 +14,7 @@ export default class ShowsEndpoints extends EndpointsBase {
1264
-
// TODO: only returns 50, validate here
1265
-
const params = this.paramsFor({ ids: idOrIds, market });
1266
-
const response = await this.getRequest<Shows>(`shows${params}`);
1267
-
+ if (!response) return response;
1268
-
return response.shows;
1269
-
}
1270
-
1271
-
diff --git a/src/endpoints/TracksEndpoints.ts b/src/endpoints/TracksEndpoints.ts
1272
-
index c8019773d46cb560c9554482279abd35706b003a..6fbe67410aeef98d38dea2ea3ead491f47391d1c 100644
1273
-
--- a/src/endpoints/TracksEndpoints.ts
1274
-
+++ b/src/endpoints/TracksEndpoints.ts
1275
-
@@ -14,6 +14,7 @@ export default class TracksEndpoints extends EndpointsBase {
1276
-
const params = this.paramsFor({ ids: idOrIds, market });
1277
-
// TODO: only returns top 20, validate here
1278
-
const response = await this.getRequest<Tracks>(`tracks${params}`);
1279
-
+ if (!response) return response;
1280
-
return response.tracks;
1281
-
}
1282
-
1283
-
@@ -25,6 +26,7 @@ export default class TracksEndpoints extends EndpointsBase {
1284
-
}
1285
-
const params = this.paramsFor({ ids: idOrIds });
1286
-
const response = await this.getRequest<AudioFeaturesCollection>(`audio-features${params}`);
1287
-
+ if (!response) return response;
1288
-
return response.audio_features;
1289
-
}
1290
-
534
+
-export type {
535
+
- IAuthStrategy,
536
+
- ICacheStore,
537
+
-}
538
+
+export type { IAuthStrategy, ICacheStore };
+3
-3
pnpm-lock.yaml
+3
-3
pnpm-lock.yaml
···
6
6
7
7
patchedDependencies:
8
8
'@spotify/web-api-ts-sdk':
9
-
hash: ptw4jgazdhouuxg5ym53ts4jam
9
+
hash: bnc3y2fwaac6u2mz36j2lkl57i
10
10
path: patches/@spotify__web-api-ts-sdk.patch
11
11
12
12
importers:
···
18
18
version: 9.3.1(astro@5.12.6(@types/node@24.1.0)(rollup@4.46.2)(typescript@5.8.3))
19
19
'@spotify/web-api-ts-sdk':
20
20
specifier: ^1.2.0
21
-
version: 1.2.0(patch_hash=ptw4jgazdhouuxg5ym53ts4jam)
21
+
version: 1.2.0(patch_hash=bnc3y2fwaac6u2mz36j2lkl57i)
22
22
astro:
23
23
specifier: ^5.12.6
24
24
version: 5.12.6(@types/node@24.1.0)(rollup@4.46.2)(typescript@5.8.3)
···
1903
1903
1904
1904
'@shikijs/vscode-textmate@10.0.2': {}
1905
1905
1906
-
'@spotify/web-api-ts-sdk@1.2.0(patch_hash=ptw4jgazdhouuxg5ym53ts4jam)': {}
1906
+
'@spotify/web-api-ts-sdk@1.2.0(patch_hash=bnc3y2fwaac6u2mz36j2lkl57i)': {}
1907
1907
1908
1908
'@swc/helpers@0.5.17':
1909
1909
dependencies:
+57
-44
src/components/home/playing/spotify/index.ts
+57
-44
src/components/home/playing/spotify/index.ts
···
3
3
*/
4
4
5
5
import { SpotifyApi, type AccessToken } from "@spotify/web-api-ts-sdk";
6
+
import { ProvidedAccessTokenStrategy } from "@spotify/web-api-ts-sdk";
6
7
import { SPOTIFY_CLIENT_ID, SPOTIFY_CLIENT_SECRET } from "astro:env/server";
7
8
8
9
import fs from "node:fs/promises";
9
-
import { isObj } from "/utils";
10
+
import { isObj, throws } from "/utils";
10
11
11
12
/**
12
-
* the refresh_token field is not checked as
13
+
* the refresh_token field is not checked as it might not be returned from the api
13
14
*/
14
15
const isSpotifyAccessToken = (token: any): token is AccessToken =>
15
16
isObj(token) &&
···
20
21
"expires_in" in token &&
21
22
typeof token.expires_in === "number";
22
23
24
+
const reloadAccessToken = async (refresh_token: string) =>
25
+
fetch("https://accounts.spotify.com/api/token", {
26
+
method: "post",
27
+
headers: {
28
+
"content-type": "application/x-www-form-urlencoded",
29
+
Authorization:
30
+
"Basic " +
31
+
Buffer.from(SPOTIFY_CLIENT_ID + ":" + SPOTIFY_CLIENT_SECRET).toString(
32
+
"base64",
33
+
),
34
+
},
35
+
body: new URLSearchParams({
36
+
grant_type: "refresh_token",
37
+
refresh_token: refresh_token,
38
+
}).toString(),
39
+
})
40
+
.then((res) => res.json())
41
+
.then((token) =>
42
+
isSpotifyAccessToken(token)
43
+
? {
44
+
...token,
45
+
// if no refresh_token is provided then insert it
46
+
...(token.refresh_token ? {} : { refresh_token: refresh_token }),
47
+
}
48
+
: console.error("Response was not a valid access token:", token),
49
+
)
50
+
.catch((err) => console.error(err))
51
+
.then((token) =>
52
+
!!token
53
+
? token
54
+
: throws(
55
+
new Error(
56
+
"Could not generate a new access token from the refresh token",
57
+
),
58
+
),
59
+
);
60
+
61
+
/** MAIN LOGIC HERE */
23
62
// try load last known refresh token from file
24
63
const refreshToken = await fs
25
64
.readFile("./.refreshToken", { encoding: "utf-8" })
···
30
69
// if refreshToken is undefined then we dont have a valid one saved, and can request the user obtain one
31
70
// (this could be corruption, failed save, or missing file)
32
71
if (!refreshToken)
33
-
throw new Error(
34
-
"No access token is stored in `./.refreshToken`. Please generate one using the `/callback` endpoint in a dev server.",
35
-
);
72
+
throw "No access token is stored in `./.refreshToken`. Please generate one using the `/callback` endpoint in a dev server.";
36
73
37
-
const accessToken = await fetch("https://accounts.spotify.com/api/token", {
38
-
method: "post",
39
-
40
-
headers: {
41
-
"content-type": "application/x-www-form-urlencoded",
42
-
Authorization:
43
-
"Basic " +
44
-
Buffer.from(SPOTIFY_CLIENT_ID + ":" + SPOTIFY_CLIENT_SECRET).toString(
45
-
"base64",
46
-
),
47
-
},
48
-
49
-
body: new URLSearchParams({
50
-
grant_type: "refresh_token",
51
-
refresh_token: refreshToken,
52
-
}).toString(),
53
-
})
54
-
.then((res) => res.json())
55
-
.then((token) =>
56
-
isSpotifyAccessToken(token)
57
-
? {
58
-
...token,
59
-
// if no refresh_token is provided then insert it
60
-
...(token.refresh_token ? {} : { refresh_token: refreshToken }),
61
-
}
62
-
: console.error("Response was not a valid access token:", token),
63
-
)
64
-
.catch((err) => console.error(err));
74
+
const accessToken = await reloadAccessToken(refreshToken);
65
75
66
76
if (!accessToken)
67
-
throw new Error(
68
-
"Could not generate a new access token from the refresh token",
69
-
);
77
+
throw "Could not generate a new access token from the refresh token";
70
78
71
-
export const sdk = SpotifyApi.withAccessToken(SPOTIFY_CLIENT_ID, accessToken, {
72
-
async afterRequest() {
73
-
const token = await sdk.getAccessToken();
74
-
if (!token) return;
75
-
fs.writeFile("./.refreshToken", token.refresh_token, {
76
-
encoding: "utf-8",
77
-
});
79
+
export const sdk = new SpotifyApi(
80
+
new ProvidedAccessTokenStrategy(SPOTIFY_CLIENT_ID, accessToken, (_, token) =>
81
+
reloadAccessToken(token.refresh_token),
82
+
),
83
+
{
84
+
async afterRequest() {
85
+
const token = await sdk.getAccessToken();
86
+
if (!token) return;
87
+
fs.writeFile("./.refreshToken", token.refresh_token, {
88
+
encoding: "utf-8",
89
+
});
90
+
},
78
91
},
79
-
});
92
+
);