@sis-cc/dotstatsuite-components 14.4.0 → 15.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.
- package/lib/app.js +2 -6
- package/lib/index.js +9 -18
- package/lib/rules/src/index.js +142 -1
- package/lib/rules/src/properties/index.js +2 -5
- package/lib/rules/src/table/preparators/prepareData.js +4 -15
- package/lib/rules2/src/duplicateObservations.js +22 -38
- package/lib/rules2/src/index.js +63 -0
- package/package.json +1 -1
- package/src/app.js +0 -2
- package/src/index.js +0 -1
- package/src/rules/src/index.js +19 -0
- package/src/rules/src/properties/index.js +1 -4
- package/src/rules/src/table/preparators/prepareData.js +2 -10
- package/src/rules2/src/duplicateObservations.js +25 -39
- package/src/rules2/src/index.js +11 -0
- package/test/duplicateObs.test.js +83 -0
- package/test/mocks/table-prep-simple-duplicate--dimensions2.json +858 -0
- package/test/mocks/table-prep-simple-duplicate--duplicated2.json +77502 -0
- package/test/mocks/table-prep-simple-duplicate--observations2.json +60002 -0
- package/test/table-prep-duplicate-perf.test.js +8 -14
- package/lib/rules-driver/src/app.js +0 -152
- package/lib/rules-driver/src/index.js +0 -97
- package/src/rules-driver/README.md +0 -131
- package/src/rules-driver/src/app.js +0 -123
- package/src/rules-driver/src/index.js +0 -60
- package/src/rules-driver/src/mocks/data1.json +0 -332
- package/src/rules-driver/src/mocks/data2.json +0 -309
- package/test/duplicateObservations.test.js +0 -108
- package/test/mocks/table-prep-multi-duplicate--duplicated.json +0 -26938
- package/test/mocks/table-prep-multi-duplicate--indexes.json +0 -1417
- package/test/mocks/table-prep-multi-duplicate--observations.json +0 -20330
- package/test/mocks/table-prep-simple-duplicate--duplicated.json +0 -77502
- package/test/mocks/table-prep-simple-duplicate--indexes.json +0 -274
- package/test/mocks/table-prep-simple-duplicate--observations.json +0 -60002
package/lib/app.js
CHANGED
|
@@ -6,14 +6,10 @@ var _react2 = _interopRequireDefault(_react);
|
|
|
6
6
|
|
|
7
7
|
var _reactDom = require('react-dom');
|
|
8
8
|
|
|
9
|
-
var _app = require('./
|
|
9
|
+
var _app = require('./viewer/src/app');
|
|
10
10
|
|
|
11
11
|
var _app2 = _interopRequireDefault(_app);
|
|
12
12
|
|
|
13
|
-
var _app3 = require('./viewer/src/app');
|
|
14
|
-
|
|
15
|
-
var _app4 = _interopRequireDefault(_app3);
|
|
16
|
-
|
|
17
13
|
var _dotstatsuiteVisions = require('@sis-cc/dotstatsuite-visions');
|
|
18
14
|
|
|
19
15
|
var _styles = require('@material-ui/core/styles');
|
|
@@ -26,7 +22,7 @@ var App = function App() {
|
|
|
26
22
|
return _react2.default.createElement(
|
|
27
23
|
_styles.ThemeProvider,
|
|
28
24
|
{ theme: theme },
|
|
29
|
-
_react2.default.createElement(
|
|
25
|
+
_react2.default.createElement(_app2.default, null)
|
|
30
26
|
);
|
|
31
27
|
};
|
|
32
28
|
|
package/lib/index.js
CHANGED
|
@@ -3,23 +3,14 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.Viewer = exports.
|
|
6
|
+
exports.Viewer = exports.bridgeD3React = exports.rules2 = exports.rules = undefined;
|
|
7
7
|
|
|
8
|
-
var _src = require('./
|
|
9
|
-
|
|
10
|
-
Object.defineProperty(exports, 'RulesDriver', {
|
|
11
|
-
enumerable: true,
|
|
12
|
-
get: function get() {
|
|
13
|
-
return _interopRequireDefault(_src).default;
|
|
14
|
-
}
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
var _src2 = require('./viewer/src');
|
|
8
|
+
var _src = require('./viewer/src');
|
|
18
9
|
|
|
19
10
|
Object.defineProperty(exports, 'Viewer', {
|
|
20
11
|
enumerable: true,
|
|
21
12
|
get: function get() {
|
|
22
|
-
return _interopRequireDefault(
|
|
13
|
+
return _interopRequireDefault(_src).default;
|
|
23
14
|
}
|
|
24
15
|
});
|
|
25
16
|
|
|
@@ -27,17 +18,17 @@ var _package = require('../package.json');
|
|
|
27
18
|
|
|
28
19
|
var _package2 = _interopRequireDefault(_package);
|
|
29
20
|
|
|
30
|
-
var
|
|
21
|
+
var _src2 = require('./rules/src');
|
|
31
22
|
|
|
32
|
-
var rules = _interopRequireWildcard(
|
|
23
|
+
var rules = _interopRequireWildcard(_src2);
|
|
33
24
|
|
|
34
|
-
var
|
|
25
|
+
var _src3 = require('./rules2/src');
|
|
35
26
|
|
|
36
|
-
var rules2 = _interopRequireWildcard(
|
|
27
|
+
var rules2 = _interopRequireWildcard(_src3);
|
|
37
28
|
|
|
38
|
-
var
|
|
29
|
+
var _src4 = require('./bridge-d3-react/src');
|
|
39
30
|
|
|
40
|
-
var bridgeD3React = _interopRequireWildcard(
|
|
31
|
+
var bridgeD3React = _interopRequireWildcard(_src4);
|
|
41
32
|
|
|
42
33
|
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; } }
|
|
43
34
|
|
package/lib/rules/src/index.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.isSharedLayoutCompatible = exports.getAvailableChartTypes = exports.getObservationsType = exports.getInformationsStateFromNewProps = exports.getFooterProps = exports.getHeaderProps = exports.getTimePeriodLabel = exports.getFullName = exports.getFlags = exports.getTableProps = exports.getCellValue = exports.prepareData = exports.v8Transformer = exports.getErrors = exports.toProperties = exports.toChartOptions = exports.toChartData = exports.onChangeProperties = exports.stateFromNewProps = exports.initialState = exports.chartTypes = exports.V8_SDMX_JSON = exports.DEFAULT_MAJOR_ATTRIBUTES = exports.DIMENSION_DISPLAY_PARTS = exports.DEFAULT_UPR_IDS = exports.dimensionValueDisplay = exports.isNonIdealState = exports.getTopologyAreasCollections = exports.sourceLabel = exports.header = exports.getUprs = exports.headerUprsLabel = exports.uprAttributesWithOneRelevantValue = exports.uprAttributes = exports.defaultSubtitle = exports.parseFocus = exports.focus = exports.source = exports.series = exports.choroSeries = exports.stackedSeries = exports.timelineSeries = exports.symbolSeries = exports.scatterSeries = exports.stackedDimension = exports.symbolDimension = exports.scatterDimension = exports.sampleSeries = exports.parseDisplay = exports.dimensionsWithValuesIndexedById = exports.splitDimensions = exports.getDimensionValues = exports.getRelevantsDatasetAttributes = exports.extractSdmxArtefacts = exports.extractDataName = exports.extractSdmxErrors = exports.freqM = exports.freqQ = exports.freqA = undefined;
|
|
6
|
+
exports.enhanceObservations = exports.getObservations = exports.getUnitsSeries = exports.getAttachmentSeriesIndexes = exports.getHeaderUnits = exports.getUnitsArtefacts = exports.getUnitsDefinition = exports.refineSeriesAttributesValues = exports.getAttributeValue = exports.getManyValuesDimensions = exports.getOneValueDimensions = exports.parseAttributesValuesFromObservations = exports.getDimensionsAttributesRegisters = exports.parseAttributes = exports.parseDimensionsIds = exports.isSharedLayoutCompatible = exports.getAvailableChartTypes = exports.getObservationsType = exports.getInformationsStateFromNewProps = exports.getFooterProps = exports.getHeaderProps = exports.getTimePeriodLabel = exports.getFullName = exports.getFlags = exports.getTableProps = exports.getCellValue = exports.prepareData = exports.v8Transformer = exports.toSingularity = exports.getErrors = exports.toProperties = exports.toChartOptions = exports.toChartData = exports.onChangeProperties = exports.stateFromNewProps = exports.initialState = exports.chartTypes = exports.V8_SDMX_JSON = exports.DEFAULT_MAJOR_ATTRIBUTES = exports.DIMENSION_DISPLAY_PARTS = exports.DEFAULT_UPR_IDS = exports.dimensionValueDisplay = exports.isNonIdealState = exports.getTopologyAreasCollections = exports.sourceLabel = exports.header = exports.getUprs = exports.headerUprsLabel = exports.uprAttributesWithOneRelevantValue = exports.uprAttributes = exports.defaultSubtitle = exports.parseFocus = exports.focus = exports.source = exports.series = exports.choroSeries = exports.stackedSeries = exports.timelineSeries = exports.symbolSeries = exports.scatterSeries = exports.stackedDimension = exports.symbolDimension = exports.scatterDimension = exports.sampleSeries = exports.parseDisplay = exports.dimensionsWithValuesIndexedById = exports.splitDimensions = exports.getDimensionValues = exports.getRelevantsDatasetAttributes = exports.extractSdmxArtefacts = exports.extractDataName = exports.extractSdmxErrors = exports.freqM = exports.freqQ = exports.freqA = undefined;
|
|
7
7
|
|
|
8
8
|
var _slicedToArray2 = require('babel-runtime/helpers/slicedToArray');
|
|
9
9
|
|
|
@@ -175,6 +175,12 @@ Object.defineProperty(exports, 'getErrors', {
|
|
|
175
175
|
return _properties.getErrors;
|
|
176
176
|
}
|
|
177
177
|
});
|
|
178
|
+
Object.defineProperty(exports, 'toSingularity', {
|
|
179
|
+
enumerable: true,
|
|
180
|
+
get: function get() {
|
|
181
|
+
return _properties.toSingularity;
|
|
182
|
+
}
|
|
183
|
+
});
|
|
178
184
|
|
|
179
185
|
var _v8Transformer = require('./v8-transformer');
|
|
180
186
|
|
|
@@ -281,6 +287,141 @@ Object.defineProperty(exports, 'isSharedLayoutCompatible', {
|
|
|
281
287
|
}
|
|
282
288
|
});
|
|
283
289
|
|
|
290
|
+
var _parseDimensionsIds = require('./table/preparators/parseDimensionsIds');
|
|
291
|
+
|
|
292
|
+
Object.defineProperty(exports, 'parseDimensionsIds', {
|
|
293
|
+
enumerable: true,
|
|
294
|
+
get: function get() {
|
|
295
|
+
return _parseDimensionsIds.parseDimensionsIds;
|
|
296
|
+
}
|
|
297
|
+
});
|
|
298
|
+
|
|
299
|
+
var _parseAttributes = require('./table/preparators/parseAttributes');
|
|
300
|
+
|
|
301
|
+
Object.defineProperty(exports, 'parseAttributes', {
|
|
302
|
+
enumerable: true,
|
|
303
|
+
get: function get() {
|
|
304
|
+
return _parseAttributes.parseAttributes;
|
|
305
|
+
}
|
|
306
|
+
});
|
|
307
|
+
|
|
308
|
+
var _getDimensionsAttributesRegisters = require('./table/preparators/getDimensionsAttributesRegisters');
|
|
309
|
+
|
|
310
|
+
Object.defineProperty(exports, 'getDimensionsAttributesRegisters', {
|
|
311
|
+
enumerable: true,
|
|
312
|
+
get: function get() {
|
|
313
|
+
return _getDimensionsAttributesRegisters.getDimensionsAttributesRegisters;
|
|
314
|
+
}
|
|
315
|
+
});
|
|
316
|
+
|
|
317
|
+
var _parseAttributesValuesFromObservations = require('./table/preparators/parseAttributesValuesFromObservations');
|
|
318
|
+
|
|
319
|
+
Object.defineProperty(exports, 'parseAttributesValuesFromObservations', {
|
|
320
|
+
enumerable: true,
|
|
321
|
+
get: function get() {
|
|
322
|
+
return _parseAttributesValuesFromObservations.parseAttributesValuesFromObservations;
|
|
323
|
+
}
|
|
324
|
+
});
|
|
325
|
+
|
|
326
|
+
var _getOneValueDimensions = require('./table/preparators/getOneValueDimensions');
|
|
327
|
+
|
|
328
|
+
Object.defineProperty(exports, 'getOneValueDimensions', {
|
|
329
|
+
enumerable: true,
|
|
330
|
+
get: function get() {
|
|
331
|
+
return _getOneValueDimensions.getOneValueDimensions;
|
|
332
|
+
}
|
|
333
|
+
});
|
|
334
|
+
|
|
335
|
+
var _getManyValuesDimensions = require('./table/preparators/getManyValuesDimensions');
|
|
336
|
+
|
|
337
|
+
Object.defineProperty(exports, 'getManyValuesDimensions', {
|
|
338
|
+
enumerable: true,
|
|
339
|
+
get: function get() {
|
|
340
|
+
return _getManyValuesDimensions.getManyValuesDimensions;
|
|
341
|
+
}
|
|
342
|
+
});
|
|
343
|
+
|
|
344
|
+
var _getAttributeValue = require('./table/preparators/getAttributeValue');
|
|
345
|
+
|
|
346
|
+
Object.defineProperty(exports, 'getAttributeValue', {
|
|
347
|
+
enumerable: true,
|
|
348
|
+
get: function get() {
|
|
349
|
+
return _getAttributeValue.getAttributeValue;
|
|
350
|
+
}
|
|
351
|
+
});
|
|
352
|
+
|
|
353
|
+
var _refineSeriesAttributesValues = require('./table/preparators/refineSeriesAttributesValues');
|
|
354
|
+
|
|
355
|
+
Object.defineProperty(exports, 'refineSeriesAttributesValues', {
|
|
356
|
+
enumerable: true,
|
|
357
|
+
get: function get() {
|
|
358
|
+
return _refineSeriesAttributesValues.refineSeriesAttributesValues;
|
|
359
|
+
}
|
|
360
|
+
});
|
|
361
|
+
|
|
362
|
+
var _getUnitsDefinition = require('./table/units/getUnitsDefinition');
|
|
363
|
+
|
|
364
|
+
Object.defineProperty(exports, 'getUnitsDefinition', {
|
|
365
|
+
enumerable: true,
|
|
366
|
+
get: function get() {
|
|
367
|
+
return _getUnitsDefinition.getUnitsDefinition;
|
|
368
|
+
}
|
|
369
|
+
});
|
|
370
|
+
|
|
371
|
+
var _getUnitsArtefacts = require('./table/units/getUnitsArtefacts');
|
|
372
|
+
|
|
373
|
+
Object.defineProperty(exports, 'getUnitsArtefacts', {
|
|
374
|
+
enumerable: true,
|
|
375
|
+
get: function get() {
|
|
376
|
+
return _getUnitsArtefacts.getUnitsArtefacts;
|
|
377
|
+
}
|
|
378
|
+
});
|
|
379
|
+
|
|
380
|
+
var _getHeaderUnits = require('./table/units/getHeaderUnits');
|
|
381
|
+
|
|
382
|
+
Object.defineProperty(exports, 'getHeaderUnits', {
|
|
383
|
+
enumerable: true,
|
|
384
|
+
get: function get() {
|
|
385
|
+
return _getHeaderUnits.getHeaderUnits;
|
|
386
|
+
}
|
|
387
|
+
});
|
|
388
|
+
|
|
389
|
+
var _getAttachmentSeriesIndexes = require('./table/units/getAttachmentSeriesIndexes');
|
|
390
|
+
|
|
391
|
+
Object.defineProperty(exports, 'getAttachmentSeriesIndexes', {
|
|
392
|
+
enumerable: true,
|
|
393
|
+
get: function get() {
|
|
394
|
+
return _getAttachmentSeriesIndexes.getAttachmentSeriesIndexes;
|
|
395
|
+
}
|
|
396
|
+
});
|
|
397
|
+
|
|
398
|
+
var _getUnitsSeries = require('./table/units/getUnitsSeries');
|
|
399
|
+
|
|
400
|
+
Object.defineProperty(exports, 'getUnitsSeries', {
|
|
401
|
+
enumerable: true,
|
|
402
|
+
get: function get() {
|
|
403
|
+
return _getUnitsSeries.getUnitsSeries;
|
|
404
|
+
}
|
|
405
|
+
});
|
|
406
|
+
|
|
407
|
+
var _getObservations = require('./preparators/getObservations');
|
|
408
|
+
|
|
409
|
+
Object.defineProperty(exports, 'getObservations', {
|
|
410
|
+
enumerable: true,
|
|
411
|
+
get: function get() {
|
|
412
|
+
return _getObservations.getObservations;
|
|
413
|
+
}
|
|
414
|
+
});
|
|
415
|
+
|
|
416
|
+
var _enhanceObservations = require('./preparators/enhanceObservations');
|
|
417
|
+
|
|
418
|
+
Object.defineProperty(exports, 'enhanceObservations', {
|
|
419
|
+
enumerable: true,
|
|
420
|
+
get: function get() {
|
|
421
|
+
return _enhanceObservations.enhanceObservations;
|
|
422
|
+
}
|
|
423
|
+
});
|
|
424
|
+
|
|
284
425
|
var _ramda = require('ramda');
|
|
285
426
|
|
|
286
427
|
var R = _interopRequireWildcard(_ramda);
|
|
@@ -31,8 +31,6 @@ var _linear = require('./linear');
|
|
|
31
31
|
|
|
32
32
|
var _utils = require('./utils');
|
|
33
33
|
|
|
34
|
-
var _getInformationsStateFromNewProps = require('./getInformationsStateFromNewProps');
|
|
35
|
-
|
|
36
34
|
var _getHeaderProps = require('./getHeaderProps');
|
|
37
35
|
|
|
38
36
|
var _getStringifiedSubtitle = require('./getStringifiedSubtitle');
|
|
@@ -170,8 +168,7 @@ var stateFromNewProps = exports.stateFromNewProps = function stateFromNewProps(p
|
|
|
170
168
|
var symbolState = (0, _symbol.symbolStateFromNewProps)(props, state);
|
|
171
169
|
var stackedState = (0, _stacked.stackedStateFromNewProps)(props, state);
|
|
172
170
|
var linearState = (0, _linear.linearStateFromNewProps)(props.type);
|
|
173
|
-
|
|
174
|
-
return (0, _extends3.default)({}, focusState, scatterState, symbolState, stackedState, linearState, informationState, {
|
|
171
|
+
return (0, _extends3.default)({}, focusState, scatterState, symbolState, stackedState, linearState, {
|
|
175
172
|
fixedWidth: R.prop('fixedWidth', state),
|
|
176
173
|
fixedHeight: R.prop('fixedHeight', state),
|
|
177
174
|
responsiveWidth: R.prop('responsiveWidth', state),
|
|
@@ -234,7 +231,7 @@ var propertiesParsers = {
|
|
|
234
231
|
}
|
|
235
232
|
};
|
|
236
233
|
|
|
237
|
-
var onChangeProperties = exports.onChangeProperties = function onChangeProperties(
|
|
234
|
+
var onChangeProperties = exports.onChangeProperties = function onChangeProperties(state, onChange) {
|
|
238
235
|
return function (newProperties) {
|
|
239
236
|
var apply = R.is(Function, onChange) ? onChange : R.identity;
|
|
240
237
|
var refined = R.pipe(R.mapObjIndexed(function (value, key) {
|
|
@@ -5,13 +5,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.prepareData = undefined;
|
|
7
7
|
|
|
8
|
-
var
|
|
8
|
+
var _extends2 = require('babel-runtime/helpers/extends');
|
|
9
9
|
|
|
10
|
-
var
|
|
11
|
-
|
|
12
|
-
var _extends3 = require('babel-runtime/helpers/extends');
|
|
13
|
-
|
|
14
|
-
var _extends4 = _interopRequireDefault(_extends3);
|
|
10
|
+
var _extends3 = _interopRequireDefault(_extends2);
|
|
15
11
|
|
|
16
12
|
var _ramda = require('ramda');
|
|
17
13
|
|
|
@@ -59,8 +55,6 @@ var _hierarchiseDimensionWithAdvancedHierarchy = require('../../../../rules2/src
|
|
|
59
55
|
|
|
60
56
|
var _hierarchiseDimensionWithNativeHierarchy = require('../../../../rules2/src/hierarchiseDimensionWithNativeHierarchy');
|
|
61
57
|
|
|
62
|
-
var _getDimensionValuesIndexes = require('../../../../rules2/src/getDimensionValuesIndexes');
|
|
63
|
-
|
|
64
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; } }
|
|
65
59
|
|
|
66
60
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -172,12 +166,7 @@ var prepareData = exports.prepareData = function prepareData(sdmxJson, customAtt
|
|
|
172
166
|
return (0, _hierarchiseDimensionWithAdvancedHierarchy.hierarchiseDimensionWithAdvancedHierarchy)(dim, R.prop(dim.id, hierarchies));
|
|
173
167
|
})(manyValuesDimensions);
|
|
174
168
|
|
|
175
|
-
var
|
|
176
|
-
return (0, _extends4.default)({}, acc, (0, _defineProperty3.default)({}, dim.__index, (0, _getDimensionValuesIndexes.getDimensionValuesIndexes)(dim.values)));
|
|
177
|
-
}, {}, R.values(hierarchisedDimensions));
|
|
178
|
-
|
|
179
|
-
var duplicatedObservations = (0, _duplicateObservations.duplicateObservations)(observations, valuesIndexes);
|
|
180
|
-
|
|
169
|
+
var duplicatedObservations = (0, _duplicateObservations.duplicateObs)(R.values(hierarchisedDimensions), observations);
|
|
181
170
|
return {
|
|
182
171
|
dimensions: {
|
|
183
172
|
one: oneValueDimensions,
|
|
@@ -192,7 +181,7 @@ var prepareData = exports.prepareData = function prepareData(sdmxJson, customAtt
|
|
|
192
181
|
unitsSeries: unitsSeries
|
|
193
182
|
},
|
|
194
183
|
metadataCoordinates: metadataCoordinates,
|
|
195
|
-
advancedAttributes: (0,
|
|
184
|
+
advancedAttributes: (0, _extends3.default)({}, dataflowAdvancedAttributes, observationsAdvancedAttributes, seriesAdvancedAttributes),
|
|
196
185
|
observations: duplicatedObservations,
|
|
197
186
|
observationsType: (0, _getObservationsType.getObservationsType)(sdmxJson.data),
|
|
198
187
|
dataflowAttributes: dataflowAttributes,
|
|
@@ -3,11 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
7
|
-
|
|
8
|
-
var _extends2 = require('babel-runtime/helpers/extends');
|
|
9
|
-
|
|
10
|
-
var _extends3 = _interopRequireDefault(_extends2);
|
|
6
|
+
exports.duplicateObs = undefined;
|
|
11
7
|
|
|
12
8
|
var _ramda = require('ramda');
|
|
13
9
|
|
|
@@ -15,37 +11,25 @@ var R = _interopRequireWildcard(_ramda);
|
|
|
15
11
|
|
|
16
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; } }
|
|
17
13
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
var
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
var
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
}, R.pipe(R.head, R.map(R.of))(orderedIndexes), R.tail(orderedIndexes));
|
|
40
|
-
} else {
|
|
41
|
-
cartesian = [R.unnest(orderedIndexes)];
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
var duplicatedObs = R.reduce(function (acc, orderedDimIndexes) {
|
|
45
|
-
var key = R.join(':', orderedDimIndexes);
|
|
46
|
-
return R.assoc(key, (0, _extends3.default)({}, obs, { orderedDimIndexes: orderedDimIndexes }), acc);
|
|
47
|
-
}, {}, cartesian);
|
|
48
|
-
|
|
49
|
-
return R.mergeRight(acc, duplicatedObs);
|
|
50
|
-
}, {}, R.values(observations));
|
|
14
|
+
var duplicateObs = exports.duplicateObs = function duplicateObs(dims, observations) {
|
|
15
|
+
var duplicated = R.reduce(function (obs, dim) {
|
|
16
|
+
var groupedObs = R.groupBy(function (o) {
|
|
17
|
+
return R.prop(dim.id, o.indexedDimValIds);
|
|
18
|
+
}, obs);
|
|
19
|
+
var enhancedObs = R.addIndex(R.map)(function (value, index) {
|
|
20
|
+
var matchingObs = R.propOr([], value.id, groupedObs);
|
|
21
|
+
|
|
22
|
+
return R.map(function (obs) {
|
|
23
|
+
return R.over(R.lensProp('orderedDimIndexes'), function (_indexes) {
|
|
24
|
+
var indexes = R.isNil(_indexes) ? R.map(function (i) {
|
|
25
|
+
return Number(i);
|
|
26
|
+
}, obs.dimValuesIndexes) : _indexes;
|
|
27
|
+
return R.set(R.lensIndex(dim.__index), index)(indexes);
|
|
28
|
+
})(obs);
|
|
29
|
+
}, matchingObs);
|
|
30
|
+
}, dim.values);
|
|
31
|
+
return R.unnest(enhancedObs);
|
|
32
|
+
}, R.values(observations), dims);
|
|
33
|
+
var res = R.indexBy(R.pipe(R.prop('orderedDimIndexes'), R.join(':')), duplicated);
|
|
34
|
+
return res;
|
|
51
35
|
};
|
package/lib/rules2/src/index.js
CHANGED
|
@@ -104,4 +104,67 @@ Object.defineProperty(exports, 'refinePartialHierarchy', {
|
|
|
104
104
|
get: function get() {
|
|
105
105
|
return _hierarchiseDimensionWithAdvancedHierarchy.refinePartialHierarchy;
|
|
106
106
|
}
|
|
107
|
+
});
|
|
108
|
+
|
|
109
|
+
var _getMetadataCoordinates = require('./getMetadataCoordinates');
|
|
110
|
+
|
|
111
|
+
Object.defineProperty(exports, 'getMetadataCoordinates', {
|
|
112
|
+
enumerable: true,
|
|
113
|
+
get: function get() {
|
|
114
|
+
return _getMetadataCoordinates.getMetadataCoordinates;
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
|
|
118
|
+
var _getAdvancedAttributes = require('./getAdvancedAttributes');
|
|
119
|
+
|
|
120
|
+
Object.defineProperty(exports, 'getDataflowAdvancedAttributes', {
|
|
121
|
+
enumerable: true,
|
|
122
|
+
get: function get() {
|
|
123
|
+
return _getAdvancedAttributes.getDataflowAdvancedAttributes;
|
|
124
|
+
}
|
|
125
|
+
});
|
|
126
|
+
Object.defineProperty(exports, 'getObservationsAdvancedAttributes', {
|
|
127
|
+
enumerable: true,
|
|
128
|
+
get: function get() {
|
|
129
|
+
return _getAdvancedAttributes.getObservationsAdvancedAttributes;
|
|
130
|
+
}
|
|
131
|
+
});
|
|
132
|
+
Object.defineProperty(exports, 'getSeriesAdvancedAttributes', {
|
|
133
|
+
enumerable: true,
|
|
134
|
+
get: function get() {
|
|
135
|
+
return _getAdvancedAttributes.getSeriesAdvancedAttributes;
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
|
|
139
|
+
var _duplicateObservations = require('./duplicateObservations');
|
|
140
|
+
|
|
141
|
+
Object.defineProperty(exports, 'duplicateObs', {
|
|
142
|
+
enumerable: true,
|
|
143
|
+
get: function get() {
|
|
144
|
+
return _duplicateObservations.duplicateObs;
|
|
145
|
+
}
|
|
146
|
+
});
|
|
147
|
+
Object.defineProperty(exports, 'hierarchiseDimensionWithAdvancedHierarchy', {
|
|
148
|
+
enumerable: true,
|
|
149
|
+
get: function get() {
|
|
150
|
+
return _hierarchiseDimensionWithAdvancedHierarchy.hierarchiseDimensionWithAdvancedHierarchy;
|
|
151
|
+
}
|
|
152
|
+
});
|
|
153
|
+
|
|
154
|
+
var _hierarchiseDimensionWithNativeHierarchy = require('./hierarchiseDimensionWithNativeHierarchy');
|
|
155
|
+
|
|
156
|
+
Object.defineProperty(exports, 'hierarchiseDimensionWithNativeHierarchy', {
|
|
157
|
+
enumerable: true,
|
|
158
|
+
get: function get() {
|
|
159
|
+
return _hierarchiseDimensionWithNativeHierarchy.hierarchiseDimensionWithNativeHierarchy;
|
|
160
|
+
}
|
|
161
|
+
});
|
|
162
|
+
|
|
163
|
+
var _getDimensionValuesIndexes = require('./getDimensionValuesIndexes');
|
|
164
|
+
|
|
165
|
+
Object.defineProperty(exports, 'getDimensionValuesIndexes', {
|
|
166
|
+
enumerable: true,
|
|
167
|
+
get: function get() {
|
|
168
|
+
return _getDimensionValuesIndexes.getDimensionValuesIndexes;
|
|
169
|
+
}
|
|
107
170
|
});
|
package/package.json
CHANGED
package/src/app.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { render } from 'react-dom';
|
|
3
|
-
import RulesDriverApp from './rules-driver/src/app';
|
|
4
3
|
import ViewerApp from './viewer/src/app';
|
|
5
4
|
import { sisccTheme } from '@sis-cc/dotstatsuite-visions';
|
|
6
5
|
import { ThemeProvider } from '@material-ui/core/styles';
|
|
@@ -10,7 +9,6 @@ const theme = createMuiTheme(sisccTheme({ rtl: 'ltr' }));
|
|
|
10
9
|
|
|
11
10
|
const App = () => (
|
|
12
11
|
<ThemeProvider theme={theme}>
|
|
13
|
-
{/*<RulesDriverApp />*/}
|
|
14
12
|
<ViewerApp />
|
|
15
13
|
</ThemeProvider>
|
|
16
14
|
);
|
package/src/index.js
CHANGED
package/src/rules/src/index.js
CHANGED
|
@@ -377,6 +377,7 @@ export {
|
|
|
377
377
|
toChartOptions,
|
|
378
378
|
toProperties,
|
|
379
379
|
getErrors,
|
|
380
|
+
toSingularity
|
|
380
381
|
} from './properties';
|
|
381
382
|
export { dataTransformer as v8Transformer } from './v8-transformer';
|
|
382
383
|
export {
|
|
@@ -394,3 +395,21 @@ export { getInformationsStateFromNewProps } from './properties/getInformationsSt
|
|
|
394
395
|
export { getObservationsType } from './properties/getObservationsType';
|
|
395
396
|
export { getAvailableChartTypes } from './properties/getAvailableChartTypes';
|
|
396
397
|
export { isSharedLayoutCompatible } from './layout';
|
|
398
|
+
|
|
399
|
+
export { parseDimensionsIds } from './table/preparators/parseDimensionsIds';
|
|
400
|
+
export { parseAttributes } from './table/preparators/parseAttributes';
|
|
401
|
+
export { getDimensionsAttributesRegisters } from './table/preparators/getDimensionsAttributesRegisters';
|
|
402
|
+
export { parseAttributesValuesFromObservations } from './table/preparators/parseAttributesValuesFromObservations';
|
|
403
|
+
export { getOneValueDimensions } from './table/preparators/getOneValueDimensions';
|
|
404
|
+
export { getManyValuesDimensions } from './table/preparators/getManyValuesDimensions';
|
|
405
|
+
export { getAttributeValue } from './table/preparators/getAttributeValue';
|
|
406
|
+
export { refineSeriesAttributesValues } from './table/preparators/refineSeriesAttributesValues';
|
|
407
|
+
|
|
408
|
+
export { getUnitsDefinition } from './table/units/getUnitsDefinition';
|
|
409
|
+
export { getUnitsArtefacts } from './table/units/getUnitsArtefacts';
|
|
410
|
+
export { getHeaderUnits } from './table/units/getHeaderUnits';
|
|
411
|
+
export { getAttachmentSeriesIndexes } from './table/units/getAttachmentSeriesIndexes';
|
|
412
|
+
export { getUnitsSeries } from './table/units/getUnitsSeries';
|
|
413
|
+
|
|
414
|
+
export { getObservations } from './preparators/getObservations';
|
|
415
|
+
export { enhanceObservations } from './preparators/enhanceObservations';
|
|
@@ -52,7 +52,6 @@ import {
|
|
|
52
52
|
isNumber,
|
|
53
53
|
optionParser,
|
|
54
54
|
} from './utils';
|
|
55
|
-
import { getInformationsStateFromNewProps } from './getInformationsStateFromNewProps';
|
|
56
55
|
import { getTitleLabel, getSubtitle, getSourceLabel } from './getHeaderProps';
|
|
57
56
|
import { stringifySubtitle } from './getStringifiedSubtitle';
|
|
58
57
|
import { getHasNoTimePeriodError } from './errors';
|
|
@@ -197,14 +196,12 @@ export const stateFromNewProps = (props, state) => {
|
|
|
197
196
|
const symbolState = symbolStateFromNewProps(props, state);
|
|
198
197
|
const stackedState = stackedStateFromNewProps(props, state);
|
|
199
198
|
const linearState = linearStateFromNewProps(props.type);
|
|
200
|
-
const informationState = getInformationsStateFromNewProps(props, state);
|
|
201
199
|
return ({
|
|
202
200
|
...focusState,
|
|
203
201
|
...scatterState,
|
|
204
202
|
...symbolState,
|
|
205
203
|
...stackedState,
|
|
206
204
|
...linearState,
|
|
207
|
-
...informationState,
|
|
208
205
|
fixedWidth: R.prop('fixedWidth', state),
|
|
209
206
|
fixedHeight: R.prop('fixedHeight', state),
|
|
210
207
|
responsiveWidth: R.prop('responsiveWidth', state),
|
|
@@ -242,7 +239,7 @@ const propertiesParsers = {
|
|
|
242
239
|
stepY: (value) => isNaturalInt(value) ? value : undefined,
|
|
243
240
|
};
|
|
244
241
|
|
|
245
|
-
export const onChangeProperties = (
|
|
242
|
+
export const onChangeProperties = (state, onChange) => (newProperties) => {
|
|
246
243
|
const apply = R.is(Function, onChange) ? onChange : R.identity;
|
|
247
244
|
const refined = R.pipe(
|
|
248
245
|
R.mapObjIndexed((value, key) => {
|
|
@@ -24,10 +24,9 @@ import {
|
|
|
24
24
|
getObservationsAdvancedAttributes,
|
|
25
25
|
getSeriesAdvancedAttributes
|
|
26
26
|
} from '../../../../rules2/src/getAdvancedAttributes';
|
|
27
|
-
import {
|
|
27
|
+
import { duplicateObs } from '../../../../rules2/src/duplicateObservations';
|
|
28
28
|
import { hierarchiseDimensionWithAdvancedHierarchy } from '../../../../rules2/src/hierarchiseDimensionWithAdvancedHierarchy';
|
|
29
29
|
import { hierarchiseDimensionWithNativeHierarchy } from '../../../../rules2/src/hierarchiseDimensionWithNativeHierarchy';
|
|
30
|
-
import { getDimensionValuesIndexes } from '../../../../rules2/src/getDimensionValuesIndexes';
|
|
31
30
|
|
|
32
31
|
export const prepareData = (sdmxJson, customAttributes, unitsProps={}, _options={}) => {
|
|
33
32
|
const {
|
|
@@ -172,14 +171,7 @@ export const prepareData = (sdmxJson, customAttributes, unitsProps={}, _options=
|
|
|
172
171
|
return hierarchiseDimensionWithAdvancedHierarchy(dim, R.prop(dim.id, hierarchies));
|
|
173
172
|
})(manyValuesDimensions);
|
|
174
173
|
|
|
175
|
-
const
|
|
176
|
-
(acc, dim) => ({ ...acc, [dim.__index]: getDimensionValuesIndexes(dim.values) }),
|
|
177
|
-
{},
|
|
178
|
-
R.values(hierarchisedDimensions)
|
|
179
|
-
);
|
|
180
|
-
|
|
181
|
-
const duplicatedObservations = duplicateObservations(observations, valuesIndexes);
|
|
182
|
-
|
|
174
|
+
const duplicatedObservations = duplicateObs(R.values(hierarchisedDimensions), observations);
|
|
183
175
|
return ({
|
|
184
176
|
dimensions: {
|
|
185
177
|
one: oneValueDimensions,
|
|
@@ -1,45 +1,31 @@
|
|
|
1
1
|
import * as R from 'ramda';
|
|
2
2
|
|
|
3
|
-
export const
|
|
4
|
-
|
|
5
|
-
(
|
|
3
|
+
export const duplicateObs = (dims, observations) => {
|
|
4
|
+
const duplicated = R.reduce(
|
|
5
|
+
(obs, dim) => {
|
|
6
|
+
const groupedObs = R.groupBy(o => R.prop(dim.id, o.indexedDimValIds), obs);
|
|
7
|
+
const enhancedObs = R.addIndex(R.map)(
|
|
8
|
+
(value, index) => {
|
|
9
|
+
const matchingObs = R.propOr([], value.id, groupedObs);
|
|
6
10
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
const r = R.map(
|
|
18
|
-
i => R.map(is => R.append(i, is), acc),
|
|
19
|
-
oInds
|
|
20
|
-
);
|
|
21
|
-
return R.unnest(r);
|
|
22
|
-
},
|
|
23
|
-
R.pipe(R.head, R.map(R.of))(orderedIndexes),
|
|
24
|
-
R.tail(orderedIndexes)
|
|
25
|
-
);
|
|
26
|
-
}
|
|
27
|
-
else {
|
|
28
|
-
cartesian = [R.unnest(orderedIndexes)];
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
const duplicatedObs = R.reduce(
|
|
32
|
-
(acc, orderedDimIndexes) => {
|
|
33
|
-
const key = R.join(':', orderedDimIndexes);
|
|
34
|
-
return R.assoc(key, { ...obs, orderedDimIndexes }, acc);
|
|
11
|
+
return R.map(
|
|
12
|
+
obs => R.over(
|
|
13
|
+
R.lensProp('orderedDimIndexes'),
|
|
14
|
+
_indexes => {
|
|
15
|
+
const indexes = R.isNil(_indexes) ? R.map(i => Number(i), obs.dimValuesIndexes) : _indexes;
|
|
16
|
+
return R.set(R.lensIndex(dim.__index), index)(indexes);
|
|
17
|
+
}
|
|
18
|
+
)(obs),
|
|
19
|
+
matchingObs
|
|
20
|
+
);
|
|
35
21
|
},
|
|
36
|
-
|
|
37
|
-
cartesian
|
|
22
|
+
dim.values
|
|
38
23
|
);
|
|
39
|
-
|
|
40
|
-
return R.mergeRight(acc, duplicatedObs);
|
|
24
|
+
return R.unnest(enhancedObs);
|
|
41
25
|
},
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
)
|
|
45
|
-
|
|
26
|
+
R.values(observations),
|
|
27
|
+
dims
|
|
28
|
+
);
|
|
29
|
+
const res = R.indexBy(R.pipe(R.prop('orderedDimIndexes'), R.join(':')), duplicated);
|
|
30
|
+
return res;
|
|
31
|
+
};
|