devexpress-reporting-react
Version:
DevExpress Reporting React provides the capability to develop a reporting application to create and customize reports.
19 lines (18 loc) • 1.49 kB
JavaScript
import React from 'react';
import Template from '../../core/Template';
const DefaultAction = ({ action }) => (React.createElement("div", { style: { display: action.visible ? '' : 'none' }, className: `dxrd-toolbar-item ${action.actionClass}` },
React.createElement("div", { role: "button", className: "dx-accessibility-toolbar-item dx-accessibility-focus-border-accented", "aria-label": action.block?.attr['aria-label'], "aria-disabled": action.block?.attr['aria-disabled'], "aria-pressed": action.block?.attr['aria-pressed'] },
React.createElement("div", { className: action.image.class, title: action.displayText, onClick: action.click },
React.createElement(Template, { template: action.image.templateName, data: null })),
React.createElement("div", { className: "dxrd-toolbar-item-separator dxd-toolbar-separator-color dxd-border-secondary", hidden: !action.hasSeparator }))));
const Action = ({ action }) => {
if (!action.templateName)
return React.createElement(DefaultAction, { action: action });
else
return React.createElement(Template, { template: action.templateName, data: action['contentData'] || action });
};
const Actions = ({ data }) => {
return (React.createElement(React.Fragment, null, data.map((action, index) => (React.createElement("div", { key: index, style: { display: 'inline-block', verticalAlign: 'top' } },
React.createElement(Action, { action: action }))))));
};
export default Actions;