diff --git a/src/routes/(app)/settings/account/profile/+page.svelte b/src/routes/(app)/settings/account/profile/+page.svelte index c23138d..1afdfe3 100644 --- a/src/routes/(app)/settings/account/profile/+page.svelte +++ b/src/routes/(app)/settings/account/profile/+page.svelte @@ -8,15 +8,17 @@ GroupedListContent, GroupedListItem } from '$lib/components/GroupedList'; - import type { BlahProfile } from '@blah-im/core/identity'; + import type { BlahIdentity, BlahProfile } from '@blah-im/core/identity'; import ProfilePicture from '$lib/components/ProfilePicture.svelte'; import Button from '$lib/components/Button.svelte'; import RichTextInput from '$lib/components/RichTextInput.svelte'; import { messageSchema } from '$lib/components/RichTextInput/schema'; import { blahRichTextToProseMirrorDoc } from '$lib/richText'; import type { Node } from 'prosemirror-model'; + import UsernameItem from './UsernameItem.svelte'; const currentAccount = $derived(accountsManager.currentAccount); + let identity: BlahIdentity | null = $state(null); let profile: BlahProfile | null = $state(null); let initialBio: Node | null = $state(null); @@ -27,6 +29,9 @@ const snapshot = $state.snapshot(currentAccount.profile.signee.payload); profile = snapshot; initialBio = blahRichTextToProseMirrorDoc([snapshot.bio ?? ''], messageSchema); + accountsManager.identityForAccount(currentAccount).then((x) => { + identity = x; + }); } }); @@ -69,5 +74,11 @@ initialDoc={initialBio} /> + + + {#each profile.id_urls as url (url)} + + {/each} + {/if} diff --git a/src/routes/(app)/settings/account/profile/UsernameItem.svelte b/src/routes/(app)/settings/account/profile/UsernameItem.svelte new file mode 100644 index 0000000..ee894a8 --- /dev/null +++ b/src/routes/(app)/settings/account/profile/UsernameItem.svelte @@ -0,0 +1,31 @@ + + + + {idURLToUsername(url)} + + {#await validate()} + + {:then result} + {#if result && !result.valid} + + {/if} + {/await} +