@sis-cc/dotstatsuite-components 20.6.0 → 21.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.gitlab-ci.yml +3 -2
- package/README.md +1 -17
- package/package.json +20 -14
- package/src/bridge-d3-react/src/react-chart-factory.js +1 -2
- package/src/rules/src/factories/sample-series.js +1 -1
- package/src/rules/src/index.js +14 -13
- package/src/rules/src/observation-formater.js +0 -1
- package/src/rules/src/properties/focus.js +3 -3
- package/src/rules/src/sdmx-data/index.js +2 -0
- package/src/viewer/src/index.js +4 -5
- package/src/viewer/src/legends/AxisLegend.js +0 -7
- package/src/viewer/src/legends/FocusLegend.js +2 -10
- package/src/viewer/src/legends/Legend.js +0 -6
- package/src/viewer/src/legends/SeriesLegend.js +0 -7
- package/vite.config.mjs +51 -0
- package/lib/app.js +0 -22
- package/lib/bridge-d3-react/src/app.js +0 -98
- package/lib/bridge-d3-react/src/index.js +0 -33
- package/lib/bridge-d3-react/src/mock-choro.js +0 -41
- package/lib/bridge-d3-react/src/react-chart-factory.js +0 -103
- package/lib/index.js +0 -41
- package/lib/rules/src/chart/getAxisOptions.js +0 -206
- package/lib/rules/src/chart/getBaseOptions.js +0 -51
- package/lib/rules/src/chart/getChartOptions.js +0 -106
- package/lib/rules/src/chart/getGridOptions.js +0 -21
- package/lib/rules/src/chart/getTooltipOptions.js +0 -84
- package/lib/rules/src/constants.js +0 -68
- package/lib/rules/src/date.js +0 -180
- package/lib/rules/src/dimension-utils.js +0 -67
- package/lib/rules/src/factories/choro-series.js +0 -99
- package/lib/rules/src/factories/sample-focus.js +0 -64
- package/lib/rules/src/factories/sample-series.js +0 -90
- package/lib/rules/src/factories/scatter-dimension.js +0 -72
- package/lib/rules/src/factories/scatter-focus.js +0 -77
- package/lib/rules/src/factories/scatter-series.js +0 -145
- package/lib/rules/src/factories/stacked-dimension.js +0 -42
- package/lib/rules/src/factories/stacked-series.js +0 -166
- package/lib/rules/src/factories/symbol-dimension.js +0 -69
- package/lib/rules/src/factories/symbol-series.js +0 -119
- package/lib/rules/src/factories/timeline-focus.js +0 -38
- package/lib/rules/src/factories/timeline-series.js +0 -121
- package/lib/rules/src/get-values-enhanced.js +0 -141
- package/lib/rules/src/header/getDefaultSubtitle.js +0 -50
- package/lib/rules/src/header/getHeaderUnits.js +0 -26
- package/lib/rules/src/header/getSubtitleFlags.js +0 -53
- package/lib/rules/src/header/getTitleFlags.js +0 -24
- package/lib/rules/src/header/index.js +0 -41
- package/lib/rules/src/index.js +0 -714
- package/lib/rules/src/layout.js +0 -98
- package/lib/rules/src/observation-formater.js +0 -112
- package/lib/rules/src/preparators/enhanceObservations.js +0 -142
- package/lib/rules/src/preparators/formatValue.js +0 -83
- package/lib/rules/src/preparators/getObservations.js +0 -27
- package/lib/rules/src/preparators/getReportingYearStart.js +0 -52
- package/lib/rules/src/properties/errors.js +0 -31
- package/lib/rules/src/properties/focus.js +0 -90
- package/lib/rules/src/properties/getAvailableChartTypes.js +0 -30
- package/lib/rules/src/properties/getHeaderProps.js +0 -83
- package/lib/rules/src/properties/getInformationsStateFromNewProps.js +0 -61
- package/lib/rules/src/properties/getObservationsType.js +0 -31
- package/lib/rules/src/properties/getStringifiedSubtitle.js +0 -18
- package/lib/rules/src/properties/index.js +0 -401
- package/lib/rules/src/properties/information.js +0 -79
- package/lib/rules/src/properties/linear.js +0 -158
- package/lib/rules/src/properties/scatter.js +0 -174
- package/lib/rules/src/properties/stacked.js +0 -133
- package/lib/rules/src/properties/symbol.js +0 -96
- package/lib/rules/src/properties/utils.js +0 -126
- package/lib/rules/src/sdmx-data/index.js +0 -55
- package/lib/rules/src/table/factories/getCellValue.js +0 -57
- package/lib/rules/src/table/index.js +0 -14
- package/lib/rules/src/v8-transformer.js +0 -184
- package/lib/rules/test/extractSdmxArtefacts.js +0 -37
- package/lib/rules/test/get-values-enhanced.test.js +0 -128
- package/lib/rules/test/oecd-HEALTH_PROT-parsed.js +0 -303
- package/lib/rules/test/scatter-property.js +0 -403
- package/lib/rules/test/stacked-property.js +0 -244
- package/lib/rules/test/symbol-property.js +0 -234
- package/lib/rules/test/v8-transformer.test.js +0 -82
- package/lib/rules2/src/applyHierarchicalCodesToDim.js +0 -175
- package/lib/rules2/src/combinedValuesDisplay.js +0 -71
- package/lib/rules2/src/constants.js +0 -11
- package/lib/rules2/src/duplicateObservations.js +0 -39
- package/lib/rules2/src/enhanceObservations.js +0 -103
- package/lib/rules2/src/getAdvAttrSeriesAtCoordinates.js +0 -39
- package/lib/rules2/src/getAttributesSeries.js +0 -40
- package/lib/rules2/src/getCombinationDefinitions.js +0 -72
- package/lib/rules2/src/getDataflowAttributes.js +0 -34
- package/lib/rules2/src/getDataflowTooltipAttributesIds.js +0 -38
- package/lib/rules2/src/getDimensionValuesIndexes.js +0 -19
- package/lib/rules2/src/getHCodelistsRefsInData.js +0 -49
- package/lib/rules2/src/getHeaderCombinations.js +0 -51
- package/lib/rules2/src/getHeaderCoordinates.js +0 -18
- package/lib/rules2/src/getHeaderSubtitle.js +0 -41
- package/lib/rules2/src/getHeaderTitle.js +0 -29
- package/lib/rules2/src/getMSDInformations.js +0 -43
- package/lib/rules2/src/getManyValuesDimensions.js +0 -39
- package/lib/rules2/src/getMetadataCoordinates.js +0 -40
- package/lib/rules2/src/getMetadataStructureFromData.js +0 -23
- package/lib/rules2/src/getNotDisplayedIds.js +0 -58
- package/lib/rules2/src/getOneValueDimensions.js +0 -48
- package/lib/rules2/src/getSeriesCombinations.js +0 -33
- package/lib/rules2/src/hasCellMetadata.js +0 -22
- package/lib/rules2/src/hierarchiseDimensionWithAdvancedHierarchy2.js +0 -65
- package/lib/rules2/src/hierarchiseDimensionWithNativeHierarchy2.js +0 -39
- package/lib/rules2/src/index.js +0 -443
- package/lib/rules2/src/parseAttributes.js +0 -51
- package/lib/rules2/src/parseCombinations.js +0 -96
- package/lib/rules2/src/parseHierarchicalCodelist.js +0 -57
- package/lib/rules2/src/parseMetadataSeries.js +0 -119
- package/lib/rules2/src/prepareData.js +0 -113
- package/lib/rules2/src/refineAttributes.js +0 -32
- package/lib/rules2/src/refineDimensions.js +0 -38
- package/lib/rules2/src/refineMetadataCoordinates.js +0 -35
- package/lib/rules2/src/refineTimePeriod.js +0 -154
- package/lib/rules2/src/sdmx3.0DataFormatPatch.js +0 -20
- package/lib/rules2/src/table/declineObservationsOverAttributes.js +0 -43
- package/lib/rules2/src/table/getCells.js +0 -90
- package/lib/rules2/src/table/getCellsAttributesIds.js +0 -63
- package/lib/rules2/src/table/getCellsMetadataCoordinates.js +0 -30
- package/lib/rules2/src/table/getCombinationDimensionsData.js +0 -48
- package/lib/rules2/src/table/getCuratedCells.js +0 -28
- package/lib/rules2/src/table/getFlagsAndNotes.js +0 -30
- package/lib/rules2/src/table/getIndexedCombinationsByDisplay.js +0 -31
- package/lib/rules2/src/table/getLayout.js +0 -105
- package/lib/rules2/src/table/getLayoutData2.js +0 -269
- package/lib/rules2/src/table/getSortedLayoutIndexes.js +0 -136
- package/lib/rules2/src/table/getTableLabelAccessor.js +0 -20
- package/lib/rules2/src/table/getTableLayoutIds.js +0 -365
- package/lib/rules2/src/table/getTableProps.js +0 -96
- package/lib/rules2/src/table/parseSeriesIndexesHierarchies.js +0 -124
- package/lib/rules2/src/table/parseValueHierarchy.js +0 -63
- package/lib/rules2/src/table/refineLayoutSize2.js +0 -293
- package/lib/rules2/src/utils.js +0 -48
- package/lib/viewer/mocks/bar.js +0 -21
- package/lib/viewer/mocks/gpp-symbol.js +0 -55
- package/lib/viewer/mocks/gpp-time.js +0 -1023
- package/lib/viewer/mocks/row.js +0 -26
- package/lib/viewer/mocks/scatter.js +0 -84
- package/lib/viewer/mocks/stack.js +0 -93
- package/lib/viewer/src/app/leg.js +0 -101
- package/lib/viewer/src/app/nodata-res.js +0 -40
- package/lib/viewer/src/app/nodata-sized.js +0 -41
- package/lib/viewer/src/app/one-table-cell.js +0 -75
- package/lib/viewer/src/app/table.js +0 -300
- package/lib/viewer/src/app/use-case-1.js +0 -60
- package/lib/viewer/src/app/use-case-2.js +0 -82
- package/lib/viewer/src/app/use-case-3.js +0 -52
- package/lib/viewer/src/app.js +0 -162
- package/lib/viewer/src/chart.js +0 -82
- package/lib/viewer/src/chartUtils/options.js +0 -30
- package/lib/viewer/src/chartUtils/series.js +0 -63
- package/lib/viewer/src/footer.js +0 -54
- package/lib/viewer/src/header.js +0 -29
- package/lib/viewer/src/index.js +0 -243
- package/lib/viewer/src/legends/AxisLegend.js +0 -84
- package/lib/viewer/src/legends/ChartLegends.js +0 -100
- package/lib/viewer/src/legends/FocusLegend.js +0 -89
- package/lib/viewer/src/legends/Legend.js +0 -88
- package/lib/viewer/src/legends/SeriesLegend.js +0 -108
- package/lib/viewer/src/utils.js +0 -36
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getFooterProps = exports.getHeaderProps = exports.getSourceLabel = exports.getSubtitle = exports.getTitleLabel = undefined;
|
|
7
|
-
|
|
8
|
-
var _ramda = require('ramda');
|
|
9
|
-
|
|
10
|
-
var R = _interopRequireWildcard(_ramda);
|
|
11
|
-
|
|
12
|
-
var _header = require('../header');
|
|
13
|
-
|
|
14
|
-
var _ = require('../');
|
|
15
|
-
|
|
16
|
-
var _utils = require('./utils');
|
|
17
|
-
|
|
18
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
|
19
|
-
|
|
20
|
-
var isCustomInvalid = function isCustomInvalid(_ref) {
|
|
21
|
-
var type = _ref.type;
|
|
22
|
-
return function (value) {
|
|
23
|
-
return R.isNil(value) || !(0, _utils.isChart)(type);
|
|
24
|
-
};
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
var getDataflowName = function getDataflowName(props) {
|
|
28
|
-
var dataflow = R.propOr({}, 'dataflow', props);
|
|
29
|
-
var display = (0, _.parseDisplay)(props.display);
|
|
30
|
-
return (0, _.dimensionValueDisplay)(display)(dataflow);
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
var getTitleLabel = exports.getTitleLabel = function getTitleLabel(props, state) {
|
|
34
|
-
return R.when(isCustomInvalid({ type: props.type }), R.always(getDataflowName(props)))(state.title);
|
|
35
|
-
};
|
|
36
|
-
|
|
37
|
-
var getSubtitle = exports.getSubtitle = function getSubtitle(props, state) {
|
|
38
|
-
return R.ifElse(isCustomInvalid({ type: props.type }), R.always((0, _header.getDefaultSubtitle)({
|
|
39
|
-
customAttributes: props.customAttributes,
|
|
40
|
-
dimensions: state.dimensions,
|
|
41
|
-
display: props.display,
|
|
42
|
-
units: state.units
|
|
43
|
-
})), function (label) {
|
|
44
|
-
var flags = (0, _header.getSubtitleFlags)({
|
|
45
|
-
customAttributes: props.customAttributes,
|
|
46
|
-
dimensions: state.dimensions,
|
|
47
|
-
display: props.display,
|
|
48
|
-
units: state.units
|
|
49
|
-
});
|
|
50
|
-
return [{ label: label, flags: flags }];
|
|
51
|
-
})(state.subtitle);
|
|
52
|
-
};
|
|
53
|
-
|
|
54
|
-
var getSourceLabel = exports.getSourceLabel = function getSourceLabel(props, state) {
|
|
55
|
-
return R.when(isCustomInvalid({ type: props.type }), R.always(getDataflowName(props)))(state.sourceLabel);
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
var getHeaderProps = exports.getHeaderProps = function getHeaderProps(props, state) {
|
|
59
|
-
var title = {
|
|
60
|
-
label: getTitleLabel(props, state),
|
|
61
|
-
flags: (0, _header.getTitleFlags)({
|
|
62
|
-
customAttributes: props.customAttributes,
|
|
63
|
-
dataflowAttributes: state.dataflowAttributes,
|
|
64
|
-
display: props.display
|
|
65
|
-
})
|
|
66
|
-
};
|
|
67
|
-
|
|
68
|
-
var subtitle = getSubtitle(props, state);
|
|
69
|
-
|
|
70
|
-
var uprs = (0, _header.getHeaderUnits)({
|
|
71
|
-
display: props.display,
|
|
72
|
-
units: R.assoc('values', R.pathOr([], ['units', 'headerUnits'], state))(R.pathOr({}, ['units', 'unitDimension'], props))
|
|
73
|
-
});
|
|
74
|
-
return { subtitle: subtitle, title: title, uprs: uprs };
|
|
75
|
-
};
|
|
76
|
-
|
|
77
|
-
var getFooterProps = exports.getFooterProps = function getFooterProps(props, state) {
|
|
78
|
-
return {
|
|
79
|
-
withCopyright: (0, _utils.isChart)(props.type) ? state.withCopyright : true,
|
|
80
|
-
withLogo: (0, _utils.isChart)(props.type) ? state.withLogo : true,
|
|
81
|
-
sourceLabel: getSourceLabel(props, state)
|
|
82
|
-
};
|
|
83
|
-
};
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getInformationsStateFromNewProps = 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 _ = require('../');
|
|
17
|
-
|
|
18
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
|
19
|
-
|
|
20
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
|
-
|
|
22
|
-
var initialState = {
|
|
23
|
-
dataflow: null,
|
|
24
|
-
dataflowAttributes: null,
|
|
25
|
-
dimensions: null,
|
|
26
|
-
units: null,
|
|
27
|
-
id: null,
|
|
28
|
-
sourceLabel: null,
|
|
29
|
-
subtitle: null,
|
|
30
|
-
title: null,
|
|
31
|
-
withCopyright: true,
|
|
32
|
-
withLogo: true
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
var getInformationsStateFromNewProps = exports.getInformationsStateFromNewProps = function getInformationsStateFromNewProps(props, state) {
|
|
36
|
-
if (R.isNil(props.data)) {
|
|
37
|
-
return initialState;
|
|
38
|
-
}
|
|
39
|
-
var id = R.pipe(R.prop('data'), _.extractSdmxArtefacts, R.prop('id'))(props);
|
|
40
|
-
if (id === state.id && props.display === state.display) {
|
|
41
|
-
return {};
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
var _prepareData = (0, _.prepareData)({ data: props.data }, props.customAttributes, props.units),
|
|
45
|
-
dataflowAttributes = _prepareData.dataflowAttributes,
|
|
46
|
-
dataflowName = _prepareData.dataflowName,
|
|
47
|
-
dimensions = _prepareData.dimensions,
|
|
48
|
-
units = _prepareData.units;
|
|
49
|
-
|
|
50
|
-
return (0, _extends3.default)({}, initialState, {
|
|
51
|
-
dataflow: {
|
|
52
|
-
id: props.dataflowId,
|
|
53
|
-
name: dataflowName
|
|
54
|
-
},
|
|
55
|
-
dataflowAttributes: dataflowAttributes,
|
|
56
|
-
dimensions: dimensions,
|
|
57
|
-
display: props.display,
|
|
58
|
-
id: id,
|
|
59
|
-
units: units
|
|
60
|
-
});
|
|
61
|
-
};
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getObservationsType = 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 getObservationsType = exports.getObservationsType = function getObservationsType(data) {
|
|
17
|
-
if (R.isNil(data)) {
|
|
18
|
-
return undefined;
|
|
19
|
-
}
|
|
20
|
-
var firstObs = R.pipe(R.pathOr({}, ['dataSets', 0, 'observations']), R.values, R.find(function (obs) {
|
|
21
|
-
return R.not(R.either(R.isNil, R.isEmpty)(R.head(obs)));
|
|
22
|
-
}))(data);
|
|
23
|
-
if (R.isNil(firstObs)) {
|
|
24
|
-
return undefined;
|
|
25
|
-
}
|
|
26
|
-
var firstObsValue = R.head(firstObs);
|
|
27
|
-
if (R.is(Number, firstObsValue)) {
|
|
28
|
-
return _constants.OBS_TYPE_NUMBER;
|
|
29
|
-
}
|
|
30
|
-
return R.ifElse(R.equals(NaN), R.always(_constants.OBS_TYPE_STRING), R.always(_constants.OBS_TYPE_NUMERICAL_STRING))(Number(firstObsValue));
|
|
31
|
-
};
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.stringifySubtitle = undefined;
|
|
7
|
-
|
|
8
|
-
var _ramda = require('ramda');
|
|
9
|
-
|
|
10
|
-
var R = _interopRequireWildcard(_ramda);
|
|
11
|
-
|
|
12
|
-
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } }
|
|
13
|
-
|
|
14
|
-
var stringifySubtitle = exports.stringifySubtitle = R.pipe(R.map(function (_ref) {
|
|
15
|
-
var header = _ref.header,
|
|
16
|
-
label = _ref.label;
|
|
17
|
-
return R.isNil(header) ? label : header + ' ' + label;
|
|
18
|
-
}), R.join(' · '));
|
|
@@ -1,401 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.toProperties = exports.onChangeProperties = exports.stateFromNewProps = exports.initialState = exports.toChartOptions = exports.getErrors = exports.toChartData = exports.toSingularity = undefined;
|
|
7
|
-
|
|
8
|
-
var _extends2 = require('babel-runtime/helpers/extends');
|
|
9
|
-
|
|
10
|
-
var _extends3 = _interopRequireDefault(_extends2);
|
|
11
|
-
|
|
12
|
-
var _ramda = require('ramda');
|
|
13
|
-
|
|
14
|
-
var R = _interopRequireWildcard(_ramda);
|
|
15
|
-
|
|
16
|
-
var _dotstatsuiteSdmxjs = require('@sis-cc/dotstatsuite-sdmxjs');
|
|
17
|
-
|
|
18
|
-
var _ = require('../');
|
|
19
|
-
|
|
20
|
-
var _constants = require('../constants');
|
|
21
|
-
|
|
22
|
-
var _focus = require('./focus');
|
|
23
|
-
|
|
24
|
-
var _scatter = require('./scatter');
|
|
25
|
-
|
|
26
|
-
var _symbol = require('./symbol');
|
|
27
|
-
|
|
28
|
-
var _stacked = require('./stacked');
|
|
29
|
-
|
|
30
|
-
var _linear = require('./linear');
|
|
31
|
-
|
|
32
|
-
var _utils = require('./utils');
|
|
33
|
-
|
|
34
|
-
var _getHeaderProps = require('./getHeaderProps');
|
|
35
|
-
|
|
36
|
-
var _getStringifiedSubtitle = require('./getStringifiedSubtitle');
|
|
37
|
-
|
|
38
|
-
var _errors = require('./errors');
|
|
39
|
-
|
|
40
|
-
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; } }
|
|
41
|
-
|
|
42
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
43
|
-
|
|
44
|
-
/*
|
|
45
|
-
- width/height -> initial undefined, if undefined or blank, replaced by options.base
|
|
46
|
-
*/
|
|
47
|
-
|
|
48
|
-
var toSingularity = exports.toSingularity = function toSingularity(_ref, state) {
|
|
49
|
-
var data = _ref.data,
|
|
50
|
-
type = _ref.type;
|
|
51
|
-
|
|
52
|
-
switch (type) {
|
|
53
|
-
case _constants.SCATTER:
|
|
54
|
-
return (0, _scatter.toScatterSingularity)(state);
|
|
55
|
-
case _constants.H_SYMBOL:case _constants.V_SYMBOL:
|
|
56
|
-
return (0, _symbol.toSymbolSingularity)(data, state);
|
|
57
|
-
case _constants.STACKED_BAR:case _constants.STACKED_ROW:
|
|
58
|
-
return (0, _stacked.toStackedSingularity)(state);
|
|
59
|
-
default:
|
|
60
|
-
return null;
|
|
61
|
-
}
|
|
62
|
-
};
|
|
63
|
-
|
|
64
|
-
var toChartData = exports.toChartData = function toChartData(props, state) {
|
|
65
|
-
var dimensions = R.pathOr([], ['data', 'structure', 'dimensions', 'observation'], props);
|
|
66
|
-
var attributes = R.pathOr([], ['data', 'structure', 'attributes', 'observation'], props);
|
|
67
|
-
var frequency = props.type === _constants.TIMELINE ? (0, _dotstatsuiteSdmxjs.getDataFrequency)({ dimensions: dimensions, attributes: attributes }) : null;
|
|
68
|
-
return {
|
|
69
|
-
frequency: frequency,
|
|
70
|
-
series: (0, _.series)(props.data, props.type, R.pick(['highlight', 'baseline'], state), toSingularity(props, state), props.map, props.display, props.formaterIds),
|
|
71
|
-
share: {
|
|
72
|
-
focused: R.pick(['highlight', 'baseline'], state),
|
|
73
|
-
chartDimension: toSingularity(props, state)
|
|
74
|
-
}
|
|
75
|
-
};
|
|
76
|
-
};
|
|
77
|
-
|
|
78
|
-
var getErrors = exports.getErrors = function getErrors(props, state) {
|
|
79
|
-
return {
|
|
80
|
-
noTime: (0, _errors.getHasNoTimePeriodError)(props)
|
|
81
|
-
};
|
|
82
|
-
};
|
|
83
|
-
|
|
84
|
-
var toFloat = function toFloat(value) {
|
|
85
|
-
var float = parseFloat(value);
|
|
86
|
-
return isNaN(float) ? undefined : float;
|
|
87
|
-
};
|
|
88
|
-
|
|
89
|
-
var toOption = function toOption(stateValue, optionValue) {
|
|
90
|
-
return R.isNil(stateValue) ? optionValue : toFloat(stateValue);
|
|
91
|
-
};
|
|
92
|
-
|
|
93
|
-
var getFreqStepOption = function getFreqStepOption(props, state) {
|
|
94
|
-
if (props.type !== _constants.TIMELINE) {
|
|
95
|
-
return null;
|
|
96
|
-
}
|
|
97
|
-
var inputState = toFloat(state.freqStep);
|
|
98
|
-
return R.isNil(inputState) ? 1 : inputState;
|
|
99
|
-
};
|
|
100
|
-
|
|
101
|
-
var toChartOptions = exports.toChartOptions = function toChartOptions(props, state) {
|
|
102
|
-
var options = R.propOr({}, 'options', props);
|
|
103
|
-
var base = R.propOr({}, 'base', options);
|
|
104
|
-
var axis = R.propOr({}, 'axis', options);
|
|
105
|
-
var axeX = R.propOr({}, 'x', axis);
|
|
106
|
-
var axeY = R.propOr({}, 'y', axis);
|
|
107
|
-
var linearX = R.propOr({}, 'linear', axeX);
|
|
108
|
-
var linearY = R.propOr({}, 'linear', axeY);
|
|
109
|
-
var tickX = R.propOr({}, 'tick', axeX);
|
|
110
|
-
var pivotX = R.propOr({}, 'pivot', linearX);
|
|
111
|
-
var pivotY = R.propOr({}, 'pivot', linearY);
|
|
112
|
-
var map = R.propOr({}, 'map', props);
|
|
113
|
-
return (0, _extends3.default)({}, options, {
|
|
114
|
-
axis: (0, _extends3.default)({}, axis, {
|
|
115
|
-
x: (0, _extends3.default)({}, axeX, {
|
|
116
|
-
tick: (0, _extends3.default)({}, tickX, {
|
|
117
|
-
step: getFreqStepOption(props, state)
|
|
118
|
-
}),
|
|
119
|
-
linear: (0, _extends3.default)({}, linearX, {
|
|
120
|
-
max: toOption(state.maxX, linearX.max),
|
|
121
|
-
min: toOption(state.minX, linearX.min),
|
|
122
|
-
pivot: {
|
|
123
|
-
value: toOption(state.pivotX, pivotX.value)
|
|
124
|
-
},
|
|
125
|
-
step: toOption(props.type === _constants.TIMELINE ? 1 : state.stepX, linearX.step)
|
|
126
|
-
})
|
|
127
|
-
}),
|
|
128
|
-
y: (0, _extends3.default)({}, axeY, {
|
|
129
|
-
linear: (0, _extends3.default)({}, linearY, {
|
|
130
|
-
max: toOption(state.maxY, linearY.max),
|
|
131
|
-
min: toOption(state.minY, linearY.min),
|
|
132
|
-
pivot: {
|
|
133
|
-
value: toOption(state.pivotY, pivotY.value)
|
|
134
|
-
},
|
|
135
|
-
step: toOption(state.stepY, linearY.step)
|
|
136
|
-
})
|
|
137
|
-
})
|
|
138
|
-
}),
|
|
139
|
-
map: R.pick(['projection', 'scale'], map),
|
|
140
|
-
base: (0, _extends3.default)({}, base, {
|
|
141
|
-
height: toOption(state.fixedHeight, base.height),
|
|
142
|
-
width: toOption(state.fixedWidth, base.width)
|
|
143
|
-
})
|
|
144
|
-
});
|
|
145
|
-
};
|
|
146
|
-
|
|
147
|
-
var initialState = exports.initialState = (0, _extends3.default)({
|
|
148
|
-
highlight: [],
|
|
149
|
-
baseline: [],
|
|
150
|
-
fixedWidth: undefined,
|
|
151
|
-
fixedHeight: undefined,
|
|
152
|
-
freqStep: undefined,
|
|
153
|
-
responsiveWidth: undefined,
|
|
154
|
-
responsiveHeight: undefined,
|
|
155
|
-
scatterDimension: undefined,
|
|
156
|
-
scatterX: undefined,
|
|
157
|
-
scatterY: undefined,
|
|
158
|
-
symbolDimension: undefined,
|
|
159
|
-
stackedDimension: undefined,
|
|
160
|
-
stackedMode: undefined,
|
|
161
|
-
id: undefined,
|
|
162
|
-
type: undefined
|
|
163
|
-
}, _linear.initialState);
|
|
164
|
-
|
|
165
|
-
var stateFromNewProps = exports.stateFromNewProps = function stateFromNewProps(props, state) {
|
|
166
|
-
var focusState = (0, _focus.sampleFocusStateFromNewProps)(props, state);
|
|
167
|
-
var scatterState = (0, _scatter.scatterStateFromNewProps)(props, state);
|
|
168
|
-
var symbolState = (0, _symbol.symbolStateFromNewProps)(props, state);
|
|
169
|
-
var stackedState = (0, _stacked.stackedStateFromNewProps)(props, state);
|
|
170
|
-
var linearState = (0, _linear.linearStateFromNewProps)(props.type);
|
|
171
|
-
return (0, _extends3.default)({}, focusState, scatterState, symbolState, stackedState, linearState, {
|
|
172
|
-
fixedWidth: R.prop('fixedWidth', state),
|
|
173
|
-
fixedHeight: R.prop('fixedHeight', state),
|
|
174
|
-
responsiveWidth: R.prop('responsiveWidth', state),
|
|
175
|
-
responsiveHeight: R.prop('responsiveHeight', state),
|
|
176
|
-
freqStep: props.type === _constants.TIMELINE ? R.prop('freqStep', state) || '1' : undefined,
|
|
177
|
-
type: R.prop('type', props)
|
|
178
|
-
});
|
|
179
|
-
};
|
|
180
|
-
|
|
181
|
-
var propertiesParsers = {
|
|
182
|
-
highlight: _focus.onChangeFocusSelection,
|
|
183
|
-
baseline: _focus.onChangeFocusSelection,
|
|
184
|
-
fixedWidth: function fixedWidth(value) {
|
|
185
|
-
return (0, _utils.isNaturalInt)(value) ? value : undefined;
|
|
186
|
-
},
|
|
187
|
-
fixedHeight: function fixedHeight(value) {
|
|
188
|
-
return (0, _utils.isNaturalInt)(value) ? value : undefined;
|
|
189
|
-
},
|
|
190
|
-
responsiveWidth: function responsiveWidth(value) {
|
|
191
|
-
return (0, _utils.isNumber)(value) ? value : undefined;
|
|
192
|
-
},
|
|
193
|
-
responsiveHeight: function responsiveHeight(value) {
|
|
194
|
-
return (0, _utils.isNumber)(value) ? value : undefined;
|
|
195
|
-
},
|
|
196
|
-
freqStep: function freqStep(value) {
|
|
197
|
-
return (0, _utils.isNaturalInt)(value) ? value : undefined;
|
|
198
|
-
},
|
|
199
|
-
title: R.identity,
|
|
200
|
-
subtitle: R.identity,
|
|
201
|
-
sourceLabel: R.identity,
|
|
202
|
-
scatterDimension: _utils.optionParser,
|
|
203
|
-
scatterX: _utils.optionParser,
|
|
204
|
-
scatterY: _utils.optionParser,
|
|
205
|
-
symbolDimension: _utils.optionParser,
|
|
206
|
-
stackedDimension: _utils.optionParser,
|
|
207
|
-
stackedMode: _utils.optionParser,
|
|
208
|
-
maxX: function maxX(value) {
|
|
209
|
-
return (0, _utils.isNumber)(value) ? value : undefined;
|
|
210
|
-
},
|
|
211
|
-
maxY: function maxY(value) {
|
|
212
|
-
return (0, _utils.isNumber)(value) ? value : undefined;
|
|
213
|
-
},
|
|
214
|
-
minX: function minX(value) {
|
|
215
|
-
return (0, _utils.isNumber)(value) ? value : undefined;
|
|
216
|
-
},
|
|
217
|
-
minY: function minY(value) {
|
|
218
|
-
return (0, _utils.isNumber)(value) ? value : undefined;
|
|
219
|
-
},
|
|
220
|
-
pivotX: function pivotX(value) {
|
|
221
|
-
return (0, _utils.isNumber)(value) ? value : undefined;
|
|
222
|
-
},
|
|
223
|
-
pivotY: function pivotY(value) {
|
|
224
|
-
return (0, _utils.isNumber)(value) ? value : undefined;
|
|
225
|
-
},
|
|
226
|
-
stepX: function stepX(value) {
|
|
227
|
-
return (0, _utils.isNaturalInt)(value) ? value : undefined;
|
|
228
|
-
},
|
|
229
|
-
stepY: function stepY(value) {
|
|
230
|
-
return (0, _utils.isNaturalInt)(value) ? value : undefined;
|
|
231
|
-
}
|
|
232
|
-
};
|
|
233
|
-
|
|
234
|
-
var onChangeProperties = exports.onChangeProperties = function onChangeProperties(state, onChange) {
|
|
235
|
-
return function (newProperties) {
|
|
236
|
-
var apply = R.is(Function, onChange) ? onChange : R.identity;
|
|
237
|
-
var refined = R.pipe(R.mapObjIndexed(function (value, key) {
|
|
238
|
-
var _parser = R.prop(key, propertiesParsers);
|
|
239
|
-
var parser = R.is(Function, _parser) ? _parser : R.identity;
|
|
240
|
-
return parser(value);
|
|
241
|
-
}), R.pickBy(function (value, key) {
|
|
242
|
-
return value !== R.prop(key, state);
|
|
243
|
-
}))(newProperties);
|
|
244
|
-
if (R.isEmpty(refined)) {
|
|
245
|
-
return;
|
|
246
|
-
}
|
|
247
|
-
apply(refined);
|
|
248
|
-
};
|
|
249
|
-
};
|
|
250
|
-
|
|
251
|
-
var toProperties = exports.toProperties = function toProperties(props, state, _onChange) {
|
|
252
|
-
return (0, _extends3.default)({}, (0, _linear.toProperties)(props, state, _onChange), {
|
|
253
|
-
highlight: {
|
|
254
|
-
id: 'highlight',
|
|
255
|
-
isActive: (0, _utils.hasFocus)(props.type),
|
|
256
|
-
onChange: R.pipe(_focus.onChangeFocusSelection, function (selection) {
|
|
257
|
-
_onChange({ highlight: selection });
|
|
258
|
-
}),
|
|
259
|
-
options: (0, _focus.focusOptions)(props, state, 'baseline', toSingularity(props, state)),
|
|
260
|
-
value: R.prop('highlight', state)
|
|
261
|
-
},
|
|
262
|
-
baseline: {
|
|
263
|
-
id: 'baseline',
|
|
264
|
-
isActive: (0, _utils.hasFocus)(props.type),
|
|
265
|
-
onChange: R.pipe(_focus.onChangeFocusSelection, function (selection) {
|
|
266
|
-
return _onChange({ baseline: selection });
|
|
267
|
-
}),
|
|
268
|
-
options: (0, _focus.focusOptions)(props, state, 'highlight', toSingularity(props, state)),
|
|
269
|
-
value: R.prop('baseline', state)
|
|
270
|
-
},
|
|
271
|
-
width: {
|
|
272
|
-
id: 'width',
|
|
273
|
-
isActive: (0, _utils.isChart)(props.type),
|
|
274
|
-
onChange: function onChange(value) {
|
|
275
|
-
return _onChange({
|
|
276
|
-
fixedWidth: (0, _utils.isNaturalInt)(value) ? value : undefined
|
|
277
|
-
});
|
|
278
|
-
},
|
|
279
|
-
placeholder: R.when(R.complement(R.isNil), function (value) {
|
|
280
|
-
return String(Math.floor(Number(value)));
|
|
281
|
-
})(state.responsiveWidth),
|
|
282
|
-
value: R.prop('fixedWidth', state)
|
|
283
|
-
},
|
|
284
|
-
height: {
|
|
285
|
-
id: 'height',
|
|
286
|
-
isActive: (0, _utils.isChart)(props.type),
|
|
287
|
-
onChange: function onChange(value) {
|
|
288
|
-
return _onChange({
|
|
289
|
-
fixedHeight: (0, _utils.isNaturalInt)(value) ? value : undefined
|
|
290
|
-
});
|
|
291
|
-
},
|
|
292
|
-
placeholder: R.when(R.complement(R.isNil), function (value) {
|
|
293
|
-
return String(Math.floor(Number(value)));
|
|
294
|
-
})(state.responsiveHeight)
|
|
295
|
-
},
|
|
296
|
-
freqStep: {
|
|
297
|
-
id: 'freqStep',
|
|
298
|
-
isActive: props.type === _constants.TIMELINE,
|
|
299
|
-
onChange: function onChange(value) {
|
|
300
|
-
return _onChange({
|
|
301
|
-
freqStep: (0, _utils.isNaturalInt)(value) ? String(value) : undefined
|
|
302
|
-
});
|
|
303
|
-
},
|
|
304
|
-
value: R.prop('freqStep', state)
|
|
305
|
-
},
|
|
306
|
-
title: {
|
|
307
|
-
id: 'title',
|
|
308
|
-
isActive: (0, _utils.isChart)(props.type),
|
|
309
|
-
isDefault: R.isNil(state.title),
|
|
310
|
-
onChange: function onChange(value) {
|
|
311
|
-
return _onChange({ title: value });
|
|
312
|
-
},
|
|
313
|
-
value: R.isNil(state.title) || R.isEmpty(state.title) ? R.pathOr('', ['title', 'label'], props) : state.title,
|
|
314
|
-
onReset: R.isNil(state.title) ? null : function () {
|
|
315
|
-
return _onChange({ title: null });
|
|
316
|
-
}
|
|
317
|
-
},
|
|
318
|
-
subtitle: {
|
|
319
|
-
id: 'subtitle',
|
|
320
|
-
isActive: (0, _utils.isChart)(props.type),
|
|
321
|
-
isDefault: R.isNil(state.subtitle),
|
|
322
|
-
onChange: function onChange(value) {
|
|
323
|
-
return _onChange({ subtitle: value });
|
|
324
|
-
},
|
|
325
|
-
value: R.isNil(state.subtitle) || R.isEmpty(state.subtitle) ? (0, _getStringifiedSubtitle.stringifySubtitle)(props.subtitle || []) : state.subtitle,
|
|
326
|
-
onReset: R.isNil(state.subtitle) ? null : function () {
|
|
327
|
-
return _onChange({ subtitle: null });
|
|
328
|
-
}
|
|
329
|
-
},
|
|
330
|
-
source: {
|
|
331
|
-
id: 'source',
|
|
332
|
-
isActive: (0, _utils.isChart)(props.type),
|
|
333
|
-
isDefault: R.isNil(state.sourceLabel),
|
|
334
|
-
onChange: function onChange(value) {
|
|
335
|
-
return _onChange({ sourceLabel: value });
|
|
336
|
-
},
|
|
337
|
-
value: (0, _getHeaderProps.getSourceLabel)(props, state),
|
|
338
|
-
onReset: R.isNil(state.sourceLabel) ? null : function () {
|
|
339
|
-
return _onChange({ sourceLabel: null });
|
|
340
|
-
}
|
|
341
|
-
},
|
|
342
|
-
scatterDimension: {
|
|
343
|
-
id: 'scatterDimension',
|
|
344
|
-
isActive: (0, _scatter.isScatter)(props.type),
|
|
345
|
-
onChange: R.pipe(_utils.optionParser, (0, _scatter.onChangeScatterDim)(props, state), _onChange),
|
|
346
|
-
options: (0, _utils.chartDimensionOptions)(props, _scatter.isScatter),
|
|
347
|
-
value: (0, _utils.chartDimensionToOption)('scatterDimension')(props, state)
|
|
348
|
-
},
|
|
349
|
-
scatterX: {
|
|
350
|
-
id: 'scatterX',
|
|
351
|
-
isActive: (0, _scatter.isScatter)(props.type),
|
|
352
|
-
onChange: R.pipe(_utils.optionParser, (0, _scatter.onChangeScatterVal)(props, state, 'scatterX', 'scatterY'), _onChange),
|
|
353
|
-
options: (0, _scatter.scatterValueOptions)(props, state),
|
|
354
|
-
value: (0, _scatter.scatterStateValueToOption)('scatterX', props, state)
|
|
355
|
-
},
|
|
356
|
-
scatterY: {
|
|
357
|
-
id: 'scatterY',
|
|
358
|
-
isActive: (0, _scatter.isScatter)(props.type),
|
|
359
|
-
onChange: R.pipe(_utils.optionParser, (0, _scatter.onChangeScatterVal)(props, state, 'scatterY', 'scatterX'), _onChange),
|
|
360
|
-
options: (0, _scatter.scatterValueOptions)(props, state),
|
|
361
|
-
value: (0, _scatter.scatterStateValueToOption)('scatterY', props, state)
|
|
362
|
-
},
|
|
363
|
-
symbolDimension: {
|
|
364
|
-
id: 'symbolDimension',
|
|
365
|
-
isActive: (0, _symbol.isSymbol)(props.type),
|
|
366
|
-
options: (0, _utils.chartDimensionOptions)(props, _symbol.isSymbol),
|
|
367
|
-
onChange: R.pipe(_utils.optionParser, (0, _symbol.onChangeSymbolDim)(props), _onChange),
|
|
368
|
-
value: (0, _utils.chartDimensionToOption)('symbolDimension')(props, state)
|
|
369
|
-
},
|
|
370
|
-
stackedDimension: {
|
|
371
|
-
id: 'stackedDimension',
|
|
372
|
-
isActive: (0, _stacked.isStackedDimActive)(props),
|
|
373
|
-
options: (0, _utils.chartDimensionOptions)(props, _stacked.isStacked),
|
|
374
|
-
onChange: R.pipe(_utils.optionParser, (0, _stacked.onChangeStackedDimension)(props, state), _onChange),
|
|
375
|
-
value: (0, _utils.chartDimensionToOption)('stackedDimension')(props, state)
|
|
376
|
-
},
|
|
377
|
-
stackedMode: {
|
|
378
|
-
id: 'stackedMode',
|
|
379
|
-
isActive: (0, _stacked.isStacked)(props.type),
|
|
380
|
-
options: _stacked.stackedModeOptions,
|
|
381
|
-
onChange: R.pipe(_utils.optionParser, _stacked.onChangeStackedMode, _onChange),
|
|
382
|
-
value: R.prop('stackedMode', state)
|
|
383
|
-
},
|
|
384
|
-
logo: {
|
|
385
|
-
id: 'logo',
|
|
386
|
-
isActive: (0, _utils.isChart)(props.type),
|
|
387
|
-
checked: !state.withLogo,
|
|
388
|
-
onChange: function onChange() {
|
|
389
|
-
return _onChange({ withLogo: !state.withLogo });
|
|
390
|
-
}
|
|
391
|
-
},
|
|
392
|
-
copyright: {
|
|
393
|
-
id: 'copyright',
|
|
394
|
-
isActive: (0, _utils.isChart)(props.type),
|
|
395
|
-
checked: !state.withCopyright,
|
|
396
|
-
onChange: function onChange() {
|
|
397
|
-
return _onChange({ withCopyright: !state.withCopyright });
|
|
398
|
-
}
|
|
399
|
-
}
|
|
400
|
-
});
|
|
401
|
-
};
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.toHeader = exports.informationStateFromNewProps = exports.initialState = undefined;
|
|
7
|
-
|
|
8
|
-
var _ramda = require('ramda');
|
|
9
|
-
|
|
10
|
-
var _ = require('../');
|
|
11
|
-
|
|
12
|
-
var _dimensionUtils = require('../dimension-utils');
|
|
13
|
-
|
|
14
|
-
var initialState = exports.initialState = {
|
|
15
|
-
subtitle: undefined,
|
|
16
|
-
title: undefined,
|
|
17
|
-
sourceLabel: undefined
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
var informationStateFromNewProps = exports.informationStateFromNewProps = function informationStateFromNewProps(props, state) {
|
|
21
|
-
var _extractSdmxArtefacts = (0, _.extractSdmxArtefacts)(props.data),
|
|
22
|
-
id = _extractSdmxArtefacts.id;
|
|
23
|
-
|
|
24
|
-
if (id !== state.id) {
|
|
25
|
-
return initialState;
|
|
26
|
-
}
|
|
27
|
-
return {};
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
var getDataflowCode = function getDataflowCode(url) {
|
|
31
|
-
if ((0, _ramda.isNil)(url) || (0, _ramda.isEmpty)(url)) {
|
|
32
|
-
return null;
|
|
33
|
-
}
|
|
34
|
-
var match = url.match(/[\w\/]+\/data\/([^\/]+)\//);
|
|
35
|
-
if (!(0, _ramda.is)(Array, match)) {
|
|
36
|
-
return null;
|
|
37
|
-
}
|
|
38
|
-
//v8 case: 'AGENCY,CODE,VERSION'
|
|
39
|
-
var id = match[1];
|
|
40
|
-
var splitId = (0, _ramda.split)(',', id);
|
|
41
|
-
if ((0, _ramda.length)(splitId) === 1) {
|
|
42
|
-
return splitId[0];
|
|
43
|
-
}
|
|
44
|
-
return splitId[1];
|
|
45
|
-
};
|
|
46
|
-
|
|
47
|
-
var defaultTitle = function defaultTitle(props, display) {
|
|
48
|
-
var name = (0, _ramda.path)(['data', 'structure', 'name'], props);
|
|
49
|
-
var code = getDataflowCode(props.sdmxUrl);
|
|
50
|
-
return (0, _dimensionUtils.dimensionValueDisplay)(display)({ id: code, name: name });
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
var defaultSourceLabel = function defaultSourceLabel(props, title) {
|
|
54
|
-
var propsLabel = (0, _ramda.path)(['source', 'label'], props);
|
|
55
|
-
return (0, _ramda.isNil)(propsLabel) || (0, _ramda.isEmpty)(propsLabel) ? title : propsLabel;
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
var toHeader = exports.toHeader = function toHeader(props, state) {
|
|
59
|
-
var display = (0, _.parseDisplay)(props.display);
|
|
60
|
-
var stateTitle = (0, _ramda.prop)('title', state);
|
|
61
|
-
var stateSubtitle = (0, _ramda.prop)('subtitle', state);
|
|
62
|
-
var stateSourceLabel = (0, _ramda.prop)('sourceLabel', state);
|
|
63
|
-
var propsSourceLink = (0, _ramda.path)(['source', 'link'], props);
|
|
64
|
-
var title = (0, _ramda.isNil)(stateTitle) || (0, _ramda.isEmpty)(stateTitle) ? defaultTitle(props, display) : stateTitle;
|
|
65
|
-
var subtitle = (0, _ramda.isNil)(stateSubtitle) || (0, _ramda.isEmpty)(stateSubtitle) ? (0, _.defaultSubtitle)(props.data, display) : stateSubtitle;
|
|
66
|
-
var sourceLink = (0, _ramda.isNil)(propsSourceLink) || (0, _ramda.isEmpty)(propsSourceLink) ? props.sdmxUrl : propsSourceLink;
|
|
67
|
-
var sourceLabel = (0, _ramda.isNil)(stateSourceLabel) || (0, _ramda.isEmpty)(stateSourceLabel) ? defaultSourceLabel(props, title) : stateSourceLabel;
|
|
68
|
-
return {
|
|
69
|
-
footnotes: { source: sourceLink, sourceLabel: sourceLabel },
|
|
70
|
-
title: { label: title },
|
|
71
|
-
subtitle: (0, _ramda.pipe)((0, _ramda.when)((0, _ramda.pipe)((0, _ramda.is)(Array), _ramda.not), _ramda.of), (0, _ramda.map)(function (entry) {
|
|
72
|
-
return { label: entry };
|
|
73
|
-
}))(subtitle),
|
|
74
|
-
uprs: (0, _ramda.pipe)(_.extractSdmxArtefacts, function (_ref) {
|
|
75
|
-
var attributes = _ref.attributes;
|
|
76
|
-
return (0, _.uprAttributes)(attributes);
|
|
77
|
-
}, _.uprAttributesWithOneRelevantValue, (0, _.headerUprsLabel)(display))(props.data)
|
|
78
|
-
};
|
|
79
|
-
};
|