@khang07/zing-mp3-api 1.3.6 → 1.3.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +388 -328
- package/dist/cjs/index.cjs +67 -60
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/esm/index.js +67 -61
- package/dist/esm/index.js.map +1 -1
- package/dist/types/index.d.ts +6 -6
- package/dist/types/types/response.d.ts +5 -5
- package/package.json +3 -2
package/dist/esm/index.js
CHANGED
|
@@ -6,7 +6,6 @@ import { Cookies } from './utils/cookies.js';
|
|
|
6
6
|
import { createSignature } from './utils/encrypt.js';
|
|
7
7
|
import { Lapse } from './utils/lapse.js';
|
|
8
8
|
import { createArtist, createMedia, createSearchMedia, createPlayList, createSearchArtist, createSearchPlayList } from './utils/refined.js';
|
|
9
|
-
import { Readable } from 'node:stream';
|
|
10
9
|
const isURL = (value) => {
|
|
11
10
|
try {
|
|
12
11
|
new URL(value);
|
|
@@ -16,6 +15,7 @@ const isURL = (value) => {
|
|
|
16
15
|
return false;
|
|
17
16
|
}
|
|
18
17
|
};
|
|
18
|
+
const ensureCookies = async (instance) => await instance.get('/');
|
|
19
19
|
class Client {
|
|
20
20
|
static BASE_URL = 'https://zingmp3.vn/';
|
|
21
21
|
static VERSION_URL_V1 = '1.6.34';
|
|
@@ -45,11 +45,18 @@ class Client {
|
|
|
45
45
|
maxHighWaterMark;
|
|
46
46
|
userAgent;
|
|
47
47
|
jar;
|
|
48
|
-
constructor(options
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
48
|
+
constructor(options) {
|
|
49
|
+
const mergedOptions = {
|
|
50
|
+
maxLoad: 1024 * 1024,
|
|
51
|
+
maxHighWaterMark: 16 * 1024,
|
|
52
|
+
userAgent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3',
|
|
53
|
+
jar: new Cookies(),
|
|
54
|
+
...options
|
|
55
|
+
};
|
|
56
|
+
this.maxLoad = mergedOptions.maxLoad;
|
|
57
|
+
this.maxHighWaterMark = mergedOptions.maxHighWaterMark;
|
|
58
|
+
this.userAgent = mergedOptions.userAgent;
|
|
59
|
+
this.jar = mergedOptions.jar;
|
|
53
60
|
this.instance = axios.create({
|
|
54
61
|
baseURL: Client.BASE_URL,
|
|
55
62
|
params: {
|
|
@@ -57,14 +64,12 @@ class Client {
|
|
|
57
64
|
apiKey: Client.API_KEY_V1,
|
|
58
65
|
ctime: this.ctime
|
|
59
66
|
},
|
|
60
|
-
maxRate: this.maxLoad
|
|
61
|
-
headers: {
|
|
62
|
-
'User-Agent': this.userAgent
|
|
63
|
-
}
|
|
67
|
+
maxRate: this.maxLoad
|
|
64
68
|
});
|
|
65
69
|
this.instance.interceptors.request.use(async (options) => {
|
|
66
70
|
const base = options.baseURL ?? '';
|
|
67
71
|
const url = new URL(options.url ?? '/', base).toString();
|
|
72
|
+
options.headers.set('User-Agent', this.userAgent);
|
|
68
73
|
const additionalHeaders = this.jar.applyToHeaders(url);
|
|
69
74
|
for (const [key, value] of Object.entries(additionalHeaders))
|
|
70
75
|
options.headers.set(key, value);
|
|
@@ -78,9 +83,19 @@ class Client {
|
|
|
78
83
|
return response.data;
|
|
79
84
|
});
|
|
80
85
|
}
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
86
|
+
setOptions(options) {
|
|
87
|
+
const mergedOptions = {
|
|
88
|
+
maxLoad: this.maxLoad,
|
|
89
|
+
maxHighWaterMark: this.maxHighWaterMark,
|
|
90
|
+
userAgent: this.userAgent,
|
|
91
|
+
jar: this.jar,
|
|
92
|
+
...options
|
|
93
|
+
};
|
|
94
|
+
this.maxLoad = mergedOptions.maxLoad;
|
|
95
|
+
this.maxHighWaterMark = mergedOptions.maxHighWaterMark;
|
|
96
|
+
this.userAgent = mergedOptions.userAgent;
|
|
97
|
+
this.jar = mergedOptions.jar;
|
|
98
|
+
this.instance.defaults.maxRate = mergedOptions.maxLoad;
|
|
84
99
|
}
|
|
85
100
|
async video(videoID) {
|
|
86
101
|
const value = videoID instanceof URL ? videoID.toString() : videoID;
|
|
@@ -88,7 +103,7 @@ class Client {
|
|
|
88
103
|
throw new Lapse('ID must be a non-empty string', 'ERROR_INVALID_ID');
|
|
89
104
|
try {
|
|
90
105
|
videoID = isURL(value) ? Client.getIDFromURL(value) : value;
|
|
91
|
-
void await this.
|
|
106
|
+
void await ensureCookies(this.instance);
|
|
92
107
|
const response = await this.instance.get(Client.API_VIDEO_PATH, {
|
|
93
108
|
params: {
|
|
94
109
|
id: videoID,
|
|
@@ -96,7 +111,7 @@ class Client {
|
|
|
96
111
|
}
|
|
97
112
|
});
|
|
98
113
|
if (response.err !== 0)
|
|
99
|
-
throw new Lapse('Video could not be found', 'ERROR_VIDEO_NOT_FOUND', response.err
|
|
114
|
+
throw new Lapse('Video could not be found', 'ERROR_VIDEO_NOT_FOUND', response.err);
|
|
100
115
|
const videoURL = response.data?.streaming?.hls?.['720p'] || response.data?.streaming?.hls?.['360p'];
|
|
101
116
|
if (!videoURL || !videoURL.length)
|
|
102
117
|
throw new Lapse('Streaming URL not found', 'ERROR_STREAM_URL_NOT_FOUND');
|
|
@@ -110,9 +125,8 @@ class Client {
|
|
|
110
125
|
return source;
|
|
111
126
|
}
|
|
112
127
|
catch (error) {
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
throw new Lapse('Failed to fetch video stream', 'ERROR_VIDEO_FETCH', axios.isAxiosError(error) ? error.response?.status : void 0, error);
|
|
128
|
+
const lapse = error instanceof Lapse ? error : new Lapse('Failed to fetch video stream', 'ERROR_VIDEO_FETCH', axios.isAxiosError(error) ? error.response?.status : void 0, error);
|
|
129
|
+
throw lapse;
|
|
116
130
|
}
|
|
117
131
|
}
|
|
118
132
|
videoSync(videoID) {
|
|
@@ -161,7 +175,7 @@ class Client {
|
|
|
161
175
|
throw new Lapse('ID must be a non-empty string', 'ERROR_INVALID_ID');
|
|
162
176
|
try {
|
|
163
177
|
musicID = isURL(value) ? Client.getIDFromURL(value) : value;
|
|
164
|
-
void await this.
|
|
178
|
+
void await ensureCookies(this.instance);
|
|
165
179
|
const response = await this.instance.get(Client.API_MUSIC_PATH, {
|
|
166
180
|
params: {
|
|
167
181
|
id: musicID,
|
|
@@ -172,7 +186,7 @@ class Client {
|
|
|
172
186
|
if (response.err === -1150) {
|
|
173
187
|
const retry = async (step, before) => {
|
|
174
188
|
if (step > 3)
|
|
175
|
-
throw new Lapse('Music requested by VIP, PRI', 'ERROR_MUSIC_VIP_ONLY', before ? before.err : void 0
|
|
189
|
+
throw new Lapse('Music requested by VIP, PRI', 'ERROR_MUSIC_VIP_ONLY', before ? before.err : void 0);
|
|
176
190
|
const retryData = await this.instance.get(Client.EXTRA_API_MUSIC_PATH, {
|
|
177
191
|
params: {
|
|
178
192
|
id: musicID,
|
|
@@ -198,9 +212,8 @@ class Client {
|
|
|
198
212
|
return source;
|
|
199
213
|
}
|
|
200
214
|
catch (error) {
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
throw new Lapse('Failed to fetch music stream', 'ERROR_MUSIC_FETCH', axios.isAxiosError(error) ? error.response?.status : void 0, error);
|
|
215
|
+
const lapse = error instanceof Lapse ? error : new Lapse('Failed to fetch music stream', 'ERROR_MUSIC_FETCH', axios.isAxiosError(error) ? error.response?.status : void 0, error);
|
|
216
|
+
throw lapse;
|
|
204
217
|
}
|
|
205
218
|
}
|
|
206
219
|
musicSync(musicID) {
|
|
@@ -247,7 +260,7 @@ class Client {
|
|
|
247
260
|
throw new Lapse('ID must be a non-empty string', 'ERROR_INVALID_ID');
|
|
248
261
|
try {
|
|
249
262
|
playlistID = isURL(value) ? Client.getIDFromURL(value) : value;
|
|
250
|
-
void await this.
|
|
263
|
+
void await ensureCookies(this.instance);
|
|
251
264
|
const response = await this.instance.get(Client.API_PLAYLIST_PATH, {
|
|
252
265
|
params: {
|
|
253
266
|
id: playlistID,
|
|
@@ -259,9 +272,8 @@ class Client {
|
|
|
259
272
|
return createPlayList(response.data);
|
|
260
273
|
}
|
|
261
274
|
catch (error) {
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
throw new Lapse('Failed to fetch playlist', 'ERROR_PLAYLIST_FETCH', axios.isAxiosError(error) ? error.response?.status : void 0, error);
|
|
275
|
+
const lapse = error instanceof Lapse ? error : new Lapse('Failed to fetch playlist', 'ERROR_PLAYLIST_FETCH', axios.isAxiosError(error) ? error.response?.status : void 0, error);
|
|
276
|
+
throw lapse;
|
|
265
277
|
}
|
|
266
278
|
}
|
|
267
279
|
async artist(aliasID) {
|
|
@@ -270,7 +282,7 @@ class Client {
|
|
|
270
282
|
throw new Lapse('ID must be a non-empty string', 'ERROR_INVALID_ID');
|
|
271
283
|
try {
|
|
272
284
|
aliasID = isURL(value) ? Client.getIDFromURL(value) : value;
|
|
273
|
-
void await this.
|
|
285
|
+
void await ensureCookies(this.instance);
|
|
274
286
|
const response = await this.instance.get(Client.API_ARTIST_PATH, {
|
|
275
287
|
params: {
|
|
276
288
|
alias: aliasID,
|
|
@@ -278,15 +290,14 @@ class Client {
|
|
|
278
290
|
}
|
|
279
291
|
});
|
|
280
292
|
if (response.err === -108)
|
|
281
|
-
throw new Lapse('Artist not found', 'ERROR_ARTIST_NOT_FOUND', response.err
|
|
293
|
+
throw new Lapse('Artist not found', 'ERROR_ARTIST_NOT_FOUND', response.err);
|
|
282
294
|
if (response.err !== 0)
|
|
283
|
-
throw new Lapse('Could not fetch artist', 'ERROR_ARTIST_FETCH', response.err
|
|
295
|
+
throw new Lapse('Could not fetch artist', 'ERROR_ARTIST_FETCH', response.err);
|
|
284
296
|
return createArtist(response.data);
|
|
285
297
|
}
|
|
286
298
|
catch (error) {
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
throw new Lapse('Failed to fetch artist', 'ERROR_ARTIST_FETCH', axios.isAxiosError(error) ? error.response?.status : void 0, error);
|
|
299
|
+
const lapse = error instanceof Lapse ? error : new Lapse('Failed to fetch artist', 'ERROR_ARTIST_FETCH', axios.isAxiosError(error) ? error.response?.status : void 0, error);
|
|
300
|
+
throw lapse;
|
|
290
301
|
}
|
|
291
302
|
}
|
|
292
303
|
async mediaDetails(mediaID) {
|
|
@@ -295,7 +306,7 @@ class Client {
|
|
|
295
306
|
throw new Lapse('ID must be a non-empty string', 'ERROR_INVALID_ID');
|
|
296
307
|
try {
|
|
297
308
|
mediaID = isURL(value) ? Client.getIDFromURL(value) : value;
|
|
298
|
-
void await this.
|
|
309
|
+
void await ensureCookies(this.instance);
|
|
299
310
|
const response = await this.instance.get(Client.API_MEDIA_DETAILS_PATH, {
|
|
300
311
|
params: {
|
|
301
312
|
id: mediaID,
|
|
@@ -303,22 +314,21 @@ class Client {
|
|
|
303
314
|
}
|
|
304
315
|
});
|
|
305
316
|
if (response.err === -1023)
|
|
306
|
-
throw new Lapse('Media not found', 'ERROR_MEDIA_NOT_FOUND', response.err
|
|
317
|
+
throw new Lapse('Media not found', 'ERROR_MEDIA_NOT_FOUND', response.err);
|
|
307
318
|
if (response.err !== 0)
|
|
308
|
-
throw new Lapse('Could not fetch media', 'ERROR_MEDIA_FETCH', response.err
|
|
319
|
+
throw new Lapse('Could not fetch media', 'ERROR_MEDIA_FETCH', response.err);
|
|
309
320
|
return createMedia(response.data);
|
|
310
321
|
}
|
|
311
322
|
catch (error) {
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
throw new Lapse('Failed to fetch media', 'ERROR_MEDIA_FETCH', axios.isAxiosError(error) ? error.response?.status : void 0, error);
|
|
323
|
+
const lapse = error instanceof Lapse ? error : new Lapse('Failed to fetch media', 'ERROR_MEDIA_FETCH', axios.isAxiosError(error) ? error.response?.status : void 0, error);
|
|
324
|
+
throw lapse;
|
|
315
325
|
}
|
|
316
326
|
}
|
|
317
327
|
async searchMusic(query) {
|
|
318
328
|
if (typeof query !== 'string' || !query.trim().length)
|
|
319
329
|
throw new Lapse('Query must be a non-empty string', 'ERROR_INVALID_QUERY');
|
|
320
330
|
try {
|
|
321
|
-
void await this.
|
|
331
|
+
void await ensureCookies(this.instance);
|
|
322
332
|
const response = await this.instance.get(Client.API_SEARCH_PATH, {
|
|
323
333
|
params: {
|
|
324
334
|
q: query,
|
|
@@ -329,20 +339,19 @@ class Client {
|
|
|
329
339
|
}
|
|
330
340
|
});
|
|
331
341
|
if (response.err !== 0)
|
|
332
|
-
throw new Lapse('Search could not be fetched', 'ERROR_SEARCH_FAILED', response.err
|
|
333
|
-
return response.data.items.map(createSearchMedia);
|
|
342
|
+
throw new Lapse('Search could not be fetched', 'ERROR_SEARCH_FAILED', response.err);
|
|
343
|
+
return (response.data.items ?? []).map(createSearchMedia);
|
|
334
344
|
}
|
|
335
345
|
catch (error) {
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
throw new Lapse('Search could not be fetch', 'ERROR_SEARCH_FETCH', axios.isAxiosError(error) ? error.response?.status : void 0, error);
|
|
346
|
+
const lapse = error instanceof Lapse ? error : new Lapse('Search could not be fetch', 'ERROR_SEARCH_FETCH', axios.isAxiosError(error) ? error.response?.status : void 0, error);
|
|
347
|
+
throw lapse;
|
|
339
348
|
}
|
|
340
349
|
}
|
|
341
350
|
async searchVideo(query) {
|
|
342
351
|
if (typeof query !== 'string' || !query.trim().length)
|
|
343
352
|
throw new Lapse('Query must be a non-empty string', 'ERROR_INVALID_QUERY');
|
|
344
353
|
try {
|
|
345
|
-
void await this.
|
|
354
|
+
void await ensureCookies(this.instance);
|
|
346
355
|
const response = await this.instance.get(Client.API_SEARCH_PATH, {
|
|
347
356
|
params: {
|
|
348
357
|
q: query,
|
|
@@ -353,20 +362,19 @@ class Client {
|
|
|
353
362
|
}
|
|
354
363
|
});
|
|
355
364
|
if (response.err !== 0)
|
|
356
|
-
throw new Lapse('Search could not be fetched', 'ERROR_SEARCH_FAILED', response.err
|
|
357
|
-
return response.data.items.map(createSearchMedia);
|
|
365
|
+
throw new Lapse('Search could not be fetched', 'ERROR_SEARCH_FAILED', response.err);
|
|
366
|
+
return (response.data.items ?? []).map(createSearchMedia);
|
|
358
367
|
}
|
|
359
368
|
catch (error) {
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
throw new Lapse('Search could not be fetch', 'ERROR_SEARCH_FETCH', axios.isAxiosError(error) ? error.response?.status : void 0, error);
|
|
369
|
+
const lapse = error instanceof Lapse ? error : new Lapse('Search could not be fetch', 'ERROR_SEARCH_FETCH', axios.isAxiosError(error) ? error.response?.status : void 0, error);
|
|
370
|
+
throw lapse;
|
|
363
371
|
}
|
|
364
372
|
}
|
|
365
373
|
async searchList(query) {
|
|
366
374
|
if (typeof query !== 'string' || !query.trim().length)
|
|
367
375
|
throw new Lapse('Query must be a non-empty string', 'ERROR_INVALID_QUERY');
|
|
368
376
|
try {
|
|
369
|
-
void await this.
|
|
377
|
+
void await ensureCookies(this.instance);
|
|
370
378
|
const response = await this.instance.get(Client.API_SEARCH_PATH, {
|
|
371
379
|
params: {
|
|
372
380
|
q: query,
|
|
@@ -377,20 +385,19 @@ class Client {
|
|
|
377
385
|
}
|
|
378
386
|
});
|
|
379
387
|
if (response.err !== 0)
|
|
380
|
-
throw new Lapse('Search could not be fetched', 'ERROR_SEARCH_FAILED', response.err
|
|
388
|
+
throw new Lapse('Search could not be fetched', 'ERROR_SEARCH_FAILED', response.err);
|
|
381
389
|
return response.data.items.map(createSearchPlayList);
|
|
382
390
|
}
|
|
383
391
|
catch (error) {
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
throw new Lapse('Search could not be fetch', 'ERROR_SEARCH_FETCH', axios.isAxiosError(error) ? error.response?.status : void 0, error);
|
|
392
|
+
const lapse = error instanceof Lapse ? error : new Lapse('Search could not be fetch', 'ERROR_SEARCH_FETCH', axios.isAxiosError(error) ? error.response?.status : void 0, error);
|
|
393
|
+
throw lapse;
|
|
387
394
|
}
|
|
388
395
|
}
|
|
389
396
|
async searchArtist(query) {
|
|
390
397
|
if (typeof query !== 'string' || !query.trim().length)
|
|
391
398
|
throw new Lapse('Query must be a non-empty string', 'ERROR_INVALID_QUERY');
|
|
392
399
|
try {
|
|
393
|
-
void await this.
|
|
400
|
+
void await ensureCookies(this.instance);
|
|
394
401
|
const response = await this.instance.get(Client.API_SEARCH_PATH, {
|
|
395
402
|
params: {
|
|
396
403
|
q: query,
|
|
@@ -401,13 +408,12 @@ class Client {
|
|
|
401
408
|
}
|
|
402
409
|
});
|
|
403
410
|
if (response.err !== 0)
|
|
404
|
-
throw new Lapse('Search could not be fetched', 'ERROR_SEARCH_FAILED', response.err
|
|
411
|
+
throw new Lapse('Search could not be fetched', 'ERROR_SEARCH_FAILED', response.err);
|
|
405
412
|
return response.data.items.map(createSearchArtist);
|
|
406
413
|
}
|
|
407
414
|
catch (error) {
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
throw new Lapse('Search could not be fetch', 'ERROR_SEARCH_FETCH', axios.isAxiosError(error) ? error.response?.status : void 0, error);
|
|
415
|
+
const lapse = error instanceof Lapse ? error : new Lapse('Search could not be fetch', 'ERROR_SEARCH_FETCH', axios.isAxiosError(error) ? error.response?.status : void 0, error);
|
|
416
|
+
throw lapse;
|
|
411
417
|
}
|
|
412
418
|
}
|
|
413
419
|
}
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"source/","sources":["index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"source/","sources":["index.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { URL } from 'node:url';
|
|
2
2
|
import { Cookies } from './utils/cookies.js';
|
|
3
|
-
import { Readable } from 'node:stream';
|
|
3
|
+
import type { Readable } from 'node:stream';
|
|
4
4
|
import type { ClientOptions } from './types/index.js';
|
|
5
5
|
import type { Artist, Media, SearchMedia, PlayList, SearchPlayList, SearchArtist } from './types/response.js';
|
|
6
6
|
export type { Cookies, ClientOptions, PlayList, Artist, Media, SearchMedia, SearchPlayList, SearchArtist };
|
|
@@ -22,12 +22,12 @@ declare class Client {
|
|
|
22
22
|
static getIDFromURL(url: string): string;
|
|
23
23
|
private readonly ctime;
|
|
24
24
|
private readonly instance;
|
|
25
|
-
private
|
|
26
|
-
private
|
|
27
|
-
private
|
|
28
|
-
private
|
|
25
|
+
private maxLoad;
|
|
26
|
+
private maxHighWaterMark;
|
|
27
|
+
private userAgent;
|
|
28
|
+
private jar;
|
|
29
29
|
constructor(options?: ClientOptions);
|
|
30
|
-
|
|
30
|
+
setOptions(options?: ClientOptions): void;
|
|
31
31
|
video(videoID: string | URL): Promise<Readable>;
|
|
32
32
|
videoSync(videoID: string | URL): Readable;
|
|
33
33
|
music(musicID: string | URL): Promise<Readable>;
|
|
@@ -20,7 +20,6 @@ interface ArtistRef {
|
|
|
20
20
|
name: string;
|
|
21
21
|
thumbnail: CoverArtist;
|
|
22
22
|
}
|
|
23
|
-
type SearchArtist = Required<ArtistRef>;
|
|
24
23
|
interface Artist extends ArtistRef {
|
|
25
24
|
biography: string;
|
|
26
25
|
birthday: string;
|
|
@@ -48,10 +47,6 @@ interface Media extends Named {
|
|
|
48
47
|
thumbnail: CoverMedia;
|
|
49
48
|
username: string;
|
|
50
49
|
}
|
|
51
|
-
type SearchMediaAlbum = Omit<Album, 'artists'>;
|
|
52
|
-
type SearchMedia = Omit<Media, 'isPrivate' | 'releaseDate' | 'album'> & {
|
|
53
|
-
album?: SearchMediaAlbum;
|
|
54
|
-
};
|
|
55
50
|
interface PlayList extends Named {
|
|
56
51
|
alias: string;
|
|
57
52
|
artists: ArtistRef[];
|
|
@@ -69,5 +64,10 @@ interface PlayList extends Named {
|
|
|
69
64
|
thumbnail: CoverPlayList;
|
|
70
65
|
updatedAt: number;
|
|
71
66
|
}
|
|
67
|
+
type SearchArtist = Required<ArtistRef>;
|
|
68
|
+
type SearchMediaAlbum = Omit<Album, 'artists'>;
|
|
72
69
|
type SearchPlayList = Omit<PlayList, 'updatedAt' | 'mediaCount' | 'listenCount' | 'likeCount' | 'duration' | 'description' | 'media'>;
|
|
70
|
+
type SearchMedia = Omit<Media, 'isPrivate' | 'releaseDate' | 'album'> & {
|
|
71
|
+
album?: SearchMediaAlbum;
|
|
72
|
+
};
|
|
73
73
|
export type { Album, Artist, ArtistRef, CoverArtist, CoverMedia, CoverPlayList, Media, SearchMedia, PlayList, SearchPlayList, SearchArtist, SearchMediaAlbum };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@khang07/zing-mp3-api",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.7",
|
|
4
4
|
"author": "GiaKhang <ngkhang9a5lqc11@gmail.com>",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"bugs": {
|
|
36
36
|
"url": "https://github.com/GiaKhang1810/zing-mp3-api/issues"
|
|
37
37
|
},
|
|
38
|
-
"description": "The basic APIs provide the features of ZingMp3
|
|
38
|
+
"description": "The basic APIs provide the features of ZingMp3",
|
|
39
39
|
"homepage": "https://github.com/GiaKhang1810/zing-mp3-api#readme",
|
|
40
40
|
"keywords": [
|
|
41
41
|
"zingmp3",
|
|
@@ -48,6 +48,7 @@
|
|
|
48
48
|
"scripts": {
|
|
49
49
|
"build:esm": "tsc -p tsconfig.json",
|
|
50
50
|
"build:cjs": "rollup -c",
|
|
51
|
+
"build": "bun run build:esm && bun run build:cjs && rm -rf dist/esm/types dist/cjs/types",
|
|
51
52
|
"test": "mocha"
|
|
52
53
|
},
|
|
53
54
|
"devDependencies": {
|