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
JavaScript
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;