absidue
5ff30e12de
fix(toDash): Fix dash.js 4.x compatibility ( #765 )
2024-09-25 10:29:26 -03:00
absidue
910c9791e7
feat(ProtoUtils): Add support for creating NextParams ( #762 )
2024-09-23 17:33:21 -03:00
Luan
74659fd03f
chore: add proper documentation ( #763 )
...
* chore: generate API ref using `typedoc`
* chore: declutter readme and add links to ytjs.dev
* chore: clean up
2024-09-23 17:32:50 -03:00
Émilien (perso)
dd7f5cf778
feat: Add WEB_CREATOR client ( #757 )
...
* feat: Add WEB_CREATOR client
* update to latest version WEB_CREATOR https://github.com/iv-org/invidious/pull/4928#issuecomment-2362302280
2024-09-20 08:59:45 -03:00
Émilien (perso)
eaf218f5da
feat: Add WEB_EMBEDDED client ( #756 )
2024-09-19 09:56:23 -03:00
Konstantin
5db449cc6d
feat: extend music getInfo to allow MusicResponsiveListItem and Nav Endpoints ( #751 )
...
* feat: extend music getInfo to allow MusicResponsiveListItem nav endpoints
* chore: remove debug statements from test
* chore: adapt test
* feat: add nav endpoints to music getInfo
---------
Co-authored-by: Luan <luan.lrt4@gmail.com >
2024-09-19 09:19:48 -03:00
Luan
7a39326821
fix(Session): Set default values for hl and gl in context builder
2024-09-17 22:06:03 -03:00
Luan
0a5d3aa76d
refactor: Remove old UMP parser ( #753 )
2024-09-16 08:44:55 -03:00
Luan
94bc596048
refactor: Migrate to ts-proto ( #752 )
...
* refactor: Add extracted protos
* refactor: Remove old stuff and update affected code
* chore(package): Update `build:proto` script
* chore(ClientInfo): Rename `androidSdkVersion` to `android_sdk_version`
* chore: remove refs to old proto file
* refactor(sabr_request): Rename `Gw` to `media_type`
* chore(sabr_request): Fix typo in field num
* feat(parser): Parse `video_playback_ustreamer_config` and `server_abr_streaming_url`
* refactor: update protos
* chore(package): streamline clean and build scripts
* chore: update package.json
* chore: update npmignore
* chore(protos): Remove unneeded definitions
See https://github.com/LuanRT/googlevideo for video playback proto definitions.
* chore(package): add `rimraf` dependency
2024-09-16 06:54:29 -03:00
absidue
e1e76ee616
feat(parser): Add ShortsLockupView and BadgeView nodes ( #746 )
2024-09-13 00:19:46 -03:00
Dave Nicolson
bf6cc00699
fix(ItemSection): FeedFilterChipBar parse error ( #741 )
2024-09-11 02:28:33 -03:00
absidue
094a96fb5d
fix(parser): The icon_name property does not always exist in ThumbnailBadgeView ( #745 )
2024-09-11 02:26:58 -03:00
Luan
bdff3eae1c
chore: lint [skip ci]
2024-08-23 02:07:41 -03:00
Luan
5a66d0ba93
chore: clean up some types [skip ci]
2024-08-23 02:04:28 -03:00
Luan
fcd00b0fb0
fix(FormatOptions): client missing some values
2024-08-23 01:05:37 -03:00
Luan
2dae5634f3
chore(docs): Minor rewording
2024-08-23 00:51:52 -03:00
Luan
c14a687e65
chore: bump eslint to v9
2024-08-22 15:43:59 -03:00
Dave Nicolson
f9ccba4af5
fix(ThumbnailOverlayResumePlayback): Update percent_duration_watched type ( #737 )
2024-08-19 20:18:06 -03:00
absidue
4b60b97132
feat(parser): Add VideoAttributesSectionView node ( #732 )
2024-08-12 14:49:20 -03:00
absidue
7afc3da80e
fix(Session): Fix remote visitor data not gettting used ( #731 )
2024-08-12 00:21:02 -03:00
슈리튬
bb6e647b8c
fix(Session): PoToken not being set correctly ( #729 )
2024-08-11 04:10:23 -03:00
Luan
f1973c11d9
fix(Session): Visitor data not being used properly
2024-08-10 11:12:13 -03:00
Luan
4942992630
refactor: Throw an error if an invalid client is specified
2024-08-08 10:11:38 -03:00
Luan
0e91a08ae2
fix(PlayerEndpoint): Don't set undefined fields
2024-08-08 09:01:14 -03:00
Luan
261f2ac12b
feat(Utils): Add UMP parser
...
Currently not used anywhere in the project, but I figured I'd add it in case anyone wants to make their playback requests look more genuine by using UMP/SABR.
2024-08-08 07:57:14 -03:00
Émilien (perso)
c9f0ddd573
feat(Player): Add support for Proof of Identity tokens ( #708 )
...
* Fix different usages of potoken.
* Fix linting.
* Add mention about invidious youtube-trusted-session-generator.
---------
Co-authored-by: Luan <luan.lrt4@gmail.com >
2024-08-08 07:28:42 -03:00
absidue
2c0bb237e1
fix(Search): Fix it occasionally returning only a small number of results ( #720 )
2024-08-03 09:40:02 -03:00
Luan
3b3cf1b2aa
refactor(Player): Generate and parse player script's AST ( #713 )
...
Notes:
- The Syntax Tree is generated by Jinter (which is built on top of `Acorn`).
- While doing this may be slightly slower than using a regular exp, it is much more reliable (plus we already cache the player functions anyway).
2024-08-01 06:09:27 -03:00
Dave Nicolson
d85fbc56cf
feat(PlaylistManager): Add ability to remove videos by set ID ( #715 )
2024-08-01 06:07:47 -03:00
Luan
e55d4af100
chore: lint
2024-08-01 06:03:51 -03:00
Armel Chesnais
04369be620
fix(Player): Address changes introduced by player id 20dfca59 ( #712 )
...
Fixes the nSig extract for YT player id `20dfca59 `
Handles:
String.prototype.split.call(a,("",""))
and
Array.prototype.join.call(b,
("",""))};
Note the newline
Co-authored-by: Luan <luan.lrt4@gmail.com >
2024-07-31 06:38:32 -03:00
Luan
a89a5ac2dd
refactor(Player.ts): Handle nsig failure gracefully
...
Preping for future changes.
2024-07-31 06:18:18 -03:00
Luan
5529a6aca0
chore(Player): Don't throw an error if nsig extraction fails
...
This is called when an InnerTube instance is created, so throwing here breaks the entire library.
2024-07-30 19:05:29 -03:00
Luan
9b9fb82131
refactor: Clean up & fix old code
...
Other changes:
- Renamed "getShortsWatchItem" to "getShortsVideoInfo".
- Fixed `ShortFormVideoInfo`. This never worked for me ever since it was introduced. Turned out it was just implemented incorrectly.
- Moved `basic_info` extraction to `MediaInfo`. Less of a pain to maintain as we only have to modify one file.
- Removed unneeded tsdoc comments.
- Fixed `Innertube#getStreamingData()`. Now it actually returns a deciphered format.
- Simplified some types.
2024-07-30 18:49:24 -03:00
absidue
3153375bca
fix(HTTPClient): Adjust more context fields for the iOS client ( #705 )
2024-07-26 11:15:12 -03:00
Dave Nicolson
a9bf225a62
feat(parser): Add EomSettingsDisclaimer node ( #703 )
2024-07-25 22:12:57 -03:00
Luan
6765f4e0d7
fix(Player): Bump cache version ( #702 )
...
We should always do this after updating the sig/nsig code, it's so that the old cache gets ignored : ).
2024-07-25 10:48:24 -03:00
absidue
3048f70f60
fix(Player): Fix extracting the n-token decipher algorithm again ( #701 )
2024-07-25 10:07:00 -03:00
Brahim Hadriche
090539b28f
feat(parser): add classdata to unhandled parse errors ( #691 )
2024-07-24 15:55:20 -03:00
Brahim Hadriche
6d0bc89be1
fix(parser): ignore MiniGameCardView node ( #692 )
2024-07-24 15:54:37 -03:00
GurumNyang
a5f62093a1
feature(proto): Add comment_id to commentSectionParams ( #693 )
2024-07-24 15:54:14 -03:00
absidue
a352ddeb9d
feat(Format): Add is_secondary for detecting secondary audio tracks ( #697 )
2024-07-24 15:53:27 -03:00
Brahim Hadriche
0f8f92a28a
fix(parser): ThumbnailView background color ( #686 )
2024-07-11 14:31:27 -03:00
Luan
62ac2f6f32
fix(proto): Update Context message
...
Closes #681
2024-07-10 03:41:16 -03:00
absidue
142a7d0428
fix(Player): Fix extracting the n-token decipher algorithm ( #682 )
...
* fix(Player): Fix extracting the n-token decipher algorithm
* fix: bump Jinter to v2
---------
Co-authored-by: Luan <luan.lrt4@gmail.com >
2024-07-10 02:21:39 -03:00
Luan
efa7205723
Merge branch 'main' of https://github.com/LuanRT/YouTube.js
2024-07-01 08:53:45 -03:00
Luan
84f90aaf29
fix(Session): Round UTC offset minutes
2024-07-01 08:53:08 -03:00
absidue
858cdd197c
feat(toDash): Add the "dub" role to translated captions ( #677 )
2024-06-30 23:05:08 -03:00
Luan
5a8fd3ad37
feat(Session): Add configInfo to InnerTube context
...
Minor addition. It's needed for certain UMP requests.
2024-06-30 22:51:02 -03:00
슈리튬
a19511de24
fix(FormatUtils): Throw an error if download requests fails
2024-06-28 16:45:39 -03:00