diff options
| author | MohamedBassem <me@mbassem.com> | 2024-09-14 13:26:50 +0100 |
|---|---|---|
| committer | MohamedBassem <me@mbassem.com> | 2024-09-14 13:26:50 +0100 |
| commit | b9c7857c5bb16d024fed6544eebf0ef6cd10390f (patch) | |
| tree | 7580a0f8d3d6a3a994297a5fbf232ab42cf9c2c8 /apps/mobile/app/dashboard/(tabs)/search.tsx | |
| parent | 09e16babd4435e2ce82ff35dcec2c0a52717dc70 (diff) | |
| download | karakeep-b9c7857c5bb16d024fed6544eebf0ef6cd10390f.tar.zst | |
feature(mobile): Add proper error handling for server errors
Diffstat (limited to 'apps/mobile/app/dashboard/(tabs)/search.tsx')
| -rw-r--r-- | apps/mobile/app/dashboard/(tabs)/search.tsx | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/apps/mobile/app/dashboard/(tabs)/search.tsx b/apps/mobile/app/dashboard/(tabs)/search.tsx index ee029ab8..d29c3b05 100644 --- a/apps/mobile/app/dashboard/(tabs)/search.tsx +++ b/apps/mobile/app/dashboard/(tabs)/search.tsx @@ -1,6 +1,7 @@ import { useState } from "react"; import { View } from "react-native"; import BookmarkList from "@/components/bookmarks/BookmarkList"; +import FullPageError from "@/components/FullPageError"; import CustomSafeAreaView from "@/components/ui/CustomSafeAreaView"; import FullPageSpinner from "@/components/ui/FullPageSpinner"; import { Input } from "@/components/ui/Input"; @@ -16,10 +17,15 @@ export default function Search() { const onRefresh = api.useUtils().bookmarks.searchBookmarks.invalidate; - const { data, isPending } = api.bookmarks.searchBookmarks.useQuery( - { text: query }, - { placeholderData: keepPreviousData }, - ); + const { data, error, refetch, isPending } = + api.bookmarks.searchBookmarks.useQuery( + { text: query }, + { placeholderData: keepPreviousData }, + ); + + if (error) { + return <FullPageError error={error.message} onRetry={() => refetch()} />; + } if (!data) { return <FullPageSpinner />; |
