@sis-cc/dotstatsuite-components 20.6.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.
Files changed (161) hide show
  1. package/.gitlab-ci.yml +3 -2
  2. package/README.md +1 -17
  3. package/package.json +20 -14
  4. package/src/bridge-d3-react/src/react-chart-factory.js +1 -2
  5. package/src/rules/src/factories/sample-series.js +1 -1
  6. package/src/rules/src/index.js +14 -13
  7. package/src/rules/src/observation-formater.js +0 -1
  8. package/src/rules/src/properties/focus.js +3 -3
  9. package/src/rules/src/sdmx-data/index.js +2 -0
  10. package/src/viewer/src/index.js +4 -5
  11. package/src/viewer/src/legends/AxisLegend.js +0 -7
  12. package/src/viewer/src/legends/FocusLegend.js +2 -10
  13. package/src/viewer/src/legends/Legend.js +0 -6
  14. package/src/viewer/src/legends/SeriesLegend.js +0 -7
  15. package/vite.config.mjs +51 -0
  16. package/lib/app.js +0 -22
  17. package/lib/bridge-d3-react/src/app.js +0 -98
  18. package/lib/bridge-d3-react/src/index.js +0 -33
  19. package/lib/bridge-d3-react/src/mock-choro.js +0 -41
  20. package/lib/bridge-d3-react/src/react-chart-factory.js +0 -103
  21. package/lib/index.js +0 -41
  22. package/lib/rules/src/chart/getAxisOptions.js +0 -206
  23. package/lib/rules/src/chart/getBaseOptions.js +0 -51
  24. package/lib/rules/src/chart/getChartOptions.js +0 -106
  25. package/lib/rules/src/chart/getGridOptions.js +0 -21
  26. package/lib/rules/src/chart/getTooltipOptions.js +0 -84
  27. package/lib/rules/src/constants.js +0 -68
  28. package/lib/rules/src/date.js +0 -180
  29. package/lib/rules/src/dimension-utils.js +0 -67
  30. package/lib/rules/src/factories/choro-series.js +0 -99
  31. package/lib/rules/src/factories/sample-focus.js +0 -64
  32. package/lib/rules/src/factories/sample-series.js +0 -90
  33. package/lib/rules/src/factories/scatter-dimension.js +0 -72
  34. package/lib/rules/src/factories/scatter-focus.js +0 -77
  35. package/lib/rules/src/factories/scatter-series.js +0 -145
  36. package/lib/rules/src/factories/stacked-dimension.js +0 -42
  37. package/lib/rules/src/factories/stacked-series.js +0 -166
  38. package/lib/rules/src/factories/symbol-dimension.js +0 -69
  39. package/lib/rules/src/factories/symbol-series.js +0 -119
  40. package/lib/rules/src/factories/timeline-focus.js +0 -38
  41. package/lib/rules/src/factories/timeline-series.js +0 -121
  42. package/lib/rules/src/get-values-enhanced.js +0 -141
  43. package/lib/rules/src/header/getDefaultSubtitle.js +0 -50
  44. package/lib/rules/src/header/getHeaderUnits.js +0 -26
  45. package/lib/rules/src/header/getSubtitleFlags.js +0 -53
  46. package/lib/rules/src/header/getTitleFlags.js +0 -24
  47. package/lib/rules/src/header/index.js +0 -41
  48. package/lib/rules/src/index.js +0 -714
  49. package/lib/rules/src/layout.js +0 -98
  50. package/lib/rules/src/observation-formater.js +0 -112
  51. package/lib/rules/src/preparators/enhanceObservations.js +0 -142
  52. package/lib/rules/src/preparators/formatValue.js +0 -83
  53. package/lib/rules/src/preparators/getObservations.js +0 -27
  54. package/lib/rules/src/preparators/getReportingYearStart.js +0 -52
  55. package/lib/rules/src/properties/errors.js +0 -31
  56. package/lib/rules/src/properties/focus.js +0 -90
  57. package/lib/rules/src/properties/getAvailableChartTypes.js +0 -30
  58. package/lib/rules/src/properties/getHeaderProps.js +0 -83
  59. package/lib/rules/src/properties/getInformationsStateFromNewProps.js +0 -61
  60. package/lib/rules/src/properties/getObservationsType.js +0 -31
  61. package/lib/rules/src/properties/getStringifiedSubtitle.js +0 -18
  62. package/lib/rules/src/properties/index.js +0 -401
  63. package/lib/rules/src/properties/information.js +0 -79
  64. package/lib/rules/src/properties/linear.js +0 -158
  65. package/lib/rules/src/properties/scatter.js +0 -174
  66. package/lib/rules/src/properties/stacked.js +0 -133
  67. package/lib/rules/src/properties/symbol.js +0 -96
  68. package/lib/rules/src/properties/utils.js +0 -126
  69. package/lib/rules/src/sdmx-data/index.js +0 -55
  70. package/lib/rules/src/table/factories/getCellValue.js +0 -57
  71. package/lib/rules/src/table/index.js +0 -14
  72. package/lib/rules/src/v8-transformer.js +0 -184
  73. package/lib/rules/test/extractSdmxArtefacts.js +0 -37
  74. package/lib/rules/test/get-values-enhanced.test.js +0 -128
  75. package/lib/rules/test/oecd-HEALTH_PROT-parsed.js +0 -303
  76. package/lib/rules/test/scatter-property.js +0 -403
  77. package/lib/rules/test/stacked-property.js +0 -244
  78. package/lib/rules/test/symbol-property.js +0 -234
  79. package/lib/rules/test/v8-transformer.test.js +0 -82
  80. package/lib/rules2/src/applyHierarchicalCodesToDim.js +0 -175
  81. package/lib/rules2/src/combinedValuesDisplay.js +0 -71
  82. package/lib/rules2/src/constants.js +0 -11
  83. package/lib/rules2/src/duplicateObservations.js +0 -39
  84. package/lib/rules2/src/enhanceObservations.js +0 -103
  85. package/lib/rules2/src/getAdvAttrSeriesAtCoordinates.js +0 -39
  86. package/lib/rules2/src/getAttributesSeries.js +0 -40
  87. package/lib/rules2/src/getCombinationDefinitions.js +0 -72
  88. package/lib/rules2/src/getDataflowAttributes.js +0 -34
  89. package/lib/rules2/src/getDataflowTooltipAttributesIds.js +0 -38
  90. package/lib/rules2/src/getDimensionValuesIndexes.js +0 -19
  91. package/lib/rules2/src/getHCodelistsRefsInData.js +0 -49
  92. package/lib/rules2/src/getHeaderCombinations.js +0 -51
  93. package/lib/rules2/src/getHeaderCoordinates.js +0 -18
  94. package/lib/rules2/src/getHeaderSubtitle.js +0 -41
  95. package/lib/rules2/src/getHeaderTitle.js +0 -29
  96. package/lib/rules2/src/getMSDInformations.js +0 -43
  97. package/lib/rules2/src/getManyValuesDimensions.js +0 -39
  98. package/lib/rules2/src/getMetadataCoordinates.js +0 -40
  99. package/lib/rules2/src/getMetadataStructureFromData.js +0 -23
  100. package/lib/rules2/src/getNotDisplayedIds.js +0 -58
  101. package/lib/rules2/src/getOneValueDimensions.js +0 -48
  102. package/lib/rules2/src/getSeriesCombinations.js +0 -33
  103. package/lib/rules2/src/hasCellMetadata.js +0 -22
  104. package/lib/rules2/src/hierarchiseDimensionWithAdvancedHierarchy2.js +0 -65
  105. package/lib/rules2/src/hierarchiseDimensionWithNativeHierarchy2.js +0 -39
  106. package/lib/rules2/src/index.js +0 -443
  107. package/lib/rules2/src/parseAttributes.js +0 -51
  108. package/lib/rules2/src/parseCombinations.js +0 -96
  109. package/lib/rules2/src/parseHierarchicalCodelist.js +0 -57
  110. package/lib/rules2/src/parseMetadataSeries.js +0 -119
  111. package/lib/rules2/src/prepareData.js +0 -113
  112. package/lib/rules2/src/refineAttributes.js +0 -32
  113. package/lib/rules2/src/refineDimensions.js +0 -38
  114. package/lib/rules2/src/refineMetadataCoordinates.js +0 -35
  115. package/lib/rules2/src/refineTimePeriod.js +0 -154
  116. package/lib/rules2/src/sdmx3.0DataFormatPatch.js +0 -20
  117. package/lib/rules2/src/table/declineObservationsOverAttributes.js +0 -43
  118. package/lib/rules2/src/table/getCells.js +0 -90
  119. package/lib/rules2/src/table/getCellsAttributesIds.js +0 -63
  120. package/lib/rules2/src/table/getCellsMetadataCoordinates.js +0 -30
  121. package/lib/rules2/src/table/getCombinationDimensionsData.js +0 -48
  122. package/lib/rules2/src/table/getCuratedCells.js +0 -28
  123. package/lib/rules2/src/table/getFlagsAndNotes.js +0 -30
  124. package/lib/rules2/src/table/getIndexedCombinationsByDisplay.js +0 -31
  125. package/lib/rules2/src/table/getLayout.js +0 -105
  126. package/lib/rules2/src/table/getLayoutData2.js +0 -269
  127. package/lib/rules2/src/table/getSortedLayoutIndexes.js +0 -136
  128. package/lib/rules2/src/table/getTableLabelAccessor.js +0 -20
  129. package/lib/rules2/src/table/getTableLayoutIds.js +0 -365
  130. package/lib/rules2/src/table/getTableProps.js +0 -96
  131. package/lib/rules2/src/table/parseSeriesIndexesHierarchies.js +0 -124
  132. package/lib/rules2/src/table/parseValueHierarchy.js +0 -63
  133. package/lib/rules2/src/table/refineLayoutSize2.js +0 -293
  134. package/lib/rules2/src/utils.js +0 -48
  135. package/lib/viewer/mocks/bar.js +0 -21
  136. package/lib/viewer/mocks/gpp-symbol.js +0 -55
  137. package/lib/viewer/mocks/gpp-time.js +0 -1023
  138. package/lib/viewer/mocks/row.js +0 -26
  139. package/lib/viewer/mocks/scatter.js +0 -84
  140. package/lib/viewer/mocks/stack.js +0 -93
  141. package/lib/viewer/src/app/leg.js +0 -101
  142. package/lib/viewer/src/app/nodata-res.js +0 -40
  143. package/lib/viewer/src/app/nodata-sized.js +0 -41
  144. package/lib/viewer/src/app/one-table-cell.js +0 -75
  145. package/lib/viewer/src/app/table.js +0 -300
  146. package/lib/viewer/src/app/use-case-1.js +0 -60
  147. package/lib/viewer/src/app/use-case-2.js +0 -82
  148. package/lib/viewer/src/app/use-case-3.js +0 -52
  149. package/lib/viewer/src/app.js +0 -162
  150. package/lib/viewer/src/chart.js +0 -82
  151. package/lib/viewer/src/chartUtils/options.js +0 -30
  152. package/lib/viewer/src/chartUtils/series.js +0 -63
  153. package/lib/viewer/src/footer.js +0 -54
  154. package/lib/viewer/src/header.js +0 -29
  155. package/lib/viewer/src/index.js +0 -243
  156. package/lib/viewer/src/legends/AxisLegend.js +0 -84
  157. package/lib/viewer/src/legends/ChartLegends.js +0 -100
  158. package/lib/viewer/src/legends/FocusLegend.js +0 -89
  159. package/lib/viewer/src/legends/Legend.js +0 -88
  160. package/lib/viewer/src/legends/SeriesLegend.js +0 -108
  161. package/lib/viewer/src/utils.js +0 -36
@@ -1,55 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getIsHidden = exports.hiddenFormat = exports.getRelationnalAnnotations = exports.setAnnotationsLayout = exports.LAYOUT_ROW_SECTION = exports.LAYOUT_COLUMN = exports.LAYOUT_ROW = 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 LAYOUT_ROW = exports.LAYOUT_ROW = 'LAYOUT_ROW';
15
- var LAYOUT_COLUMN = exports.LAYOUT_COLUMN = 'LAYOUT_COLUMN';
16
- var LAYOUT_ROW_SECTION = exports.LAYOUT_ROW_SECTION = 'LAYOUT_ROW_SECTION';
17
-
18
- var ROWS = 'rows';
19
- var HEADER = 'header';
20
- var SECTIONS = 'sections';
21
-
22
- var ORDER = 'ORDER';
23
- var NOT_DISPLAYED = 'NOT_DISPLAYED';
24
-
25
- var getType = R.propOr({}, 'type');
26
- var getIds = function getIds() {
27
- var stringIds = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
28
- return R.pipe(R.append(R.split(',', stringIds)), R.flatten);
29
- };
30
- var getPivot = function getPivot(key, stringIds) {
31
- return R.over(R.lensProp(key), getIds(stringIds));
32
- };
33
-
34
- var setAnnotationsLayout = exports.setAnnotationsLayout = function setAnnotationsLayout(stringIds, layout) {
35
- return R.reduce(function (acc, annotation) {
36
- if (R.equals(getType(annotation), LAYOUT_ROW)) return getPivot(ROWS, stringIds)(acc);
37
- if (R.equals(getType(annotation), LAYOUT_COLUMN)) return getPivot(HEADER, stringIds)(acc);
38
- if (R.equals(getType(annotation), LAYOUT_ROW_SECTION)) return getPivot(SECTIONS, stringIds)(acc);
39
- return acc;
40
- }, layout);
41
- };
42
-
43
- var getRelationnalAnnotations = exports.getRelationnalAnnotations = function getRelationnalAnnotations(annotationIndexes) {
44
- return function (annotations) {
45
- return R.map(function (annotationIndex) {
46
- return R.propOr({}, annotationIndex)(annotations);
47
- })(annotationIndexes);
48
- };
49
- };
50
-
51
- var hiddenFormat = exports.hiddenFormat = { isHidden: true };
52
-
53
- var getIsHidden = exports.getIsHidden = function getIsHidden(annotations) {
54
- return R.pipe(R.find(R.propEq('type', NOT_DISPLAYED)), R.complement(R.isNil))(annotations);
55
- };
@@ -1,57 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getCellValue = undefined;
7
-
8
- var _ramda = require('ramda');
9
-
10
- var R = _interopRequireWildcard(_ramda);
11
-
12
- var _numeral = require('numeral');
13
-
14
- var _numeral2 = _interopRequireDefault(_numeral);
15
-
16
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
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 isValidNumber = R.both(R.is(Number), R.complement(R.equals(NaN)));
21
-
22
- var getCellValue = exports.getCellValue = function getCellValue(observation) {
23
- var value = R.prop('value', observation);
24
- if (R.is(Boolean, value)) {
25
- return value;
26
- }
27
- if (R.is(String, value)) {
28
- var monthMatch = value.match(/^\-\-([\d]{2})$/);
29
- if (R.is(Array, monthMatch)) {
30
- return R.nth(1, monthMatch);
31
- }
32
- var monthDayMatch = value.match(/^\-\-([\d]{2}\-[\d]{2})$/);
33
- if (R.is(Array, monthDayMatch)) {
34
- return R.nth(1, monthDayMatch);
35
- }
36
- var dayMatch = value.match(/^\-\-\-([\d]{2})$/);
37
- if (R.is(Array, dayMatch)) {
38
- return R.nth(1, dayMatch);
39
- }
40
- return value;
41
- }
42
- var scale = Number(observation.prefscale);
43
- var formatScale = R.ifElse(R.always(isValidNumber(scale)), function (value) {
44
- return (0, _numeral2.default)(value).multiply(Math.pow(10, -1 * Number(scale))).value();
45
- }, R.identity);
46
- var formatSeparator = function formatSeparator(value) {
47
- return (0, _numeral2.default)(value).format('0,0.[0000000]');
48
- };
49
- var decimals = Number(observation.decimals);
50
- var formatDecimals = R.ifElse(R.always(isValidNumber(decimals)), function (value) {
51
- return (0, _numeral2.default)(value).format(R.ifElse(R.equals(0), R.always('0,0'), function (d) {
52
- return '0,0.' + R.join('', R.times(R.always('0'), d));
53
- })(decimals));
54
- }, formatSeparator);
55
- var res = R.ifElse(isValidNumber, R.pipe(formatScale, formatDecimals), R.always('..'))(observation.value);
56
- return res;
57
- };
@@ -1,14 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
-
7
- var _getCellValue = require('./factories/getCellValue');
8
-
9
- Object.defineProperty(exports, 'getCellValue', {
10
- enumerable: true,
11
- get: function get() {
12
- return _getCellValue.getCellValue;
13
- }
14
- });
@@ -1,184 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.dataTransformer = 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 _dotstatsuiteSdmxjs = require('@sis-cc/dotstatsuite-sdmxjs');
17
-
18
- var _sdmxData = require('./sdmx-data');
19
-
20
- var _getReportingYearStart = require('./preparators/getReportingYearStart');
21
-
22
- var _src = require('../../rules2/src');
23
-
24
- var _getValuesEnhanced = require('./get-values-enhanced');
25
-
26
- 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; } }
27
-
28
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29
-
30
- var TIME_PERIOD_ID = 'TIME_PERIOD';
31
-
32
- var dataTransformer = exports.dataTransformer = function dataTransformer(dataNew) {
33
- var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
34
- var locale = options.locale;
35
-
36
- var reportYearStart = (0, _getReportingYearStart.getReportingYearStart)(dataNew);
37
- var getName = R.prop('name');
38
- //---------------------------------------------------------------------------------------Annotations
39
- var getStructure = R.pathOr({}, ['data', 'structure']);
40
- var structure = getStructure(dataNew);
41
- var getAnnotations = R.propOr([], 'annotations');
42
- var annotations = getAnnotations(structure);
43
- var getDataSets = R.pathOr({}, ['data', 'dataSets']);
44
- var dataSets = getDataSets(dataNew);
45
-
46
- var dataSetsAnnotations = R.props(R.pathOr([], [0, 'annotations'], dataSets), annotations);
47
-
48
- /*
49
- hiddenValues => codelistIds or codelistValuesIds for display computation
50
- hiddenCombinations => used only for dimensions, if dimension values match the provided set, all dimension is removed
51
- */
52
-
53
- var _getNotDisplayedIds = (0, _src.getNotDisplayedIds)(dataSetsAnnotations),
54
- hiddenValues = _getNotDisplayedIds.hiddenValues,
55
- hiddenCombinations = _getNotDisplayedIds.hiddenCombinations;
56
-
57
- var getIsAllDimHidden = function getIsAllDimHidden(_ref) {
58
- var id = _ref.id,
59
- values = _ref.values;
60
-
61
- if (!R.has(id, hiddenCombinations)) {
62
- return false;
63
- }
64
- var valuesIds = R.pluck('id', values);
65
- return R.isEmpty(R.difference(valuesIds, hiddenCombinations[id]));
66
- };
67
-
68
- //--------------------------------------------------------------------------------------------Header
69
- var getMeta = R.propOr({}, 'meta');
70
- var meta = getMeta(dataNew);
71
-
72
- var getSender = R.propOr({}, 'sender');
73
- var sender = getSender(meta);
74
-
75
- var resHeader = (0, _extends3.default)({}, meta, {
76
- sender: (0, _extends3.default)({}, sender, { name: getName(sender) })
77
- });
78
-
79
- //----------------------------------------------------------------------------------------Attributes
80
- var getAttributes = R.propOr({}, 'attributes');
81
- var attributes = getAttributes(structure);
82
-
83
- var getAttrObservations = R.propOr([], 'observation');
84
- var attrObservations = getAttrObservations(attributes);
85
-
86
- var resAttrObservations = R.addIndex(R.map)(function (observation, index) {
87
- var obsAnnotations = R.props(observation.annotations || [], annotations);
88
- return (0, _extends3.default)({}, observation, {
89
- __index: index,
90
- display: !R.has(observation.id, hiddenValues) && !(0, _sdmxData.getIsHidden)(obsAnnotations),
91
- name: getName(observation),
92
- values: (0, _getValuesEnhanced.getValuesEnhanced)({
93
- locale: locale,
94
- annotations: annotations,
95
- parent: observation.id,
96
- reportYearStart: reportYearStart,
97
- hiddenIds: hiddenValues,
98
- options: options
99
- })(R.propOr([], 'values', observation)),
100
- roles: !R.isNil(observation.role) ? R.head(observation.role) : null
101
- });
102
- }, attrObservations);
103
-
104
- var datasetAttributes = R.map(function (attr) {
105
- var attrAnnotations = R.props(attr.annotations || [], annotations);
106
- return (0, _extends3.default)({}, attr, {
107
- display: !R.has(attr.id, hiddenValues) && !(0, _sdmxData.getIsHidden)(attrAnnotations),
108
- name: getName(attr),
109
- values: (0, _getValuesEnhanced.getValuesEnhanced)({
110
- locale: locale,
111
- annotations: annotations,
112
- parent: attr.id,
113
- hiddenIds: hiddenValues,
114
- options: options,
115
- reportYearStart: reportYearStart
116
- })(R.propOr([], 'values', attr))
117
- });
118
- }, R.propOr([], 'dataSet', attributes));
119
-
120
- var resAttributes = (0, _extends3.default)({}, attributes, {
121
- observation: R.concat(resAttrObservations, datasetAttributes)
122
- });
123
-
124
- //----------------------------------------------------------------------------------------Dimensions
125
- var getDimensions = R.propOr({}, 'dimensions');
126
- var dimensions = getDimensions(structure);
127
-
128
- var getDimObservations = R.propOr([], 'observation');
129
- var dimObservations = getDimObservations(dimensions);
130
-
131
- var getObservations = function getObservations(locale) {
132
- return R.addIndex(R.reduce)(function (acc, observation, obsIndex) {
133
- var id = R.prop('id')(observation);
134
- var dimAnnotations = (0, _sdmxData.getRelationnalAnnotations)(R.propOr([], 'annotations')(observation))(annotations);
135
- var isTimeDimension = (0, _dotstatsuiteSdmxjs.isTimePeriodDimension)(observation);
136
- var values = (0, _getValuesEnhanced.getValuesEnhanced)({
137
- locale: locale,
138
- annotations: annotations,
139
- isTimeDimension: isTimeDimension,
140
- reportYearStart: reportYearStart,
141
- parent: id,
142
- hiddenIds: hiddenValues,
143
- options: options
144
- })(R.propOr([], 'values', observation));
145
- var isAllDimHidden = getIsAllDimHidden({ id: id, values: values });
146
- var isHidden = isAllDimHidden || R.has(id, hiddenValues) || (0, _sdmxData.getIsHidden)(dimAnnotations);
147
- return {
148
- observation: R.append((0, _extends3.default)({}, observation, {
149
- display: !isHidden,
150
- __index: obsIndex,
151
- name: getName(observation),
152
- values: isAllDimHidden ? [] : values,
153
- role: isTimeDimension ? TIME_PERIOD_ID : R.head(R.propOr([], 'roles', observation))
154
- }))(acc.observation),
155
- dimensionsLayout: (0, _sdmxData.setAnnotationsLayout)(id, acc.dimensionsLayout)(dimAnnotations)
156
- };
157
- }, { observation: [], dimensionsLayout: {} });
158
- };
159
-
160
- //-----------------------------------------------------------------------------------------Structure
161
-
162
- var _getObservations = getObservations(locale)(dimObservations),
163
- dimensionsLayout = _getObservations.dimensionsLayout,
164
- observation = _getObservations.observation;
165
-
166
- var resStructure = (0, _extends3.default)({}, structure, {
167
- name: getName((0, _extends3.default)({}, structure, { id: options.dataflowId })),
168
- annotations: annotations,
169
- attributes: resAttributes,
170
- dimensions: { observation: observation }
171
- });
172
-
173
- //------------------------------------------------------------------------------------------------------Layout
174
- var dataSetsLayout = R.reduce(function (acc, dataSetsAnnotation) {
175
- var title = R.propOr('', 'title')(dataSetsAnnotation);
176
- if (R.isEmpty(title)) return acc;
177
- return (0, _sdmxData.setAnnotationsLayout)(title, acc)([dataSetsAnnotation]);
178
- }, {})(dataSetsAnnotations);
179
-
180
- return {
181
- data: { header: resHeader, dataSets: dataSets, structure: resStructure },
182
- layout: R.mergeRight(dimensionsLayout, dataSetsLayout)
183
- };
184
- };
@@ -1,37 +0,0 @@
1
- 'use strict';
2
-
3
- var _deepEql = require('deep-eql');
4
-
5
- var _deepEql2 = _interopRequireDefault(_deepEql);
6
-
7
- var _src = require('../src');
8
-
9
- var _oecdHEALTH_PROT = require('./oecd-HEALTH_PROT.json');
10
-
11
- var _oecdHEALTH_PROT2 = _interopRequireDefault(_oecdHEALTH_PROT);
12
-
13
- var _oecdHEALTH_PROTParsed = require('./oecd-HEALTH_PROT-parsed');
14
-
15
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16
-
17
- describe('global tests', function () {
18
- var expectedEmptyResult = {
19
- attributes: [],
20
- datasetAttributes: [],
21
- dimensions: [],
22
- observations: {},
23
- source: null
24
- };
25
- it('null', function () {
26
- (0, _deepEql2.default)((0, _src.extractSdmxArtefacts)(null), expectedEmptyResult);
27
- });
28
- it('undefined', function () {
29
- (0, _deepEql2.default)((0, _src.extractSdmxArtefacts)(null), expectedEmptyResult);
30
- });
31
- });
32
-
33
- describe('dimensions parsing', function () {
34
- it('basic test', function () {
35
- (0, _deepEql2.default)((0, _src.extractSdmxArtefacts)(_oecdHEALTH_PROT2.default), _oecdHEALTH_PROTParsed.dimensions);
36
- });
37
- });
@@ -1,128 +0,0 @@
1
- 'use strict';
2
-
3
- var _extends2 = require('babel-runtime/helpers/extends');
4
-
5
- var _extends3 = _interopRequireDefault(_extends2);
6
-
7
- var _ramda = require('ramda');
8
-
9
- var R = _interopRequireWildcard(_ramda);
10
-
11
- var _chai = require('chai');
12
-
13
- var _getValuesEnhanced = require('../src/get-values-enhanced');
14
-
15
- 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; } }
16
-
17
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18
-
19
- var values = [{
20
- id: 'A',
21
- order: 0,
22
- name: 'Code A',
23
- names: {
24
- en: 'Code A'
25
- }
26
- }, {
27
- id: 'B',
28
- order: 1,
29
- name: 'Code B',
30
- names: {
31
- en: 'Code B'
32
- }
33
- }, {
34
- id: 'C',
35
- order: 2,
36
- name: 'Code C',
37
- names: {
38
- en: 'Code C'
39
- }
40
- }];
41
-
42
- var timeValues = [{
43
- start: '2020-01-01T00:00:00',
44
- end: '2020-12-31T23:59:59',
45
- id: '2020',
46
- name: '2020',
47
- names: {
48
- en: '2020'
49
- }
50
- }, {
51
- start: '2021-01-01T00:00:00',
52
- end: '2021-12-31T23:59:59',
53
- id: '2021',
54
- name: '2021',
55
- names: {
56
- en: '2021'
57
- }
58
- }, {
59
- start: '2022-01-01T00:00:00',
60
- end: '2022-12-31T23:59:59',
61
- id: '2022',
62
- name: '2022',
63
- names: {
64
- en: '2022'
65
- }
66
- }];
67
-
68
- var expectedTimeValues = [{
69
- start: '2020-01-01T00:00:00.000Z',
70
- end: '2020-12-31T23:59:59.000Z',
71
- id: '2020',
72
- name: '2020'
73
- }, {
74
- start: '2021-01-01T00:00:00.000Z',
75
- end: '2021-12-31T23:59:59.000Z',
76
- id: '2021',
77
- name: '2021'
78
- }, {
79
- start: '2022-01-01T00:00:00.000Z',
80
- end: '2022-12-31T23:59:59.000Z',
81
- id: '2022',
82
- name: '2022'
83
- }];
84
-
85
- var nonCodedValues = [{ value: 'A' }, { value: 'B' }, { value: 'C' }];
86
-
87
- var expectedValues = function expectedValues() {
88
- var skippedValueEntries = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
89
- var isNonCoded = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
90
- return R.addIndex(R.map)(function (value, index) {
91
- return (0, _extends3.default)({}, R.omit(R.prepend('names', skippedValueEntries), value), {
92
- __index: index,
93
- __indexPosition: index,
94
- display: true,
95
- notes: [],
96
- start: R.propOr(null, 'start', value),
97
- isNonCoded: isNonCoded
98
- });
99
- });
100
- };
101
-
102
- describe('get values enhanced method', function () {
103
- it('should pass with coded values', function () {
104
- var enhancedValues = (0, _getValuesEnhanced.getValuesEnhanced)({
105
- locale: 'en',
106
- parent: 'ID'
107
- })(values);
108
- (0, _chai.expect)(enhancedValues).to.deep.equal(expectedValues()(values));
109
- });
110
-
111
- it('should pass with non-coded values', function () {
112
- var enhancedValues = (0, _getValuesEnhanced.getValuesEnhanced)({
113
- locale: 'en',
114
- parent: 'ID'
115
- })(nonCodedValues);
116
- (0, _chai.expect)(enhancedValues).to.deep.equal(expectedValues(['name', 'order', 'value'], true)(values));
117
- });
118
-
119
- it('should pass with time values', function () {
120
- var enhancedValues = (0, _getValuesEnhanced.getValuesEnhanced)({
121
- locale: 'en',
122
- parent: 'ID',
123
- isTimeDimension: true,
124
- reportYearStart: { month: '01', day: '01' }
125
- })(timeValues);
126
- (0, _chai.expect)(enhancedValues).to.deep.equal(expectedValues()(expectedTimeValues));
127
- });
128
- });