@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,206 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getAxisOptions = exports.getTimeProc = 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
- var _dateFns = require('date-fns');
17
-
18
- var _dateFns2 = _interopRequireDefault(_dateFns);
19
-
20
- var _is_monday = require('date-fns/is_monday');
21
-
22
- var _is_monday2 = _interopRequireDefault(_is_monday);
23
-
24
- var _is_tuesday = require('date-fns/is_tuesday');
25
-
26
- var _is_tuesday2 = _interopRequireDefault(_is_tuesday);
27
-
28
- var _is_wednesday = require('date-fns/is_wednesday');
29
-
30
- var _is_wednesday2 = _interopRequireDefault(_is_wednesday);
31
-
32
- var _is_thursday = require('date-fns/is_thursday');
33
-
34
- var _is_thursday2 = _interopRequireDefault(_is_thursday);
35
-
36
- var _is_friday = require('date-fns/is_friday');
37
-
38
- var _is_friday2 = _interopRequireDefault(_is_friday);
39
-
40
- var _is_saturday = require('date-fns/is_saturday');
41
-
42
- var _is_saturday2 = _interopRequireDefault(_is_saturday);
43
-
44
- var _is_sunday = require('date-fns/is_sunday');
45
-
46
- var _is_sunday2 = _interopRequireDefault(_is_sunday);
47
-
48
- var _get_iso_week = require('date-fns/get_iso_week');
49
-
50
- var _get_iso_week2 = _interopRequireDefault(_get_iso_week);
51
-
52
- var _date = require('../date');
53
-
54
- var _constants = require('../constants');
55
-
56
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
57
-
58
- 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; } }
59
-
60
- var defaultTimeFormats = {
61
- A: 'YYYY',
62
- S: 'YYYY-[S][SEMESTER]',
63
- Q: 'YYYY-[Q]Q',
64
- M: 'YYYY-MMM',
65
- W: 'YYYY-[W]WW',
66
- B: 'YYYY-[W]WW',
67
- D: 'YYYY-MM-DD',
68
- H: 'YYYY-MM-DD[T]HH:mm:ss',
69
- N: 'YYYY-MM-DD[T]HH:mm:ss'
70
- };
71
-
72
- var getTimeProc = exports.getTimeProc = function getTimeProc(frequency) {
73
- var timeFormats = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
74
- var locale = arguments[2];
75
-
76
- if (frequency === 'W' || frequency === 'B') {
77
- return function (datum) {
78
- var isoWeek = (0, _get_iso_week2.default)(datum);
79
- if (isoWeek !== 1) {
80
- return _dateFns2.default.format(datum, 'YYYY-[W]WW', { locale: (0, _date.getLocale)(locale) });
81
- }
82
- var seventhDay = _dateFns2.default.endOfWeek(datum, { weekStartsOn: 1 });
83
- return _dateFns2.default.format(seventhDay, 'YYYY-[W]WW', { locale: (0, _date.getLocale)(locale) });
84
- };
85
- }
86
- var format = R.pipe(R.mergeRight(defaultTimeFormats), R.ifElse(R.has(frequency), R.prop(frequency), R.prop('A')))(timeFormats);
87
- return function (datum) {
88
- return _dateFns2.default.format((0, _date.dateWithoutTZ)(new Date(datum)), format, { locale: (0, _date.getLocale)(locale) });
89
- };
90
- };
91
-
92
- var getTimeFrequency = function getTimeFrequency(data) {
93
- var frequency = R.prop('frequency', data);
94
- if (frequency === 'W' || frequency === 'B') {
95
- var date = R.pathOr(['series', 0, 'datapoints', 'x']);
96
- return R.cond([[_is_monday2.default, R.always('monday')], [_is_tuesday2.default, R.always('tueday')], [_is_wednesday2.default, R.always('wednesday')], [_is_thursday2.default, R.always('thursday')], [_is_friday2.default, R.always('friday')], [_is_saturday2.default, R.always('saturday')], [_is_sunday2.default, R.always('sunday')], [R.T, R.always('monday')]])(date);
97
- }
98
- return R.cond([[R.equals('A'), R.always('year')], [R.equals('S'), R.always('month')], [R.equals('Q'), R.always('month')], [R.equals('M'), R.always('month')], [R.equals('D'), R.always('day')], [R.equals('H'), R.always('hour')], [R.equals('N'), R.always('minute')], [R.T, R.always('year')]])(frequency);
99
- };
100
-
101
- var getTimeStep = R.cond([[R.equals('A'), R.always(1)], [R.equals('S'), R.always(6)], [R.equals('Q'), R.always(3)], [R.equals('M'), R.always(1)], [R.equals('W'), R.always(1)], [R.equals('B'), R.always(1)], [R.equals('D'), R.always(1)], [R.equals('H'), R.always(1)], [R.equals('N'), R.always(1)], [R.T, R.always(1)]]);
102
-
103
- var getAxisOptions = exports.getAxisOptions = function getAxisOptions(data, type, options, timeFormats, locale) {
104
-
105
- var axis = {
106
- linear: { pivot: { color: 'white' } },
107
- ordinal: { gap: .3, padding: .3 },
108
- thickness: 0
109
- };
110
-
111
- var linearProc = function linearProc(d) {
112
- return (0, _numeral2.default)(d).format('0,0.[00]');
113
- };
114
-
115
- return R.pipe(R.propOr({}, 'axis'), R.mergeDeepRight({ x: axis, y: axis }), R.cond([[R.always(R.equals(_constants.BAR, type)), R.pipe(R.mergeDeepRight({
116
- x: { format: { proc: R.identity }, tick: { thickness: 0, size: 0 } },
117
- y: {
118
- font: { baseline: 'ideographic' },
119
- format: { proc: linearProc },
120
- padding: 10,
121
- tick: { thickness: 0 }
122
- }
123
- }), R.over(R.lensPath(['y', 'linear', 'pivot', 'value']), R.when(R.isNil, R.always(0))))], [R.always(R.equals(_constants.ROW, type)), R.pipe(R.mergeDeepRight({
124
- x: {
125
- format: { proc: linearProc },
126
- orient: 'top',
127
- padding: 10,
128
- tick: { thickness: 0 }
129
- },
130
- y: {
131
- format: { proc: R.identity },
132
- ordinal: { minDisplaySize: 300 },
133
- tick: { thickness: 0, size: 0 }
134
- }
135
- }), R.over(R.lensPath(['x', 'linear', 'pivot', 'value']), R.when(R.isNil, R.always(0))))], [R.always(R.equals(_constants.SCATTER, type)), R.mergeDeepRight({
136
- x: {
137
- format: { proc: linearProc },
138
- tick: { thickness: 0, size: 0 }
139
- },
140
- y: {
141
- font: { baseline: 'ideographic' },
142
- format: { proc: linearProc },
143
- padding: 10,
144
- tick: { thickness: 0 }
145
- }
146
- })], [R.always(R.equals(_constants.TIMELINE, type)), R.pipe(R.mergeDeepRight({
147
- x: {
148
- format: {
149
- isTime: true,
150
- pattern: null,
151
- proc: getTimeProc(R.prop('frequency', data), timeFormats, locale)
152
- },
153
- tick: { size: -6, minorSize: -3, thickness: 2, minorThickness: 2, color: 'white' }
154
- },
155
- y: {
156
- font: { baseline: 'ideographic' },
157
- format: { proc: function proc(d) {
158
- return (0, _numeral2.default)(d).format('0,0.[00]');
159
- } },
160
- padding: 10,
161
- tick: { thickness: 0 }
162
- }
163
- }), R.evolve({
164
- x: R.pipe(R.set(R.lensPath(['linear', 'frequency']), getTimeFrequency(data)), R.set(R.lensPath(['linear', 'step']), getTimeStep(R.prop('frequency', data))), R.over(R.lensPath(['tick', 'step']), R.pipe(R.when(R.isNil, R.always(1)), R.multiply(getTimeStep(R.prop('frequency', data))))))
165
- }))], [R.always(R.equals(_constants.H_SYMBOL, type)), R.mergeDeepRight({
166
- x: {
167
- format: { proc: linearProc },
168
- orient: 'top',
169
- padding: 10,
170
- tick: { thickness: 0 }
171
- },
172
- y: {
173
- format: { proc: R.identity },
174
- ordinal: { minDisplaySize: 300 },
175
- tick: { thickness: 0, size: 5 }
176
- }
177
- })], [R.always(R.equals(_constants.V_SYMBOL, type)), R.mergeDeepRight({
178
- x: { format: { proc: R.identity }, tick: { thickness: 0, size: 0 } },
179
- y: {
180
- font: { baseline: 'ideographic' },
181
- format: { proc: linearProc },
182
- padding: 10,
183
- tick: { thickness: 0 }
184
- }
185
- })], [R.always(R.equals(_constants.STACKED_BAR, type)), R.pipe(R.mergeDeepRight({
186
- x: { format: { proc: R.identity }, tick: { thickness: 0, size: 0 } },
187
- y: {
188
- font: { baseline: 'ideographic' },
189
- format: { proc: linearProc },
190
- padding: 10,
191
- tick: { thickness: 0 }
192
- }
193
- }), R.over(R.lensPath(['y', 'linear', 'pivot', 'value']), R.when(R.isNil, R.always(0))))], [R.always(R.equals(_constants.STACKED_ROW, type)), R.pipe(R.mergeDeepRight({
194
- x: {
195
- format: { proc: linearProc },
196
- orient: 'top',
197
- padding: 10,
198
- tick: { thickness: 0 }
199
- },
200
- y: {
201
- format: { proc: R.identity },
202
- ordinal: { minDisplaySize: 300 },
203
- tick: { thickness: 0, size: 0 }
204
- }
205
- }), R.over(R.lensPath(['x', 'linear', 'pivot', 'value']), R.when(R.isNil, R.always(0))))], [R.T, R.identity]]))(options);
206
- };
@@ -1,51 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getBaseOptions = undefined;
7
-
8
- var _ramda = require('ramda');
9
-
10
- var R = _interopRequireWildcard(_ramda);
11
-
12
- var _constants = require('../constants');
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 getBaseOptions = exports.getBaseOptions = function getBaseOptions(type, options) {
17
- return R.pipe(R.propOr({}, 'base'), R.cond([[R.always(R.equals(_constants.BAR, type)), R.mergeDeepRight({
18
- minDisplayHeight: 100,
19
- minDisplayWidth: 300,
20
- padding: { top: 20 },
21
- innerPadding: { left: 20, right: 20, bottom: 10 }
22
- })], [R.always(R.equals(_constants.ROW, type)), R.mergeDeepRight({
23
- minDisplayHeight: 300,
24
- minDisplayWidth: 100,
25
- padding: { top: 10, left: 10, right: 20 }
26
- })], [R.always(R.equals(_constants.SCATTER, type)), R.mergeDeepRight({
27
- minDisplayHeight: 100,
28
- minDisplayWidth: 100,
29
- padding: { top: 40, right: 10 }
30
- })], [R.always(R.equals(_constants.TIMELINE, type)), R.mergeDeepRight({
31
- minDisplayHeight: 300,
32
- minDisplayWidth: 100,
33
- isAnnotated: false,
34
- padding: { top: 20 },
35
- innerPadding: { left: 40, right: 40 }
36
- })], [R.always(R.equals(_constants.H_SYMBOL, type)), R.mergeDeepRight({
37
- minDisplayHeight: 300,
38
- minDisplayWidth: 100,
39
- padding: { top: 10, left: 10, right: 20 }
40
- })], [R.always(R.equals(_constants.V_SYMBOL, type)), R.mergeDeepRight({
41
- minDisplayHeight: 100,
42
- minDisplayWidth: 300,
43
- padding: { top: 20 },
44
- innerPadding: { left: 20, right: 20, bottom: 10 }
45
- })], [R.always(R.equals(_constants.STACKED_BAR, type)), R.mergeDeepRight({
46
- minDisplayHeight: 100,
47
- minDisplayWidth: 300,
48
- padding: { top: 20 },
49
- innerPadding: { left: 20, right: 20, bottom: 10 }
50
- })], [R.always(R.equals(_constants.STACKED_ROW, type)), R.mergeDeepRight({ padding: { top: 10, left: 10, right: 20 } })], [R.T, R.identity]]))(options);
51
- };
@@ -1,106 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getChartOptions = exports.symbolMarkers = exports.FOCUS_COLORS = 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 _numeral = require('numeral');
17
-
18
- var _numeral2 = _interopRequireDefault(_numeral);
19
-
20
- var _getAxisOptions = require('./getAxisOptions');
21
-
22
- var _getBaseOptions = require('./getBaseOptions');
23
-
24
- var _getGridOptions = require('./getGridOptions');
25
-
26
- var _getTooltipOptions = require('./getTooltipOptions');
27
-
28
- var _constants = require('../constants');
29
-
30
- 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; } }
31
-
32
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33
-
34
- var FOCUS_COLORS = exports.FOCUS_COLORS = {
35
- highlightColors: ['#E73741', '#0F8FD9', '#993484', '#DF521E', '#719E24', '#E1B400', '#32A674', '#0B68AF'],
36
- baselineColors: ['#0B1E2D']
37
- };
38
-
39
- var symbolMarkers = exports.symbolMarkers = function symbolMarkers() {
40
- var paths = {
41
- circle: function circle(size) {
42
- var r = Math.sqrt(size) / 2;
43
- return 'M0,' + r + ' A' + r + ',' + r + ' 0 1,1 0,' + -r + ' A' + r + ',' + r + ' 0 1,1 0,' + r + ' Z';
44
- },
45
- square: function square(size) {
46
- var r = Math.sqrt(size) / 2;
47
- return 'M' + -r + ',' + -r + ' L' + r + ',' + -r + ' ' + r + ',' + r + ' ' + -r + ',' + r + ' Z';
48
- },
49
- cross: function cross(size) {
50
- var r = Math.sqrt(size) / 2;
51
- return 'M' + -r + ',' + r + ' L' + r + ',' + -r + ' M' + r + ',' + r + ' L' + -r + ',' + -r;
52
- },
53
- 'triangle': function triangle(size) {
54
- var rx = Math.sqrt(size) / Math.sqrt(3);
55
- var ry = Math.sqrt(size) / 2;
56
- return 'M0,' + -ry + ' L' + rx + ',' + ry + ' ' + -rx + ',' + ry + ' Z';
57
- }
58
- };
59
- return [{ style: { stroke: '#39617D', fill: '#39617D' }, path: paths.circle }, { style: { stroke: '#39617D', fill: '#DBEBF2' }, rotate: 45, path: paths.square }, { style: { stroke: '#39617D', fill: '#39617D', strokeWidth: 2 }, path: paths.cross }, { style: { stroke: '#39617D', fill: '#DBEBF2' }, path: paths.square }, { style: { stroke: '#39617D', fill: '#39617D' }, path: paths.triangle }];
60
- };
61
-
62
- var getAnnotationOptions = function getAnnotationOptions(type, options) {
63
- return R.pipe(R.pathOr({}, ['serie', 'annotation']), R.mergeRight({
64
- format: {
65
- datapoint: { proc: function proc(d) {
66
- return (0, _numeral2.default)(d).format('0,0.[00]');
67
- } }
68
- }
69
- }), R.cond([[R.always(R.equals(_constants.SCATTER, type)), R.mergeRight({ display: 'never' })], [R.always(R.equals(_constants.TIMELINE, type)), R.mergeDeepRight({ format: { datapoint: { pattern: '.2f' } } })], [R.T, R.identity]]))(options);
70
- };
71
-
72
- var getChartOptions = exports.getChartOptions = function getChartOptions(data, type, options, tooltipFonts, timeFormats, locale) {
73
- var defaultSerieColors = R.ifElse(R.anyPass([R.equals(_constants.STACKED_BAR), R.equals(_constants.STACKED_ROW)]), R.always(['#607D8B']), R.always(['#8EA4B1']))(type);
74
-
75
- return {
76
- axis: (0, _getAxisOptions.getAxisOptions)(data, type, options, timeFormats, locale),
77
- background: R.pipe(R.propOr({}, 'background'), R.mergeRight({ color: '#DBEBF2' }))(options),
78
- base: (0, _getBaseOptions.getBaseOptions)(type, options),
79
- grid: (0, _getGridOptions.getGridOptions)(type, options),
80
- map: R.pipe(R.propOr({}, 'map'), R.mergeRight({ intBoundariesColor: '#8EA4B1' }))(options),
81
- serie: (0, _extends3.default)({}, R.propOr({}, 'serie', options), {
82
- annotation: getAnnotationOptions(type, options),
83
- choropleth: R.pipe(R.pathOr({}, ['serie', 'choropleth']), R.mergeRight({
84
- divisions: 4,
85
- domain: 'YlorRd',
86
- invert: false,
87
- labelDisplay: 'none'
88
- }))(options),
89
- stacked: R.pipe(R.pathOr({}, ['serie', 'stacked']), R.mergeRight({ strokeThickness: 1, strokeColor: '#F8FAFC' }))(options),
90
- symbol: R.pipe(R.pathOr({}, ['serie', 'symbol']), R.mergeRight({
91
- markers: symbolMarkers(),
92
- markerDefaultSize: 60,
93
- markerDefaultStrokeWidth: 1,
94
- gapMinMaxColor: '#607D8B',
95
- gapMinMaxThickness: 1,
96
- gapAxisMinColor: 'white',
97
- gapAxisMinThickness: 1
98
- }))(options),
99
- colors: R.pathOr(defaultSerieColors, ['serie', 'colors'], options),
100
- overColors: R.pathOr(['#39617D'], ['serie', 'overColors'], options),
101
- highlightColors: R.pathOr(FOCUS_COLORS.highlightColors, ['serie', 'highlightColors'], options),
102
- baselineColors: R.pathOr(FOCUS_COLORS.baselineColors, ['serie', 'baselineColors'], options),
103
- tooltip: (0, _getTooltipOptions.getTooltipOptions)(data, type, options, tooltipFonts, timeFormats, locale)
104
- })
105
- };
106
- };
@@ -1,21 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getGridOptions = undefined;
7
-
8
- var _ramda = require('ramda');
9
-
10
- var R = _interopRequireWildcard(_ramda);
11
-
12
- var _constants = require('../constants');
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 getGridOptions = exports.getGridOptions = function getGridOptions(type, options) {
17
- var grid = { baselines: [0], color: 'white' };
18
- var hideGrid = R.assoc('thickness', 0);
19
-
20
- return R.pipe(R.propOr({}, 'grid'), R.mergeDeepRight({ x: grid, y: grid }), R.cond([[R.always(R.equals(_constants.BAR, type)), R.mergeDeepRight({ x: { thickness: 0 } })], [R.always(R.equals(_constants.ROW, type)), R.mergeDeepRight({ y: { thickness: 0 } })], [R.always(R.equals(_constants.TIMELINE, type)), R.mergeDeepRight({ x: { thickness: 0 } })], [R.always(R.equals(_constants.H_SYMBOL, type)), R.mergeDeepRight({ y: { thickness: 0 } })], [R.always(R.equals(_constants.V_SYMBOL, type)), R.mergeDeepRight({ x: { thickness: 0 } })], [R.always(R.equals(_constants.STACKED_BAR, type)), R.mergeDeepRight({ x: { thickness: 0 } })], [R.always(R.equals(_constants.STACKED_ROW, type)), R.mergeDeepRight({ y: { thickness: 0 } })], [R.T, R.identity]]))(options);
21
- };
@@ -1,84 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getTooltipOptions = 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
- var _dateFns = require('date-fns');
17
-
18
- var _constants = require('../constants');
19
-
20
- var _getAxisOptions = require('./getAxisOptions');
21
-
22
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
-
24
- function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
25
-
26
- var getTooltipOptions = exports.getTooltipOptions = function getTooltipOptions(data, type, options) {
27
- var fonts = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
28
- var timeFormats = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {};
29
- var locale = arguments[5];
30
-
31
- var primaryFonts = function primaryFonts(color) {
32
- return '\n font-size: ' + R.pathOr(12, ['primary', 'fontSize'], fonts) + 'px;\n font-family: ' + R.pathOr('inherit', ['primary', 'fontFamily'], fonts) + ';\n font-weight: ' + R.pathOr('normal', ['primary', 'fontWeight'], fonts) + ';\n color: ' + color + ';\n padding: 5px;\n border: 1px solid ' + color + ';\n background: white;\n opacity: .8;\n ';
33
- };
34
-
35
- var secondaryFonts = '\n font-family: ' + R.pathOr('inherit', ['secondary', 'fontFamily'], fonts) + ';\n font-size: ' + R.pathOr(12, ['secondary', 'fontSize'], fonts) + 'px;\n font-weight: ' + R.pathOr('normal', ['secondary', 'fontWeight'], fonts) + ';\n ';
36
-
37
- var valueFormatter = function valueFormatter(d) {
38
- return (0, _numeral2.default)(d).format('0,0.[00]');
39
- };
40
-
41
- var timeFormatter = R.pipe(R.prop('frequency'), function (freq) {
42
- return (0, _getAxisOptions.getTimeProc)(freq, timeFormats, locale);
43
- }, R.when(R.anyPass([R.isNil, R.complement(R.is)(Function)]), R.always(function (date) {
44
- return (0, _dateFns.format)(date, 'MMM YY');
45
- })))(data);
46
-
47
- return R.pipe(R.pathOr({}, ['serie', 'tooltip']), R.cond([[R.always(R.equals(_constants.BAR, type)), R.mergeRight({
48
- layout: function layout(serie, datum, color) {
49
- return '\n <div style="' + primaryFonts(color) + '">\n <div style="text-align: right;">\n ' + datum.x + '\n </div>\n <div style="text-align: right; ' + secondaryFonts + '">\n ' + (datum.formatedValue || valueFormatter(datum.y)) + '\n </div>\n </div>\n ';
50
- }
51
- })], [R.always(R.equals(_constants.ROW, type)), R.mergeRight({
52
- layout: function layout(serie, datum, color) {
53
- return '\n <div style="' + primaryFonts(color) + '">\n <div style="text-align: right;">\n ' + datum.y + '\n </div>\n <div style="text-align: right; ' + secondaryFonts + '">\n ' + (datum.formatedValue || valueFormatter(datum.x)) + '\n </div>\n <div>\n ';
54
- }
55
- })], [R.always(R.equals(_constants.SCATTER, type)), R.mergeRight({
56
- layout: function layout(serie, datum, color) {
57
- return '\n <div style="' + primaryFonts(color) + '">\n <div style="text-align: right;">\n ' + R.pipe(R.propOr({}, 'dimensionValues'), R.values, R.pluck('name'), R.join(' '))(datum) + '\n </div>\n <div style="text-align: right;">\n ' + R.path(['dimensionValues', 'x', 'name'], serie) + '\n <span style="' + secondaryFonts + '">\n ' + (datum.xFormat || valueFormatter(datum.x)) + '\n </span>\n </div>\n <div style="text-align: right;">\n ' + R.path(['dimensionValues', 'y', 'name'], serie) + '\n <span style="' + secondaryFonts + '">\n ' + (datum.yFormat || valueFormatter(datum.y)) + '\n </span>\n </div>\n </div>\n ';
58
- }
59
- })], [R.always(R.equals(_constants.TIMELINE, type)), R.mergeRight({
60
- layout: function layout(serie, datum, color) {
61
- return '\n <div style="' + primaryFonts(color) + '">\n <div style="text-align: right;">\n ' + R.pipe(R.propOr({}, 'dimensionValues'), R.values, R.pluck('name'), R.join('<br />'))(datum) + '\n </div>\n <div style="text-align: right;">\n ' + datum.timeLabel + '\n </div>\n <div style="text-align: right; ' + secondaryFonts + '">\n ' + (datum.formatedValue || valueFormatter(datum.y)) + '\n </div>\n </div>\n ';
62
- }
63
- })], [R.always(R.equals(_constants.H_SYMBOL, type)), R.mergeRight({
64
- layout: function layout(serie, datum, color) {
65
- return '\n <div style="' + primaryFonts(color) + '">\n <div style="text-align: right;">\n ' + datum.y + '\n <br />\n ' + datum.symbolValue + '\n </div>\n <div style="text-align: right; ' + secondaryFonts + '">\n ' + (datum.formatedValue || valueFormatter(datum.x)) + '\n </div>\n </div>\n ';
66
- }
67
- })], [R.always(R.equals(_constants.V_SYMBOL, type)), R.mergeRight({
68
- layout: function layout(serie, datum, color) {
69
- return '\n <div style="' + primaryFonts(color) + '">\n <div style="text-align: right;">\n ' + datum.x + '\n <br />\n ' + datum.symbolValue + '\n </div>\n <div style="text-align: right; ' + secondaryFonts + '">\n ' + (datum.formatedValue || valueFormatter(datum.y)) + '\n </div>\n </div>\n ';
70
- }
71
- })], [R.always(R.equals(_constants.STACKED_BAR, type)), R.mergeRight({
72
- layout: function layout(serie, datum, color) {
73
- return '\n <div style="' + primaryFonts(color) + '">\n <div style="text-align: right;">\n ' + datum.x + '\n </div>\n <div style="text-align: right;">\n ' + datum.layerLabel + '\n </div>\n <div style="text-align: right; font-size: ' + R.pathOr(12, ['secondary', 'fontSize'], fonts) + 'px;">\n Value:\n <span style="' + secondaryFonts + '">\n ' + (R.is(Function, datum.formater) ? datum.formater(datum.height) : valueFormatter(datum.height)) + '\n </span>\n </div>\n <div style="text-align: right; font-size: ' + R.pathOr(12, ['secondary', 'fontSize'], fonts) + 'px;">\n Cumulated:\n <span style="' + secondaryFonts + '">\n ' + (R.is(Function, datum.formater) ? datum.formater(datum.y) : valueFormatter(datum.y)) + '\n </span>\n </div>\n </div>\n ';
74
- }
75
- })], [R.always(R.equals(_constants.STACKED_ROW, type)), R.mergeRight({
76
- layout: function layout(serie, datum, color) {
77
- return '\n <div style="' + primaryFonts(color) + '">\n <div style="text-align: right;">\n ' + datum.y + '\n </div>\n <div style="text-align: right;">\n ' + datum.layerLabel + '\n </div>\n <div style="text-align: right; font-size: ' + R.pathOr(12, ['secondary', 'fontSize'], fonts) + 'px;">\n Value:\n <span style="' + secondaryFonts + '">\n ' + (R.is(Function, datum.formater) ? datum.formater(datum.width) : valueFormatter(datum.width)) + '\n </span>\n </div>\n <div style="text-align: right; font-size: ' + R.pathOr(12, ['secondary', 'fontSize'], fonts) + 'px;">\n Cumulated:\n <span style="' + secondaryFonts + '">\n ' + (R.is(Function, datum.formater) ? datum.formater(datum.x) : valueFormatter(datum.x)) + '\n </span>\n </div>\n </div>\n ';
78
- }
79
- })], [R.always(R.equals(_constants.CHORO, type)), R.mergeRight({
80
- layout: function layout(serie, datum, color) {
81
- return '\n <div style="' + primaryFonts(color) + '">\n <div style="text-align: right;">\n ' + R.pathOr('', ['properties', 'label'], datum) + '\n </div>\n <div style="text-align: right;">\n ' + R.pathOr('', ['properties', 'category'], datum) + '\n </div>\n <div style="text-align: right; ' + secondaryFonts + '">\n ' + R.pipe(R.pathOr(null, ['properties', 'value']), valueFormatter)(datum) + '\n </div>\n </div>\n ';
82
- }
83
- })], [R.T, R.identity]]))(options);
84
- };
@@ -1,68 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.REPYEARSTART = exports.REPORTING_YEAR_START_DAY = exports.OBS_TYPE_STRING = exports.OBS_TYPE_NUMERICAL_STRING = exports.OBS_TYPE_NUMBER = exports.V8_SDMX_JSON = exports.DEFAULT_MAJOR_ATTRIBUTES = exports.DIMENSION_DISPLAY_PARTS = exports.DEFAULT_REJECTED_SUBTITLE_IDS = exports.DEFAULT_REJECTED_UPR_VALUES_IDS = exports.DEFAULT_UPR_IDS = exports.FREQ_M = exports.FREQ_Q = exports.FREQ_S = exports.FREQ_A = exports.TYPES = exports.VALUES = exports.PERCENT = exports.CHORO = exports.STACKED_ROW = exports.STACKED_BAR = exports.V_SYMBOL = exports.H_SYMBOL = exports.TIMELINE = exports.SCATTER = exports.ROW = exports.BAR = undefined;
7
-
8
- var _defineProperty2 = require('babel-runtime/helpers/defineProperty');
9
-
10
- var _defineProperty3 = _interopRequireDefault(_defineProperty2);
11
-
12
- var _TYPES;
13
-
14
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
-
16
- var BAR = exports.BAR = 'BarChart';
17
- var ROW = exports.ROW = 'RowChart';
18
- var SCATTER = exports.SCATTER = 'ScatterChart';
19
- var TIMELINE = exports.TIMELINE = 'TimelineChart';
20
- var H_SYMBOL = exports.H_SYMBOL = 'HorizontalSymbolChart';
21
- var V_SYMBOL = exports.V_SYMBOL = 'VerticalSymbolChart';
22
- var STACKED_BAR = exports.STACKED_BAR = 'StackedBarChart';
23
- var STACKED_ROW = exports.STACKED_ROW = 'StackedRowChart';
24
- var CHORO = exports.CHORO = 'ChoroplethChart';
25
- var PERCENT = exports.PERCENT = 'percent';
26
- var VALUES = exports.VALUES = 'values';
27
- var TYPES = exports.TYPES = (_TYPES = {}, (0, _defineProperty3.default)(_TYPES, BAR, BAR), (0, _defineProperty3.default)(_TYPES, ROW, ROW), (0, _defineProperty3.default)(_TYPES, SCATTER, SCATTER), (0, _defineProperty3.default)(_TYPES, TIMELINE, TIMELINE), (0, _defineProperty3.default)(_TYPES, H_SYMBOL, H_SYMBOL), (0, _defineProperty3.default)(_TYPES, V_SYMBOL, V_SYMBOL), (0, _defineProperty3.default)(_TYPES, STACKED_BAR, STACKED_BAR), (0, _defineProperty3.default)(_TYPES, STACKED_ROW, STACKED_ROW), (0, _defineProperty3.default)(_TYPES, CHORO, CHORO), _TYPES);
28
- var FREQ_A = exports.FREQ_A = 'annual';
29
- var FREQ_S = exports.FREQ_S = 'semesterly';
30
- var FREQ_Q = exports.FREQ_Q = 'quarterly';
31
- var FREQ_M = exports.FREQ_M = 'monthly';
32
- var DEFAULT_UPR_IDS = exports.DEFAULT_UPR_IDS = {
33
- U: ['UNIT', 'UNIT_MEASURE', 'UNIT_MEAS', 'UNITS'],
34
- P: ['UNIT_MULT', 'POWERCODE', 'POWER', 'MAGNITUDE', 'SCALE'],
35
- R: ['REF_PERIOD', 'REFERENCEPERIOD', 'BASE_PER']
36
- };
37
-
38
- var DEFAULT_REJECTED_UPR_VALUES_IDS = exports.DEFAULT_REJECTED_UPR_VALUES_IDS = {
39
- U: [],
40
- P: ['0'],
41
- R: []
42
- };
43
-
44
- var DEFAULT_REJECTED_SUBTITLE_IDS = exports.DEFAULT_REJECTED_SUBTITLE_IDS = ['_L', '_T', '_Z'];
45
-
46
- var DIMENSION_DISPLAY_PARTS = exports.DIMENSION_DISPLAY_PARTS = {
47
- DESCRIPTION: 'description',
48
- CODE: 'code',
49
- BOTH: 'both'
50
- };
51
-
52
- var DEFAULT_MAJOR_ATTRIBUTES = exports.DEFAULT_MAJOR_ATTRIBUTES = {
53
- DECIMALS: {
54
- ID: 'DECIMALS',
55
- ROLE: 'DECIMALS'
56
- },
57
- SCALE: {
58
- ID: 'SCALE'
59
- }
60
- };
61
-
62
- var V8_SDMX_JSON = exports.V8_SDMX_JSON = "application/vnd.sdmx.data+json;version=1.0.0-wd";
63
-
64
- var OBS_TYPE_NUMBER = exports.OBS_TYPE_NUMBER = 'OBS_TYPE_NUMBER';
65
- var OBS_TYPE_NUMERICAL_STRING = exports.OBS_TYPE_NUMERICAL_STRING = 'OBS_TYPE_NUMERICAL_STRING';
66
- var OBS_TYPE_STRING = exports.OBS_TYPE_STRING = 'OBS_TYPE_STRING';
67
- var REPORTING_YEAR_START_DAY = exports.REPORTING_YEAR_START_DAY = 'REPORTING_YEAR_START_DAY';
68
- var REPYEARSTART = exports.REPYEARSTART = 'REPYEARSTART';