@sis-cc/dotstatsuite-components 20.5.0 → 21.0.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/.gitlab-ci.yml +3 -2
- package/LICENSE +1 -1
- package/README.md +1 -17
- package/package.json +20 -14
- package/src/bridge-d3-react/src/react-chart-factory.js +1 -2
- package/src/rules/src/factories/sample-series.js +1 -1
- package/src/rules/src/index.js +14 -13
- package/src/rules/src/observation-formater.js +0 -1
- package/src/rules/src/properties/focus.js +3 -3
- package/src/rules/src/sdmx-data/index.js +2 -0
- package/src/rules2/src/hierarchiseDimensionWithNativeHierarchy2.js +5 -1
- package/src/rules2/src/table/getLayoutData2.js +4 -1
- package/src/viewer/src/index.js +4 -5
- package/src/viewer/src/legends/AxisLegend.js +0 -7
- package/src/viewer/src/legends/FocusLegend.js +2 -10
- package/src/viewer/src/legends/Legend.js +0 -6
- package/src/viewer/src/legends/SeriesLegend.js +0 -7
- package/test/hierarchiseDimensionWithNativeHierarchy2.test.js +59 -32
- package/vite.config.mjs +51 -0
- package/lib/app.js +0 -22
- package/lib/bridge-d3-react/src/app.js +0 -98
- package/lib/bridge-d3-react/src/index.js +0 -33
- package/lib/bridge-d3-react/src/mock-choro.js +0 -41
- package/lib/bridge-d3-react/src/react-chart-factory.js +0 -103
- package/lib/index.js +0 -41
- package/lib/rules/src/chart/getAxisOptions.js +0 -206
- package/lib/rules/src/chart/getBaseOptions.js +0 -51
- package/lib/rules/src/chart/getChartOptions.js +0 -106
- package/lib/rules/src/chart/getGridOptions.js +0 -21
- package/lib/rules/src/chart/getTooltipOptions.js +0 -84
- package/lib/rules/src/constants.js +0 -68
- package/lib/rules/src/date.js +0 -180
- package/lib/rules/src/dimension-utils.js +0 -67
- package/lib/rules/src/factories/choro-series.js +0 -99
- package/lib/rules/src/factories/sample-focus.js +0 -64
- package/lib/rules/src/factories/sample-series.js +0 -90
- package/lib/rules/src/factories/scatter-dimension.js +0 -72
- package/lib/rules/src/factories/scatter-focus.js +0 -77
- package/lib/rules/src/factories/scatter-series.js +0 -145
- package/lib/rules/src/factories/stacked-dimension.js +0 -42
- package/lib/rules/src/factories/stacked-series.js +0 -166
- package/lib/rules/src/factories/symbol-dimension.js +0 -69
- package/lib/rules/src/factories/symbol-series.js +0 -119
- package/lib/rules/src/factories/timeline-focus.js +0 -38
- package/lib/rules/src/factories/timeline-series.js +0 -121
- package/lib/rules/src/get-values-enhanced.js +0 -141
- package/lib/rules/src/header/getDefaultSubtitle.js +0 -50
- package/lib/rules/src/header/getHeaderUnits.js +0 -26
- package/lib/rules/src/header/getSubtitleFlags.js +0 -53
- package/lib/rules/src/header/getTitleFlags.js +0 -24
- package/lib/rules/src/header/index.js +0 -41
- package/lib/rules/src/index.js +0 -714
- package/lib/rules/src/layout.js +0 -98
- package/lib/rules/src/observation-formater.js +0 -112
- package/lib/rules/src/preparators/enhanceObservations.js +0 -142
- package/lib/rules/src/preparators/formatValue.js +0 -83
- package/lib/rules/src/preparators/getObservations.js +0 -27
- package/lib/rules/src/preparators/getReportingYearStart.js +0 -52
- package/lib/rules/src/properties/errors.js +0 -31
- package/lib/rules/src/properties/focus.js +0 -90
- package/lib/rules/src/properties/getAvailableChartTypes.js +0 -30
- package/lib/rules/src/properties/getHeaderProps.js +0 -83
- package/lib/rules/src/properties/getInformationsStateFromNewProps.js +0 -61
- package/lib/rules/src/properties/getObservationsType.js +0 -31
- package/lib/rules/src/properties/getStringifiedSubtitle.js +0 -18
- package/lib/rules/src/properties/index.js +0 -401
- package/lib/rules/src/properties/information.js +0 -79
- package/lib/rules/src/properties/linear.js +0 -158
- package/lib/rules/src/properties/scatter.js +0 -174
- package/lib/rules/src/properties/stacked.js +0 -133
- package/lib/rules/src/properties/symbol.js +0 -96
- package/lib/rules/src/properties/utils.js +0 -126
- package/lib/rules/src/sdmx-data/index.js +0 -55
- package/lib/rules/src/table/factories/getCellValue.js +0 -57
- package/lib/rules/src/table/index.js +0 -14
- package/lib/rules/src/v8-transformer.js +0 -184
- package/lib/rules/test/extractSdmxArtefacts.js +0 -37
- package/lib/rules/test/get-values-enhanced.test.js +0 -128
- package/lib/rules/test/oecd-HEALTH_PROT-parsed.js +0 -303
- package/lib/rules/test/scatter-property.js +0 -403
- package/lib/rules/test/stacked-property.js +0 -244
- package/lib/rules/test/symbol-property.js +0 -234
- package/lib/rules/test/v8-transformer.test.js +0 -82
- package/lib/rules2/src/applyHierarchicalCodesToDim.js +0 -175
- package/lib/rules2/src/combinedValuesDisplay.js +0 -71
- package/lib/rules2/src/constants.js +0 -11
- package/lib/rules2/src/duplicateObservations.js +0 -39
- package/lib/rules2/src/enhanceObservations.js +0 -103
- package/lib/rules2/src/getAdvAttrSeriesAtCoordinates.js +0 -39
- package/lib/rules2/src/getAttributesSeries.js +0 -40
- package/lib/rules2/src/getCombinationDefinitions.js +0 -72
- package/lib/rules2/src/getDataflowAttributes.js +0 -34
- package/lib/rules2/src/getDataflowTooltipAttributesIds.js +0 -38
- package/lib/rules2/src/getDimensionValuesIndexes.js +0 -19
- package/lib/rules2/src/getHCodelistsRefsInData.js +0 -49
- package/lib/rules2/src/getHeaderCombinations.js +0 -51
- package/lib/rules2/src/getHeaderCoordinates.js +0 -18
- package/lib/rules2/src/getHeaderSubtitle.js +0 -41
- package/lib/rules2/src/getHeaderTitle.js +0 -29
- package/lib/rules2/src/getMSDInformations.js +0 -43
- package/lib/rules2/src/getManyValuesDimensions.js +0 -39
- package/lib/rules2/src/getMetadataCoordinates.js +0 -40
- package/lib/rules2/src/getMetadataStructureFromData.js +0 -23
- package/lib/rules2/src/getNotDisplayedIds.js +0 -58
- package/lib/rules2/src/getOneValueDimensions.js +0 -48
- package/lib/rules2/src/getSeriesCombinations.js +0 -33
- package/lib/rules2/src/hasCellMetadata.js +0 -22
- package/lib/rules2/src/hierarchiseDimensionWithAdvancedHierarchy2.js +0 -65
- package/lib/rules2/src/hierarchiseDimensionWithNativeHierarchy2.js +0 -36
- package/lib/rules2/src/index.js +0 -443
- package/lib/rules2/src/parseAttributes.js +0 -51
- package/lib/rules2/src/parseCombinations.js +0 -96
- package/lib/rules2/src/parseHierarchicalCodelist.js +0 -57
- package/lib/rules2/src/parseMetadataSeries.js +0 -119
- package/lib/rules2/src/prepareData.js +0 -113
- package/lib/rules2/src/refineAttributes.js +0 -32
- package/lib/rules2/src/refineDimensions.js +0 -38
- package/lib/rules2/src/refineMetadataCoordinates.js +0 -35
- package/lib/rules2/src/refineTimePeriod.js +0 -154
- package/lib/rules2/src/sdmx3.0DataFormatPatch.js +0 -20
- package/lib/rules2/src/table/declineObservationsOverAttributes.js +0 -43
- package/lib/rules2/src/table/getCells.js +0 -90
- package/lib/rules2/src/table/getCellsAttributesIds.js +0 -63
- package/lib/rules2/src/table/getCellsMetadataCoordinates.js +0 -30
- package/lib/rules2/src/table/getCombinationDimensionsData.js +0 -48
- package/lib/rules2/src/table/getCuratedCells.js +0 -28
- package/lib/rules2/src/table/getFlagsAndNotes.js +0 -30
- package/lib/rules2/src/table/getIndexedCombinationsByDisplay.js +0 -31
- package/lib/rules2/src/table/getLayout.js +0 -105
- package/lib/rules2/src/table/getLayoutData2.js +0 -269
- package/lib/rules2/src/table/getSortedLayoutIndexes.js +0 -136
- package/lib/rules2/src/table/getTableLabelAccessor.js +0 -20
- package/lib/rules2/src/table/getTableLayoutIds.js +0 -365
- package/lib/rules2/src/table/getTableProps.js +0 -96
- package/lib/rules2/src/table/parseSeriesIndexesHierarchies.js +0 -124
- package/lib/rules2/src/table/parseValueHierarchy.js +0 -63
- package/lib/rules2/src/table/refineLayoutSize2.js +0 -293
- package/lib/rules2/src/utils.js +0 -48
- package/lib/viewer/mocks/bar.js +0 -21
- package/lib/viewer/mocks/gpp-symbol.js +0 -55
- package/lib/viewer/mocks/gpp-time.js +0 -1023
- package/lib/viewer/mocks/row.js +0 -26
- package/lib/viewer/mocks/scatter.js +0 -84
- package/lib/viewer/mocks/stack.js +0 -93
- package/lib/viewer/src/app/leg.js +0 -101
- package/lib/viewer/src/app/nodata-res.js +0 -40
- package/lib/viewer/src/app/nodata-sized.js +0 -41
- package/lib/viewer/src/app/one-table-cell.js +0 -75
- package/lib/viewer/src/app/table.js +0 -300
- package/lib/viewer/src/app/use-case-1.js +0 -60
- package/lib/viewer/src/app/use-case-2.js +0 -82
- package/lib/viewer/src/app/use-case-3.js +0 -52
- package/lib/viewer/src/app.js +0 -162
- package/lib/viewer/src/chart.js +0 -82
- package/lib/viewer/src/chartUtils/options.js +0 -30
- package/lib/viewer/src/chartUtils/series.js +0 -63
- package/lib/viewer/src/footer.js +0 -54
- package/lib/viewer/src/header.js +0 -29
- package/lib/viewer/src/index.js +0 -243
- package/lib/viewer/src/legends/AxisLegend.js +0 -84
- package/lib/viewer/src/legends/ChartLegends.js +0 -100
- package/lib/viewer/src/legends/FocusLegend.js +0 -89
- package/lib/viewer/src/legends/Legend.js +0 -88
- package/lib/viewer/src/legends/SeriesLegend.js +0 -108
- package/lib/viewer/src/utils.js +0 -36
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getHCodelistsRefsInData = exports.getHCodelistsRefs = undefined;
|
|
7
|
-
|
|
8
|
-
var _slicedToArray2 = require('babel-runtime/helpers/slicedToArray');
|
|
9
|
-
|
|
10
|
-
var _slicedToArray3 = _interopRequireDefault(_slicedToArray2);
|
|
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 getHCodelistsRefs = exports.getHCodelistsRefs = function getHCodelistsRefs(annotations) {
|
|
21
|
-
return R.reduce(function (acc, annotation) {
|
|
22
|
-
if (annotation.type !== 'HIER_CONTEXT') {
|
|
23
|
-
return acc;
|
|
24
|
-
}
|
|
25
|
-
var references = annotation.text || annotation.title || '';
|
|
26
|
-
var refs = R.pipe(R.split(','), R.reduce(function (acc2, ref) {
|
|
27
|
-
var match = ref.match(/([\w@_.]+):([\w@_.]+):([\w@_.]+)\(([\d.]+)\).([\w@_.]+)$/);
|
|
28
|
-
if (R.isNil(match)) {
|
|
29
|
-
return acc2;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
var _R$tail = R.tail(match),
|
|
33
|
-
_R$tail2 = (0, _slicedToArray3.default)(_R$tail, 5),
|
|
34
|
-
codelistId = _R$tail2[0],
|
|
35
|
-
agencyId = _R$tail2[1],
|
|
36
|
-
code = _R$tail2[2],
|
|
37
|
-
version = _R$tail2[3],
|
|
38
|
-
hierarchy = _R$tail2[4];
|
|
39
|
-
|
|
40
|
-
return R.assoc(codelistId, { agencyId: agencyId, code: code, version: version, hierarchy: hierarchy, codelistId: codelistId }, acc2);
|
|
41
|
-
}, {}))(references);
|
|
42
|
-
return R.mergeRight(acc, refs);
|
|
43
|
-
}, {}, annotations);
|
|
44
|
-
};
|
|
45
|
-
|
|
46
|
-
var getHCodelistsRefsInData = exports.getHCodelistsRefsInData = function getHCodelistsRefsInData(sdmxJson) {
|
|
47
|
-
var annotations = R.pathOr([], ['data', 'structure', 'annotations'], sdmxJson);
|
|
48
|
-
return getHCodelistsRefs(annotations);
|
|
49
|
-
};
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getHeaderCombinations = undefined;
|
|
7
|
-
|
|
8
|
-
var _ramda = require('ramda');
|
|
9
|
-
|
|
10
|
-
var R = _interopRequireWildcard(_ramda);
|
|
11
|
-
|
|
12
|
-
var _src = require('../../rules/src');
|
|
13
|
-
|
|
14
|
-
var _combinedValuesDisplay = require('./combinedValuesDisplay');
|
|
15
|
-
|
|
16
|
-
var _constants = require('./constants');
|
|
17
|
-
|
|
18
|
-
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; } }
|
|
19
|
-
|
|
20
|
-
var getHeaderCombinations = exports.getHeaderCombinations = function getHeaderCombinations(combinations, dimensions, attributes, display) {
|
|
21
|
-
var indexedDimensions = R.indexBy(R.prop('id'), dimensions);
|
|
22
|
-
var indexedAttributes = R.indexBy(R.prop('id'), attributes);
|
|
23
|
-
return R.reduce(function (acc, comb) {
|
|
24
|
-
if (!R.prop('header', comb) || !R.propOr(true, 'display', comb)) {
|
|
25
|
-
return acc;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
var header = (0, _src.dimensionValueDisplay)(display)(comb) + ':';
|
|
29
|
-
|
|
30
|
-
var label = R.pipe(R.reduce(function (_acc, concept) {
|
|
31
|
-
var artefact = R.has(concept, indexedDimensions) ? R.prop(concept, indexedDimensions) : R.prop(concept, indexedAttributes);
|
|
32
|
-
if (R.isNil(artefact)) {
|
|
33
|
-
return _acc;
|
|
34
|
-
}
|
|
35
|
-
var value = R.path(['values', 0], artefact);
|
|
36
|
-
if (R.isNil(value)) {
|
|
37
|
-
return _acc;
|
|
38
|
-
}
|
|
39
|
-
if (R.has(concept, indexedAttributes) && (!R.propOr(true, 'display', value) || !R.propOr(true, 'artefact', value) || R.includes(value.id, _constants.REJECTED_VALUE_IDS))) {
|
|
40
|
-
return _acc;
|
|
41
|
-
}
|
|
42
|
-
return R.append(value, _acc);
|
|
43
|
-
}, []), function (values) {
|
|
44
|
-
return (0, _combinedValuesDisplay.combinedValuesDisplay)(display, values);
|
|
45
|
-
})(comb.concepts || []);
|
|
46
|
-
if (R.isEmpty(label)) {
|
|
47
|
-
return acc;
|
|
48
|
-
}
|
|
49
|
-
return R.append({ header: header, label: label }, acc);
|
|
50
|
-
}, [], combinations);
|
|
51
|
-
};
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getHeaderCoordinates = 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 getHeaderCoordinates = exports.getHeaderCoordinates = function getHeaderCoordinates(oneValueDimensions) {
|
|
15
|
-
return R.reduce(function (acc, dim) {
|
|
16
|
-
return R.assoc(dim.id, R.path(['values', 0, 'id'], dim), acc);
|
|
17
|
-
}, {}, oneValueDimensions);
|
|
18
|
-
};
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getHeaderSubtitle = undefined;
|
|
7
|
-
|
|
8
|
-
var _ramda = require('ramda');
|
|
9
|
-
|
|
10
|
-
var R = _interopRequireWildcard(_ramda);
|
|
11
|
-
|
|
12
|
-
var _getFlagsAndNotes = require('./table/getFlagsAndNotes');
|
|
13
|
-
|
|
14
|
-
var _src = require('../../rules/src/');
|
|
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
|
-
var getHeaderSubtitle = exports.getHeaderSubtitle = function getHeaderSubtitle(dimensions, combinations, customAttributes, display, microdataDimension) {
|
|
19
|
-
var combinationsConepts = R.pipe(R.pluck('concepts'), R.unnest)(combinations);
|
|
20
|
-
var DEFAULT_REJECTED_SUBTITLE_IDS = ['_L', '_T', '_Z'];
|
|
21
|
-
|
|
22
|
-
return R.reduce(function (acc, dim) {
|
|
23
|
-
if (!R.propOr(true, 'display', dim) || R.propEq('id', microdataDimension, dim) || R.includes(dim.id, combinationsConepts)) {
|
|
24
|
-
return acc;
|
|
25
|
-
}
|
|
26
|
-
var value = R.path(['values', 0], dim);
|
|
27
|
-
if (!R.propOr(true, 'display', value) || R.includes(value.id, DEFAULT_REJECTED_SUBTITLE_IDS)) {
|
|
28
|
-
return acc;
|
|
29
|
-
}
|
|
30
|
-
var header = (0, _src.dimensionValueDisplay)(display)(dim) + ':';
|
|
31
|
-
var label = (0, _src.dimensionValueDisplay)(display)(value);
|
|
32
|
-
var flags = R.pipe(_getFlagsAndNotes.getFlagsAndNotes, R.map(function (entry) {
|
|
33
|
-
return {
|
|
34
|
-
code: entry.code,
|
|
35
|
-
header: (0, _src.dimensionValueDisplay)(display)(entry) + ':',
|
|
36
|
-
label: (0, _src.dimensionValueDisplay)(display)(entry.value)
|
|
37
|
-
};
|
|
38
|
-
}))(dim.attrValues, customAttributes);
|
|
39
|
-
return R.append({ header: header, label: label, flags: flags }, acc);
|
|
40
|
-
}, [], dimensions);
|
|
41
|
-
};
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getHeaderTitle = undefined;
|
|
7
|
-
|
|
8
|
-
var _ramda = require('ramda');
|
|
9
|
-
|
|
10
|
-
var R = _interopRequireWildcard(_ramda);
|
|
11
|
-
|
|
12
|
-
var _src = require('../../rules/src');
|
|
13
|
-
|
|
14
|
-
var _getFlagsAndNotes = require('./table/getFlagsAndNotes');
|
|
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
|
-
var getHeaderTitle = exports.getHeaderTitle = function getHeaderTitle(dataflow, attributes, display, customAttributes) {
|
|
19
|
-
return {
|
|
20
|
-
label: (0, _src.dimensionValueDisplay)(display)(dataflow),
|
|
21
|
-
flags: R.pipe(_getFlagsAndNotes.getFlagsAndNotes, R.map(function (entry) {
|
|
22
|
-
return {
|
|
23
|
-
code: entry.code,
|
|
24
|
-
header: (0, _src.dimensionValueDisplay)(display)(entry) + ':',
|
|
25
|
-
label: (0, _src.dimensionValueDisplay)(display)(entry.value)
|
|
26
|
-
};
|
|
27
|
-
}))(attributes, customAttributes)
|
|
28
|
-
};
|
|
29
|
-
};
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getMSDInformations = undefined;
|
|
7
|
-
|
|
8
|
-
var _defineProperty2 = require('babel-runtime/helpers/defineProperty');
|
|
9
|
-
|
|
10
|
-
var _defineProperty3 = _interopRequireDefault(_defineProperty2);
|
|
11
|
-
|
|
12
|
-
var _extends3 = require('babel-runtime/helpers/extends');
|
|
13
|
-
|
|
14
|
-
var _extends4 = _interopRequireDefault(_extends3);
|
|
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 getMSDInformations = exports.getMSDInformations = function getMSDInformations(msdJson) {
|
|
25
|
-
var attributesDefinitions = R.pathOr([], ['data', 'metadataStructures', 0, 'metadataStructureComponents', 'reportStructures', 0, 'metadataAttributes'], msdJson);
|
|
26
|
-
var indexedConcepts = R.pipe(R.pathOr([], ['data', 'conceptSchemes', 0, 'concepts']), R.indexBy(R.prop('id')))(msdJson);
|
|
27
|
-
|
|
28
|
-
var parseAttributes = function parseAttributes(parent) {
|
|
29
|
-
return R.reduce(function (acc, attribute) {
|
|
30
|
-
var id = attribute.id;
|
|
31
|
-
var name = R.path([id, 'name'], indexedConcepts);
|
|
32
|
-
var hierarchicalId = parent === '#ROOT' ? id : parent + '.' + id;
|
|
33
|
-
var format = R.path(['localRepresentation', 'textFormat', 'textType'], attribute);
|
|
34
|
-
if (R.has('metadataAttributes', attribute)) {
|
|
35
|
-
var collection = parseAttributes(hierarchicalId)(attribute.metadataAttributes);
|
|
36
|
-
return (0, _extends4.default)({}, acc, collection, (0, _defineProperty3.default)({}, hierarchicalId, { format: format, parent: parent, id: id, name: name }));
|
|
37
|
-
}
|
|
38
|
-
return R.assoc(hierarchicalId, { format: format, parent: parent, id: id, name: name }, acc);
|
|
39
|
-
}, {});
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
return { attributes: parseAttributes('#ROOT')(attributesDefinitions) };
|
|
43
|
-
};
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getManyValuesDimensions = 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
|
-
var _getFlagsAndNotes = require('./table/getFlagsAndNotes');
|
|
17
|
-
|
|
18
|
-
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; } }
|
|
19
|
-
|
|
20
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
|
-
|
|
22
|
-
var getManyValuesDimensions = exports.getManyValuesDimensions = function getManyValuesDimensions(dimensions, attributesSeries, customAttributes, combinations) {
|
|
23
|
-
var combConceptsIds = R.pipe(R.pluck('concepts'), R.unnest)(combinations);
|
|
24
|
-
return R.reduce(function (acc, dim) {
|
|
25
|
-
if (dim.header || !R.length(dim.values)) {
|
|
26
|
-
return acc;
|
|
27
|
-
}
|
|
28
|
-
var enhancedValues = R.map(function (val) {
|
|
29
|
-
var attrSeries = R.propOr({}, dim.id + '=' + val.id, attributesSeries);
|
|
30
|
-
if (R.isEmpty(attrSeries)) {
|
|
31
|
-
return val;
|
|
32
|
-
}
|
|
33
|
-
var flags = (0, _getFlagsAndNotes.getFlagsAndNotes)(attrSeries, customAttributes);
|
|
34
|
-
var hasAdvancedAttributes = R.pipe(R.omit(R.unnest([customAttributes.flags || [], customAttributes.notes || [], combConceptsIds])), R.complement(R.isEmpty))(attrSeries);
|
|
35
|
-
return (0, _extends3.default)({}, val, { flags: flags, hasAdvancedAttributes: hasAdvancedAttributes });
|
|
36
|
-
}, dim.values);
|
|
37
|
-
return R.append(R.assoc('values', enhancedValues, dim), acc);
|
|
38
|
-
}, [], dimensions);
|
|
39
|
-
};
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getMetadataCoordinates = 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 getMetadataCoordinates = exports.getMetadataCoordinates = function getMetadataCoordinates(sdmxJson) {
|
|
15
|
-
var dimensions = R.pathOr([], ['data', 'structure', 'dimensions', 'observation'], sdmxJson);
|
|
16
|
-
var annotations = R.pathOr([], ['data', 'structure', 'annotations'], sdmxJson);
|
|
17
|
-
var metadataAvailKeys = R.pipe(R.pathOr([], ['data', 'dataSets', 0, 'dimensionGroupAttributes']), R.map(function (indexes) {
|
|
18
|
-
return R.props(indexes, annotations);
|
|
19
|
-
}), R.filter(R.find(function (a) {
|
|
20
|
-
return a && R.propEq('type', 'HAS_METADATA', a);
|
|
21
|
-
})), R.keys)(sdmxJson);
|
|
22
|
-
|
|
23
|
-
return R.map(function (key) {
|
|
24
|
-
var indexes = R.split(':', key);
|
|
25
|
-
return R.addIndex(R.reduce)(function (acc, vIndex, dimIndex) {
|
|
26
|
-
if (R.isNil(vIndex) || R.isEmpty(vIndex)) {
|
|
27
|
-
return acc;
|
|
28
|
-
}
|
|
29
|
-
var dim = R.nth(dimIndex, dimensions);
|
|
30
|
-
if (R.isNil(dim)) {
|
|
31
|
-
return acc;
|
|
32
|
-
}
|
|
33
|
-
var val = R.path(['values', Number(vIndex)], dim);
|
|
34
|
-
if (R.isNil(val)) {
|
|
35
|
-
return acc;
|
|
36
|
-
}
|
|
37
|
-
return R.assoc(dim.id, val.id, acc);
|
|
38
|
-
}, {}, indexes);
|
|
39
|
-
}, metadataAvailKeys);
|
|
40
|
-
};
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getDataflowMetadataStructure = 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 getDataflowMetadataStructure = exports.getDataflowMetadataStructure = function getDataflowMetadataStructure(sdmxJson) {
|
|
15
|
-
var annotations = R.pathOr([], ['data', 'stucture', 'annotations'], sdmxJson);
|
|
16
|
-
var dataSetAnnotIndexes = R.pathOr([], ['data', 'dataSets', 0, 'annotations'], sdmxJson);
|
|
17
|
-
var dataSetAnnotations = R.props(dataSetAnnotIndexes, annotations);
|
|
18
|
-
var metadataAnnotation = R.find(R.propEq('type', 'METADATA'), dataSetAnnotations);
|
|
19
|
-
if (!metadataAnnotation) {
|
|
20
|
-
return null;
|
|
21
|
-
}
|
|
22
|
-
return R.pipe(R.propOr('', 'title'), R.split('='), R.last)(metadataAnnotation);
|
|
23
|
-
};
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getNotDisplayedIds = 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 getNotDisplayedValues = function getNotDisplayedValues(annot) {
|
|
17
|
-
if (R.isNil(annot)) {
|
|
18
|
-
return {};
|
|
19
|
-
}
|
|
20
|
-
var ids = R.split(',', annot.title || '');
|
|
21
|
-
return R.reduce(function (acc, entry) {
|
|
22
|
-
if (R.isEmpty(entry)) {
|
|
23
|
-
return acc;
|
|
24
|
-
}
|
|
25
|
-
var parsed = R.split('=', entry);
|
|
26
|
-
var dimensionId = parsed[0];
|
|
27
|
-
if (R.length(parsed) === 1) {
|
|
28
|
-
return R.assoc(dimensionId, dimensionId, acc);
|
|
29
|
-
}
|
|
30
|
-
var values = R.split('+', parsed[1]);
|
|
31
|
-
if (R.length(values) === 1 && R.isEmpty(values[0])) {
|
|
32
|
-
return R.assoc(dimensionId, dimensionId, acc);
|
|
33
|
-
}
|
|
34
|
-
return R.reduce(function (_acc, val) {
|
|
35
|
-
var _val = val;
|
|
36
|
-
if (R.isEmpty(val)) {
|
|
37
|
-
return _acc;
|
|
38
|
-
}
|
|
39
|
-
if (R.test('/[()]/')) {
|
|
40
|
-
_val = R.replace(/[()]/g, '')(val);
|
|
41
|
-
}
|
|
42
|
-
var key = R.isEmpty(_val) ? dimensionId : dimensionId + '.' + _val;
|
|
43
|
-
return R.assoc(key, key, _acc);
|
|
44
|
-
}, acc, values);
|
|
45
|
-
}, {}, ids);
|
|
46
|
-
};
|
|
47
|
-
|
|
48
|
-
var getNotDisplayedIds = exports.getNotDisplayedIds = function getNotDisplayedIds(annotations) {
|
|
49
|
-
return R.pipe(R.find(R.propEq('type', 'NOT_DISPLAYED')), R.converge(function (hiddenValues, hiddenCombinations) {
|
|
50
|
-
return {
|
|
51
|
-
hiddenValues: hiddenValues,
|
|
52
|
-
hiddenCombinations: hiddenCombinations
|
|
53
|
-
};
|
|
54
|
-
}, [getNotDisplayedValues, function () {
|
|
55
|
-
var annot = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : { title: '' };
|
|
56
|
-
return (0, _dotstatsuiteSdmxjs.getNotDisplayedCombinations)(annot);
|
|
57
|
-
}]))(annotations);
|
|
58
|
-
};
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getOneValueDimensions = undefined;
|
|
7
|
-
|
|
8
|
-
var _defineProperty2 = require('babel-runtime/helpers/defineProperty');
|
|
9
|
-
|
|
10
|
-
var _defineProperty3 = _interopRequireDefault(_defineProperty2);
|
|
11
|
-
|
|
12
|
-
var _extends3 = require('babel-runtime/helpers/extends');
|
|
13
|
-
|
|
14
|
-
var _extends4 = _interopRequireDefault(_extends3);
|
|
15
|
-
|
|
16
|
-
var _ramda = require('ramda');
|
|
17
|
-
|
|
18
|
-
var R = _interopRequireWildcard(_ramda);
|
|
19
|
-
|
|
20
|
-
var _constants = require('./constants');
|
|
21
|
-
|
|
22
|
-
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; } }
|
|
23
|
-
|
|
24
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
-
|
|
26
|
-
var getOneValueDimensions = exports.getOneValueDimensions = function getOneValueDimensions(dimensions, attributes) {
|
|
27
|
-
var indexedRelevantAttributes = R.reduce(function (acc, attr) {
|
|
28
|
-
if (!attr.header || !R.propOr(true, 'display', attr) || R.length(attr.relationship || []) !== 1) {
|
|
29
|
-
return acc;
|
|
30
|
-
}
|
|
31
|
-
var value = R.path(['values', 0], attr);
|
|
32
|
-
if (R.isNil(value) || !R.propOr(true, 'display', value) || R.includes(R.prop('id', value), _constants.REJECTED_VALUE_IDS)) {
|
|
33
|
-
return acc;
|
|
34
|
-
}
|
|
35
|
-
var dim = R.head(attr.relationship);
|
|
36
|
-
return R.over(R.lensProp(dim), function () {
|
|
37
|
-
var values = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
38
|
-
return (0, _extends4.default)({}, values, (0, _defineProperty3.default)({}, attr.id, (0, _extends4.default)({}, attr, { value: value })));
|
|
39
|
-
})(acc);
|
|
40
|
-
}, {}, attributes);
|
|
41
|
-
return R.reduce(function (acc, dim) {
|
|
42
|
-
if (!dim.header) {
|
|
43
|
-
return acc;
|
|
44
|
-
}
|
|
45
|
-
var attrValues = R.propOr({}, dim.id, indexedRelevantAttributes);
|
|
46
|
-
return R.append((0, _extends4.default)({}, dim, { attrValues: attrValues }), acc);
|
|
47
|
-
}, [], dimensions);
|
|
48
|
-
};
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getSeriesCombinations = 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 getSeriesCombinations = exports.getSeriesCombinations = function getSeriesCombinations(combinations, oneValuesDimensions) {
|
|
21
|
-
var indexedValues = R.reduce(function (acc, dim) {
|
|
22
|
-
var value = R.head(dim.values);
|
|
23
|
-
return R.assoc(dim.id, value, acc);
|
|
24
|
-
}, {}, oneValuesDimensions);
|
|
25
|
-
|
|
26
|
-
return R.reduce(function (acc, comb) {
|
|
27
|
-
if (!R.prop('series', comb)) {
|
|
28
|
-
return acc;
|
|
29
|
-
}
|
|
30
|
-
var fixedDimValues = R.pick(comb.concepts, indexedValues);
|
|
31
|
-
return R.append((0, _extends3.default)({}, comb, { fixedDimValues: fixedDimValues }), acc);
|
|
32
|
-
}, [], combinations);
|
|
33
|
-
};
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.hasCellMetadata = 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 hasCellMetadata = exports.hasCellMetadata = function hasCellMetadata(metadataCoordinates, cellCoordinates) {
|
|
15
|
-
if (R.propOr('OBS_VALUE', 'OBS_ATTRIBUTES', cellCoordinates) !== 'OBS_VALUE') {
|
|
16
|
-
return false;
|
|
17
|
-
}
|
|
18
|
-
return R.pipe(R.find(function (coordinates) {
|
|
19
|
-
var mergedCoord = R.mergeLeft(coordinates, cellCoordinates);
|
|
20
|
-
return !R.isEmpty(coordinates) && R.equals(mergedCoord, cellCoordinates);
|
|
21
|
-
}), R.complement(R.isNil))(metadataCoordinates);
|
|
22
|
-
};
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.refinePartialHierarchy = 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 uniq = R.pipe(R.reduce(function (_ref, id) {
|
|
21
|
-
var ids = _ref.ids,
|
|
22
|
-
list = _ref.list;
|
|
23
|
-
|
|
24
|
-
if (R.has(id, list)) {
|
|
25
|
-
return { ids: ids, list: list };
|
|
26
|
-
}
|
|
27
|
-
return { ids: R.append(id, ids), list: R.assoc(id, id, list) };
|
|
28
|
-
}, { ids: [], list: {} }), R.prop('ids'));
|
|
29
|
-
|
|
30
|
-
var refinePartialHierarchy = exports.refinePartialHierarchy = function refinePartialHierarchy(hier, indexed) {
|
|
31
|
-
var _R$pipe = R.pipe(R.keys, R.reduce(function (_ref2, key) {
|
|
32
|
-
var intact = _ref2.intact,
|
|
33
|
-
broken = _ref2.broken;
|
|
34
|
-
|
|
35
|
-
var ids = R.filter(function (id) {
|
|
36
|
-
return R.has(id, indexed);
|
|
37
|
-
}, hier[key]);
|
|
38
|
-
if (key === '#ROOT') {
|
|
39
|
-
return { broken: broken, intact: R.assoc(key, ids, intact) };
|
|
40
|
-
}
|
|
41
|
-
var splitKey = R.split('.', key);
|
|
42
|
-
var filtered = R.takeLastWhile(function (id) {
|
|
43
|
-
return R.has(id, indexed);
|
|
44
|
-
}, splitKey);
|
|
45
|
-
if (R.length(filtered) === R.length(splitKey)) {
|
|
46
|
-
return { broken: broken, intact: R.assoc(key, ids, intact) };
|
|
47
|
-
}
|
|
48
|
-
var refinedKey = R.isEmpty(filtered) ? '#ROOT' : R.join('.', filtered);
|
|
49
|
-
return {
|
|
50
|
-
intact: intact,
|
|
51
|
-
broken: R.over(R.lensProp(refinedKey), R.ifElse(R.isNil, R.always([ids]), R.append(ids)))(broken)
|
|
52
|
-
};
|
|
53
|
-
}, { intact: {}, broken: {} }))(hier),
|
|
54
|
-
intact = _R$pipe.intact,
|
|
55
|
-
broken = _R$pipe.broken;
|
|
56
|
-
|
|
57
|
-
var intactIds = R.pipe(R.values, R.unnest)(intact);
|
|
58
|
-
var refinedBroken = R.pipe(R.omit(intactIds), R.over(R.lensProp('#ROOT'), R.pipe(function (i) {
|
|
59
|
-
return R.isNil(i) ? [] : i;
|
|
60
|
-
}, R.unnest, R.reject(R.flip(R.includes)(intactIds)))), R.map(R.pipe(R.unnest, uniq)))(broken);
|
|
61
|
-
|
|
62
|
-
return (0, _extends3.default)({}, refinedBroken, intact, {
|
|
63
|
-
'#ROOT': R.concat(refinedBroken['#ROOT'], intact['#ROOT'])
|
|
64
|
-
});
|
|
65
|
-
};
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.hierarchiseDimensionWithNativeHierarchy = 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 hierarchiseDimensionWithNativeHierarchy = exports.hierarchiseDimensionWithNativeHierarchy = function hierarchiseDimensionWithNativeHierarchy(dimension) {
|
|
15
|
-
var values = R.sortBy(R.prop('__indexPosition'), dimension.values || []);
|
|
16
|
-
var indexed = R.indexBy(R.prop('id'), values);
|
|
17
|
-
var grouped = R.groupBy(function (val) {
|
|
18
|
-
return val.parent && R.has(val.parent, indexed) ? val.parent : '#ROOT';
|
|
19
|
-
}, values);
|
|
20
|
-
|
|
21
|
-
var index = -1;
|
|
22
|
-
var getChildren = function getChildren(_ref) {
|
|
23
|
-
var parentsIndexes = _ref.parentsIndexes,
|
|
24
|
-
parentId = _ref.parentId;
|
|
25
|
-
|
|
26
|
-
var childs = R.propOr([], parentId, grouped);
|
|
27
|
-
return R.reduce(function (acc, child) {
|
|
28
|
-
index = index + 1;
|
|
29
|
-
var refined = R.pipe(R.assoc('__indexPosition', index), R.assoc('parents', parentsIndexes), R.assoc('parent', R.isEmpty(parentsIndexes) ? undefined : parentId))(child);
|
|
30
|
-
var children = getChildren({ parentsIndexes: R.append(index, parentsIndexes), parentId: child.id });
|
|
31
|
-
return R.concat(acc, R.prepend(refined, children));
|
|
32
|
-
}, [], childs);
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
return R.set(R.lensProp('values'), getChildren({ parentsIndexes: [], parentId: '#ROOT' }))(dimension);
|
|
36
|
-
};
|