{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":573863141,"defaultBranch":"master","name":"LightTube","ownerLogin":"lighttube-org","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2022-12-03T17:10:47.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/155056873?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1723701962.0","currentOid":""},"activityList":{"items":[{"before":"e671905671362ee06fcdef112b116066f83707d5","after":"2edc13d1b2d33a4c5f2c4f329b561c7ced69c939","ref":"refs/heads/weblate","pushedAt":"2024-08-20T17:09:20.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weblate","name":"Weblate (bot)","path":"/weblate","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1607653?s=80&v=4"},"commit":{"message":"Translated using Weblate (Indonesian)\n\nCurrently translated at 1.0% (3 of 277 strings)\n\nTranslation: LightTube/Web\nTranslate-URL: https://hosted.weblate.org/projects/lighttube/web/id/","shortMessageHtmlLink":"Translated using Weblate (Indonesian)"}},{"before":"c9f7c8530d052997d68b4afafc3ab929cd8bbb0d","after":"e671905671362ee06fcdef112b116066f83707d5","ref":"refs/heads/weblate","pushedAt":"2024-08-19T16:34:51.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weblate","name":"Weblate (bot)","path":"/weblate","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1607653?s=80&v=4"},"commit":{"message":"Added translation using Weblate (Indonesian)","shortMessageHtmlLink":"Added translation using Weblate (Indonesian)"}},{"before":"31e6ccb934e412aeb7c4736ac0150dd6a9b35e42","after":"c9f7c8530d052997d68b4afafc3ab929cd8bbb0d","ref":"refs/heads/weblate","pushedAt":"2024-08-18T14:09:26.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weblate","name":"Weblate (bot)","path":"/weblate","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1607653?s=80&v=4"},"commit":{"message":"Translated using Weblate (German)\n\nCurrently translated at 42.1% (115 of 273 strings)\n\nTranslation: LightTube/Web\nTranslate-URL: https://hosted.weblate.org/projects/lighttube/web/de/","shortMessageHtmlLink":"Translated using Weblate (German)"}},{"before":"be5e5dc1f9353c83e36563dbad25874027ccf1a8","after":"31e6ccb934e412aeb7c4736ac0150dd6a9b35e42","ref":"refs/heads/weblate","pushedAt":"2024-08-17T13:34:08.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"weblate","name":"Weblate (bot)","path":"/weblate","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1607653?s=80&v=4"},"commit":{"message":"Added translation using Weblate (German)","shortMessageHtmlLink":"Added translation using Weblate (German)"}},{"before":"51c5ecc51dfbcb7792b79cf28fb92f416859070f","after":null,"ref":"refs/heads/gh-readonly-queue/master/pr-163-3e36eea37fb1613c21a4f103cf4647eb6e2558a9","pushedAt":"2024-08-15T06:03:25.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"}},{"before":"3e36eea37fb1613c21a4f103cf4647eb6e2558a9","after":null,"ref":"refs/heads/gh-readonly-queue/master/pr-165-bd2efa531a32ca5676507569026376c9c7cac7e3","pushedAt":"2024-08-15T06:03:25.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"}},{"before":"bd2efa531a32ca5676507569026376c9c7cac7e3","after":"51c5ecc51dfbcb7792b79cf28fb92f416859070f","ref":"refs/heads/master","pushedAt":"2024-08-15T06:03:24.000Z","pushType":"merge_queue_merge","commitsCount":2,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"},"commit":{"message":"Fix redirect URLs clashing with each other (#163)","shortMessageHtmlLink":"Fix redirect URLs clashing with each other (#163)"}},{"before":null,"after":"51c5ecc51dfbcb7792b79cf28fb92f416859070f","ref":"refs/heads/gh-readonly-queue/master/pr-163-3e36eea37fb1613c21a4f103cf4647eb6e2558a9","pushedAt":"2024-08-15T06:03:23.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"},"commit":{"message":"Fix redirect URLs clashing with each other (#163)","shortMessageHtmlLink":"Fix redirect URLs clashing with each other (#163)"}},{"before":null,"after":"3e36eea37fb1613c21a4f103cf4647eb6e2558a9","ref":"refs/heads/gh-readonly-queue/master/pr-165-bd2efa531a32ca5676507569026376c9c7cac7e3","pushedAt":"2024-08-15T06:03:23.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"},"commit":{"message":"Audio only video player (#165)\n\n* Implement audio only watch pages\n\n* Add quality selector labels for audio formats\n\n* Fix video posters\n\n* Add buttons in thumbnails for shortcuts\n\n* Make thumbnails clickable again","shortMessageHtmlLink":"Audio only video player (#165)"}},{"before":"d9624d5999dad2952a082aa12d335146833762e2","after":"be5e5dc1f9353c83e36563dbad25874027ccf1a8","ref":"refs/heads/weblate","pushedAt":"2024-08-13T07:13:58.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"weblate","name":"Weblate (bot)","path":"/weblate","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1607653?s=80&v=4"},"commit":{"message":"Added translation using Weblate (Vietnamese)","shortMessageHtmlLink":"Added translation using Weblate (Vietnamese)"}},{"before":"33599eeb018a8e1bc7e4ac1f90ab80b289fbf17b","after":"d9624d5999dad2952a082aa12d335146833762e2","ref":"refs/heads/weblate","pushedAt":"2024-08-13T01:27:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weblate","name":"Weblate (bot)","path":"/weblate","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1607653?s=80&v=4"},"commit":{"message":"Added translation using Weblate (Vietnamese)","shortMessageHtmlLink":"Added translation using Weblate (Vietnamese)"}},{"before":"bd2efa531a32ca5676507569026376c9c7cac7e3","after":null,"ref":"refs/heads/gh-readonly-queue/master/pr-162-f1217d5d003fc8c3230d29af7a8316eb18c06408","pushedAt":"2024-08-12T06:06:35.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"}},{"before":"f1217d5d003fc8c3230d29af7a8316eb18c06408","after":"bd2efa531a32ca5676507569026376c9c7cac7e3","ref":"refs/heads/master","pushedAt":"2024-08-12T06:06:34.000Z","pushType":"merge_queue_merge","commitsCount":1,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"},"commit":{"message":"Fix LTPlayer loading (#162)\n\n* Fix LTPlayer URLs\n\n* Fix comments in mobile layout for widths 700px-1080px","shortMessageHtmlLink":"Fix LTPlayer loading (#162)"}},{"before":null,"after":"bd2efa531a32ca5676507569026376c9c7cac7e3","ref":"refs/heads/gh-readonly-queue/master/pr-162-f1217d5d003fc8c3230d29af7a8316eb18c06408","pushedAt":"2024-08-12T06:06:34.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"},"commit":{"message":"Fix LTPlayer loading (#162)\n\n* Fix LTPlayer URLs\n\n* Fix comments in mobile layout for widths 700px-1080px","shortMessageHtmlLink":"Fix LTPlayer loading (#162)"}},{"before":"f1217d5d003fc8c3230d29af7a8316eb18c06408","after":null,"ref":"refs/heads/gh-readonly-queue/master/pr-157-8af4439b68620c481f04b3a6bf4637aa46ab5390","pushedAt":"2024-08-11T15:37:17.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"}},{"before":"8af4439b68620c481f04b3a6bf4637aa46ab5390","after":"f1217d5d003fc8c3230d29af7a8316eb18c06408","ref":"refs/heads/master","pushedAt":"2024-08-11T15:37:16.000Z","pushType":"merge_queue_merge","commitsCount":1,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"},"commit":{"message":"LightTube V3 (#157)\n\n* Make configs better (#129)\n\n* Update /api/info to be more extensible\r\n* Parse configs at startup\r\n* Make the error page respect user's theme\r\n* Delete obsolete code\r\n* Bump API version\r\n* Formatting, and change how LIGHTTUBE_MOTD works\r\n* Implement the alert in the page layout\n\n* CSS updates (#130)\n\n* Fut fixes scroll-to-refresh in mobile\r\n* Update channel pages\r\n* Change how the player sizes itself\r\n* Fix channel header not being centered\r\n* Make YTShorts thumbnails not stretch\n\n* Update the project to .NET 8 (#139)\n\n* .NET 8, part 2 (#141)\n\n* :catresort:\r\n* add primary constructors\r\n* fix ASP0015\r\n* collection init can be simplified fixed\r\n* new expression can be simplified, yes\r\n* wtf is this lmao\r\n* more collections\r\n* death\r\n* more changes that im lazy to describe!\n\n* my child will not create merge conflicts! (#146)\n\n* Localization (#143)\n\n* Localization support\r\n* Add a file for the default localizations\r\n* Make everything use translation keys\r\n* Default to the interface language for LightTube\r\n* Make InnerTube use the language's setting by default\r\n* Add a language switcher setting\r\n* Use the correct version of humanizer to support all languages\n\n* InnerTube v2 update (#153)\n\n* Update InnerTube\r\n\r\n* Fix errors and warnings in Utils and Database classes\r\n\r\n* Add a GetLocals method since the new InnerTube doesn't have it\r\n\r\n* Fix errors in API endpoints\r\n\r\n* fix this error i caused\r\n\r\n* Fix the errors in the contexts\r\n\r\n* Implement recommendations endpoint\r\n\r\n* Fix empty ctor excuses\r\n\r\n* Reimplement autocomplete\r\n\r\n* Fix some API stuff\r\n\r\n* Fix contexts\r\n\r\n* Fix all controllers except YoutubeController.cs\r\n\r\n* Update YoutubeController.cs\r\n\r\n* Fix all views\r\n\r\n* Disable authorization\r\n\r\n* Implement some renderers for the search view\r\n\r\n* Move renderer cshtml files to their own directory\r\n\r\n* Move ContainerRenderer to its own file\r\n\r\nas its mostly the same in multiple places, this should reduce the amount of repeated code\r\n\r\n* forgot to update these two\r\n\r\n* small css fixes\r\n\r\n* Implement the renderers for the watch page\r\n\r\n* kuylar vs. her own code, round 2\r\n\r\n* New badges!\r\n\r\n* Playlist first video IDs\r\n\r\n* Shelf titles\r\n\r\n* changed like 2 stuff\r\n\r\n* Fix playlists\r\n\r\n* Round 3\r\n\r\n* Round... 4?\r\n\r\n* Channel avatars\r\n\r\n* idrk why that exploded\r\n\r\n* Fix the player box aspect ratio\r\n\r\n* Update null renderers\r\n\r\n* posts in search\r\n\r\n* Implement search chips\r\n\r\n* hate css\r\n\r\n* Round 5!\r\n\r\n* Fix authentication\r\n\r\n* Fix namespaces\r\n\r\n* Add parserLanguage to where its needed\r\n\r\n* Fix the like counter\r\n\r\n* Fix ToKMB\r\n\r\n* Implement ResolveUrl where needed\r\n\r\n* Update the channel header\r\n\r\n* Round 6\r\n\r\n* Implement the featured tab of the channel\r\n\r\n* Implement the shorts tab in channel\r\n\r\n* Implement the community tab\r\n\r\n* Finish all channel tabs\r\n\r\n* fix Utils.cs\r\n\r\n* Update LTPlayer\r\n\r\n* Fix the custom CSS\r\n\r\n* Fix the player returning the wrong video URLs\r\n\r\n* Fix the issues in the player\r\n\r\n* Fix the wrongly called subscribe button\r\n\r\n* Fix search chips\r\n\r\n* fix the ugly filters button\r\n\r\n* fix the player overflowing sideways on mobile\r\n\r\n* Clamp player aspect ratios\r\n\r\n* Add a message if only format 18 is available\r\n\r\n* Fix the non-JS player overflowing to the side\r\n\r\n* Fix nullref in mixes\r\n\r\n* Make the mobile comment panel scrollable\r\n\r\n* Make the comments not overscroll to the recommendations\r\n\r\n* Fix mobile guide z-index\r\n\r\n* Add a redirect for /{videoId}\r\n\r\n* Fix trailers\r\n\r\n* Round- wait we skipped 7? whatever Round 8\r\n\r\n* Add UI for trailers\r\n\r\n* Fix the HLS manifest url validity checker\r\n\r\n* Fix chips\r\n\r\n* Fix broken if statements (two of them)\r\n\r\n* Fix community posts\r\n\r\n* hey look - a place to get a nullreferenceexception!\r\n\r\n* Add a small thing\r\n\r\n* Remove unused file\r\n\r\n* Add the about tab to channels\r\n\r\n* Fix the max-lines property\r\n\r\n* Make the tagline always max out at a single line. Also make it a normal text instead of a hyperlink to /about\r\n\r\n* Fix community posts in search results\r\n\r\n* Fix localization in channel posts\r\n\r\n* Implement search sidebars\r\n\r\n* Final round, if no other bugs come up\r\n\r\n* Implement exception renderers\r\n\r\n* Make the subscription feed API use renderercontainers\r\n\r\n* Add a null check to the playlist panel\r\n\r\n* Fix nullrefs in video caching\r\n\r\n* Fix nullable ints in the database exploding the playlists\r\n\r\n* Fix video player obstructing other elements\r\n\r\n* Fix broken html tags in video titles\r\n\r\n* Add localization to the premiere trailer text\r\n\r\n* Add a &page param to search endpoints\r\n\r\n* Make stats in channel about page wider\r\n\r\n* Fix playlists\r\n\r\n* Fix wrong hyperlinks\r\n\r\n* Add editable to PlaylistVideoRendererData\r\n\r\n* Fix the avatar in the video player\r\n\r\n* Fix titles turning into 6px line of dots and dashes\r\n\r\nEven though LTv3 has localization, it won't support morse code\r\n\r\n* Remove underline from channel tagline\r\n\r\n* RecognitionShelfRenderer\r\n\r\n* Update InnerTube for bug fixes\r\n\r\n* but we stay silly\r\n\r\n* Add movieRenderer\r\n\r\n* API: Serialize enums to strings\r\n\r\n* API: Make the UserData folllow the rest of the naming scheme\r\n\r\n* That breaks the entire program and wipes the database clean. Use JsonProperty instead\r\n\r\n* API: Add editable field to playlists\r\n\r\n* API: Fix all the nullrefs in the playlist endpoint\r\n\r\n* API: Add exact publish date to the subscription feed videos\r\n\r\n* Make sure the search page doesnt explode when the sidebar throws an exception\r\n\r\n* Fix the trailer screen eating all the mouse events\r\n\r\n* Make it so videos without valid HLS manifests has UseHls = false\r\n\r\n* Fix the comment headers\r\n\r\n* Make the version have the major version in it\r\n\r\n* Fix wrong renderer name\r\n\r\n* Fix nullref in /api/playlist with LT playlists\r\n\r\n* Add video player error messages to the channel page\r\n\r\n* Fix messagerenderer in playlist sidebar\r\n\r\n* Implement all sidebars\r\n\r\n* Add query corrector\r\n\r\n* guess whos stupid\r\n\r\n* Fix playlist APIs\r\n\r\n* Fix channel continuation API\r\n\r\n* Bump InnerTube\r\n\r\n* Fix MPD manifests\r\n\r\n* Fix the whole video page crashing if there are no storyboards\r\n\r\n* yea\r\n\r\n* Delete the nojs quality switcher as YouTube now only provides itag 18\r\n\r\n* Add the new shelf renderer\r\n\r\n* Fix the promoted video player\r\n\r\n* Fix the age restriction button\n\n* [V3] Final Frontend Fixes (#160)\n\n* Fix wrong translation value in /settings/account\r\n\r\n* Fix the search chip color\r\n\r\n* implement adblock\n\n* Update README (#159)\n\n* Update screenshots\r\n\r\n* Update README.md\r\n\r\n* Replace the instance list with notes to move to the new list\r\n\r\n* jesus christ how old is this file i should remove this\r\n\r\n* Outdated comments\r\n\r\n* Linking to the old repository\r\n\r\n* While I'm at it, close this PR\r\n\r\n* README update again\n\n---------\n\nCo-authored-by: InF ","shortMessageHtmlLink":"LightTube V3 (#157)"}},{"before":null,"after":"f1217d5d003fc8c3230d29af7a8316eb18c06408","ref":"refs/heads/gh-readonly-queue/master/pr-157-8af4439b68620c481f04b3a6bf4637aa46ab5390","pushedAt":"2024-08-11T15:37:16.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"},"commit":{"message":"LightTube V3 (#157)\n\n* Make configs better (#129)\n\n* Update /api/info to be more extensible\r\n* Parse configs at startup\r\n* Make the error page respect user's theme\r\n* Delete obsolete code\r\n* Bump API version\r\n* Formatting, and change how LIGHTTUBE_MOTD works\r\n* Implement the alert in the page layout\n\n* CSS updates (#130)\n\n* Fut fixes scroll-to-refresh in mobile\r\n* Update channel pages\r\n* Change how the player sizes itself\r\n* Fix channel header not being centered\r\n* Make YTShorts thumbnails not stretch\n\n* Update the project to .NET 8 (#139)\n\n* .NET 8, part 2 (#141)\n\n* :catresort:\r\n* add primary constructors\r\n* fix ASP0015\r\n* collection init can be simplified fixed\r\n* new expression can be simplified, yes\r\n* wtf is this lmao\r\n* more collections\r\n* death\r\n* more changes that im lazy to describe!\n\n* my child will not create merge conflicts! (#146)\n\n* Localization (#143)\n\n* Localization support\r\n* Add a file for the default localizations\r\n* Make everything use translation keys\r\n* Default to the interface language for LightTube\r\n* Make InnerTube use the language's setting by default\r\n* Add a language switcher setting\r\n* Use the correct version of humanizer to support all languages\n\n* InnerTube v2 update (#153)\n\n* Update InnerTube\r\n\r\n* Fix errors and warnings in Utils and Database classes\r\n\r\n* Add a GetLocals method since the new InnerTube doesn't have it\r\n\r\n* Fix errors in API endpoints\r\n\r\n* fix this error i caused\r\n\r\n* Fix the errors in the contexts\r\n\r\n* Implement recommendations endpoint\r\n\r\n* Fix empty ctor excuses\r\n\r\n* Reimplement autocomplete\r\n\r\n* Fix some API stuff\r\n\r\n* Fix contexts\r\n\r\n* Fix all controllers except YoutubeController.cs\r\n\r\n* Update YoutubeController.cs\r\n\r\n* Fix all views\r\n\r\n* Disable authorization\r\n\r\n* Implement some renderers for the search view\r\n\r\n* Move renderer cshtml files to their own directory\r\n\r\n* Move ContainerRenderer to its own file\r\n\r\nas its mostly the same in multiple places, this should reduce the amount of repeated code\r\n\r\n* forgot to update these two\r\n\r\n* small css fixes\r\n\r\n* Implement the renderers for the watch page\r\n\r\n* kuylar vs. her own code, round 2\r\n\r\n* New badges!\r\n\r\n* Playlist first video IDs\r\n\r\n* Shelf titles\r\n\r\n* changed like 2 stuff\r\n\r\n* Fix playlists\r\n\r\n* Round 3\r\n\r\n* Round... 4?\r\n\r\n* Channel avatars\r\n\r\n* idrk why that exploded\r\n\r\n* Fix the player box aspect ratio\r\n\r\n* Update null renderers\r\n\r\n* posts in search\r\n\r\n* Implement search chips\r\n\r\n* hate css\r\n\r\n* Round 5!\r\n\r\n* Fix authentication\r\n\r\n* Fix namespaces\r\n\r\n* Add parserLanguage to where its needed\r\n\r\n* Fix the like counter\r\n\r\n* Fix ToKMB\r\n\r\n* Implement ResolveUrl where needed\r\n\r\n* Update the channel header\r\n\r\n* Round 6\r\n\r\n* Implement the featured tab of the channel\r\n\r\n* Implement the shorts tab in channel\r\n\r\n* Implement the community tab\r\n\r\n* Finish all channel tabs\r\n\r\n* fix Utils.cs\r\n\r\n* Update LTPlayer\r\n\r\n* Fix the custom CSS\r\n\r\n* Fix the player returning the wrong video URLs\r\n\r\n* Fix the issues in the player\r\n\r\n* Fix the wrongly called subscribe button\r\n\r\n* Fix search chips\r\n\r\n* fix the ugly filters button\r\n\r\n* fix the player overflowing sideways on mobile\r\n\r\n* Clamp player aspect ratios\r\n\r\n* Add a message if only format 18 is available\r\n\r\n* Fix the non-JS player overflowing to the side\r\n\r\n* Fix nullref in mixes\r\n\r\n* Make the mobile comment panel scrollable\r\n\r\n* Make the comments not overscroll to the recommendations\r\n\r\n* Fix mobile guide z-index\r\n\r\n* Add a redirect for /{videoId}\r\n\r\n* Fix trailers\r\n\r\n* Round- wait we skipped 7? whatever Round 8\r\n\r\n* Add UI for trailers\r\n\r\n* Fix the HLS manifest url validity checker\r\n\r\n* Fix chips\r\n\r\n* Fix broken if statements (two of them)\r\n\r\n* Fix community posts\r\n\r\n* hey look - a place to get a nullreferenceexception!\r\n\r\n* Add a small thing\r\n\r\n* Remove unused file\r\n\r\n* Add the about tab to channels\r\n\r\n* Fix the max-lines property\r\n\r\n* Make the tagline always max out at a single line. Also make it a normal text instead of a hyperlink to /about\r\n\r\n* Fix community posts in search results\r\n\r\n* Fix localization in channel posts\r\n\r\n* Implement search sidebars\r\n\r\n* Final round, if no other bugs come up\r\n\r\n* Implement exception renderers\r\n\r\n* Make the subscription feed API use renderercontainers\r\n\r\n* Add a null check to the playlist panel\r\n\r\n* Fix nullrefs in video caching\r\n\r\n* Fix nullable ints in the database exploding the playlists\r\n\r\n* Fix video player obstructing other elements\r\n\r\n* Fix broken html tags in video titles\r\n\r\n* Add localization to the premiere trailer text\r\n\r\n* Add a &page param to search endpoints\r\n\r\n* Make stats in channel about page wider\r\n\r\n* Fix playlists\r\n\r\n* Fix wrong hyperlinks\r\n\r\n* Add editable to PlaylistVideoRendererData\r\n\r\n* Fix the avatar in the video player\r\n\r\n* Fix titles turning into 6px line of dots and dashes\r\n\r\nEven though LTv3 has localization, it won't support morse code\r\n\r\n* Remove underline from channel tagline\r\n\r\n* RecognitionShelfRenderer\r\n\r\n* Update InnerTube for bug fixes\r\n\r\n* but we stay silly\r\n\r\n* Add movieRenderer\r\n\r\n* API: Serialize enums to strings\r\n\r\n* API: Make the UserData folllow the rest of the naming scheme\r\n\r\n* That breaks the entire program and wipes the database clean. Use JsonProperty instead\r\n\r\n* API: Add editable field to playlists\r\n\r\n* API: Fix all the nullrefs in the playlist endpoint\r\n\r\n* API: Add exact publish date to the subscription feed videos\r\n\r\n* Make sure the search page doesnt explode when the sidebar throws an exception\r\n\r\n* Fix the trailer screen eating all the mouse events\r\n\r\n* Make it so videos without valid HLS manifests has UseHls = false\r\n\r\n* Fix the comment headers\r\n\r\n* Make the version have the major version in it\r\n\r\n* Fix wrong renderer name\r\n\r\n* Fix nullref in /api/playlist with LT playlists\r\n\r\n* Add video player error messages to the channel page\r\n\r\n* Fix messagerenderer in playlist sidebar\r\n\r\n* Implement all sidebars\r\n\r\n* Add query corrector\r\n\r\n* guess whos stupid\r\n\r\n* Fix playlist APIs\r\n\r\n* Fix channel continuation API\r\n\r\n* Bump InnerTube\r\n\r\n* Fix MPD manifests\r\n\r\n* Fix the whole video page crashing if there are no storyboards\r\n\r\n* yea\r\n\r\n* Delete the nojs quality switcher as YouTube now only provides itag 18\r\n\r\n* Add the new shelf renderer\r\n\r\n* Fix the promoted video player\r\n\r\n* Fix the age restriction button\n\n* [V3] Final Frontend Fixes (#160)\n\n* Fix wrong translation value in /settings/account\r\n\r\n* Fix the search chip color\r\n\r\n* implement adblock\n\n* Update README (#159)\n\n* Update screenshots\r\n\r\n* Update README.md\r\n\r\n* Replace the instance list with notes to move to the new list\r\n\r\n* jesus christ how old is this file i should remove this\r\n\r\n* Outdated comments\r\n\r\n* Linking to the old repository\r\n\r\n* While I'm at it, close this PR\r\n\r\n* README update again\n\n---------\n\nCo-authored-by: InF ","shortMessageHtmlLink":"LightTube V3 (#157)"}},{"before":"7c8977c8571d4a77b3d1e5ad2594975c4906b7b2","after":"33599eeb018a8e1bc7e4ac1f90ab80b289fbf17b","ref":"refs/heads/weblate","pushedAt":"2024-08-09T08:09:26.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weblate","name":"Weblate (bot)","path":"/weblate","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1607653?s=80&v=4"},"commit":{"message":"Translated using Weblate (Romanian)\n\nCurrently translated at 31.5% (86 of 273 strings)\n\nTranslation: LightTube/Web\nTranslate-URL: https://hosted.weblate.org/projects/lighttube/web/ro/","shortMessageHtmlLink":"Translated using Weblate (Romanian)"}},{"before":"4bf71ab6ea958015b02f5478693aeb41f2e2343c","after":"7c8977c8571d4a77b3d1e5ad2594975c4906b7b2","ref":"refs/heads/weblate","pushedAt":"2024-08-08T07:09:20.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"weblate","name":"Weblate (bot)","path":"/weblate","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1607653?s=80&v=4"},"commit":{"message":"Translated using Weblate (Romanian)\n\nCurrently translated at 26.7% (73 of 273 strings)\n\nTranslation: LightTube/Web\nTranslate-URL: https://hosted.weblate.org/projects/lighttube/web/ro/","shortMessageHtmlLink":"Translated using Weblate (Romanian)"}},{"before":"25ff5c8c2b706b6821b418d80a39178b26fbff54","after":"4bf71ab6ea958015b02f5478693aeb41f2e2343c","ref":"refs/heads/weblate","pushedAt":"2024-08-07T06:33:33.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"weblate","name":"Weblate (bot)","path":"/weblate","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1607653?s=80&v=4"},"commit":{"message":"Added translation using Weblate (Romanian)","shortMessageHtmlLink":"Added translation using Weblate (Romanian)"}},{"before":"964014adcd7435bc43409f1da9a1a64c125322ff","after":"66850fb58d05bd1d69c26a3956c9a1c82c5c52af","ref":"refs/heads/v3dev","pushedAt":"2024-08-07T06:12:57.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kuylar","name":"Kayra Uylar","path":"/kuylar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52961639?s=80&v=4"},"commit":{"message":"Update README (#159)\n\n* Update screenshots\r\n\r\n* Update README.md\r\n\r\n* Replace the instance list with notes to move to the new list\r\n\r\n* jesus christ how old is this file i should remove this\r\n\r\n* Outdated comments\r\n\r\n* Linking to the old repository\r\n\r\n* While I'm at it, close this PR\r\n\r\n* README update again","shortMessageHtmlLink":"Update README (#159)"}},{"before":"ca11d1530afc517918f548021d509c5f0b250465","after":"964014adcd7435bc43409f1da9a1a64c125322ff","ref":"refs/heads/v3dev","pushedAt":"2024-08-07T06:12:52.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kuylar","name":"Kayra Uylar","path":"/kuylar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52961639?s=80&v=4"},"commit":{"message":"[V3] Final Frontend Fixes (#160)\n\n* Fix wrong translation value in /settings/account\r\n\r\n* Fix the search chip color\r\n\r\n* implement adblock","shortMessageHtmlLink":"[V3] Final Frontend Fixes (#160)"}},{"before":null,"after":"25ff5c8c2b706b6821b418d80a39178b26fbff54","ref":"refs/heads/weblate","pushedAt":"2024-08-06T13:40:23.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"weblate","name":"Weblate (bot)","path":"/weblate","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1607653?s=80&v=4"},"commit":{"message":"Added translation using Weblate (Russian)","shortMessageHtmlLink":"Added translation using Weblate (Russian)"}},{"before":"9acb04d98d8f6cbb94458042a3d7827d439e9450","after":"ca11d1530afc517918f548021d509c5f0b250465","ref":"refs/heads/v3dev","pushedAt":"2024-08-06T13:16:20.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kuylar","name":"Kayra Uylar","path":"/kuylar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52961639?s=80&v=4"},"commit":{"message":"InnerTube v2 update (#153)\n\n* Update InnerTube\r\n\r\n* Fix errors and warnings in Utils and Database classes\r\n\r\n* Add a GetLocals method since the new InnerTube doesn't have it\r\n\r\n* Fix errors in API endpoints\r\n\r\n* fix this error i caused\r\n\r\n* Fix the errors in the contexts\r\n\r\n* Implement recommendations endpoint\r\n\r\n* Fix empty ctor excuses\r\n\r\n* Reimplement autocomplete\r\n\r\n* Fix some API stuff\r\n\r\n* Fix contexts\r\n\r\n* Fix all controllers except YoutubeController.cs\r\n\r\n* Update YoutubeController.cs\r\n\r\n* Fix all views\r\n\r\n* Disable authorization\r\n\r\n* Implement some renderers for the search view\r\n\r\n* Move renderer cshtml files to their own directory\r\n\r\n* Move ContainerRenderer to its own file\r\n\r\nas its mostly the same in multiple places, this should reduce the amount of repeated code\r\n\r\n* forgot to update these two\r\n\r\n* small css fixes\r\n\r\n* Implement the renderers for the watch page\r\n\r\n* kuylar vs. her own code, round 2\r\n\r\n* New badges!\r\n\r\n* Playlist first video IDs\r\n\r\n* Shelf titles\r\n\r\n* changed like 2 stuff\r\n\r\n* Fix playlists\r\n\r\n* Round 3\r\n\r\n* Round... 4?\r\n\r\n* Channel avatars\r\n\r\n* idrk why that exploded\r\n\r\n* Fix the player box aspect ratio\r\n\r\n* Update null renderers\r\n\r\n* posts in search\r\n\r\n* Implement search chips\r\n\r\n* hate css\r\n\r\n* Round 5!\r\n\r\n* Fix authentication\r\n\r\n* Fix namespaces\r\n\r\n* Add parserLanguage to where its needed\r\n\r\n* Fix the like counter\r\n\r\n* Fix ToKMB\r\n\r\n* Implement ResolveUrl where needed\r\n\r\n* Update the channel header\r\n\r\n* Round 6\r\n\r\n* Implement the featured tab of the channel\r\n\r\n* Implement the shorts tab in channel\r\n\r\n* Implement the community tab\r\n\r\n* Finish all channel tabs\r\n\r\n* fix Utils.cs\r\n\r\n* Update LTPlayer\r\n\r\n* Fix the custom CSS\r\n\r\n* Fix the player returning the wrong video URLs\r\n\r\n* Fix the issues in the player\r\n\r\n* Fix the wrongly called subscribe button\r\n\r\n* Fix search chips\r\n\r\n* fix the ugly filters button\r\n\r\n* fix the player overflowing sideways on mobile\r\n\r\n* Clamp player aspect ratios\r\n\r\n* Add a message if only format 18 is available\r\n\r\n* Fix the non-JS player overflowing to the side\r\n\r\n* Fix nullref in mixes\r\n\r\n* Make the mobile comment panel scrollable\r\n\r\n* Make the comments not overscroll to the recommendations\r\n\r\n* Fix mobile guide z-index\r\n\r\n* Add a redirect for /{videoId}\r\n\r\n* Fix trailers\r\n\r\n* Round- wait we skipped 7? whatever Round 8\r\n\r\n* Add UI for trailers\r\n\r\n* Fix the HLS manifest url validity checker\r\n\r\n* Fix chips\r\n\r\n* Fix broken if statements (two of them)\r\n\r\n* Fix community posts\r\n\r\n* hey look - a place to get a nullreferenceexception!\r\n\r\n* Add a small thing\r\n\r\n* Remove unused file\r\n\r\n* Add the about tab to channels\r\n\r\n* Fix the max-lines property\r\n\r\n* Make the tagline always max out at a single line. Also make it a normal text instead of a hyperlink to /about\r\n\r\n* Fix community posts in search results\r\n\r\n* Fix localization in channel posts\r\n\r\n* Implement search sidebars\r\n\r\n* Final round, if no other bugs come up\r\n\r\n* Implement exception renderers\r\n\r\n* Make the subscription feed API use renderercontainers\r\n\r\n* Add a null check to the playlist panel\r\n\r\n* Fix nullrefs in video caching\r\n\r\n* Fix nullable ints in the database exploding the playlists\r\n\r\n* Fix video player obstructing other elements\r\n\r\n* Fix broken html tags in video titles\r\n\r\n* Add localization to the premiere trailer text\r\n\r\n* Add a &page param to search endpoints\r\n\r\n* Make stats in channel about page wider\r\n\r\n* Fix playlists\r\n\r\n* Fix wrong hyperlinks\r\n\r\n* Add editable to PlaylistVideoRendererData\r\n\r\n* Fix the avatar in the video player\r\n\r\n* Fix titles turning into 6px line of dots and dashes\r\n\r\nEven though LTv3 has localization, it won't support morse code\r\n\r\n* Remove underline from channel tagline\r\n\r\n* RecognitionShelfRenderer\r\n\r\n* Update InnerTube for bug fixes\r\n\r\n* but we stay silly\r\n\r\n* Add movieRenderer\r\n\r\n* API: Serialize enums to strings\r\n\r\n* API: Make the UserData folllow the rest of the naming scheme\r\n\r\n* That breaks the entire program and wipes the database clean. Use JsonProperty instead\r\n\r\n* API: Add editable field to playlists\r\n\r\n* API: Fix all the nullrefs in the playlist endpoint\r\n\r\n* API: Add exact publish date to the subscription feed videos\r\n\r\n* Make sure the search page doesnt explode when the sidebar throws an exception\r\n\r\n* Fix the trailer screen eating all the mouse events\r\n\r\n* Make it so videos without valid HLS manifests has UseHls = false\r\n\r\n* Fix the comment headers\r\n\r\n* Make the version have the major version in it\r\n\r\n* Fix wrong renderer name\r\n\r\n* Fix nullref in /api/playlist with LT playlists\r\n\r\n* Add video player error messages to the channel page\r\n\r\n* Fix messagerenderer in playlist sidebar\r\n\r\n* Implement all sidebars\r\n\r\n* Add query corrector\r\n\r\n* guess whos stupid\r\n\r\n* Fix playlist APIs\r\n\r\n* Fix channel continuation API\r\n\r\n* Bump InnerTube\r\n\r\n* Fix MPD manifests\r\n\r\n* Fix the whole video page crashing if there are no storyboards\r\n\r\n* yea\r\n\r\n* Delete the nojs quality switcher as YouTube now only provides itag 18\r\n\r\n* Add the new shelf renderer\r\n\r\n* Fix the promoted video player\r\n\r\n* Fix the age restriction button","shortMessageHtmlLink":"InnerTube v2 update (#153)"}},{"before":"27d3c3487df145ffaa263b21ab77f6a651cd421d","after":"9acb04d98d8f6cbb94458042a3d7827d439e9450","ref":"refs/heads/v3dev","pushedAt":"2024-05-19T12:22:18.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kuylar","name":"Kayra Uylar","path":"/kuylar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52961639?s=80&v=4"},"commit":{"message":"Localization (#143)\n\n* Localization support\r\n* Add a file for the default localizations\r\n* Make everything use translation keys\r\n* Default to the interface language for LightTube\r\n* Make InnerTube use the language's setting by default\r\n* Add a language switcher setting\r\n* Use the correct version of humanizer to support all languages","shortMessageHtmlLink":"Localization (#143)"}},{"before":"231c000d2022fcfec6569331d11ba06c297f6961","after":"27d3c3487df145ffaa263b21ab77f6a651cd421d","ref":"refs/heads/v3dev","pushedAt":"2024-04-15T15:08:27.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kuylar","name":"Kayra Uylar","path":"/kuylar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52961639?s=80&v=4"},"commit":{"message":"my child will not create merge conflicts! (#146)","shortMessageHtmlLink":"my child will not create merge conflicts! (#146)"}},{"before":"8af4439b68620c481f04b3a6bf4637aa46ab5390","after":null,"ref":"refs/heads/gh-readonly-queue/master/pr-144-7cb2ee057f36dab847ffa04d683940daa2d16020","pushedAt":"2024-04-13T19:54:56.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"}},{"before":"7cb2ee057f36dab847ffa04d683940daa2d16020","after":"8af4439b68620c481f04b3a6bf4637aa46ab5390","ref":"refs/heads/master","pushedAt":"2024-04-13T19:54:56.000Z","pushType":"merge_queue_merge","commitsCount":1,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"},"commit":{"message":"Update LightTube.csproj (#144)","shortMessageHtmlLink":"Update LightTube.csproj (#144)"}},{"before":null,"after":"8af4439b68620c481f04b3a6bf4637aa46ab5390","ref":"refs/heads/gh-readonly-queue/master/pr-144-7cb2ee057f36dab847ffa04d683940daa2d16020","pushedAt":"2024-04-13T19:54:55.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"github-merge-queue[bot]","name":null,"path":"/apps/github-merge-queue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9919?s=80&v=4"},"commit":{"message":"Update LightTube.csproj (#144)","shortMessageHtmlLink":"Update LightTube.csproj (#144)"}},{"before":"30cac0625613966e3b601742222c4752306c22af","after":"231c000d2022fcfec6569331d11ba06c297f6961","ref":"refs/heads/v3dev","pushedAt":"2024-04-10T15:01:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kuylar","name":"Kayra Uylar","path":"/kuylar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52961639?s=80&v=4"},"commit":{"message":".NET 8, part 2 (#141)\n\n* :catresort:\r\n* add primary constructors\r\n* fix ASP0015\r\n* collection init can be simplified fixed\r\n* new expression can be simplified, yes\r\n* wtf is this lmao\r\n* more collections\r\n* death\r\n* more changes that im lazy to describe!","shortMessageHtmlLink":".NET 8, part 2 (#141)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEn1sLLgA","startCursor":null,"endCursor":null}},"title":"Activity ยท lighttube-org/LightTube"}