From d60878c8acd06b1b721f88740ce5f7749376b8eb Mon Sep 17 00:00:00 2001 From: Zechariah Date: Thu, 29 Dec 2022 10:19:02 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=20fix=20no=20albums=20bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 +- src/parsers/ArtistParser.ts | 12 +++++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index e54a703..612e149 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "ytmusic-api", - "version": "4.0.1", + "version": "4.0.2", "description": "YouTube Music API", "main": "dist/index.js", "types": "dist/index.d.ts", diff --git a/src/parsers/ArtistParser.ts b/src/parsers/ArtistParser.ts index cdb109d..a6e3671 100644 --- a/src/parsers/ArtistParser.ts +++ b/src/parsers/ArtistParser.ts @@ -1,5 +1,6 @@ import { ArtistBasic, ArtistDetailed, ArtistFull } from "../schemas" import checkType from "../utils/checkType" +import traverse from "../utils/traverse" import traverseList from "../utils/traverseList" import traverseString from "../utils/traverseString" import AlbumParser from "./AlbumParser" @@ -23,11 +24,12 @@ export default class ArtistParser { topSongs: traverseList(data, "musicShelfRenderer", "contents").map(item => SongParser.parseArtistTopSong(item, artistBasic) ), - topAlbums: traverseList(data, "musicCarouselShelfRenderer") - .at(0) - .contents.map((item: any) => - AlbumParser.parseArtistTopAlbums(item, artistBasic) - ) + topAlbums: + traverseList(data, "musicCarouselShelfRenderer") + ?.at(0) + ?.contents.map((item: any) => + AlbumParser.parseArtistTopAlbums(item, artistBasic) + ) ?? [] }, ArtistFull )