adds activity timeline

This commit is contained in:
Christian Beutel
2024-12-14 17:42:00 +01:00
parent 85729e9728
commit e315c4d58a
19 changed files with 1452 additions and 15 deletions

View File

@@ -0,0 +1,27 @@
import type { Activity } from "$lib/models/activity";
import { ClientResponseError, type ListResult } from "pocketbase";
let activities: Activity[] = [];
export async function activities_index(author: string, page: number = 1, perPage: number = 10, f: (url: RequestInfo | URL, config?: RequestInit) => Promise<Response> = fetch) {
const r = await f('/api/v1/activity?' + new URLSearchParams({
"per-page": perPage.toString(),
page: page.toString(),
filter: `author="${author}"`
}), {
method: 'GET',
})
if (!r.ok) {
throw new ClientResponseError(await r.json())
}
const fetchedActivities: ListResult<Activity> = await r.json();
const result = page > 1 ? [...activities, ...fetchedActivities.items] : fetchedActivities.items
activities = result;
return { ...fetchedActivities, items: result };
}