UNPKG

devexpress-reporting-react

Version:

DevExpress Reporting React provides the capability to develop a reporting application to create and customize reports.

28 lines (27 loc) 2.11 kB
import React from 'react'; import { Popup } from 'devextreme-react/popup'; import { initializeViewerExportBinding } from 'devexpress-reporting/viewer/internal/_bindings'; const ExportTool = ({ data }) => { const elementRef = React.useRef(); const [popupOptions, setPopupOptions] = React.useState(); React.useEffect(() => { const element = elementRef.current; const container = data.popupOptions.getPopupContainer(element); setPopupOptions({ container, position: { of: container } }); initializeViewerExportBinding(element, data); }, [data]); return (React.createElement("div", { ref: elementRef }, React.createElement("div", { className: "dxrd-visually-hidden" }, React.createElement("form", { action: "data.exportActionUri", method: "post" }, data.exportFormData.map(item => (React.createElement("input", { key: item.name, name: item.name, value: item.value }))))), React.createElement(Popup, { width: data.popupOptions.width, height: data.popupOptions.height, title: data.popupOptions.title, visible: data.popupOptions.visible, showCloseButton: true, onHidden: () => data.popupOptions.onHidden(), toolbarItems: data.popupOptions.toolbarItems, wrapperAttr: data.popupOptions.wrapperAttr, container: popupOptions?.container, position: popupOptions?.position }, React.createElement("div", { className: "dxrd-print-dialog-content" }, React.createElement("div", null, data.printingTexts.caption), React.createElement("p", null), !!data.printingTexts.prefix && React.createElement("div", { className: "dxrdp-print-text-prefix" }, data.printingTexts.prefix), "\u00A0", React.createElement("a", { href: "", className: "dxrd-preview-printing-link", onClick: event => data.printingLinkCallback(data, event.nativeEvent) }, data.printingTexts.link), !!data.printingTexts.postfix && React.createElement("div", { className: "dxrdp-print-text-postfix" }, data.printingTexts.postfix))))); }; export default ExportTool;