Commit Graph

64 Commits

Author SHA1 Message Date
OfficialDakari a713d6ecae allow changing axios settings 2024-10-10 19:45:40 +05:00
zS1L3NT Mac 2817c590ee
🚀 long awaited bug fixes 2024-07-08 04:51:51 +08:00
zS1L3NT Mac 09f113e7bb
use zod instead of arktype 2024-07-08 04:22:01 +08:00
SAROND 9b30a9e5f6 hotfix: correct traversal paths and improve test assertions
Fixed incorrect object traversal paths in `YTMusic.getHome` method to properly navigate through nested JSON. Enhanced `getHome.spec.ts` by adding a check for non-empty array of `HomePageContent` and logging the length of the retrieved contents.
2024-01-16 17:26:53 +04:00
SAROND f9664fe267 feat(YTMusic): implement continuous pagination in getHome method
This commit introduces the ability to fetch and parse additional pages of content in the `getHome` method of the `YTMusic` class by utilizing a continuation token. The previous implementation only fetched the initial page of content. Now, after parsing the initial page, the method checks for a continuation token and continues to fetch and parse subsequent pages until no continuation token is found, allowing for complete retrieval of home page content.

Additionally, there has been a minor change in the `SongParser.parseSearchResult` method where the logic to identify the title and artist from search results has been simplified due to the impossibility of distinguishing them with the current data structure. The new approach uses fixed positions in the columns array to assign title and artist.
2024-01-16 04:05:42 +04:00
SAROND b428f87321 patch: add comments 2024-01-15 19:53:02 +04:00
SAROND 6ed8230448 feat(YTMusic): implement HomePageContent retrieval and parsing
Added functionality to retrieve and parse the home page content in YTMusic class. The `getHome` method fetches home page data and uses the new `Parser.parseMixedContent` method to parse the content into `HomePageContent` type. Also, updated AlbumParser to handle potential null values more gracefully and added PlaylistWatch type parsing.

- Added `FE_MUSIC_HOME` constant for home page ID.
- Implemented `getHome` method in `YTMusic` class.
- Created `parseMixedContent` in `Parser` class.
- Updated `AlbumParser` and `SongParser` to handle nullable fields.
- Added `PlaylistWatch` type and parsing in `PlaylistParser`.
- Added tests for the new home page content feature.
2024-01-15 19:34:51 +04:00
zS1L3NT Mac f59cfc7f29
add ability to change locale 2024-01-13 12:18:09 +08:00
zS1L3NT Mac 7cb39bca6a
♻️ refactor traverse utilities functions 2023-12-28 02:31:09 +08:00
zS1L3NT Mac 6be353b46f
🐛 fix null artists bugs 2023-12-28 02:31:09 +08:00
zS1L3NT Mac aca523a303
make artists singular and delete descriptions 2023-12-28 01:16:20 +08:00
zS1L3NT Mac dd06c5ac65
mostly complete testing, preparing for data type change 2023-12-27 23:25:22 +08:00
zS1L3NT Mac 2178137c29
add lyrics fetching 2023-12-27 14:54:25 +08:00
zS1L3NT Mac bfdceea12d
use arktype instead of zod 2023-12-22 03:25:11 +08:00
zS1L3NT Mac d4d6fa1662
timely update
use bunjs instead of pnpm
remove mocha and use bun test
import my latest eslint config
2023-12-22 03:25:11 +08:00
Colin 2dcd98409e fix: indent 2023-10-03 20:02:21 -04:00
Clisson 0331126508 feat: add featured on and similar artists parsers 2023-10-03 19:46:41 -04:00
zS1L3NT Windows efb17791e6 🔖 4.3.0
add back video count only to PlaylistFull
2023-08-08 05:19:05 +08:00
zS1L3NT Windows ab7aaaee8c 🚨 fix linting 2023-07-30 00:09:26 +08:00
zS1L3NT Windows df173dfe47 allow injecting custom cookies 2023-07-29 23:55:56 +08:00
zS1L3NT Windows 8aac182764 🐛 fix typescript errors 2023-07-29 23:31:06 +08:00
zS1L3NT Windows de2b653fa6 🐛 fix album artists 2023-07-29 23:23:53 +08:00
zS1L3NT Windows eccf197dcb 🐛 fix search results 2023-07-29 23:12:09 +08:00
zS1L3NT Windows 1cd1459c92 🐛 fix playlist search artist name wrong 2023-07-29 23:06:38 +08:00
zS1L3NT Windows 2e77adfa52 🔥 remove playlist video count 2023-07-29 20:15:01 +08:00
Zechariah 27df842c98 get top singles and videos when fetching an artist 2022-12-29 13:04:45 +08:00
Zechariah d60878c8ac 🐛 fix no albums bug 2022-12-29 10:19:02 +08:00
zS1L3NT be872ecf5b 🐛 forgot to include index.ts 2022-12-28 03:27:14 +08:00
zS1L3NT ed3b4127f8 new version of ytmusic-api abandoning validate-any 2022-12-25 01:53:42 +08:00
Tim Rüdenauer cf9834174e Add fallback for X-Goog-Visitor-Id header 2022-08-15 20:38:20 +02:00
Zechariah 149fc48a00 add back year to album detailed 2022-06-28 00:24:19 +08:00
Zechariah 5c93e58da4 🔥 remove subscriber count from artist full 2022-06-22 04:36:06 +08:00
Zechariah 5717633c54 🔥 no more omitting "views" 2022-05-31 01:39:22 +08:00
Zechariah a5e3121a98 🐛 tries to browse an undefined browseId 2022-05-31 01:20:57 +08:00
Zechariah e25f7e5546 🐛 error fixes, and removed some returned data 2022-05-31 01:20:57 +08:00
Zechariah f4fd1db926 Return this after initialize so you can initialize it in 1 line 2022-03-30 23:21:44 +08:00
Zechariah ce98351d06 Made all search methods plural 2022-03-30 17:57:57 +08:00
Zechariah babd2bc2a0 Updated the search functions 2022-03-29 18:44:10 +08:00
Zechariah 59c6458738 Moved from jest to mocha 2022-03-28 03:28:37 +08:00
Zechariah b03e38891e Made more function calls type safer 2022-03-28 01:16:55 +08:00
Zechariah 577041359e Removed unused imports 2022-03-28 01:12:57 +08:00
Zechariah dea7d8883b More type safe traversing 2022-03-28 01:11:33 +08:00
Zechariah 12f3cd9d70 Updated validate-any version and updated logs 2022-03-28 01:11:29 +08:00
Zechariah 45692dcaa8 Validate all types before returning to user 2022-03-28 01:11:14 +08:00
Zechariah eb1309c5a1 Updated project configuration 2022-02-05 15:43:54 +08:00
Zechariah b6ae7d90a5 Added search suggestion testing 2022-02-05 15:19:11 +08:00
Zechariah 4f9cfddeb0 Fixed bug discovered by testing 2022-02-05 15:18:55 +08:00
Zechariah 2154dc67ab Using jest for testing instead of doing it manually 2022-02-05 15:00:31 +08:00
Zechariah 75d85764c3 Moved traverse.ts 2022-02-05 06:23:05 +08:00
Zechariah 4684d3c0e5 Make sure videoId is valid when fetching video 2021-12-31 01:15:49 +08:00