@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.
Files changed (165) hide show
  1. package/.gitlab-ci.yml +3 -2
  2. package/LICENSE +1 -1
  3. package/README.md +1 -17
  4. package/package.json +20 -14
  5. package/src/bridge-d3-react/src/react-chart-factory.js +1 -2
  6. package/src/rules/src/factories/sample-series.js +1 -1
  7. package/src/rules/src/index.js +14 -13
  8. package/src/rules/src/observation-formater.js +0 -1
  9. package/src/rules/src/properties/focus.js +3 -3
  10. package/src/rules/src/sdmx-data/index.js +2 -0
  11. package/src/rules2/src/hierarchiseDimensionWithNativeHierarchy2.js +5 -1
  12. package/src/rules2/src/table/getLayoutData2.js +4 -1
  13. package/src/viewer/src/index.js +4 -5
  14. package/src/viewer/src/legends/AxisLegend.js +0 -7
  15. package/src/viewer/src/legends/FocusLegend.js +2 -10
  16. package/src/viewer/src/legends/Legend.js +0 -6
  17. package/src/viewer/src/legends/SeriesLegend.js +0 -7
  18. package/test/hierarchiseDimensionWithNativeHierarchy2.test.js +59 -32
  19. package/vite.config.mjs +51 -0
  20. package/lib/app.js +0 -22
  21. package/lib/bridge-d3-react/src/app.js +0 -98
  22. package/lib/bridge-d3-react/src/index.js +0 -33
  23. package/lib/bridge-d3-react/src/mock-choro.js +0 -41
  24. package/lib/bridge-d3-react/src/react-chart-factory.js +0 -103
  25. package/lib/index.js +0 -41
  26. package/lib/rules/src/chart/getAxisOptions.js +0 -206
  27. package/lib/rules/src/chart/getBaseOptions.js +0 -51
  28. package/lib/rules/src/chart/getChartOptions.js +0 -106
  29. package/lib/rules/src/chart/getGridOptions.js +0 -21
  30. package/lib/rules/src/chart/getTooltipOptions.js +0 -84
  31. package/lib/rules/src/constants.js +0 -68
  32. package/lib/rules/src/date.js +0 -180
  33. package/lib/rules/src/dimension-utils.js +0 -67
  34. package/lib/rules/src/factories/choro-series.js +0 -99
  35. package/lib/rules/src/factories/sample-focus.js +0 -64
  36. package/lib/rules/src/factories/sample-series.js +0 -90
  37. package/lib/rules/src/factories/scatter-dimension.js +0 -72
  38. package/lib/rules/src/factories/scatter-focus.js +0 -77
  39. package/lib/rules/src/factories/scatter-series.js +0 -145
  40. package/lib/rules/src/factories/stacked-dimension.js +0 -42
  41. package/lib/rules/src/factories/stacked-series.js +0 -166
  42. package/lib/rules/src/factories/symbol-dimension.js +0 -69
  43. package/lib/rules/src/factories/symbol-series.js +0 -119
  44. package/lib/rules/src/factories/timeline-focus.js +0 -38
  45. package/lib/rules/src/factories/timeline-series.js +0 -121
  46. package/lib/rules/src/get-values-enhanced.js +0 -141
  47. package/lib/rules/src/header/getDefaultSubtitle.js +0 -50
  48. package/lib/rules/src/header/getHeaderUnits.js +0 -26
  49. package/lib/rules/src/header/getSubtitleFlags.js +0 -53
  50. package/lib/rules/src/header/getTitleFlags.js +0 -24
  51. package/lib/rules/src/header/index.js +0 -41
  52. package/lib/rules/src/index.js +0 -714
  53. package/lib/rules/src/layout.js +0 -98
  54. package/lib/rules/src/observation-formater.js +0 -112
  55. package/lib/rules/src/preparators/enhanceObservations.js +0 -142
  56. package/lib/rules/src/preparators/formatValue.js +0 -83
  57. package/lib/rules/src/preparators/getObservations.js +0 -27
  58. package/lib/rules/src/preparators/getReportingYearStart.js +0 -52
  59. package/lib/rules/src/properties/errors.js +0 -31
  60. package/lib/rules/src/properties/focus.js +0 -90
  61. package/lib/rules/src/properties/getAvailableChartTypes.js +0 -30
  62. package/lib/rules/src/properties/getHeaderProps.js +0 -83
  63. package/lib/rules/src/properties/getInformationsStateFromNewProps.js +0 -61
  64. package/lib/rules/src/properties/getObservationsType.js +0 -31
  65. package/lib/rules/src/properties/getStringifiedSubtitle.js +0 -18
  66. package/lib/rules/src/properties/index.js +0 -401
  67. package/lib/rules/src/properties/information.js +0 -79
  68. package/lib/rules/src/properties/linear.js +0 -158
  69. package/lib/rules/src/properties/scatter.js +0 -174
  70. package/lib/rules/src/properties/stacked.js +0 -133
  71. package/lib/rules/src/properties/symbol.js +0 -96
  72. package/lib/rules/src/properties/utils.js +0 -126
  73. package/lib/rules/src/sdmx-data/index.js +0 -55
  74. package/lib/rules/src/table/factories/getCellValue.js +0 -57
  75. package/lib/rules/src/table/index.js +0 -14
  76. package/lib/rules/src/v8-transformer.js +0 -184
  77. package/lib/rules/test/extractSdmxArtefacts.js +0 -37
  78. package/lib/rules/test/get-values-enhanced.test.js +0 -128
  79. package/lib/rules/test/oecd-HEALTH_PROT-parsed.js +0 -303
  80. package/lib/rules/test/scatter-property.js +0 -403
  81. package/lib/rules/test/stacked-property.js +0 -244
  82. package/lib/rules/test/symbol-property.js +0 -234
  83. package/lib/rules/test/v8-transformer.test.js +0 -82
  84. package/lib/rules2/src/applyHierarchicalCodesToDim.js +0 -175
  85. package/lib/rules2/src/combinedValuesDisplay.js +0 -71
  86. package/lib/rules2/src/constants.js +0 -11
  87. package/lib/rules2/src/duplicateObservations.js +0 -39
  88. package/lib/rules2/src/enhanceObservations.js +0 -103
  89. package/lib/rules2/src/getAdvAttrSeriesAtCoordinates.js +0 -39
  90. package/lib/rules2/src/getAttributesSeries.js +0 -40
  91. package/lib/rules2/src/getCombinationDefinitions.js +0 -72
  92. package/lib/rules2/src/getDataflowAttributes.js +0 -34
  93. package/lib/rules2/src/getDataflowTooltipAttributesIds.js +0 -38
  94. package/lib/rules2/src/getDimensionValuesIndexes.js +0 -19
  95. package/lib/rules2/src/getHCodelistsRefsInData.js +0 -49
  96. package/lib/rules2/src/getHeaderCombinations.js +0 -51
  97. package/lib/rules2/src/getHeaderCoordinates.js +0 -18
  98. package/lib/rules2/src/getHeaderSubtitle.js +0 -41
  99. package/lib/rules2/src/getHeaderTitle.js +0 -29
  100. package/lib/rules2/src/getMSDInformations.js +0 -43
  101. package/lib/rules2/src/getManyValuesDimensions.js +0 -39
  102. package/lib/rules2/src/getMetadataCoordinates.js +0 -40
  103. package/lib/rules2/src/getMetadataStructureFromData.js +0 -23
  104. package/lib/rules2/src/getNotDisplayedIds.js +0 -58
  105. package/lib/rules2/src/getOneValueDimensions.js +0 -48
  106. package/lib/rules2/src/getSeriesCombinations.js +0 -33
  107. package/lib/rules2/src/hasCellMetadata.js +0 -22
  108. package/lib/rules2/src/hierarchiseDimensionWithAdvancedHierarchy2.js +0 -65
  109. package/lib/rules2/src/hierarchiseDimensionWithNativeHierarchy2.js +0 -36
  110. package/lib/rules2/src/index.js +0 -443
  111. package/lib/rules2/src/parseAttributes.js +0 -51
  112. package/lib/rules2/src/parseCombinations.js +0 -96
  113. package/lib/rules2/src/parseHierarchicalCodelist.js +0 -57
  114. package/lib/rules2/src/parseMetadataSeries.js +0 -119
  115. package/lib/rules2/src/prepareData.js +0 -113
  116. package/lib/rules2/src/refineAttributes.js +0 -32
  117. package/lib/rules2/src/refineDimensions.js +0 -38
  118. package/lib/rules2/src/refineMetadataCoordinates.js +0 -35
  119. package/lib/rules2/src/refineTimePeriod.js +0 -154
  120. package/lib/rules2/src/sdmx3.0DataFormatPatch.js +0 -20
  121. package/lib/rules2/src/table/declineObservationsOverAttributes.js +0 -43
  122. package/lib/rules2/src/table/getCells.js +0 -90
  123. package/lib/rules2/src/table/getCellsAttributesIds.js +0 -63
  124. package/lib/rules2/src/table/getCellsMetadataCoordinates.js +0 -30
  125. package/lib/rules2/src/table/getCombinationDimensionsData.js +0 -48
  126. package/lib/rules2/src/table/getCuratedCells.js +0 -28
  127. package/lib/rules2/src/table/getFlagsAndNotes.js +0 -30
  128. package/lib/rules2/src/table/getIndexedCombinationsByDisplay.js +0 -31
  129. package/lib/rules2/src/table/getLayout.js +0 -105
  130. package/lib/rules2/src/table/getLayoutData2.js +0 -269
  131. package/lib/rules2/src/table/getSortedLayoutIndexes.js +0 -136
  132. package/lib/rules2/src/table/getTableLabelAccessor.js +0 -20
  133. package/lib/rules2/src/table/getTableLayoutIds.js +0 -365
  134. package/lib/rules2/src/table/getTableProps.js +0 -96
  135. package/lib/rules2/src/table/parseSeriesIndexesHierarchies.js +0 -124
  136. package/lib/rules2/src/table/parseValueHierarchy.js +0 -63
  137. package/lib/rules2/src/table/refineLayoutSize2.js +0 -293
  138. package/lib/rules2/src/utils.js +0 -48
  139. package/lib/viewer/mocks/bar.js +0 -21
  140. package/lib/viewer/mocks/gpp-symbol.js +0 -55
  141. package/lib/viewer/mocks/gpp-time.js +0 -1023
  142. package/lib/viewer/mocks/row.js +0 -26
  143. package/lib/viewer/mocks/scatter.js +0 -84
  144. package/lib/viewer/mocks/stack.js +0 -93
  145. package/lib/viewer/src/app/leg.js +0 -101
  146. package/lib/viewer/src/app/nodata-res.js +0 -40
  147. package/lib/viewer/src/app/nodata-sized.js +0 -41
  148. package/lib/viewer/src/app/one-table-cell.js +0 -75
  149. package/lib/viewer/src/app/table.js +0 -300
  150. package/lib/viewer/src/app/use-case-1.js +0 -60
  151. package/lib/viewer/src/app/use-case-2.js +0 -82
  152. package/lib/viewer/src/app/use-case-3.js +0 -52
  153. package/lib/viewer/src/app.js +0 -162
  154. package/lib/viewer/src/chart.js +0 -82
  155. package/lib/viewer/src/chartUtils/options.js +0 -30
  156. package/lib/viewer/src/chartUtils/series.js +0 -63
  157. package/lib/viewer/src/footer.js +0 -54
  158. package/lib/viewer/src/header.js +0 -29
  159. package/lib/viewer/src/index.js +0 -243
  160. package/lib/viewer/src/legends/AxisLegend.js +0 -84
  161. package/lib/viewer/src/legends/ChartLegends.js +0 -100
  162. package/lib/viewer/src/legends/FocusLegend.js +0 -89
  163. package/lib/viewer/src/legends/Legend.js +0 -88
  164. package/lib/viewer/src/legends/SeriesLegend.js +0 -108
  165. package/lib/viewer/src/utils.js +0 -36
@@ -1,244 +0,0 @@
1
- 'use strict';
2
-
3
- var _extends2 = require('babel-runtime/helpers/extends');
4
-
5
- var _extends3 = _interopRequireDefault(_extends2);
6
-
7
- var _chai = require('chai');
8
-
9
- var _constants = require('../src/constants');
10
-
11
- var _stacked = require('../src/properties/stacked');
12
-
13
- var _oecdKEI = require('./oecd-KEI.json');
14
-
15
- var _oecdKEI2 = _interopRequireDefault(_oecdKEI);
16
-
17
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18
-
19
- var undefinedState = {
20
- stackedDimension: undefined,
21
- stackedMode: undefined
22
- };
23
-
24
- var defaultState = {
25
- stackedDimension: 'LOCATION',
26
- stackedMode: _constants.VALUES
27
- };
28
-
29
- var stateWithFocus = function stateWithFocus(state) {
30
- return (0, _extends3.default)({}, state, { baseline: [], highlight: [] });
31
- };
32
-
33
- var defaultStateWithFocus = stateWithFocus(defaultState);
34
-
35
- describe('stackedStateFromNewProps tests', function () {
36
- it('undefined state with focus from no data', function () {
37
- var props = { type: _constants.STACKED };
38
- var expected = stateWithFocus(undefinedState);
39
- (0, _chai.expect)((0, _stacked.stackedStateFromNewProps)(props, defaultState)).to.deep.equal(expected);
40
- });
41
- it('undefined state without focus from non stacked type', function () {
42
- var props = { data: _oecdKEI2.default, type: _constants.BAR };
43
- (0, _chai.expect)((0, _stacked.stackedStateFromNewProps)(props, defaultState)).to.deep.equal(undefinedState);
44
- });
45
- it('default state from no state', function () {
46
- var props = { data: _oecdKEI2.default, type: _constants.STACKED };
47
- (0, _chai.expect)((0, _stacked.stackedStateFromNewProps)(props, undefined)).to.deep.equal(defaultStateWithFocus);
48
- });
49
- it('default state from undefined state', function () {
50
- var props = { data: _oecdKEI2.default, type: _constants.STACKED };
51
- (0, _chai.expect)((0, _stacked.stackedStateFromNewProps)(props, undefinedState)).to.deep.equal(defaultStateWithFocus);
52
- });
53
- it('default state from default state', function () {
54
- var props = { data: _oecdKEI2.default, type: _constants.STACKED };
55
- (0, _chai.expect)((0, _stacked.stackedStateFromNewProps)(props, defaultState)).to.deep.equal(defaultStateWithFocus);
56
- });
57
- it('default state from non existing mode', function () {
58
- var props = { data: _oecdKEI2.default, type: _constants.STACKED };
59
- var state = { stackedDimension: 'LOCATION', stackedMode: 'RANDOM' };
60
- (0, _chai.expect)((0, _stacked.stackedStateFromNewProps)(props, state)).to.deep.equal(defaultStateWithFocus);
61
- });
62
- it('correct dimension but non existing mode', function () {
63
- var props = { data: _oecdKEI2.default, type: _constants.STACKED };
64
- var state = { stackedDimension: 'SUBJECT', stackedMode: 'RANDOM' };
65
- var expected = stateWithFocus({ stackedDimension: 'SUBJECT', stackedMode: _constants.VALUES });
66
- (0, _chai.expect)((0, _stacked.stackedStateFromNewProps)(props, state)).to.deep.equal(expected);
67
- });
68
- it('non existing dimension but correct mode', function () {
69
- var props = { data: _oecdKEI2.default, type: _constants.STACKED };
70
- var state = { stackedDimension: 'RANDOM', stackedMode: _constants.PERCENT };
71
- var expected = stateWithFocus({ stackedDimension: 'LOCATION', stackedMode: _constants.PERCENT });
72
- (0, _chai.expect)((0, _stacked.stackedStateFromNewProps)(props, state)).to.deep.equal(expected);
73
- });
74
- it('dimension with only one value', function () {
75
- var props = { data: _oecdKEI2.default, type: _constants.STACKED };
76
- var state = { stackedDimension: 'MEASURE', stackedMode: _constants.VALUES };
77
- (0, _chai.expect)((0, _stacked.stackedStateFromNewProps)(props, state)).to.deep.equal(defaultStateWithFocus);
78
- });
79
- });
80
-
81
- describe('focus tests through stackedStateFromNewProps', function () {
82
- it('empty focus', function () {
83
- var props = { data: _oecdKEI2.default, type: _constants.STACKED };
84
- var state = { type: _constants.STACKED, baseline: [], highlight: [] };
85
- (0, _chai.expect)((0, _stacked.stackedStateFromNewProps)(props, state)).to.deep.equal(defaultStateWithFocus);
86
- });
87
- it('correct focus', function () {
88
- var props = { data: _oecdKEI2.default, type: _constants.STACKED };
89
- var state = {
90
- baseline: [{
91
- label: 'France',
92
- value: 'FRA'
93
- }],
94
- highlight: [{
95
- label: 'Australia',
96
- value: 'AUS'
97
- }, {
98
- label: 'Austria',
99
- value: 'AUT'
100
- }, {
101
- label: 'Czech Republic',
102
- value: 'CZE'
103
- }]
104
- };
105
- var expected = (0, _extends3.default)({}, defaultState, state);
106
- (0, _chai.expect)((0, _stacked.stackedStateFromNewProps)(props, (0, _extends3.default)({}, state, { type: _constants.STACKED }))).to.deep.equal(expected);
107
- });
108
- it('all wrong focus', function () {
109
- var props = { data: _oecdKEI2.default, type: _constants.STACKED };
110
- var state = {
111
- type: _constants.STACKED,
112
- baseline: [{
113
- label: 'RANDOM 1',
114
- value: 'RANDOM_VAL1'
115
- }],
116
- highlight: [{
117
- label: 'RANDOM 2',
118
- value: 'RANDOM_VAL2'
119
- }, {
120
- label: 'RANDOM 3',
121
- value: 'RANDOM_VAL3'
122
- }, {
123
- label: 'RANDOM 4',
124
- value: 'RANDOM_VAL4'
125
- }]
126
- };
127
- (0, _chai.expect)((0, _stacked.stackedStateFromNewProps)(props, state)).to.deep.equal(defaultStateWithFocus);
128
- });
129
- it('mix of correct and wrong', function () {
130
- var props = { data: _oecdKEI2.default, type: _constants.STACKED };
131
- var state = {
132
- type: _constants.STACKED,
133
- baseline: [{
134
- label: 'France',
135
- value: 'FRA'
136
- }],
137
- highlight: [{
138
- label: 'RANDOM 2',
139
- value: 'RANDOM_VAL2'
140
- }, {
141
- label: 'Austria',
142
- value: 'AUT'
143
- }, {
144
- label: 'RANDOM 4',
145
- value: 'RANDOM_VAL4'
146
- }]
147
- };
148
- var expected = {
149
- baseline: [{
150
- label: 'France',
151
- value: 'FRA'
152
- }],
153
- highlight: [{
154
- label: 'Austria',
155
- value: 'AUT'
156
- }]
157
- };
158
- (0, _chai.expect)((0, _stacked.stackedStateFromNewProps)(props, state)).to.deep.equal((0, _extends3.default)({}, defaultState, expected));
159
- });
160
- it('code display', function () {
161
- var props = { data: _oecdKEI2.default, type: _constants.STACKED, display: 'code' };
162
- var state = {
163
- type: _constants.STACKED,
164
- baseline: [{
165
- label: 'France',
166
- value: 'FRA'
167
- }],
168
- highlight: [{
169
- label: 'Austria',
170
- value: 'AUT'
171
- }]
172
- };
173
- var expected = (0, _extends3.default)({}, defaultState, {
174
- baseline: [{
175
- label: 'FRA',
176
- value: 'FRA'
177
- }],
178
- highlight: [{
179
- label: 'AUT',
180
- value: 'AUT'
181
- }]
182
- });
183
- (0, _chai.expect)((0, _stacked.stackedStateFromNewProps)(props, state)).to.deep.equal(expected);
184
- });
185
- it('both display', function () {
186
- var props = { data: _oecdKEI2.default, type: _constants.STACKED, display: 'both' };
187
- var state = {
188
- type: _constants.STACKED,
189
- baseline: [{
190
- label: 'France',
191
- value: 'FRA'
192
- }],
193
- highlight: [{
194
- label: 'Austria',
195
- value: 'AUT'
196
- }]
197
- };
198
- var expected = (0, _extends3.default)({}, defaultState, {
199
- baseline: [{
200
- label: '(FRA) France',
201
- value: 'FRA'
202
- }],
203
- highlight: [{
204
- label: '(AUT) Austria',
205
- value: 'AUT'
206
- }]
207
- });
208
- (0, _chai.expect)((0, _stacked.stackedStateFromNewProps)(props, state)).to.deep.equal(expected);
209
- });
210
- });
211
-
212
- describe('onChangeStackedDimension tests', function () {
213
- it('no data', function () {
214
- (0, _chai.expect)((0, _stacked.onChangeStackedDimension)({})('LOCATION')).to.deep.equal({});
215
- });
216
- it('no value', function () {
217
- (0, _chai.expect)((0, _stacked.onChangeStackedDimension)({ data: _oecdKEI2.default })(undefined)).to.deep.equal({});
218
- });
219
- it('non existing dimension', function () {
220
- (0, _chai.expect)((0, _stacked.onChangeStackedDimension)({ data: _oecdKEI2.default })('RANDOM')).to.deep.equal({});
221
- });
222
- it('correct dimension', function () {
223
- var expected = stateWithFocus({ stackedDimension: 'SUBJECT' });
224
- (0, _chai.expect)((0, _stacked.onChangeStackedDimension)({ data: _oecdKEI2.default })('SUBJECT')).to.deep.equal(expected);
225
- });
226
- it('dimension with only one value', function () {
227
- (0, _chai.expect)((0, _stacked.onChangeStackedDimension)({ data: _oecdKEI2.default })('MEASURE')).to.deep.equal({});
228
- });
229
- });
230
-
231
- describe('onChangeStackedMode tests', function () {
232
- it('no value', function () {
233
- (0, _chai.expect)((0, _stacked.onChangeStackedMode)(undefined)).to.deep.equal({});
234
- });
235
- it('non existing mode', function () {
236
- (0, _chai.expect)((0, _stacked.onChangeStackedMode)('random')).to.deep.equal({});
237
- });
238
- it('values', function () {
239
- (0, _chai.expect)((0, _stacked.onChangeStackedMode)(_constants.VALUES)).to.deep.equal({ stackedMode: _constants.VALUES });
240
- });
241
- it('percent', function () {
242
- (0, _chai.expect)((0, _stacked.onChangeStackedMode)(_constants.PERCENT)).to.deep.equal({ stackedMode: _constants.PERCENT });
243
- });
244
- });
@@ -1,234 +0,0 @@
1
- 'use strict';
2
-
3
- var _extends2 = require('babel-runtime/helpers/extends');
4
-
5
- var _extends3 = _interopRequireDefault(_extends2);
6
-
7
- var _chai = require('chai');
8
-
9
- var _constants = require('../src/constants');
10
-
11
- var _symbol = require('../src/properties/symbol');
12
-
13
- var _oecdKEI = require('./oecd-KEI.json');
14
-
15
- var _oecdKEI2 = _interopRequireDefault(_oecdKEI);
16
-
17
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
18
-
19
- var undefinedState = {
20
- symbolDimension: undefined
21
- };
22
-
23
- var undefinedStateWithFocus = {
24
- baseline: [],
25
- highlight: [],
26
- symbolDimension: undefined
27
- };
28
-
29
- describe('symbolStateFromNewProps tests', function () {
30
- it('undefined with focus from no data', function () {
31
- var props = { type: _constants.H_SYMBOL };
32
- var state = { symbolDimension: 'SUBJECT' };
33
- (0, _chai.expect)((0, _symbol.symbolStateFromNewProps)(props, state)).to.deep.equal(undefinedStateWithFocus);
34
- });
35
- it('undefined without focus from not symbol type', function () {
36
- var props = { data: _oecdKEI2.default, type: _constants.BAR };
37
- var state = { symbolDimension: 'SUBJECT' };
38
- (0, _chai.expect)((0, _symbol.symbolStateFromNewProps)(props, state)).to.deep.equal(undefinedState);
39
- });
40
- it('default from no state', function () {
41
- var props = { data: _oecdKEI2.default, type: _constants.H_SYMBOL };
42
- var expected = { baseline: [], highlight: [], symbolDimension: 'SUBJECT' };
43
- (0, _chai.expect)((0, _symbol.symbolStateFromNewProps)(props, undefined)).to.deep.equal(expected);
44
- });
45
- it('default from undefined state', function () {
46
- var props = { data: _oecdKEI2.default, type: _constants.H_SYMBOL };
47
- var expected = { baseline: [], highlight: [], symbolDimension: 'SUBJECT' };
48
- (0, _chai.expect)((0, _symbol.symbolStateFromNewProps)(props, undefinedState)).to.deep.equal(expected);
49
- });
50
- it('default from default state', function () {
51
- var props = { data: _oecdKEI2.default, type: _constants.H_SYMBOL };
52
- var state = { symbolDimension: 'SUBJECT' };
53
- var expected = { baseline: [], highlight: [], symbolDimension: 'SUBJECT' };
54
- (0, _chai.expect)((0, _symbol.symbolStateFromNewProps)(props, state)).to.deep.equal(expected);
55
- });
56
- it('default from no existing dimension', function () {
57
- var props = { data: _oecdKEI2.default, type: _constants.H_SYMBOL };
58
- var state = { symbolDimension: 'RANDOM' };
59
- var expected = { baseline: [], highlight: [], symbolDimension: 'SUBJECT' };
60
- (0, _chai.expect)((0, _symbol.symbolStateFromNewProps)(props, state)).to.deep.equal(expected);
61
- });
62
- it('default from dimension with only one value', function () {
63
- var props = { data: _oecdKEI2.default, type: _constants.H_SYMBOL };
64
- var state = { symbolDimension: 'MEASURE' };
65
- var expected = { baseline: [], highlight: [], symbolDimension: 'SUBJECT' };
66
- (0, _chai.expect)((0, _symbol.symbolStateFromNewProps)(props, state)).to.deep.equal(expected);
67
- });
68
- it('correct dimension', function () {
69
- var props = { data: _oecdKEI2.default, type: _constants.H_SYMBOL };
70
- var state = { symbolDimension: 'LOCATION' };
71
- var expected = { baseline: [], highlight: [], symbolDimension: 'LOCATION' };
72
- (0, _chai.expect)((0, _symbol.symbolStateFromNewProps)(props, state)).to.deep.equal(expected);
73
- });
74
- });
75
-
76
- describe('focus tests through symbolStateFromNewProps', function () {
77
- it('empty focus', function () {
78
- var props = { data: _oecdKEI2.default, type: _constants.H_SYMBOL };
79
- var state = { type: _constants.H_SYMBOL, baseline: [], highlight: [] };
80
- var expected = { baseline: [], highlight: [], symbolDimension: 'SUBJECT' };
81
- (0, _chai.expect)((0, _symbol.symbolStateFromNewProps)(props, state)).to.deep.equal(expected);
82
- });
83
- it('correct focus', function () {
84
- var props = { data: _oecdKEI2.default, type: _constants.H_SYMBOL };
85
- var state = {
86
- baseline: [{
87
- label: 'France',
88
- value: 'FRA'
89
- }],
90
- highlight: [{
91
- label: 'Australia',
92
- value: 'AUS'
93
- }, {
94
- label: 'Austria',
95
- value: 'AUT'
96
- }, {
97
- label: 'Czech Republic',
98
- value: 'CZE'
99
- }]
100
- };
101
- var expected = (0, _extends3.default)({ symbolDimension: 'SUBJECT' }, state);
102
- (0, _chai.expect)((0, _symbol.symbolStateFromNewProps)(props, (0, _extends3.default)({}, state, { type: _constants.H_SYMBOL }))).to.deep.equal(expected);
103
- });
104
- it('all wrong focus', function () {
105
- var props = { data: _oecdKEI2.default, type: _constants.H_SYMBOL };
106
- var state = {
107
- type: _constants.H_SYMBOL,
108
- baseline: [{
109
- label: 'RANDOM 1',
110
- value: 'RANDOM_VAL1'
111
- }],
112
- highlight: [{
113
- label: 'RANDOM 2',
114
- value: 'RANDOM_VAL2'
115
- }, {
116
- label: 'RANDOM 3',
117
- value: 'RANDOM_VAL3'
118
- }, {
119
- label: 'RANDOM 4',
120
- value: 'RANDOM_VAL4'
121
- }]
122
- };
123
- var expected = { baseline: [], highlight: [], symbolDimension: 'SUBJECT' };
124
- (0, _chai.expect)((0, _symbol.symbolStateFromNewProps)(props, state)).to.deep.equal(expected);
125
- });
126
- it('mix of correct and wrong', function () {
127
- var props = { data: _oecdKEI2.default, type: _constants.H_SYMBOL };
128
- var state = {
129
- type: _constants.H_SYMBOL,
130
- baseline: [{
131
- label: 'France',
132
- value: 'FRA'
133
- }],
134
- highlight: [{
135
- label: 'RANDOM 2',
136
- value: 'RANDOM_VAL2'
137
- }, {
138
- label: 'Austria',
139
- value: 'AUT'
140
- }, {
141
- label: 'RANDOM 4',
142
- value: 'RANDOM_VAL4'
143
- }]
144
- };
145
- var expected = {
146
- baseline: [{
147
- label: 'France',
148
- value: 'FRA'
149
- }],
150
- highlight: [{
151
- label: 'Austria',
152
- value: 'AUT'
153
- }],
154
- symbolDimension: 'SUBJECT'
155
- };
156
- (0, _chai.expect)((0, _symbol.symbolStateFromNewProps)(props, state)).to.deep.equal(expected);
157
- });
158
- it('code display', function () {
159
- var props = { data: _oecdKEI2.default, type: _constants.H_SYMBOL, display: 'code' };
160
- var state = {
161
- type: _constants.H_SYMBOL,
162
- baseline: [{
163
- label: 'France',
164
- value: 'FRA'
165
- }],
166
- highlight: [{
167
- label: 'Austria',
168
- value: 'AUT'
169
- }]
170
- };
171
- var expected = {
172
- baseline: [{
173
- label: 'FRA',
174
- value: 'FRA'
175
- }],
176
- highlight: [{
177
- label: 'AUT',
178
- value: 'AUT'
179
- }],
180
- symbolDimension: 'SUBJECT'
181
- };
182
- (0, _chai.expect)((0, _symbol.symbolStateFromNewProps)(props, state)).to.deep.equal(expected);
183
- });
184
- it('both display', function () {
185
- var props = { data: _oecdKEI2.default, type: _constants.H_SYMBOL, display: 'both' };
186
- var state = {
187
- type: _constants.H_SYMBOL,
188
- baseline: [{
189
- label: 'France',
190
- value: 'FRA'
191
- }],
192
- highlight: [{
193
- label: 'Austria',
194
- value: 'AUT'
195
- }]
196
- };
197
- var expected = {
198
- baseline: [{
199
- label: '(FRA) France',
200
- value: 'FRA'
201
- }],
202
- highlight: [{
203
- label: '(AUT) Austria',
204
- value: 'AUT'
205
- }],
206
- symbolDimension: 'SUBJECT'
207
- };
208
- (0, _chai.expect)((0, _symbol.symbolStateFromNewProps)(props, state)).to.deep.equal(expected);
209
- });
210
- });
211
-
212
- describe('onChangeSymbolDim tests', function () {
213
- it('no data', function () {
214
- var props = { type: _constants.H_SYMBOL };
215
- (0, _chai.expect)((0, _symbol.onChangeSymbolDim)(props)('LOCATION')).to.deep.equal({});
216
- });
217
- it('no selection', function () {
218
- var props = { data: _oecdKEI2.default, type: _constants.H_SYMBOL };
219
- (0, _chai.expect)((0, _symbol.onChangeSymbolDim)(props)(undefined)).to.deep.equal({});
220
- });
221
- it('valid dimension within dataset', function () {
222
- var props = { data: _oecdKEI2.default, type: _constants.H_SYMBOL };
223
- var expected = { baseline: [], highlight: [], symbolDimension: 'LOCATION' };
224
- (0, _chai.expect)((0, _symbol.onChangeSymbolDim)(props)('LOCATION')).to.deep.equal(expected);
225
- });
226
- it('non valid dimension', function () {
227
- var props = { data: _oecdKEI2.default, type: _constants.H_SYMBOL };
228
- (0, _chai.expect)((0, _symbol.onChangeSymbolDim)(props)('RANDOM')).to.deep.equal({});
229
- });
230
- it('dimension with only one value', function () {
231
- var props = { data: _oecdKEI2.default, type: _constants.H_SYMBOL };
232
- (0, _chai.expect)((0, _symbol.onChangeSymbolDim)(props)('MEASURE')).to.deep.equal({});
233
- });
234
- });
@@ -1,82 +0,0 @@
1
- 'use strict';
2
-
3
- var _sdmxData = require('../sdmx-data');
4
-
5
- var V8 = _interopRequireWildcard(_sdmxData);
6
-
7
- 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; } }
8
-
9
- describe('rules - sdmx-data', function () {
10
- describe('setAnnotationsLayout', function () {
11
- var layout1 = {};
12
- test('annotations is row', function () {
13
- expect(V8.setAnnotationsLayout('ID', layout1)([{ type: V8.LAYOUT_ROW }])).toEqual({ rows: ['ID'] });
14
- });
15
- test('annotations is header', function () {
16
- expect(V8.setAnnotationsLayout('ID', layout1)([{ type: V8.LAYOUT_COLUMN }, { type: 'truc' }, { type: 'truc' }])).toEqual({ header: ['ID'] });
17
- });
18
- test('annotations is sections', function () {
19
- expect(V8.setAnnotationsLayout('ID', layout1)([{ type: 'truc' }, { type: 'truc' }, { type: V8.LAYOUT_ROW_SECTION }])).toEqual({ sections: ['ID'] });
20
- });
21
- test('annotations is undefined - should be return layout', function () {
22
- expect(V8.setAnnotationsLayout('ID', layout1)([undefined])).toEqual({});
23
- });
24
- test('ids should be ["ID1","ID2","ID3"]', function () {
25
- expect(V8.setAnnotationsLayout('ID1,ID2,ID3', layout1)([{ type: V8.LAYOUT_ROW_SECTION }])).toEqual({ sections: ['ID1', 'ID2', 'ID3'] });
26
- });
27
- test('id is undefined - should be return layout', function () {
28
- var layout2 = { header: ['id'] };
29
- expect(V8.setAnnotationsLayout(undefined, layout2)([{ type: V8.LAYOUT_ROW_SECTION }])).toEqual({ header: ['id'], sections: [''] });
30
- });
31
- });
32
- describe('getIsHidden', function () {
33
- test('return isHidden', function () {
34
- var annotations = [{ "type": "NOT_DISPLAYED", "texts": { "en": "Dimension to be shown in row section - full description" } }, { "type": "ORDER", "texts": { "en": "5" } }, { "type": "FULL_NAME", "texts": { "en": "Dimension to be shown in row section - full last" } }];
35
- expect(V8.getIsHidden(annotations)).toEqual({ isHidden: true });
36
- });
37
- test('return empty string', function () {
38
- var annotations = [{ "type": "ORDER", "texts": { "en": "5" } }];
39
- expect(V8.getIsHidden(annotations)).toEqual({});
40
- });
41
- });
42
- describe('setIndexPositions', function () {
43
- var annotations = [{ type: 0 }, { type: 1 }, { type: 2 }, { type: 3 }, { type: "ORDER", text: "5" }, { type: "ORDER" }, { type: 6 }, { type: 7 }, { type: 8 }];
44
- test('has no result', function () {
45
- var dimObservationAnnotations = [0, 1];
46
- expect(V8.setIndexPositions('en')([])).toEqual({});
47
- });
48
- test('__indexPosition 5', function () {
49
- var dimObservationAnnotations = [4];
50
- expect(V8.setIndexPositions('en')([{ type: "ORDER", texts: { "en": "5" } }])).toEqual({ __indexPosition: 5 });
51
- });
52
- test('__indexPosition null', function () {
53
- var dimObservationAnnotations = [5];
54
- expect(V8.setIndexPositions('en')([{ type: "ORDER" }])).toEqual({ __indexPosition: null });
55
- });
56
- });
57
- describe('getRelationnalAnnotations', function () {
58
- var annotations = [{ type: 0 }, { type: 1 }, { type: 2 }, { type: 3 }, { type: 4 }, { type: 5 }, { type: 6 }, { type: 7 }, { type: 8 }];
59
- var dimAnnotations = [2, 3, 5, 8];
60
-
61
- test('get the true indexes ', function () {
62
- expect(V8.getRelationnalAnnotations(dimAnnotations)(annotations)).toEqual([{ type: 2 }, { type: 3 }, { type: 5 }, { type: 8 }]);
63
- });
64
- test('annotations is empty', function () {
65
- expect(V8.getRelationnalAnnotations(dimAnnotations)([])).toEqual([{}, {}, {}, {}]);
66
- });
67
- test('dimAnnotations is empty', function () {
68
- expect(V8.getRelationnalAnnotations([])(annotations)).toEqual([]);
69
- });
70
- });
71
- describe('getPriorityIndexPosition', function () {
72
- test('__indexPosition isNil expected order value', function () {
73
- expect(V8.getPriorityIndexPosition(50)({ __indexPosition: undefined })).toEqual({ __indexPosition: 50 });
74
- });
75
- test('__indexPosition 5 expected __indexPosition', function () {
76
- expect(V8.getPriorityIndexPosition(50)({ __indexPosition: 5 })).toEqual({ __indexPosition: 5 });
77
- });
78
- test('__indexPosition isNil and order too expected null', function () {
79
- expect(V8.getPriorityIndexPosition(null)({ __indexPosition: undefined })).toEqual({ __indexPosition: null });
80
- });
81
- });
82
- });