diff options
Diffstat (limited to 'ui')
-rw-r--r-- | ui/src/root.tsx | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/ui/src/root.tsx b/ui/src/root.tsx index bc87cd9..bb4b763 100644 --- a/ui/src/root.tsx +++ b/ui/src/root.tsx @@ -2,16 +2,18 @@ import { useState } from 'react'; import { invoke } from '@tauri-apps/api/core'; export default function Root() { - const [signedIn, setSignedIn] = useState(false) + const [signedIn, setSignedIn] = useState<{serverDomain: string, username: string} | null>(null) const [accountData, setAccountData] = useState('') async function signIn() { - await invoke('start_account_auth', {instanceDomain: 'social.tempest.dev'}) - setSignedIn(true) + let [serverDomain, username] = await invoke('start_account_auth', {instanceDomain: 'social.tempest.dev'}) as string[] + setSignedIn({serverDomain, username}) } async function getSelf() { - let result = await invoke('get_self') as string + if (!signedIn) throw new Error("Not signed in") + const {serverDomain, username} = signedIn; + let result = await invoke('get_self', {serverDomain, username}) as string setAccountData(JSON.parse(result)) } |