Commit Graph

1318 Commits

Author SHA1 Message Date
absidue 11eee77dab
Improve the performance of the side nav (#3743) 2023-07-10 22:43:08 -04:00
absidue 35074efbdd
Fix local API comments for age-restricted videos (#3760) 2023-07-11 09:01:15 +08:00
absidue b0239d197f
Fix web throttling because of double deciphering (#3759) 2023-07-11 08:47:38 +08:00
petaded 3eb657cfed
Fix Hide Channels and Hide Premier settings (#3673)
* fix for invidious (+6 squashed commits)
Squashed commits:
[65932b4b4] update playlist and channel filtering
[952a7213a] update subscriptions js to use premiereDate over durationText
[530dea939] Add back isRSS and viewcount check to fix when in subscriptions page
[93ebb7654] Fix hide premiere
[de7a8b4ec] ft-list-lazy-wrapper put whitespace back to what it was
[8dadb59b1] move showResult from a method to a computed to work with v-if

* Fix Hide Premier for Invidous API

* Refactor code to be more redable with better doc

---------

Co-authored-by: petaded <code@zikl.co.uk>
Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2023-07-09 12:38:24 +00:00
Svallinn f7b7fe549b
Fix+Chore: Remove crop directives from community post's images (#3734) 2023-07-09 08:09:26 -04:00
ChunkyProgrammer cf88bd77d8
Add DeArrow support for ft-list-video titles (#3688)
* Add deArrow support for ft-list-video titles

* Implement requested changes

* Remove some code duplication

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* fix lint issues + exception

* Check for vote count when title is not locked

Co-authored-by: Ajay Ramachandran <dev@ajay.app>

* simplify title

* Apply suggestions from code review

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* remove unused clearDeArrowCache function

* Fix deArrow title

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* allow using DeArrow without enabling SB

* add tooltip for DeArrow setting

---------

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
Co-authored-by: Ajay Ramachandran <dev@ajay.app>
2023-07-03 18:27:49 +02:00
Svallinn 649525558b
Utils: Don't provide `ytdl://` protocol links to external players (#3720)
Providing these type of links is currently unnecessary
and can turn into a hassle when the players are extended by scripts
that are not expecting them and don't function as intended.
2023-07-03 18:26:56 +02:00
absidue beaa9cc477
Cleanup some duplicate channel tab URL handling code (#3697)
* Cleanup some duplicate channel tab URL handling code

* Move to method
2023-07-02 22:51:39 -04:00
absidue 1ba0865a09
Only use android formats when the video id in the response is correct (#3719)
* Only use android formats when the video id in the response is correct

* Fix typo in playability status check

Co-authored-by: ChunkyProgrammer <78101139+ChunkyProgrammer@users.noreply.github.com>

---------

Co-authored-by: ChunkyProgrammer <78101139+ChunkyProgrammer@users.noreply.github.com>
2023-07-02 22:48:35 -04:00
absidue 6163ad7e6e
Various changes to allow us to blend in more (#3718)
* Let YouTube generate the Innertube session for the watch page

* Fix the user agent

* Set referer and origin for Innertube and googlevideo requests

* Fix sec-fetch-site header for Innertube requests

* Remove content-type header for googlevideo requests
2023-07-03 10:39:18 +08:00
PikachuEXE 242c93e163
Update subscription view to be able to load videos from video cache per channel (#3668)
* Changes from PR #3673

* * Update subscription view to be able to load videos from video cache again

* * Update subscription view to be able to load videos from video cache per channel

* * Remove meaningless argument `allowUseOfChannelCache`

* $ Remove unused imports

---------

Co-authored-by: petaded <code@zikl.co.uk>
2023-07-02 10:37:28 -04:00
absidue bcf21f6d44
Use android formats when available, web for everything else (#3715) 2023-07-02 08:42:28 +08:00
absidue 939352347d
Add a script to update the region/geolocation files (#3701)
* Add a script to update the region/geolocation files

* Update tooltip now that we only list supported geolocations

* Add language sensitive sorting
2023-07-01 10:08:09 -04:00
Jaden fc7c252722
Use playlist thumbnail provided by YT (#3710)
* Use playlist thumbnail provided by YT from Local API

* Use correct thumbnails for playlist page

* Fix playlistThumbnail not giving correct value

* Update youtubei.js

* Update package.json

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* Update yarn.lock to align with package.json

---------

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2023-06-30 18:18:43 +02:00
absidue afffbf69fc
Fix reading instances from the Invidious fallback file (#3712) 2023-06-28 06:15:44 +00:00
Wesley Appler d989af2326
Fixed incorrect invidious linking (#3711) 2023-06-28 08:44:49 +08:00
absidue 7c7e0e5d7d
Add back sort by oldest (#3698) 2023-06-27 13:30:36 -04:00
absidue 6e0395d58e
Support YouTube's new layout for shorts only playlists (#3708) 2023-06-27 13:13:48 -04:00
PikachuEXE 2c759b8ba1
* Update view to ignore keyboard events caused by user holding keys (#3709)
No point keep refreshing info on key hold
2023-06-27 19:04:48 +02:00
absidue 87a389cce0
Fix focus related race conditions (#3700) 2023-06-27 11:52:39 +00:00
absidue c102996b52
Fix search bar keyboard shortcuts after hide search bar is disabled (#3699)
* Fix search bar keyboard shortcuts after hide search bar is disabled

* Fix copy paste issue
2023-06-26 16:15:42 -04:00
absidue 0a471f8a17
Fix channel tabs accessibility (#3689) 2023-06-26 18:58:31 +00:00
ChunkyProgrammer 23d8af59f6
Fix some web build errors (#3687) 2023-06-26 18:13:32 +00:00
RikThePixel 96835dd703
Fix Hide Channel Subscribers setting still displaying subscribers if changed from a secondary window (#3504) (#3692)
* Fix Hide Channel Subscribers setting still displaying subscribers if changed from a secondary window (#3504)

* Revert naming change subscriptionCountText to channelSubCountText

* Use `!=` instead of `!==` for `subscriberCount` in ft-list-channel

* Set subscriberCount to null if `data.subscribers` is null in ft-list-channel.js

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>

---------

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
2023-06-25 10:40:03 -04:00
absidue 3c6e1d1a8e
Escape HTML in local API text runs to prevent XSS (#3675) 2023-06-19 17:01:12 +00:00
Wesley Appler 8281df7b79
comment url & custom emoji on invidious API (#3658)
* comment url & custom emoji on invidious API

* Multi-custom emoji fix
2023-06-14 07:26:53 -04:00
Emma bb4b0a890a
Fix `proxyVideos` setting for legacy formats & hls urls (#3639)
* Fix `proxyVideos` setting for legacy formats & hls urls

- Replace the hostname of stream urls with the current invidious instance when `proxyVideos` is true
- Add `local` flag to iv hls URLs when proxy videos is true

* Add missing `proxyVideos` getter in `ft-video-player`

* Move change of URI to before `getProxyVideos`
2023-06-12 17:06:08 +02:00
PikachuEXE 27e9a22c21
Update watch page chapter component to scroll to current chapter on expand (#3610)
* * Update watch page chapter component to scroll to current chapter on expand

* ~ Remove irrelavent comment from copy & paste
2023-06-02 18:06:09 +02:00
absidue cd08373b28
Add subsections to the distraction free settings (#3591)
* Add subsections to the distraction free settings

* Change pages to page in section headings
2023-05-29 19:46:57 -04:00
PikachuEXE cf7c6b9974
! Fix live videos as list items had no save to playlist button (#3598)
Already present in watch page
2023-05-29 21:50:56 +02:00
Emma 042626349a
Fix history imports (#3595) 2023-05-28 21:57:31 -04:00
absidue 7d8a4c8cd7
Add support for the short published dates (#3588) 2023-05-28 13:18:45 -04:00
ChunkyProgrammer 8dbad618f9
IV: add support for hashtag pages (#3571)
* IV: add support for hashtag pages

* add fallback support

* remove locale strings
2023-05-26 23:01:26 +02:00
absidue a11533ac8a
Fix keyboard shortcut to toggle the captions (#3580) 2023-05-23 12:28:01 +00:00
absidue 6f95673cf5
Fix playlist thumbnail not getting proxied through Invidious (#3581) 2023-05-23 12:24:03 +00:00
PikachuEXE da6acf2599
Ensure screen saver blocker removed when window closed (#3557)
* $ Extract method for stopping screen saver blocker

* ! Ensure screen saver blocker removed when window closed

* * Move beforeunload event listener removal to beforeDestroy
2023-05-23 07:37:44 -04:00
absidue c53f5b6dac
Add distraction free setting to hide channel shorts (#3569)
* Add distraction free setting to hide channel shorts

* Add support for channel shorts URLs
2023-05-23 08:59:24 +08:00
PikachuEXE 9523bc733a
Fix comment section style inconsistency and more... (#3231)
* ! Fix YT comment loading for video with comment disabled

* * Update video view w/ Local API to render video comment disabled as no comment

* ! Fix style with less side effects
2023-05-22 17:37:59 -04:00
absidue 15b8dffaf3
Fix text wrapping for community posts (#3540)
* Fix text wrapping for community posts

* Use anywhere instead of break-word for overflow-wrap
2023-05-22 09:43:13 +08:00
absidue 3e543aeb24
Fix cursor moving while navigating search suggestions (#3566) 2023-05-21 13:50:27 +00:00
ChunkyProgrammer ccbf7e2155
Use script to create Invidious instance list file (#3545)
* Use script to create static instance list

* save cors, filter out cors when not electron
2023-05-20 15:07:04 +02:00
absidue d34cf0dd5c
local API: Support multiple audio tracks (#3563)
* local API: Support multiple audio tracks

* Simplify resume logic

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* Change track selector position

---------

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2023-05-20 08:48:15 -04:00
PikachuEXE d3b3be7794
Update watch view playlist component to auto scroll to current video (#3399)
* * Update watch view playlist component to auto scroll to current video

* ! Fix window being scrolled when playlist is out of initial view

* * Use `nextTick` instead of `setTimeout`

* Revert "* Use `nextTick` instead of `setTimeout`"

This reverts commit 9215b0fe54.

* * Remove setTimeout, fix issue when Invidious API used
2023-05-18 22:13:42 -04:00
ChunkyProgrammer 2860431abe
fix live chat error (#3558) 2023-05-17 16:24:15 +02:00
absidue 137362d7df
Parse shorts links in text runs (#3539) 2023-05-15 10:12:59 +08:00
absidue 9019be2419
Implement the shorts tab on channel pages (#3533)
* Implement the shorts tab on channel pages

* Remove testing code

* Upgrade YouTube.js
2023-05-15 10:01:18 +08:00
ChunkyProgrammer a4d45b5fa8
Local API: Add support for hashtag pages (#3483)
* Add support for hashtag pages

* Apply suggestions from code review

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>

* allow searching hashtags

Co-Authored-By: absidue <48293849+absidue@users.noreply.github.com>

* Only use one card

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>

* remove hashtag alias search navigation

---------

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
2023-05-13 13:27:41 +02:00
ChunkyProgrammer e32417b9cb
Parse IV community playlist attachments (#3465) 2023-05-13 13:23:02 +02:00
ChunkyProgrammer ff19c233c1
IV: Fix search cache issues when fetching more (#3486)
* Fix IV search cache issues

* Add comment

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* add apiUsed

---------

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2023-05-13 13:18:49 +02:00
PikachuEXE 4363c71ab4
! Ensure FT stay "running in background" on MacOS after all window closed (#3526) 2023-05-11 23:34:20 +00:00
PikachuEXE 8646e93f7f
Fix the flash when more data loaded in History & UserPlaylists view (#3507)
* ! Fix the flash when more data loaded in History & UserPlaylists view

* * Remove unused imports
2023-05-11 20:28:42 +02:00
absidue b005aee643
Use POST for DASH requests (#3523) 2023-05-10 20:00:27 +08:00
absidue 6804ca999d
Remove unnecessary dislike icon on community posts (#3524) 2023-05-10 08:30:00 +08:00
absidue 2ef96c7179
Move the channel about tab into it's own component (#3493) 2023-05-08 09:42:06 +08:00
absidue 6ef572d1fa
Deduplicate videos on the default trending tab (#3492) 2023-05-07 08:52:39 -04:00
ChunkyProgrammer a9fa327c9b
Create Subscribe Button reusable component (#3468)
* Create Subscribe Button component

Co-Authored-By: Minh Hang Nguyen (Jenny) <55411709+minhhang107@users.noreply.github.com>

* use defineComponent, remove unused prop

Co-Authored-By: absidue <48293849+absidue@users.noreply.github.com>

* readd unsubscribe method

* add comment

* Fix typo

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* remove unused code

* move json serialization

---------

Co-authored-by: Minh Hang Nguyen (Jenny) <55411709+minhhang107@users.noreply.github.com>
Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2023-05-07 14:06:23 +02:00
ChunkyProgrammer 66e4f4d1c0
Fix fetching more IV replies (#3489) 2023-05-06 18:31:06 +00:00
ChunkyProgrammer 9003b825e5
Fix sorting upcoming subscriptions (#3485) 2023-05-06 14:31:12 +00:00
ChunkyProgrammer 1b45f25985
Add hide community, playlist and featured channels settings (#3484)
* Add hide community, playlist and featured channels setting

* fix lint issues
2023-05-06 14:14:51 +00:00
ChunkyProgrammer c197b5ac93
IV: Allow fetching more community posts (#3466)
* Allow fetching more community posts with IV

* Update src/renderer/views/Channel/Channel.js

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

---------

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2023-05-06 12:22:29 +00:00
PikachuEXE 1c29745d98
Update History & UserPlaylists view to filter with delay (#3451)
* * Update History & UserPlaylists view to filter with delay

* * Use lodash.debounce to implement

* * Update delay to 500ms

* * Update to have delay with empty query string
2023-05-06 12:19:47 +00:00
PikachuEXE 8765d2ae6d
Fix local run parsing to ensure URL not manipulated unnecessarily breaking the URL (#3467)
* ! Fix local run parsing to ensure URL not manipulated unnecesarily breaking the URL

* Rename new variable
2023-05-03 00:05:30 -04:00
absidue 170df2a054
Upgrade YouTube.js from 4.3 to 5.0.2 (fixes throttling) (#3474)
* Upgrade YouTube.js from 4.3 to 5.0.1 (fixes throttling)

* Fix typo

* Upgrade YouTube.js from 5.0.1 to 5.0.2 (fixes watch page views)
2023-05-01 09:12:23 -04:00
PikachuEXE 0e11fd06f1
Update watch page to stop at end of playlist (when loop disabled) without countdown (#3362)
* * Update watch page to stop at end of playlist (when loop disabled) without countdown

* Update src/renderer/views/Watch/Watch.js

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>

* ! Fix playlist end message shown when loop enabled

---------

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
2023-04-27 17:10:14 +02:00
PikachuEXE b5e35d0543
Add setting to auto load comment section (#3352)
* + Add setting to auto load comment section

* * Cleanup hooks when possible

* * Update new setting to be a toggle

Possible values reduced to disabled & 0%

* * Use vue-observe-visibility to implement comment autoload

* - Remove unused translation entries

* - Remove no longer valid code comment

* * Rename & retype new setting

* * Implement auto more comment loading

* - Remove outdated comment

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>

* * Disable new setting switch when hide comments enabled

* * Remove the unnecessary delay on video comment loading

* * Update according to review

* * Disable autoload when hide comment enabled

---------

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
2023-04-26 21:56:42 -04:00
absidue 58eb5d7b17
Fix vunerability in CSV import regex (#3469) 2023-04-26 21:48:10 -04:00
absidue 45d679b84b
Clean up unused component properties (#3458) 2023-04-25 20:03:36 -04:00
PikachuEXE f6d8e78d25
! Fix video comment external link parsing for local API (#3448) 2023-04-25 20:01:06 -04:00
PikachuEXE a3c4981ffa
! Fix thumbnail URL for protocol-relative URLs (#3452) 2023-04-25 23:12:40 +00:00
absidue db1e88ae16
Various performance improvements (#3455) 2023-04-25 23:02:39 +00:00
absidue 1e21033e82
Fix extracting chapters with handles from description (#3456) 2023-04-21 09:19:42 +08:00
PikachuEXE 3597499df1
* Update video list display & watch page to not use stored watch progress when progress saving disabled (#3453) 2023-04-20 16:43:59 +02:00
Emma 791a289e68
Prevent loading for ever in web builds in live chat (#3449) 2023-04-19 07:37:42 +02:00
PikachuEXE 8be4b0dffa
Fix "mention" in comments was rendered as link with channel URL (#3351)
* ! Fix "mention" in comments was rendered as link with channel URL

* ! Fix original space padding logic

* $ Refactor code as suggested
2023-04-17 09:22:05 -04:00
absidue c4464f4014
Fix live premieres being treated as non-live videos (#3358) 2023-04-17 09:21:37 -04:00
absidue 7fbb43fd36
Add 50fps and live support to frame by frame keyboard shortcuts (#3420) 2023-04-17 14:51:47 +08:00
ChunkyProgrammer 9612df70cc
Small community post fixes (#3401)
* Small community post fixes

* fix #3387

* Check if post is empty

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>

---------

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
2023-04-12 08:58:35 +00:00
Yaron Shahrabani c4f6033dee
Update Channel age restricted key (#3237)
* Update Channel.js

Typo fixed

* Fix channel age-restricted key in all files

---------

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
2023-04-10 08:08:55 -04:00
PikachuEXE 454534adb7
Fix some translation entries sometimes not used when rendered (#3337)
* * Update all translation keys with 2 spaces to have 1 space only

Avoid not being translated when rendering

* - Remove unused translation entry
2023-04-08 22:50:52 +00:00
absidue 5aa67715d0
Reset current chapter index when changing videos (#3400) 2023-04-08 21:36:50 +00:00
PikachuEXE dedd1f8f93
Fix trending & search result list rendered items not updated without workaround (#3342)
* ! Fix trending video list not updated without a workaround

* ~ Remove outdated comment

* ! Fix search result list rendered items not updated without workaround

* ! Fix invidious API search result incorrect appending

* ! Fix typo & key

* Remove not longer needed timeout

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>

---------

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
2023-04-01 22:15:38 +00:00
PikachuEXE 5db3ab5b5c
Fix adaptive format picked by video JS sometimes not showing up in quality selector (#3350)
* ! Fix adaptive format picked by video JS sometimes not showing up in quality selector

* Apply suggestions from code review

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>

* ! Workaround invidious issue on AV1 formats

* Update src/renderer/views/Watch/Watch.js

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>

---------

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
2023-04-01 18:27:30 +00:00
Emma 2a9ec5ee10
Prevent `channelInstance` from being `null` in community tab fallback (#3346)
* Create `getChannelInstanceLocal` function

which allows channel instances for the local API
to be set within the community posts fallback

* Remove channel variable in `getChanneLocal`

* Switch playlist fallback to calling `getChannelPlaylistsLocal`

* Prevent accidentally refetching channel instance from Local API

* Add fallback for fetching more channel videos through invidious

similar to the fallback for playlists

* Use existing `getLocalChannel` instead of creating a new function
2023-04-01 10:43:37 -04:00
Alexandre Rocha Lima e Marcondes 7a991cd05e
Import from YouTube history using JSON export (#2958)
* Initial implementation of import from YouTube history
(Using JSON  export)

* Properly escaping hostnames in regular expressions

* support other locales

* Apply suggestions from code review

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>

* support json import through sane button, bug fix

* remove `import youtube history` translations

* dont save length or view count for imported youtube history

---------

Co-authored-by: ChunkyProgrammer <78101139+ChunkyProgrammer@users.noreply.github.com>
Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
2023-03-30 17:51:37 +02:00
absidue 5fb298b740
Improve performance of list elements and icon buttons (#3355)
Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2023-03-27 06:25:58 +00:00
PikachuEXE 6e44f1af9c
* Update subscription view to render video as watched ASAP (#3353)
Before this change a view change (back & forth) is needed if video is watched in another window
2023-03-26 14:21:56 -04:00
absidue 94f21f293d
Fix the trending page refresh (#3347) 2023-03-26 09:32:36 +00:00
absidue 8366ec9f79
Show message when the live chat is unavailable (#3327)
* Show message when the live chat is unavailable

* Dynamically size live chat card when an error is shown
2023-03-23 09:11:25 +08:00
absidue a53e7f0598
Fix DASH default quality and quality selection (#3278)
* Fix DASH default quality and quality selection

* Add comments and multiple bandwidth by 10

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* Fix typo

Co-authored-by: ChunkyProgrammer <78101139+ChunkyProgrammer@users.noreply.github.com>

* ! Fix default quality `auto` handling

* ! Fix quality selection for short/vertical videos

* ! Fix default quality selection for Invidious API

* * Update videojs bandwidth option value to max

* ~ Add comment about video format sorting logic when heights from 2 formats equal

* * Revert format preference back to higher bitrate with comments

* * Revert inflated initial bandwidth option value to fix #595

---------

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
Co-authored-by: ChunkyProgrammer <78101139+ChunkyProgrammer@users.noreply.github.com>
2023-03-22 20:22:20 -04:00
PikachuEXE f0ba90e766
! Fix handling of `channel.subscriber.text` being `undefined` (#3340) 2023-03-22 19:10:34 +00:00
Emma 6513b5d517
Prevent throwing when poll choices do no have images (#3345) 2023-03-22 19:03:37 +00:00
Emma 86962f2802
Improve community tab responsiveness (#3344)
* Make channel page 📱responsive again

* Even out padding on the inside of `ft-community-post`
2023-03-22 13:44:19 +01:00
absidue fe44a75275
Fix alt + arrow keyboard shortcut when a channel tab is focused (#3317) 2023-03-22 08:41:34 -04:00
absidue 5dd8fb0b59
Hide the channel sort by dropdown when the tab isn't sortable (#3323)
* Hide the channel sort by dropdown when the tab isn't sortable

* Hide playlists sort by if there is only one playlist
2023-03-22 08:12:42 -04:00
absidue 4433a183c9
Fix joined date erroring on channels without a joined date (#3314) 2023-03-22 08:09:41 -04:00
absidue b7d4502317
Hide Most Popular menu entry if the selected backend is not Invidious and backend fallback is disabled (#3339) 2023-03-21 22:27:27 -04:00
dependabot[bot] d881275365
Bump youtubei.js from 3.3.0 to 4.0.1 (#3335)
* Bump youtubei.js from 3.3.0 to 4.0.1

Bumps [youtubei.js](https://github.com/LuanRT/YouTube.js) from 3.3.0 to 4.0.1.
- [Release notes](https://github.com/LuanRT/YouTube.js/releases)
- [Changelog](https://github.com/LuanRT/YouTube.js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/LuanRT/YouTube.js/compare/v3.3.0...v4.0.1)

---
updated-dependencies:
- dependency-name: youtubei.js
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Await the toDash function

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
2023-03-22 09:11:38 +08:00
absidue 54ecce1058
Fix lists occasionally having the wrong layout (#3338) 2023-03-22 08:57:06 +08:00
absidue 029f0cb0b9
Fetch the videos tab directly for local API subscriptions (#3315) 2023-03-18 20:27:56 +00:00
absidue 304152fe41
Workaround YouTube bug causing the community tab to be empty (#3318) 2023-03-18 20:25:52 +00:00
absidue f525b0e2d4
Clear community posts array when switching channels (#3316) 2023-03-18 20:09:06 +00:00
absidue 0212467419
Add Live tab to channel pages (#3273)
* Add Live tab to channel pages

* Handle invidious streams tab URL

* Clear live videos when navigating between channels

* Reset sort by when changing channels
2023-03-15 14:37:52 +08:00
PikachuEXE a878ff395a
Fix error when playing video with playlist with Indivious API and... (#3294)
* ! Fix error when playing video with playlist with Indivious API

* ! Fix switching comment sort does not get first page of comments
2023-03-14 14:18:48 -04:00
ChunkyProgrammer c37cb95d1b
show member icon for invidious api (#3293) 2023-03-14 18:39:40 +01:00
absidue 6c3ff9e999
Fix the screen saver blocker never getting disabled (#3286) 2023-03-14 06:17:44 +00:00
predystopic-dev 3a904b5f83
Setting loudness to default volume in new videos (#3203)
* Made changes as suggested.

* Made player set volume to user default if it was muted by dragging volume slider to zero. Volume and muted are kept track of seperately and both are set on player with respect to how it was set for previous video

* added comments

* fixed

* fixed

* Changed comments to be more accurate.
2023-03-08 19:22:45 +01:00
absidue 3225b3759a
Skip the exists check for the databases, as stat does it anyway (#3272) 2023-03-07 07:07:18 +01:00
absidue da0c06902b
Use smaller Vue esm runtime build (#3271) 2023-03-07 07:06:42 +01:00
absidue ab235b79d2
Lazy load sidebar channel and chapters thumbnails (#3245) 2023-03-05 21:00:04 +00:00
absidue 667ee83130
Fix premieres on the subscription page (#3240)
* Fix premieres on the subscription page

* Fix date when restoring from subscription cache
2023-03-05 14:29:00 -05:00
absidue 1335604554
Properly show live and upcoming videos in playlists and up next (#3250) 2023-03-05 11:20:32 -05:00
absidue 07c9212e74
Clean up some code that was leftover from before the YouTube.js migration (#3243) 2023-03-04 14:05:33 -05:00
Luca Hohmann 4ef2f709ee
Channel community page (#1568)
* Comunity page strings, Communtiy tab, Community initial API call
Added:
1) Community page strings - the first few strings are now available
2) Community tab - A clickable tab is now displayed on channel pages
3) Community initial API call - on loading the page, the initial access

* Comunity page strings, Communtiy tab, Community initial API call
Added:
1) Community page strings - the first few strings are now available
2) Community tab - A clickable tab is now displayed on channel pages
3) Community initial API call - on loading the page, the initial access

* Data returning added

* Comunity page strings, Communtiy tab, Community initial API call
Added:
1) Community page strings - the first few strings are now available
2) Community tab - A clickable tab is now displayed on channel pages
3) Community initial API call - on loading the page, the initial access

* Data returning added

* Images are now displayed in the community tab

* Comunity page strings, Communtiy tab, Community initial API call
Added:
1) Community page strings - the first few strings are now available
2) Community tab - A clickable tab is now displayed on channel pages
3) Community initial API call - on loading the page, the initial access

* Data returning added

* Images are now displayed in the community tab

* Added primitive video display

* Current changes

* Added preston's change with the ftcard and started on some layout basics

* Created Community Post Component and added fetch more button + functionality

* Fixed problem with videothumbnails not loading and adjusted their height to 100% in the ft-list sass file

* Added poll and ft-list-video to the community page

* Added author name placeholder (missing in module), the published date, the likes and dislikes as well as comment counts to posts. Additionally scaling of images was added

* Added basis for community page playlists

* Finalized a setup for playlists when wide enough

* Fix for missing key in custom list

* Added publish date translation

* Add empty alt tags

Co-authored-by: Jason <84899178+jasonhenriquez@users.noreply.github.com>

* fix accessibility issue

Co-authored-by: Jason <84899178+jasonhenriquez@users.noreply.github.com>

* change: ununique ids to classes

* add missing alt tag

* Redirect channel/id/community to the channel's community tab

* update yt-channel-info

* update to 3.0.1

* Update yarn.lock

* add basic multiImage support

* use tiny-slider for multiImage community posts

* update getChannelCommunityPostsMore

* Update yarn.lock

* fix yarn lock

* swap community and about tab

* Update yarn.lock

* Fix missing comma

* Removed trailing spaces

* Clearing all community post data when changing to another channel

* Restructuring of how the post cards are added, Empty page text,
ft-element-list props customization
1) Now the community page uses the same setup of ft-element-list as the
other pages on the channel.
2) If no posts are available, now it displays a message saying so
3) The ft-element-list component's display style can now be forced into
a certain display mode (list/grid) with the new prop. It will overwrite
the corresponding default value for list display

* Fixed display text path

* Fix lint"

* Adjusted css to fit to new layout

* Final touches community page to tidy up the console

* fix icons, fix linter

* fix hiding showmore button for community page

* fix showToast calls

* change all this.showToast to showToaast

* reinstall tinyslider

* use helpers

* small fixes

* fix: getting continuation of community posts

* remove unused code

* improve slider style import

* fix hiding 'ShowMore' button

* fix weird typo in css

* add invidous community tab support

* remove console testing code

* Apply suggestions from code review

Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>

* implement suggestions, improve thumbnail replacement

* use flip horizontal

* readd invidious fallback code, remove author name workaround

* replace another google domain when using invidious

* suppport invidious multiImage posts

* Use youtube.js for community posts

* add invidious polls, remove support for fetching more

* reorder icons alpabetically

* re-allow loading more when using localapi

* fix styling of multiImage, hide NA text

* fix loading playlist

* fix spacing of items

* fix issue with direct url to community tab

* make review recommendations

Co-Authored-By: absidue <48293849+absidue@users.noreply.github.com>

* fix displaying selected tab, get best quality image

---------

Co-authored-by: Preston <freetubeapp@protonmail.com>
Co-authored-by: ChunkyProgrammer <78101139+ChunkyProgrammer@users.noreply.github.com>
Co-authored-by: Jason <84899178+jasonhenriquez@users.noreply.github.com>
Co-authored-by: absidue <48293849+absidue@users.noreply.github.com>
2023-03-04 16:56:04 +08:00
absidue b2eaaaa42e
Fix handling user channels without subscribers (#3242) 2023-03-03 21:02:33 +00:00
absidue 7eb148ba51
Fix channel handle URLs with tabs (#3241) 2023-03-03 20:38:27 +00:00
PikachuEXE 5713e66822
* Update export data default filename to use today's date in local timezone instead of UTC (#3236) 2023-03-02 22:11:36 +01:00
absidue f56f6e7a20
Fix video throttling because of range header (#3234)
* Fix video throttling because of range header

* Use a better way to extract the range
2023-03-01 09:38:13 +08:00
absidue 291aeff1a6
Migrate channel related functionality to YouTube.js (#3143)
* Migrate channel related functionality to YouTube.js

* Better alert handling

* Add support for special autogenerated channels

* Add support for latest YouTube.js changes

* Add support for age restricted channels

* Update YouTube.js to 3.0.0

* Obey hide search bar setting for the tag searching

* Choose a better parameter name

* Allow sharing terminated and age restricted channels

* Add handle support for handles on Invidious

* Fix the backend fallback

* Use a positive parameter name

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* Fix duplicate tags causing errors

* Fix sorting for the Invidious API

* Move URL resolving to the channel page

* Update YouTube.js to 3.1.0

---------

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2023-03-01 08:39:33 +08:00
PikachuEXE 4ad3ec2c5f
Update subscriptions view to display video publish time in relative form even fetched via RSS (#3216)
* * Update subscriptions view to display video publish time in relative form even fetched via RSS

* * Update to support seconds, months, years

Also add more code comments
Also fix issue of display after switching back from another view
2023-02-26 20:23:06 -05:00
absidue d6b355082a
Remove beforeRouteLeave in ft-video-player as it is never called (#3213) 2023-02-27 09:03:26 +08:00
absidue 5d9383b67b
Better idle mouse hiding implementation (#3214) 2023-02-26 03:01:20 +00:00
absidue a382326a38
Use a player event to trigger the DASH quality selector creation (#3183)
* Use a player event to trigger the DASH quality selector creation

* Add requested comment
2023-02-17 09:34:43 +08:00
absidue e5cf255894
Use a computed property instead of a prop to specify the chapters layout (#3199) 2023-02-17 09:34:21 +08:00
ChunkyProgrammer 76d867a370
fix comment crash, render member info (#3196) 2023-02-16 18:47:12 +00:00
absidue a26c8e03a6
Fix the trending and watch pages swallowing the arrow key events (#3170)
* Fix the trending page swallowing the arrow key events

* Fix the watch page too
2023-02-10 12:44:17 -05:00
absidue 4c65982371
Better solution for hiding the PIP button for the audio formats (#3174)
* Better solution for hiding the PIP button for the audio formats

* Add comment

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

---------

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2023-02-10 12:43:06 -05:00
Artur 38fe74a4c6
Fix external player not opening on Subscriptions page (#3172)
* Changed undefined to null

If playlistId is set to undefined it will break /src/renderer/store/modules/utils.js:openInExternalPlayer() as it expects null or string. Undefined makes it believe it is a playlist and ignores the videoId

* revert last commit

* Added tests for undefined in openInExternalPlayer()
2023-02-09 19:24:27 +01:00
absidue 3bc7bdba86
Reduce duplicate code in the data export settings (#3150)
* Reduce duplicate code in the data export settings

* Use a more descriptive parameter name

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

---------

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2023-02-09 06:28:41 +00:00
absidue 36c42f06bf
Use secondary colour theme for all share buttons (#3169) 2023-02-08 18:56:42 +00:00
absidue cb1ea7e9a7
Fix spacing in the load comment replies text (#3171) 2023-02-08 18:52:36 +00:00
absidue e197f9871a
Extract chapters from the description if they are missing (#3167) 2023-02-08 18:44:35 +00:00
absidue bd6f143918
Fix positioning of the live chat scroll to bottom button (#3168) 2023-02-08 18:32:39 +00:00
PikachuEXE 20064c6607
Fix last view playlist saving with multiple windows (#3137)
* $ Rename arguments in functions

* ! Fix last view playlist saving with multiple windows
2023-02-05 20:48:31 -05:00
kawanakaiku edcd5ed922
Make sure window is visible (#3008) 2023-02-06 09:11:27 +08:00
Lodka Sawhet c7a99066da
Allows sponsor segments to be watched even if Auto Skip is enabled (#3116)
* Allows sponsor segments to be watched in Auto Skip mode

* 'b': only jump back to segments configured to be auto-skipped

* Remove 'b' keyboard shortcut
2023-02-05 14:47:02 -05:00
absidue 29f511372f
Support storyboards on very short shorts (#3128) 2023-02-05 14:19:24 -05:00
absidue c3867259e9
Trigger checkAspectRatio on loadedmetadata event (#3147) 2023-02-05 18:40:25 +00:00
absidue 3ca561c3e6
Miscellaneous cleanup (#3148) 2023-02-04 15:04:04 +08:00
ChunkyProgrammer b360f483d7
add missing search filters (#3141)
* add missing search filters

* allow sort by to be used on all types again

* fix local api filter duration
2023-02-01 20:43:04 +00:00
absidue b6892afb26
Use share menu on playlist page (#3121)
* Use share menu on playlist page

* Add support for playlist embed links

* Fix share button tooltip
2023-02-01 15:38:27 -05:00
absidue e95f6811f7
Add support for symlinked database files (#3129) 2023-01-31 07:14:25 +01:00
absidue 4114bebfed
Make the View Comments and Load More Comments buttons larger (#3130) 2023-01-30 10:06:43 +01:00
Melih 5fd236d963
Fix video fetch when using invidious API and sorting by popular. (#3126)
* Fix video fetch when using invidious API and
also sorting by popular.

* Remove redundant latestVideosPage variable
2023-01-30 11:43:46 +08:00
Emma 7640a93ec9
Reduce overflow in playlist view (#3123)
* Prevent overflow on playlist view on small 📱displays

* Prevent transition of width on `.thumbnailImage`

* Expand styles to be responsive at more widths
2023-01-30 10:02:08 +08:00
ChunkyProgrammer f1147b5108
Add QT Url support for freetube protocol (#3119)
* Add QT Url support for freetube protocol

* Update src/main/index.js

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>

* fix if statement

---------

Co-authored-by: PikachuEXE <pikachuexe@gmail.com>
2023-01-27 19:50:02 +01:00
PikachuEXE 0daa422284
Add feature to remember video history with last viewed playlist when enabled (#3006)
* + Add "infra" code for new feature

* * Update view/component to implement remembering last playlistID in history

* * Implement option to disable new feature

* ! Fix implementation for use case "Find a video (with playlist PL-A) to view, go to channel, view that same video, no playlist restored"
2023-01-26 03:18:04 +01:00
absidue 15bd1cb958
Set the Vue compiler whitespace option to condense (#3101) 2023-01-25 15:58:51 -05:00
absidue 5424122339
Filter out WebM DASH formats (#3105)
* Filter out WebM DASH formats

* Address pull request feedback
2023-01-25 15:58:25 -05:00
absidue 14caa8ccad
Handle missing data in search results (#3099) 2023-01-25 07:37:31 +08:00
PikachuEXE 38b856f546
! Fix shift enter on top nav search input does not open search in a new window (#3113) 2023-01-24 17:34:41 +01:00