aboutsummaryrefslogtreecommitdiff
path: root/src/routes/hololive
diff options
context:
space:
mode:
authorFuwn <[email protected]>2024-02-07 02:07:54 -0800
committerFuwn <[email protected]>2024-02-07 02:07:54 -0800
commit25b78c025491a00379fd7f79aa84c1cdd81fedf0 (patch)
treee08a3097689d4e880d375fa4d86e991781de2c19 /src/routes/hololive
parentfeat(hololive): temporarily remove (diff)
downloaddue.moe-25b78c025491a00379fd7f79aa84c1cdd81fedf0.tar.xz
due.moe-25b78c025491a00379fd7f79aa84c1cdd81fedf0.zip
refactor(hololive): move to client-side evaluation
Diffstat (limited to 'src/routes/hololive')
-rw-r--r--src/routes/hololive/+page.svelte (renamed from src/routes/hololive/+page.svelte.bak)15
1 files changed, 11 insertions, 4 deletions
diff --git a/src/routes/hololive/+page.svelte.bak b/src/routes/hololive/+page.svelte
index 76c0707f..42e01075 100644
--- a/src/routes/hololive/+page.svelte.bak
+++ b/src/routes/hololive/+page.svelte
@@ -3,6 +3,7 @@
import Message from '$lib/Loading/Message.svelte';
import Skeleton from '$lib/Loading/Skeleton.svelte';
import HeadTitle from '$lib/Home/HeadTitle.svelte';
+ import { parseScheduleHtml } from '$lib/hololive';
interface ParseResult {
lives: {
@@ -19,7 +20,13 @@
let schedulePromise: Promise<Response>;
- onMount(() => (schedulePromise = fetch('/api/hololive')));
+ onMount(async () => {
+ schedulePromise = fetch('https://schedule.hololive.tv', {
+ headers: {
+ Cookie: 'timezone=Asia/Tokyo'
+ }
+ });
+ });
const typeSchedule = (schedule: any) => schedule as ParseResult;
</script>
@@ -32,15 +39,15 @@
<Skeleton grid={true} count={100} width="49%" height="16.25em" />
{:then scheduleResponse}
{#if scheduleResponse}
- {#await scheduleResponse.json()}
+ {#await scheduleResponse.text()}
<Message message="Parsing schedule ..." />
<Skeleton grid={true} count={100} width="49%" height="16.25em" />
{:then untypedSchedule}
- {@const schedule = typeSchedule(untypedSchedule)}
+ {@const schedule = typeSchedule(parseScheduleHtml(untypedSchedule))}
{#if schedule.lives.length === 0}
- <Message message="No upcoming streams." />
+ <Message message="No upcoming streams." loader="ripple" />
{/if}
<div class="container">