From 9bd409e1135c7fcfdc5276f7074aa12b05b7c7da Mon Sep 17 00:00:00 2001 From: Timur Ercan Date: Wed, 1 Mar 2023 15:25:51 +0100 Subject: [PATCH] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20getDocuments?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/web/pages/documents.tsx | 16 ++++++---------- packages/lib/api/getDocuments.ts | 7 +++++++ packages/lib/api/index.ts | 1 + 3 files changed, 14 insertions(+), 10 deletions(-) create mode 100644 packages/lib/api/getDocuments.ts diff --git a/apps/web/pages/documents.tsx b/apps/web/pages/documents.tsx index b2bd7570c..ff84788fe 100644 --- a/apps/web/pages/documents.tsx +++ b/apps/web/pages/documents.tsx @@ -19,6 +19,7 @@ import { DocumentStatus } from "@prisma/client"; import { Tooltip as ReactTooltip } from "react-tooltip"; import { Button, IconButton, SelectBox } from "@documenso/ui"; import { NextPageContext } from "next"; +import { getDocuments } from "@documenso/lib/api"; const DocumentsPage: NextPageWithLayout = (props: any) => { const router = useRouter(); @@ -48,15 +49,10 @@ const DocumentsPage: NextPageWithLayout = (props: any) => { createdFilter[0] ); - const getDocuments = async () => { + const loadDocuments = async () => { if (!documents.length) setLoading(true); - // todo encapsulate - fetch("/api/documents", { - headers: { - "Content-Type": "application/json", - }, - }).then((res) => { - res.json().then((j) => { + getDocuments().then((res: any) => { + res.json().then((j: any) => { setDocuments(j); setLoading(false); }); @@ -64,7 +60,7 @@ const DocumentsPage: NextPageWithLayout = (props: any) => { }; useEffect(() => { - getDocuments().finally(() => { + loadDocuments().finally(() => { setSelectedStatusFilter( statusFilters.filter( (status) => status.value === props.filter.toUpperCase() @@ -368,7 +364,7 @@ const DocumentsPage: NextPageWithLayout = (props: any) => { setDocuments(documentsWithoutIndex); }) .then(() => { - getDocuments(); + loadDocuments(); }); } }} diff --git a/packages/lib/api/getDocuments.ts b/packages/lib/api/getDocuments.ts new file mode 100644 index 000000000..467aeb1da --- /dev/null +++ b/packages/lib/api/getDocuments.ts @@ -0,0 +1,7 @@ +export const getDocuments = (): any => { + return fetch("/api/documents", { + headers: { + "Content-Type": "application/json", + }, + }); +}; diff --git a/packages/lib/api/index.ts b/packages/lib/api/index.ts index ed713c963..834992b27 100644 --- a/packages/lib/api/index.ts +++ b/packages/lib/api/index.ts @@ -3,3 +3,4 @@ export { deleteField } from "./deleteField"; export { signDocument } from "./signDocument"; export { getUser } from "./getUser"; export { signup } from "./signup"; +export { getDocuments } from "./getDocuments";