diff --git a/ui/src/pages/accesses/AccessList.tsx b/ui/src/pages/accesses/AccessList.tsx index 543c2f3b..a6a27fd1 100644 --- a/ui/src/pages/accesses/AccessList.tsx +++ b/ui/src/pages/accesses/AccessList.tsx @@ -4,6 +4,7 @@ import { Avatar, Button, Empty, Modal, notification, Space, Table, Tooltip, Typo import { PageHeader } from "@ant-design/pro-components"; import { Copy as CopyIcon, Pencil as PencilIcon, Plus as PlusIcon, Trash2 as Trash2Icon } from "lucide-react"; import moment from "moment"; +import { ClientResponseError } from "pocketbase"; import AccessEditDialog from "@/components/certimate/AccessEditDialog"; import { Access as AccessType, accessProvidersMap } from "@/domain/access"; @@ -123,6 +124,10 @@ const AccessList = () => { setTableData(items); setTableTotal(configContext.config.accesses.length); } catch (err) { + if (err instanceof ClientResponseError && err.isAbort) { + return; + } + console.error(err); notificationApi.error({ message: t("common.text.request_error"), description: <>{String(err)} }); } finally { diff --git a/ui/src/pages/certificates/CertificateList.tsx b/ui/src/pages/certificates/CertificateList.tsx index f473d77e..65760fa9 100644 --- a/ui/src/pages/certificates/CertificateList.tsx +++ b/ui/src/pages/certificates/CertificateList.tsx @@ -5,6 +5,7 @@ import { Button, Divider, Empty, Menu, notification, Radio, Space, Table, theme, import { PageHeader } from "@ant-design/pro-components"; import { Eye as EyeIcon, Filter as FilterIcon } from "lucide-react"; import moment from "moment"; +import { ClientResponseError } from "pocketbase"; import CertificateDetailDrawer from "@/components/certificate/CertificateDetailDrawer"; import { Certificate as CertificateType } from "@/domain/certificate"; @@ -192,6 +193,10 @@ const CertificateList = () => { setTableData(resp.items); setTableTotal(resp.totalItems); } catch (err) { + if (err instanceof ClientResponseError && err.isAbort) { + return; + } + console.error(err); notificationApi.error({ message: t("common.text.request_error"), description: <>{String(err)} }); } finally { diff --git a/ui/src/pages/dashboard/Dashboard.tsx b/ui/src/pages/dashboard/Dashboard.tsx index 56c4569f..60340cfc 100644 --- a/ui/src/pages/dashboard/Dashboard.tsx +++ b/ui/src/pages/dashboard/Dashboard.tsx @@ -10,6 +10,7 @@ import { SquareSigma as SquareSigmaIcon, Workflow as WorkflowIcon, } from "lucide-react"; +import { ClientResponseError } from "pocketbase"; import { type Statistic as StatisticType } from "@/domain/domain"; import { get as getStatistics } from "@/api/statistics"; @@ -43,6 +44,10 @@ const Dashboard = () => { const data = await getStatistics(); setStatistic(data); } catch (err) { + if (err instanceof ClientResponseError && err.isAbort) { + return; + } + console.error(err); notificationApi.error({ message: t("common.text.request_error"), description: <>{String(err)} }); } finally { diff --git a/ui/src/pages/workflows/WorkflowList.tsx b/ui/src/pages/workflows/WorkflowList.tsx index 5863aabf..2ce5e3bc 100644 --- a/ui/src/pages/workflows/WorkflowList.tsx +++ b/ui/src/pages/workflows/WorkflowList.tsx @@ -21,6 +21,7 @@ import { import { PageHeader } from "@ant-design/pro-components"; import { Filter as FilterIcon, Pencil as PencilIcon, Plus as PlusIcon, Trash2 as Trash2Icon } from "lucide-react"; import moment from "moment"; +import { ClientResponseError } from "pocketbase"; import { Workflow as WorkflowType } from "@/domain/workflow"; import { list as listWorkflow, remove as removeWorkflow, save as saveWorkflow } from "@/repository/workflow"; @@ -219,6 +220,10 @@ const WorkflowList = () => { setTableData(resp.items); setTableTotal(resp.totalItems); } catch (err) { + if (err instanceof ClientResponseError && err.isAbort) { + return; + } + console.error(err); notificationApi.error({ message: t("common.text.request_error"), description: <>{String(err)} }); } finally {