@sis-cc/dotstatsuite-components 22.2.0 → 22.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/rules/src/preparators/formatValue.js +3 -2
- package/dist/rules/src/preparators/formatValue.js.map +1 -1
- package/dist/rules2/src/parseAttributes.js +1 -1
- package/dist/rules2/src/parseAttributes.js.map +1 -1
- package/dist/rules2/src/table/getLayoutData2.js +5 -4
- package/dist/rules2/src/table/getLayoutData2.js.map +1 -1
- package/dist/rules2/src/table/getTableProps.js +1 -0
- package/dist/rules2/src/table/getTableProps.js.map +1 -1
- package/package.json +1 -1
- package/src/rules/src/preparators/formatValue.js +3 -2
- package/src/rules2/src/parseAttributes.js +1 -1
- package/src/rules2/src/table/getLayoutData2.js +5 -4
- package/src/rules2/src/table/getTableProps.js +1 -0
|
@@ -62,20 +62,21 @@ const formatValue = (observation, formatAttributesIndexes, attributes) => {
|
|
|
62
62
|
R.always(isValidNumber(prefscale)),
|
|
63
63
|
value => numeral(value).multiply(Math.pow(10, -1 * Number(prefscale))).value(),
|
|
64
64
|
);
|
|
65
|
+
const _decimals = !decimals ? 2 : decimals;
|
|
65
66
|
|
|
66
67
|
const formatSeparator = value => numeral(value).format(`0,0.[0000000]`);
|
|
67
68
|
const formatDecimals = R.ifElse(
|
|
68
69
|
R.always(isValidNumber(decimals)),
|
|
69
70
|
v => {
|
|
70
71
|
const num = Number(v);
|
|
71
|
-
const isTiny = Math.abs(num) < Math.pow(10, -(
|
|
72
|
+
const isTiny = Math.abs(num) < Math.pow(10, -(_decimals) + 1);
|
|
72
73
|
const displayNum = isTiny ? 0 : num;
|
|
73
74
|
const decimalFormat =
|
|
74
75
|
R.ifElse(
|
|
75
76
|
R.equals(0),
|
|
76
77
|
R.always('0,0'),
|
|
77
78
|
d => `0,0.${R.join('', R.times(R.always('0'), d))}`
|
|
78
|
-
)(decimals
|
|
79
|
+
)(decimals);
|
|
79
80
|
|
|
80
81
|
return numeral(displayNum).format(decimalFormat);
|
|
81
82
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatValue.js","sources":["../../../../src/rules/src/preparators/formatValue.js"],"sourcesContent":["import * as R from 'ramda';\nimport numeral from 'numeral';\n\nconst isValidNumber = R.both(R.is(Number), R.complement(R.equals(NaN)));\nconst parseValidNumber = R.pipe(\n v => R.isNil(v) ? null : Number(v),\n v => isNaN(v) ? null : v\n);\n\nconst getFormatAttributesValues = (observation, formatAttributesIndexes, attributes) => R.mapObjIndexed(\n attributeIndex => {\n let valueIndex;\n const relationship = R.pipe(R.nth(attributeIndex), R.propOr({}, 'relationship'))(attributes);\n //if (!R.isNil(attributeIndex) && attributeIndex >= R.length(R.propOr([], 'attrValuesIndexes', observation))) {\n if (R.has('none', relationship) || R.has('dataflow', relationship)) {\n valueIndex = 0;\n }\n else {\n valueIndex = R.pipe(\n R.propOr([], 'attrValuesIndexes'),\n R.nth(attributeIndex),\n parseValidNumber\n )(observation);\n }\n\n return R.pipe(\n R.path([attributeIndex, 'values', valueIndex, 'id']),\n parseValidNumber\n )(attributes);\n },\n formatAttributesIndexes\n);\n\nexport const formatValue = (observation, formatAttributesIndexes, attributes) => {\n const value = R.prop('value', observation);\n if (R.is(Boolean, value)) {\n return value;\n }\n if (R.is(String, value)) {\n const monthMatch = value.match(/^\\-\\-([\\d]{2})$/);\n if (R.is(Array, monthMatch)) {\n return R.nth(1, monthMatch);\n }\n const monthDayMatch = value.match(/^\\-\\-([\\d]{2}\\-[\\d]{2})$/);\n if (R.is(Array, monthDayMatch)) {\n return R.nth(1, monthDayMatch);\n }\n const dayMatch = value.match(/^\\-\\-\\-([\\d]{2})$/);\n if (R.is(Array, dayMatch)) {\n return R.nth(1, dayMatch);\n }\n return value;\n }\n\n const { prefscale, decimals } = getFormatAttributesValues(\n observation,\n formatAttributesIndexes,\n attributes\n );\n\n const formatScale = R.when(\n R.always(isValidNumber(prefscale)),\n value => numeral(value).multiply(Math.pow(10, -1 * Number(prefscale))).value(),\n );\n\n const formatSeparator = value => numeral(value).format(`0,0.[0000000]`);\n const formatDecimals = R.ifElse(\n R.always(isValidNumber(decimals)),\n v => {\n const num = Number(v);\n const isTiny = Math.abs(num) < Math.pow(10, -(
|
|
1
|
+
{"version":3,"file":"formatValue.js","sources":["../../../../src/rules/src/preparators/formatValue.js"],"sourcesContent":["import * as R from 'ramda';\nimport numeral from 'numeral';\n\nconst isValidNumber = R.both(R.is(Number), R.complement(R.equals(NaN)));\nconst parseValidNumber = R.pipe(\n v => R.isNil(v) ? null : Number(v),\n v => isNaN(v) ? null : v\n);\n\nconst getFormatAttributesValues = (observation, formatAttributesIndexes, attributes) => R.mapObjIndexed(\n attributeIndex => {\n let valueIndex;\n const relationship = R.pipe(R.nth(attributeIndex), R.propOr({}, 'relationship'))(attributes);\n //if (!R.isNil(attributeIndex) && attributeIndex >= R.length(R.propOr([], 'attrValuesIndexes', observation))) {\n if (R.has('none', relationship) || R.has('dataflow', relationship)) {\n valueIndex = 0;\n }\n else {\n valueIndex = R.pipe(\n R.propOr([], 'attrValuesIndexes'),\n R.nth(attributeIndex),\n parseValidNumber\n )(observation);\n }\n\n return R.pipe(\n R.path([attributeIndex, 'values', valueIndex, 'id']),\n parseValidNumber\n )(attributes);\n },\n formatAttributesIndexes\n);\n\nexport const formatValue = (observation, formatAttributesIndexes, attributes) => {\n const value = R.prop('value', observation);\n if (R.is(Boolean, value)) {\n return value;\n }\n if (R.is(String, value)) {\n const monthMatch = value.match(/^\\-\\-([\\d]{2})$/);\n if (R.is(Array, monthMatch)) {\n return R.nth(1, monthMatch);\n }\n const monthDayMatch = value.match(/^\\-\\-([\\d]{2}\\-[\\d]{2})$/);\n if (R.is(Array, monthDayMatch)) {\n return R.nth(1, monthDayMatch);\n }\n const dayMatch = value.match(/^\\-\\-\\-([\\d]{2})$/);\n if (R.is(Array, dayMatch)) {\n return R.nth(1, dayMatch);\n }\n return value;\n }\n\n const { prefscale, decimals } = getFormatAttributesValues(\n observation,\n formatAttributesIndexes,\n attributes\n );\n\n const formatScale = R.when(\n R.always(isValidNumber(prefscale)),\n value => numeral(value).multiply(Math.pow(10, -1 * Number(prefscale))).value(),\n );\n const _decimals = !decimals ? 2 : decimals;\n\n const formatSeparator = value => numeral(value).format(`0,0.[0000000]`);\n const formatDecimals = R.ifElse(\n R.always(isValidNumber(decimals)),\n v => {\n const num = Number(v);\n const isTiny = Math.abs(num) < Math.pow(10, -(_decimals) + 1);\n const displayNum = isTiny ? 0 : num;\n const decimalFormat =\n R.ifElse(\n R.equals(0),\n R.always('0,0'),\n d => `0,0.${R.join('', R.times(R.always('0'), d))}`\n )(decimals);\n\n return numeral(displayNum).format(decimalFormat);\n },\n formatSeparator\n );\n return R.ifElse(\n isValidNumber,\n R.pipe(\n formatScale,\n formatDecimals,\n res => res === 'NaN' ? String(value) : res\n ),\n R.always('..')\n )(observation.value);\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -30,7 +30,7 @@ const parseAttributes = (attributes, dimensions, customAttributes) => {
|
|
|
30
30
|
R.pathOr([], ['relationship', 'dimensions']),
|
|
31
31
|
R.filter(id => {
|
|
32
32
|
const dimension = R.prop(id, indexedDimensions);
|
|
33
|
-
return !dimension.header && R.length(dimension.values || []) > 1;
|
|
33
|
+
return !dimension.header && R.length(dimension.values || []) > 1 && !dimension.rejected;
|
|
34
34
|
}),
|
|
35
35
|
)(attr);
|
|
36
36
|
if (R.length(seriesDimensions) > 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseAttributes.js","sources":["../../../src/rules2/src/parseAttributes.js"],"sourcesContent":["import * as R from 'ramda';\nimport { REPORTING_YEAR_START_DAY, REPYEARSTART } from './constants';\n\nexport const parseAttributes = (attributes, dimensions, customAttributes) => {\n const indexedDimensions = R.indexBy(R.prop('id'), dimensions);\n return R.addIndex(R.map)((attr, index) => {\n let res = R.assoc('index', index, attr);\n const displayableValuesCount = R.pipe(\n R.filter(R.propOr(true, 'display')),\n R.length,\n )(attr);\n if (R.isEmpty(attr.values || []) || !R.propOr(true, 'display', attr)\n || displayableValuesCount < 1 || attr.id === REPORTING_YEAR_START_DAY\n || attr.id === REPYEARSTART) {\n return R.assoc('display', false, res);\n }\n if (R.propEq('id', customAttributes.prefscale, attr)) {\n return R.assoc('prefscale', true, res);\n }\n if (R.propEq('id', customAttributes.decimals, attr)) {\n return R.assoc('decimals', true, res);\n }\n if (R.hasPath(['relationship', 'none'], attr) || R.hasPath(['relationship', 'dataflow'], attr)) {\n return { ...res, header: true, relationship: [] };\n }\n if (R.hasPath(['relationship', 'primaryMeasure'], attr) || R.hasPath(['relationship', 'observation'], attr)) {\n return { ...res, series: true, relationship: [] };\n }\n const seriesDimensions = R.pipe(\n R.pathOr([], ['relationship', 'dimensions']),\n R.filter(id => {\n const dimension = R.prop(id, indexedDimensions);\n return !dimension.header && R.length(dimension.values || []) > 1;\n }),\n )(attr);\n if (R.length(seriesDimensions) > 0) {\n return { ...res, series: true, relationship: seriesDimensions };\n }\n return { ...res, header: true, relationship: R.prop('dimensions', attr.relationship || []) };\n }, attributes);\n};\n"],"names":[],"mappings":";;;AAGY,MAAC,eAAe,GAAG,CAAC,UAAU,EAAE,UAAU,EAAE,gBAAgB,KAAK;AAC7E,EAAE,MAAM,iBAAiB,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC;AAC/D,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,KAAK;AAC5C,IAAI,IAAI,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC;AAC3C,IAAI,MAAM,sBAAsB,GAAG,CAAC,CAAC,IAAI;AACzC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AACzC,MAAM,CAAC,CAAC,MAAM;AACd,KAAK,CAAC,IAAI,CAAC;AACX,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI;AACvE,SAAS,sBAAsB,GAAG,CAAC,IAAI,IAAI,CAAC,EAAE,KAAK;AACnD,SAAS,IAAI,CAAC,EAAE,KAAK,YAAY,EAAE;AACnC,MAAM,OAAO,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,CAAC;AAC3C,IAAI;AACJ,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE;AAC1D,MAAM,OAAO,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,GAAG,CAAC;AAC5C,IAAI;AACJ,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE;AACzD,MAAM,OAAO,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,CAAC;AAC3C,IAAI;AACJ,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,UAAU,CAAC,EAAE,IAAI,CAAC,EAAE;AACpG,MAAM,OAAO,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE;AACvD,IAAI;AACJ,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,gBAAgB,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE,aAAa,CAAC,EAAE,IAAI,CAAC,EAAE;AACjH,MAAM,OAAO,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE;AACvD,IAAI;AACJ,IAAI,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI;AACnC,MAAM,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;AAClD,MAAM,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI;AACrB,QAAQ,MAAM,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,iBAAiB,CAAC;AACvD,QAAQ,OAAO,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"parseAttributes.js","sources":["../../../src/rules2/src/parseAttributes.js"],"sourcesContent":["import * as R from 'ramda';\nimport { REPORTING_YEAR_START_DAY, REPYEARSTART } from './constants';\n\nexport const parseAttributes = (attributes, dimensions, customAttributes) => {\n const indexedDimensions = R.indexBy(R.prop('id'), dimensions);\n return R.addIndex(R.map)((attr, index) => {\n let res = R.assoc('index', index, attr);\n const displayableValuesCount = R.pipe(\n R.filter(R.propOr(true, 'display')),\n R.length,\n )(attr);\n if (R.isEmpty(attr.values || []) || !R.propOr(true, 'display', attr)\n || displayableValuesCount < 1 || attr.id === REPORTING_YEAR_START_DAY\n || attr.id === REPYEARSTART) {\n return R.assoc('display', false, res);\n }\n if (R.propEq('id', customAttributes.prefscale, attr)) {\n return R.assoc('prefscale', true, res);\n }\n if (R.propEq('id', customAttributes.decimals, attr)) {\n return R.assoc('decimals', true, res);\n }\n if (R.hasPath(['relationship', 'none'], attr) || R.hasPath(['relationship', 'dataflow'], attr)) {\n return { ...res, header: true, relationship: [] };\n }\n if (R.hasPath(['relationship', 'primaryMeasure'], attr) || R.hasPath(['relationship', 'observation'], attr)) {\n return { ...res, series: true, relationship: [] };\n }\n const seriesDimensions = R.pipe(\n R.pathOr([], ['relationship', 'dimensions']),\n R.filter(id => {\n const dimension = R.prop(id, indexedDimensions);\n return !dimension.header && R.length(dimension.values || []) > 1 && !dimension.rejected;\n }),\n )(attr);\n if (R.length(seriesDimensions) > 0) {\n return { ...res, series: true, relationship: seriesDimensions };\n }\n return { ...res, header: true, relationship: R.prop('dimensions', attr.relationship || []) };\n }, attributes);\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -58,15 +58,16 @@ const getCoordinates = (indexes, topCoordinates, definition) => R.addIndex(R.red
|
|
|
58
58
|
|
|
59
59
|
const getAttributesSeries = (validator, attributesSeries) => R.reduce((acc, attrs) => {
|
|
60
60
|
const attr = R.head(R.values(attrs)) || {};
|
|
61
|
-
if (R.length(attr.relationship || []) === 1 && !attr.combined) {
|
|
62
|
-
return acc;
|
|
63
|
-
}
|
|
64
61
|
const coordinates = R.propOr({}, 'coordinates', attr);
|
|
65
62
|
const isValid = validator(coordinates);
|
|
66
63
|
if (!isValid && !R.prop('isObs', attr)) {
|
|
67
64
|
return acc;
|
|
68
65
|
}
|
|
69
|
-
|
|
66
|
+
const filtered = R.reject(
|
|
67
|
+
a => !R.propOr(false, 'combined', a) && R.length(a.relationship || []) === 1,
|
|
68
|
+
attrs
|
|
69
|
+
);
|
|
70
|
+
return ({ ...acc, ...filtered });
|
|
70
71
|
}, {}, R.values(attributesSeries));
|
|
71
72
|
|
|
72
73
|
const combineConcepts = (combDimValues, definition, attrValues) => R.over(
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getLayoutData2.js","sources":["../../../../src/rules2/src/table/getLayoutData2.js"],"sourcesContent":["import * as R from 'ramda';\nimport { getFlagsAndNotes } from './getFlagsAndNotes';\nimport { getLayoutCoordinatesValidator } from '../utils';\n\nconst getValueData = (index, dimension, parentsIndexes, missingParents = []) => ({\n\tdimension: R.pick(['id', 'name', '__index'], dimension),\n\tvalue: {\n\t\t...R.pipe(\n\t\t\tR.pathOr({}, ['values', index]),\n\t\t\tR.pick(['id', 'name', 'isNonCoded', 'flags', 'hasAdvancedAttributes', 'display'])\n\t\t)(dimension),\n\t\tparents: parentsIndexes,\n\t\tmissingParents\n\t}\n});\n\nconst addCoordinatesToKey = (key, dimensionId, valueId) =>\n\t`${key}${R.isEmpty(key) ? '' : ':'}${dimensionId}=${valueId}`;\n\nconst simpleValueDataSetter = (valueData, datas = []) => R.append(valueData, datas);\n\nconst combinedValueDataSetter = (valueData, datas = []) =>\n\tR.over(R.lensIndex(-1), d => ({ ...d, values: R.append(R.prop('value', valueData), d.values) }), datas);\n\nconst addValueToSerieData = (dataSetter) => (index, parentsIndexes, dimension, serieData, missingParents) => {\n\tconst valueData = getValueData(index, dimension, parentsIndexes, missingParents);\n\tconst valueId = R.path(['value', 'id'], valueData);\n\treturn ({\n\t\t...serieData,\n\t\tdata: dataSetter(valueData, R.prop('data', serieData)),\n\t\tkey: addCoordinatesToKey(R.prop('key', serieData), R.prop('id', dimension), valueId)\n\t});\n};\n\nconst addSimpleValueToSerieData = addValueToSerieData(simpleValueDataSetter);\n\nconst addCombinedValueToSerieData = addValueToSerieData(combinedValueDataSetter);\n\nconst getHasAdvancedAttributes = (attrValues, customAttributes) => R.pipe(\n R.omit(R.concat(customAttributes.flags || [], customAttributes.notes || [])),\n R.isEmpty,\n R.not\n )(attrValues);\n\nconst getCoordinates = (indexes, topCoordinates, definition) => R.addIndex(R.reduce)((acc, entry, index) => {\n\tif (R.has('dimensions', entry)) {\n\t\treturn R.addIndex(R.reduce)((_acc, dim, _index) => {\n\t\t\tconst valInd = R.path([index, _index], indexes);\n\t\t\treturn R.assoc(dim.id, R.path(['values', Math.abs(valInd), 'id'], dim), _acc)\n\t\t}, acc, entry.dimensions);\n\t}\n\tconst valInd = R.nth(index, indexes);\n\tif (R.isNil(valInd)) {\n\t\treturn acc;\n\t}\n\treturn R.assoc(entry.id, R.path(['values', Math.abs(valInd), 'id'], entry), acc);\n}, topCoordinates, definition);\n\nconst getAttributesSeries = (validator, attributesSeries) => R.reduce((acc, attrs) => {\n\tconst attr = R.head(R.values(attrs)) || {};\n\tif (R.length(attr.relationship || []) === 1 && !attr.combined) {\n\t\treturn acc;\n\t}\n\tconst coordinates = R.propOr({}, 'coordinates', attr);\n\tconst isValid = validator(coordinates);\n\tif (!isValid && !R.prop('isObs', attr)) {\n\t\treturn acc;\n\t}\n\treturn ({ ...acc, ...attrs });\n}, {}, R.values(attributesSeries));\n\nconst combineConcepts = (combDimValues, definition, attrValues) => R.over(\n\tR.lensProp('data'),\n\tR.over(R.lensIndex(-1), data => ({\n\t\t...data,\n\t\tvalues: R.reduce((acc, conceptId) => {\n\t\t\tif (R.has(conceptId, combDimValues)) {\n\t\t\t\treturn R.append(R.prop(conceptId, combDimValues), acc);\n\t\t\t}\n\t\t\tif (R.has(conceptId, definition.fixedDimValues || {})) {\n\t\t\t\treturn R.append(R.prop(conceptId, definition.fixedDimValues), acc);\n\t\t\t}\n\t\t\tif (R.has(conceptId, attrValues)) {\n\t\t\t\tconst value = R.path([conceptId, 'value'], attrValues);\n\t\t\t\treturn R.append(value, acc);\n\t\t\t}\n\t\t\treturn acc;\n\t\t}, [], definition.concepts)\n\t})));\n\nconst getSerieFlagsAndSideProps = (coordinates, validator, attributesValues, customAttributes, metadataCoordinates, data) => {\n\tconst layoutAttrValues = R.reject(attr => R.prop('isObs', attr) && !validator(attr.coordinates), attributesValues);\n const flags = getFlagsAndNotes(layoutAttrValues, customAttributes);\n const hasMetadata = !R.isNil(R.find(validator, metadataCoordinates));\n\tconst hasDataAdvancedAttributes = R.any(\n\t\td => R.has('value', d) ? R.prop('hasAdvancedAttributes', d.value) : R.any(R.prop('hasAdvancedAttributes'), d.values)\n\t, data);\n const hasAdvancedAttributes = hasDataAdvancedAttributes || getHasAdvancedAttributes(layoutAttrValues, customAttributes);\n const sideProps = hasMetadata || hasAdvancedAttributes\n ? { hasMetadata, hasAdvancedAttributes, coordinates } : null;\n\treturn { flags, sideProps };\n};\n\nconst getSerieDimensionsData = (serie, definition, attributesValues, missingParentsGetter) => R.addIndex(R.reduce)(\n\t(onGoingSerie, entry, index) => {\n\t\tif (R.has('dimensions', entry)) {\n\t\t\tconst combValuesIndexes = R.pathOr([], ['indexes', index], serie);\n\t\t\tconst combParentsIndexes = R.pathOr([], ['parentsIndexes', index], serie);\n\t\t\tconst combMissingParentsIndexes = R.pathOr([], ['missingIndexes', index], serie);\n\t\t\tlet combDimValues = {};\n\t\t\tconst res = R.addIndex(R.reduce)((combSerie, dimension, dimIndex) => {\n\t\t\t\tconst valueIndex = Math.abs(R.nth(dimIndex, combValuesIndexes));\n\t\t\t\tconst _parentsIndexes = R.nth(dimIndex, combParentsIndexes) || [];\n\t\t\t\tconst missingParentsIndexes = R.nth(dimIndex, combMissingParentsIndexes) || [];\n\t\t\t\tconst { parentsIndexes, missingParents } = missingParentsGetter(combinedValueDataSetter)(missingParentsIndexes, _parentsIndexes, dimension, combSerie);\n\t\t\t\tconst next = addCombinedValueToSerieData(valueIndex, parentsIndexes, dimension, combSerie, missingParents);\n\t\t\t\tconst value = R.pipe(R.prop('data'), R.last, R.prop('values'), R.last)(next);\n\t\t\t\tcombDimValues = R.assoc(dimension.id, value, combDimValues);\n\t\t\t\treturn next;\n\t\t\t},\n\t\t\tR.over(\n\t\t\t\tR.lensProp('data'),\n\t\t\t\tR.append({ dimension: R.pick(['id', 'name'], entry), values: [] })\n\t\t\t)(onGoingSerie),\n\t\t\tR.propOr([], 'dimensions', entry));\n\n\t\t\tconst combined = combineConcepts(combDimValues, entry, onGoingSerie.attributes)(res);\n\t\t\treturn R.over(R.lensProp('attributes'), R.omit(entry.concepts), combined);\n\t\t}\n\n\t\tconst valueIndex = Math.abs(R.path(['indexes', index], serie));\n\t\tconst _parentsIndexes = R.pathOr([], ['parentsIndexes', index], serie);\n\t\tconst missingParentsIndexes = R.pathOr([], ['missingIndexes', index], serie);\n\t\tconst { parentsIndexes, missingParents } = missingParentsGetter(simpleValueDataSetter)(missingParentsIndexes, _parentsIndexes, entry, onGoingSerie);\n\t\treturn addSimpleValueToSerieData(valueIndex, parentsIndexes, entry, onGoingSerie, missingParents);\n\t},\n\t{ data: [], key: '', attributes: attributesValues },\n\tdefinition,\n);\n\nexport const getSerieDataWithMissingLines = (serie, definition, topCoordinates, attributesSeries, customAttributes, metadataCoordinates, rejectedDims = []) => {\n\tconst lines = [];\n\tconst coordinates = getCoordinates(serie.indexes, topCoordinates, definition);\n\tconst serieCoordinates = getCoordinates(serie.rejected || [], coordinates, rejectedDims);\n\tconst coordinatesValidator = getLayoutCoordinatesValidator(serieCoordinates, topCoordinates);\n\tconst attributesValues = getAttributesSeries(coordinatesValidator, attributesSeries);\n\n\tconst getMissingParents = dataSetter => (missingParentsIndexes, _parentsIndexes, dim, serieData) => R.reduce(\n\t\t(acc, index) => {\n\t\t\t\tconst missingParentData = addValueToSerieData(dataSetter)(index, acc.parentsIndexes, dim, serieData);\n\t\t\t\tlines.push({ ...R.dissoc('attributes', missingParentData), sideProps: null, flags: [], isEmpty: true });\n\t\t\treturn R.over(R.lensProp('parentsIndexes'), R.append(index), acc);\n\t\t},\n\t{ parentsIndexes: _parentsIndexes, missingParents: [] }, missingParentsIndexes);\n\tconst { attributes, ...serieData } = getSerieDimensionsData(serie, definition, attributesValues, getMissingParents);\n\tconst topCoordinatesValidator = getLayoutCoordinatesValidator(topCoordinates);\n\tconst flagsValidator = coordinates => coordinatesValidator(coordinates) && !topCoordinatesValidator(coordinates);\n\tconst { flags, sideProps } = getSerieFlagsAndSideProps(serieCoordinates, flagsValidator, attributes, customAttributes, metadataCoordinates, serieData.data);\n\treturn R.append({ ...serieData, flags, sideProps, coordinates: serieCoordinates }, lines);\n};\n\nexport const getSerieDataWithoutMissingLines = (serie, definition, topCoordinates, attributesSeries, customAttributes, metadataCoordinates, rejectedDims = []) => {\n\tconst coordinates = getCoordinates(serie.indexes, topCoordinates, definition);\n\tconst serieCoordinates = getCoordinates(serie.rejected || [], coordinates, rejectedDims);\n\tconst coordinatesValidator = getLayoutCoordinatesValidator(serieCoordinates, topCoordinates);\n\tconst attributesValues = getAttributesSeries(coordinatesValidator, attributesSeries);\n\n\tconst getMissingParents = () => (missingParentsIndexes, _parentsIndexes, dim) => R.reduce(\n\t\t(acc, index) => ({\n\t\t\tparentsIndexes: R.append(index, acc.parentsIndexes),\n\t\t\tmissingParents: R.append(R.prop('value', getValueData(index, dim, acc.parentsIndexes)), acc.missingParents)\n\t\t}),\n\t{ parentsIndexes: _parentsIndexes, missingParents: [] }, missingParentsIndexes);\n\n\tconst { attributes, ...serieData } = getSerieDimensionsData(serie, definition, attributesValues, getMissingParents);\n\tconst { flags, sideProps } = getSerieFlagsAndSideProps(serieCoordinates, coordinatesValidator, attributes, customAttributes, metadataCoordinates, serieData.data);\n\treturn ({ ...serieData, flags, sideProps, coordinates: serieCoordinates });\n};\n\nexport const getLayoutData = (layoutIndexes, layout, { metadataCoordinates, attributesSeries, customAttributes, topCoordinates={}, rejectedDimensions=[] }) => {\n const { header, sections, ...rest } = layoutIndexes;\n const headerData = R.reduce((acc, serie) => {\n \tconst datas = getSerieDataWithMissingLines(serie, layout.header, topCoordinates, attributesSeries, customAttributes, metadataCoordinates, rejectedDimensions);\n \treturn R.concat(acc, datas);\n }, [], header);\n\n const sectionsData = R.map(\n \t([sectionSerie, rowsSeries]) => {\n \t\tconst sectionData = getSerieDataWithoutMissingLines(sectionSerie, layout.sections, topCoordinates, attributesSeries, customAttributes, metadataCoordinates, rejectedDimensions);\n \t\treturn [\n \t\t\tsectionData,\n \t\t\t R.reduce((acc, serie) => {\n \t\t\t\tconst datas = getSerieDataWithMissingLines(serie, layout.rows, R.propOr(topCoordinates, 'coordinates', sectionData), attributesSeries, customAttributes, metadataCoordinates, rejectedDimensions);\n \t\t\t\treturn R.concat(acc, datas);\n \t\t\t}, [], rowsSeries)\n \t\t];\n \t},\n \tsections\n );\n\n return ({ headerData, sectionsData, ...rest });\n};\n"],"names":[],"mappings":";;;;AAIA,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,GAAG,EAAE,MAAM;AACjF,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,SAAS,CAAC;AACxD,CAAC,KAAK,EAAE;AACR,EAAE,GAAG,CAAC,CAAC,IAAI;AACX,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AAClC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,uBAAuB,EAAE,SAAS,CAAC;AACnF,GAAG,CAAC,SAAS,CAAC;AACd,EAAE,OAAO,EAAE,cAAc;AACzB,EAAE;AACF;AACA,CAAC,CAAC;;AAEF,MAAM,mBAAmB,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO;AACtD,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;;AAE9D,MAAM,qBAAqB,GAAG,CAAC,SAAS,EAAE,KAAK,GAAG,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC;;AAEnF,MAAM,uBAAuB,GAAG,CAAC,SAAS,EAAE,KAAK,GAAG,EAAE;AACtD,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC;;AAExG,MAAM,mBAAmB,GAAG,CAAC,UAAU,KAAK,CAAC,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,KAAK;AAC7G,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,CAAC;AACjF,CAAC,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,SAAS,CAAC;AACnD,CAAC,QAAQ;AACT,EAAE,GAAG,SAAS;AACd,EAAE,IAAI,EAAE,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AACxD,EAAE,GAAG,EAAE,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,OAAO;AACrF,EAAE;AACF,CAAC;;AAED,MAAM,yBAAyB,GAAG,mBAAmB,CAAC,qBAAqB,CAAC;;AAE5E,MAAM,2BAA2B,GAAG,mBAAmB,CAAC,uBAAuB,CAAC;;AAEhF,MAAM,wBAAwB,GAAG,CAAC,UAAU,EAAE,gBAAgB,KAAK,CAAC,CAAC,IAAI;AACzE,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE,EAAE,gBAAgB,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;AAChF,IAAI,CAAC,CAAC,OAAO;AACb,IAAI,CAAC,CAAC;AACN,GAAG,CAAC,UAAU,CAAC;;AAEf,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,cAAc,EAAE,UAAU,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,KAAK;AAC5G,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,KAAK,CAAC,EAAE;AACjC,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,KAAK;AACrD,GAAG,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC;AAClD,GAAG,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI;AAC/E,EAAE,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,UAAU,CAAC;AAC3B,CAAC;AACD,CAAC,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC;AACrC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;AACtB,EAAE,OAAO,GAAG;AACZ,CAAC;AACD,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,CAAC;AACjF,CAAC,EAAE,cAAc,EAAE,UAAU,CAAC;;AAE9B,MAAM,mBAAmB,GAAG,CAAC,SAAS,EAAE,gBAAgB,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,KAAK;AACtF,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE;AAC3C,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;AAChE,EAAE,OAAO,GAAG;AACZ,CAAC;AACD,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,CAAC;AACtD,CAAC,MAAM,OAAO,GAAG,SAAS,CAAC,WAAW,CAAC;AACvC,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE;AACzC,EAAE,OAAO,GAAG;AACZ,CAAC;AACD,CAAC,QAAQ,EAAE,GAAG,GAAG,EAAE,GAAG,KAAK,EAAE;AAC7B,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;;AAElC,MAAM,eAAe,GAAG,CAAC,aAAa,EAAE,UAAU,EAAE,UAAU,KAAK,CAAC,CAAC,IAAI;AACzE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;AACnB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,IAAI,KAAK;AAClC,EAAE,GAAG,IAAI;AACT,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,SAAS,KAAK;AACvC,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,aAAa,CAAC,EAAE;AACxC,IAAI,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,EAAE,GAAG,CAAC;AAC1D,GAAG;AACH,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC,cAAc,IAAI,EAAE,CAAC,EAAE;AAC1D,IAAI,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,cAAc,CAAC,EAAE,GAAG,CAAC;AACtE,GAAG;AACH,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE;AACrC,IAAI,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC;AAC1D,IAAI,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC;AAC/B,GAAG;AACH,GAAG,OAAO,GAAG;AACb,EAAE,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,QAAQ;AAC5B,EAAE,CAAC,CAAC,CAAC;;AAEL,MAAM,yBAAyB,GAAG,CAAC,WAAW,EAAE,SAAS,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,IAAI,KAAK;AAC7H,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,gBAAgB,CAAC;AACnH,EAAE,MAAM,KAAK,GAAG,gBAAgB,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;AACpE,EAAE,MAAM,WAAW,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;AACtE,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,GAAG;AACxC,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC,MAAM;AACrH,GAAG,IAAI,CAAC;AACR,EAAE,MAAM,qBAAqB,GAAG,yBAAyB,IAAI,wBAAwB,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;AACzH,EAAE,MAAM,SAAS,GAAG,WAAW,IAAI;AACnC,MAAM,EAAE,WAAW,EAAE,qBAAqB,EAAE,WAAW,EAAE,GAAG,IAAI;AAChE,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE;AAC5B,CAAC;;AAED,MAAM,sBAAsB,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,oBAAoB,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;AACnH,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,KAAK,KAAK;AACjC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,KAAK,CAAC,EAAE;AAClC,GAAG,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC;AACpE,GAAG,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,gBAAgB,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC;AAC5E,GAAG,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,gBAAgB,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC;AACnF,GAAG,IAAI,aAAa,GAAG,EAAE;AACzB,GAAG,MAAM,GAAG,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,KAAK;AACxE,IAAI,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;AACnE,IAAI,MAAM,eAAe,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,kBAAkB,CAAC,IAAI,EAAE;AACrE,IAAI,MAAM,qBAAqB,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,yBAAyB,CAAC,IAAI,EAAE;AAClF,IAAI,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,GAAG,oBAAoB,CAAC,uBAAuB,CAAC,CAAC,qBAAqB,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,CAAC;AAC1J,IAAI,MAAM,IAAI,GAAG,2BAA2B,CAAC,UAAU,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,CAAC;AAC9G,IAAI,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;AAChF,IAAI,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,aAAa,CAAC;AAC/D,IAAI,OAAO,IAAI;AACf,GAAG,CAAC;AACJ,GAAG,CAAC,CAAC,IAAI;AACT,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;AACtB,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE;AACrE,IAAI,CAAC,YAAY,CAAC;AAClB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;;AAErC,GAAG,MAAM,QAAQ,GAAG,eAAe,CAAC,aAAa,EAAE,KAAK,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC;AACvF,GAAG,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC;AAC7E,EAAE;;AAEF,EAAE,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;AAChE,EAAE,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,gBAAgB,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC;AACxE,EAAE,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,gBAAgB,EAAE,KAAK,CAAC,EAAE,KAAK,CAAC;AAC9E,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,IAAI,oBAAoB,CAAC,qBAAqB,CAAC,CAAC,qBAAqB,EAAE,eAAe,EAAE,KAAK,EAAE,YAAY,CAAC;AACtJ,EAAE,OAAO,yBAAyB,CAAC,UAAU,EAAE,cAAc,EAAE,KAAK,EAAE,YAAY,EAAE,cAAc,CAAC;AACnG,CAAC,CAAC;AACF,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,gBAAgB,EAAE;AACpD,CAAC,UAAU;AACX,CAAC;;AAEW,MAAC,4BAA4B,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,YAAY,GAAG,EAAE,KAAK;AAC/J,CAAC,MAAM,KAAK,GAAG,EAAE;AACjB,CAAC,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,cAAc,EAAE,UAAU,CAAC;AAC9E,CAAC,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,EAAE,WAAW,EAAE,YAAY,CAAC;AACzF,CAAC,MAAM,oBAAoB,GAAG,6BAA6B,CAAC,gBAAgB,EAAE,cAAc,CAAC;AAC7F,CAAC,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,oBAAoB,EAAE,gBAAgB,CAAC;;AAErF,CAAC,MAAM,iBAAiB,GAAG,UAAU,IAAI,CAAC,qBAAqB,EAAE,eAAe,EAAE,GAAG,EAAE,SAAS,KAAK,CAAC,CAAC,MAAM;AAC7G,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK;AAClB,IAAI,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,cAAc,EAAE,GAAG,EAAE,SAAS,CAAC;AACxG,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,YAAY,EAAE,iBAAiB,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC3G,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC;AACpE,EAAE,CAAC;AACH,CAAC,EAAE,cAAc,EAAE,eAAe,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,qBAAqB,CAAC;AAChF,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,GAAG,sBAAsB,CAAC,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,iBAAiB,CAAC;AACpH,CAAC,MAAM,uBAAuB,GAAG,6BAA6B,CAAC,cAAc,CAAC;AAC9E,CAAC,MAAM,cAAc,GAAG,WAAW,IAAI,oBAAoB,CAAC,WAAW,CAAC,IAAI,CAAC,uBAAuB,CAAC,WAAW,CAAC;AACjH,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,yBAAyB,CAAC,gBAAgB,EAAE,cAAc,EAAE,UAAU,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,SAAS,CAAC,IAAI,CAAC;AAC5J,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE,EAAE,KAAK,CAAC;AAC1F;;AAEY,MAAC,+BAA+B,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,YAAY,GAAG,EAAE,KAAK;AAClK,CAAC,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,cAAc,EAAE,UAAU,CAAC;AAC9E,CAAC,MAAM,gBAAgB,GAAG,cAAc,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,EAAE,WAAW,EAAE,YAAY,CAAC;AACzF,CAAC,MAAM,oBAAoB,GAAG,6BAA6B,CAAC,gBAAgB,EAAE,cAAc,CAAC;AAC7F,CAAC,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,oBAAoB,EAAE,gBAAgB,CAAC;;AAErF,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,qBAAqB,EAAE,eAAe,EAAE,GAAG,KAAK,CAAC,CAAC,MAAM;AAC1F,EAAE,CAAC,GAAG,EAAE,KAAK,MAAM;AACnB,GAAG,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,cAAc,CAAC;AACtD,GAAG,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC,EAAE,GAAG,CAAC,cAAc;AAC7G,GAAG,CAAC;AACJ,CAAC,EAAE,cAAc,EAAE,eAAe,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,qBAAqB,CAAC;;AAEhF,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,EAAE,GAAG,sBAAsB,CAAC,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,iBAAiB,CAAC;AACpH,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,yBAAyB,CAAC,gBAAgB,EAAE,oBAAoB,EAAE,UAAU,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,SAAS,CAAC,IAAI,CAAC;AAClK,CAAC,QAAQ,EAAE,GAAG,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE;AAC1E;;AAEY,MAAC,aAAa,GAAG,CAAC,aAAa,EAAE,MAAM,EAAE,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,cAAc,CAAC,EAAE,EAAE,kBAAkB,CAAC,EAAE,EAAE,KAAK;AAC/J,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,aAAa;AACrD,EAAE,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,KAAK;AAC9C,GAAG,MAAM,KAAK,GAAG,4BAA4B,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,kBAAkB,CAAC;AAChK,GAAG,OAAO,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC;AAC9B,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC;;AAEhB,EAAE,MAAM,YAAY,GAAG,CAAC,CAAC,GAAG;AAC5B,GAAG,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC,KAAK;AACnC,IAAI,MAAM,WAAW,GAAG,+BAA+B,CAAC,YAAY,EAAE,MAAM,CAAC,QAAQ,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,kBAAkB,CAAC;AACnL,IAAI,OAAO;AACX,KAAK,WAAW;AAChB,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,KAAK;AAC/B,MAAM,MAAM,KAAK,GAAG,4BAA4B,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,cAAc,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,kBAAkB,CAAC;AACvM,MAAM,OAAO,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC;AACjC,KAAK,CAAC,EAAE,EAAE,EAAE,UAAU;AACtB,KAAK;AACL,GAAG,CAAC;AACJ,GAAG;AACH,GAAG;;AAEH,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,IAAI,EAAE;AAC/C;;;;"}
|
|
1
|
+
{"version":3,"file":"getLayoutData2.js","sources":["../../../../src/rules2/src/table/getLayoutData2.js"],"sourcesContent":["import * as R from 'ramda';\nimport { getFlagsAndNotes } from './getFlagsAndNotes';\nimport { getLayoutCoordinatesValidator } from '../utils';\n\nconst getValueData = (index, dimension, parentsIndexes, missingParents = []) => ({\n\tdimension: R.pick(['id', 'name', '__index'], dimension),\n\tvalue: {\n\t\t...R.pipe(\n\t\t\tR.pathOr({}, ['values', index]),\n\t\t\tR.pick(['id', 'name', 'isNonCoded', 'flags', 'hasAdvancedAttributes', 'display'])\n\t\t)(dimension),\n\t\tparents: parentsIndexes,\n\t\tmissingParents\n\t}\n});\n\nconst addCoordinatesToKey = (key, dimensionId, valueId) =>\n\t`${key}${R.isEmpty(key) ? '' : ':'}${dimensionId}=${valueId}`;\n\nconst simpleValueDataSetter = (valueData, datas = []) => R.append(valueData, datas);\n\nconst combinedValueDataSetter = (valueData, datas = []) =>\n\tR.over(R.lensIndex(-1), d => ({ ...d, values: R.append(R.prop('value', valueData), d.values) }), datas);\n\nconst addValueToSerieData = (dataSetter) => (index, parentsIndexes, dimension, serieData, missingParents) => {\n\tconst valueData = getValueData(index, dimension, parentsIndexes, missingParents);\n\tconst valueId = R.path(['value', 'id'], valueData);\n\treturn ({\n\t\t...serieData,\n\t\tdata: dataSetter(valueData, R.prop('data', serieData)),\n\t\tkey: addCoordinatesToKey(R.prop('key', serieData), R.prop('id', dimension), valueId)\n\t});\n};\n\nconst addSimpleValueToSerieData = addValueToSerieData(simpleValueDataSetter);\n\nconst addCombinedValueToSerieData = addValueToSerieData(combinedValueDataSetter);\n\nconst getHasAdvancedAttributes = (attrValues, customAttributes) => R.pipe(\n R.omit(R.concat(customAttributes.flags || [], customAttributes.notes || [])),\n R.isEmpty,\n R.not\n )(attrValues);\n\nconst getCoordinates = (indexes, topCoordinates, definition) => R.addIndex(R.reduce)((acc, entry, index) => {\n\tif (R.has('dimensions', entry)) {\n\t\treturn R.addIndex(R.reduce)((_acc, dim, _index) => {\n\t\t\tconst valInd = R.path([index, _index], indexes);\n\t\t\treturn R.assoc(dim.id, R.path(['values', Math.abs(valInd), 'id'], dim), _acc)\n\t\t}, acc, entry.dimensions);\n\t}\n\tconst valInd = R.nth(index, indexes);\n\tif (R.isNil(valInd)) {\n\t\treturn acc;\n\t}\n\treturn R.assoc(entry.id, R.path(['values', Math.abs(valInd), 'id'], entry), acc);\n}, topCoordinates, definition);\n\nconst getAttributesSeries = (validator, attributesSeries) => R.reduce((acc, attrs) => {\n\tconst attr = R.head(R.values(attrs)) || {};\n\tconst coordinates = R.propOr({}, 'coordinates', attr);\n\tconst isValid = validator(coordinates);\n\tif (!isValid && !R.prop('isObs', attr)) {\n\t\treturn acc;\n\t}\n\tconst filtered = R.reject(\n\t\ta => !R.propOr(false, 'combined', a) && R.length(a.relationship || []) === 1,\n\t\tattrs\n\t);\n\treturn ({ ...acc, ...filtered });\n}, {}, R.values(attributesSeries));\n\nconst combineConcepts = (combDimValues, definition, attrValues) => R.over(\n\tR.lensProp('data'),\n\tR.over(R.lensIndex(-1), data => ({\n\t\t...data,\n\t\tvalues: R.reduce((acc, conceptId) => {\n\t\t\tif (R.has(conceptId, combDimValues)) {\n\t\t\t\treturn R.append(R.prop(conceptId, combDimValues), acc);\n\t\t\t}\n\t\t\tif (R.has(conceptId, definition.fixedDimValues || {})) {\n\t\t\t\treturn R.append(R.prop(conceptId, definition.fixedDimValues), acc);\n\t\t\t}\n\t\t\tif (R.has(conceptId, attrValues)) {\n\t\t\t\tconst value = R.path([conceptId, 'value'], attrValues);\n\t\t\t\treturn R.append(value, acc);\n\t\t\t}\n\t\t\treturn acc;\n\t\t}, [], definition.concepts)\n\t})));\n\nconst getSerieFlagsAndSideProps = (coordinates, validator, attributesValues, customAttributes, metadataCoordinates, data) => {\n\tconst layoutAttrValues = R.reject(attr => R.prop('isObs', attr) && !validator(attr.coordinates), attributesValues);\n const flags = getFlagsAndNotes(layoutAttrValues, customAttributes);\n const hasMetadata = !R.isNil(R.find(validator, metadataCoordinates));\n\tconst hasDataAdvancedAttributes = R.any(\n\t\td => R.has('value', d) ? R.prop('hasAdvancedAttributes', d.value) : R.any(R.prop('hasAdvancedAttributes'), d.values)\n\t, data);\n const hasAdvancedAttributes = hasDataAdvancedAttributes || getHasAdvancedAttributes(layoutAttrValues, customAttributes);\n const sideProps = hasMetadata || hasAdvancedAttributes\n ? { hasMetadata, hasAdvancedAttributes, coordinates } : null;\n\treturn { flags, sideProps };\n};\n\nconst getSerieDimensionsData = (serie, definition, attributesValues, missingParentsGetter) => R.addIndex(R.reduce)(\n\t(onGoingSerie, entry, index) => {\n\t\tif (R.has('dimensions', entry)) {\n\t\t\tconst combValuesIndexes = R.pathOr([], ['indexes', index], serie);\n\t\t\tconst combParentsIndexes = R.pathOr([], ['parentsIndexes', index], serie);\n\t\t\tconst combMissingParentsIndexes = R.pathOr([], ['missingIndexes', index], serie);\n\t\t\tlet combDimValues = {};\n\t\t\tconst res = R.addIndex(R.reduce)((combSerie, dimension, dimIndex) => {\n\t\t\t\tconst valueIndex = Math.abs(R.nth(dimIndex, combValuesIndexes));\n\t\t\t\tconst _parentsIndexes = R.nth(dimIndex, combParentsIndexes) || [];\n\t\t\t\tconst missingParentsIndexes = R.nth(dimIndex, combMissingParentsIndexes) || [];\n\t\t\t\tconst { parentsIndexes, missingParents } = missingParentsGetter(combinedValueDataSetter)(missingParentsIndexes, _parentsIndexes, dimension, combSerie);\n\t\t\t\tconst next = addCombinedValueToSerieData(valueIndex, parentsIndexes, dimension, combSerie, missingParents);\n\t\t\t\tconst value = R.pipe(R.prop('data'), R.last, R.prop('values'), R.last)(next);\n\t\t\t\tcombDimValues = R.assoc(dimension.id, value, combDimValues);\n\t\t\t\treturn next;\n\t\t\t},\n\t\t\tR.over(\n\t\t\t\tR.lensProp('data'),\n\t\t\t\tR.append({ dimension: R.pick(['id', 'name'], entry), values: [] })\n\t\t\t)(onGoingSerie),\n\t\t\tR.propOr([], 'dimensions', entry));\n\n\t\t\tconst combined = combineConcepts(combDimValues, entry, onGoingSerie.attributes)(res);\n\t\t\treturn R.over(R.lensProp('attributes'), R.omit(entry.concepts), combined);\n\t\t}\n\n\t\tconst valueIndex = Math.abs(R.path(['indexes', index], serie));\n\t\tconst _parentsIndexes = R.pathOr([], ['parentsIndexes', index], serie);\n\t\tconst missingParentsIndexes = R.pathOr([], ['missingIndexes', index], serie);\n\t\tconst { parentsIndexes, missingParents } = missingParentsGetter(simpleValueDataSetter)(missingParentsIndexes, _parentsIndexes, entry, onGoingSerie);\n\t\treturn addSimpleValueToSerieData(valueIndex, parentsIndexes, entry, onGoingSerie, missingParents);\n\t},\n\t{ data: [], key: '', attributes: attributesValues },\n\tdefinition,\n);\n\nexport const getSerieDataWithMissingLines = (serie, definition, topCoordinates, attributesSeries, customAttributes, metadataCoordinates, rejectedDims = []) => {\n\tconst lines = [];\n\tconst coordinates = getCoordinates(serie.indexes, topCoordinates, definition);\n\tconst serieCoordinates = getCoordinates(serie.rejected || [], coordinates, rejectedDims);\n\tconst coordinatesValidator = getLayoutCoordinatesValidator(serieCoordinates, topCoordinates);\n\tconst attributesValues = getAttributesSeries(coordinatesValidator, attributesSeries);\n\n\tconst getMissingParents = dataSetter => (missingParentsIndexes, _parentsIndexes, dim, serieData) => R.reduce(\n\t\t(acc, index) => {\n\t\t\t\tconst missingParentData = addValueToSerieData(dataSetter)(index, acc.parentsIndexes, dim, serieData);\n\t\t\t\tlines.push({ ...R.dissoc('attributes', missingParentData), sideProps: null, flags: [], isEmpty: true });\n\t\t\treturn R.over(R.lensProp('parentsIndexes'), R.append(index), acc);\n\t\t},\n\t{ parentsIndexes: _parentsIndexes, missingParents: [] }, missingParentsIndexes);\n\tconst { attributes, ...serieData } = getSerieDimensionsData(serie, definition, attributesValues, getMissingParents);\n\tconst topCoordinatesValidator = getLayoutCoordinatesValidator(topCoordinates);\n\tconst flagsValidator = coordinates => coordinatesValidator(coordinates) && !topCoordinatesValidator(coordinates);\n\tconst { flags, sideProps } = getSerieFlagsAndSideProps(serieCoordinates, flagsValidator, attributes, customAttributes, metadataCoordinates, serieData.data);\n\treturn R.append({ ...serieData, flags, sideProps, coordinates: serieCoordinates }, lines);\n};\n\nexport const getSerieDataWithoutMissingLines = (serie, definition, topCoordinates, attributesSeries, customAttributes, metadataCoordinates, rejectedDims = []) => {\n\tconst coordinates = getCoordinates(serie.indexes, topCoordinates, definition);\n\tconst serieCoordinates = getCoordinates(serie.rejected || [], coordinates, rejectedDims);\n\tconst coordinatesValidator = getLayoutCoordinatesValidator(serieCoordinates, topCoordinates);\n\tconst attributesValues = getAttributesSeries(coordinatesValidator, attributesSeries);\n\n\tconst getMissingParents = () => (missingParentsIndexes, _parentsIndexes, dim) => R.reduce(\n\t\t(acc, index) => ({\n\t\t\tparentsIndexes: R.append(index, acc.parentsIndexes),\n\t\t\tmissingParents: R.append(R.prop('value', getValueData(index, dim, acc.parentsIndexes)), acc.missingParents)\n\t\t}),\n\t{ parentsIndexes: _parentsIndexes, missingParents: [] }, missingParentsIndexes);\n\n\tconst { attributes, ...serieData } = getSerieDimensionsData(serie, definition, attributesValues, getMissingParents);\n\tconst { flags, sideProps } = getSerieFlagsAndSideProps(serieCoordinates, coordinatesValidator, attributes, customAttributes, metadataCoordinates, serieData.data);\n\treturn ({ ...serieData, flags, sideProps, coordinates: serieCoordinates });\n};\n\nexport const getLayoutData = (layoutIndexes, layout, { metadataCoordinates, attributesSeries, customAttributes, topCoordinates={}, rejectedDimensions=[] }) => {\n const { header, sections, ...rest } = layoutIndexes;\n const headerData = R.reduce((acc, serie) => {\n \tconst datas = getSerieDataWithMissingLines(serie, layout.header, topCoordinates, attributesSeries, customAttributes, metadataCoordinates, rejectedDimensions);\n \treturn R.concat(acc, datas);\n }, [], header);\n\n const sectionsData = R.map(\n \t([sectionSerie, rowsSeries]) => {\n \t\tconst sectionData = getSerieDataWithoutMissingLines(sectionSerie, layout.sections, topCoordinates, attributesSeries, customAttributes, metadataCoordinates, rejectedDimensions);\n \t\treturn [\n \t\t\tsectionData,\n \t\t\t R.reduce((acc, serie) => {\n \t\t\t\tconst datas = getSerieDataWithMissingLines(serie, layout.rows, R.propOr(topCoordinates, 'coordinates', sectionData), attributesSeries, customAttributes, metadataCoordinates, rejectedDimensions);\n \t\t\t\treturn R.concat(acc, datas);\n \t\t\t}, [], rowsSeries)\n \t\t];\n \t},\n \tsections\n );\n\n return ({ headerData, sectionsData, ...rest });\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -72,6 +72,7 @@ const getTableProps = ({ data, layoutIds, customAttributes, limit, isTimeInverte
|
|
|
72
72
|
const indexedCombinations = getIndexedCombinationsByDisplay(layout, seriesCombinations);
|
|
73
73
|
const cellsMetadataCoordinates = getCellsMetadataCoordinates(metadataCoordinates, oneValueDimensions, layoutDimsIds);
|
|
74
74
|
const cells = getCells(customAttributes, cellsAttributesIds, indexedCombinations, attributesSeries, cellsMetadataCoordinates)(dupObs);
|
|
75
|
+
//console.log({ cellsAttributesIds, customAttributes, indexedCombinations });
|
|
75
76
|
|
|
76
77
|
return ({
|
|
77
78
|
...layoutData,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTableProps.js","sources":["../../../../src/rules2/src/table/getTableProps.js"],"sourcesContent":["import * as R from 'ramda';\nimport { declineObservationsOverAttributes } from './declineObservationsOverAttributes';\nimport { getLayout } from './getLayout';\nimport { getSortedLayoutIndexes } from './getSortedLayoutIndexes';\nimport { parseLayoutIndexesHierarchies } from './parseSeriesIndexesHierarchies';\nimport { refineLayoutSize } from './refineLayoutSize2';\nimport { getLayoutData } from './getLayoutData2';\nimport { getCellsAttributesIds } from './getCellsAttributesIds';\nimport { getIndexedCombinationsByDisplay } from './getIndexedCombinationsByDisplay';\nimport { getCells } from './getCells';\nimport { getCuratedCells } from './getCuratedCells';\nimport { getSeriesCombinations } from '../getSeriesCombinations';\nimport { getCellsMetadataCoordinates } from './getCellsMetadataCoordinates';\n\nexport const getTableProps = ({ data, layoutIds, customAttributes, limit, isTimeInverted }) => {\n const {\n observations,\n dimensions,\n combinations,\n oneValueDimensions,\n attributesSeries,\n metadataCoordinates,\n attributes,\n header,\n rejectedDimensions=[]\n } = data;\n\n const obsAttributes = R.filter(\n a => a.series && R.isEmpty(a.relationship) && a.display && !a.combined,\n attributes\n );\n let dupObs = observations;\n const hasDuplicatedCells = R.pipe(\n R.values,\n R.unnest,\n R.find(R.equals('OBS_ATTRIBUTES')),\n )(layoutIds);\n if (hasDuplicatedCells) {\n const attrsIds = R.pluck('id', obsAttributes);\n dupObs = declineObservationsOverAttributes(attrsIds, observations);\n }\n const seriesCombinations = getSeriesCombinations(combinations, oneValueDimensions);\n const _dims = R.append(\n {\n id: 'OBS_ATTRIBUTES',\n values: R.prepend({ id: 'OBS_VALUE' }, obsAttributes),\n },\n dimensions,\n );\n const layout = getLayout(layoutIds, _dims, seriesCombinations, isTimeInverted);\n const layoutDimsIds = R.map(R.reduce((acc, entry) => {\n if (R.has('dimensions', entry)) {\n return R.concat(acc, R.pluck('id', entry.dimensions));\n }\n return R.append(entry.id, acc);\n }, []), layout);\n const layoutIndexes = getSortedLayoutIndexes(layout, dupObs, rejectedDimensions);\n const enhancedLayoutIndexes = parseLayoutIndexesHierarchies(\n layoutIndexes,\n layout,\n );\n const refinedLayoutIndexes = refineLayoutSize({ layout, observations: dupObs, limit })(enhancedLayoutIndexes);\n const layoutData = getLayoutData(refinedLayoutIndexes, layout, {\n metadataCoordinates,\n attributesSeries,\n customAttributes,\n topCoordinates: header.coordinates,\n rejectedDimensions\n });\n\n const cellsAttributesIds = getCellsAttributesIds(layoutDimsIds, attributes);\n const indexedCombinations = getIndexedCombinationsByDisplay(layout, seriesCombinations);\n const cellsMetadataCoordinates = getCellsMetadataCoordinates(metadataCoordinates, oneValueDimensions, layoutDimsIds);\n const cells = getCells(customAttributes, cellsAttributesIds, indexedCombinations, attributesSeries, cellsMetadataCoordinates)(dupObs);\n\n return ({\n ...layoutData,\n cells: getCuratedCells(cells, layout),\n layout,\n combinations: seriesCombinations\n });\n};\n"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"getTableProps.js","sources":["../../../../src/rules2/src/table/getTableProps.js"],"sourcesContent":["import * as R from 'ramda';\nimport { declineObservationsOverAttributes } from './declineObservationsOverAttributes';\nimport { getLayout } from './getLayout';\nimport { getSortedLayoutIndexes } from './getSortedLayoutIndexes';\nimport { parseLayoutIndexesHierarchies } from './parseSeriesIndexesHierarchies';\nimport { refineLayoutSize } from './refineLayoutSize2';\nimport { getLayoutData } from './getLayoutData2';\nimport { getCellsAttributesIds } from './getCellsAttributesIds';\nimport { getIndexedCombinationsByDisplay } from './getIndexedCombinationsByDisplay';\nimport { getCells } from './getCells';\nimport { getCuratedCells } from './getCuratedCells';\nimport { getSeriesCombinations } from '../getSeriesCombinations';\nimport { getCellsMetadataCoordinates } from './getCellsMetadataCoordinates';\n\nexport const getTableProps = ({ data, layoutIds, customAttributes, limit, isTimeInverted }) => {\n const {\n observations,\n dimensions,\n combinations,\n oneValueDimensions,\n attributesSeries,\n metadataCoordinates,\n attributes,\n header,\n rejectedDimensions=[]\n } = data;\n\n const obsAttributes = R.filter(\n a => a.series && R.isEmpty(a.relationship) && a.display && !a.combined,\n attributes\n );\n let dupObs = observations;\n const hasDuplicatedCells = R.pipe(\n R.values,\n R.unnest,\n R.find(R.equals('OBS_ATTRIBUTES')),\n )(layoutIds);\n if (hasDuplicatedCells) {\n const attrsIds = R.pluck('id', obsAttributes);\n dupObs = declineObservationsOverAttributes(attrsIds, observations);\n }\n const seriesCombinations = getSeriesCombinations(combinations, oneValueDimensions);\n const _dims = R.append(\n {\n id: 'OBS_ATTRIBUTES',\n values: R.prepend({ id: 'OBS_VALUE' }, obsAttributes),\n },\n dimensions,\n );\n const layout = getLayout(layoutIds, _dims, seriesCombinations, isTimeInverted);\n const layoutDimsIds = R.map(R.reduce((acc, entry) => {\n if (R.has('dimensions', entry)) {\n return R.concat(acc, R.pluck('id', entry.dimensions));\n }\n return R.append(entry.id, acc);\n }, []), layout);\n const layoutIndexes = getSortedLayoutIndexes(layout, dupObs, rejectedDimensions);\n const enhancedLayoutIndexes = parseLayoutIndexesHierarchies(\n layoutIndexes,\n layout,\n );\n const refinedLayoutIndexes = refineLayoutSize({ layout, observations: dupObs, limit })(enhancedLayoutIndexes);\n const layoutData = getLayoutData(refinedLayoutIndexes, layout, {\n metadataCoordinates,\n attributesSeries,\n customAttributes,\n topCoordinates: header.coordinates,\n rejectedDimensions\n });\n\n const cellsAttributesIds = getCellsAttributesIds(layoutDimsIds, attributes);\n const indexedCombinations = getIndexedCombinationsByDisplay(layout, seriesCombinations);\n const cellsMetadataCoordinates = getCellsMetadataCoordinates(metadataCoordinates, oneValueDimensions, layoutDimsIds);\n const cells = getCells(customAttributes, cellsAttributesIds, indexedCombinations, attributesSeries, cellsMetadataCoordinates)(dupObs);\n //console.log({ cellsAttributesIds, customAttributes, indexedCombinations });\n\n return ({\n ...layoutData,\n cells: getCuratedCells(cells, layout),\n layout,\n combinations: seriesCombinations\n });\n};\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -62,20 +62,21 @@ export const formatValue = (observation, formatAttributesIndexes, attributes) =>
|
|
|
62
62
|
R.always(isValidNumber(prefscale)),
|
|
63
63
|
value => numeral(value).multiply(Math.pow(10, -1 * Number(prefscale))).value(),
|
|
64
64
|
);
|
|
65
|
+
const _decimals = !decimals ? 2 : decimals;
|
|
65
66
|
|
|
66
67
|
const formatSeparator = value => numeral(value).format(`0,0.[0000000]`);
|
|
67
68
|
const formatDecimals = R.ifElse(
|
|
68
69
|
R.always(isValidNumber(decimals)),
|
|
69
70
|
v => {
|
|
70
71
|
const num = Number(v);
|
|
71
|
-
const isTiny = Math.abs(num) < Math.pow(10, -(
|
|
72
|
+
const isTiny = Math.abs(num) < Math.pow(10, -(_decimals) + 1);
|
|
72
73
|
const displayNum = isTiny ? 0 : num;
|
|
73
74
|
const decimalFormat =
|
|
74
75
|
R.ifElse(
|
|
75
76
|
R.equals(0),
|
|
76
77
|
R.always('0,0'),
|
|
77
78
|
d => `0,0.${R.join('', R.times(R.always('0'), d))}`
|
|
78
|
-
)(decimals
|
|
79
|
+
)(decimals);
|
|
79
80
|
|
|
80
81
|
return numeral(displayNum).format(decimalFormat);
|
|
81
82
|
},
|
|
@@ -30,7 +30,7 @@ export const parseAttributes = (attributes, dimensions, customAttributes) => {
|
|
|
30
30
|
R.pathOr([], ['relationship', 'dimensions']),
|
|
31
31
|
R.filter(id => {
|
|
32
32
|
const dimension = R.prop(id, indexedDimensions);
|
|
33
|
-
return !dimension.header && R.length(dimension.values || []) > 1;
|
|
33
|
+
return !dimension.header && R.length(dimension.values || []) > 1 && !dimension.rejected;
|
|
34
34
|
}),
|
|
35
35
|
)(attr);
|
|
36
36
|
if (R.length(seriesDimensions) > 0) {
|
|
@@ -58,15 +58,16 @@ const getCoordinates = (indexes, topCoordinates, definition) => R.addIndex(R.red
|
|
|
58
58
|
|
|
59
59
|
const getAttributesSeries = (validator, attributesSeries) => R.reduce((acc, attrs) => {
|
|
60
60
|
const attr = R.head(R.values(attrs)) || {};
|
|
61
|
-
if (R.length(attr.relationship || []) === 1 && !attr.combined) {
|
|
62
|
-
return acc;
|
|
63
|
-
}
|
|
64
61
|
const coordinates = R.propOr({}, 'coordinates', attr);
|
|
65
62
|
const isValid = validator(coordinates);
|
|
66
63
|
if (!isValid && !R.prop('isObs', attr)) {
|
|
67
64
|
return acc;
|
|
68
65
|
}
|
|
69
|
-
|
|
66
|
+
const filtered = R.reject(
|
|
67
|
+
a => !R.propOr(false, 'combined', a) && R.length(a.relationship || []) === 1,
|
|
68
|
+
attrs
|
|
69
|
+
);
|
|
70
|
+
return ({ ...acc, ...filtered });
|
|
70
71
|
}, {}, R.values(attributesSeries));
|
|
71
72
|
|
|
72
73
|
const combineConcepts = (combDimValues, definition, attrValues) => R.over(
|
|
@@ -72,6 +72,7 @@ export const getTableProps = ({ data, layoutIds, customAttributes, limit, isTime
|
|
|
72
72
|
const indexedCombinations = getIndexedCombinationsByDisplay(layout, seriesCombinations);
|
|
73
73
|
const cellsMetadataCoordinates = getCellsMetadataCoordinates(metadataCoordinates, oneValueDimensions, layoutDimsIds);
|
|
74
74
|
const cells = getCells(customAttributes, cellsAttributesIds, indexedCombinations, attributesSeries, cellsMetadataCoordinates)(dupObs);
|
|
75
|
+
//console.log({ cellsAttributesIds, customAttributes, indexedCombinations });
|
|
75
76
|
|
|
76
77
|
return ({
|
|
77
78
|
...layoutData,
|