Display invoice actions notifications
This commit is contained in:
parent
a612b2dfb0
commit
6dfe582fe8
2 changed files with 34 additions and 2 deletions
|
@ -4,6 +4,8 @@ import createDialogActionHandlers from "@saleor/utils/handlers/dialogActionHandl
|
||||||
import React from "react";
|
import React from "react";
|
||||||
import { useIntl } from "react-intl";
|
import { useIntl } from "react-intl";
|
||||||
|
|
||||||
|
import { InvoiceEmailSend } from "../../types/InvoiceEmailSend";
|
||||||
|
import { InvoiceRequest } from "../../types/InvoiceRequest";
|
||||||
import { OrderAddNote } from "../../types/OrderAddNote";
|
import { OrderAddNote } from "../../types/OrderAddNote";
|
||||||
import { OrderCancel } from "../../types/OrderCancel";
|
import { OrderCancel } from "../../types/OrderCancel";
|
||||||
import { OrderCapture } from "../../types/OrderCapture";
|
import { OrderCapture } from "../../types/OrderCapture";
|
||||||
|
@ -42,6 +44,8 @@ interface OrderDetailsMessages {
|
||||||
handlePaymentRefund: (data: OrderRefund) => void;
|
handlePaymentRefund: (data: OrderRefund) => void;
|
||||||
handleShippingMethodUpdate: (data: OrderShippingMethodUpdate) => void;
|
handleShippingMethodUpdate: (data: OrderShippingMethodUpdate) => void;
|
||||||
handleUpdate: (data: OrderUpdate) => void;
|
handleUpdate: (data: OrderUpdate) => void;
|
||||||
|
handleInvoiceGeneratePending: (data: InvoiceRequest) => void;
|
||||||
|
handleInvoiceSend: (data: InvoiceEmailSend) => void;
|
||||||
}) => React.ReactElement;
|
}) => React.ReactElement;
|
||||||
id: string;
|
id: string;
|
||||||
params: OrderUrlQueryParams;
|
params: OrderUrlQueryParams;
|
||||||
|
@ -251,11 +255,39 @@ export const OrderDetailsMessages: React.FC<OrderDetailsMessages> = ({
|
||||||
closeModal();
|
closeModal();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
const handleInvoiceGeneratePending = (data: InvoiceRequest) => {
|
||||||
|
const errs = data.requestInvoice?.errors;
|
||||||
|
if (errs.length === 0) {
|
||||||
|
pushMessage({
|
||||||
|
text: intl.formatMessage({
|
||||||
|
defaultMessage:
|
||||||
|
"We’re generating the invoice you requested. Please wait a couple of moments"
|
||||||
|
}),
|
||||||
|
title: intl.formatMessage({
|
||||||
|
defaultMessage: "Invoice is Generating"
|
||||||
|
})
|
||||||
|
});
|
||||||
|
closeModal();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
const handleInvoiceSend = (data: InvoiceEmailSend) => {
|
||||||
|
const errs = data.sendInvoiceEmail?.errors;
|
||||||
|
if (errs.length === 0) {
|
||||||
|
pushMessage({
|
||||||
|
text: intl.formatMessage({
|
||||||
|
defaultMessage: "Invoice email sent"
|
||||||
|
})
|
||||||
|
});
|
||||||
|
closeModal();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
return children({
|
return children({
|
||||||
handleDraftCancel,
|
handleDraftCancel,
|
||||||
handleDraftFinalize,
|
handleDraftFinalize,
|
||||||
handleDraftUpdate,
|
handleDraftUpdate,
|
||||||
|
handleInvoiceGeneratePending,
|
||||||
|
handleInvoiceSend,
|
||||||
handleNoteAdd,
|
handleNoteAdd,
|
||||||
handleOrderCancel,
|
handleOrderCancel,
|
||||||
handleOrderFulfillmentCancel,
|
handleOrderFulfillmentCancel,
|
||||||
|
|
|
@ -148,8 +148,8 @@ export const OrderDetails: React.FC<OrderDetailsProps> = ({ id, params }) => {
|
||||||
onDraftFinalize={orderMessages.handleDraftFinalize}
|
onDraftFinalize={orderMessages.handleDraftFinalize}
|
||||||
onDraftCancel={orderMessages.handleDraftCancel}
|
onDraftCancel={orderMessages.handleDraftCancel}
|
||||||
onOrderMarkAsPaid={orderMessages.handleOrderMarkAsPaid}
|
onOrderMarkAsPaid={orderMessages.handleOrderMarkAsPaid}
|
||||||
onInvoiceRequest={() => null}
|
onInvoiceRequest={orderMessages.handleInvoiceGeneratePending}
|
||||||
onInvoiceSend={() => null}
|
onInvoiceSend={orderMessages.handleInvoiceSend}
|
||||||
>
|
>
|
||||||
{({
|
{({
|
||||||
orderAddNote,
|
orderAddNote,
|
||||||
|
|
Loading…
Reference in a new issue