2025-09-12 19:20:30 +02:00
|
|
|
import { backend, type PostEntry } from '$lib/backend.js';
|
|
|
|
|
import { getMe } from '$lib/globals.svelte.js';
|
|
|
|
|
import type { LoadEvent } from '@sveltejs/kit';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
async function loadFeed (event: LoadEvent): Promise<PostEntry[] | null> {
|
|
|
|
|
const resp = await backend.withEvent(event).fetch('home/feed');
|
|
|
|
|
|
2025-09-14 16:05:35 +02:00
|
|
|
if ([200].indexOf(resp.status) < 0) {
|
|
|
|
|
console.error(`fetch feed returned status ${resp.status}`);
|
|
|
|
|
return null;
|
|
|
|
|
}
|
2025-09-12 19:20:30 +02:00
|
|
|
try {
|
|
|
|
|
const respJ = await resp.json();
|
|
|
|
|
|
|
|
|
|
const { feed } : { feed: PostEntry[] } = respJ;
|
|
|
|
|
|
|
|
|
|
return feed;
|
|
|
|
|
} catch (e) {
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export async function load(event): Promise<{feed: PostEntry[] | null}> {
|
|
|
|
|
let feed = null;
|
|
|
|
|
let me = getMe();
|
|
|
|
|
|
|
|
|
|
if (me) {
|
|
|
|
|
feed = await loadFeed(event);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return { feed };
|
|
|
|
|
}
|