UNPKG

medusa-invoice

Version:
87 lines 11.5 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.InvoiceTemplatesTab = void 0; const jsx_runtime_1 = require("react/jsx-runtime"); const ui_1 = require("@medusajs/ui"); const ui_2 = require("@medusajs/ui"); const react_1 = require("react"); const material_1 = require("@mui/material"); const template_kind_1 = require("../../types/template-kind"); const medusa_react_1 = require("medusa-react"); const ViewExampleInvoice = ({ kind }) => { var _a, _b; const { data, isLoading, isError, error } = (0, medusa_react_1.useAdminCustomQuery)(`/invoice/generate`, [], { template: kind, }); if (isLoading) { return ((0, jsx_runtime_1.jsx)(material_1.Grid, { container: true, justifyContent: "center", children: (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, children: (0, jsx_runtime_1.jsx)(material_1.CircularProgress, { size: 12 }) }) })); } if (isError) { const trueError = error; if ((_b = (_a = trueError.response) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.message) { return (0, jsx_runtime_1.jsx)(ui_1.Alert, { variant: "error", children: trueError.response.data.message }); } else { return (0, jsx_runtime_1.jsx)(ui_1.Alert, { variant: "error", children: "Preview can't be generated" }); } } if (data && data.buffer) { const anyBuffer = data.buffer; const blob = new Blob([new Uint8Array(anyBuffer.data)], { type: "application/pdf", }); const pdfURL = URL.createObjectURL(blob); return (0, jsx_runtime_1.jsx)("iframe", { src: pdfURL, width: 660, height: 1000 }); } else { return (0, jsx_runtime_1.jsx)(ui_1.Alert, { variant: "error", children: "Preview can't be generated" }); } }; const ChooseTemplate = (props) => { const handleChange = (checked) => { props.setKind(checked); }; return ((0, jsx_runtime_1.jsxs)(ui_2.RadioGroup, { onValueChange: handleChange, defaultValue: props.lastKind.toString(), children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center gap-x-3", children: [(0, jsx_runtime_1.jsx)(ui_2.RadioGroup.Item, { value: template_kind_1.InvoiceTemplateKind.BASIC.toString(), id: template_kind_1.InvoiceTemplateKind.BASIC.toString() }), (0, jsx_runtime_1.jsx)(ui_2.Label, { htmlFor: "radio_1", weight: "plus", children: "Basic" })] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center gap-x-3", children: [(0, jsx_runtime_1.jsx)(ui_2.RadioGroup.Item, { value: template_kind_1.InvoiceTemplateKind.BASIC_LOGO.toString(), id: template_kind_1.InvoiceTemplateKind.BASIC_LOGO.toString() }), (0, jsx_runtime_1.jsx)(ui_2.Label, { htmlFor: "radio_1", weight: "plus", children: "Basic with logo" })] })] })); }; const TemplatesTabContent = ({ lastKind, }) => { const [templateKind, setTemplateKind] = (0, react_1.useState)(lastKind !== undefined && lastKind !== null ? lastKind : template_kind_1.InvoiceTemplateKind.BASIC); const { mutate } = (0, medusa_react_1.useAdminCustomPost)(`/document-invoice-settings/invoice-template`, [ "document-invoice-settings", ]); const onSubmit = () => { return mutate({ invoiceTemplate: templateKind, }, { onSuccess: async ({ response, settings }) => { if (response.status == 201 && settings) { ui_2.toast.success("Template", { description: "New template saved", }); } else { ui_2.toast.error("Template", { description: "Template cannot be saved, some error happened.", }); } }, onError: ({}) => { ui_2.toast.error("Template", { description: "Template cannot be saved, some error happened.", }); }, }); }; return ((0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, spacing: 2, children: [(0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 3, md: 3, xl: 3, children: (0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, rowSpacing: 3, children: [(0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 12, md: 12, xl: 12, children: (0, jsx_runtime_1.jsx)(ui_1.Alert, { children: "Preview is based on the last order" }) }), (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 12, md: 12, xl: 12, children: (0, jsx_runtime_1.jsx)(ui_2.Container, { children: (0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, rowSpacing: 3, direction: "column", children: [(0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, children: (0, jsx_runtime_1.jsx)(ui_2.Heading, { level: "h1", children: "Choose template" }) }), (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, children: (0, jsx_runtime_1.jsx)(ChooseTemplate, { lastKind: templateKind, setKind: setTemplateKind }) }), (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, children: (0, jsx_runtime_1.jsx)(ui_2.Button, { variant: "primary", onClick: onSubmit, children: "Save" }) })] }) }) })] }) }), (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 6, md: 6, xl: 6, children: (0, jsx_runtime_1.jsx)(ViewExampleInvoice, { kind: templateKind }) })] })); }; const InvoiceTemplatesTab = () => { var _a; const { data, isLoading } = (0, medusa_react_1.useAdminCustomQuery)("/document-invoice-settings", [""], {}); if (isLoading) { return (0, jsx_runtime_1.jsx)(material_1.CircularProgress, { size: 12 }); } return (0, jsx_runtime_1.jsx)(TemplatesTabContent, { lastKind: (_a = data === null || data === void 0 ? void 0 : data.settings) === null || _a === void 0 ? void 0 : _a.invoice_template }); }; exports.InvoiceTemplatesTab = InvoiceTemplatesTab; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGVzLWludm9pY2UtdGFiLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3VpLWNvbXBvbmVudHMvdGFicy90ZW1wbGF0ZXMtdGFiL3RlbXBsYXRlcy1pbnZvaWNlLXRhYi50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLHFDQUFxQztBQUNyQyxxQ0FPc0I7QUFDdEIsaUNBQWlDO0FBQ2pDLDRDQUF1RDtBQUN2RCw2REFBZ0U7QUFDaEUsK0NBQXVFO0FBV3ZFLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxFQUFFLElBQUksRUFBaUMsRUFBRSxFQUFFOztJQUNyRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBQSxrQ0FBbUIsRUFHN0QsbUJBQW1CLEVBQUUsRUFBRSxFQUFFO1FBQ3pCLFFBQVEsRUFBRSxJQUFJO0tBQ2YsQ0FBQyxDQUFDO0lBQ0gsSUFBSSxTQUFTLEVBQUU7UUFDYixPQUFPLENBQ0wsdUJBQUMsZUFBSSxJQUFDLFNBQVMsUUFBQyxjQUFjLEVBQUUsUUFBUSxZQUN0Qyx1QkFBQyxlQUFJLElBQUMsSUFBSSxrQkFDUix1QkFBQywyQkFBZ0IsSUFBQyxJQUFJLEVBQUUsRUFBRSxHQUFJLEdBQ3pCLEdBQ0YsQ0FDUixDQUFDO0tBQ0g7SUFDRCxJQUFJLE9BQU8sRUFBRTtRQUNYLE1BQU0sU0FBUyxHQUFHLEtBQVksQ0FBQztRQUMvQixJQUFJLE1BQUEsTUFBQSxTQUFTLENBQUMsUUFBUSwwQ0FBRSxJQUFJLDBDQUFFLE9BQU8sRUFBRTtZQUNyQyxPQUFPLHVCQUFDLFVBQUssSUFBQyxPQUFPLEVBQUMsT0FBTyxZQUFFLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBUyxDQUFDO1NBQ3pFO2FBQU07WUFDTCxPQUFPLHVCQUFDLFVBQUssSUFBQyxPQUFPLEVBQUMsT0FBTywyQ0FBbUMsQ0FBQztTQUNsRTtLQUNG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