add session and content resolution for activity

This commit is contained in:
Badtz 2025-03-28 15:56:30 -07:00
parent 6600ba56bf
commit e876d5846e
4 changed files with 83 additions and 15 deletions

View file

@ -1,6 +1,14 @@
import { createRPC, getActivity, getSessions, resolveHandle } from '$lib/util';
import {
createRPC,
getActivity,
getSessions,
resolveHandle,
resolveMedia,
resolveSession
} from '$lib/util';
import type {
ComAtprotoRepoListRecords,
MeWoachContentAnilist,
MeWoachFeedActivity,
MeWoachFeedSession
} from '@atcute/client/lexicons';
@ -14,10 +22,28 @@ export const load: PageLoad = async ({ params }) => {
(record: ComAtprotoRepoListRecords.Record) => record.value as MeWoachFeedSession.Record
);
const activity: MeWoachFeedActivity.Record[] = (await getActivity(rpc, did)).map(
(record: ComAtprotoRepoListRecords.Record) => record.value as MeWoachFeedActivity.Record
const activity: {
session: MeWoachFeedSession.Record;
activity: MeWoachFeedActivity.Record;
}[] = await Promise.all(
(await getActivity(rpc, did)).map(async (activityRecord: ComAtprotoRepoListRecords.Record) => {
const session = (await resolveSession(
rpc,
(activityRecord.value as MeWoachFeedActivity.Record).session.uri
)) as MeWoachFeedSession.Record;
const content = (await resolveMedia(rpc, session.content.uri)) as MeWoachContentAnilist.Main;
return {
session,
activity: activityRecord.value as MeWoachFeedActivity.Record,
content
};
})
);
console.log(activity);
return {
handle: params.handle,
sessions: sessions,