@sis-cc/dotstatsuite-components 8.11.0 → 8.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/app.js +13 -5
- package/lib/rules/src/factories/stacked-dimension.js +17 -23
- package/lib/rules/src/factories/stacked-series.js +82 -158
- package/lib/rules/src/index.js +3 -6
- package/lib/rules/src/properties/index.js +2 -1
- package/lib/rules/src/properties/stacked.js +35 -11
- package/lib/rules/src/properties/utils.js +7 -1
- package/lib/rules-driver/src/app.js +116 -167
- package/lib/viewer/src/app/use-case-3.js +52 -0
- package/lib/viewer/src/app.js +9 -0
- package/lib/viewer/src/index.js +1 -1
- package/lib/viewer/src/legends/SeriesLegend.js +3 -1
- package/package.json +2 -2
- package/src/app.js +10 -5
- package/src/rules/src/factories/stacked-dimension.js +14 -10
- package/src/rules/src/factories/stacked-series.js +102 -94
- package/src/rules/src/index.js +1 -2
- package/src/rules/src/properties/index.js +3 -1
- package/src/rules/src/properties/stacked.js +23 -7
- package/src/rules/src/properties/utils.js +8 -3
- package/src/rules-driver/src/app.js +116 -132
- package/src/rules-driver/src/mocks/data1.json +332 -0
- package/src/rules-driver/src/mocks/data2.json +309 -0
- package/src/viewer/src/app/use-case-3.js +18 -0
- package/src/viewer/src/app.js +6 -0
- package/src/viewer/src/index.js +2 -2
- package/src/viewer/src/legends/SeriesLegend.js +4 -1
- package/lib/rules-driver/src/app/chart.js +0 -52
- package/lib/rules-driver/src/app/config-axis.js +0 -95
- package/lib/rules-driver/src/app/config-buttons.js +0 -47
- package/lib/rules-driver/src/app/config-input.js +0 -51
- package/lib/rules-driver/src/app/config-select.js +0 -57
- package/lib/rules-driver/src/app/config-t4size.js +0 -61
- package/lib/rules-driver/src/app/config1.js +0 -148
- package/lib/rules-driver/src/app/menu.js +0 -44
- package/lib/rules-driver/src/app/viewer1.js +0 -39
- package/lib/rules-driver/src/app/viewer2.js +0 -115
- package/src/rules-driver/src/app/chart.js +0 -18
- package/src/rules-driver/src/app/config-axis.js +0 -54
- package/src/rules-driver/src/app/config-buttons.js +0 -27
- package/src/rules-driver/src/app/config-input.js +0 -35
- package/src/rules-driver/src/app/config-select.js +0 -25
- package/src/rules-driver/src/app/config-t4size.js +0 -50
- package/src/rules-driver/src/app/config1.js +0 -120
- package/src/rules-driver/src/app/menu.js +0 -27
- package/src/rules-driver/src/app/viewer1.js +0 -18
- package/src/rules-driver/src/app/viewer2.js +0 -77
- package/src/rules-driver/src/mocks/ecb.json +0 -2069
- package/src/rules-driver/src/mocks/ins.json +0 -264
- package/src/rules-driver/src/mocks/oecd-time.json +0 -864
- package/src/rules-driver/src/mocks/oecd.json +0 -372
- package/src/rules-driver/src/mocks/tunisia.json +0 -333
|
@@ -3,201 +3,150 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default = undefined;
|
|
7
6
|
|
|
8
7
|
var _extends2 = require('babel-runtime/helpers/extends');
|
|
9
8
|
|
|
10
9
|
var _extends3 = _interopRequireDefault(_extends2);
|
|
11
10
|
|
|
12
|
-
var
|
|
11
|
+
var _objectWithoutProperties2 = require('babel-runtime/helpers/objectWithoutProperties');
|
|
13
12
|
|
|
14
|
-
var
|
|
13
|
+
var _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2);
|
|
15
14
|
|
|
16
|
-
var
|
|
15
|
+
var _slicedToArray2 = require('babel-runtime/helpers/slicedToArray');
|
|
17
16
|
|
|
18
|
-
var
|
|
19
|
-
|
|
20
|
-
var _createClass2 = require('babel-runtime/helpers/createClass');
|
|
21
|
-
|
|
22
|
-
var _createClass3 = _interopRequireDefault(_createClass2);
|
|
23
|
-
|
|
24
|
-
var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
|
|
25
|
-
|
|
26
|
-
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
|
|
27
|
-
|
|
28
|
-
var _inherits2 = require('babel-runtime/helpers/inherits');
|
|
29
|
-
|
|
30
|
-
var _inherits3 = _interopRequireDefault(_inherits2);
|
|
17
|
+
var _slicedToArray3 = _interopRequireDefault(_slicedToArray2);
|
|
31
18
|
|
|
32
19
|
var _react = require('react');
|
|
33
20
|
|
|
34
21
|
var _react2 = _interopRequireDefault(_react);
|
|
35
22
|
|
|
36
|
-
var
|
|
37
|
-
|
|
38
|
-
var _core = require('@blueprintjs/core');
|
|
23
|
+
var _ramda = require('ramda');
|
|
39
24
|
|
|
40
|
-
|
|
25
|
+
var R = _interopRequireWildcard(_ramda);
|
|
41
26
|
|
|
42
|
-
var
|
|
27
|
+
var _dotstatsuiteVisions = require('@sis-cc/dotstatsuite-visions');
|
|
43
28
|
|
|
44
29
|
var _ = require('./');
|
|
45
30
|
|
|
46
31
|
var _2 = _interopRequireDefault(_);
|
|
47
32
|
|
|
48
|
-
var
|
|
49
|
-
|
|
50
|
-
var _oecd2 = _interopRequireDefault(_oecd);
|
|
51
|
-
|
|
52
|
-
var _oecdTime = require('./mocks/oecd-time.json');
|
|
53
|
-
|
|
54
|
-
var _oecdTime2 = _interopRequireDefault(_oecdTime);
|
|
55
|
-
|
|
56
|
-
var _menu = require('./app/menu');
|
|
33
|
+
var _data = require('./mocks/data1.json');
|
|
57
34
|
|
|
58
|
-
var
|
|
35
|
+
var _data2 = _interopRequireDefault(_data);
|
|
59
36
|
|
|
60
|
-
var
|
|
37
|
+
var _data3 = require('./mocks/data2.json');
|
|
61
38
|
|
|
62
|
-
var
|
|
39
|
+
var _data4 = _interopRequireDefault(_data3);
|
|
63
40
|
|
|
64
|
-
var
|
|
41
|
+
var _3 = require('../../');
|
|
65
42
|
|
|
66
|
-
var
|
|
43
|
+
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; } }
|
|
67
44
|
|
|
68
45
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
69
46
|
|
|
70
|
-
var
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
47
|
+
var labels = {
|
|
48
|
+
focus: 'Chart Focus',
|
|
49
|
+
highlight: 'Highlights',
|
|
50
|
+
baseline: 'Baseline',
|
|
51
|
+
select: 'Select',
|
|
52
|
+
size: 'Chart Size',
|
|
53
|
+
width: 'Width',
|
|
54
|
+
height: 'Height',
|
|
55
|
+
series: 'Chart Series',
|
|
56
|
+
scatterDimension: 'Scatter Dimension',
|
|
57
|
+
scatterX: 'Scatter X',
|
|
58
|
+
scatterY: 'Scatter Y',
|
|
59
|
+
symbolDimension: 'Symbol Dimension',
|
|
60
|
+
stackedDimension: 'Stacked Dimension',
|
|
61
|
+
stackedMode: 'Stacked Mode',
|
|
62
|
+
stackedModeOptions: {
|
|
63
|
+
values: 'Values',
|
|
64
|
+
percent: 'Percent'
|
|
65
|
+
},
|
|
66
|
+
axisX: 'Chart X Axis',
|
|
67
|
+
axisY: 'Chart Y Axis',
|
|
68
|
+
max: 'Max',
|
|
69
|
+
min: 'Min',
|
|
70
|
+
pivot: 'Pivot',
|
|
71
|
+
step: 'Step',
|
|
72
|
+
frequency: 'Frequency',
|
|
73
|
+
freqStep: 'Frequency Step',
|
|
74
|
+
logo: 'Remove logo',
|
|
75
|
+
copyright: 'Remove copyright',
|
|
76
|
+
title: 'Title',
|
|
77
|
+
subtitle: 'Subtitle',
|
|
78
|
+
source: 'Source',
|
|
79
|
+
information: 'Information',
|
|
80
|
+
reset: 'reset label',
|
|
81
|
+
uniqFocusOption: 'serie',
|
|
82
|
+
display: 'Display',
|
|
83
|
+
displayOptions: {
|
|
84
|
+
name: 'Name',
|
|
85
|
+
code: 'Code',
|
|
86
|
+
both: 'Both'
|
|
104
87
|
}
|
|
88
|
+
};
|
|
105
89
|
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
align: 'left',
|
|
156
|
-
items: this.viewerOptions,
|
|
157
|
-
onChange: this.onChangeViewer,
|
|
158
|
-
selected: viewer
|
|
159
|
-
}),
|
|
160
|
-
_react2.default.createElement('span', { className: 'pt-navbar-divider' }),
|
|
161
|
-
_react2.default.createElement(_menu2.default, {
|
|
162
|
-
align: 'right',
|
|
163
|
-
items: this.chartTypes,
|
|
164
|
-
onChange: this.onChangeType,
|
|
165
|
-
selected: type
|
|
90
|
+
var renameKey = R.curry(function (oldKey, newKey, obj) {
|
|
91
|
+
return R.assoc(newKey, R.prop(oldKey, obj), R.dissoc(oldKey, obj));
|
|
92
|
+
});
|
|
93
|
+
|
|
94
|
+
var renameProperties = function renameProperties() {
|
|
95
|
+
var keys = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
96
|
+
return R.map(R.ifElse(R.pipe(R.prop('id'), R.flip(R.includes)(keys)), renameKey('onChange', 'onSubmit'), R.identity));
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
var propertiesKeys = ['width', 'height', 'freqStep', 'maxX', 'minX', 'pivotX', 'stepX', 'maxY', 'minY', 'pivotY', 'stepY', 'title', 'subtitle', 'source'];
|
|
100
|
+
|
|
101
|
+
var App = function App() {
|
|
102
|
+
var _useState = (0, _react.useState)(true),
|
|
103
|
+
_useState2 = (0, _slicedToArray3.default)(_useState, 2),
|
|
104
|
+
toggle = _useState2[0],
|
|
105
|
+
setToggle = _useState2[1];
|
|
106
|
+
|
|
107
|
+
var dataflow = { id: "DF_KEI_21760", name: "Harmonised Unemployment Rate" };
|
|
108
|
+
var display = 'label';
|
|
109
|
+
var type = 'BarChart';
|
|
110
|
+
var props = { dataflow: dataflow, display: display, type: type };
|
|
111
|
+
|
|
112
|
+
return _react2.default.createElement(
|
|
113
|
+
'div',
|
|
114
|
+
null,
|
|
115
|
+
_react2.default.createElement(
|
|
116
|
+
'button',
|
|
117
|
+
{ onClick: function onClick() {
|
|
118
|
+
return setToggle(function (prev) {
|
|
119
|
+
return !prev;
|
|
120
|
+
});
|
|
121
|
+
}, style: { marginBottom: '10px' } },
|
|
122
|
+
'Toggle Selection'
|
|
123
|
+
),
|
|
124
|
+
_react2.default.createElement(_2.default, (0, _extends3.default)({
|
|
125
|
+
data: toggle ? _data2.default : _data4.default
|
|
126
|
+
}, props, {
|
|
127
|
+
display: display,
|
|
128
|
+
type: type,
|
|
129
|
+
render: function render(_ref) {
|
|
130
|
+
var properties = _ref.properties,
|
|
131
|
+
parsedProps = (0, _objectWithoutProperties3.default)(_ref, ['properties']);
|
|
132
|
+
|
|
133
|
+
return _react2.default.createElement(
|
|
134
|
+
'div',
|
|
135
|
+
null,
|
|
136
|
+
_react2.default.createElement(_dotstatsuiteVisions.ChartsConfig, {
|
|
137
|
+
properties: R.pipe(renameProperties(propertiesKeys))(properties),
|
|
138
|
+
labels: labels
|
|
166
139
|
}),
|
|
167
|
-
_react2.default.createElement(
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
options: { base: { height: 500 } },
|
|
181
|
-
type: type,
|
|
182
|
-
render: function render(_ref) {
|
|
183
|
-
var chartData = _ref.chartData,
|
|
184
|
-
chartOptions = _ref.chartOptions,
|
|
185
|
-
onChange = _ref.onChange,
|
|
186
|
-
properties = _ref.properties;
|
|
187
|
-
return _react2.default.createElement(Viewer, {
|
|
188
|
-
chartData: chartData,
|
|
189
|
-
chartOptions: chartOptions,
|
|
190
|
-
onChange: onChange,
|
|
191
|
-
properties: (0, _extends3.default)({}, properties, displayProperties),
|
|
192
|
-
type: type
|
|
193
|
-
});
|
|
194
|
-
}
|
|
195
|
-
})
|
|
196
|
-
);
|
|
197
|
-
}
|
|
198
|
-
}]);
|
|
199
|
-
return App;
|
|
200
|
-
}(_react.Component);
|
|
201
|
-
|
|
202
|
-
exports.default = App;
|
|
203
|
-
;
|
|
140
|
+
_react2.default.createElement(_3.Viewer, (0, _extends3.default)({}, parsedProps, {
|
|
141
|
+
chartData: R.pick(['series', 'frequency'])(parsedProps.chartData),
|
|
142
|
+
properties: R.tap(console.log)(R.over(R.lensProp('baseline'), R.omit(['onChange']), properties)),
|
|
143
|
+
type: 'BarChart',
|
|
144
|
+
locale: 'en'
|
|
145
|
+
}))
|
|
146
|
+
);
|
|
147
|
+
}
|
|
148
|
+
}))
|
|
149
|
+
);
|
|
150
|
+
};
|
|
151
|
+
|
|
152
|
+
exports.default = App;
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
|
|
7
|
+
var _extends2 = require('babel-runtime/helpers/extends');
|
|
8
|
+
|
|
9
|
+
var _extends3 = _interopRequireDefault(_extends2);
|
|
10
|
+
|
|
11
|
+
var _react = require('react');
|
|
12
|
+
|
|
13
|
+
var _react2 = _interopRequireDefault(_react);
|
|
14
|
+
|
|
15
|
+
var _ramda = require('ramda');
|
|
16
|
+
|
|
17
|
+
var R = _interopRequireWildcard(_ramda);
|
|
18
|
+
|
|
19
|
+
var _ = require('../');
|
|
20
|
+
|
|
21
|
+
var _2 = _interopRequireDefault(_);
|
|
22
|
+
|
|
23
|
+
var _row = require('../../mocks/row');
|
|
24
|
+
|
|
25
|
+
var _row2 = _interopRequireDefault(_row);
|
|
26
|
+
|
|
27
|
+
var _stack = require('../../mocks/stack');
|
|
28
|
+
|
|
29
|
+
var _stack2 = _interopRequireDefault(_stack);
|
|
30
|
+
|
|
31
|
+
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; } }
|
|
32
|
+
|
|
33
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
34
|
+
|
|
35
|
+
exports.default = function (_ref) {
|
|
36
|
+
var options = _ref.options;
|
|
37
|
+
|
|
38
|
+
return _react2.default.createElement(
|
|
39
|
+
'div',
|
|
40
|
+
{ style: { display: 'flex' } },
|
|
41
|
+
_react2.default.createElement(
|
|
42
|
+
'div',
|
|
43
|
+
null,
|
|
44
|
+
_react2.default.createElement(_2.default, (0, _extends3.default)({}, (0, _row2.default)(), { chartOptions: options, type: 'RowChart' }))
|
|
45
|
+
),
|
|
46
|
+
_react2.default.createElement(
|
|
47
|
+
'div',
|
|
48
|
+
null,
|
|
49
|
+
_react2.default.createElement(_2.default, (0, _extends3.default)({}, (0, _stack2.default)(), { chartOptions: options, type: 'StackedBarChart' }))
|
|
50
|
+
)
|
|
51
|
+
);
|
|
52
|
+
};
|
package/lib/viewer/src/app.js
CHANGED
|
@@ -36,6 +36,10 @@ var _useCase3 = require('./app/use-case-2');
|
|
|
36
36
|
|
|
37
37
|
var _useCase4 = _interopRequireDefault(_useCase3);
|
|
38
38
|
|
|
39
|
+
var _useCase5 = require('./app/use-case-3');
|
|
40
|
+
|
|
41
|
+
var _useCase6 = _interopRequireDefault(_useCase5);
|
|
42
|
+
|
|
39
43
|
var _nodataRes = require('./app/nodata-res');
|
|
40
44
|
|
|
41
45
|
var _nodataRes2 = _interopRequireDefault(_nodataRes);
|
|
@@ -117,6 +121,11 @@ exports.default = function () {
|
|
|
117
121
|
_react2.default.createElement(
|
|
118
122
|
_core.Tabs2,
|
|
119
123
|
{ renderActiveTabPanelOnly: false },
|
|
124
|
+
_react2.default.createElement(_core.Tab2, {
|
|
125
|
+
id: 'uc3',
|
|
126
|
+
title: _react2.default.createElement(AppTab, { label: 'fluid width', iconName: 'fullscreen' }),
|
|
127
|
+
panel: _react2.default.createElement(_useCase6.default, { isRtl: isRtl, config: config, style: style, options: options })
|
|
128
|
+
}),
|
|
120
129
|
_react2.default.createElement(_core.Tab2, {
|
|
121
130
|
id: 'uc1',
|
|
122
131
|
title: _react2.default.createElement(AppTab, { label: 'full screen resizable chart', iconName: 'fullscreen' }),
|
package/lib/viewer/src/index.js
CHANGED
|
@@ -87,7 +87,7 @@ var ViewContent = function ViewContent(_ref2) {
|
|
|
87
87
|
rest = (0, _objectWithoutProperties3.default)(_ref2, ['loading', 'noData', 'type', 'width', 'errorMessage']);
|
|
88
88
|
|
|
89
89
|
if (loading) return _react2.default.createElement(_dotstatsuiteVisions.Loading, { message: loading });
|
|
90
|
-
|
|
90
|
+
if (!width) return _react2.default.createElement(_dotstatsuiteVisions.Loading, { message: loading });
|
|
91
91
|
if (errorMessage) return _react2.default.createElement(_dotstatsuiteVisions.NoData, { message: errorMessage });
|
|
92
92
|
|
|
93
93
|
if (type === 'table') {
|
|
@@ -53,7 +53,9 @@ var getSymbolSeriesItems = function getSymbolSeriesItems(_ref) {
|
|
|
53
53
|
}))(data);
|
|
54
54
|
};
|
|
55
55
|
|
|
56
|
-
var getStackedSeriesItems = R.pathOr([], ['options', 'serie', 'stacked', 'layerSeries'])
|
|
56
|
+
var getStackedSeriesItems = R.pipe(R.pathOr([], ['options', 'serie', 'stacked', 'layerSeries']), R.when(function (s) {
|
|
57
|
+
return R.length(s) === 1;
|
|
58
|
+
}, R.always([])));
|
|
57
59
|
|
|
58
60
|
var stackedLayerRenderer = function stackedLayerRenderer(_ref2) {
|
|
59
61
|
var baseColor = _ref2.baseColor;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sis-cc/dotstatsuite-components",
|
|
3
3
|
"description": "Set components based on React.",
|
|
4
|
-
"version": "8.
|
|
4
|
+
"version": "8.13.0",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"author": "OECD",
|
|
7
7
|
"license": "MIT",
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
20
|
"@react-hook/size": "^2.1.1",
|
|
21
|
-
"@sis-cc/dotstatsuite-d3-charts": "^7.
|
|
21
|
+
"@sis-cc/dotstatsuite-d3-charts": "^7.3.0",
|
|
22
22
|
"@sis-cc/dotstatsuite-sdmxjs": "^4.5.2",
|
|
23
23
|
"@sis-cc/dotstatsuite-visions": "^5.15.1",
|
|
24
24
|
"date-fns": "^1.30.1",
|
package/src/app.js
CHANGED
|
@@ -1,13 +1,18 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { render } from 'react-dom';
|
|
3
|
-
|
|
3
|
+
import RulesDriverApp from './rules-driver/src/app';
|
|
4
4
|
import ViewerApp from './viewer/src/app';
|
|
5
|
+
import { sisccTheme } from '@sis-cc/dotstatsuite-visions';
|
|
6
|
+
import { ThemeProvider } from '@material-ui/core/styles';
|
|
7
|
+
import { createMuiTheme } from '@material-ui/core/styles';
|
|
8
|
+
|
|
9
|
+
const theme = createMuiTheme(sisccTheme({ rtl: 'ltr' }));
|
|
5
10
|
|
|
6
11
|
const App = () => (
|
|
7
|
-
<
|
|
8
|
-
|
|
9
|
-
<ViewerApp />
|
|
10
|
-
</
|
|
12
|
+
<ThemeProvider theme={theme}>
|
|
13
|
+
<RulesDriverApp />
|
|
14
|
+
{/* <ViewerApp /> */}
|
|
15
|
+
</ThemeProvider>
|
|
11
16
|
);
|
|
12
17
|
|
|
13
18
|
render(<App />, document.getElementById('root'));
|
|
@@ -1,20 +1,24 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as R from 'ramda';
|
|
2
2
|
import { getRefAreaDimension, getTimePeriodDimension } from '@sis-cc/dotstatsuite-sdmxjs';
|
|
3
3
|
|
|
4
4
|
export default (dimensions, singularity) => {
|
|
5
|
-
const
|
|
5
|
+
const { value, values } = dimensions;
|
|
6
|
+
const mode = R.prop('mode', singularity) === 'percent' ? 'percent' : 'values';
|
|
7
|
+
if (R.length(values) === 1) {
|
|
8
|
+
return ({ mode, id: R.pathOr(null, [0, 'id'], value) });
|
|
9
|
+
}
|
|
6
10
|
let serieDimension = null;
|
|
7
|
-
const id =
|
|
8
|
-
if (!isNil(id)) {
|
|
9
|
-
serieDimension = find(
|
|
11
|
+
const id = R.prop('id', singularity);
|
|
12
|
+
if (!R.isNil(id)) {
|
|
13
|
+
serieDimension = R.find(R.propEq('id', id), values);
|
|
10
14
|
}
|
|
11
|
-
const areaDimension = getRefAreaDimension({ dimensions });
|
|
12
|
-
const timeDimension = getTimePeriodDimension({ dimensions });
|
|
15
|
+
const areaDimension = getRefAreaDimension({ dimensions: values });
|
|
16
|
+
const timeDimension = getTimePeriodDimension({ dimensions: values });
|
|
13
17
|
|
|
14
|
-
serieDimension = serieDimension || areaDimension || timeDimension || head(
|
|
18
|
+
serieDimension = serieDimension || areaDimension || timeDimension || R.head(values);
|
|
15
19
|
|
|
16
20
|
return ({
|
|
17
|
-
mode
|
|
18
|
-
id:
|
|
21
|
+
mode,
|
|
22
|
+
id: R.propOr(null, 'id', serieDimension)
|
|
19
23
|
});
|
|
20
24
|
}
|