From 623ec69e1fe656a5fa028b6d0a83e8f0ddf767f7 Mon Sep 17 00:00:00 2001 From: dominik-zeglen Date: Wed, 28 Oct 2020 14:22:42 +0100 Subject: [PATCH] Fix types --- src/components/Form/Form.tsx | 2 +- .../components/CustomerCreatePage/CustomerCreatePage.tsx | 2 +- src/pages/components/PageDetailsPage/PageDetailsPage.tsx | 6 +++--- src/pages/views/PageCreate.tsx | 6 ++++-- .../components/WarehouseCreatePage/WarehouseCreatePage.tsx | 2 +- 5 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/components/Form/Form.tsx b/src/components/Form/Form.tsx index 2721f678a..77b692528 100644 --- a/src/components/Form/Form.tsx +++ b/src/components/Form/Form.tsx @@ -6,7 +6,7 @@ export interface FormProps { confirmLeave?: boolean; initial?: T; resetOnSubmit?: boolean; - onSubmit?: (data: T) => void; + onSubmit?: (data: T) => Promise | void; } function Form(props: FormProps) { diff --git a/src/customers/components/CustomerCreatePage/CustomerCreatePage.tsx b/src/customers/components/CustomerCreatePage/CustomerCreatePage.tsx index 554e96456..dd421fcb2 100644 --- a/src/customers/components/CustomerCreatePage/CustomerCreatePage.tsx +++ b/src/customers/components/CustomerCreatePage/CustomerCreatePage.tsx @@ -76,7 +76,7 @@ const CustomerCreatePage: React.FC = ({ const { errors: validationErrors, submit: handleSubmitWithAddress - } = useAddressValidation(formData => + } = useAddressValidation(formData => onSubmit({ address: { city: formData.city, diff --git a/src/pages/components/PageDetailsPage/PageDetailsPage.tsx b/src/pages/components/PageDetailsPage/PageDetailsPage.tsx index db0115c34..39bc0a055 100644 --- a/src/pages/components/PageDetailsPage/PageDetailsPage.tsx +++ b/src/pages/components/PageDetailsPage/PageDetailsPage.tsx @@ -45,7 +45,7 @@ export interface PageDetailsPageProps { saveButtonBarState: ConfirmButtonTransitionState; onBack: () => void; onRemove: () => void; - onSubmit: (data: PageDetailsPageFormData) => void; + onSubmit: (data: PageDetailsPageFormData) => Promise; } const PageDetailsPage: React.FC = ({ @@ -84,13 +84,13 @@ const PageDetailsPage: React.FC = ({ title: page?.title || "" }; - const handleSubmit = (data: FormData) => { + const handleSubmit = (data: PageDetailsPageFormData) => { const metadata = isMetadataModified ? data.metadata : undefined; const privateMetadata = isPrivateMetadataModified ? data.privateMetadata : undefined; - onSubmit({ + return onSubmit({ ...data, isPublished: data.isPublished || !!data.publicationDate, metadata, diff --git a/src/pages/views/PageCreate.tsx b/src/pages/views/PageCreate.tsx index 3abf998d9..4c5fb0fb8 100644 --- a/src/pages/views/PageCreate.tsx +++ b/src/pages/views/PageCreate.tsx @@ -9,7 +9,9 @@ import { import React from "react"; import { useIntl } from "react-intl"; -import PageDetailsPage, { FormData } from "../components/PageDetailsPage"; +import PageDetailsPage, { + PageDetailsPageFormData +} from "../components/PageDetailsPage"; import { TypedPageCreate } from "../mutations"; import { PageCreate as PageCreateData } from "../types/PageCreate"; import { pageListUrl, pageUrl } from "../urls"; @@ -40,7 +42,7 @@ export const PageCreate: React.FC = () => { return ( {(pageCreate, pageCreateOpts) => { - const handleCreate = async (formData: FormData) => { + const handleCreate = async (formData: PageDetailsPageFormData) => { const result = await pageCreate({ variables: { input: { diff --git a/src/warehouses/components/WarehouseCreatePage/WarehouseCreatePage.tsx b/src/warehouses/components/WarehouseCreatePage/WarehouseCreatePage.tsx index 8f2b61748..d9b8102a6 100644 --- a/src/warehouses/components/WarehouseCreatePage/WarehouseCreatePage.tsx +++ b/src/warehouses/components/WarehouseCreatePage/WarehouseCreatePage.tsx @@ -58,7 +58,7 @@ const WarehouseCreatePage: React.FC = ({ const { errors: validationErrors, submit: handleSubmit - } = useAddressValidation(onSubmit); + } = useAddressValidation(onSubmit); return (