refactor: use typed error check for draft limit
Replace manual error object inspection with the proper AppBskyDraftCreateDraft.DraftLimitReachedError type check for cleaner and more reliable error handling. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
import {useCallback} from 'react'
|
import {useCallback} from 'react'
|
||||||
import {type AppBskyDraftDefs} from '@atproto/api'
|
import {AppBskyDraftCreateDraft, type AppBskyDraftDefs} from '@atproto/api'
|
||||||
import {useMutation, useQuery, useQueryClient} from '@tanstack/react-query'
|
import {useMutation, useQuery, useQueryClient} from '@tanstack/react-query'
|
||||||
|
|
||||||
import {useAgent} from '#/state/session'
|
import {useAgent} from '#/state/session'
|
||||||
@@ -141,13 +141,8 @@ export function useSaveDraft() {
|
|||||||
},
|
},
|
||||||
onError: error => {
|
onError: error => {
|
||||||
// Check for draft limit error
|
// Check for draft limit error
|
||||||
if (
|
if (error instanceof AppBskyDraftCreateDraft.DraftLimitReachedError) {
|
||||||
error &&
|
logger.error('Draft limit reached', {safeMessage: error.message})
|
||||||
typeof error === 'object' &&
|
|
||||||
'error' in error &&
|
|
||||||
(error as {error: string}).error === 'DraftLimitReached'
|
|
||||||
) {
|
|
||||||
logger.error('Draft limit reached', {error})
|
|
||||||
// Error will be handled by caller
|
// Error will be handled by caller
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user