Skip to content

Commit

Permalink
fix: Handle failure when fetching user preferences (#2069)
Browse files Browse the repository at this point in the history
  • Loading branch information
natsukagami committed May 5, 2023
1 parent d9e7a09 commit 1487932
Showing 1 changed file with 13 additions and 2 deletions.
15 changes: 13 additions & 2 deletions composables/users.ts
Original file line number Diff line number Diff line change
Expand Up @@ -169,7 +169,7 @@ export async function loginTo(masto: ElkMasto, user: Overwrite<UserLogin, { acco
currentUserHandle.value = me.acct
}

const accountPreferencesMap = new Map<string, mastodon.v1.Preference>()
const accountPreferencesMap = new Map<string, Partial<mastodon.v1.Preference>>()

/**
* @returns `true` when user ticked the preference to always expand posts with content warnings
Expand All @@ -193,9 +193,20 @@ export function getHideMediaByDefault(account: mastodon.v1.AccountCredentials) {
}

export async function fetchAccountInfo(client: mastodon.Client, server: string) {
// Try to fetch user preferences if the backend supports it.
const fetchPrefs = async (): Promise<Partial<mastodon.v1.Preference>> => {
try {
return await client.v1.preferences.fetch()
}
catch (e) {
console.warn(`Cannot fetch preferences: ${e}`)
return {}
}
}

const [account, preferences] = await Promise.all([
client.v1.accounts.verifyCredentials(),
client.v1.preferences.fetch(),
fetchPrefs(),
])

if (!account.acct.includes('@'))
Expand Down

0 comments on commit 1487932

Please sign in to comment.