diff --git a/src/containers/Dialogs/CreditNotePdfPreviewDialog/CreditNotePdfPreviewDialogContent.js b/src/containers/Dialogs/CreditNotePdfPreviewDialog/CreditNotePdfPreviewDialogContent.js new file mode 100644 index 000000000..3c13480c9 --- /dev/null +++ b/src/containers/Dialogs/CreditNotePdfPreviewDialog/CreditNotePdfPreviewDialogContent.js @@ -0,0 +1,47 @@ +import React from 'react'; +import { AnchorButton } from '@blueprintjs/core'; + +import { DialogContent, PdfDocumentPreview, T } from 'components'; +import { usePdfCreditNote } from 'hooks/query'; + +import withDialogActions from 'containers/Dialog/withDialogActions'; +import { compose } from 'utils'; + +function CreditNotePdfPreviewDialogContent({ + subscriptionForm: { creditNoteId }, +}) { + const { isLoading, pdfUrl } = usePdfCreditNote(creditNoteId); + + return ( + +
+ + + + + + + +
+ + +
+ ); +} + +export default compose(withDialogActions)(CreditNotePdfPreviewDialogContent); diff --git a/src/containers/Dialogs/CreditNotePdfPreviewDialog/index.js b/src/containers/Dialogs/CreditNotePdfPreviewDialog/index.js new file mode 100644 index 000000000..061cc6b85 --- /dev/null +++ b/src/containers/Dialogs/CreditNotePdfPreviewDialog/index.js @@ -0,0 +1,42 @@ +import React from 'react'; +import classNames from 'classnames'; + +import { T, Dialog, DialogSuspense } from 'components'; + +import withDialogRedux from 'components/DialogReduxConnect'; + +import { CLASSES } from 'common/classes'; +import { compose } from 'utils'; + +const PdfPreviewDialogContent = React.lazy(() => + import('./CreditNotePdfPreviewDialogContent'), +); + +/** + * Credit note PDF previwe dialog. + */ +function CreditNotePdfPreviewDialog({ + dialogName, + payload = { creditNoteId: null }, + isOpen, +}) { + return ( + } + className={classNames(CLASSES.DIALOG_PDF_PREVIEW)} + autoFocus={true} + canEscapeKeyClose={true} + isOpen={isOpen} + style={{ width: '1000px' }} + > + + + + + ); +} +export default compose(withDialogRedux())(CreditNotePdfPreviewDialog); diff --git a/src/containers/Drawers/CreditNoteDetailDrawer/CreditNoteDetailActionsBar.js b/src/containers/Drawers/CreditNoteDetailDrawer/CreditNoteDetailActionsBar.js index 5d7810b34..2ab7d47a6 100644 --- a/src/containers/Drawers/CreditNoteDetailDrawer/CreditNoteDetailActionsBar.js +++ b/src/containers/Drawers/CreditNoteDetailDrawer/CreditNoteDetailActionsBar.js @@ -65,6 +65,11 @@ function CreditNoteDetailActionsBar({ openDialog('reconcile-credit-note', { creditNoteId }); }; + // Handle print credit note. + const handlePrintCreditNote = () => { + openDialog('credit-note-pdf-preview', { creditNoteId }); + }; + return ( @@ -88,6 +93,14 @@ function CreditNoteDetailActionsBar({ + +