diff options
author | Ashelyn Rose <git@ashen.earth> | 2025-02-25 23:48:46 -0700 |
---|---|---|
committer | Ashelyn Rose <git@ashen.earth> | 2025-02-25 23:48:46 -0700 |
commit | bca380fcf242208e375dd509cbd7bcb4d643a400 (patch) | |
tree | 26e3be107f7be09741781733d623c9e6cddc6b3c /ui/src/root.tsx | |
parent | 29576c7c36f254d6a60b0d599e5f809c636acb4b (diff) |
Diffstat (limited to 'ui/src/root.tsx')
-rw-r--r-- | ui/src/root.tsx | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/ui/src/root.tsx b/ui/src/root.tsx index 13b3021..2026dde 100644 --- a/ui/src/root.tsx +++ b/ui/src/root.tsx @@ -1,26 +1,29 @@ import { useEffect, useState } from 'react'; -import { invoke } from '@tauri-apps/api/core'; +import { Accounts } from '../bindings/' +import { Account } from '../bindings/Account'; export default function Root() { - const [existingAccounts, setExistingAccounts] = useState<any>([]) + const [existingAccounts, setExistingAccounts] = useState<Account[]>([]) const [signedIn, setSignedIn] = useState<{serverDomain: string, username: string} | null>(null) const [accountData, setAccountData] = useState('') async function signIn() { - let [serverDomain, username] = await invoke('start_account_auth', {instanceDomain: 'social.tempest.dev'}) as string[] + let [serverDomain, username] = await Accounts.startAccountAuth('social.tempest.dev') + setSignedIn({serverDomain, username}) } async function getSelf() { if (!signedIn) throw new Error("Not signed in") const {serverDomain, username} = signedIn; - let result = await invoke('get_self', {serverDomain, username}) as string + let result = await Accounts.getSelf(serverDomain, username) setAccountData(JSON.parse(result)) } useEffect(() => { (async () => { - setExistingAccounts(await invoke('get_all_accounts')) + const result = await Accounts.getAllAccounts() + setExistingAccounts(result) })() }, []) @@ -29,9 +32,9 @@ export default function Root() { {!signedIn ? ( <> <p>Existing accounts:</p> - {existingAccounts.map(({username, server_domain}: {username: string, server_domain: string}) => ( + {existingAccounts.map(({username, domain}) => ( <> - <button key={username + server_domain} onClick={() => setSignedIn({serverDomain: server_domain, username})}>@{username}@{server_domain}</button> + <button key={username + domain} onClick={() => setSignedIn({serverDomain: domain, username})}>@{username}@{domain}</button> <br/> </> ))} |