mirror of
https://github.com/woodchen-ink/certimate.git
synced 2025-07-18 17:31:55 +08:00
feat(ui): optimize table UI
This commit is contained in:
parent
048150d779
commit
c5498b92a2
@ -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 {
|
||||
|
@ -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 {
|
||||
|
@ -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 {
|
||||
|
@ -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 {
|
||||
|
Loading…
x
Reference in New Issue
Block a user