your personal website on atproto - mirror
blento.app
1<script lang="ts">
2 import type { WebsiteData } from '$lib/types';
3 import type { Snippet } from 'svelte';
4 import { setAdditionalUserData, setCanEdit, setDidContext, setHandleContext } from './context';
5 import { dev } from '$app/environment';
6 import { user } from '$lib/atproto';
7 import type { Did, Handle } from '@atcute/lexicons';
8
9 let {
10 data,
11 children
12 }: {
13 data: WebsiteData;
14 children: Snippet<[]>;
15 } = $props();
16
17 // svelte-ignore state_referenced_locally
18 setAdditionalUserData(data.additionalData);
19
20 setCanEdit(() => dev || (user.isLoggedIn && user.profile?.did === data.did));
21
22 // svelte-ignore state_referenced_locally
23 setDidContext(data.did as Did);
24 // svelte-ignore state_referenced_locally
25 setHandleContext(data.handle as Handle);
26</script>
27
28{@render children()}