diff --git a/materialious/src/lib/components/ContentColumn.svelte b/materialious/src/lib/components/ContentColumn.svelte
index 556588c7..54016dce 100644
--- a/materialious/src/lib/components/ContentColumn.svelte
+++ b/materialious/src/lib/components/ContentColumn.svelte
@@ -10,7 +10,7 @@
async function checkWidth() {
if ($isAndroidTvStore) {
- mediumCol = '3';
+ mediumCol = '4';
} else if (innerWidth <= 1750) {
largeCol = '4';
} else {
diff --git a/materialious/src/lib/components/Player.svelte b/materialious/src/lib/components/Player.svelte
index 9e554104..654a4f97 100644
--- a/materialious/src/lib/components/Player.svelte
+++ b/materialious/src/lib/components/Player.svelte
@@ -493,7 +493,7 @@
updateSeekBarTheme();
- player.addEventListener('error', async (event) => {
+ player.addEventListener('error', (event) => {
const error = (event as CustomEvent).detail as shaka.util.Error;
console.error('Player error:', error);
});
@@ -759,7 +759,7 @@
controls={false}
autoplay={$playerAutoPlayStore}
id="player"
- poster={getBestThumbnail(data.video.videoThumbnails, 1251, 781)}
+ poster={getBestThumbnail(data.video.videoThumbnails, 9999, 9999)}
>
{#if isEmbed}
diff --git a/materialious/src/lib/components/Thumbnail.svelte b/materialious/src/lib/components/Thumbnail.svelte
index 9640615a..efd285d5 100644
--- a/materialious/src/lib/components/Thumbnail.svelte
+++ b/materialious/src/lib/components/Thumbnail.svelte
@@ -139,7 +139,7 @@
function calcThumbnailPlaceholderHeight() {
if ($isAndroidTvStore) {
- placeholderHeight = innerWidth / 3;
+ placeholderHeight = 400;
return;
}
if (!sideways) {
@@ -164,7 +164,7 @@
role="button"
onclick={async () => {
if ($isAndroidTvStore) {
- goto(`${location.origin}/embed/${video.videoId}`);
+ goto(`${location.origin}/tv/${video.videoId}`);
}
}}
>
diff --git a/materialious/src/lib/patches/youtubejs.ts b/materialious/src/lib/patches/youtubejs.ts
index 5a079d96..9389950c 100644
--- a/materialious/src/lib/patches/youtubejs.ts
+++ b/materialious/src/lib/patches/youtubejs.ts
@@ -81,7 +81,7 @@ export async function patchYoutubeJs(videoId: string): Promise
{
let dashUri: string | undefined;
if (video.streaming_data) {
- video.streaming_data.adaptive_formats = video.streaming_data.adaptive_formats.map((format) => {
+ video.streaming_data.adaptive_formats.forEach((format) => {
const formatKey = fromFormat(format) || '';
format.url = `https://sabr?___key=${formatKey}`;
format.signature_cipher = undefined;
diff --git a/materialious/src/routes/(app)/playlist/[slug]/+page.svelte b/materialious/src/routes/(app)/playlist/[slug]/+page.svelte
index 1adfe044..c62a1730 100644
--- a/materialious/src/routes/(app)/playlist/[slug]/+page.svelte
+++ b/materialious/src/routes/(app)/playlist/[slug]/+page.svelte
@@ -1,43 +1,24 @@
- {#if videos}
+ {#if data.playlist.videos}
{/if}
- {data.playlist.title}
+ {data.playlist.info.title}
- {cleanNumber(data.playlist.viewCount)}
- {$_('views')} • {data.playlist.videoCount}
+ {cleanNumber(data.playlist.info.viewCount)}
+ {$_('views')} • {data.playlist.info.videoCount}
{$_('videos')}
- {data.playlist.description}
+ {data.playlist.info.description}
@@ -96,7 +79,7 @@
role="presentation"
onclick={async () => {
await Clipboard.write({
- string: `https://www.youtube.com/playlist?list=${data.playlist.playlistId}`
+ string: `https://www.youtube.com/playlist?list=${data.playlist.info.playlistId}`
});
(document.activeElement as HTMLElement)?.blur();
}}
@@ -107,6 +90,10 @@
-{#if videos}
-
+{#if data.playlist.videos}
+
{/if}
diff --git a/materialious/src/routes/(app)/playlist/[slug]/+page.ts b/materialious/src/routes/(app)/playlist/[slug]/+page.ts
index c87433bf..20422000 100644
--- a/materialious/src/routes/(app)/playlist/[slug]/+page.ts
+++ b/materialious/src/routes/(app)/playlist/[slug]/+page.ts
@@ -1,11 +1,11 @@
-import { getPlaylist } from '$lib/api/index';
+import { loadEntirePlaylist } from '$lib/playlist.js';
import { error } from '@sveltejs/kit';
export async function load({ params }) {
let playlist;
try {
- playlist = await getPlaylist(params.slug);
+ playlist = await loadEntirePlaylist(params.slug);
} catch (errorMessage: any) {
error(500, errorMessage);
}