aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorFuwn <[email protected]>2024-02-17 01:10:33 -0800
committerFuwn <[email protected]>2024-02-17 01:10:33 -0800
commit23ca178e25e24a24badbd2e083b5f6f5df31c308 (patch)
tree2d66f73e63835a41c38f0661ecf97b70aeadea6f /src
parentfix(error): return partial match in closest (diff)
downloaddue.moe-23ca178e25e24a24badbd2e083b5f6f5df31c308.tar.xz
due.moe-23ca178e25e24a24badbd2e083b5f6f5df31c308.zip
fix(hololive): wait for pinned streams
Diffstat (limited to 'src')
-rw-r--r--src/routes/hololive/+page.svelte38
1 files changed, 17 insertions, 21 deletions
diff --git a/src/routes/hololive/+page.svelte b/src/routes/hololive/+page.svelte
index 771bc808..50e4ee2c 100644
--- a/src/routes/hololive/+page.svelte
+++ b/src/routes/hololive/+page.svelte
@@ -26,38 +26,34 @@
let schedulePromise: Promise<Response>;
let pinnedStreams: string[] = [];
- $: {
- pinnedStreams = pinnedStreams;
-
- schedulePromise = fetch(proxy('https://schedule.hololive.tv'), {
- headers: {
- Cookie: 'timezone=Asia/Tokyo'
- }
- });
- }
-
- onMount(async () => {
- // schedulePromise = fetch(proxy('https://schedule.hololive.tv'), {
- // headers: {
- // Cookie: 'timezone=Asia/Tokyo'
- // }
- // });
-
- getPinnedStreams();
- });
+ onMount(() => getPinnedStreams());
const getPinnedStreams = () => {
let streams: string[] = [];
- if ($identity.id !== -2)
+ const setSchedule = () => {
+ pinnedStreams = streams;
+ schedulePromise = fetch(proxy('https://schedule.hololive.tv'), {
+ headers: {
+ Cookie: 'timezone=Asia/Tokyo'
+ }
+ });
+ };
+
+ if ($identity.id !== -2) {
fetch(root(`/api/configuration?id=${$identity.id}`)).then((response) => {
if (response.ok)
response.json().then((data) => {
if (data && data.configuration) streams = data.pinned_hololive_streams;
+
+ setSchedule();
});
});
- pinnedStreams = streams;
+ return;
+ }
+
+ setSchedule();
};
const typeSchedule = (schedule: any) => schedule as ParseResult;