mstr-viz
Version:
A new dev tool for creating custom visualizations
36 lines (32 loc) • 1.32 kB
JavaScript
const {
visualization_name,
available_for_documents,
available_for_dossiers,
available_for_reports,
categories,
summary_id,
summary,
use_case_id,
use_case,
requirements_id,
requirements,
desc_id,
use_react_config,
} = require('./loadConfig')(process.cwd());
const getScope = (report, document, dossier) => (
(report ? 1 : 0) + (document ? 2 : 0) + (dossier ? 16 : 0)
);
module.exports = visName => {
const dropZones = `plugins.${visName}.${visName}DropZones`;
const editModel = `plugins.${visName}.${visName}EditorModel`;
const scope = getScope(available_for_reports, available_for_documents, available_for_dossiers);
const useReactConfig = !!use_react_config; // 'use_react_config' maybe undefined.
return `\
<visualizations>
<visualization-list name="ajax" show-in-web="true" view-mode="51">
<visualization desc="${visualization_name}" drop-zones="${dropZones}" editor-model="${editModel}" is-mojo="true" scope="${scope}" style-name="${visName}" widget-type="7" \
summary="${summary}" use-case="${use_case}" requirements="${requirements}" \
desc-id="${desc_id}" categories="${categories}" summary-id="${summary_id}" use-case-id="${use_case_id}" requirements-id="${requirements_id}" use-react-config="${useReactConfig}"/>
</visualization-list>
</visualizations>`;
};