mirror of
https://github.com/woodchen-ink/certimate.git
synced 2025-07-19 01:41: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 { PageHeader } from "@ant-design/pro-components";
|
||||||
import { Copy as CopyIcon, Pencil as PencilIcon, Plus as PlusIcon, Trash2 as Trash2Icon } from "lucide-react";
|
import { Copy as CopyIcon, Pencil as PencilIcon, Plus as PlusIcon, Trash2 as Trash2Icon } from "lucide-react";
|
||||||
import moment from "moment";
|
import moment from "moment";
|
||||||
|
import { ClientResponseError } from "pocketbase";
|
||||||
|
|
||||||
import AccessEditDialog from "@/components/certimate/AccessEditDialog";
|
import AccessEditDialog from "@/components/certimate/AccessEditDialog";
|
||||||
import { Access as AccessType, accessProvidersMap } from "@/domain/access";
|
import { Access as AccessType, accessProvidersMap } from "@/domain/access";
|
||||||
@ -123,6 +124,10 @@ const AccessList = () => {
|
|||||||
setTableData(items);
|
setTableData(items);
|
||||||
setTableTotal(configContext.config.accesses.length);
|
setTableTotal(configContext.config.accesses.length);
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
|
if (err instanceof ClientResponseError && err.isAbort) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
console.error(err);
|
console.error(err);
|
||||||
notificationApi.error({ message: t("common.text.request_error"), description: <>{String(err)}</> });
|
notificationApi.error({ message: t("common.text.request_error"), description: <>{String(err)}</> });
|
||||||
} finally {
|
} finally {
|
||||||
|
@ -5,6 +5,7 @@ import { Button, Divider, Empty, Menu, notification, Radio, Space, Table, theme,
|
|||||||
import { PageHeader } from "@ant-design/pro-components";
|
import { PageHeader } from "@ant-design/pro-components";
|
||||||
import { Eye as EyeIcon, Filter as FilterIcon } from "lucide-react";
|
import { Eye as EyeIcon, Filter as FilterIcon } from "lucide-react";
|
||||||
import moment from "moment";
|
import moment from "moment";
|
||||||
|
import { ClientResponseError } from "pocketbase";
|
||||||
|
|
||||||
import CertificateDetailDrawer from "@/components/certificate/CertificateDetailDrawer";
|
import CertificateDetailDrawer from "@/components/certificate/CertificateDetailDrawer";
|
||||||
import { Certificate as CertificateType } from "@/domain/certificate";
|
import { Certificate as CertificateType } from "@/domain/certificate";
|
||||||
@ -192,6 +193,10 @@ const CertificateList = () => {
|
|||||||
setTableData(resp.items);
|
setTableData(resp.items);
|
||||||
setTableTotal(resp.totalItems);
|
setTableTotal(resp.totalItems);
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
|
if (err instanceof ClientResponseError && err.isAbort) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
console.error(err);
|
console.error(err);
|
||||||
notificationApi.error({ message: t("common.text.request_error"), description: <>{String(err)}</> });
|
notificationApi.error({ message: t("common.text.request_error"), description: <>{String(err)}</> });
|
||||||
} finally {
|
} finally {
|
||||||
|
@ -10,6 +10,7 @@ import {
|
|||||||
SquareSigma as SquareSigmaIcon,
|
SquareSigma as SquareSigmaIcon,
|
||||||
Workflow as WorkflowIcon,
|
Workflow as WorkflowIcon,
|
||||||
} from "lucide-react";
|
} from "lucide-react";
|
||||||
|
import { ClientResponseError } from "pocketbase";
|
||||||
|
|
||||||
import { type Statistic as StatisticType } from "@/domain/domain";
|
import { type Statistic as StatisticType } from "@/domain/domain";
|
||||||
import { get as getStatistics } from "@/api/statistics";
|
import { get as getStatistics } from "@/api/statistics";
|
||||||
@ -43,6 +44,10 @@ const Dashboard = () => {
|
|||||||
const data = await getStatistics();
|
const data = await getStatistics();
|
||||||
setStatistic(data);
|
setStatistic(data);
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
|
if (err instanceof ClientResponseError && err.isAbort) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
console.error(err);
|
console.error(err);
|
||||||
notificationApi.error({ message: t("common.text.request_error"), description: <>{String(err)}</> });
|
notificationApi.error({ message: t("common.text.request_error"), description: <>{String(err)}</> });
|
||||||
} finally {
|
} finally {
|
||||||
|
@ -21,6 +21,7 @@ import {
|
|||||||
import { PageHeader } from "@ant-design/pro-components";
|
import { PageHeader } from "@ant-design/pro-components";
|
||||||
import { Filter as FilterIcon, Pencil as PencilIcon, Plus as PlusIcon, Trash2 as Trash2Icon } from "lucide-react";
|
import { Filter as FilterIcon, Pencil as PencilIcon, Plus as PlusIcon, Trash2 as Trash2Icon } from "lucide-react";
|
||||||
import moment from "moment";
|
import moment from "moment";
|
||||||
|
import { ClientResponseError } from "pocketbase";
|
||||||
|
|
||||||
import { Workflow as WorkflowType } from "@/domain/workflow";
|
import { Workflow as WorkflowType } from "@/domain/workflow";
|
||||||
import { list as listWorkflow, remove as removeWorkflow, save as saveWorkflow } from "@/repository/workflow";
|
import { list as listWorkflow, remove as removeWorkflow, save as saveWorkflow } from "@/repository/workflow";
|
||||||
@ -219,6 +220,10 @@ const WorkflowList = () => {
|
|||||||
setTableData(resp.items);
|
setTableData(resp.items);
|
||||||
setTableTotal(resp.totalItems);
|
setTableTotal(resp.totalItems);
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
|
if (err instanceof ClientResponseError && err.isAbort) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
console.error(err);
|
console.error(err);
|
||||||
notificationApi.error({ message: t("common.text.request_error"), description: <>{String(err)}</> });
|
notificationApi.error({ message: t("common.text.request_error"), description: <>{String(err)}</> });
|
||||||
} finally {
|
} finally {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user