ChunkyProgrammer
de2287963f
fix loading replies to comments, remove unneeded code
...
Co-Authored-By: Samantaz Fox <coding@samantaz.fr>
2024-04-10 18:32:20 -04:00
ChunkyProgrammer
039212ed91
escape html, add todo comment
2024-04-10 18:21:53 -04:00
ChunkyProgrammer
a9f55aa310
fix lint, improve performance
2024-04-10 18:21:53 -04:00
ChunkyProgrammer
c27bb90e4d
Add support for new comment format
2024-04-10 18:21:53 -04:00
syeopite
990931ff67
Remove legacy proxy code
2024-04-07 11:08:12 -07:00
ChunkyProgrammer
bfd9c9876e
Parse if video is post live dvr and include it in API
2024-04-07 10:26:33 -04:00
ChunkyProgrammer
2a029b4d8c
Add field for authorVerified
for recommended videos when using the API
2024-04-04 20:20:27 -04:00
Brahim Hadriche
a9e8aabe1f
Merge commit '08390acd0c17875fddb84cabba54197a5b5740e4' into fix/popular-disabled-error
2024-04-01 10:03:37 -04:00
Brahim Hadriche
b0c6bdf44c
use 403 code
2024-04-01 10:03:29 -04:00
Brahim Hadriche
c5eb10b21f
Revert "Fix error code for disabled popular endpoint"
...
This reverts commit 1363fb8094
.
2024-04-01 10:02:49 -04:00
Brahim Hadriche
1a2d408d38
Update shorts params
2024-03-31 11:37:13 -04:00
src-tinkerer
72fe8af850
Merge branch 'master' into stream-sort
2024-03-26 12:19:45 +00:00
ChunkyProgrammer
0aaa3e6a08
API: Parse channel's tags
2024-03-11 13:31:14 -04:00
nooptek
499aed37dd
Fix handling of modified source code URL setting
2024-03-10 17:51:29 +01:00
Samantaz Fox
619aa3ff05
YoutubeAPI: bump client versions
2024-03-06 21:36:15 +01:00
ChunkyProgrammer
5ceeefa236
add support for new likes format
2024-03-01 23:45:29 -05:00
Tomasz Wilczyński
4adb4c00d2
routes: Allow embedding videos in local HTML files ( fixes #4448 )
...
The current Content Security Policy does not allow to embed videos
inside local HTML files which are viewed in the browser via the file
protocol. This commit adds the file protocol to the allowed frame
ancestors, so that the embedded videos load correctly in local HTML
files.
This behaviour is consistent which how the official YouTube website
allows to embed videos from itself.
Signed-off-by: Tomasz Wilczyński <twilczynski@naver.com>
2024-02-24 20:01:16 +01:00
Samantaz Fox
e8a36985af
API: Add APIHandler back ( #4431 )
...
This handler should no have been removed in 4276, as it adds the required CORS
header (Access-Control-Allow-Origin) for public acces to the API.
Thanks to iBicha for noticing this!
2024-02-19 00:16:17 +01:00
Samantaz Fox
962ce23cc2
WebVTT::Builder: Add logic to escape special chars ( #4414 )
...
Note: WebVTT does allow some tags in the cue payload in some circumstances
while this PR just blindly escapes everything:
https://developer.mozilla.org/en-US/docs/Web/API/WebVTT_API#cue_payload_text_tags
2024-02-19 00:16:17 +01:00
Samantaz Fox
e0ce59d3e8
Channels: Add support for multi-image community posts ( #4412 )
...
This PR adds a CSS-only image carousel for community posts with more than
one image attached.
Closes issue 3522
2024-02-19 00:16:17 +01:00
Samantaz Fox
c5a3112e49
CSS: expand #contents width on small screens ( #4405 )
...
The #contents div now takes the full width on small screens (< 1280px).
All page elements have a little more room, especially the video titles.
2024-02-19 00:16:17 +01:00
Samantaz Fox
d3703baba9
I18n: Add missing translation strings ( #4424 )
...
Closes issue 3120
2024-02-19 00:15:44 +01:00
ChunkyProgrammer
26429bee3f
make it so interpolation text can be a hash
...
Co-Authored-By: Samantaz Fox <coding@samantaz.fr>
2024-02-15 21:45:22 -05:00
ChunkyProgrammer
ef6b766b29
Add support for multi image community posts
2024-02-15 21:45:21 -05:00
Samantaz Fox
60f6a345d9
Locales: Fix broken i18Next v3/v4 plurals
...
Languages impacted: es, fa, pt
2024-02-15 22:12:04 +01:00
Samantaz Fox
7b84bdb29b
API: Add APIHandler back
...
This handler should no have been removed in 4276, as it adds the required CORS
header (Access-Control-Allow-Origin) for public acces to the API.
Thanks to iBicha for noticing this!
2024-02-13 21:05:26 +01:00
Samantaz Fox
5c0b6d8afa
Stats: Fix two swapped function names ( #4376 )
...
The function names `count_users_active_6m` and `count_users_active_1m` were
swapped. As the names were swapped on both sides (declaration and use), this
had no functional impact.
No related isse was tracked.
2024-02-12 22:34:13 +01:00
Samantaz Fox
c85b908613
API: Fix missing wildcards after login redirect ( #4348 )
...
This PR fixes an issue where the `scopes` parameter would see its wildmark
characters (*) removed during the login page redirection, after that a call
to `/authorize_token` was made while the user was not logged in.
Closes issue 4200
2024-02-12 22:30:48 +01:00
Samantaz Fox
f32764c840
HTML: Preserve playlist in "Watch on YouTube" link ( #4342 )
...
It seems that at some point, Youtube changed the URL parameter from `plid`
to `list` and we didn't notice. This fixes that.
Closes #3929
2024-02-12 22:23:44 +01:00
Samantaz Fox
d30dae43fe
HTML: Add title to toggle theme icon ( #4320 )
2024-02-12 22:20:14 +01:00
Samantaz Fox
1f51255f2f
API: Remove the fields parameter ( #4276 )
...
Multiple users have reported that the fields parameter is slowing down API
response times significantly. As most API endpoints are already optimized to
make as few requests as possible to Youtube, there is no point in limiting the
output. Furthermore, the added processing might be part of the broader memory
leak problem (See 1438).
In addition, the small increase in data output is not much of an issue compared
to the huge video proxy that lies next to this API.
No related issue tracked
2024-02-12 22:10:45 +01:00
Samantaz Fox
dcbe52c9fb
Videos: Use start time and end time for clips ( #4264 )
...
This PR parses the start and end time for clips.
It also adds a new, dedicated API endpoint (`/api/v1/clips/{id}`) for
retrieving the start and end time of a clip.
Here is a sample response from that new endpoint (`video` is a video object,
as described in https://docs.invidious.io/api/common_types/#videoobject ):
GET `/api/v1/clips/UgkxxPM3BRphCAPLP88YoUGuj79KXPfpNNO_?pretty=1`
Response:
```
{
"startTime": 8842.645,
"endTime": 8855.856,
"clipTitle": "✂️ Kirby is pink!",
"video": {}
}
```
Closes issue 3921
2024-02-12 22:10:16 +01:00
Samantaz Fox
bd5df3af5f
API: Unescape search suggestions ( #4218 )
...
Previously, the suggestion were HTML encoded. This PR fixes that.
2024-02-12 22:03:33 +01:00
Samantaz Fox
9bd2072e1d
API: Add playlist and start time to resolve_url
...
This adds `playlistId` and `startTimeSeconds` to /api/v1/resolveurl if these
informations were returned by Youtube's endpoint.
2024-02-12 22:01:08 +01:00
Samantaz Fox
3b4358dbd4
Extractors: Don't error if AuthorId does not exist ( #3869 )
...
Some playlist author's don't have a YouTube channel, so does movies.
This caused various extractors (related videos, search) to fail.
Closes the following issues:
2530, 3349, 3766, 3812, 4133
2024-02-12 21:54:17 +01:00
absidue
72bcd3cc72
Handle non-200 status codes for YouTube DASH manifests
2024-02-12 18:55:15 +01:00
shironeko
6b33820f1f
Add missing translation strings
...
closes #3120
2024-02-08 19:01:19 -05:00
shironeko
98c421e9f5
Fix when video from pubsub is a scheduled event
2024-02-08 18:58:23 -05:00
shironeko
c864a63b6d
Fix pubsub feed parsing
...
similar to what's done in #3793 , this is causing an assert on my instance
2024-02-08 17:05:11 -05:00
syeopite
0ad2eff2a4
WebVTT::Builder: Add logic to escape special chars
2024-01-30 15:25:45 -08:00
ThetaDev
c005ada487
fix: prevent censoring of self-harm related search queries ( #4403 )
...
* fix: prevent censoring of self-harm related search queries
* fix: yt_filters_spec with new flag
2024-01-29 14:59:25 +01:00
toabr
4a339df5c4
CSS: expand #contents width on small screens
2024-01-27 00:38:47 +01:00
syeopite
1c0b4205d4
Add parameter to disable force_resolve
in make_client
( #4335 )
...
* Add option to disable force_resolve in make_client
Some websites such as archive.org and textcaptcha.com
does not support IPv6 and as such requests fail when Invidious requests
with IPv6 to those services.
* Reenable force_resolve on pubsub subcribe request
* Make force_resolve false by default in make_client
* Remove missed explicit force_resolve=false
2024-01-10 23:01:00 +00:00
vojkovic
7cca1285aa
Fix two swapped function names
2024-01-06 15:51:31 +08:00
ChunkyProgrammer
7da4a7f72b
add null safety to clip parsing
2023-12-26 22:05:09 -05:00
nixos script
0917efd9cb
fix issue where scope would be missing the * if the user was not logged in before calling the authorize endpoint
...
fix #4200
2023-12-21 13:52:19 +08:00
ChunkyProgrammer
090b470bfc
fix potential memory leak
2023-12-19 23:07:18 -05:00
guidiasz
87a8207f37
fix: "Watch on YouTube" preserve current playlist
2023-12-18 13:23:55 -03:00
ChunkyProgrammer
fe8b1b4cc4
Add title to toggle theme icon
2023-12-07 11:43:56 -05:00
ChunkyProgrammer
f1edb1d6bf
fix related video author when id is empty
2023-12-07 09:39:33 -05:00
Chunky programmer
b5f8b4542a
Search: Don't error if AuthorId does not exist
2023-12-07 09:39:33 -05:00
ChunkyProgrammer
b344d98c25
Add API endpoint for Clips
2023-12-07 09:39:04 -05:00
ChunkyProgrammer
8c22e6a640
use start time and endtime for clips
2023-12-07 09:39:03 -05:00
ChunkyProgrammer
6488794218
Unescape search suggestions
2023-12-07 09:36:59 -05:00
Samantaz Fox
07fe648a9c
Remove anti-captcha ( #4277 )
2023-12-06 18:29:16 +01:00
Samantaz Fox
6da3287e9d
Misc: Fix logic for setting user agent ( #4265 )
2023-12-06 18:28:12 +01:00
Samantaz Fox
37c2f5caed
Misc: Use #splat method for macro expressions ( #4242 )
2023-12-06 18:22:50 +01:00
Samantaz Fox
e8a14446af
Videos: Append '&mpd_version=5' to DASH manifest URL ( #4196 )
2023-12-06 18:20:26 +01:00
src-tinkerer
cf61af67ab
Update src/invidious/routes/channels.cr sort_by for consistency
2023-11-30 14:34:01 +03:30
Brahim Hadriche
1363fb8094
Fix error code for disabled popular endpoint
2023-11-28 21:34:17 -05:00
src-tinkerer
5f2b43d653
Remove unecessary if condition in videos.cr
2023-11-25 00:48:27 +03:30
src-tinkerer
6251d8d43f
Rename a variable in videos.cr
2023-11-25 00:46:11 +03:30
Samantaz Fox
9d5fa2bcc4
Helpers: remove JSONFilter logic
2023-11-23 18:30:42 +01:00
Samantaz Fox
9310d09f93
Kemal: remove APIHandler middleware
2023-11-23 18:30:37 +01:00
src-tinkerer
162b89d942
Fix format in videos.cr
2023-11-23 14:44:37 +03:30
src-tinkerer
0d63ad5a7f
Use a single function for fetching channel contents
2023-11-22 14:52:17 +03:30
Samantaz Fox
3a5d408602
Remove leftover functions/specs used by the anti-captcha job
2023-11-20 17:40:31 +01:00
Samantaz Fox
7e363fa3c8
Config: Remove anti-captcha related configs
2023-11-20 17:39:51 +01:00
Samantaz Fox
d9416a0be5
Jobs: Remove BypassCaptchaJob
2023-11-20 17:39:13 +01:00
src-tinkerer
63e5d72466
Remove unused function produce_channel_livestream_url
2023-11-20 15:50:59 +03:30
Brahim Hadriche
b40cf6544a
Revert "Make head request to resolve short urls"
...
This reverts commit 7e267da5be
.
2023-11-19 16:06:29 -05:00
ChunkyProgrammer
8338a73e7b
add user_agent if empty or crystal
2023-11-17 08:01:56 -05:00
ChunkyProgrammer
86ee761788
Fix logic for setting user agent
2023-11-15 00:51:43 -05:00
karelrooted
c251c66748
fix youtube api vtt format subtitle
...
for fmt=vtt to work the fmt parameter in the original caption api url need to be replaced
2023-11-14 13:16:08 +08:00
syeopite
ed8b84ed15
Replace more * in macro with #splat
2023-11-08 00:49:37 -08:00
syeopite
8ce91166d6
Remove instance of the * operator in macro expr
2023-11-08 00:42:46 -08:00
syeopite
8525758583
Use #splat method for macro expressions
2023-11-08 00:37:18 -08:00
syeopite
ab4c0a1d3c
Fetch channel info from home tab instead of about
2023-11-07 23:53:14 -08:00
syeopite
c31908a011
Update params protobuf for channel about tab
2023-11-07 22:19:56 -08:00
syeopite
438467f69a
Add playback success rate to /api/v1/stats
( #4085 )
...
* Add stats-based /videoplayback blockage status
* Count when YouTube returns wrong video as failure
* Cast playback stats hash type prior to return
* Bump stats refresh timer to 10 minutes
2023-11-04 13:52:30 +00:00
Émilien (perso)
db3c57d49f
force resolve for everything ( #4225 )
2023-11-02 22:35:50 +00:00
src-tinkerer
b0df3774db
Add sort options to streams
2023-11-01 21:56:25 +03:30
Brahim Hadriche
3881038a32
format
2023-10-26 17:51:38 -04:00
Brahim Hadriche
7e267da5be
Make head request to resolve short urls
2023-10-26 17:48:58 -04:00
Brahim Hadriche
d7901c1e0d
type fix
2023-10-26 17:35:52 -04:00
Brahim Hadriche
85a5bbd696
Add playlist and start time to the resolve url
2023-10-26 17:24:53 -04:00
Samantaz Fox
07de1e236f
Videos: Append '&mpd_version=5' to DASH manifest URL
...
This makes Youtube return a MPD manifest with templates rather than
lengthy <SegmentList>. The returned manifest is about 44 times smaller.
2023-10-22 17:56:04 +02:00
Samantaz Fox
2414e7db41
User: Add support for importing Youtube watch history ( #4171 )
2023-10-21 18:33:05 +02:00
Samantaz Fox
1a33012cad
CSS: Remove inline styling of the download widget ( #4162 )
2023-10-21 18:32:40 +02:00
Samantaz Fox
cf7c49deb0
Captions: Use 'fmt=vtt' instead of 'format=vtt' ( #4152 )
2023-10-21 18:32:28 +02:00
Samantaz Fox
d543a68a84
API: Add "authorVerified" to the video endpoint ( #4150 )
2023-10-21 18:32:01 +02:00
Samantaz Fox
2a65b5f52e
Frontend: Add video timestamp on external links ( #4101 )
2023-10-21 18:31:42 +02:00
Samantaz Fox
88cc62d45e
User: Fix importing FreeTube subscriptions with multiple profiles ( #4011 )
2023-10-21 18:31:18 +02:00
Ulysses Zhan
3b219a4c7f
remove a debug statement
2023-10-20 13:45:16 -07:00
Émilien (perso)
0e4d3d89fc
update params for fetching stream data ( #4156 )
...
* update params for fetching stream data
* Remove link about special parameter
2023-10-20 08:48:56 +02:00
jt404
d7ea5609b2
move styles for download widget to default.css file
2023-10-17 01:00:14 +02:00
ChunkyProgrammer
0bd415158f
Fix importing FreeTube subscriptions with multiple profiles
...
Co-Authored-By: Samantaz Fox <coding@samantaz.fr>
2023-10-16 00:32:24 -04:00
Ulysses Zhan
b9cbdce976
add: importing watch history from YouTube
2023-10-14 15:49:33 -07:00
jt404
8125ddca06
Replace inline styling for download widget with css file
2023-10-12 03:22:34 +02:00
RadoslavL
8e45e05fba
Get "author_verified" using the instance method instead of using the info hash.
...
Co-authored-by: Samantaz Fox <coding@samantaz.fr>
2023-10-09 09:20:35 +03:00
Samantaz Fox
0aebac5f3e
Captions: Use 'fmt=vtt' instead of 'format=vtt'
2023-10-08 12:40:49 +02:00
Samantaz Fox
60fae015d8
Add support for community post page/comments ( #4010 )
2023-10-07 19:58:54 +02:00
Samantaz Fox
ce0e21400e
Search: Parse channel handle ( #3994 )
2023-10-07 19:56:07 +02:00
Samantaz Fox
1caaf63c8a
Refactor WebVTT building logic into WebVTT::Builder ( #4070 )
2023-10-07 19:53:29 +02:00
Samantaz Fox
eddb54adb1
Routing: Add support for new routes ( #4099 )
2023-10-07 19:52:48 +02:00
RadoslavL
7dc9b3f088
Fixed formatting
2023-10-07 20:29:48 +03:00
Samantaz Fox
f26c995344
i18next: Revert some changes, as es/pt/pt-PT aren't mixed up (yet)
2023-10-07 19:12:17 +02:00
RadoslavL
ed2a44149e
Added authorVerified to the video API v1 route
2023-10-07 17:55:42 +03:00
Samantaz Fox
32310b7c9f
i18Next: Add exceptions for mixed v3/v4 plural forms
2023-10-06 08:19:27 +02:00
ChunkyProgrammer
f77e4378fe
Add support for viewing comments without js
...
Improve stylings
2023-09-28 18:09:45 -04:00
ChunkyProgrammer
4f25069f55
remove unused variable
...
simplify resolve url
remove trailing spaces
Co-Authored-By: Samantaz Fox <coding@samantaz.fr>
2023-09-27 17:36:06 -04:00
Thomas Lange
824cc1a5aa
Don't redefine the "preload" option in player.js
...
If the HTML5 "<video>" element defines the "preload" attribute directly,
it isn't necessary to redefine the "preload" option in the player.js.
2023-09-27 15:36:40 +02:00
Thomas Lange
bf470704a5
Add option to control preloading of video data
...
Fix #4110 by adding an option to control the preloading of video data on
page load. If disabled ("false"), the browser will not preload any video
data until the user explicitly hits the "Play" button.
If enabled ("true"), the default behavior will be used, which means the
browser decides how much of the video will be preloaded.
2023-09-26 22:21:12 +02:00
syeopite
be2feba17c
Lint
2023-09-23 09:57:26 -04:00
syeopite
a999438ae4
Consistency: rename #add_timestamp_component
...
Removes the add_ prefix for consistency with the other methods in
WebVTT::Builder
2023-09-23 09:41:43 -04:00
syeopite
e9d59a6dfd
Update src/invidious/helpers/webvtt.cr
...
Co-authored-by: Samantaz Fox <coding@samantaz.fr>
2023-09-23 09:41:43 -04:00
syeopite
4e97d8ad09
Update documentation for WebVTT.build
2023-09-23 09:41:43 -04:00
syeopite
d371eb50f2
WebVTT::Builder: rename #line to #cue
2023-09-23 09:41:41 -04:00
syeopite
0cb7d0b441
Refactor Invidious's VTT logic to use WebVtt.build
2023-09-23 09:40:04 -04:00
syeopite
54fa59cbb0
Add method to construct WebVTT files
...
Similar to JSON.Build
2023-09-23 09:20:20 -04:00
ChunkyProgrammer
8781520b8a
Search: Parse channel handle and hide video count when channel handle exists
...
Co-Authored-By: Samantaz Fox <coding@samantaz.fr>
2023-09-18 20:12:07 -04:00
ChunkyProgrammer
bb04bcc42c
Apply suggestions from code review
...
add videoId to resolve_url function
Co-Authored-By: Samantaz Fox <coding@samantaz.fr>
2023-09-18 20:10:41 -04:00
ChunkyProgrammer
f55b96a53b
Always craft Community Post params
2023-09-18 20:10:41 -04:00
ChunkyProgrammer
734f1b7764
Simplify resolveUrl api call
...
Co-Authored-By: Samantaz Fox <coding@samantaz.fr>
2023-09-18 20:10:41 -04:00
ChunkyProgrammer
e3c365f3d6
Add support for post page
2023-09-18 20:10:41 -04:00
Samantaz Fox
bb14f79496
Playlists: Use subtitle when author is missing ( #4025 )
2023-09-18 23:34:30 +02:00
Samantaz Fox
842e9fade5
Captions: Add ability to use Innertube's transcripts API ( #4001 )
2023-09-18 23:31:56 +02:00
Samantaz Fox
ebee973b24
Routes: Redirect unknown channel tabs to channel home page
2023-09-16 00:54:14 +02:00
Samantaz Fox
58f4a012b7
Frontend: Add timestamp on switch invidious instance links
2023-09-14 22:28:07 +02:00
Samantaz Fox
2456b62936
Frontend: Add timestamp on invidious embed links
2023-09-14 22:27:36 +02:00
Samantaz Fox
792a999386
Frontend: Add timestamp on youtube+embed links
2023-09-14 22:26:36 +02:00
Samantaz Fox
2425c47882
Routing: Add support for the '/live/<id>' route
2023-09-13 23:41:31 +02:00
Samantaz Fox
49b9316b9f
Routing: Handle current and future routes more nicely
2023-09-13 23:40:20 +02:00
ChunkyProgrammer
afb04c3bda
HTMLl.Escape the playlist subtitle
2023-09-11 22:35:58 -04:00
ChunkyProgrammer
d7696574f4
Playlist: Use subtitle when author is missing
2023-09-11 22:35:57 -04:00
Samantaz Fox
ac0c0609bb
Add workaround for storyboards on local instances ( #4040 )
2023-08-26 12:15:04 +02:00
Samantaz Fox
7e84d07c27
Playlist import no refresh ( #3973 )
2023-08-26 12:12:42 +02:00
Samantaz Fox
a8295b452e
Search: Add hashtag result ( #3989 )
2023-08-26 12:11:38 +02:00
syeopite
3615bb0e62
Update src/invidious/videos/caption.cr
...
Co-authored-by: Samantaz Fox <coding@samantaz.fr>
2023-08-24 16:21:05 -07:00
syeopite
7d435f082b
Update src/invidious/videos/transcript.cr
...
Co-authored-by: Samantaz Fox <coding@samantaz.fr>
2023-08-24 23:20:20 +00:00
syeopite
1f7592e599
Refactor structure of caption.cr
...
Rename CaptionsMetadata to Metadata
Nest Metadata under Captions
Unnest LANGUAGES constant from Metadata to main Captions module
2023-08-24 16:00:02 -07:00
syeopite
2b36d3b419
Update errors.cr
2023-08-10 18:45:10 +00:00
syeopite
6b17bb5250
Regression from #4037 | Fix storyboards
...
PR #4037 introduced a workaround around YouTube's new integrity checks
on streaming URLs. However, the usage of this workaround prevents
storyboard data from being returned by InnerTube.
This commit fixes that by only using the workaround when calling try_fetch_streaming_data
2023-08-08 15:28:01 -07:00
syeopite
a81c0f329c
Add workaround for storyboards on priv. instances
...
An upstream problem with videojs-vtt-thumbnails means that URLs gets
joined incorrectly on any instance where `domain`, `external_port` and
`https_only` aren't set.
This commit adds some logic with the 404 handler to mitigate this
problem. This is however only a workaround.
See:
https://github.com/iv-org/invidious/issues/3117
https://github.com/chrisboustead/videojs-vtt-thumbnails/issues/31
2023-08-08 15:13:23 -07:00
syeopite
2f6b2688bb
Use workaround for fetching streaming URLs
...
YouTube appears to be A/B testing some new integrity checks. Adding the
parameter "CgIQBg" to InnerTube player requests appears to workaround
the problem
See https://github.com/TeamNewPipe/NewPipeExtractor/pull/1084
2023-08-06 12:22:22 -07:00
syeopite
c5fe96e936
Remove lsquic from codebase
2023-07-26 07:19:12 -07:00
syeopite
3509752b79
Rename transcript() to get_transcript() in YT API
2023-07-23 16:52:47 -07:00
syeopite
e4942b188f
Integrate transcript captions into captions API
2023-07-23 14:40:09 -07:00
syeopite
caac7e2166
Add method to convert transcripts response to vtt
2023-07-23 14:40:08 -07:00
syeopite
4b3ac1a757
Add method to parse transcript JSON into structs
2023-07-23 14:40:08 -07:00
syeopite
8e18d445a7
Add method to generate params for transcripts api
2023-07-23 14:40:08 -07:00
syeopite
7e5935a9da
Rename Caption struct to CaptionMetadata
...
The Caption object does not actually store any text lines for the
subtitles. Instead it stores the metadata needed to display and fetch
the actual captions from the YT timedtext API.
Therefore it may be wiser to rename the struct to be more reflective of
its current usage as well as the future usage once the current caption
retrival system is replaced via InnerTube's transcript API
2023-07-23 14:40:08 -07:00
syeopite
2e67b90540
Add method to query /youtubei/v1/get_transcript
2023-07-23 14:40:02 -07:00
Samantaz Fox
d956b1826e
Community: Parse quiz attachments ( #3978 )
2023-07-20 08:16:10 +02:00
Samantaz Fox
c1a69e4a4a
Channels: Use innertube to fetch the community tab
2023-07-18 00:29:25 +02:00
Samantaz Fox
f38d1f33b1
HTML: Add UI element for 'SearchHashtag' in item.ecr
2023-07-18 00:01:16 +02:00
Samantaz Fox
839e90aeff
Extractors: Add module for 'hashtagTileRenderer'
2023-07-18 00:01:13 +02:00
Samantaz Fox
69e2eaccc0
RSS Feeds: Fix Nil assertion failed ( #3958 )
2023-07-16 18:13:55 +02:00
Samantaz Fox
ff6166edf7
Playlists: Fix pagination of Invidious playlists ( #3861 )
2023-07-16 18:02:27 +02:00
Samantaz Fox
c8ade5194b
UI: Nicer buttons ( #3763 )
2023-07-16 17:36:35 +02:00
ChunkyProgrammer
70145cba31
Community: Parse Quiz
attachments
2023-07-15 06:41:03 -07:00
Samantaz Fox
05cc503391
Fix lint
2023-07-15 12:57:26 +00:00
ChunkyProgrammer
f2fa3da9d2
Add support for releases and podcasts tabs
2023-07-14 16:15:20 -07:00
Brahim Hadriche
0110f865c3
Playlist import no refresh
2023-07-08 16:51:19 -04:00
Samantaz Fox
9b75f79fb5
HTML/CSS: Add thumbnail placeholder in thin mode
...
This change is required to make the overlay buttons functional
(add to and delete from playlist, mark as watched, etc.)
2023-07-08 21:33:59 +02:00
Samantaz Fox
c17404890c
HTML: Use the new pagination component for history/subscriptions
2023-07-08 20:48:37 +02:00
Samantaz Fox
06b2bab795
HTML: Fix thumbnails of related videos (watch page)
2023-07-08 20:48:37 +02:00
Samantaz Fox
411208bbd2
HTML: Reorder buttons on the channel and watch pages
2023-07-08 20:48:36 +02:00
Samantaz Fox
42fa6ad2a3
HTML/CSS: Fix buttons' responsiveness
2023-07-08 20:48:36 +02:00
Samantaz Fox
8718f20688
HTML: Fix thin mode/thumbnail on other items
2023-07-08 20:48:36 +02:00
Samantaz Fox
43dcab225c
HTML: merge MixVideo with other types in item.ecr
2023-07-08 20:48:36 +02:00
Samantaz Fox
080c7446c6
HTML: Use new buttons for playlists (save/delete/add videos/etc...)
2023-07-08 20:48:32 +02:00
Samantaz Fox
b6bbfb9b20
HTML: Use new buttons for thumbnail overlays
...
In addition, this commit also heavily changes the structure of the
generic "video card" item. Main benefits:
* Improved accessibility for keyboard users
* Many styling glitches were fixed
* PlaylistVideos now use the same items as the rest
* Elements all have distinct CSS classes
* Design can be expanded to add more icons
2023-07-06 00:58:32 +02:00
Samantaz Fox
7bd6d0ac49
HTML: Use the new pagination component for channel pages
2023-07-06 00:58:30 +02:00
Samantaz Fox
efaf7cb09c
HTML: Use the new pagination component for search results
2023-07-06 00:57:40 +02:00
Samantaz Fox
c4ef3bed95
HTML: Use the new pagination component for playlists
2023-07-06 00:23:22 +02:00
Samantaz Fox
57c7b922f7
HTML: Make a dedicated ECR component for items + pagination
2023-07-06 00:23:22 +02:00
Samantaz Fox
c088749744
HTML: Add code to generate page nav buttons
2023-07-06 00:23:22 +02:00
Samantaz Fox
462609d90d
Utils: Create a function to append parameters to a base URL
2023-07-06 00:23:22 +02:00
Samantaz Fox
0ba22ef391
I18n: Add a function to determine if a given locale is RTL
2023-07-06 00:23:22 +02:00
Omer Naveed
a38edd7330
Fix Nil assertion failed in RSS feeds
2023-07-01 18:35:01 -05:00
Samantaz Fox
d7568ac45a
Remove old warning code about unconfigured 'hmac_key'
2023-07-01 21:53:56 +02:00
Samantaz Fox
ba43365acb
Config: Stop if 'hmac_key' is the default value
2023-07-01 19:38:50 +02:00
Samantaz Fox
1647092b3c
Config: Make 'hmac_key' mandatory
2023-07-01 19:29:24 +02:00
Samantaz Fox
16b8b6034f
Channels: Use new ctoken value for "sort by oldest"
2023-06-21 21:41:53 +02:00
Ikko Eltociear Ashimine
495ccdc221
Fix typo in jobs.cr
...
follwing -> following
2023-06-13 19:16:07 +09:00
Samantaz Fox
e6f5fcbc4b
User: Strip empty new lines before parsing CSV ( #3895 )
2023-06-12 21:09:39 +02:00
Samantaz Fox
df6b51f9c6
Comments: Fix display of youtube links ( #3911 )
2023-06-12 21:04:57 +02:00
lamemakes
7a569d81ca
Updated comment link returns
2023-06-12 09:40:26 -04:00
Émilien (perso)
875b8ea0c2
Merge pull request #3903 from unixfox/temporary-message-video-not-available
2023-06-11 21:05:49 +02:00
Emilien Devos
8e4833d21a
temp explanation about video not available issue
2023-06-11 16:54:30 +02:00
Samantaz Fox
b06c87ff8d
User: Remove broken Google login (various comments)
2023-06-11 16:34:59 +02:00
Samantaz Fox
69f23d95b8
User: Remove broken Google login (various functions)
2023-06-11 16:34:59 +02:00
Samantaz Fox
3444117818
User: Remove broken Google login (various constants)
2023-06-11 16:34:59 +02:00
Samantaz Fox
39ff94362e
User: Remove broken Google login (feeds route)
2023-06-11 16:34:59 +02:00
Samantaz Fox
11ab6ffb32
User: Remove broken Google login (notifications route)
2023-06-11 16:34:59 +02:00
Samantaz Fox
9dd4195dd0
User: Remove broken Google login (subscribe route)
2023-06-11 16:34:59 +02:00
Samantaz Fox
fcbd5106c3
User: Remove broken Google login (password change route)
2023-06-11 16:34:59 +02:00
Samantaz Fox
836898754e
User: Remove broken Google login (before_all route)
2023-06-11 16:34:59 +02:00
Samantaz Fox
d3b04ac68c
User: Remove broken Google login (dedicated captcha route)
2023-06-11 16:34:59 +02:00
Samantaz Fox
b2b61ab0a9
User: Remove broken Google login (login route)
2023-06-11 16:34:59 +02:00
Samantaz Fox
62bd895562
User: Remove broken Google login (HTML form)
2023-06-11 16:34:59 +02:00
Samantaz Fox
46ea22f75c
Watch: Load watch page data for premieres ( #3866 )
2023-06-11 16:05:32 +02:00
Samantaz Fox
1b942f4f0a
User: Strip empty new lines before parsing CSV
2023-06-10 20:58:21 +02:00
Samantaz Fox
e7bed765fe
Chore: Bump various constants ( #3843 )
2023-06-09 21:19:20 +02:00
Samantaz Fox
7556cb69f2
YT API: Bump WEB/MWEB client versions
2023-06-09 21:05:48 +02:00
Samantaz Fox
b5e30d66d4
YT API: Bump Android app version
2023-06-09 21:05:48 +02:00
Samantaz Fox
d9521c82cf
YT API: Bump iOS app version
2023-06-09 21:05:48 +02:00
Samantaz Fox
505a1566d1
Misc: Update User-Agent string
2023-06-09 21:05:45 +02:00
Chunky programmer
233bd3f593
Watch: Load watch page data for premieres
2023-06-07 11:32:20 -04:00
Chunky programmer
d164776024
Playlists: Fix paging for Invidious playlists
2023-06-06 16:27:26 -04:00
Emilien Devos
372192eabc
warn about hmac key deadline
2023-06-04 17:30:23 +02:00
Samantaz Fox
bbf16279bb
Search: Allow browser suggestions ( #3724 )
2023-06-01 22:41:04 +02:00
Samantaz Fox
16ac3be85b
Playlists: Fix duplicated videos across pages ( #3807 )
2023-05-31 22:30:52 +02:00
Samantaz Fox
21f0b90354
Utils: Add support for short "x ago" forms ( #3825 )
2023-05-31 22:28:47 +02:00
Samantaz Fox
928ea75dbc
Search: Parse playlists when searching a channel ( #3804 )
2023-05-31 22:27:53 +02:00
Samantaz Fox
898066407d
Utils: Update 'decode_date' to take into account short "x ago" forms
2023-05-29 12:41:53 +02:00
Samantaz Fox
f0c8477905
Comments: Move content-related functions to their own file
2023-05-25 22:53:53 +02:00
Samantaz Fox
4379a3d873
Comments: Move ctoken functions to youtube.cr
2023-05-25 22:53:53 +02:00
Samantaz Fox
df85265453
Comments: Move link utility functions to own file + module
2023-05-25 22:53:53 +02:00
Samantaz Fox
de78848039
Comments: Move 'template_reddit' function to own file + module
2023-05-25 22:53:53 +02:00
Samantaz Fox
e10f6b6626
Comments: Move 'template_youtube' function to own file + module
2023-05-25 22:53:53 +02:00
Samantaz Fox
634e913da9
Comments: Move 'fetch_reddit' function to own file + module
2023-05-25 22:53:53 +02:00
Samantaz Fox
1b25737b01
Comments: Move 'fetch_youtube' function to own file + module
2023-05-25 22:53:53 +02:00
Samantaz Fox
8dd1824869
Comments: Move reddit type definitions to their own file
2023-05-25 22:53:53 +02:00
Samantaz Fox
c7876d564f
Comments: add 'require' statement for a dedicated folder
2023-05-25 22:53:53 +02:00
Samantaz Fox
6440ae0b5c
Community: Fix position of the "creator heart" (broken by #3783 )
2023-05-23 23:32:23 +02:00
Samantaz Fox
e238c08be5
Search: Populate search bar with ChannelId ( #3805 )
2023-05-23 21:57:07 +02:00
Samantaz Fox
8d434ac06a
User: Allow CSV Youtube playlists to be imported ( #3595 )
2023-05-23 19:34:24 +02:00
ChunkyProgrammer
8bd2e60abc
Use string interpolation instead of concatenation
...
Co-authored-by: Samantaz Fox <coding@samantaz.fr>
2023-05-22 09:19:32 -04:00
chunky programmer
c713c32ceb
Fix issue where playlists will refetch the same videos
2023-05-14 22:35:51 -04:00
chunky programmer
12b4dd9191
Populate search bar with ChannelId
2023-05-14 17:25:32 -04:00
chunky programmer
b2a0e6f1ff
Parse playlists when searching a channel
2023-05-14 16:51:06 -04:00
chunky programmer
d728599251
add page parameter
2023-05-14 15:58:15 -04:00
ChunkyProgrammer
d6fb5c03b7
add hashtag endpoint
2023-05-14 15:58:14 -04:00
Samantaz Fox
6755e31b72
Fix hashtag continuation token
2023-05-14 20:17:51 +02:00
Samantaz Fox
10fee9da61
Community: Fix live video + parse playlist attachments ( #3767 )
2023-05-08 15:42:06 +02:00
Samantaz Fox
b420de6977
Subscriptions: Fix Nil assertion failed ( #3793 )
2023-05-08 15:41:49 +02:00
Samantaz Fox
c385a944e6
Subscriptions: Fix casing of XML tag names
2023-05-08 13:10:18 +02:00
Samantaz Fox
ce1fb8d08c
Use XML.parse instead of XML.parse_html
...
Due to recent changes to libxml2 (between 2.9.14 and 2.10.4,
See https://gitlab.gnome.org/GNOME/libxml2/-/issues/508 ), the
HTML parser doesn't take into account the namespaces (xmlns).
Because HTML shouldn't contain namespaces anyway, there is no
reason for use to keep using it. But switching to the XML
parser means that we have to pass the namespaces to every
single 'xpath_node(s)' method for it to be able to properly
navigate the XML structure.
2023-05-08 01:05:48 +02:00
Samantaz Fox
720789b622
HTML: wrap comments metadata in a paragraph
2023-05-06 19:46:07 +02:00
Samantaz Fox
ce2649420f
CSS: Fix iframe attachment size in community posts
2023-05-06 19:46:03 +02:00
ChunkyProgrammer
2d5145614b
Fix unknown type attachment
...
Co-authored-by: Samantaz Fox <coding@samantaz.fr>
2023-05-02 21:10:57 -04:00
Samantaz Fox
1eb1bae370
Fix watch history order ( #3653 )
2023-05-03 00:34:04 +02:00
Samantaz Fox
5017176e39
Trending: fix mistakes from #3773 ( #3781 )
2023-05-03 00:33:56 +02:00
Samantaz Fox
efda154ec8
Allow channel urls to be displayed in video's description ( #3759 )
2023-05-03 00:33:48 +02:00
Samantaz Fox
90914343ec
Trending: de-duplicate results
2023-05-03 00:02:38 +02:00
Samantaz Fox
384a8e200c
Trending: fix mistakes from #3773
2023-05-02 23:35:37 +02:00
ChunkyProgrammer
28584f22c5
Fix index out of bounds error
2023-04-30 19:03:36 -04:00
chunky programmer
1b10446e5e
move url parsing to utils method
2023-04-30 18:58:39 -04:00