diff --git a/src/else-dimension-measures.jsx b/src/else-dimension-measures.jsx index 27186d2..6fe8c0d 100644 --- a/src/else-dimension-measures.jsx +++ b/src/else-dimension-measures.jsx @@ -105,7 +105,7 @@ class ElseDimensionMeasures extends React.PureComponent { fontSize: (12 + vLetterSize) + 'px' }; const seperatorElement = ( - * + * ); measurementCells.push(seperatorElement); nMeasure7 = 1; @@ -147,13 +147,13 @@ class ElseDimensionMeasures extends React.PureComponent { }; if (vSpecialF.substring(vSpecialF.length - 1) == '%' && vNumMeasures > 1) { cellElement = ( - + {columnNumber} ); } else { cellElement = ( - + {columnNumber} ); @@ -167,13 +167,13 @@ class ElseDimensionMeasures extends React.PureComponent { }; if (vSpecialF.substring(vSpecialF.length - 1) == '%' && vNumMeasures > 1) { cellElement = ( - + {columnNumber} ); } else { cellElement = ( - + {columnNumber} ); @@ -186,10 +186,36 @@ class ElseDimensionMeasures extends React.PureComponent { {measurementCells} - ) + ); } } -ElseDimensionMeasures.propTypes = {}; +ElseDimensionMeasures.propTypes = { + vFontFamily: PropTypes.any, + vSeparatorCols: PropTypes.any, + measure_count: PropTypes.any, + sufixCells: PropTypes.any, + vSymbolForNulls: PropTypes.any, + vLetterSize: PropTypes.any, + vColorMetric1: PropTypes.any, + vColorMetric1Text: PropTypes.any, + vColorMetric2: PropTypes.any, + vColorMetric2Text: PropTypes.any, + vColorMetric3: PropTypes.any, + vColorMetric3Text: PropTypes.any, + vAllSemaphores: PropTypes.any, + ConceptMatrixPivot: PropTypes.any, + ConceptsAffectedMatrix: PropTypes.any, + vAllMetrics: PropTypes.any, + MetricsAffectedMatrix: PropTypes.any, + vCritic: PropTypes.any, + vMMedium: PropTypes.any, + vNumMeasures: PropTypes.any, + vNumMeasures2: PropTypes.any, + MeasuresFormat: PropTypes.any, + rowNumber: PropTypes.any, + columnText: PropTypes.any, + styleBuilder: PropTypes.any +}; export default ElseDimensionMeasures; diff --git a/src/else-dimension-row-list.jsx b/src/else-dimension-row-list.jsx index 7fe9546..7efcdc4 100644 --- a/src/else-dimension-row-list.jsx +++ b/src/else-dimension-row-list.jsx @@ -56,7 +56,7 @@ class ElseDimensionRowList extends React.PureComponent { const measurementsProps = { rowNumber, columnText, styleBuilder }; const rowElement = ( - + {paddingTextElement}{columnText} + {LabelsArray[measureFormatIndex + 1]} {ExtraLabelsArray[measureFormatIndex]} @@ -224,7 +224,7 @@ class HeaderWrapper extends PureComponent { }; return ( - + {measureInfo.qFallbackTitle + vExtraLabel} diff --git a/src/paint.js b/src/paint.js index f2aec33..4816b6d 100644 --- a/src/paint.js +++ b/src/paint.js @@ -1,7 +1,7 @@ import $ from 'jquery'; import { enableExcelExport } from './excel-export'; import { generateHeaderWrapper } from './header-wrapper.jsx'; -import { generateRowWrapper } from './row-wrapper'; +import { generateRowWrapper } from './row-wrapper.jsx'; import initializeStore from './store'; export default async function paint($element, layout, component) { @@ -16,7 +16,6 @@ export default async function paint($element, layout, component) { } = state.properties; let html = await generateHeaderWrapper({ state }); - const rowWrapperHTML = await generateRowWrapper({ layout, colors: state.colors, diff --git a/src/row-list.jsx b/src/row-list.jsx index e0d0f43..d2b288b 100644 --- a/src/row-list.jsx +++ b/src/row-list.jsx @@ -24,13 +24,13 @@ class RowList extends React.PureComponent { vCustomFileBool, vFontFamily, tableData, //ConceptMatrix, - measuresComponent + MeasurementsComponent } = this.props; return ( {tableData.map((row, rowNumber) => { - const rowHeaderText = row[0]; + const rowHeaderText = row[0] || ''; if (rowHeaderText === '-') { return null; } @@ -50,11 +50,12 @@ class RowList extends React.PureComponent { const paddingTextElement = this.generatePaddingTextElement(styleBuilder.hasCustomFileStyle()); const measurementsProps = { rowNumber, rowHeaderText, styleBuilder }; return ( - - + + {paddingTextElement}{rowHeaderText} - @@ -67,7 +68,7 @@ class RowList extends React.PureComponent { } RowList.propTypes = { - tableData: PropTypes.Array.isRequired + tableData: PropTypes.array.isRequired }; export default RowList; diff --git a/src/row-wrapper.jsx b/src/row-wrapper.jsx index ad4caf7..d7a46a4 100644 --- a/src/row-wrapper.jsx +++ b/src/row-wrapper.jsx @@ -2,9 +2,9 @@ import React from 'react'; import PropTypes from 'prop-types'; import { renderToStaticMarkup } from 'react-dom/server'; import $ from 'jquery'; -import RowList from './row-list'; -import SingleDimensionMeasures from './single-dimension-measures'; -import ElseDimensionMeasures from './single-dimension-measures'; +import RowList from './row-list.jsx'; +import SingleDimensionMeasures from './single-dimension-measures.jsx'; +import ElseDimensionMeasures from './else-dimension-measures.jsx'; // TableBody? class RowWrapper extends React.PureComponent { @@ -13,13 +13,13 @@ class RowWrapper extends React.PureComponent { ConceptMatrix, ConceptMatrixPivot } = this.props; - let tableData, measurementsComponent; + let tableData, MeasurementsComponent; if (this.props.vNumDims === 1) { tableData = ConceptMatrix; - measurementsComponent = SingleDimensionMeasures; + MeasurementsComponent = SingleDimensionMeasures; } else { - tableData = ConceptMatrixPivot; - measurementsComponent = ElseDimensionMeasures; + tableData = ConceptMatrixPivot.filter(array => array.length); + MeasurementsComponent = ElseDimensionMeasures; } return ( @@ -27,7 +27,7 @@ class RowWrapper extends React.PureComponent {
@@ -37,13 +37,14 @@ class RowWrapper extends React.PureComponent { } RowWrapper.propTypes = { - ConceptMatrix: PropTypes.Array.isRequired, - ConceptMatrixPivot: PropTypes.Array.isRequired + ConceptMatrix: PropTypes.array.isRequired, + ConceptMatrixPivot: PropTypes.array.isRequired }; async function prepareProps ({ state }) { const { colors, layout, vAllSemaphores, vDynamicColorBody, vDynamicColorBodyP } = state; const props = { + colors, vCustomFileBool: layout.customfilebool, vCustomFile: layout.customfile, vPadding: layout.indentbool, @@ -126,7 +127,7 @@ async function prepareProps ({ state }) { return props; } -export async function generateRowWrapper ({ state }) { +export async function generateRowWrapper (state) { const preparedProps = await prepareProps({ state }); const html = renderToStaticMarkup( - + {paddingTextElement}{columnText}