devexpress-reporting-react
Version:
DevExpress Reporting React provides the capability to develop a reporting application to create and customize reports.
20 lines (19 loc) • 912 B
JavaScript
import React from 'react';
import { SvgTemplatesEngine } from '@devexpress/analytics-core/property-grid/widgets/internal/_svgTemplateEngine';
import { getTemplate } from '@devexpress/analytics-core/property-grid/widgets/templateUtils';
import { TemplateEngineContext } from '../TemplateEngineProvider/TemplateEngineProvider';
const Template = ({ template, data, ...delegatedProps }) => {
const templateEngine = React.useContext(TemplateEngineContext);
const component = templateEngine.getTemplate(template);
if (!!component) {
return React.createElement(component, { data });
}
else if (!!SvgTemplatesEngine.getExistingTemplate(template)) {
return React.createElement("div", { ...delegatedProps, dangerouslySetInnerHTML: { __html: getTemplate(template) } });
}
else {
console.log(`${template} is not found`);
}
return null;
};
export default Template;