@sis-cc/dotstatsuite-components 22.6.0 → 23.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/dist/bridge-d3-react/src/index.js +1 -2
- package/dist/bridge-d3-react/src/index.js.map +1 -1
- package/dist/rules/src/chart/getChartOptions.js +1 -1
- package/dist/rules/src/chart/getChartOptions.js.map +1 -1
- package/dist/rules/src/constants.js +1 -35
- package/dist/rules/src/constants.js.map +1 -1
- package/dist/rules/src/dimension-utils.js +26 -24
- package/dist/rules/src/dimension-utils.js.map +1 -1
- package/dist/rules/src/factories/choro-series.js +43 -32
- package/dist/rules/src/factories/choro-series.js.map +1 -1
- package/dist/rules/src/factories/focus.js +20 -0
- package/dist/rules/src/factories/focus.js.map +1 -0
- package/dist/rules/src/factories/getChartSeries.js +11 -0
- package/dist/rules/src/factories/getChartSeries.js.map +1 -0
- package/dist/rules/src/factories/sample-focus.js +14 -18
- package/dist/rules/src/factories/sample-focus.js.map +1 -1
- package/dist/rules/src/factories/sample-series.js +20 -20
- package/dist/rules/src/factories/sample-series.js.map +1 -1
- package/dist/rules/src/factories/scatter-focus.js +21 -35
- package/dist/rules/src/factories/scatter-focus.js.map +1 -1
- package/dist/rules/src/factories/scatter-series.js +5 -5
- package/dist/rules/src/factories/scatter-series.js.map +1 -1
- package/dist/rules/src/factories/series.js +48 -0
- package/dist/rules/src/factories/series.js.map +1 -0
- package/dist/rules/src/factories/stacked-series.js +6 -7
- package/dist/rules/src/factories/stacked-series.js.map +1 -1
- package/dist/rules/src/factories/symbol-series.js +39 -46
- package/dist/rules/src/factories/symbol-series.js.map +1 -1
- package/dist/rules/src/factories/timeline-focus.js +10 -14
- package/dist/rules/src/factories/timeline-focus.js.map +1 -1
- package/dist/rules/src/factories/timeline-series.js +37 -41
- package/dist/rules/src/factories/timeline-series.js.map +1 -1
- package/dist/rules/src/get-values-enhanced.js +6 -0
- package/dist/rules/src/get-values-enhanced.js.map +1 -1
- package/dist/rules/src/index.js +6 -371
- package/dist/rules/src/index.js.map +1 -1
- package/dist/rules/src/layout.js +4 -2
- package/dist/rules/src/layout.js.map +1 -1
- package/dist/rules/src/observation-formater.js +8 -14
- package/dist/rules/src/observation-formater.js.map +1 -1
- package/dist/rules/src/properties/focus.js +51 -3
- package/dist/rules/src/properties/focus.js.map +1 -1
- package/dist/rules/src/properties/getHeaderProps.js +2 -53
- package/dist/rules/src/properties/getHeaderProps.js.map +1 -1
- package/dist/rules/src/properties/index.js +3 -94
- package/dist/rules/src/properties/index.js.map +1 -1
- package/dist/rules/src/properties/linear.js +4 -4
- package/dist/rules/src/properties/linear.js.map +1 -1
- package/dist/rules/src/properties/scatter.js +4 -4
- package/dist/rules/src/properties/scatter.js.map +1 -1
- package/dist/rules/src/properties/stacked.js +5 -7
- package/dist/rules/src/properties/stacked.js.map +1 -1
- package/dist/rules/src/properties/symbol.js.map +1 -1
- package/dist/rules/src/properties/utils.js +11 -12
- package/dist/rules/src/properties/utils.js.map +1 -1
- package/dist/rules/src/sdmx-data/index.js +2 -27
- package/dist/rules/src/sdmx-data/index.js.map +1 -1
- package/dist/rules2/src/combinedValuesDisplay.js +2 -2
- package/dist/rules2/src/combinedValuesDisplay.js.map +1 -1
- package/dist/rules2/src/getAttributes.js +37 -0
- package/dist/rules2/src/getAttributes.js.map +1 -0
- package/dist/rules2/src/getDataflowTooltipAttributesIds.js +2 -2
- package/dist/rules2/src/getDataflowTooltipAttributesIds.js.map +1 -1
- package/dist/rules2/src/getHeaderCombinations.js +1 -1
- package/dist/rules2/src/getHeaderCombinations.js.map +1 -1
- package/dist/rules2/src/getHeaderSubtitle.js +1 -1
- package/dist/rules2/src/getHeaderSubtitle.js.map +1 -1
- package/dist/rules2/src/getHeaderTitle.js +1 -1
- package/dist/rules2/src/getHeaderTitle.js.map +1 -1
- package/dist/rules2/src/getMetadataCoordinates.js +1 -1
- package/dist/rules2/src/getMetadataCoordinates.js.map +1 -1
- package/dist/rules2/src/getNotDisplayedIds.js +1 -1
- package/dist/rules2/src/getNotDisplayedIds.js.map +1 -1
- package/dist/rules2/src/index.js +1 -0
- package/dist/rules2/src/index.js.map +1 -1
- package/dist/rules2/src/parseAttributes.js +2 -2
- package/dist/rules2/src/parseAttributes.js.map +1 -1
- package/dist/rules2/src/parseHierarchicalCodelist.js +1 -1
- package/dist/rules2/src/parseHierarchicalCodelist.js.map +1 -1
- package/dist/rules2/src/parseMetadataSeries.js +1 -1
- package/dist/rules2/src/parseMetadataSeries.js.map +1 -1
- package/dist/rules2/src/prepareData.js +10 -3
- package/dist/rules2/src/prepareData.js.map +1 -1
- package/dist/rules2/src/refineDimensions.js +53 -8
- package/dist/rules2/src/refineDimensions.js.map +1 -1
- package/dist/rules2/src/table/getCells.js +1 -1
- package/dist/rules2/src/table/getCells.js.map +1 -1
- package/dist/rules2/src/table/getLayout.js +1 -1
- package/dist/rules2/src/table/getLayout.js.map +1 -1
- package/dist/rules2/src/table/getTableLayoutIds.js +1 -1
- package/dist/rules2/src/table/getTableLayoutIds.js.map +1 -1
- package/dist/rules2/src/table/getTableProps.js +0 -1
- package/dist/rules2/src/table/getTableProps.js.map +1 -1
- package/dist/rules2/src/table/parseValueHierarchy.js.map +1 -1
- package/dist/rules2/src/table/refineLayoutSize2.js +1 -1
- package/dist/rules2/src/table/refineLayoutSize2.js.map +1 -1
- package/dist/rules2/src/utils.js.map +1 -1
- package/dist/viewer/src/chart.js +13 -2
- package/dist/viewer/src/chart.js.map +1 -1
- package/dist/viewer/src/legends/FocusLegend.js +1 -1
- package/dist/viewer/src/legends/FocusLegend.js.map +1 -1
- package/package.json +6 -5
- package/src/bridge-d3-react/src/index.js +0 -1
- package/src/rules/src/chart/getChartOptions.js +2 -2
- package/src/rules/src/constants.js +0 -35
- package/src/rules/src/dimension-utils.js +25 -23
- package/src/rules/src/factories/choro-series.js +41 -30
- package/src/rules/src/factories/focus.js +17 -0
- package/src/rules/src/factories/getChartSeries.js +8 -0
- package/src/rules/src/factories/sample-focus.js +14 -18
- package/src/rules/src/factories/sample-series.js +20 -20
- package/src/rules/src/factories/scatter-focus.js +22 -36
- package/src/rules/src/factories/scatter-series.js +8 -8
- package/src/rules/src/factories/series.js +45 -0
- package/src/rules/src/factories/stacked-series.js +4 -5
- package/src/rules/src/factories/symbol-series.js +37 -44
- package/src/rules/src/factories/timeline-focus.js +10 -14
- package/src/rules/src/factories/timeline-series.js +35 -39
- package/src/rules/src/get-values-enhanced.js +6 -0
- package/src/rules/src/index.js +7 -384
- package/src/rules/src/layout.js +4 -2
- package/src/rules/src/observation-formater.js +14 -20
- package/src/rules/src/properties/focus.js +50 -2
- package/src/rules/src/properties/getHeaderProps.js +1 -53
- package/src/rules/src/properties/index.js +2 -93
- package/src/rules/src/properties/linear.js +2 -2
- package/src/rules/src/properties/scatter.js +4 -4
- package/src/rules/src/properties/stacked.js +4 -6
- package/src/rules/src/properties/symbol.js +0 -1
- package/src/rules/src/properties/utils.js +11 -22
- package/src/rules/src/sdmx-data/index.js +2 -31
- package/src/rules2/src/combinedValuesDisplay.js +2 -2
- package/src/rules2/src/getAttributes.js +34 -0
- package/src/rules2/src/getDataflowTooltipAttributesIds.js +2 -2
- package/src/rules2/src/getHeaderCombinations.js +1 -1
- package/src/rules2/src/getHeaderSubtitle.js +2 -2
- package/src/rules2/src/getHeaderTitle.js +1 -1
- package/src/rules2/src/getMetadataCoordinates.js +1 -1
- package/src/rules2/src/getNotDisplayedIds.js +1 -1
- package/src/rules2/src/index.js +1 -0
- package/src/rules2/src/parseAttributes.js +2 -2
- package/src/rules2/src/parseHierarchicalCodelist.js +1 -1
- package/src/rules2/src/parseMetadataSeries.js +1 -1
- package/src/rules2/src/prepareData.js +10 -3
- package/src/rules2/src/refineDimensions.js +53 -8
- package/src/rules2/src/table/getCells.js +2 -2
- package/src/rules2/src/table/getLayout.js +2 -2
- package/src/rules2/src/table/getTableLayoutIds.js +9 -9
- package/src/rules2/src/table/getTableProps.js +0 -1
- package/src/rules2/src/table/parseValueHierarchy.js +0 -7
- package/src/rules2/src/table/refineLayoutSize2.js +5 -5
- package/src/rules2/src/utils.js +0 -11
- package/src/viewer/src/app/leg.js +0 -1
- package/src/viewer/src/chart.jsx +23 -1
- package/src/viewer/src/legends/FocusLegend.jsx +1 -1
- package/dist/rules/src/factories/scatter-dimension.js +0 -35
- package/dist/rules/src/factories/scatter-dimension.js.map +0 -1
- package/dist/rules/src/factories/stacked-dimension.js +0 -32
- package/dist/rules/src/factories/stacked-dimension.js.map +0 -1
- package/dist/rules/src/factories/symbol-dimension.js +0 -32
- package/dist/rules/src/factories/symbol-dimension.js.map +0 -1
- package/dist/rules/src/header/getDefaultSubtitle.js +0 -44
- package/dist/rules/src/header/getDefaultSubtitle.js.map +0 -1
- package/dist/rules/src/header/getHeaderUnits.js +0 -21
- package/dist/rules/src/header/getHeaderUnits.js.map +0 -1
- package/dist/rules/src/header/getSubtitleFlags.js +0 -47
- package/dist/rules/src/header/getSubtitleFlags.js.map +0 -1
- package/dist/rules/src/header/getTitleFlags.js +0 -12
- package/dist/rules/src/header/getTitleFlags.js.map +0 -1
- package/dist/rules/src/properties/errors.js +0 -22
- package/dist/rules/src/properties/errors.js.map +0 -1
- package/dist/rules/src/properties/getInformationsStateFromNewProps.js +0 -50
- package/dist/rules/src/properties/getInformationsStateFromNewProps.js.map +0 -1
- package/dist/rules/src/v8-transformer.js +0 -174
- package/dist/rules/src/v8-transformer.js.map +0 -1
- package/src/bridge-d3-react/src/app.js +0 -64
- package/src/bridge-d3-react/src/mock-choro.js +0 -394
- package/src/rules/src/factories/scatter-dimension.js +0 -32
- package/src/rules/src/factories/stacked-dimension.js +0 -29
- package/src/rules/src/factories/symbol-dimension.js +0 -29
- package/src/rules/src/header/getDefaultSubtitle.js +0 -40
- package/src/rules/src/header/getHeaderUnits.js +0 -17
- package/src/rules/src/header/getSubtitleFlags.js +0 -43
- package/src/rules/src/header/getTitleFlags.js +0 -8
- package/src/rules/src/header/index.js +0 -4
- package/src/rules/src/preparators/enhanceObservations.js +0 -152
- package/src/rules/src/properties/errors.js +0 -19
- package/src/rules/src/properties/getInformationsStateFromNewProps.js +0 -47
- package/src/rules/src/properties/information.js +0 -84
- package/src/rules/src/v8-transformer.js +0 -177
- package/src/rules2/src/getAdvAttrSeriesAtCoordinates.js +0 -29
- package/src/rules2/src/getMetadataStructureFromData.js +0 -17
- package/src/rules2/src/refineMetadataCoordinates.js +0 -28
- package/src/rules2/src/table/getCombinationDimensionsData.js +0 -39
|
@@ -5,7 +5,6 @@ import * as rcwCharts from '@sis-cc/dotstatsuite-d3-charts';
|
|
|
5
5
|
const BarChart = createFactory(factory(rcwCharts.BarChart));
|
|
6
6
|
const RowChart = createFactory(factory(rcwCharts.RowChart));
|
|
7
7
|
const ScatterChart = createFactory(factory(rcwCharts.ScatterChart));
|
|
8
|
-
const LineChart = createFactory(factory(rcwCharts.LineChart));
|
|
9
8
|
const TimelineChart = createFactory(factory(rcwCharts.TimelineChart));
|
|
10
9
|
const VerticalSymbolChart = createFactory(factory(rcwCharts.VerticalSymbolChart));
|
|
11
10
|
const HorizontalSymbolChart = createFactory(factory(rcwCharts.HorizontalSymbolChart));
|
|
@@ -14,5 +13,5 @@ const StackedRowChart = createFactory(factory(rcwCharts.StackedRowChart));
|
|
|
14
13
|
const ChoroplethChart = createFactory(factory(rcwCharts.ChoroplethChart));
|
|
15
14
|
const ChoroplethLegend = createFactory(factory(rcwCharts.ChoroplethLegend));
|
|
16
15
|
|
|
17
|
-
export { BarChart, ChoroplethChart, ChoroplethLegend, HorizontalSymbolChart,
|
|
16
|
+
export { BarChart, ChoroplethChart, ChoroplethLegend, HorizontalSymbolChart, RowChart, ScatterChart, StackedBarChart, StackedRowChart, TimelineChart, VerticalSymbolChart };
|
|
18
17
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/bridge-d3-react/src/index.js"],"sourcesContent":["import { createFactory } from 'react';\n\nimport factory from './react-chart-factory.jsx';\nimport * as rcwCharts from '@sis-cc/dotstatsuite-d3-charts';\n\nexport const BarChart = createFactory(factory(rcwCharts.BarChart));\nexport const RowChart = createFactory(factory(rcwCharts.RowChart));\nexport const ScatterChart = createFactory(factory(rcwCharts.ScatterChart));\nexport const
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/bridge-d3-react/src/index.js"],"sourcesContent":["import { createFactory } from 'react';\n\nimport factory from './react-chart-factory.jsx';\nimport * as rcwCharts from '@sis-cc/dotstatsuite-d3-charts';\n\nexport const BarChart = createFactory(factory(rcwCharts.BarChart));\nexport const RowChart = createFactory(factory(rcwCharts.RowChart));\nexport const ScatterChart = createFactory(factory(rcwCharts.ScatterChart));\nexport const TimelineChart = createFactory(factory(rcwCharts.TimelineChart));\nexport const VerticalSymbolChart = createFactory(factory(rcwCharts.VerticalSymbolChart));\nexport const HorizontalSymbolChart = createFactory(factory(rcwCharts.HorizontalSymbolChart));\nexport const StackedBarChart = createFactory(factory(rcwCharts.StackedBarChart));\nexport const StackedRowChart = createFactory(factory(rcwCharts.StackedRowChart));\nexport const ChoroplethChart = createFactory(factory(rcwCharts.ChoroplethChart));\nexport const ChoroplethLegend = createFactory(factory(rcwCharts.ChoroplethLegend));\n"],"names":[],"mappings":";;;;AAKY,MAAC,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC;AACrD,MAAC,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC;AACrD,MAAC,YAAY,GAAG,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC;AAC7D,MAAC,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,aAAa,CAAC;AAC/D,MAAC,mBAAmB,GAAG,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC;AAC3E,MAAC,qBAAqB,GAAG,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC;AAC/E,MAAC,eAAe,GAAG,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC;AACnE,MAAC,eAAe,GAAG,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC;AACnE,MAAC,eAAe,GAAG,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC;AACnE,MAAC,gBAAgB,GAAG,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getChartOptions.js","sources":["../../../../src/rules/src/chart/getChartOptions.js"],"sourcesContent":["import * as R from 'ramda'; \nimport numeral from 'numeral';\nimport { getAxisOptions } from './getAxisOptions';\nimport { getBaseOptions } from './getBaseOptions';\nimport { getGridOptions } from './getGridOptions';\nimport { getTooltipOptions } from './getTooltipOptions';\nimport { SCATTER, STACKED_BAR, STACKED_ROW, TIMELINE } from '../constants';\n\
|
|
1
|
+
{"version":3,"file":"getChartOptions.js","sources":["../../../../src/rules/src/chart/getChartOptions.js"],"sourcesContent":["import * as R from 'ramda'; \nimport numeral from 'numeral';\nimport { getAxisOptions } from './getAxisOptions';\nimport { getBaseOptions } from './getBaseOptions';\nimport { getGridOptions } from './getGridOptions';\nimport { getTooltipOptions } from './getTooltipOptions';\nimport { SCATTER, STACKED_BAR, STACKED_ROW, TIMELINE } from '../constants';\n\nconst FOCUS_COLORS = {\n highlightColors: ['#E73741', '#0F8FD9', '#993484', '#DF521E', '#719E24', '#E1B400', '#32A674', '#0B68AF'],\n baselineColors: ['#0B1E2D']\n};\n\nconst symbolMarkers = () => {\n const paths = {\n circle: size => {\n const r = Math.sqrt(size) / 2;\n return `M0,${r} A${r},${r} 0 1,1 0,${-r} A${r},${r} 0 1,1 0,${r} Z`;\n },\n square: size => {\n const r = Math.sqrt(size) / 2;\n return `M${-r},${-r} L${r},${-r} ${r},${r} ${-r},${r} Z`;\n },\n cross: size => {\n const r = Math.sqrt(size) / 2;\n return `M${-r},${r} L${r},${-r} M${r},${r} L${-r},${-r}`;\n },\n 'triangle': size => {\n const rx = Math.sqrt(size) / Math.sqrt(3);\n const ry = Math.sqrt(size) / 2;\n return `M0,${-ry} L${rx},${ry} ${-rx},${ry} Z`;\n }\n }\n return ([\n { style: { stroke: '#39617D', fill: '#39617D' }, path: paths.circle },\n { style: { stroke: '#39617D', fill: '#DBEBF2' }, rotate: 45, path: paths.square },\n { style: { stroke: '#39617D', fill: '#39617D', strokeWidth: 2 }, path: paths.cross },\n { style: { stroke: '#39617D', fill: '#DBEBF2' }, path: paths.square },\n { style: { stroke: '#39617D', fill: '#39617D' }, path: paths.triangle }\n ]);\n};\n\nconst getAnnotationOptions = (type, options) => R.pipe(\n R.pathOr({}, ['serie', 'annotation']),\n R.mergeRight({\n format: {\n datapoint: { proc: d => numeral(d).format('0,0.[00]') }\n }\n }),\n R.cond([\n [\n R.always(R.equals(SCATTER, type)),\n R.mergeRight({ display: 'never' })\n ],\n [\n R.always(R.equals(TIMELINE, type)),\n R.mergeDeepRight({ format: { datapoint: { pattern: '.2f' } } })\n ],\n [R.T, R.identity]\n ])\n)(options);\n\nexport const getChartOptions = (data, type, options, tooltipFonts, timeFormats, locale) => {\n const defaultSerieColors = R.ifElse(\n R.anyPass([R.equals(STACKED_BAR), R.equals(STACKED_ROW)]),\n R.always(['#607D8B']),\n R.always(['#8EA4B1'])\n )(type);\n\n return ({\n axis: getAxisOptions(data, type, options, timeFormats, locale),\n background: R.pipe(\n R.propOr({}, 'background'),\n R.mergeRight({ color: '#DBEBF2' })\n )(options),\n base: getBaseOptions(type, options),\n grid: getGridOptions(type, options),\n map: R.pipe(\n R.propOr({}, 'map'),\n R.mergeRight({ intBoundariesColor: '#8EA4B1' })\n )(options),\n serie: {\n ...R.propOr({}, 'serie', options),\n annotation: getAnnotationOptions(type, options),\n choropleth: R.pipe(\n R.pathOr({}, ['serie', 'choropleth']),\n R.mergeRight({\n divisions: 4,\n domain: 'YlorRd',\n invert: false,\n labelDisplay: 'none',\n })\n )(options),\n stacked: R.pipe(\n R.pathOr({}, ['serie', 'stacked']),\n R.mergeRight({ strokeThickness: 1, strokeColor: '#F8FAFC' })\n )(options),\n symbol: R.pipe(\n R.pathOr({}, ['serie', 'symbol']),\n R.mergeRight({\n markers: symbolMarkers(),\n markerDefaultSize: 60,\n markerDefaultStrokeWidth: 1,\n gapMinMaxColor: '#607D8B',\n gapMinMaxThickness: 1,\n gapAxisMinColor: 'white',\n gapAxisMinThickness: 1\n })\n )(options),\n colors: R.pathOr(defaultSerieColors, ['serie', 'colors'], options),\n overColors: R.pathOr(['#39617D'], ['serie', 'overColors'], options),\n highlightColors: R.pathOr(FOCUS_COLORS.highlightColors, ['serie', 'highlightColors'], options),\n baselineColors: R.pathOr(FOCUS_COLORS.baselineColors, ['serie', 'baselineColors'], options),\n tooltip: getTooltipOptions(data, type, options, tooltipFonts, timeFormats, locale)\n }\n });\n};\n\n"],"names":[],"mappings":"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"}
|
|
@@ -20,40 +20,6 @@ const TYPES = {
|
|
|
20
20
|
[STACKED_ROW]: STACKED_ROW,
|
|
21
21
|
[CHORO]: CHORO,
|
|
22
22
|
};
|
|
23
|
-
const FREQ_A = 'annual';
|
|
24
|
-
const FREQ_Q = 'quarterly';
|
|
25
|
-
const FREQ_M = 'monthly';
|
|
26
|
-
const DEFAULT_UPR_IDS = {
|
|
27
|
-
U: ['UNIT', 'UNIT_MEASURE', 'UNIT_MEAS', 'UNITS'],
|
|
28
|
-
P: ['UNIT_MULT', 'POWERCODE', 'POWER', 'MAGNITUDE', 'SCALE'],
|
|
29
|
-
R: ['REF_PERIOD', 'REFERENCEPERIOD', 'BASE_PER']
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
const DEFAULT_REJECTED_UPR_VALUES_IDS = {
|
|
33
|
-
U: [],
|
|
34
|
-
P: ['0'],
|
|
35
|
-
R: []
|
|
36
|
-
};
|
|
37
|
-
|
|
38
|
-
const DEFAULT_REJECTED_SUBTITLE_IDS = ['_L', '_T', '_Z'];
|
|
39
|
-
|
|
40
|
-
const DIMENSION_DISPLAY_PARTS = {
|
|
41
|
-
DESCRIPTION: 'description',
|
|
42
|
-
CODE: 'code',
|
|
43
|
-
BOTH: 'both',
|
|
44
|
-
};
|
|
45
|
-
|
|
46
|
-
const DEFAULT_MAJOR_ATTRIBUTES = {
|
|
47
|
-
DECIMALS: {
|
|
48
|
-
ID: 'DECIMALS',
|
|
49
|
-
ROLE: 'DECIMALS'
|
|
50
|
-
},
|
|
51
|
-
SCALE: {
|
|
52
|
-
ID: 'SCALE'
|
|
53
|
-
}
|
|
54
|
-
};
|
|
55
|
-
|
|
56
|
-
const V8_SDMX_JSON = "application/vnd.sdmx.data+json;version=1.0.0-wd";
|
|
57
23
|
|
|
58
24
|
const OBS_TYPE_NUMBER = 'OBS_TYPE_NUMBER';
|
|
59
25
|
const OBS_TYPE_NUMERICAL_STRING = 'OBS_TYPE_NUMERICAL_STRING';
|
|
@@ -61,5 +27,5 @@ const OBS_TYPE_STRING = 'OBS_TYPE_STRING';
|
|
|
61
27
|
const REPORTING_YEAR_START_DAY = 'REPORTING_YEAR_START_DAY';
|
|
62
28
|
const REPYEARSTART = 'REPYEARSTART';
|
|
63
29
|
|
|
64
|
-
export { BAR, CHORO,
|
|
30
|
+
export { BAR, CHORO, H_SYMBOL, OBS_TYPE_NUMBER, OBS_TYPE_NUMERICAL_STRING, OBS_TYPE_STRING, PERCENT, REPORTING_YEAR_START_DAY, REPYEARSTART, ROW, SCATTER, STACKED_BAR, STACKED_ROW, TIMELINE, TYPES, VALUES, V_SYMBOL };
|
|
65
31
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sources":["../../../src/rules/src/constants.js"],"sourcesContent":["export const BAR = 'BarChart';\nexport const ROW = 'RowChart';\nexport const SCATTER = 'ScatterChart';\nexport const TIMELINE = 'TimelineChart';\nexport const H_SYMBOL = 'HorizontalSymbolChart';\nexport const V_SYMBOL = 'VerticalSymbolChart';\nexport const STACKED_BAR = 'StackedBarChart';\nexport const STACKED_ROW = 'StackedRowChart';\nexport const CHORO = 'ChoroplethChart';\nexport const PERCENT = 'percent';\nexport const VALUES = 'values';\nexport const TYPES = {\n [BAR]: BAR,\n [ROW]: ROW,\n [SCATTER]: SCATTER,\n [TIMELINE]: TIMELINE,\n [H_SYMBOL]: H_SYMBOL,\n [V_SYMBOL]: V_SYMBOL,\n [STACKED_BAR]: STACKED_BAR,\n [STACKED_ROW]: STACKED_ROW,\n [CHORO]: CHORO,\n};\
|
|
1
|
+
{"version":3,"file":"constants.js","sources":["../../../src/rules/src/constants.js"],"sourcesContent":["export const BAR = 'BarChart';\nexport const ROW = 'RowChart';\nexport const SCATTER = 'ScatterChart';\nexport const TIMELINE = 'TimelineChart';\nexport const H_SYMBOL = 'HorizontalSymbolChart';\nexport const V_SYMBOL = 'VerticalSymbolChart';\nexport const STACKED_BAR = 'StackedBarChart';\nexport const STACKED_ROW = 'StackedRowChart';\nexport const CHORO = 'ChoroplethChart';\nexport const PERCENT = 'percent';\nexport const VALUES = 'values';\nexport const TYPES = {\n [BAR]: BAR,\n [ROW]: ROW,\n [SCATTER]: SCATTER,\n [TIMELINE]: TIMELINE,\n [H_SYMBOL]: H_SYMBOL,\n [V_SYMBOL]: V_SYMBOL,\n [STACKED_BAR]: STACKED_BAR,\n [STACKED_ROW]: STACKED_ROW,\n [CHORO]: CHORO,\n};\n\nexport const OBS_TYPE_NUMBER = 'OBS_TYPE_NUMBER';\nexport const OBS_TYPE_NUMERICAL_STRING = 'OBS_TYPE_NUMERICAL_STRING';\nexport const OBS_TYPE_STRING = 'OBS_TYPE_STRING';\nexport const REPORTING_YEAR_START_DAY = 'REPORTING_YEAR_START_DAY';\nexport const REPYEARSTART = 'REPYEARSTART';\n\n"],"names":[],"mappings":"AAAY,MAAC,GAAG,GAAG;AACP,MAAC,GAAG,GAAG;AACP,MAAC,OAAO,GAAG;AACX,MAAC,QAAQ,GAAG;AACZ,MAAC,QAAQ,GAAG;AACZ,MAAC,QAAQ,GAAG;AACZ,MAAC,WAAW,GAAG;AACf,MAAC,WAAW,GAAG;AACf,MAAC,KAAK,GAAG;AACT,MAAC,OAAO,GAAG;AACX,MAAC,MAAM,GAAG;AACV,MAAC,KAAK,GAAG;AACrB,EAAE,CAAC,GAAG,GAAG,GAAG;AACZ,EAAE,CAAC,GAAG,GAAG,GAAG;AACZ,EAAE,CAAC,OAAO,GAAG,OAAO;AACpB,EAAE,CAAC,QAAQ,GAAG,QAAQ;AACtB,EAAE,CAAC,QAAQ,GAAG,QAAQ;AACtB,EAAE,CAAC,QAAQ,GAAG,QAAQ;AACtB,EAAE,CAAC,WAAW,GAAG,WAAW;AAC5B,EAAE,CAAC,WAAW,GAAG,WAAW;AAC5B,EAAE,CAAC,KAAK,GAAG,KAAK;AAChB;;AAEY,MAAC,eAAe,GAAG;AACnB,MAAC,yBAAyB,GAAG;AAC7B,MAAC,eAAe,GAAG;AACnB,MAAC,wBAAwB,GAAG;AAC5B,MAAC,YAAY,GAAG;;;;"}
|
|
@@ -1,22 +1,29 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as R from 'ramda';
|
|
2
|
+
|
|
3
|
+
const parseDisplay = (display) =>
|
|
4
|
+
(R.isNil(display) || !(R.includes(display, ['both', 'code'])))
|
|
5
|
+
? 'label' : display;
|
|
2
6
|
|
|
3
7
|
const dimensionValueDisplay =
|
|
4
8
|
(display, accessors = {}) =>
|
|
5
9
|
(dimensionValue) => {
|
|
6
|
-
const id =
|
|
7
|
-
const name =
|
|
10
|
+
const id = R.propOr('', accessors.id || 'id', dimensionValue);
|
|
11
|
+
const name = R.propOr('', accessors.name || 'name', dimensionValue);
|
|
8
12
|
// a non-coded component (dim | attr) has no name, names nor label
|
|
9
13
|
// the only valid thing to display is the id
|
|
10
|
-
if (
|
|
14
|
+
if (R.propOr(false, 'isNonCoded', dimensionValue))
|
|
15
|
+
return id;
|
|
11
16
|
//auto-generated flags have no id nor name
|
|
12
|
-
if (isEmpty(id) && isEmpty(name))
|
|
17
|
+
if (R.isEmpty(id) && R.isEmpty(name))
|
|
18
|
+
return ''
|
|
13
19
|
switch (display) {
|
|
14
20
|
case 'label':
|
|
15
|
-
return isEmpty(name) ? `[${id}]` : name;
|
|
21
|
+
return R.isEmpty(name) ? `[${id}]` : name;
|
|
16
22
|
case 'code':
|
|
17
23
|
return id;
|
|
18
24
|
case 'both':
|
|
19
|
-
if (isNil(id) || isEmpty(id))
|
|
25
|
+
if (R.isNil(id) || R.isEmpty(id))
|
|
26
|
+
return name;
|
|
20
27
|
return `(${id}) ${name}`;
|
|
21
28
|
default:
|
|
22
29
|
return null;
|
|
@@ -24,7 +31,7 @@ const dimensionValueDisplay =
|
|
|
24
31
|
};
|
|
25
32
|
|
|
26
33
|
const dimensionValueDisplayAt = (dimension, index, display) => {
|
|
27
|
-
const dimensionValue =
|
|
34
|
+
const dimensionValue = R.pathOr({}, ['values', Number(index)], dimension);
|
|
28
35
|
return dimensionValueDisplay(display)(dimensionValue);
|
|
29
36
|
};
|
|
30
37
|
|
|
@@ -35,23 +42,18 @@ const categoryDisplay = (
|
|
|
35
42
|
rejectedId,
|
|
36
43
|
display,
|
|
37
44
|
) => {
|
|
38
|
-
return
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
dimension.id !== rejectedId
|
|
45
|
-
) {
|
|
46
|
-
memo.push(
|
|
47
|
-
dimensionValueDisplayAt(dimension, dimensionValueIndex, display),
|
|
48
|
-
);
|
|
45
|
+
return R.pipe(
|
|
46
|
+
R.addIndex(R.reduce)((acc, dimensionValueIndex, dimensionIndex) => {
|
|
47
|
+
const dimension = R.nth(dimensionIndex, dimensions) || {};
|
|
48
|
+
if (R.has(dimension.id, dimensionsWithValuesIndexedById)
|
|
49
|
+
&& dimension.id !== rejectedId) {
|
|
50
|
+
return R.append(dimensionValueDisplayAt(dimension, dimensionValueIndex, display), acc);
|
|
49
51
|
}
|
|
50
|
-
return
|
|
51
|
-
},
|
|
52
|
-
|
|
53
|
-
)
|
|
52
|
+
return acc;
|
|
53
|
+
}, []),
|
|
54
|
+
R.join(' - ')
|
|
55
|
+
)(splitObservationKey);
|
|
54
56
|
};
|
|
55
57
|
|
|
56
|
-
export { categoryDisplay, dimensionValueDisplay, dimensionValueDisplayAt };
|
|
58
|
+
export { categoryDisplay, dimensionValueDisplay, dimensionValueDisplayAt, parseDisplay };
|
|
57
59
|
//# sourceMappingURL=dimension-utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dimension-utils.js","sources":["../../../src/rules/src/dimension-utils.js"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"dimension-utils.js","sources":["../../../src/rules/src/dimension-utils.js"],"sourcesContent":["import * as R from 'ramda';\n\nexport const parseDisplay = (display) =>\n (R.isNil(display) || !(R.includes(display, ['both', 'code'])))\n ? 'label' : display;\n\nexport const dimensionValueDisplay =\n (display, accessors = {}) =>\n (dimensionValue) => {\n const id = R.propOr('', accessors.id || 'id', dimensionValue);\n const name = R.propOr('', accessors.name || 'name', dimensionValue);\n // a non-coded component (dim | attr) has no name, names nor label\n // the only valid thing to display is the id\n if (R.propOr(false, 'isNonCoded', dimensionValue))\n return id;\n //auto-generated flags have no id nor name\n if (R.isEmpty(id) && R.isEmpty(name))\n return ''\n switch (display) {\n case 'label':\n return R.isEmpty(name) ? `[${id}]` : name;\n case 'code':\n return id;\n case 'both':\n if (R.isNil(id) || R.isEmpty(id))\n return name;\n return `(${id}) ${name}`;\n default:\n return null;\n }\n };\n\nexport const dimensionValueDisplayAt = (dimension, index, display) => {\n const dimensionValue = R.pathOr({}, ['values', Number(index)], dimension);\n return dimensionValueDisplay(display)(dimensionValue);\n};\n\nexport const categoryDisplay = (\n splitObservationKey,\n dimensions,\n dimensionsWithValuesIndexedById,\n rejectedId,\n display,\n) => {\n return R.pipe(\n R.addIndex(R.reduce)((acc, dimensionValueIndex, dimensionIndex) => {\n const dimension = R.nth(dimensionIndex, dimensions) || {};\n if (R.has(dimension.id, dimensionsWithValuesIndexedById)\n && dimension.id !== rejectedId) {\n return R.append(dimensionValueDisplayAt(dimension, dimensionValueIndex, display), acc);\n }\n return acc;\n }, []),\n R.join(' - ')\n )(splitObservationKey);\n};\n"],"names":[],"mappings":";;AAEY,MAAC,YAAY,GAAG,CAAC,OAAO;AACpC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAC/D,MAAM,OAAO,GAAG;;AAEJ,MAAC,qBAAqB;AAClC,EAAE,CAAC,OAAO,EAAE,SAAS,GAAG,EAAE;AAC1B,EAAE,CAAC,cAAc,KAAK;AACtB,IAAI,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC,EAAE,IAAI,IAAI,EAAE,cAAc,CAAC;AACjE,IAAI,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,IAAI,MAAM,EAAE,cAAc,CAAC;AACvE;AACA;AACA,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,YAAY,EAAE,cAAc,CAAC;AACrD,MAAM,OAAO,EAAE;AACf;AACA,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;AACxC,MAAM,OAAO;AACb,IAAI,QAAQ,OAAO;AACnB,MAAM,KAAK,OAAO;AAClB,QAAQ,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI;AACjD,MAAM,KAAK,MAAM;AACjB,QAAQ,OAAO,EAAE;AACjB,MAAM,KAAK,MAAM;AACjB,QAAQ,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;AACxC,UAAU,OAAO,IAAI;AACrB,QAAQ,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;AAChC,MAAM;AACN,QAAQ,OAAO,IAAI;AACnB;AACA,EAAE;;AAEU,MAAC,uBAAuB,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,KAAK;AACtE,EAAE,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC;AAC3E,EAAE,OAAO,qBAAqB,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC;AACvD;;AAEY,MAAC,eAAe,GAAG;AAC/B,EAAE,mBAAmB;AACrB,EAAE,UAAU;AACZ,EAAE,+BAA+B;AACjC,EAAE,UAAU;AACZ,EAAE,OAAO;AACT,KAAK;AACL,EAAE,OAAO,CAAC,CAAC,IAAI;AACf,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,mBAAmB,EAAE,cAAc,KAAK;AACvE,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,UAAU,CAAC,IAAI,EAAE;AAC/D,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,+BAA+B;AAC7D,WAAW,SAAS,CAAC,EAAE,KAAK,UAAU,EAAE;AACxC,QAAQ,OAAO,CAAC,CAAC,MAAM,CAAC,uBAAuB,CAAC,SAAS,EAAE,mBAAmB,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC;AAC9F,MAAM;AACN,MAAM,OAAO,GAAG;AAChB,IAAI,CAAC,EAAE,EAAE,CAAC;AACV,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK;AAChB,GAAG,CAAC,mBAAmB,CAAC;AACxB;;;;"}
|
|
@@ -1,55 +1,66 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as R from 'ramda';
|
|
2
2
|
import { getRefAreaDimension } from '@sis-cc/dotstatsuite-sdmxjs';
|
|
3
3
|
import { categoryDisplay, dimensionValueDisplay } from '../dimension-utils.js';
|
|
4
4
|
|
|
5
5
|
const parseByAreas = (observations, refAreaDimension) => {
|
|
6
|
-
if (
|
|
6
|
+
if (R.isNil(refAreaDimension)) {
|
|
7
7
|
return null;
|
|
8
8
|
}
|
|
9
|
-
const
|
|
10
|
-
const refAreaValues = refAreaDimension.values;
|
|
9
|
+
const { __index, values=[] } = refAreaDimension;
|
|
11
10
|
|
|
12
|
-
return
|
|
13
|
-
|
|
14
|
-
(acc,
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
11
|
+
return R.pipe(
|
|
12
|
+
R.keys,
|
|
13
|
+
R.reduce((acc, key) => {
|
|
14
|
+
const value = observations[key];
|
|
15
|
+
const splitedKey = R.split(':', key);
|
|
16
|
+
const areaValueIndex = Number(R.nth(__index, splitedKey));
|
|
17
|
+
const areaValue = isNaN(areaValueIndex)
|
|
18
|
+
? null : R.nth(areaValueIndex, values);
|
|
19
|
+
const areaId = R.prop('id', areaValue || {});
|
|
20
|
+
return R.over(
|
|
21
|
+
R.lensProp(areaId),
|
|
22
|
+
vals => R.append({ splitedKey, value, areaValueIndex }, vals || []),
|
|
23
|
+
acc
|
|
24
|
+
);
|
|
25
|
+
}, {})
|
|
26
|
+
)(observations);
|
|
26
27
|
};
|
|
27
28
|
|
|
28
|
-
var
|
|
29
|
+
var choroSeries = ({ observations, dimensions }, dimensionsWithValuesIndexedById, topoMap, display) => {
|
|
29
30
|
const refAreaDimension = getRefAreaDimension({ dimensions });
|
|
30
31
|
const observationsByAreas = parseByAreas(observations, refAreaDimension);
|
|
31
|
-
const topology =
|
|
32
|
-
const areaSelection =
|
|
33
|
-
const topoAreas =
|
|
32
|
+
const topology = R.propOr({}, 'topology', topoMap);
|
|
33
|
+
const areaSelection = R.propOr(null, 'areaSelection', topoMap);
|
|
34
|
+
const topoAreas = R.pathOr(null, ['objects', areaSelection], topology);
|
|
34
35
|
if (!observationsByAreas || !topoAreas) {
|
|
35
36
|
return null;
|
|
36
37
|
}
|
|
37
|
-
const topoAreasWithData = map(
|
|
38
|
-
topoAreas.geometries,
|
|
38
|
+
const topoAreasWithData = R.map(
|
|
39
39
|
(areaGeometry) => {
|
|
40
|
-
const areaObservation =
|
|
41
|
-
|
|
42
|
-
|
|
40
|
+
const areaObservation = R.pipe(
|
|
41
|
+
R.pathOr(null, ['properties', 'id']),
|
|
42
|
+
id => R.propOr([], id, observationsByAreas),
|
|
43
|
+
R.head
|
|
44
|
+
)(areaGeometry);
|
|
45
|
+
const areaValueIndex = R.propOr(null, 'areaValueIndex', areaObservation);
|
|
46
|
+
const areaValue = R.pathOr(null, ['values', areaValueIndex], refAreaDimension);
|
|
43
47
|
return {
|
|
44
48
|
...areaGeometry,
|
|
45
49
|
properties: {
|
|
46
|
-
...
|
|
50
|
+
...R.propOr({}, 'properties', areaGeometry),
|
|
47
51
|
label: dimensionValueDisplay(display)(areaValue),
|
|
48
|
-
value: head(
|
|
49
|
-
category: categoryDisplay(
|
|
52
|
+
value: R.head(R.propOr([], 'value', areaObservation)),
|
|
53
|
+
category: categoryDisplay(
|
|
54
|
+
R.propOr([], 'splitedKey', areaObservation),
|
|
55
|
+
dimensions,
|
|
56
|
+
dimensionsWithValuesIndexedById,
|
|
57
|
+
refAreaDimension.id,
|
|
58
|
+
display
|
|
59
|
+
),
|
|
50
60
|
}
|
|
51
61
|
};
|
|
52
|
-
}
|
|
62
|
+
},
|
|
63
|
+
topoAreas.geometries,
|
|
53
64
|
);
|
|
54
65
|
return ({
|
|
55
66
|
objects: {
|
|
@@ -64,5 +75,5 @@ var __choroSeries = ({ observations, dimensions }, dimensionsWithValuesIndexedBy
|
|
|
64
75
|
});
|
|
65
76
|
};
|
|
66
77
|
|
|
67
|
-
export {
|
|
78
|
+
export { choroSeries as default };
|
|
68
79
|
//# sourceMappingURL=choro-series.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"choro-series.js","sources":["../../../../src/rules/src/factories/choro-series.js"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"choro-series.js","sources":["../../../../src/rules/src/factories/choro-series.js"],"sourcesContent":["import * as R from 'ramda';\nimport { getRefAreaDimension } from '@sis-cc/dotstatsuite-sdmxjs';\nimport { categoryDisplay, dimensionValueDisplay } from '../dimension-utils';\n\nconst parseByAreas = (observations, refAreaDimension) => {\n if (R.isNil(refAreaDimension)) {\n return null;\n }\n const { __index, values=[] } = refAreaDimension;\n\n return R.pipe(\n R.keys,\n R.reduce((acc, key) => {\n const value = observations[key];\n const splitedKey = R.split(':', key);\n const areaValueIndex = Number(R.nth(__index, splitedKey));\n const areaValue = isNaN(areaValueIndex)\n ? null : R.nth(areaValueIndex, values);\n const areaId = R.prop('id', areaValue || {});\n return R.over(\n R.lensProp(areaId),\n vals => R.append({ splitedKey, value, areaValueIndex }, vals || []),\n acc\n ); \n }, {})\n )(observations);\n};\n\nexport default ({ observations, dimensions }, dimensionsWithValuesIndexedById, topoMap, display) => {\n const refAreaDimension = getRefAreaDimension({ dimensions });\n const observationsByAreas = parseByAreas(observations, refAreaDimension);\n const topology = R.propOr({}, 'topology', topoMap);\n const areaSelection = R.propOr(null, 'areaSelection', topoMap);\n const topoAreas = R.pathOr(null, ['objects', areaSelection], topology);\n if (!observationsByAreas || !topoAreas) {\n return null;\n }\n const topoAreasWithData = R.map(\n (areaGeometry) => {\n const areaObservation = R.pipe(\n R.pathOr(null, ['properties', 'id']),\n id => R.propOr([], id, observationsByAreas),\n R.head\n )(areaGeometry);\n const areaValueIndex = R.propOr(null, 'areaValueIndex', areaObservation);\n const areaValue = R.pathOr(null, ['values', areaValueIndex], refAreaDimension);\n return {\n ...areaGeometry,\n properties: {\n ...R.propOr({}, 'properties', areaGeometry),\n label: dimensionValueDisplay(display)(areaValue),\n value: R.head(R.propOr([], 'value', areaObservation)),\n category: categoryDisplay(\n R.propOr([], 'splitedKey', areaObservation),\n dimensions,\n dimensionsWithValuesIndexedById,\n refAreaDimension.id,\n display\n ),\n }\n };\n },\n topoAreas.geometries,\n );\n return ({\n objects: {\n areas: {\n type: topoAreas.type,\n geometries: topoAreasWithData\n }\n },\n arcs: topology.arcs,\n bbox: topology.bbox,\n transform: topology.transform\n });\n}\n"],"names":[],"mappings":";;;;AAIA,MAAM,YAAY,GAAG,CAAC,YAAY,EAAE,gBAAgB,KAAK;AACzD,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE;AACjC,IAAI,OAAO,IAAI;AACf,EAAE;AACF,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,GAAG,gBAAgB;;AAEjD,EAAE,OAAO,CAAC,CAAC,IAAI;AACf,IAAI,CAAC,CAAC,IAAI;AACV,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK;AAC3B,MAAM,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC;AACrC,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC;AAC1C,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;AAC/D,MAAM,MAAM,SAAS,GAAG,KAAK,CAAC,cAAc;AAC5C,UAAU,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,cAAc,EAAE,MAAM,CAAC;AAC9C,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,IAAI,EAAE,CAAC;AAClD,MAAM,OAAO,CAAC,CAAC,IAAI;AACnB,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;AAC1B,QAAQ,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC;AAC3E,QAAQ;AACR,OAAO,CAAC;AACR,IAAI,CAAC,EAAE,EAAE;AACT,GAAG,CAAC,YAAY,CAAC;AACjB,CAAC;;AAED,kBAAe,CAAC,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,+BAA+B,EAAE,OAAO,EAAE,OAAO,KAAK;AACpG,EAAE,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,EAAE,UAAU,EAAE,CAAC;AAC9D,EAAE,MAAM,mBAAmB,GAAG,YAAY,CAAC,YAAY,EAAE,gBAAgB,CAAC;AAC1E,EAAE,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC;AACpD,EAAE,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,EAAE,OAAO,CAAC;AAChE,EAAE,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,SAAS,EAAE,aAAa,CAAC,EAAE,QAAQ,CAAC;AACxE,EAAE,IAAI,CAAC,mBAAmB,IAAI,CAAC,SAAS,EAAE;AAC1C,IAAI,OAAO,IAAI;AACf,EAAE;AACF,EAAE,MAAM,iBAAiB,GAAG,CAAC,CAAC,GAAG;AACjC,IAAI,CAAC,YAAY,KAAK;AACtB,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI;AACpC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;AAC5C,QAAQ,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,mBAAmB,CAAC;AACnD,QAAQ,CAAC,CAAC;AACV,OAAO,CAAC,YAAY,CAAC;AACrB,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,eAAe,CAAC;AAC9E,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,cAAc,CAAC,EAAE,gBAAgB,CAAC;AACpF,MAAM,OAAO;AACb,QAAQ,GAAG,YAAY;AACvB,QAAQ,UAAU,EAAE;AACpB,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,EAAE,YAAY,CAAC;AACrD,UAAU,KAAK,EAAE,qBAAqB,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC;AAC1D,UAAU,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;AAC/D,UAAU,QAAQ,EAAE,eAAe;AACnC,YAAY,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,EAAE,eAAe,CAAC;AACvD,YAAY,UAAU;AACtB,YAAY,+BAA+B;AAC3C,YAAY,gBAAgB,CAAC,EAAE;AAC/B,YAAY;AACZ,WAAW;AACX;AACA,OAAO;AACP,IAAI,CAAC;AACL,IAAI,SAAS,CAAC,UAAU;AACxB,GAAG;AACH,EAAE,QAAQ;AACV,IAAI,OAAO,EAAE;AACb,MAAM,KAAK,EAAE;AACb,QAAQ,IAAI,EAAE,SAAS,CAAC,IAAI;AAC5B,QAAQ,UAAU,EAAE;AACpB;AACA,KAAK;AACL,IAAI,IAAI,EAAE,QAAQ,CAAC,IAAI;AACvB,IAAI,IAAI,EAAE,QAAQ,CAAC,IAAI;AACvB,IAAI,SAAS,EAAE,QAAQ,CAAC;AACxB,GAAG;AACH;;;;"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import focus from './sample-focus.js';
|
|
2
|
+
import focus$2 from './scatter-focus.js';
|
|
3
|
+
import focus$1 from './timeline-focus.js';
|
|
4
|
+
|
|
5
|
+
var getFocusedSeries = ({ type, series, focusOptions }) => {
|
|
6
|
+
switch(type) {
|
|
7
|
+
case 'ScatterChart':
|
|
8
|
+
return focus$2(series, focusOptions);
|
|
9
|
+
case 'TimelineChart':
|
|
10
|
+
return focus$1(series, focusOptions);
|
|
11
|
+
case 'BarChart': case 'RowChart': case 'StackedBarChart':
|
|
12
|
+
case 'StackedRowChart': case 'HorizontalSymbolChart': case 'VerticalSymbolChart':
|
|
13
|
+
return focus(series, focusOptions);
|
|
14
|
+
default:
|
|
15
|
+
return series;
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
export { getFocusedSeries as default };
|
|
20
|
+
//# sourceMappingURL=focus.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"focus.js","sources":["../../../../src/rules/src/factories/focus.js"],"sourcesContent":["import sampleFocus from './sample-focus';\nimport scatterFocus from './scatter-focus';\nimport timelineFocus from './timeline-focus';\n\nexport default ({ type, series, focusOptions }) => {\n switch(type) {\n case 'ScatterChart':\n return scatterFocus(series, focusOptions);\n case 'TimelineChart':\n return timelineFocus(series, focusOptions);\n case 'BarChart': case 'RowChart': case 'StackedBarChart':\n case 'StackedRowChart': case 'HorizontalSymbolChart': case 'VerticalSymbolChart':\n return sampleFocus(series, focusOptions);\n default:\n return series;\n }\n};"],"names":["scatterFocus","timelineFocus","sampleFocus"],"mappings":";;;;AAIA,uBAAe,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK;AACnD,EAAE,OAAO,IAAI;AACb,IAAI,KAAK,cAAc;AACvB,MAAM,OAAOA,OAAY,CAAC,MAAM,EAAE,YAAY,CAAC;AAC/C,IAAI,KAAK,eAAe;AACxB,MAAM,OAAOC,OAAa,CAAC,MAAM,EAAE,YAAY,CAAC;AAChD,IAAI,KAAK,UAAU,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,KAAK,iBAAiB;AAC5D,IAAI,KAAK,iBAAiB,CAAC,CAAC,KAAK,uBAAuB,CAAC,CAAC,KAAK,qBAAqB;AACpF,MAAM,OAAOC,KAAW,CAAC,MAAM,EAAE,YAAY,CAAC;AAC9C,IAAI;AACJ,MAAM,OAAO,MAAM;AACnB;AACA,CAAC;;;;"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import getFocusedSeries from './focus.js';
|
|
2
|
+
import getSeries from './series.js';
|
|
3
|
+
|
|
4
|
+
const getChartSeries = ({ type, data, options, singularity, focusOptions }) => {
|
|
5
|
+
const chartSeries = getSeries({ type, data, options, singularity });
|
|
6
|
+
const focusedSeries = getFocusedSeries({ type, series: chartSeries, focusOptions });
|
|
7
|
+
return focusedSeries;
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
export { getChartSeries };
|
|
11
|
+
//# sourceMappingURL=getChartSeries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getChartSeries.js","sources":["../../../../src/rules/src/factories/getChartSeries.js"],"sourcesContent":["import getFocusedSeries from './focus';\nimport getSeries from './series';\n\nexport const getChartSeries = ({ type, data, options, singularity, focusOptions }) => {\n const chartSeries = getSeries({ type, data, options, singularity });\n const focusedSeries = getFocusedSeries({ type, series: chartSeries, focusOptions });\n return focusedSeries;\n};\n"],"names":[],"mappings":";;;AAGY,MAAC,cAAc,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,KAAK;AACtF,EAAE,MAAM,WAAW,GAAG,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;AACrE,EAAE,MAAM,aAAa,GAAG,gBAAgB,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC;AACrF,EAAE,OAAO,aAAa;AACtB;;;;"}
|
|
@@ -1,24 +1,20 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as R from 'ramda';
|
|
2
2
|
|
|
3
3
|
function focus(series, focusSelections) {
|
|
4
|
-
const
|
|
5
|
-
|
|
4
|
+
const { highlight = [], baseline = [] } = focusSelections || {};
|
|
5
|
+
if (R.isEmpty(highlight) && R.isEmpty(baseline)) {
|
|
6
|
+
return series;
|
|
7
|
+
}
|
|
6
8
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
return _datapoint;
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
return [{ ...serie, datapoints: _datapoints }];
|
|
9
|
+
return R.over(
|
|
10
|
+
R.lensPath([0, 'datapoints']),
|
|
11
|
+
R.map(dp => ({
|
|
12
|
+
...dp,
|
|
13
|
+
highlightIndex: R.findIndex(R.propEq(dp.key, 'value'), highlight),
|
|
14
|
+
baselineIndex: R.path([0, 'value'], baseline) === dp.key ? 0 : -1
|
|
15
|
+
})),
|
|
16
|
+
series || []
|
|
17
|
+
);
|
|
22
18
|
}
|
|
23
19
|
|
|
24
20
|
export { focus as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sample-focus.js","sources":["../../../../src/rules/src/factories/sample-focus.js"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"sample-focus.js","sources":["../../../../src/rules/src/factories/sample-focus.js"],"sourcesContent":["import * as R from 'ramda';\n\nexport default function focus(series, focusSelections) {\n const { highlight = [], baseline = [] } = focusSelections || {};\n if (R.isEmpty(highlight) && R.isEmpty(baseline)) {\n return series;\n }\n\n return R.over(\n R.lensPath([0, 'datapoints']),\n R.map(dp => ({\n ...dp,\n highlightIndex: R.findIndex(R.propEq(dp.key, 'value'), highlight),\n baselineIndex: R.path([0, 'value'], baseline) === dp.key ? 0 : -1\n })),\n series || []\n );\n}\n"],"names":[],"mappings":";;AAEe,SAAS,KAAK,CAAC,MAAM,EAAE,eAAe,EAAE;AACvD,EAAE,MAAM,EAAE,SAAS,GAAG,EAAE,EAAE,QAAQ,GAAG,EAAE,EAAE,GAAG,eAAe,IAAI,EAAE;AACjE,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;AACnD,IAAI,OAAO,MAAM;AACjB,EAAE;;AAEF,EAAE,OAAO,CAAC,CAAC,IAAI;AACf,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;AACjC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK;AACjB,MAAM,GAAG,EAAE;AACX,MAAM,cAAc,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC;AACvE,MAAM,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG;AACrE,KAAK,CAAC,CAAC;AACP,IAAI,MAAM,IAAI;AACd,GAAG;AACH;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as R from 'ramda';
|
|
2
2
|
import { categoryDisplay } from '../dimension-utils.js';
|
|
3
3
|
import { getFormatedObservation } from '../observation-formater.js';
|
|
4
4
|
|
|
@@ -8,25 +8,25 @@ const getDatapoints = (
|
|
|
8
8
|
const [categoryKey, valueKey] = keys;
|
|
9
9
|
const sortFunc = dp => dp[valueKey] * sortDirection;
|
|
10
10
|
|
|
11
|
-
return
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
(
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
11
|
+
return R.pipe(
|
|
12
|
+
R.keys,
|
|
13
|
+
R.map((observationKey) => {
|
|
14
|
+
const observationValue = R.prop(observationKey, observations);
|
|
15
|
+
const value = R.head(observationValue);
|
|
16
|
+
const splitKey = R.split(':', observationKey);
|
|
17
|
+
const category = categoryDisplay(splitKey, dimensions, dimensionsWithValuesIndexedById, null, display);
|
|
18
|
+
const categoryIds = categoryDisplay(splitKey, dimensions, dimensionsWithValuesIndexedById, null, 'code');
|
|
19
|
+
const formatedValue = getFormatedObservation(observationValue, formaterAttrs);
|
|
19
20
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
return { value, category, [valueKey]: value, [categoryKey]: category, key, formatedValue };
|
|
21
|
+
let key = categoryIds;
|
|
22
|
+
if (R.isNil(key) || R.isEmpty(key)) {
|
|
23
|
+
key = 'uniq-dp';
|
|
26
24
|
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
25
|
+
|
|
26
|
+
return { value, category, [valueKey]: value, [categoryKey]: category, key, formatedValue };
|
|
27
|
+
}),
|
|
28
|
+
R.sortBy(sortFunc)
|
|
29
|
+
)(observations);
|
|
30
30
|
};
|
|
31
31
|
|
|
32
32
|
const series = (
|
|
@@ -39,7 +39,7 @@ const series = (
|
|
|
39
39
|
}]
|
|
40
40
|
};
|
|
41
41
|
|
|
42
|
-
var
|
|
42
|
+
var sampleSeries = (chartType, { observations, dimensions }, dimensionsWithValuesIndexedById, display, formaterAttrs) => {
|
|
43
43
|
switch(chartType) {
|
|
44
44
|
case 'BarChart':
|
|
45
45
|
return series(['x', 'y'], observations, dimensions, dimensionsWithValuesIndexedById, 1, display, formaterAttrs);
|
|
@@ -50,5 +50,5 @@ var __sampleSeries = (chartType, { observations, dimensions }, dimensionsWithVal
|
|
|
50
50
|
}
|
|
51
51
|
};
|
|
52
52
|
|
|
53
|
-
export {
|
|
53
|
+
export { sampleSeries as default };
|
|
54
54
|
//# sourceMappingURL=sample-series.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sample-series.js","sources":["../../../../src/rules/src/factories/sample-series.js"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"sample-series.js","sources":["../../../../src/rules/src/factories/sample-series.js"],"sourcesContent":["import * as R from 'ramda';\nimport { categoryDisplay } from '../dimension-utils';\nimport { getFormatedObservation } from '../observation-formater';\n\nconst getDatapoints = (\n keys, observations, dimensions, dimensionsWithValuesIndexedById, sortDirection, display, formaterAttrs\n) => {\n const [categoryKey, valueKey] = keys;\n const sortFunc = dp => dp[valueKey] * sortDirection;\n\n return R.pipe(\n R.keys,\n R.map((observationKey) => {\n const observationValue = R.prop(observationKey, observations);\n const value = R.head(observationValue);\n const splitKey = R.split(':', observationKey);\n const category = categoryDisplay(splitKey, dimensions, dimensionsWithValuesIndexedById, null, display);\n const categoryIds = categoryDisplay(splitKey, dimensions, dimensionsWithValuesIndexedById, null, 'code');\n const formatedValue = getFormatedObservation(observationValue, formaterAttrs);\n\n let key = categoryIds;\n if (R.isNil(key) || R.isEmpty(key)) {\n key = 'uniq-dp';\n }\n\n return { value, category, [valueKey]: value, [categoryKey]: category, key, formatedValue };\n }),\n R.sortBy(sortFunc)\n )(observations);\n};\n\nconst series = (\n keys, observations, dimensions, dimensionsWithValuesIndexedById, sortDirection, display, formaterAttrs\n) => {\n return [{\n datapoints: getDatapoints(\n keys, observations, dimensions, dimensionsWithValuesIndexedById, sortDirection, display, formaterAttrs\n )\n }]\n};\n\nexport default (chartType, { observations, dimensions }, dimensionsWithValuesIndexedById, display, formaterAttrs) => {\n switch(chartType) {\n case 'BarChart':\n return series(['x', 'y'], observations, dimensions, dimensionsWithValuesIndexedById, 1, display, formaterAttrs);\n case 'RowChart':\n return series(['y', 'x'], observations, dimensions, dimensionsWithValuesIndexedById, -1, display, formaterAttrs);\n default:\n return [];\n }\n};\n"],"names":[],"mappings":";;;;AAIA,MAAM,aAAa,GAAG;AACtB,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,+BAA+B,EAAE,aAAa,EAAE,OAAO,EAAE;AAC3F,KAAK;AACL,EAAE,MAAM,CAAC,WAAW,EAAE,QAAQ,CAAC,GAAG,IAAI;AACtC,EAAE,MAAM,QAAQ,IAAI,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,GAAG,aAAa;;AAEtD,EAAE,OAAO,CAAC,CAAC,IAAI;AACf,IAAI,CAAC,CAAC,IAAI;AACV,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,cAAc,KAAK;AAC9B,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC;AACnE,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;AAC5C,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC;AACnD,MAAM,MAAM,QAAQ,GAAG,eAAe,CAAC,QAAQ,EAAE,UAAU,EAAE,+BAA+B,EAAE,IAAI,EAAE,OAAO,CAAC;AAC5G,MAAM,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,EAAE,UAAU,EAAE,+BAA+B,EAAE,IAAI,EAAE,MAAM,CAAC;AAC9G,MAAM,MAAM,aAAa,GAAG,sBAAsB,CAAC,gBAAgB,EAAE,aAAa,CAAC;;AAEnF,MAAM,IAAI,GAAG,GAAG,WAAW;AAC3B,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;AAC1C,QAAQ,GAAG,GAAG,SAAS;AACvB,MAAM;;AAEN,MAAM,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,QAAQ,GAAG,KAAK,EAAE,CAAC,WAAW,GAAG,QAAQ,EAAE,GAAG,EAAE,aAAa,EAAE;AAChG,IAAI,CAAC,CAAC;AACN,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ;AACrB,GAAG,CAAC,YAAY,CAAC;AACjB,CAAC;;AAED,MAAM,MAAM,GAAG;AACf,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,+BAA+B,EAAE,aAAa,EAAE,OAAO,EAAE;AAC3F,KAAK;AACL,EAAE,OAAO,CAAC;AACV,IAAI,UAAU,EAAE,aAAa;AAC7B,MAAM,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,+BAA+B,EAAE,aAAa,EAAE,OAAO,EAAE;AAC/F;AACA,GAAG;AACH,CAAC;;AAED,mBAAe,CAAC,SAAS,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,+BAA+B,EAAE,OAAO,EAAE,aAAa,KAAK;AACrH,EAAE,OAAO,SAAS;AAClB,IAAI,KAAK,UAAU;AACnB,MAAM,OAAO,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,YAAY,EAAE,UAAU,EAAE,+BAA+B,EAAE,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC;AACrH,IAAI,KAAK,UAAU;AACnB,MAAM,OAAO,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,YAAY,EAAE,UAAU,EAAE,+BAA+B,EAAE,EAAE,EAAE,OAAO,EAAE,aAAa,CAAC;AACtH,IAAI;AACJ,MAAM,OAAO,EAAE;AACf;AACA,CAAC;;;;"}
|