@sis-cc/dotstatsuite-components 17.13.0 → 17.15.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.
@@ -46,7 +46,7 @@ var getName = function getName(_ref) {
46
46
  start = _ref.start,
47
47
  reportYearStart = _ref.reportYearStart;
48
48
  return function (value) {
49
- if (!isTimeDimension) return (0, _dotstatsuiteSdmxjs.getRefinedName)(value);
49
+ if (!isTimeDimension) return R.prop('name')(value);
50
50
  return (0, _date.getReportedTimePeriodLabel)(options.frequency, options.timeFormat, locale)(reportYearStart, {
51
51
  id: value.id,
52
52
  reportedStart: start,
@@ -35,7 +35,7 @@ var dataTransformer = exports.dataTransformer = function dataTransformer(dataNew
35
35
  _hiddenIds = options.hiddenIds;
36
36
 
37
37
  var reportYearStart = (0, _getReportingYearStart.getReportingYearStart)(dataNew);
38
-
38
+ var getName = R.prop('name');
39
39
  //---------------------------------------------------------------------------------------Annotations
40
40
  var getStructure = R.pathOr({}, ['data', 'structure']);
41
41
  var structure = getStructure(dataNew);
@@ -56,7 +56,7 @@ var dataTransformer = exports.dataTransformer = function dataTransformer(dataNew
56
56
  var sender = getSender(meta);
57
57
 
58
58
  var resHeader = (0, _extends3.default)({}, meta, {
59
- sender: (0, _extends3.default)({}, sender, { name: (0, _dotstatsuiteSdmxjs.getRefinedName)(sender) })
59
+ sender: (0, _extends3.default)({}, sender, { name: getName(sender) })
60
60
  });
61
61
 
62
62
  //----------------------------------------------------------------------------------------Attributes
@@ -71,7 +71,7 @@ var dataTransformer = exports.dataTransformer = function dataTransformer(dataNew
71
71
  return (0, _extends3.default)({}, observation, {
72
72
  __index: index,
73
73
  display: !R.has(observation.id, hiddenIds) && !(0, _sdmxData.getIsHidden)(obsAnnotations),
74
- name: (0, _dotstatsuiteSdmxjs.getRefinedName)(observation),
74
+ name: getName(observation),
75
75
  values: (0, _getValuesEnhanced.getValuesEnhanced)({
76
76
  locale: locale,
77
77
  annotations: annotations,
@@ -89,7 +89,7 @@ var dataTransformer = exports.dataTransformer = function dataTransformer(dataNew
89
89
  var attrAnnotations = R.props(attr.annotations || [], annotations);
90
90
  return (0, _extends3.default)({}, attr, {
91
91
  display: !R.has(attr.id, hiddenIds) && !(0, _sdmxData.getIsHidden)(attrAnnotations),
92
- name: (0, _dotstatsuiteSdmxjs.getRefinedName)(attr),
92
+ name: getName(attr),
93
93
  values: (0, _getValuesEnhanced.getValuesEnhanced)({
94
94
  locale: locale,
95
95
  annotations: annotations,
@@ -134,7 +134,7 @@ var dataTransformer = exports.dataTransformer = function dataTransformer(dataNew
134
134
  observation: R.append((0, _extends3.default)({}, observation, {
135
135
  display: !isHidden,
136
136
  __index: obsIndex,
137
- name: (0, _dotstatsuiteSdmxjs.getRefinedName)(observation),
137
+ name: getName(observation),
138
138
  values: _idHidden ? [] : values,
139
139
  role: isTimeDimension ? TIME_PERIOD_ID : R.head(R.propOr([], 'roles', observation))
140
140
  }))(acc.observation),
@@ -150,7 +150,7 @@ var dataTransformer = exports.dataTransformer = function dataTransformer(dataNew
150
150
  observation = _getObservations.observation;
151
151
 
152
152
  var resStructure = (0, _extends3.default)({}, structure, {
153
- name: (0, _dotstatsuiteSdmxjs.getRefinedName)((0, _extends3.default)({}, structure, { id: options.dataflowId })),
153
+ name: getName((0, _extends3.default)({}, structure, { id: options.dataflowId })),
154
154
  annotations: annotations,
155
155
  attributes: resAttributes,
156
156
  dimensions: { observation: observation }
@@ -19,15 +19,6 @@ Object.defineProperty(exports, 'SDMX_3_0_CSV_DATA_FORMAT', {
19
19
  }
20
20
  });
21
21
 
22
- var _getSidebarData = require('./getSidebarData');
23
-
24
- Object.defineProperty(exports, 'getSidebarData', {
25
- enumerable: true,
26
- get: function get() {
27
- return _getSidebarData.getSidebarData;
28
- }
29
- });
30
-
31
22
  var _parseMetadataSeries = require('./parseMetadataSeries');
32
23
 
33
24
  Object.defineProperty(exports, 'parseMetadataSeries', {
@@ -13,8 +13,6 @@ var _ramda = require('ramda');
13
13
 
14
14
  var R = _interopRequireWildcard(_ramda);
15
15
 
16
- var _dotstatsuiteSdmxjs = require('@sis-cc/dotstatsuite-sdmxjs');
17
-
18
16
  var _constants = require('./constants');
19
17
 
20
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; } }
@@ -26,7 +24,7 @@ var dimensionValueDisplay = function dimensionValueDisplay(display) {
26
24
  if (display === 'code') {
27
25
  return R.prop('id', data);
28
26
  }
29
- var name = (0, _dotstatsuiteSdmxjs.getRefinedName)(data);
27
+ var name = R.prop('name')(data);
30
28
  if (display === 'both') {
31
29
  return R.prop('id', data) + ': ' + name;
32
30
  }
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.getLayoutData = exports.getSerieDatas = undefined;
6
+ exports.getLayoutData = exports.getSerieDataWithoutMissingLines = exports.getSerieDataWithMissingLines = undefined;
7
7
 
8
8
  var _slicedToArray2 = require('babel-runtime/helpers/slicedToArray');
9
9
 
@@ -30,10 +30,12 @@ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj;
30
30
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
31
31
 
32
32
  var getValueData = function getValueData(index, dimension, parentsIndexes) {
33
+ var missingParents = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];
33
34
  return {
34
35
  dimension: R.pick(['id', 'name', '__index'], dimension),
35
36
  value: (0, _extends3.default)({}, R.pipe(R.pathOr({}, ['values', index]), R.pick(['id', 'name']))(dimension), {
36
- parents: parentsIndexes
37
+ parents: parentsIndexes,
38
+ missingParents: missingParents
37
39
  })
38
40
  };
39
41
  };
@@ -55,8 +57,8 @@ var combinedValueDataSetter = function combinedValueDataSetter(valueData) {
55
57
  };
56
58
 
57
59
  var addValueToSerieData = function addValueToSerieData(dataSetter) {
58
- return function (index, parentsIndexes, dimension, serieData) {
59
- var valueData = getValueData(index, dimension, parentsIndexes);
60
+ return function (index, parentsIndexes, dimension, serieData, missingParents) {
61
+ var valueData = getValueData(index, dimension, parentsIndexes, missingParents);
60
62
  var valueId = R.path(['value', 'id'], valueData);
61
63
  return (0, _extends3.default)({}, serieData, {
62
64
  data: dataSetter(valueData, R.prop('data', serieData)),
@@ -92,7 +94,7 @@ var getAttributesSeries = function getAttributesSeries(validator, attributesSeri
92
94
  var attr = R.head(R.values(attrs));
93
95
  var coordinates = R.propOr({}, 'coordinates', attr);
94
96
  var isValid = validator(coordinates);
95
- if (!isValid && !attr.isObs) {
97
+ if (!isValid && !R.prop('isObs', attr)) {
96
98
  return acc;
97
99
  }
98
100
  return (0, _extends3.default)({}, acc, attrs);
@@ -128,27 +130,8 @@ var getSerieFlagsAndSideProps = function getSerieFlagsAndSideProps(coordinates,
128
130
  return { flags: flags, sideProps: sideProps };
129
131
  };
130
132
 
131
- var getSerieDatas = exports.getSerieDatas = function getSerieDatas(serie, definition, topCoordinates, attributesSeries, customAttributes, metadataCoordinates) {
132
- var lines = [];
133
-
134
- var serieCoordinates = getCoordinates(serie.indexes, topCoordinates, definition);
135
- var coordinatesValidator = (0, _utils.getLayoutCoordinatesValidator)(serieCoordinates, topCoordinates);
136
- var attributesValues = getAttributesSeries(coordinatesValidator, attributesSeries);
137
-
138
- var addMissingParentsLines = function addMissingParentsLines(dataSetter) {
139
- return function (missingParentsIndexes, parentsIndexes, dim, serieData) {
140
- return R.reduce(function (parents, index) {
141
- var missingParentData = addValueToSerieData(dataSetter)(index, parents, dim, serieData);
142
- lines.push(R.assoc('isEmpty', true, missingParentData));
143
- return R.append(index, parents);
144
- }, parentsIndexes, missingParentsIndexes);
145
- };
146
- };
147
-
148
- var addSimpleMissingParentsLines = addMissingParentsLines(simpleValueDataSetter);
149
- var addCombinedMissingParentsLines = addMissingParentsLines(combinedValueDataSetter);
150
-
151
- var serieData = R.addIndex(R.reduce)(function (onGoingSerie, entry, index) {
133
+ var getSerieDimensionsData = function getSerieDimensionsData(serie, definition, attributesValues, missingParentsGetter) {
134
+ return R.addIndex(R.reduce)(function (onGoingSerie, entry, index) {
152
135
  if (R.has('dimensions', entry)) {
153
136
  var combValuesIndexes = R.pathOr([], ['indexes', index], serie);
154
137
  var combParentsIndexes = R.pathOr([], ['parentsIndexes', index], serie);
@@ -158,33 +141,90 @@ var getSerieDatas = exports.getSerieDatas = function getSerieDatas(serie, defini
158
141
  var valueIndex = Math.abs(R.nth(dimIndex, combValuesIndexes));
159
142
  var _parentsIndexes = R.nth(dimIndex, combParentsIndexes) || [];
160
143
  var missingParentsIndexes = R.nth(dimIndex, combMissingParentsIndexes) || [];
161
- var parentsIndexes = addCombinedMissingParentsLines(missingParentsIndexes, _parentsIndexes, dimension, combSerie);
162
- var next = addCombinedValueToSerieData(valueIndex, parentsIndexes, dimension, combSerie);
144
+
145
+ var _missingParentsGetter = missingParentsGetter(combinedValueDataSetter)(missingParentsIndexes, _parentsIndexes, dimension, combSerie),
146
+ parentsIndexes = _missingParentsGetter.parentsIndexes,
147
+ missingParents = _missingParentsGetter.missingParents;
148
+
149
+ var next = addCombinedValueToSerieData(valueIndex, parentsIndexes, dimension, combSerie, missingParents);
163
150
  var value = R.pipe(R.prop('data'), R.last, R.prop('values'), R.last)(next);
164
151
  combDimValues = R.assoc(dimension.id, value, combDimValues);
165
152
  return next;
166
153
  }, R.over(R.lensProp('data'), R.append({ dimension: R.pick(['id', 'name'], entry), values: [] }))(onGoingSerie), R.propOr([], 'dimensions', entry));
167
154
 
168
- var combined = combineConcepts(combDimValues, entry, attributesValues)(res);
169
- attributesValues = R.omit(entry.concepts, attributesValues);
170
- return combined;
155
+ var combined = combineConcepts(combDimValues, entry, onGoingSerie.attributes)(res);
156
+ return R.over(R.lensProp('attributes'), R.omit(entry.concepts), combined);
171
157
  }
172
158
 
173
159
  var valueIndex = Math.abs(R.path(['indexes', index], serie));
174
160
  var _parentsIndexes = R.pathOr([], ['parentsIndexes', index], serie);
175
161
  var missingParentsIndexes = R.pathOr([], ['missingIndexes', index], serie);
176
- var parentsIndexes = addSimpleMissingParentsLines(missingParentsIndexes, _parentsIndexes, entry, onGoingSerie);
177
- return addSimpleValueToSerieData(valueIndex, parentsIndexes, entry, onGoingSerie);
178
- }, { data: [], coordinates: {}, key: '', sideProps: null, flags: [] }, definition);
179
162
 
180
- var _getSerieFlagsAndSide = getSerieFlagsAndSideProps(serieCoordinates, coordinatesValidator, attributesValues, customAttributes, metadataCoordinates),
163
+ var _missingParentsGetter2 = missingParentsGetter(simpleValueDataSetter)(missingParentsIndexes, _parentsIndexes, entry, onGoingSerie),
164
+ parentsIndexes = _missingParentsGetter2.parentsIndexes,
165
+ missingParents = _missingParentsGetter2.missingParents;
166
+
167
+ return addSimpleValueToSerieData(valueIndex, parentsIndexes, entry, onGoingSerie, missingParents);
168
+ }, { data: [], key: '', attributes: attributesValues }, definition);
169
+ };
170
+
171
+ var getSerieDataWithMissingLines = function getSerieDataWithMissingLines(serie, definition, topCoordinates, attributesSeries, customAttributes, metadataCoordinates) {
172
+ var lines = [];
173
+
174
+ var serieCoordinates = getCoordinates(serie.indexes, topCoordinates, definition);
175
+ var coordinatesValidator = (0, _utils.getLayoutCoordinatesValidator)(serieCoordinates, topCoordinates);
176
+ var attributesValues = getAttributesSeries(coordinatesValidator, attributesSeries);
177
+
178
+ var getMissingParents = function getMissingParents(dataSetter) {
179
+ return function (missingParentsIndexes, _parentsIndexes, dim, serieData) {
180
+ return R.reduce(function (acc, index) {
181
+ var missingParentData = addValueToSerieData(dataSetter)(index, acc.parentsIndexes, dim, serieData);
182
+ lines.push((0, _extends3.default)({}, R.dissoc('attributes', missingParentData), { sideProps: null, flags: [], isEmpty: true }));
183
+ return R.over(R.lensProp('parentsIndexes'), R.append(index), acc);
184
+ }, { parentsIndexes: _parentsIndexes, missingParents: [] }, missingParentsIndexes);
185
+ };
186
+ };
187
+
188
+ var _getSerieDimensionsDa = getSerieDimensionsData(serie, definition, attributesValues, getMissingParents),
189
+ attributes = _getSerieDimensionsDa.attributes,
190
+ serieData = (0, _objectWithoutProperties3.default)(_getSerieDimensionsDa, ['attributes']);
191
+
192
+ var _getSerieFlagsAndSide = getSerieFlagsAndSideProps(serieCoordinates, coordinatesValidator, attributes, customAttributes, metadataCoordinates),
181
193
  flags = _getSerieFlagsAndSide.flags,
182
194
  sideProps = _getSerieFlagsAndSide.sideProps;
183
195
 
184
- lines.push((0, _extends3.default)({}, serieData, { flags: flags, sideProps: sideProps }));
185
- return lines;
196
+ return R.append((0, _extends3.default)({}, serieData, { flags: flags, sideProps: sideProps }), lines);
197
+ };
198
+
199
+ exports.getSerieDataWithMissingLines = getSerieDataWithMissingLines;
200
+ var getSerieDataWithoutMissingLines = function getSerieDataWithoutMissingLines(serie, definition, topCoordinates, attributesSeries, customAttributes, metadataCoordinates) {
201
+ var serieCoordinates = getCoordinates(serie.indexes, topCoordinates, definition);
202
+ var coordinatesValidator = (0, _utils.getLayoutCoordinatesValidator)(serieCoordinates, topCoordinates);
203
+ var attributesValues = getAttributesSeries(coordinatesValidator, attributesSeries);
204
+
205
+ var getMissingParents = function getMissingParents() {
206
+ return function (missingParentsIndexes, _parentsIndexes, dim) {
207
+ return R.reduce(function (acc, index) {
208
+ return {
209
+ parentsIndexes: R.append(index, acc.parentsIndexes),
210
+ missingParents: R.append(R.prop('value', getValueData(index, dim, acc.parentsIndexes)), acc.missingParents)
211
+ };
212
+ }, { parentsIndexes: _parentsIndexes, missingParents: [] }, missingParentsIndexes);
213
+ };
214
+ };
215
+
216
+ var _getSerieDimensionsDa2 = getSerieDimensionsData(serie, definition, attributesValues, getMissingParents),
217
+ attributes = _getSerieDimensionsDa2.attributes,
218
+ serieData = (0, _objectWithoutProperties3.default)(_getSerieDimensionsDa2, ['attributes']);
219
+
220
+ var _getSerieFlagsAndSide2 = getSerieFlagsAndSideProps(serieCoordinates, coordinatesValidator, attributes, customAttributes, metadataCoordinates),
221
+ flags = _getSerieFlagsAndSide2.flags,
222
+ sideProps = _getSerieFlagsAndSide2.sideProps;
223
+
224
+ return (0, _extends3.default)({}, serieData, { flags: flags, sideProps: sideProps });
186
225
  };
187
226
 
227
+ exports.getSerieDataWithoutMissingLines = getSerieDataWithoutMissingLines;
188
228
  var getLayoutData = function getLayoutData(layoutIndexes, layout, _ref) {
189
229
  var metadataCoordinates = _ref.metadataCoordinates,
190
230
  attributesSeries = _ref.attributesSeries,
@@ -197,7 +237,7 @@ var getLayoutData = function getLayoutData(layoutIndexes, layout, _ref) {
197
237
 
198
238
 
199
239
  var headerData = R.reduce(function (acc, serie) {
200
- var datas = getSerieDatas(serie, layout.header, topCoordinates, attributesSeries, customAttributes, metadataCoordinates);
240
+ var datas = getSerieDataWithMissingLines(serie, layout.header, topCoordinates, attributesSeries, customAttributes, metadataCoordinates);
201
241
  return R.concat(acc, datas);
202
242
  }, [], header);
203
243
 
@@ -206,9 +246,9 @@ var getLayoutData = function getLayoutData(layoutIndexes, layout, _ref) {
206
246
  sectionSerie = _ref3[0],
207
247
  rowsSeries = _ref3[1];
208
248
 
209
- var sectionData = getSerieDatas(sectionSerie, layout.sections, topCoordinates, attributesSeries, customAttributes, metadataCoordinates);
210
- return [R.last(sectionData), R.reduce(function (acc, serie) {
211
- var datas = getSerieDatas(serie, layout.rows, sectionData.coordinates, attributesSeries, customAttributes, metadataCoordinates);
249
+ var sectionData = getSerieDataWithoutMissingLines(sectionSerie, layout.sections, topCoordinates, attributesSeries, customAttributes, metadataCoordinates, false);
250
+ return [sectionData, R.reduce(function (acc, serie) {
251
+ var datas = getSerieDataWithMissingLines(serie, layout.rows, R.propOr(topCoordinates, 'coordinates', sectionData), attributesSeries, customAttributes, metadataCoordinates);
212
252
  return R.concat(acc, datas);
213
253
  }, [], rowsSeries)];
214
254
  }, sections);
@@ -13,6 +13,14 @@ var _set = require('babel-runtime/core-js/set');
13
13
 
14
14
  var _set2 = _interopRequireDefault(_set);
15
15
 
16
+ var _extends2 = require('babel-runtime/helpers/extends');
17
+
18
+ var _extends3 = _interopRequireDefault(_extends2);
19
+
20
+ var _objectWithoutProperties2 = require('babel-runtime/helpers/objectWithoutProperties');
21
+
22
+ var _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2);
23
+
16
24
  var _ramda = require('ramda');
17
25
 
18
26
  var R = _interopRequireWildcard(_ramda);
@@ -21,76 +29,81 @@ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj;
21
29
 
22
30
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
31
 
32
+ var registerParsedIndexes = function registerParsedIndexes(_ref, register) {
33
+ var isSameSerie = _ref.isSameSerie,
34
+ parsed = (0, _objectWithoutProperties3.default)(_ref, ['isSameSerie']);
35
+
36
+ var merged = R.mergeWith(function (a, b) {
37
+ return R.append(a || [], b);
38
+ }, parsed, register);
39
+ return (0, _extends3.default)({}, merged, { isSameSerie: isSameSerie });
40
+ };
41
+
24
42
  var parseSerieIndexesHierarchies = function parseSerieIndexesHierarchies(serieIndexes, previousSerie, dimensions) {
25
- var isSameSerie = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
43
+ var defaultIsSameSerie = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
26
44
 
27
45
  return R.addIndex(R.reduce)(function (acc, _valueIndex, dimensionIndex) {
28
46
  if (R.is(Array, _valueIndex)) {
29
- var previous = R.isEmpty(previousSerie) ? {} : {
30
- indexes: R.nth(dimensionIndex, previousSerie.indexes || []),
31
- parentsIndexes: R.nth(dimensionIndex, previousSerie.parentsIndexes || []),
32
- missingIndexes: R.nth(dimensionIndex, previousSerie.missingIndexes || []),
33
- registeredIndexes: R.nth(dimensionIndex, previousSerie.registeredIndexes || [])
34
- };
47
+ var previous = R.isEmpty(previousSerie) ? {} : R.map(R.nth(dimensionIndex), previousSerie);
35
48
  var parsed = parseSerieIndexesHierarchies(_valueIndex, previous, R.pathOr([], [dimensionIndex, 'dimensions'], dimensions), acc.isSameSerie);
36
- return {
37
- parentsIndexes: R.append(parsed.parentsIndexes, acc.parentsIndexes),
38
- missingIndexes: R.append(parsed.missingIndexes, acc.missingIndexes),
39
- registeredIndexes: R.append(parsed.registeredIndexes, acc.registeredIndexes),
40
- isSameSerie: parsed.isSameSerie
41
- };
49
+ return registerParsedIndexes(parsed, acc);
42
50
  }
43
51
  var valueIndex = Math.abs(_valueIndex);
44
- var _parentsIndexes = R.pathOr([], [dimensionIndex, 'values', valueIndex, 'parents'], dimensions);
52
+ var parents = R.pathOr([], [dimensionIndex, 'values', valueIndex, 'parents'], dimensions);
45
53
  var previousIndex = acc.isSameSerie ? R.pathOr(-1, ['indexes', dimensionIndex], previousSerie) : -1;
46
54
  var previousRegisteredIndexes = acc.isSameSerie ? R.pathOr(new _set2.default(), ['registeredIndexes', dimensionIndex], previousSerie) : new _set2.default();
47
55
  var registeredIndexes = new _set2.default(previousRegisteredIndexes);
48
56
 
49
- var _R$reduce = R.reduce(function (_acc, ind) {
50
- if (previousRegisteredIndexes.has(ind)) {
51
- return R.over(R.lensIndex(0), R.append(ind), _acc);
52
- } else if (ind > previousIndex && R.pathOr(false, [dimensionIndex, 'values', ind, 'isSelected'], dimensions)) {
53
- registeredIndexes.add(ind);
54
- return R.over(R.lensIndex(1), R.append(ind), _acc);
57
+ var _R$reduce = R.reduce(function (_acc, i) {
58
+ if (previousRegisteredIndexes.has(i)) {
59
+ return R.over(R.lensProp('presentParentsIndexes'), function (p) {
60
+ return R.isNil(p) ? [i] : R.append(i, p);
61
+ }, _acc);
62
+ } else if (i > previousIndex && R.pathOr(false, [dimensionIndex, 'values', i, 'isSelected'], dimensions)) {
63
+ registeredIndexes.add(i);
64
+ return R.over(R.lensProp('missingParentsIndexes'), function (m) {
65
+ return R.isNil(m) ? [i] : R.append(i, m);
66
+ }, _acc);
55
67
  }
56
68
  return _acc;
57
- }, [[], []], _parentsIndexes),
58
- _R$reduce2 = (0, _slicedToArray3.default)(_R$reduce, 2),
59
- parentsIndexes = _R$reduce2[0],
60
- missingParentsIndexes = _R$reduce2[1];
69
+ }, {}, parents),
70
+ presentParentsIndexes = _R$reduce.presentParentsIndexes,
71
+ missingParentsIndexes = _R$reduce.missingParentsIndexes;
61
72
 
62
73
  registeredIndexes.add(valueIndex);
63
- return {
64
- parentsIndexes: R.append(parentsIndexes, acc.parentsIndexes),
65
- missingIndexes: R.append(missingParentsIndexes, acc.missingIndexes),
66
- registeredIndexes: R.append(registeredIndexes, acc.registeredIndexes),
67
- isSameSerie: acc.isSameSerie && valueIndex === previousIndex
68
- };
69
- }, { parentsIndexes: [], missingIndexes: [], registeredIndexes: [], isSameSerie: isSameSerie }, serieIndexes);
74
+ return registerParsedIndexes({ parentsIndexes: presentParentsIndexes, missingIndexes: missingParentsIndexes, registeredIndexes: registeredIndexes, isSameSerie: acc.isSameSerie && valueIndex === previousIndex }, acc);
75
+ }, { parentsIndexes: [], missingIndexes: [], registeredIndexes: [], isSameSerie: defaultIsSameSerie }, serieIndexes);
70
76
  };
71
77
 
72
- var parseSeriesIndexesHierarchies = exports.parseSeriesIndexesHierarchies = function parseSeriesIndexesHierarchies(seriesIndexes, dimensions) {
78
+ var parseSeriesIndexesHierarchies = function parseSeriesIndexesHierarchies(seriesIndexes, dimensions) {
73
79
  return R.reduce(function (acc, serieIndexes) {
74
80
  var previousSerie = R.last(acc) || {};
75
81
 
76
82
  var _parseSerieIndexesHie = parseSerieIndexesHierarchies(serieIndexes, previousSerie, dimensions),
77
- parentsIndexes = _parseSerieIndexesHie.parentsIndexes,
78
- missingIndexes = _parseSerieIndexesHie.missingIndexes,
79
- registeredIndexes = _parseSerieIndexesHie.registeredIndexes;
83
+ isSameSerie = _parseSerieIndexesHie.isSameSerie,
84
+ parsed = (0, _objectWithoutProperties3.default)(_parseSerieIndexesHie, ['isSameSerie']);
80
85
 
81
- return R.append({ indexes: serieIndexes, parentsIndexes: parentsIndexes, missingIndexes: missingIndexes, registeredIndexes: registeredIndexes }, acc);
86
+ return R.append(R.assoc('indexes', serieIndexes, parsed), acc);
82
87
  }, [], seriesIndexes);
83
88
  };
84
89
 
90
+ exports.parseSeriesIndexesHierarchies = parseSeriesIndexesHierarchies;
85
91
  var parseLayoutIndexesHierarchies = exports.parseLayoutIndexesHierarchies = function parseLayoutIndexesHierarchies(layoutIndexes, layout) {
86
92
  var header = parseSeriesIndexesHierarchies(layoutIndexes.header, layout.header);
87
- var sections = R.map(function (_ref) {
88
- var _ref2 = (0, _slicedToArray3.default)(_ref, 2),
89
- sectionIndexes = _ref2[0],
90
- rowsIndexes = _ref2[1];
93
+ var sections = R.pipe(R.transpose, function (_ref2) {
94
+ var _ref3 = (0, _slicedToArray3.default)(_ref2, 2),
95
+ _sections = _ref3[0],
96
+ _sectionsRows = _ref3[1];
91
97
 
92
- return [{ indexes: sectionIndexes, parentsIndexes: [], missingIndexes: [] }, parseSeriesIndexesHierarchies(rowsIndexes, layout.rows)];
93
- }, layoutIndexes.sections);
98
+ if (R.isNil(_sections)) {
99
+ return [];
100
+ }
101
+ var sections = parseSeriesIndexesHierarchies(_sections, layout.sections);
102
+ var sectionsRows = R.map(function (rows) {
103
+ return parseSeriesIndexesHierarchies(rows, layout.rows);
104
+ }, _sectionsRows);
105
+ return R.transpose([sections, sectionsRows]);
106
+ })(layoutIndexes.sections);
94
107
 
95
108
  return { header: header, sections: sections };
96
109
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@sis-cc/dotstatsuite-components",
3
3
  "description": "Set components based on React.",
4
- "version": "17.13.0",
4
+ "version": "17.15.0",
5
5
  "main": "lib/index.js",
6
6
  "author": "OECD",
7
7
  "license": "MIT",
@@ -1,6 +1,6 @@
1
1
  import * as R from 'ramda';
2
2
  import dateFns from 'date-fns';
3
- import { getCodeOrder, getRefinedName } from '@sis-cc/dotstatsuite-sdmxjs';
3
+ import { getCodeOrder } from '@sis-cc/dotstatsuite-sdmxjs';
4
4
  import { getIsHidden } from './sdmx-data';
5
5
  import {
6
6
  getReportedTimePeriodLabel,
@@ -21,18 +21,18 @@ const getId = (value, fallbackId) => {
21
21
 
22
22
  const getName =
23
23
  ({ isTimeDimension, options, locale, start, reportYearStart }) =>
24
- (value) => {
25
- if (!isTimeDimension) return getRefinedName(value);
26
- return getReportedTimePeriodLabel(
27
- options.frequency,
28
- options.timeFormat,
29
- locale,
30
- )(reportYearStart, {
31
- id: value.id,
32
- reportedStart: start,
33
- start: new Date(value.start),
34
- });
35
- };
24
+ (value) => {
25
+ if (!isTimeDimension) return R.prop('name')(value);
26
+ return getReportedTimePeriodLabel(
27
+ options.frequency,
28
+ options.timeFormat,
29
+ locale,
30
+ )(reportYearStart, {
31
+ id: value.id,
32
+ reportedStart: start,
33
+ start: new Date(value.start),
34
+ });
35
+ };
36
36
 
37
37
  export const getValuesEnhanced = ({
38
38
  locale = '',
@@ -115,23 +115,23 @@ const defaultSorts = [byIndexPosition, byOrder];
115
115
 
116
116
  const getTimePeriodAttributes =
117
117
  ({ reportYearStart, options }) =>
118
- (value) => {
119
- const reported = getReportedTimePeriod(
120
- reportYearStart,
121
- value,
122
- options.frequency,
123
- );
124
- const start = reported.start;
125
- const end = reported.end;
126
- const reportTimeNote = getReportedTimePeriodNote(
127
- reportYearStart,
128
- start,
129
- end,
130
- options.frequency,
131
- options.isRtl,
132
- );
133
- const notes = R.isNil(reportTimeNote)
134
- ? []
135
- : R.append(reportTimeNote, []);
136
- return { start, notes };
137
- };
118
+ (value) => {
119
+ const reported = getReportedTimePeriod(
120
+ reportYearStart,
121
+ value,
122
+ options.frequency,
123
+ );
124
+ const start = reported.start;
125
+ const end = reported.end;
126
+ const reportTimeNote = getReportedTimePeriodNote(
127
+ reportYearStart,
128
+ start,
129
+ end,
130
+ options.frequency,
131
+ options.isRtl,
132
+ );
133
+ const notes = R.isNil(reportTimeNote)
134
+ ? []
135
+ : R.append(reportTimeNote, []);
136
+ return { start, notes };
137
+ };
@@ -1,6 +1,5 @@
1
1
  import * as R from 'ramda';
2
2
  import {
3
- getRefinedName,
4
3
  isTimePeriodDimension,
5
4
  } from '@sis-cc/dotstatsuite-sdmxjs';
6
5
  import {
@@ -17,7 +16,7 @@ const TIME_PERIOD_ID = 'TIME_PERIOD';
17
16
  export const dataTransformer = (dataNew, options = {}) => {
18
17
  const { locale, hiddenIds: _hiddenIds } = options;
19
18
  const reportYearStart = getReportingYearStart(dataNew);
20
-
19
+ const getName = R.prop('name')
21
20
  //---------------------------------------------------------------------------------------Annotations
22
21
  const getStructure = R.pathOr({}, ['data', 'structure']);
23
22
  const structure = getStructure(dataNew);
@@ -42,7 +41,7 @@ export const dataTransformer = (dataNew, options = {}) => {
42
41
 
43
42
  const resHeader = {
44
43
  ...meta,
45
- sender: { ...sender, name: getRefinedName(sender) },
44
+ sender: { ...sender, name: getName(sender) },
46
45
  };
47
46
 
48
47
  //----------------------------------------------------------------------------------------Attributes
@@ -59,7 +58,7 @@ export const dataTransformer = (dataNew, options = {}) => {
59
58
  __index: index,
60
59
  display:
61
60
  !R.has(observation.id, hiddenIds) && !getIsHidden(obsAnnotations),
62
- name: getRefinedName(observation),
61
+ name: getName(observation),
63
62
  values: getValuesEnhanced({
64
63
  locale,
65
64
  annotations,
@@ -78,7 +77,7 @@ export const dataTransformer = (dataNew, options = {}) => {
78
77
  return {
79
78
  ...attr,
80
79
  display: !R.has(attr.id, hiddenIds) && !getIsHidden(attrAnnotations),
81
- name: getRefinedName(attr),
80
+ name: getName(attr),
82
81
  values: getValuesEnhanced({
83
82
  locale,
84
83
  annotations,
@@ -131,7 +130,7 @@ export const dataTransformer = (dataNew, options = {}) => {
131
130
  ...observation,
132
131
  display: !isHidden,
133
132
  __index: obsIndex,
134
- name: getRefinedName(observation),
133
+ name: getName(observation),
135
134
  values: _idHidden ? [] : values,
136
135
  role: isTimeDimension
137
136
  ? TIME_PERIOD_ID
@@ -151,7 +150,7 @@ export const dataTransformer = (dataNew, options = {}) => {
151
150
  getObservations(locale)(dimObservations);
152
151
  const resStructure = {
153
152
  ...structure,
154
- name: getRefinedName({ ...structure, id: options.dataflowId }),
153
+ name: getName({ ...structure, id: options.dataflowId }),
155
154
  annotations,
156
155
  attributes: resAttributes,
157
156
  dimensions: { observation },
@@ -3,7 +3,6 @@ export {
3
3
  SDMX_3_0_CSV_DATA_FORMAT
4
4
  } from './constants';
5
5
 
6
- export { getSidebarData } from './getSidebarData';
7
6
  export { parseMetadataSeries } from './parseMetadataSeries';
8
7
  export { sdmx_3_0_DataFormatPatch } from './sdmx3.0DataFormatPatch';
9
8
  export { getDataflowTooltipAttributesIds } from './getDataflowTooltipAttributesIds';
@@ -1,13 +1,12 @@
1
1
  import * as R from 'ramda';
2
- import { getRefinedName } from '@sis-cc/dotstatsuite-sdmxjs';
3
2
  import { EMPTY_ATTACHMENT_LEVEL_CHAR } from './constants';
4
3
 
5
4
  const dimensionValueDisplay = (display) => data => {
6
5
  if (display === 'code') {
7
6
  return R.prop('id', data);
8
7
  }
9
- const name = getRefinedName(data);
10
- if (display === 'both') {
8
+ const name = R.prop('name')(data);
9
+ if (display === 'both') {
11
10
  return `${R.prop('id', data)}: ${name}`;
12
11
  }
13
12
  return name;
@@ -110,9 +109,9 @@ export const parseMetadataSeries = (metadataJson, options) => {
110
109
 
111
110
  return R.assoc(evolvedKey, attributes, acc);
112
111
  },
113
- {},
114
- R.keys(series)
115
- ))(metadataJson);
112
+ {},
113
+ R.keys(series)
114
+ ))(metadataJson);
116
115
 
117
116
  return metadataSeries;
118
117
  };