@sis-cc/dotstatsuite-components 15.0.21 → 16.1.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/lib/rules/src/index.js +1 -145
- package/lib/rules/src/table/index.js +0 -42
- package/lib/rules2/src/constants.js +4 -1
- package/lib/rules2/src/enhanceObservations.js +98 -0
- package/lib/rules2/src/getAttributesSeries.js +33 -0
- package/lib/rules2/src/getCombinationDefinitions.js +48 -0
- package/lib/rules2/src/getHeaderCombinations.js +42 -0
- package/lib/rules2/src/getHeaderSubtitle.js +41 -0
- package/lib/rules2/src/getManyValuesDimensions.js +39 -0
- package/lib/rules2/src/getOneValueDimensions.js +46 -0
- package/lib/rules2/src/hasCellMetadata.js +1 -1
- package/lib/rules2/src/index.js +186 -18
- package/lib/rules2/src/parseAttributes.js +50 -0
- package/lib/rules2/src/parseCombinations.js +54 -0
- package/lib/rules2/src/parseMetadataSeries.js +4 -2
- package/lib/rules2/src/prepareData.js +74 -0
- package/lib/{rules/src/table/preparators/getAttributeValue.js → rules2/src/refineAttributes.js} +13 -11
- package/lib/rules2/src/table/getCells.js +74 -0
- package/lib/rules2/src/table/getCellsAttributesIds.js +63 -0
- package/lib/rules2/src/table/getCombinationDimensionsData.js +47 -0
- package/lib/rules2/src/table/getCuratedCells.js +28 -0
- package/lib/rules2/src/table/getFlagsAndNotes.js +28 -0
- package/lib/rules2/src/table/getIndexedCombinationsByDisplay.js +31 -0
- package/lib/rules2/src/table/getLayout.js +93 -0
- package/lib/rules2/src/table/getLayoutData.js +202 -0
- package/lib/{rules/src/table/factories → rules2/src/table}/getSortedLayoutIndexes.js +55 -40
- package/lib/rules2/src/table/getTableProps.js +64 -0
- package/lib/rules2/src/table/parseValueHierarchy.js +55 -0
- package/lib/{rules/src/table/factories → rules2/src/table}/refineLayoutSize.js +17 -8
- package/lib/rules2/src/{hasLayoutEntryMetadata.js → utils.js} +9 -6
- package/package.json +1 -1
- package/src/rules/src/index.js +1 -19
- package/src/rules/src/table/index.js +0 -4
- package/src/rules2/src/constants.js +3 -0
- package/src/rules2/src/enhanceObservations.js +88 -0
- package/src/rules2/src/getAttributesSeries.js +29 -0
- package/src/rules2/src/getCombinationDefinitions.js +29 -0
- package/src/rules2/src/getHeaderCombinations.js +39 -0
- package/src/rules2/src/getHeaderSubtitle.js +34 -0
- package/src/rules2/src/getManyValuesDimensions.js +34 -0
- package/src/rules2/src/getOneValueDimensions.js +33 -0
- package/src/rules2/src/hasCellMetadata.js +1 -1
- package/src/rules2/src/index.js +21 -6
- package/src/rules2/src/parseAttributes.js +36 -0
- package/src/rules2/src/parseCombinations.js +36 -0
- package/src/rules2/src/parseMetadataSeries.js +3 -2
- package/src/rules2/src/prepareData.js +50 -0
- package/src/rules2/src/refineAttributes.js +16 -0
- package/src/rules2/src/table/getCells.js +72 -0
- package/src/rules2/src/table/getCellsAttributesIds.js +38 -0
- package/src/rules2/src/table/getCombinationDimensionsData.js +38 -0
- package/src/rules2/src/table/getCuratedCells.js +33 -0
- package/src/rules2/src/table/getFlagsAndNotes.js +21 -0
- package/src/rules2/src/table/getIndexedCombinationsByDisplay.js +16 -0
- package/src/rules2/src/table/getLayout.js +80 -0
- package/src/rules2/src/table/getLayoutData.js +183 -0
- package/src/rules2/src/table/getSortedLayoutIndexes.js +119 -0
- package/src/rules2/src/table/getTableProps.js +36 -0
- package/src/rules2/src/table/parseValueHierarchy.js +27 -0
- package/src/{rules/src/table/factories → rules2/src/table}/refineLayoutSize.js +24 -8
- package/src/rules2/src/utils.js +12 -0
- package/test/enhanceObservations2.test.js +219 -0
- package/test/getAttributesSeries.test.js +58 -0
- package/test/getCells.test.js +6 -40
- package/test/getCombinationDimensionsData.test.js +48 -0
- package/test/getSortedLayoutIndexes.test.js +1025 -3
- package/test/mocks/OECD_SNA_TABLE1_1.0_-_AUS_V_metadata.json +2 -2
- package/test/parseAttributes.test.js +17 -62
- package/test/parseMetadataSeries.test.js +1 -1
- package/test/parseValueHierarchy.test.js +88 -0
- package/test/refineLayoutSize.test.js +2621 -1
- package/lib/rules/src/table/factories/getCells.js +0 -97
- package/lib/rules/src/table/factories/getConfirmedSeriesAttributesIds.js +0 -26
- package/lib/rules/src/table/factories/getCuratedCells.js +0 -45
- package/lib/rules/src/table/factories/getLayoutData.js +0 -168
- package/lib/rules/src/table/factories/getLayoutWithFlags.js +0 -133
- package/lib/rules/src/table/factories/getTableCells.js +0 -24
- package/lib/rules/src/table/factories/getTableData.js +0 -98
- package/lib/rules/src/table/preparators/getDimensionsAttributesRegisters.js +0 -43
- package/lib/rules/src/table/preparators/getManyValuesDimensions.js +0 -33
- package/lib/rules/src/table/preparators/getOneValueDimensions.js +0 -24
- package/lib/rules/src/table/preparators/getUniqValuesAttributes.js +0 -36
- package/lib/rules/src/table/preparators/parseAttributes.js +0 -84
- package/lib/rules/src/table/preparators/parseAttributesValuesFromObservations.js +0 -22
- package/lib/rules/src/table/preparators/parseDimensionsIds.js +0 -22
- package/lib/rules/src/table/preparators/prepareData.js +0 -191
- package/lib/rules/src/table/preparators/refineObservationsAttributesValues.js +0 -31
- package/lib/rules/src/table/preparators/refineSeriesAttributesValues.js +0 -23
- package/lib/rules/src/table/units/appendUnitsInLayoutData.js +0 -82
- package/lib/rules/src/table/units/appendUnitsInLayoutDataEntry.js +0 -45
- package/lib/rules/src/table/units/cleanUnitsInLayoutData.js +0 -66
- package/lib/rules/src/table/units/getAttachmentSeriesIndexes.js +0 -25
- package/lib/rules/src/table/units/getHeaderUnits.js +0 -35
- package/lib/rules/src/table/units/getUnitsArtefacts.js +0 -85
- package/lib/rules/src/table/units/getUnitsCodes.js +0 -23
- package/lib/rules/src/table/units/getUnitsDefinition.js +0 -33
- package/lib/rules/src/table/units/getUnitsDisplay.js +0 -33
- package/lib/rules/src/table/units/getUnitsSerieIndexes.js +0 -23
- package/lib/rules/src/table/units/getUnitsSeries.js +0 -49
- package/lib/rules/src/table/units/getUnitsinLayout.js +0 -74
- package/lib/rules/src/table/units/refineDimSeriesUnits.js +0 -44
- package/lib/rules2/src/getAdvancedAttributes.js +0 -124
- package/lib/rules2/src/invertTime.js +0 -33
- package/src/rules/src/table/factories/getCells.js +0 -102
- package/src/rules/src/table/factories/getConfirmedSeriesAttributesIds.js +0 -27
- package/src/rules/src/table/factories/getCuratedCells.js +0 -40
- package/src/rules/src/table/factories/getLayoutData.js +0 -171
- package/src/rules/src/table/factories/getLayoutWithFlags.js +0 -137
- package/src/rules/src/table/factories/getSortedLayoutIndexes.js +0 -108
- package/src/rules/src/table/factories/getTableCells.js +0 -16
- package/src/rules/src/table/factories/getTableData.js +0 -86
- package/src/rules/src/table/preparators/getAttributeValue.js +0 -17
- package/src/rules/src/table/preparators/getDimensionsAttributesRegisters.js +0 -51
- package/src/rules/src/table/preparators/getManyValuesDimensions.js +0 -19
- package/src/rules/src/table/preparators/getOneValueDimensions.js +0 -17
- package/src/rules/src/table/preparators/getUniqValuesAttributes.js +0 -24
- package/src/rules/src/table/preparators/parseAttributes.js +0 -113
- package/src/rules/src/table/preparators/parseAttributesValuesFromObservations.js +0 -16
- package/src/rules/src/table/preparators/parseDimensionsIds.js +0 -17
- package/src/rules/src/table/preparators/prepareData.js +0 -197
- package/src/rules/src/table/preparators/refineObservationsAttributesValues.js +0 -22
- package/src/rules/src/table/preparators/refineSeriesAttributesValues.js +0 -11
- package/src/rules/src/table/units/appendUnitsInLayoutData.js +0 -56
- package/src/rules/src/table/units/appendUnitsInLayoutDataEntry.js +0 -38
- package/src/rules/src/table/units/cleanUnitsInLayoutData.js +0 -65
- package/src/rules/src/table/units/getAttachmentSeriesIndexes.js +0 -27
- package/src/rules/src/table/units/getHeaderUnits.js +0 -32
- package/src/rules/src/table/units/getUnitsArtefacts.js +0 -90
- package/src/rules/src/table/units/getUnitsCodes.js +0 -22
- package/src/rules/src/table/units/getUnitsDefinition.js +0 -34
- package/src/rules/src/table/units/getUnitsDisplay.js +0 -19
- package/src/rules/src/table/units/getUnitsSerieIndexes.js +0 -12
- package/src/rules/src/table/units/getUnitsSeries.js +0 -41
- package/src/rules/src/table/units/getUnitsinLayout.js +0 -71
- package/src/rules/src/table/units/refineDimSeriesUnits.js +0 -26
- package/src/rules2/src/getAdvancedAttributes.js +0 -111
- package/src/rules2/src/hasLayoutEntryMetadata.js +0 -9
- package/src/rules2/src/invertTime.js +0 -22
- package/test/advanced-attributes-parsing-perf.test.js +0 -16
- package/test/appendUnitsInLayoutDataEntry.test.js +0 -65
- package/test/cleanUnitsInLayoutData.test.js +0 -85
- package/test/enhanceObservations.test.js +0 -340
- package/test/getAttachmentSeriesIndexes.test.js +0 -35
- package/test/getConfirmedSeriesAttributesIds.test.js +0 -27
- package/test/getDataflowAdvancedAttributes.test.js +0 -32
- package/test/getHeaderUnits.test.js +0 -51
- package/test/getLayoutData.test.js +0 -206
- package/test/getLayoutDataWithFlags.test.js +0 -142
- package/test/getOneValueDimensions.test.js +0 -26
- package/test/getSeriesAdvancedAttributes.test.js +0 -32
- package/test/getSubtitleFlags.test.js +0 -42
- package/test/getTableData.test.js +0 -1317
- package/test/getUnitsArtefacts.test.js +0 -117
- package/test/getUnitsDefinition.test.js +0 -37
- package/test/getUnitsInLayout.test.js +0 -77
- package/test/getUnitsSeries.test.js +0 -154
- package/test/invertTime.test.js +0 -77
- package/test/parseAttributesValuesFromObservations.test.js +0 -45
- package/test/parseDimensionsIds.test.js +0 -20
- package/test/prepareData.test.js +0 -29
- package/test/refineObservationsAttributesValues.test.js +0 -33
- package/test/table-invert-time-perf.test.js +0 -11
- package/test/table-layout-perf.test.js +0 -74
- package/test/table-prep-duplicate-perf.test.js +0 -15
- package/test/table-prep-perf.test.js +0 -61
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getHeaderUnits = undefined;
|
|
7
|
-
|
|
8
|
-
var _extends2 = require('babel-runtime/helpers/extends');
|
|
9
|
-
|
|
10
|
-
var _extends3 = _interopRequireDefault(_extends2);
|
|
11
|
-
|
|
12
|
-
var _ramda = require('ramda');
|
|
13
|
-
|
|
14
|
-
var R = _interopRequireWildcard(_ramda);
|
|
15
|
-
|
|
16
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
|
17
|
-
|
|
18
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
-
|
|
20
|
-
var getHeaderUnits = exports.getHeaderUnits = function getHeaderUnits(_ref) {
|
|
21
|
-
var _ref$rejectedValueIds = _ref.rejectedValueIds,
|
|
22
|
-
rejectedValueIds = _ref$rejectedValueIds === undefined ? [] : _ref$rejectedValueIds,
|
|
23
|
-
unitsArtefacts = _ref.unitsArtefacts,
|
|
24
|
-
_ref$unitsDefinitionC = _ref.unitsDefinitionCodes,
|
|
25
|
-
unitsDefinitionCodes = _ref$unitsDefinitionC === undefined ? [] : _ref$unitsDefinitionC;
|
|
26
|
-
|
|
27
|
-
var artefacts = R.converge(R.merge, [R.pathOr({}, ['dimensions', 'header']), R.pathOr({}, ['attributes', 'header'])])(unitsArtefacts);
|
|
28
|
-
|
|
29
|
-
return R.pipe(R.props(unitsDefinitionCodes), R.reduce(function (acc, entry) {
|
|
30
|
-
if (R.isNil(entry) || !R.propOr(true, 'display', entry) || !R.pathOr(true, ['values', 0, 'display'], entry) || R.includes(R.path(['values', 0, 'id'], entry), rejectedValueIds)) {
|
|
31
|
-
return acc;
|
|
32
|
-
}
|
|
33
|
-
return R.append((0, _extends3.default)({}, R.pick(['id', 'name'], entry), { value: R.path(['values', 0], entry) }), acc);
|
|
34
|
-
}, []))(artefacts);
|
|
35
|
-
};
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getUnitsArtefacts = exports.getRelevantLength = undefined;
|
|
7
|
-
|
|
8
|
-
var _extends2 = require('babel-runtime/helpers/extends');
|
|
9
|
-
|
|
10
|
-
var _extends3 = _interopRequireDefault(_extends2);
|
|
11
|
-
|
|
12
|
-
var _ramda = require('ramda');
|
|
13
|
-
|
|
14
|
-
var R = _interopRequireWildcard(_ramda);
|
|
15
|
-
|
|
16
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
|
17
|
-
|
|
18
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19
|
-
|
|
20
|
-
var getRelevantLength = exports.getRelevantLength = function getRelevantLength(attr) {
|
|
21
|
-
return R.pipe(R.propOr([], 'values'), R.filter(R.propOr(true, 'display')), R.length)(attr);
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
var getUnitsArtefacts = exports.getUnitsArtefacts = function getUnitsArtefacts(_ref) {
|
|
25
|
-
var _ref$unitsDefinitionC = _ref.unitsDefinitionCodes,
|
|
26
|
-
unitsDefinitionCodes = _ref$unitsDefinitionC === undefined ? [] : _ref$unitsDefinitionC,
|
|
27
|
-
data = _ref.data;
|
|
28
|
-
|
|
29
|
-
var dimensions = R.pathOr([], ['data', 'structure', 'dimensions', 'observation'], data);
|
|
30
|
-
var parsedUnitsDimensions = R.addIndex(R.reduce)(function (acc, dimension, index) {
|
|
31
|
-
if (!R.includes(dimension.id, unitsDefinitionCodes)) {
|
|
32
|
-
return acc;
|
|
33
|
-
}
|
|
34
|
-
var length = R.pipe(R.propOr([], 'values'), R.length)(dimension);
|
|
35
|
-
if (length === 1) {
|
|
36
|
-
return R.evolve({ header: R.assoc(dimension.id, (0, _extends3.default)({}, dimension, { index: index, header: true })) }, acc);
|
|
37
|
-
}
|
|
38
|
-
if (length > 1) {
|
|
39
|
-
return R.evolve({ series: R.assoc(dimension.id, (0, _extends3.default)({}, dimension, { index: index })) }, acc);
|
|
40
|
-
}
|
|
41
|
-
return acc;
|
|
42
|
-
}, { header: {}, series: {} }, dimensions);
|
|
43
|
-
|
|
44
|
-
var keyedDimensions = R.indexBy(R.prop('id'), dimensions);
|
|
45
|
-
|
|
46
|
-
var parsedUnitsAttributes = R.pipe(R.pathOr([], ['data', 'structure', 'attributes', 'observation']), R.addIndex(R.reduce)(function (acc, attr, index) {
|
|
47
|
-
if (!R.includes(attr.id, unitsDefinitionCodes) || R.length(R.propOr([], 'values', attr)) === 0 || !R.propOr(true, 'display', attr)) {
|
|
48
|
-
return acc;
|
|
49
|
-
}
|
|
50
|
-
var length = getRelevantLength(attr);
|
|
51
|
-
if (length === 0) {
|
|
52
|
-
return acc;
|
|
53
|
-
}
|
|
54
|
-
if (R.hasPath(['relationship', 'none'], attr) || R.hasPath(['relationship', 'dataflow'], attr)) {
|
|
55
|
-
return R.assocPath(['header', attr.id], (0, _extends3.default)({}, attr, { index: index, datasetLevel: true }), acc);
|
|
56
|
-
}
|
|
57
|
-
if (R.path(['relationship', 'primaryMeasure'], attr) === 'OBS_VALUE' || R.hasPath(['relationship', 'observation'], attr)) {
|
|
58
|
-
return R.assocPath(['series', attr.id], (0, _extends3.default)({}, attr, { index: index, observations: true }), acc);
|
|
59
|
-
}
|
|
60
|
-
var attachedDimensions = R.path(['relationship', 'dimensions'], attr);
|
|
61
|
-
if (R.isNil(attachedDimensions)) {
|
|
62
|
-
return acc;
|
|
63
|
-
}
|
|
64
|
-
var filteredAttachedDimensions = R.filter(function (id) {
|
|
65
|
-
var dimension = R.propOr({}, id, keyedDimensions);
|
|
66
|
-
var nValues = R.pipe(R.propOr([], 'values'), R.length)(dimension);
|
|
67
|
-
return nValues > 1;
|
|
68
|
-
}, attachedDimensions);
|
|
69
|
-
var level = R.isEmpty(filteredAttachedDimensions) ? 'header' : 'series';
|
|
70
|
-
return R.assocPath([level, attr.id], (0, _extends3.default)({}, attr, { index: index, relationship: { dimensions: filteredAttachedDimensions } }), acc);
|
|
71
|
-
}, { header: {}, series: {} }))(data);
|
|
72
|
-
|
|
73
|
-
var hasSeries = R.pipe(R.all(R.isEmpty), R.not)([parsedUnitsDimensions.series, parsedUnitsAttributes.series]);
|
|
74
|
-
|
|
75
|
-
return {
|
|
76
|
-
dimensions: R.evolve({
|
|
77
|
-
header: R.when(R.always(hasSeries), R.always({})),
|
|
78
|
-
series: R.when(R.always(hasSeries), R.merge(parsedUnitsDimensions.header))
|
|
79
|
-
})(parsedUnitsDimensions),
|
|
80
|
-
attributes: R.evolve({
|
|
81
|
-
header: R.when(R.always(hasSeries), R.always({})),
|
|
82
|
-
series: R.when(R.always(hasSeries), R.merge(parsedUnitsAttributes.header))
|
|
83
|
-
})(parsedUnitsAttributes)
|
|
84
|
-
};
|
|
85
|
-
};
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getUnitsCodes = undefined;
|
|
7
|
-
|
|
8
|
-
var _ramda = require('ramda');
|
|
9
|
-
|
|
10
|
-
var R = _interopRequireWildcard(_ramda);
|
|
11
|
-
|
|
12
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
|
13
|
-
|
|
14
|
-
var getUnitsCodes = exports.getUnitsCodes = function getUnitsCodes(_ref) {
|
|
15
|
-
var data = _ref.data,
|
|
16
|
-
unitsDefinition = _ref.unitsDefinition;
|
|
17
|
-
|
|
18
|
-
var dimensionsCodes = R.pipe(R.pathOr([], ['data', 'structure', 'dimensions', 'observation']), R.indexBy(R.prop('id')), R.props(unitsDefinition), R.pluck('id'))(data);
|
|
19
|
-
|
|
20
|
-
var attributesCodes = R.pipe(R.pathOr({}, ['data', 'structure', 'attributes']), R.mapObjIndexed(R.pipe(R.filter(R.pipe(R.prop('id'), R.flip(R.includes)(unitsDefinition))), R.pluck('id'))))(data);
|
|
21
|
-
|
|
22
|
-
return { dimensions: dimensionsCodes, attributes: attributesCodes };
|
|
23
|
-
};
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getUnitsDefinition = undefined;
|
|
7
|
-
|
|
8
|
-
var _ramda = require('ramda');
|
|
9
|
-
|
|
10
|
-
var R = _interopRequireWildcard(_ramda);
|
|
11
|
-
|
|
12
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
|
13
|
-
|
|
14
|
-
var getUnitsDefinition = exports.getUnitsDefinition = function getUnitsDefinition(_ref) {
|
|
15
|
-
var data = _ref.data,
|
|
16
|
-
defaultCodes = _ref.defaultCodes,
|
|
17
|
-
annotationsDefinitionCodes = _ref.annotationsDefinitionCodes;
|
|
18
|
-
|
|
19
|
-
var conceptsCodes = R.propOr([], 'concepts', annotationsDefinitionCodes);
|
|
20
|
-
if (R.anyPass([R.isNil, R.isEmpty])(conceptsCodes)) {
|
|
21
|
-
return defaultCodes;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
var datasetAnnotations = R.converge(R.props, [R.pathOr([], ['data', 'dataSets', 0, 'annotations']), R.pathOr([], ['data', 'structure', 'annotations'])])(data);
|
|
25
|
-
|
|
26
|
-
var keyedDatasetAnnotations = R.indexBy(R.prop('type'), datasetAnnotations);
|
|
27
|
-
|
|
28
|
-
var conceptsAnnotation = R.pipe(R.props(conceptsCodes), R.find(function (ann) {
|
|
29
|
-
return !R.isNil(ann);
|
|
30
|
-
}), R.when(R.isNil, R.always({})))(keyedDatasetAnnotations);
|
|
31
|
-
|
|
32
|
-
return R.pipe(R.propOr('', 'title'), R.split(','), R.when(R.equals(['']), R.always(defaultCodes)))(conceptsAnnotation);
|
|
33
|
-
};
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getUnitsDisplay = undefined;
|
|
7
|
-
|
|
8
|
-
var _ramda = require('ramda');
|
|
9
|
-
|
|
10
|
-
var R = _interopRequireWildcard(_ramda);
|
|
11
|
-
|
|
12
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
|
13
|
-
|
|
14
|
-
var getUnitsDisplay = exports.getUnitsDisplay = function getUnitsDisplay(_ref) {
|
|
15
|
-
var unitsAttachmentSeriesIds = _ref.unitsAttachmentSeriesIds,
|
|
16
|
-
layoutIds = _ref.layoutIds;
|
|
17
|
-
|
|
18
|
-
if (R.isEmpty(unitsAttachmentSeriesIds)) {
|
|
19
|
-
return 'cells';
|
|
20
|
-
}
|
|
21
|
-
var headerIntersections = R.intersection(layoutIds.header, unitsAttachmentSeriesIds);
|
|
22
|
-
if (R.length(headerIntersections) === R.length(unitsAttachmentSeriesIds)) {
|
|
23
|
-
return 'header';
|
|
24
|
-
}
|
|
25
|
-
if (!R.isEmpty(headerIntersections)) {
|
|
26
|
-
return 'cells';
|
|
27
|
-
}
|
|
28
|
-
var sectionsIntersections = R.intersection(layoutIds.sections, unitsAttachmentSeriesIds);
|
|
29
|
-
if (R.length(sectionsIntersections) === R.length(unitsAttachmentSeriesIds)) {
|
|
30
|
-
return 'sections';
|
|
31
|
-
}
|
|
32
|
-
return 'rows';
|
|
33
|
-
};
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getUnitsSerieIndexes = undefined;
|
|
7
|
-
|
|
8
|
-
var _ramda = require('ramda');
|
|
9
|
-
|
|
10
|
-
var R = _interopRequireWildcard(_ramda);
|
|
11
|
-
|
|
12
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
|
13
|
-
|
|
14
|
-
//=> [{ dimension: { __index: 0 }, value: { __index: 0 } }] x { '0:x:x:x': {} }
|
|
15
|
-
var getUnitsSerieIndexes = exports.getUnitsSerieIndexes = function getUnitsSerieIndexes(_ref) {
|
|
16
|
-
var unitsIndexes = _ref.unitsIndexes,
|
|
17
|
-
partialUnitSerieIndexes = _ref.partialUnitSerieIndexes;
|
|
18
|
-
return function (layoutDataEntry) {
|
|
19
|
-
return R.reduce(function (pUSI, unitIndex) {
|
|
20
|
-
return R.update(R.path([unitIndex, 'dimension', '__index'], layoutDataEntry), R.path([unitIndex, 'value', '__index'], layoutDataEntry), pUSI);
|
|
21
|
-
}, partialUnitSerieIndexes, unitsIndexes);
|
|
22
|
-
};
|
|
23
|
-
};
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getUnitsSeries = undefined;
|
|
7
|
-
|
|
8
|
-
var _ramda = require('ramda');
|
|
9
|
-
|
|
10
|
-
var R = _interopRequireWildcard(_ramda);
|
|
11
|
-
|
|
12
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
|
13
|
-
|
|
14
|
-
/*
|
|
15
|
-
observations = { [obsKey]: { units: { serieKey: '', [id]: { id, name, value } } } };
|
|
16
|
-
*/
|
|
17
|
-
|
|
18
|
-
var getIndex = R.path(['value', 'index']);
|
|
19
|
-
var getUnits = function getUnits(acc, units) {
|
|
20
|
-
return R.mergeWith(function (a, b) {
|
|
21
|
-
return getIndex(a) === getIndex(b) ? a : null;
|
|
22
|
-
}, acc, units);
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
var getUnitsSeries = exports.getUnitsSeries = function getUnitsSeries(observations) {
|
|
26
|
-
var series = {};
|
|
27
|
-
R.map(function (obs) {
|
|
28
|
-
series = R.over(R.lensProp(obs.units.serieKey), R.ifElse(R.isNil, R.always([obs.units]), R.append(obs.units)))(series);
|
|
29
|
-
}, observations);
|
|
30
|
-
return R.reduce(function (_acc, key) {
|
|
31
|
-
var serie = series[key];
|
|
32
|
-
|
|
33
|
-
var _R$reduce = R.reduce(function (acc, units) {
|
|
34
|
-
var unitsKeys = R.keys(units);
|
|
35
|
-
if (R.isEmpty(acc.unitsKeys)) return { units: units, unitsKeys: unitsKeys };
|
|
36
|
-
var communKeys = R.intersection(acc.unitsKeys, unitsKeys);
|
|
37
|
-
return {
|
|
38
|
-
units: getUnits(R.pick(communKeys, acc.units), R.pick(communKeys, units)),
|
|
39
|
-
unitsKeys: communKeys
|
|
40
|
-
};
|
|
41
|
-
}, { unitsKeys: [], units: {} }, serie),
|
|
42
|
-
units = _R$reduce.units;
|
|
43
|
-
|
|
44
|
-
if (R.isEmpty(R.dissoc('serieKey', units))) {
|
|
45
|
-
return _acc;
|
|
46
|
-
}
|
|
47
|
-
return R.assoc(key, units, _acc);
|
|
48
|
-
}, {})(R.keys(series));
|
|
49
|
-
};
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getUnitsInLayout = undefined;
|
|
7
|
-
|
|
8
|
-
var _ramda = require('ramda');
|
|
9
|
-
|
|
10
|
-
var R = _interopRequireWildcard(_ramda);
|
|
11
|
-
|
|
12
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
|
13
|
-
|
|
14
|
-
var getUnitsIndexesInLayoutEntry = function getUnitsIndexesInLayoutEntry(unitsIds) {
|
|
15
|
-
return R.addIndex(R.reduce)(function (indexes, id, index) {
|
|
16
|
-
if (R.has(id, unitsIds)) {
|
|
17
|
-
return R.append(index, indexes);
|
|
18
|
-
}
|
|
19
|
-
return indexes;
|
|
20
|
-
}, []);
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
var getUnitsInLayout = exports.getUnitsInLayout = function getUnitsInLayout(_ref) {
|
|
24
|
-
var layoutIds = _ref.layoutIds,
|
|
25
|
-
_ref$unitsAttachmentS = _ref.unitsAttachmentSeriesIds,
|
|
26
|
-
unitsAttachmentSeriesIds = _ref$unitsAttachmentS === undefined ? [] : _ref$unitsAttachmentS,
|
|
27
|
-
_ref$unitsDefinitionC = _ref.unitsDefinitionCodes,
|
|
28
|
-
unitsDefinitionCodes = _ref$unitsDefinitionC === undefined ? [] : _ref$unitsDefinitionC,
|
|
29
|
-
_ref$unitsSeries = _ref.unitsSeries,
|
|
30
|
-
unitsSeries = _ref$unitsSeries === undefined ? {} : _ref$unitsSeries;
|
|
31
|
-
|
|
32
|
-
var defaultIndexes = { header: [], sections: [], rows: [] };
|
|
33
|
-
if (R.isEmpty(unitsAttachmentSeriesIds) || R.isEmpty(unitsSeries)) {
|
|
34
|
-
return {
|
|
35
|
-
unitsLevelDisplay: 'cells',
|
|
36
|
-
unitsAttachmentIndexesInLayout: defaultIndexes,
|
|
37
|
-
unitsIndexesInLayout: defaultIndexes
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
|
-
var unitsLength = R.length(unitsAttachmentSeriesIds);
|
|
41
|
-
var keyedAttUnitsIds = R.indexBy(R.identity, unitsAttachmentSeriesIds);
|
|
42
|
-
var keyedUnitsIds = R.indexBy(R.identity, unitsDefinitionCodes);
|
|
43
|
-
var headerUnitsIndexes = getUnitsIndexesInLayoutEntry(keyedAttUnitsIds)(R.propOr([], 'header', layoutIds));
|
|
44
|
-
if (R.length(headerUnitsIndexes) === unitsLength) {
|
|
45
|
-
return {
|
|
46
|
-
unitsLevelDisplay: 'header',
|
|
47
|
-
unitsAttachmentIndexesInLayout: R.assoc('header', headerUnitsIndexes, defaultIndexes),
|
|
48
|
-
unitsIndexesInLayout: R.assoc('header', getUnitsIndexesInLayoutEntry(keyedUnitsIds)(R.propOr([], 'header', layoutIds)), defaultIndexes)
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
if (!R.isEmpty(headerUnitsIndexes)) {
|
|
52
|
-
return {
|
|
53
|
-
unitsLevelDisplay: 'cells',
|
|
54
|
-
unitsAttachmentIndexesInLayout: defaultIndexes,
|
|
55
|
-
unitsIndexesInLayout: defaultIndexes
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
var sectionsAttUnitsIndexes = getUnitsIndexesInLayoutEntry(keyedAttUnitsIds)(R.propOr([], 'sections', layoutIds));
|
|
59
|
-
var sectionsUnitsIndexes = getUnitsIndexesInLayoutEntry(keyedUnitsIds)(R.propOr([], 'sections', layoutIds));
|
|
60
|
-
if (R.length(sectionsAttUnitsIndexes) === unitsLength) {
|
|
61
|
-
return {
|
|
62
|
-
unitsLevelDisplay: 'sections',
|
|
63
|
-
unitsAttachmentIndexesInLayout: R.assoc('sections', sectionsAttUnitsIndexes, defaultIndexes),
|
|
64
|
-
unitsIndexesInLayout: R.assoc('sections', sectionsUnitsIndexes, defaultIndexes)
|
|
65
|
-
};
|
|
66
|
-
}
|
|
67
|
-
var rowsAttUnitsIndexes = getUnitsIndexesInLayoutEntry(keyedAttUnitsIds)(R.propOr([], 'rows', layoutIds));
|
|
68
|
-
var rowsUnitsIndexes = getUnitsIndexesInLayoutEntry(keyedUnitsIds)(R.propOr([], 'rows', layoutIds));
|
|
69
|
-
return {
|
|
70
|
-
unitsLevelDisplay: 'rows',
|
|
71
|
-
unitsAttachmentIndexesInLayout: R.pipe(R.assoc('sections', sectionsAttUnitsIndexes), R.assoc('rows', rowsAttUnitsIndexes))(defaultIndexes),
|
|
72
|
-
unitsIndexesInLayout: R.pipe(R.assoc('sections', sectionsUnitsIndexes), R.assoc('rows', rowsUnitsIndexes))(defaultIndexes)
|
|
73
|
-
};
|
|
74
|
-
};
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.refineDimSeriesUnits = undefined;
|
|
7
|
-
|
|
8
|
-
var _extends2 = require('babel-runtime/helpers/extends');
|
|
9
|
-
|
|
10
|
-
var _extends3 = _interopRequireDefault(_extends2);
|
|
11
|
-
|
|
12
|
-
var _objectWithoutProperties2 = require('babel-runtime/helpers/objectWithoutProperties');
|
|
13
|
-
|
|
14
|
-
var _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2);
|
|
15
|
-
|
|
16
|
-
var _ramda = require('ramda');
|
|
17
|
-
|
|
18
|
-
var R = _interopRequireWildcard(_ramda);
|
|
19
|
-
|
|
20
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
|
21
|
-
|
|
22
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
23
|
-
|
|
24
|
-
var refineDimSeriesUnits = function refineDimSeriesUnits(_ref) {
|
|
25
|
-
var unitsArtefacts = _ref.unitsArtefacts,
|
|
26
|
-
_ref$rejectedValueIds = _ref.rejectedValueIds,
|
|
27
|
-
rejectedValueIds = _ref$rejectedValueIds === undefined ? [] : _ref$rejectedValueIds;
|
|
28
|
-
return R.pipe(R.mapObjIndexed(function (_ref2) {
|
|
29
|
-
var observations = _ref2.observations,
|
|
30
|
-
unitsIndexes = (0, _objectWithoutProperties3.default)(_ref2, ['observations']);
|
|
31
|
-
return R.pipe(R.filter(R.allPass([function (occurences) {
|
|
32
|
-
return R.length(occurences) === observations;
|
|
33
|
-
}, function (occurences) {
|
|
34
|
-
return R.pipe(R.uniq, R.length, R.equals(1))(occurences);
|
|
35
|
-
}])), R.mapObjIndexed(function (indexes, artefactId) {
|
|
36
|
-
var artefact = R.propOr({}, artefactId, unitsArtefacts);
|
|
37
|
-
var value = R.pathOr({}, ['values', R.head(indexes)], artefact);
|
|
38
|
-
return (0, _extends3.default)({}, R.pick(['id', 'name'], artefact), { value: value });
|
|
39
|
-
}), R.reject(R.pipe(R.prop('value'), R.anyPass([R.isEmpty, function (val) {
|
|
40
|
-
return R.includes(val.id, rejectedValueIds);
|
|
41
|
-
}]))))(unitsIndexes);
|
|
42
|
-
}), R.reject(R.isEmpty));
|
|
43
|
-
};
|
|
44
|
-
exports.refineDimSeriesUnits = refineDimSeriesUnits;
|
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getSeriesAdvancedAttributes = exports.getDataflowAdvancedAttributes = exports.getObservationsAdvancedAttributes = undefined;
|
|
7
|
-
|
|
8
|
-
var _slicedToArray2 = require('babel-runtime/helpers/slicedToArray');
|
|
9
|
-
|
|
10
|
-
var _slicedToArray3 = _interopRequireDefault(_slicedToArray2);
|
|
11
|
-
|
|
12
|
-
var _defineProperty2 = require('babel-runtime/helpers/defineProperty');
|
|
13
|
-
|
|
14
|
-
var _defineProperty3 = _interopRequireDefault(_defineProperty2);
|
|
15
|
-
|
|
16
|
-
var _extends3 = require('babel-runtime/helpers/extends');
|
|
17
|
-
|
|
18
|
-
var _extends4 = _interopRequireDefault(_extends3);
|
|
19
|
-
|
|
20
|
-
var _ramda = require('ramda');
|
|
21
|
-
|
|
22
|
-
var R = _interopRequireWildcard(_ramda);
|
|
23
|
-
|
|
24
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
|
25
|
-
|
|
26
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
27
|
-
|
|
28
|
-
var getObservationsAdvancedAttributes = exports.getObservationsAdvancedAttributes = function getObservationsAdvancedAttributes(observations, advancedAttributesIds) {
|
|
29
|
-
return R.pipe(R.map(function (obs) {
|
|
30
|
-
return { attributes: R.pick(advancedAttributesIds, obs.attributes || {}), coordinates: obs.indexedDimValIds || {} };
|
|
31
|
-
}), R.filter(function (entry) {
|
|
32
|
-
return !R.isEmpty(entry.attributes);
|
|
33
|
-
}))(observations);
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
var getDataflowAdvancedAttributes = exports.getDataflowAdvancedAttributes = function getDataflowAdvancedAttributes(attributes, dimensions, advancedAttributesIds, dimLength) {
|
|
37
|
-
var advancedAttributes = R.pick(advancedAttributesIds, attributes);
|
|
38
|
-
var keyTemplate = R.times(R.always(''), dimLength);
|
|
39
|
-
return R.reduce(function (acc, attribute) {
|
|
40
|
-
var value = R.head(attribute.values || []);
|
|
41
|
-
var attr = (0, _extends4.default)({}, R.pick(['id', 'name'], attribute), { value: value });
|
|
42
|
-
var coordinates = {};
|
|
43
|
-
var key = keyTemplate;
|
|
44
|
-
|
|
45
|
-
if (!R.isEmpty(R.pathOr([], ['relationship', 'dimensions'], attribute))) {
|
|
46
|
-
var attrDimensionsIds = R.pathOr([], ['relationship', 'dimensions'], attribute);
|
|
47
|
-
var attrDimensions = R.props(attrDimensionsIds, dimensions);
|
|
48
|
-
R.forEach(function (dim) {
|
|
49
|
-
var dId = dim.id;
|
|
50
|
-
var dIndex = dim.__index;
|
|
51
|
-
var vId = R.path(['values', 0, 'id'], dim);
|
|
52
|
-
coordinates = (0, _extends4.default)({}, coordinates, (0, _defineProperty3.default)({}, dId, vId));
|
|
53
|
-
key = R.set(R.lensIndex(dIndex), 0)(key);
|
|
54
|
-
}, R.reject(R.isNil, attrDimensions));
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
key = R.join(':', key);
|
|
58
|
-
return R.over(R.lensProp(key), function (entry) {
|
|
59
|
-
return R.isNil(entry) ? { attributes: (0, _defineProperty3.default)({}, attribute.id, attr), coordinates: coordinates } : R.over(R.lensProp('attributes'), R.assoc(attribute.id, attr))(entry);
|
|
60
|
-
})(acc);
|
|
61
|
-
}, {}, R.values(advancedAttributes));
|
|
62
|
-
};
|
|
63
|
-
|
|
64
|
-
/*
|
|
65
|
-
{
|
|
66
|
-
series: {
|
|
67
|
-
'0:0:x:x:x': { attributes: { a2: { id, value } } }
|
|
68
|
-
},
|
|
69
|
-
dimensions: {
|
|
70
|
-
'3:0': { attributes: { a1: { id, value } } },
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
*/
|
|
75
|
-
|
|
76
|
-
var getSeriesAdvancedAttributes = exports.getSeriesAdvancedAttributes = function getSeriesAdvancedAttributes(seriesAttributes, dimensions, advancedAttributesIds) {
|
|
77
|
-
var seriesAdvancedAttributes = R.pipe(R.propOr({}, 'series'), function (series) {
|
|
78
|
-
return R.reduce(function (acc, key) {
|
|
79
|
-
var serie = series[key];
|
|
80
|
-
var advancedAttributes = R.pick(advancedAttributesIds, serie.attributes);
|
|
81
|
-
if (R.isEmpty(advancedAttributes)) {
|
|
82
|
-
return acc;
|
|
83
|
-
}
|
|
84
|
-
var splitKey = R.split(':', key);
|
|
85
|
-
|
|
86
|
-
var _R$addIndex = R.addIndex(R.reduce)(function (acc, vInd, dInd) {
|
|
87
|
-
if (vInd === 'x') {
|
|
88
|
-
return (0, _extends4.default)({}, acc, { refinedKey: R.append('', acc.refinedKey) });
|
|
89
|
-
}
|
|
90
|
-
var _refined = R.append(vInd, acc.refinedKey);
|
|
91
|
-
var dim = R.nth(dInd, dimensions);
|
|
92
|
-
var valId = R.path(['values', Number(vInd), 'id'], dim);
|
|
93
|
-
var _coordinates = R.assoc(dim.id, valId, acc.coordinates);
|
|
94
|
-
return { coordinates: _coordinates, refinedKey: _refined };
|
|
95
|
-
}, { coordinates: {}, refinedKey: [] }, splitKey),
|
|
96
|
-
coordinates = _R$addIndex.coordinates,
|
|
97
|
-
refinedKey = _R$addIndex.refinedKey;
|
|
98
|
-
|
|
99
|
-
return R.assoc(R.join(':', refinedKey), { attributes: advancedAttributes, coordinates: coordinates }, acc);
|
|
100
|
-
}, {}, R.keys(series));
|
|
101
|
-
})(seriesAttributes);
|
|
102
|
-
var keyTemplate = R.map(R.always(''), dimensions);
|
|
103
|
-
var dimensionsAdvancedAttributes = R.pipe(R.propOr({}, 'dimensions'), function (series) {
|
|
104
|
-
return R.reduce(function (acc, key) {
|
|
105
|
-
var serie = series[key];
|
|
106
|
-
var advancedAttributes = R.pick(advancedAttributesIds, serie.attributes);
|
|
107
|
-
if (R.isEmpty(advancedAttributes)) {
|
|
108
|
-
return acc;
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
var _R$split = R.split(':', key),
|
|
112
|
-
_R$split2 = (0, _slicedToArray3.default)(_R$split, 2),
|
|
113
|
-
dInd = _R$split2[0],
|
|
114
|
-
vInd = _R$split2[1];
|
|
115
|
-
|
|
116
|
-
var dim = R.nth(Number(dInd), dimensions);
|
|
117
|
-
var valId = R.path(['values', Number(vInd), 'id'], dim);
|
|
118
|
-
var coordinates = (0, _defineProperty3.default)({}, dim.id, valId);
|
|
119
|
-
var refinedKey = R.set(R.lensIndex(Number(dInd)), vInd)(keyTemplate);
|
|
120
|
-
return R.assoc(R.join(':', refinedKey), { attributes: advancedAttributes, coordinates: coordinates }, acc);
|
|
121
|
-
}, {}, R.keys(series));
|
|
122
|
-
})(seriesAttributes);
|
|
123
|
-
return R.merge(seriesAdvancedAttributes, dimensionsAdvancedAttributes);
|
|
124
|
-
};
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.invertTime = undefined;
|
|
7
|
-
|
|
8
|
-
var _ramda = require('ramda');
|
|
9
|
-
|
|
10
|
-
var R = _interopRequireWildcard(_ramda);
|
|
11
|
-
|
|
12
|
-
var _dotstatsuiteSdmxjs = require('@sis-cc/dotstatsuite-sdmxjs');
|
|
13
|
-
|
|
14
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
|
15
|
-
|
|
16
|
-
var invertTime = exports.invertTime = function invertTime(data, isTimeInverted) {
|
|
17
|
-
var dimensions = R.pathOr([], ['dimensions', 'many'], data);
|
|
18
|
-
var observations = R.propOr({}, 'observations', data);
|
|
19
|
-
if (!isTimeInverted) {
|
|
20
|
-
return { dimensions: dimensions, observations: observations };
|
|
21
|
-
}
|
|
22
|
-
var timeD = R.find(_dotstatsuiteSdmxjs.isTimePeriodDimension, R.values(dimensions));
|
|
23
|
-
if (!timeD) {
|
|
24
|
-
return { dimensions: dimensions, observations: observations };
|
|
25
|
-
}
|
|
26
|
-
var timeLength = R.length(timeD.values);
|
|
27
|
-
var timeIndex = timeD.__index;
|
|
28
|
-
var invertTimeInObs = R.map(R.over(R.lensProp('orderedDimIndexes'), R.over(R.lensIndex(timeIndex), function (i) {
|
|
29
|
-
return timeLength - i - 1;
|
|
30
|
-
})), observations);
|
|
31
|
-
var invertedTimeInDims = R.over(R.lensProp(timeD.id), R.over(R.lensProp('values'), R.reverse))(dimensions);
|
|
32
|
-
return { dimensions: invertedTimeInDims, observations: invertTimeInObs };
|
|
33
|
-
};
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
import * as R from 'ramda';
|
|
2
|
-
import { dimensionValueDisplay } from '../../dimension-utils';
|
|
3
|
-
import { hasCellMetadata } from '../../../../rules2/src/hasCellMetadata';
|
|
4
|
-
|
|
5
|
-
const getAttrLabel = (display) => (attribute) => `${display(attribute)}: ${display(R.propOr({}, 'value', attribute))}`;
|
|
6
|
-
|
|
7
|
-
export const getFlags = (customAttributesIds, display, unitsProps) => ({ attributes={}, units={}, notes=[] }) => {
|
|
8
|
-
const refinedAttributes = R.omit(R.propOr([], 'rejected', customAttributesIds), attributes);
|
|
9
|
-
const flags = R.pipe(R.pick(R.propOr([], 'flags', customAttributesIds)), R.values)(refinedAttributes);
|
|
10
|
-
const footnotes = R.pipe(R.pick(R.propOr([], 'notes', customAttributesIds)), R.values)(refinedAttributes);
|
|
11
|
-
|
|
12
|
-
const unitsDisplay = R.prop('unitsDisplay', unitsProps);
|
|
13
|
-
const rejectedUnitsValueIds = R.propOr([], 'rejectedValueIds', unitsProps);
|
|
14
|
-
|
|
15
|
-
const separatedUnitsFootnotes = R.ifElse(
|
|
16
|
-
R.always(unitsDisplay === 'cells'),
|
|
17
|
-
R.always([]),
|
|
18
|
-
(units) => {
|
|
19
|
-
const unitsSerie = R.pathOr({}, ['unitsSeries', units.serieKey], unitsProps);
|
|
20
|
-
const validAttrs = R.omit(R.keys(unitsSerie), units);
|
|
21
|
-
return R.pipe(
|
|
22
|
-
R.props(R.propOr([], 'unitsDefinitionCodes', unitsProps)),
|
|
23
|
-
R.reject(entry => {
|
|
24
|
-
return (R.isNil(entry) || R.includes(R.path(['value', 'id'], entry), rejectedUnitsValueIds));
|
|
25
|
-
})
|
|
26
|
-
)(validAttrs);
|
|
27
|
-
}
|
|
28
|
-
)(units);
|
|
29
|
-
|
|
30
|
-
const fullUnitsFootnote = R.ifElse(
|
|
31
|
-
R.always(unitsDisplay === 'cells'),
|
|
32
|
-
(units) => {
|
|
33
|
-
if (R.isEmpty(units)) {
|
|
34
|
-
return ({});
|
|
35
|
-
}
|
|
36
|
-
const unitsLabel = display(unitsProps.unitDimension);
|
|
37
|
-
const valuesLabel = R.pipe(
|
|
38
|
-
R.omit(R.propOr([], 'layoutDimsIds', unitsProps)),
|
|
39
|
-
R.props(unitsProps.unitsDefinitionCodes),
|
|
40
|
-
R.reduce(
|
|
41
|
-
(values, entry) => {
|
|
42
|
-
if (R.isNil(entry) || R.includes(R.path(['value', 'id'], entry), rejectedUnitsValueIds)) {
|
|
43
|
-
return values
|
|
44
|
-
}
|
|
45
|
-
return R.append(display(entry.value), values);
|
|
46
|
-
},
|
|
47
|
-
[]
|
|
48
|
-
),
|
|
49
|
-
R.join(', ')
|
|
50
|
-
)(units);
|
|
51
|
-
if (R.isNil(valuesLabel) || R.isEmpty(valuesLabel)) {
|
|
52
|
-
return ({});
|
|
53
|
-
}
|
|
54
|
-
return ({ label: `${unitsLabel}: ${valuesLabel}` });
|
|
55
|
-
},
|
|
56
|
-
R.always(null)
|
|
57
|
-
)(units);
|
|
58
|
-
|
|
59
|
-
return R.useWith(
|
|
60
|
-
R.concat,
|
|
61
|
-
[
|
|
62
|
-
R.map(
|
|
63
|
-
R.converge((code, label) => ({ code, label }), [R.path(['value', 'id']), getAttrLabel(display)])
|
|
64
|
-
),
|
|
65
|
-
R.pipe(
|
|
66
|
-
R.flip(R.concat)(separatedUnitsFootnotes),
|
|
67
|
-
R.map(R.pipe(getAttrLabel(display), label => ({ label }))),
|
|
68
|
-
R.when(
|
|
69
|
-
R.always(unitsDisplay === 'cells' && !R.isEmpty(fullUnitsFootnote)),
|
|
70
|
-
R.append(fullUnitsFootnote)
|
|
71
|
-
),
|
|
72
|
-
res => R.concat(res, notes)
|
|
73
|
-
)
|
|
74
|
-
]
|
|
75
|
-
)(flags, footnotes);
|
|
76
|
-
};
|
|
77
|
-
|
|
78
|
-
const getSideProps = ({ attributes, indexedDimValIds }, customAttributes, metadataCoordinates) => {
|
|
79
|
-
const rejected = [...customAttributes.flags || [], ...customAttributes.notes || [], ...customAttributes.rejected || []];
|
|
80
|
-
const advancedAttributes = R.omit(rejected, attributes);
|
|
81
|
-
const hasAdvancedAttributes = !R.isEmpty(advancedAttributes);
|
|
82
|
-
const hasMetadata = hasCellMetadata(metadataCoordinates, indexedDimValIds);
|
|
83
|
-
|
|
84
|
-
return hasAdvancedAttributes || hasMetadata ? { hasAdvancedAttributes, hasMetadata, coordinates: indexedDimValIds } : null;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
export const getCells = (data, display, customAttributes, unitsProps, metadataCoordinates) => R.mapObjIndexed(
|
|
88
|
-
(observation) => R.pipe(
|
|
89
|
-
R.set(
|
|
90
|
-
R.lensProp('flags'),
|
|
91
|
-
getFlags(
|
|
92
|
-
customAttributes, dimensionValueDisplay(display), unitsProps
|
|
93
|
-
)(observation)
|
|
94
|
-
),
|
|
95
|
-
R.set(R.lensProp('intValue'), R.is(Number, observation.value) ? observation.value : null),
|
|
96
|
-
R.set(R.lensProp('value'), R.prop('formattedValue', observation)),
|
|
97
|
-
R.assoc('indexedDimValIds', R.prop('indexedDimValIds', observation)),
|
|
98
|
-
R.assoc('sideProps', getSideProps(observation, customAttributes, metadataCoordinates)),
|
|
99
|
-
R.set(R.lensProp('key'), R.prop('key', observation)),
|
|
100
|
-
)({}),
|
|
101
|
-
R.propOr({}, 'observations', data)
|
|
102
|
-
);
|