@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.
Files changed (194) hide show
  1. package/dist/bridge-d3-react/src/index.js +1 -2
  2. package/dist/bridge-d3-react/src/index.js.map +1 -1
  3. package/dist/rules/src/chart/getChartOptions.js +1 -1
  4. package/dist/rules/src/chart/getChartOptions.js.map +1 -1
  5. package/dist/rules/src/constants.js +1 -35
  6. package/dist/rules/src/constants.js.map +1 -1
  7. package/dist/rules/src/dimension-utils.js +26 -24
  8. package/dist/rules/src/dimension-utils.js.map +1 -1
  9. package/dist/rules/src/factories/choro-series.js +43 -32
  10. package/dist/rules/src/factories/choro-series.js.map +1 -1
  11. package/dist/rules/src/factories/focus.js +20 -0
  12. package/dist/rules/src/factories/focus.js.map +1 -0
  13. package/dist/rules/src/factories/getChartSeries.js +11 -0
  14. package/dist/rules/src/factories/getChartSeries.js.map +1 -0
  15. package/dist/rules/src/factories/sample-focus.js +14 -18
  16. package/dist/rules/src/factories/sample-focus.js.map +1 -1
  17. package/dist/rules/src/factories/sample-series.js +20 -20
  18. package/dist/rules/src/factories/sample-series.js.map +1 -1
  19. package/dist/rules/src/factories/scatter-focus.js +21 -35
  20. package/dist/rules/src/factories/scatter-focus.js.map +1 -1
  21. package/dist/rules/src/factories/scatter-series.js +5 -5
  22. package/dist/rules/src/factories/scatter-series.js.map +1 -1
  23. package/dist/rules/src/factories/series.js +48 -0
  24. package/dist/rules/src/factories/series.js.map +1 -0
  25. package/dist/rules/src/factories/stacked-series.js +6 -7
  26. package/dist/rules/src/factories/stacked-series.js.map +1 -1
  27. package/dist/rules/src/factories/symbol-series.js +39 -46
  28. package/dist/rules/src/factories/symbol-series.js.map +1 -1
  29. package/dist/rules/src/factories/timeline-focus.js +10 -14
  30. package/dist/rules/src/factories/timeline-focus.js.map +1 -1
  31. package/dist/rules/src/factories/timeline-series.js +37 -41
  32. package/dist/rules/src/factories/timeline-series.js.map +1 -1
  33. package/dist/rules/src/get-values-enhanced.js +6 -0
  34. package/dist/rules/src/get-values-enhanced.js.map +1 -1
  35. package/dist/rules/src/index.js +6 -371
  36. package/dist/rules/src/index.js.map +1 -1
  37. package/dist/rules/src/layout.js +4 -2
  38. package/dist/rules/src/layout.js.map +1 -1
  39. package/dist/rules/src/observation-formater.js +8 -14
  40. package/dist/rules/src/observation-formater.js.map +1 -1
  41. package/dist/rules/src/properties/focus.js +51 -3
  42. package/dist/rules/src/properties/focus.js.map +1 -1
  43. package/dist/rules/src/properties/getHeaderProps.js +2 -53
  44. package/dist/rules/src/properties/getHeaderProps.js.map +1 -1
  45. package/dist/rules/src/properties/index.js +3 -94
  46. package/dist/rules/src/properties/index.js.map +1 -1
  47. package/dist/rules/src/properties/linear.js +4 -4
  48. package/dist/rules/src/properties/linear.js.map +1 -1
  49. package/dist/rules/src/properties/scatter.js +4 -4
  50. package/dist/rules/src/properties/scatter.js.map +1 -1
  51. package/dist/rules/src/properties/stacked.js +5 -7
  52. package/dist/rules/src/properties/stacked.js.map +1 -1
  53. package/dist/rules/src/properties/symbol.js.map +1 -1
  54. package/dist/rules/src/properties/utils.js +11 -12
  55. package/dist/rules/src/properties/utils.js.map +1 -1
  56. package/dist/rules/src/sdmx-data/index.js +2 -27
  57. package/dist/rules/src/sdmx-data/index.js.map +1 -1
  58. package/dist/rules2/src/combinedValuesDisplay.js +2 -2
  59. package/dist/rules2/src/combinedValuesDisplay.js.map +1 -1
  60. package/dist/rules2/src/getAttributes.js +37 -0
  61. package/dist/rules2/src/getAttributes.js.map +1 -0
  62. package/dist/rules2/src/getDataflowTooltipAttributesIds.js +2 -2
  63. package/dist/rules2/src/getDataflowTooltipAttributesIds.js.map +1 -1
  64. package/dist/rules2/src/getHeaderCombinations.js +1 -1
  65. package/dist/rules2/src/getHeaderCombinations.js.map +1 -1
  66. package/dist/rules2/src/getHeaderSubtitle.js +1 -1
  67. package/dist/rules2/src/getHeaderSubtitle.js.map +1 -1
  68. package/dist/rules2/src/getHeaderTitle.js +1 -1
  69. package/dist/rules2/src/getHeaderTitle.js.map +1 -1
  70. package/dist/rules2/src/getMetadataCoordinates.js +1 -1
  71. package/dist/rules2/src/getMetadataCoordinates.js.map +1 -1
  72. package/dist/rules2/src/getNotDisplayedIds.js +1 -1
  73. package/dist/rules2/src/getNotDisplayedIds.js.map +1 -1
  74. package/dist/rules2/src/index.js +1 -0
  75. package/dist/rules2/src/index.js.map +1 -1
  76. package/dist/rules2/src/parseAttributes.js +2 -2
  77. package/dist/rules2/src/parseAttributes.js.map +1 -1
  78. package/dist/rules2/src/parseHierarchicalCodelist.js +1 -1
  79. package/dist/rules2/src/parseHierarchicalCodelist.js.map +1 -1
  80. package/dist/rules2/src/parseMetadataSeries.js +1 -1
  81. package/dist/rules2/src/parseMetadataSeries.js.map +1 -1
  82. package/dist/rules2/src/prepareData.js +10 -3
  83. package/dist/rules2/src/prepareData.js.map +1 -1
  84. package/dist/rules2/src/refineDimensions.js +53 -8
  85. package/dist/rules2/src/refineDimensions.js.map +1 -1
  86. package/dist/rules2/src/table/getCells.js +1 -1
  87. package/dist/rules2/src/table/getCells.js.map +1 -1
  88. package/dist/rules2/src/table/getLayout.js +1 -1
  89. package/dist/rules2/src/table/getLayout.js.map +1 -1
  90. package/dist/rules2/src/table/getTableLayoutIds.js +1 -1
  91. package/dist/rules2/src/table/getTableLayoutIds.js.map +1 -1
  92. package/dist/rules2/src/table/getTableProps.js +0 -1
  93. package/dist/rules2/src/table/getTableProps.js.map +1 -1
  94. package/dist/rules2/src/table/parseValueHierarchy.js.map +1 -1
  95. package/dist/rules2/src/table/refineLayoutSize2.js +1 -1
  96. package/dist/rules2/src/table/refineLayoutSize2.js.map +1 -1
  97. package/dist/rules2/src/utils.js.map +1 -1
  98. package/dist/viewer/src/chart.js +13 -2
  99. package/dist/viewer/src/chart.js.map +1 -1
  100. package/dist/viewer/src/legends/FocusLegend.js +1 -1
  101. package/dist/viewer/src/legends/FocusLegend.js.map +1 -1
  102. package/package.json +6 -5
  103. package/src/bridge-d3-react/src/index.js +0 -1
  104. package/src/rules/src/chart/getChartOptions.js +2 -2
  105. package/src/rules/src/constants.js +0 -35
  106. package/src/rules/src/dimension-utils.js +25 -23
  107. package/src/rules/src/factories/choro-series.js +41 -30
  108. package/src/rules/src/factories/focus.js +17 -0
  109. package/src/rules/src/factories/getChartSeries.js +8 -0
  110. package/src/rules/src/factories/sample-focus.js +14 -18
  111. package/src/rules/src/factories/sample-series.js +20 -20
  112. package/src/rules/src/factories/scatter-focus.js +22 -36
  113. package/src/rules/src/factories/scatter-series.js +8 -8
  114. package/src/rules/src/factories/series.js +45 -0
  115. package/src/rules/src/factories/stacked-series.js +4 -5
  116. package/src/rules/src/factories/symbol-series.js +37 -44
  117. package/src/rules/src/factories/timeline-focus.js +10 -14
  118. package/src/rules/src/factories/timeline-series.js +35 -39
  119. package/src/rules/src/get-values-enhanced.js +6 -0
  120. package/src/rules/src/index.js +7 -384
  121. package/src/rules/src/layout.js +4 -2
  122. package/src/rules/src/observation-formater.js +14 -20
  123. package/src/rules/src/properties/focus.js +50 -2
  124. package/src/rules/src/properties/getHeaderProps.js +1 -53
  125. package/src/rules/src/properties/index.js +2 -93
  126. package/src/rules/src/properties/linear.js +2 -2
  127. package/src/rules/src/properties/scatter.js +4 -4
  128. package/src/rules/src/properties/stacked.js +4 -6
  129. package/src/rules/src/properties/symbol.js +0 -1
  130. package/src/rules/src/properties/utils.js +11 -22
  131. package/src/rules/src/sdmx-data/index.js +2 -31
  132. package/src/rules2/src/combinedValuesDisplay.js +2 -2
  133. package/src/rules2/src/getAttributes.js +34 -0
  134. package/src/rules2/src/getDataflowTooltipAttributesIds.js +2 -2
  135. package/src/rules2/src/getHeaderCombinations.js +1 -1
  136. package/src/rules2/src/getHeaderSubtitle.js +2 -2
  137. package/src/rules2/src/getHeaderTitle.js +1 -1
  138. package/src/rules2/src/getMetadataCoordinates.js +1 -1
  139. package/src/rules2/src/getNotDisplayedIds.js +1 -1
  140. package/src/rules2/src/index.js +1 -0
  141. package/src/rules2/src/parseAttributes.js +2 -2
  142. package/src/rules2/src/parseHierarchicalCodelist.js +1 -1
  143. package/src/rules2/src/parseMetadataSeries.js +1 -1
  144. package/src/rules2/src/prepareData.js +10 -3
  145. package/src/rules2/src/refineDimensions.js +53 -8
  146. package/src/rules2/src/table/getCells.js +2 -2
  147. package/src/rules2/src/table/getLayout.js +2 -2
  148. package/src/rules2/src/table/getTableLayoutIds.js +9 -9
  149. package/src/rules2/src/table/getTableProps.js +0 -1
  150. package/src/rules2/src/table/parseValueHierarchy.js +0 -7
  151. package/src/rules2/src/table/refineLayoutSize2.js +5 -5
  152. package/src/rules2/src/utils.js +0 -11
  153. package/src/viewer/src/app/leg.js +0 -1
  154. package/src/viewer/src/chart.jsx +23 -1
  155. package/src/viewer/src/legends/FocusLegend.jsx +1 -1
  156. package/dist/rules/src/factories/scatter-dimension.js +0 -35
  157. package/dist/rules/src/factories/scatter-dimension.js.map +0 -1
  158. package/dist/rules/src/factories/stacked-dimension.js +0 -32
  159. package/dist/rules/src/factories/stacked-dimension.js.map +0 -1
  160. package/dist/rules/src/factories/symbol-dimension.js +0 -32
  161. package/dist/rules/src/factories/symbol-dimension.js.map +0 -1
  162. package/dist/rules/src/header/getDefaultSubtitle.js +0 -44
  163. package/dist/rules/src/header/getDefaultSubtitle.js.map +0 -1
  164. package/dist/rules/src/header/getHeaderUnits.js +0 -21
  165. package/dist/rules/src/header/getHeaderUnits.js.map +0 -1
  166. package/dist/rules/src/header/getSubtitleFlags.js +0 -47
  167. package/dist/rules/src/header/getSubtitleFlags.js.map +0 -1
  168. package/dist/rules/src/header/getTitleFlags.js +0 -12
  169. package/dist/rules/src/header/getTitleFlags.js.map +0 -1
  170. package/dist/rules/src/properties/errors.js +0 -22
  171. package/dist/rules/src/properties/errors.js.map +0 -1
  172. package/dist/rules/src/properties/getInformationsStateFromNewProps.js +0 -50
  173. package/dist/rules/src/properties/getInformationsStateFromNewProps.js.map +0 -1
  174. package/dist/rules/src/v8-transformer.js +0 -174
  175. package/dist/rules/src/v8-transformer.js.map +0 -1
  176. package/src/bridge-d3-react/src/app.js +0 -64
  177. package/src/bridge-d3-react/src/mock-choro.js +0 -394
  178. package/src/rules/src/factories/scatter-dimension.js +0 -32
  179. package/src/rules/src/factories/stacked-dimension.js +0 -29
  180. package/src/rules/src/factories/symbol-dimension.js +0 -29
  181. package/src/rules/src/header/getDefaultSubtitle.js +0 -40
  182. package/src/rules/src/header/getHeaderUnits.js +0 -17
  183. package/src/rules/src/header/getSubtitleFlags.js +0 -43
  184. package/src/rules/src/header/getTitleFlags.js +0 -8
  185. package/src/rules/src/header/index.js +0 -4
  186. package/src/rules/src/preparators/enhanceObservations.js +0 -152
  187. package/src/rules/src/properties/errors.js +0 -19
  188. package/src/rules/src/properties/getInformationsStateFromNewProps.js +0 -47
  189. package/src/rules/src/properties/information.js +0 -84
  190. package/src/rules/src/v8-transformer.js +0 -177
  191. package/src/rules2/src/getAdvAttrSeriesAtCoordinates.js +0 -29
  192. package/src/rules2/src/getMetadataStructureFromData.js +0 -17
  193. package/src/rules2/src/refineMetadataCoordinates.js +0 -28
  194. package/src/rules2/src/table/getCombinationDimensionsData.js +0 -39
@@ -1,5 +1,5 @@
1
1
  import * as R from 'ramda';
2
- import { getObservations } from '../../rules/src';
2
+ import { getObservations } from '../../rules/src/preparators/getObservations';
3
3
  import { refineDimensions } from './refineDimensions';
4
4
  import { enhanceObservations } from './enhanceObservations';
5
5
  import { parseAttributes } from './parseAttributes';
@@ -18,12 +18,19 @@ import { getHeaderSubtitle } from './getHeaderSubtitle';
18
18
  import { getHeaderCombinations } from './getHeaderCombinations';
19
19
  import { getHeaderCoordinates } from './getHeaderCoordinates';
20
20
  import { applyHierarchicalCodesToDim } from './applyHierarchicalCodesToDim';
21
+ import { getReportingYearStart } from '../../rules/src/preparators/getReportingYearStart';
22
+ import { getNotDisplayedIds } from './getNotDisplayedIds';
23
+ import { getAttributes } from './getAttributes';
21
24
 
22
25
  export const prepareData = (sdmxJson, { customAttributes, locale, hierarchies, dataflow, display, defaultCombinations, dataquery }) => {
23
26
  const dimensions = R.pathOr([], ['data', 'structure', 'dimensions', 'observation'], sdmxJson);
24
- const refinedDimensions = refineDimensions(dimensions, dataquery);
25
- const attributes = R.pathOr([], ['data', 'structure', 'attributes', 'observation'], sdmxJson);
26
27
  const annotations = R.pathOr([], ['data', 'structure', 'annotations'], sdmxJson);
28
+ const reportYearStart = getReportingYearStart(sdmxJson);
29
+ const { hiddenValues, hiddenCombinations } = getNotDisplayedIds(annotations);
30
+ const options = { dataquery, hiddenCombinations, hiddenValues, locale, reportYearStart };
31
+ const refinedDimensions = refineDimensions({ annotations, dimensions, options });
32
+ const _attributes = R.pathOr([], ['data', 'structure', 'attributes'], sdmxJson);
33
+ const attributes = getAttributes({ attributes: _attributes, annotations, options });
27
34
  const observations = getObservations(sdmxJson);
28
35
  let combinations = getCombinationDefinitions(annotations, locale);
29
36
  if (R.isEmpty(combinations) && !R.isEmpty(defaultCombinations)) {
@@ -1,18 +1,63 @@
1
1
  import * as R from 'ramda';
2
+ import { isTimePeriodDimension } from '@sis-cc/dotstatsuite-sdmxjs';
3
+ import { getValuesEnhanced } from '../../rules/src/get-values-enhanced';
4
+ import { getIsHidden } from '../../rules/src/sdmx-data';
2
5
 
3
- export const refineDimensions = (dimensions=[], dataquery='') => {
6
+ const TIME_PERIOD_ID = 'TIME_PERIOD';
7
+
8
+ export const refineDimensions = ({
9
+ annotations = [],
10
+ dimensions = [],
11
+ options = {},
12
+ }) => {
13
+ const {
14
+ dataquery = '',
15
+ hiddenCombinations = {},
16
+ hiddenValues = {},
17
+ locale = '',
18
+ reportYearStart,
19
+ ...restOptions
20
+ } = options;
4
21
  const selectionIds = R.pipe(R.split('.'), R.map(R.split('+')))(dataquery);
5
22
 
23
+ const getIsAllDimHidden = ({ id, values }) => {
24
+ if (!R.has(id, hiddenCombinations)) {
25
+ return false;
26
+ }
27
+ const valuesIds = R.pluck('id', values);
28
+ return R.isEmpty(R.difference(valuesIds, hiddenCombinations[id]));
29
+ }
30
+
6
31
  return R.addIndex(R.map)((dim, index) => {
7
32
  const selection = R.nth(index, selectionIds);
8
- const values = R.map(val => {
9
- if (R.includes(val.id, selection || []) || R.isNil(selection) || R.length(selection) === 0 || R.isEmpty(R.head(selection))) {
10
- return R.assoc('isSelected', true, val);
11
- }
12
- return R.assoc('empty', true, val);
13
- }, dim.values || []);
33
+ const isEmptySelection = R.isNil(selection) || R.isEmpty(selection) || R.isEmpty(R.head(selection));
34
+ const isTimeDimension = isTimePeriodDimension(dim);
35
+ const dimAnnotations = R.props(dim.annotations || [], annotations);
36
+ const values = getValuesEnhanced({
37
+ annotations,
38
+ hiddenIds: hiddenValues,
39
+ isTimeDimension,
40
+ locale,
41
+ options: restOptions,
42
+ parent: dim.id,
43
+ reportYearStart,
44
+ selection
45
+ })(dim.values || []);
14
46
 
15
47
  const size = R.length(values);
16
- return { ...dim, values, header: size === 1 || (size > 1 && R.length(selection) === 1 && !R.isEmpty(R.head(selection))) };
48
+ const isAllDimHidden = getIsAllDimHidden({ id: dim.id, values });
49
+ const isHidden = isAllDimHidden || R.has(dim.id, hiddenValues)
50
+ || getIsHidden(dimAnnotations);
51
+ return ({
52
+ ...dim,
53
+ display: !isHidden,
54
+ header: size === 1 || (size > 1 && R.length(selection) === 1 && !isEmptySelection),
55
+ __index: index,
56
+ rejected: isAllDimHidden || !size,
57
+ role: isTimeDimension
58
+ ? TIME_PERIOD_ID
59
+ : R.head(dim.roles || []),
60
+ values,
61
+ });
17
62
  }, dimensions);
18
63
  };
@@ -2,7 +2,7 @@ import * as R from 'ramda';
2
2
  import { getFlagsAndNotes } from './getFlagsAndNotes';
3
3
  import { hasCellMetadata } from '../hasCellMetadata';
4
4
 
5
- export const getCellRelevantAttributes = (attributes, attributesSeries, cellAttributeIds) => R.filter(
5
+ const getCellRelevantAttributes = (attributes, attributesSeries, cellAttributeIds) => R.filter(
6
6
  (attr) => {
7
7
  if (R.isNil(attr.value)) {
8
8
  return false;
@@ -16,7 +16,7 @@ export const getCellRelevantAttributes = (attributes, attributesSeries, cellAttr
16
16
  attributes
17
17
  );
18
18
 
19
- export const getCellCombinedSeries = (attributes, combinations) => R.reduce(
19
+ const getCellCombinedSeries = (attributes, combinations) => R.reduce(
20
20
  (acc, comb) => {
21
21
  const values = R.reduce(
22
22
  (acc, concept) => {
@@ -1,7 +1,7 @@
1
1
  import * as R from 'ramda';
2
2
  import { isTimePeriodDimension } from '@sis-cc/dotstatsuite-sdmxjs';
3
3
 
4
- export const getConceptsSet = (ids, indexedCombinations, _upper) => {
4
+ const getConceptsSet = (ids, indexedCombinations, _upper) => {
5
5
  const upper = R.isNil(_upper) ? new Set([]) : _upper;
6
6
  const res = new Set([]);
7
7
  R.forEach(id => {
@@ -20,7 +20,7 @@ export const getConceptsSet = (ids, indexedCombinations, _upper) => {
20
20
  return res;
21
21
  };
22
22
 
23
- export const parseCombination = (_upperIds, _excludedIds) => (comb, indexedDimensions) => {
23
+ const parseCombination = (_upperIds, _excludedIds) => (comb, indexedDimensions) => {
24
24
  const upperIds = R.isNil(_upperIds) ? new Set([]) : _upperIds;
25
25
  const excludedIds = R.isNil(_excludedIds) ? new Set([]) : _excludedIds;
26
26
 
@@ -1,30 +1,30 @@
1
1
  import * as R from 'ramda';
2
2
  import { isTimePeriodDimension, isRefAreaDimension } from '@sis-cc/dotstatsuite-sdmxjs';
3
3
 
4
- export const getCombinationsNotInLayout = (combinations, layoutIds) => {
4
+ const getCombinationsNotInLayout = (combinations, layoutIds) => {
5
5
  const { header=[], sections=[], rows=[] } = layoutIds;
6
6
  const idsInLayout = new Set([...header, ...sections, ...rows]);
7
7
  return R.reject(comb => idsInLayout.has(comb.id), combinations);
8
8
  };
9
9
 
10
- export const indexCombsRelationships = (combinations) => R.reduce((acc, comb) => {
10
+ const indexCombsRelationships = (combinations) => R.reduce((acc, comb) => {
11
11
  const { id, relationship=[] } = comb;
12
12
  return R.assoc(id, relationship, acc);
13
13
  }, {}, combinations);
14
14
 
15
- export const getLayoutLevelRelationship = indexedRelationships => ids => R.reduce((acc, id) => {
15
+ const getLayoutLevelRelationship = indexedRelationships => ids => R.reduce((acc, id) => {
16
16
  if (R.has(id, indexedRelationships)) {
17
17
  return R.concat(acc, R.prop(id, indexedRelationships));
18
18
  }
19
19
  return R.append(id, acc);
20
20
  }, [], ids);
21
21
 
22
- export const getLayoutRelationships = (indexedRelationships, layoutIds) => R.map(
22
+ const getLayoutRelationships = (indexedRelationships, layoutIds) => R.map(
23
23
  getLayoutLevelRelationship(indexedRelationships),
24
24
  layoutIds
25
25
  );
26
26
 
27
- export const injectCombination = combination => ids => {
27
+ const injectCombination = combination => ids => {
28
28
  const { id, concepts=[] } = combination;
29
29
  const conceptsSet = new Set(concepts);
30
30
  let inject = true;
@@ -41,7 +41,7 @@ export const injectCombination = combination => ids => {
41
41
  return inject ? R.append(id, refined) : refined;
42
42
  };
43
43
 
44
- export const getCombinationLevelCompatibility = (layoutRelationships, combination) => {
44
+ const getCombinationLevelCompatibility = (layoutRelationships, combination) => {
45
45
  const { relationship=[] } = combination;
46
46
  const idsInHeaderSet = new Set(layoutRelationships.header);
47
47
  const idsInSectionsSet = new Set(layoutRelationships.sections);
@@ -132,13 +132,13 @@ export const injectCombinationsInLayout = (combinations, layoutIds, defaultLayou
132
132
  }, layoutIds, notInLayoutCombs);
133
133
  };
134
134
 
135
- export const getLayoutDimsIds = dimensions => R.reduce(
135
+ const getLayoutDimsIds = dimensions => R.reduce(
136
136
  (acc, d) => (d.header ? acc : acc.add(d.id)),
137
137
  new Set([]),
138
138
  dimensions,
139
139
  );
140
140
 
141
- export const getLayoutCombinations = (combinations, layoutDimsIds, attributes) => {
141
+ const getLayoutCombinations = (combinations, layoutDimsIds, attributes) => {
142
142
  const indexedAttributes = R.indexBy(R.prop('id'), attributes);
143
143
  return R.reduce(
144
144
  (acc, comb) => {
@@ -203,7 +203,7 @@ const extractConcepts = (ids, indexedCombinations, layoutDimsIds) => {
203
203
  return R.partition(id => set.has(id), ids);
204
204
  }
205
205
 
206
- export const injectRemainingDimensionsInLayout = (layoutIds, remainingDims, indexedCombinations, layoutDimsIds) => {
206
+ const injectRemainingDimensionsInLayout = (layoutIds, remainingDims, indexedCombinations, layoutDimsIds) => {
207
207
  let _layout = layoutIds;
208
208
  let _remaining = remainingDims;
209
209
 
@@ -72,7 +72,6 @@ export const getTableProps = ({ data, layoutIds, customAttributes, limit, isTime
72
72
  const indexedCombinations = getIndexedCombinationsByDisplay(layout, seriesCombinations);
73
73
  const cellsMetadataCoordinates = getCellsMetadataCoordinates(metadataCoordinates, oneValueDimensions, layoutDimsIds);
74
74
  const cells = getCells(customAttributes, cellsAttributesIds, indexedCombinations, attributesSeries, cellsMetadataCoordinates)(dupObs);
75
- //console.log({ cellsAttributesIds, customAttributes, indexedCombinations });
76
75
 
77
76
  return ({
78
77
  ...layoutData,
@@ -1,12 +1,5 @@
1
1
  import * as R from 'ramda';
2
2
 
3
- export const isSameValueAsPrevious = (value, previousValue) => {
4
- const valueHierarchicalPath = R.append(value.id, R.propOr([], 'parents', value));
5
- const previousValueHierarchicalPath = R.append(previousValue.id, R.propOr([], 'parents', previousValue));
6
-
7
- return R.equals(valueHierarchicalPath, previousValueHierarchicalPath);
8
- }
9
-
10
3
  export const parseValueHierarchy = (value, previousValue, indexedValues) => {
11
4
  const parentsIds = R.propOr([], 'parents', value);
12
5
  if (R.isEmpty(parentsIds)) {
@@ -45,7 +45,7 @@ const indexWithPivots = (pivots, observations) => R.pipe(
45
45
  )
46
46
  )(observations);
47
47
 
48
- export const getCuratedCells = ({ layout, observations, shape }) => {
48
+ const getCuratedCells = ({ layout, observations, shape }) => {
49
49
  const pivots = getPivots(layout, shape);
50
50
  return indexWithPivots(pivots, observations);
51
51
  };
@@ -86,7 +86,7 @@ const filterSeries = (series, getHasStillData) => {
86
86
  }, [], series);
87
87
  };
88
88
 
89
- export const refineSections = (sections, extractedKeys, curatedObs) => R.pipe(
89
+ const refineSections = (sections, extractedKeys, curatedObs) => R.pipe(
90
90
  R.map(
91
91
  (section) => {
92
92
  const sectionKey = toKey(R.propOr([], 'indexes', R.head(section)));
@@ -110,7 +110,7 @@ export const refineSections = (sections, extractedKeys, curatedObs) => R.pipe(
110
110
  )
111
111
  )(sections);
112
112
 
113
- export const refineHeader = (headers, extractedKeys, curatedObs) => {
113
+ const refineHeader = (headers, extractedKeys, curatedObs) => {
114
114
  const getHasHeaderStillData = (header) => {
115
115
  const headerKey = toKey(R.prop('indexes', header));
116
116
  return R.pipe(
@@ -138,7 +138,7 @@ const getSerieLinesCount = serie => {
138
138
  return missingParentsRowsCount + 1;
139
139
  }
140
140
 
141
- export const truncateSectionRows = (n, sectionsData) => {
141
+ const truncateSectionRows = (n, sectionsData) => {
142
142
  let truncated = sectionsData;
143
143
  let extractedKeys = {};
144
144
  let _n = n;
@@ -170,7 +170,7 @@ export const truncateSectionRows = (n, sectionsData) => {
170
170
  return ({ truncated, extractedKeys });
171
171
  };
172
172
 
173
- export const truncateHeader = (n, headerData) => {
173
+ const truncateHeader = (n, headerData) => {
174
174
  let { truncated, extractedKeys } = { truncated: headerData, extractedKeys: [] };
175
175
  let _n = n;
176
176
  while (_n > 0) {
@@ -1,16 +1,5 @@
1
1
  import * as R from 'ramda';
2
2
 
3
- export const trimedProps = (properties, obj) => R.reduce(
4
- (acc, prop) => {
5
- if (R.isNil(R.prop(prop, obj))) {
6
- return acc;
7
- }
8
- return R.append(obj[prop], acc);
9
- },
10
- [],
11
- properties,
12
- );
13
-
14
3
  export const getLayoutCoordinatesValidator = (layoutCoordinates, topCoordinates={}) => (coordinates) => {
15
4
  if (R.isEmpty(coordinates)) {
16
5
  return false;
@@ -1,5 +1,4 @@
1
1
  import React from 'react';
2
- import { map } from 'lodash';
3
2
  import * as R from 'ramda';
4
3
  import Viewer from '../';
5
4
  import gppSymbolData from '../../mocks/gpp-symbol';
@@ -1,11 +1,33 @@
1
1
  import React from 'react';
2
2
  import * as R from 'ramda';
3
3
  import { NoData } from '@sis-cc/dotstatsuite-visions';
4
- import * as charts from '../../bridge-d3-react/src';
4
+ import {
5
+ BarChart,
6
+ RowChart,
7
+ ScatterChart,
8
+ TimelineChart,
9
+ HorizontalSymbolChart,
10
+ VerticalSymbolChart,
11
+ StackedBarChart,
12
+ StackedRowChart,
13
+ ChoroplethChart,
14
+ } from '../../bridge-d3-react/src';
5
15
  import filterSeriesRegardingDimensions from './chartUtils/series';
6
16
  import AxisLegend from './legends/AxisLegend.jsx';
7
17
  import { isChartNoData } from './utils';
8
18
 
19
+ const charts = {
20
+ BarChart,
21
+ RowChart,
22
+ ScatterChart,
23
+ TimelineChart,
24
+ HorizontalSymbolChart,
25
+ VerticalSymbolChart,
26
+ StackedBarChart,
27
+ StackedRowChart,
28
+ ChoroplethChart,
29
+ };
30
+
9
31
  const Chart = ({ options, series, type, width, getAxisOptions }) => {
10
32
  const ChartClass = charts[type];
11
33
  return (
@@ -3,7 +3,7 @@ import * as R from 'ramda';
3
3
  import Legend from './Legend.jsx';
4
4
  import { SCATTER, TIMELINE } from '../../../rules/src/constants';
5
5
 
6
- export const REDUCED_THRESHOLD = 160;
6
+ const REDUCED_THRESHOLD = 160;
7
7
 
8
8
  const scatterRenderer = ({ color }) => (
9
9
  <svg width='12' height='14'>
@@ -1,35 +0,0 @@
1
- import * as R from 'ramda';
2
- import { isRefAreaDimension } from '@sis-cc/dotstatsuite-sdmxjs';
3
-
4
- var __scatterDimension = (dimensions, { id, xId, yId }) => {
5
- if (R.isEmpty(dimensions))
6
- return;
7
-
8
- let chartDimension;
9
- if (!R.isNil(id))
10
- chartDimension = R.find(R.propEq('id', id), dimensions);
11
-
12
- if (R.isNil(chartDimension)) {
13
- const _dimensions = R.reject(isRefAreaDimension, dimensions);
14
- chartDimension = R.head(R.isEmpty(_dimensions) ? dimensions : _dimensions);
15
- }
16
-
17
- const chartDimensionId = R.prop('id', chartDimension || {});
18
- const values = R.propOr([], 'values', chartDimension || {});
19
-
20
- const xValue = R.find(R.propEq('id', xId), values);
21
- const yValue = R.find(v => R.propEq('id', yId, v) && v.id !== xId, values);
22
- //if same xId & yId provided, xId is taken in account
23
- const _xId = R.isNil(xValue)
24
- ? R.pipe(R.reject(R.propEq('id', R.prop('id', yValue || {}))), R.head, R.prop('id'))(values) : xValue.id;
25
- const _yId = R.isNil(yValue) ? R.pipe(R.find(v => v.id !== _xId), R.prop('id'))(values) : yValue.id;
26
-
27
- return {
28
- id: chartDimensionId,
29
- xId: _xId,
30
- yId: _yId,
31
- };
32
- };
33
-
34
- export { __scatterDimension as default };
35
- //# sourceMappingURL=scatter-dimension.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scatter-dimension.js","sources":["../../../../src/rules/src/factories/scatter-dimension.js"],"sourcesContent":["import * as R from 'ramda';\nimport { isRefAreaDimension } from '@sis-cc/dotstatsuite-sdmxjs';\n\nexport default (dimensions, { id, xId, yId }) => {\n if (R.isEmpty(dimensions))\n return;\n\n let chartDimension;\n if (!R.isNil(id))\n chartDimension = R.find(R.propEq('id', id), dimensions);\n\n if (R.isNil(chartDimension)) {\n const _dimensions = R.reject(isRefAreaDimension, dimensions);\n chartDimension = R.head(R.isEmpty(_dimensions) ? dimensions : _dimensions);\n }\n\n const chartDimensionId = R.prop('id', chartDimension || {});\n const values = R.propOr([], 'values', chartDimension || {});\n\n const xValue = R.find(R.propEq('id', xId), values);\n const yValue = R.find(v => R.propEq('id', yId, v) && v.id !== xId, values);\n //if same xId & yId provided, xId is taken in account\n const _xId = R.isNil(xValue)\n ? R.pipe(R.reject(R.propEq('id', R.prop('id', yValue || {}))), R.head, R.prop('id'))(values) : xValue.id;\n const _yId = R.isNil(yValue) ? R.pipe(R.find(v => v.id !== _xId), R.prop('id'))(values) : yValue.id;\n\n return {\n id: chartDimensionId,\n xId: _xId,\n yId: _yId,\n };\n};\n"],"names":[],"mappings":";;;AAGA,yBAAe,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK;AACjD,EAAE,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;AAC3B,IAAI;;AAEJ,EAAE,IAAI,cAAc;AACpB,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;AAClB,IAAI,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,UAAU,CAAC;;AAE3D,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE;AAC/B,IAAI,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,kBAAkB,EAAE,UAAU,CAAC;AAChE,IAAI,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,UAAU,GAAG,WAAW,CAAC;AAC9E,EAAE;;AAEF,EAAE,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,IAAI,EAAE,CAAC;AAC7D,EAAE,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,cAAc,IAAI,EAAE,CAAC;;AAE7D,EAAE,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC;AACpD,EAAE,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,GAAG,EAAE,MAAM,CAAC;AAC5E;AACA,EAAE,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM;AAC7B,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE;AAC5G,EAAE,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE;;AAErG,EAAE,OAAO;AACT,IAAI,EAAE,EAAE,gBAAgB;AACxB,IAAI,GAAG,EAAE,IAAI;AACb,IAAI,GAAG,EAAE,IAAI;AACb,GAAG;AACH,CAAC;;;;"}
@@ -1,32 +0,0 @@
1
- import * as R from 'ramda';
2
- import { getRefAreaDimension, getTimePeriodDimension } from '@sis-cc/dotstatsuite-sdmxjs';
3
-
4
- var __stackedDimension = (dimensions, singularity) => {
5
- const { value, values } = dimensions;
6
- const mode = R.prop('mode', singularity) === 'percent' ? 'percent' : 'values';
7
- if (R.length(values) === 1) {
8
- return ({
9
- limit: R.propOr(Infinity, 'limit', singularity),
10
- mode,
11
- id: R.pathOr(null, [0, 'id'], value)
12
- });
13
- }
14
- let serieDimension = null;
15
- const id = R.prop('id', singularity);
16
- if (!R.isNil(id)) {
17
- serieDimension = R.find(R.propEq('id', id), values);
18
- }
19
- const areaDimension = getRefAreaDimension({ dimensions: values });
20
- const timeDimension = getTimePeriodDimension({ dimensions: values });
21
-
22
- serieDimension = serieDimension || areaDimension || timeDimension || R.head(values);
23
-
24
- return ({
25
- limit: R.propOr(Infinity, 'limit', singularity),
26
- mode,
27
- id: R.propOr(null, 'id', serieDimension)
28
- });
29
- };
30
-
31
- export { __stackedDimension as default };
32
- //# sourceMappingURL=stacked-dimension.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stacked-dimension.js","sources":["../../../../src/rules/src/factories/stacked-dimension.js"],"sourcesContent":["import * as R from 'ramda';\nimport { getRefAreaDimension, getTimePeriodDimension } from '@sis-cc/dotstatsuite-sdmxjs';\n\nexport default (dimensions, singularity) => {\n const { value, values } = dimensions;\n const mode = R.prop('mode', singularity) === 'percent' ? 'percent' : 'values';\n if (R.length(values) === 1) {\n return ({\n limit: R.propOr(Infinity, 'limit', singularity),\n mode,\n id: R.pathOr(null, [0, 'id'], value)\n });\n }\n let serieDimension = null;\n const id = R.prop('id', singularity);\n if (!R.isNil(id)) {\n serieDimension = R.find(R.propEq('id', id), values);\n }\n const areaDimension = getRefAreaDimension({ dimensions: values });\n const timeDimension = getTimePeriodDimension({ dimensions: values });\n\n serieDimension = serieDimension || areaDimension || timeDimension || R.head(values);\n\n return ({\n limit: R.propOr(Infinity, 'limit', singularity),\n mode,\n id: R.propOr(null, 'id', serieDimension)\n });\n}"],"names":[],"mappings":";;;AAGA,yBAAe,CAAC,UAAU,EAAE,WAAW,KAAK;AAC5C,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU;AACtC,EAAE,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,KAAK,SAAS,GAAG,SAAS,GAAG,QAAQ;AAC/E,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;AAC9B,IAAI,QAAQ;AACZ,MAAM,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,CAAC;AACrD,MAAM,IAAI;AACV,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,KAAK;AACzC,KAAK;AACL,EAAE;AACF,EAAE,IAAI,cAAc,GAAG,IAAI;AAC3B,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC;AACtC,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE;AACpB,IAAI,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC;AACvD,EAAE;AACF,EAAE,MAAM,aAAa,GAAG,mBAAmB,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AACnE,EAAE,MAAM,aAAa,GAAG,sBAAsB,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;;AAEtE,EAAE,cAAc,GAAG,cAAc,IAAI,aAAa,IAAI,aAAa,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;;AAErF,EAAE,QAAQ;AACV,IAAI,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,CAAC;AACnD,IAAI,IAAI;AACR,IAAI,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,cAAc;AAC3C,GAAG;AACH;;;;"}
@@ -1,32 +0,0 @@
1
- import { isEmpty, get, isNil, find, isUndefined, reject, head, take } from 'lodash';
2
- import { isRefAreaDimension, isTimePeriodDimension } from '@sis-cc/dotstatsuite-sdmxjs';
3
-
4
- var __symbolDimension = (dimensions, ids) => {
5
- if (isEmpty(dimensions)) return;
6
-
7
- let symbolDimension = undefined;
8
- const id = get(ids, 'id');
9
- if (!isNil(id)) symbolDimension = find(dimensions, { id });
10
-
11
- if (isUndefined(symbolDimension)) {
12
- const isAreaOrTimeDimension = d => isRefAreaDimension(d) || isTimePeriodDimension(d);
13
- const _dimensions1 = reject(dimensions, isAreaOrTimeDimension);
14
- const _dimensions2 = reject(dimensions, isRefAreaDimension);
15
- if (isEmpty(_dimensions1)) {
16
- symbolDimension = head(isEmpty(_dimensions2) ? dimensions : _dimensions2);
17
- }
18
- else {
19
- symbolDimension = head(_dimensions1);
20
- }
21
- }
22
-
23
- const symbolDimensionId = get(symbolDimension, 'id');
24
-
25
- return {
26
- id: symbolDimensionId,
27
- serie: take(symbolDimension.values, 5)
28
- };
29
- };
30
-
31
- export { __symbolDimension as default };
32
- //# sourceMappingURL=symbol-dimension.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"symbol-dimension.js","sources":["../../../../src/rules/src/factories/symbol-dimension.js"],"sourcesContent":["import { find, get, head, isEmpty, isUndefined, isNil, reject, take } from 'lodash';\nimport { isRefAreaDimension, isTimePeriodDimension } from '@sis-cc/dotstatsuite-sdmxjs';\n\nexport default (dimensions, ids) => {\n if (isEmpty(dimensions)) return;\n\n let symbolDimension = undefined;\n const id = get(ids, 'id');\n if (!isNil(id)) symbolDimension = find(dimensions, { id });\n\n if (isUndefined(symbolDimension)) {\n const isAreaOrTimeDimension = d => isRefAreaDimension(d) || isTimePeriodDimension(d);\n const _dimensions1 = reject(dimensions, isAreaOrTimeDimension);\n const _dimensions2 = reject(dimensions, isRefAreaDimension);\n if (isEmpty(_dimensions1)) {\n symbolDimension = head(isEmpty(_dimensions2) ? dimensions : _dimensions2);\n }\n else {\n symbolDimension = head(_dimensions1);\n }\n }\n\n const symbolDimensionId = get(symbolDimension, 'id');\n\n return {\n id: symbolDimensionId,\n serie: take(symbolDimension.values, 5)\n };\n}"],"names":[],"mappings":";;;AAGA,wBAAe,CAAC,UAAU,EAAE,GAAG,KAAK;AACpC,EAAE,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE;;AAE3B,EAAE,IAAI,eAAe,GAAG,SAAS;AACjC,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC;AAC3B,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC,UAAU,EAAE,EAAE,EAAE,EAAE,CAAC;;AAE5D,EAAE,IAAI,WAAW,CAAC,eAAe,CAAC,EAAE;AACpC,IAAI,MAAM,qBAAqB,GAAG,CAAC,IAAI,kBAAkB,CAAC,CAAC,CAAC,IAAI,qBAAqB,CAAC,CAAC,CAAC;AACxF,IAAI,MAAM,YAAY,GAAG,MAAM,CAAC,UAAU,EAAE,qBAAqB,CAAC;AAClE,IAAI,MAAM,YAAY,GAAG,MAAM,CAAC,UAAU,EAAE,kBAAkB,CAAC;AAC/D,IAAI,IAAI,OAAO,CAAC,YAAY,CAAC,EAAE;AAC/B,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,UAAU,GAAG,YAAY,CAAC;AAC/E,IAAI;AACJ,SAAS;AACT,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC;AAC1C,IAAI;AACJ,EAAE;;AAEF,EAAE,MAAM,iBAAiB,GAAG,GAAG,CAAC,eAAe,EAAE,IAAI,CAAC;;AAEtD,EAAE,OAAO;AACT,IAAI,EAAE,EAAE,iBAAiB;AACzB,IAAI,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;AACzC,GAAG;AACH;;;;"}
@@ -1,44 +0,0 @@
1
- import * as R from 'ramda';
2
- import { parseDisplay, getFlags } from '../index.js';
3
- import { DEFAULT_REJECTED_SUBTITLE_IDS } from '../constants.js';
4
- import { dimensionValueDisplay } from '../dimension-utils.js';
5
-
6
- const getDefaultSubtitle = ({ customAttributes, dimensions, display, units }) => {
7
- const _display = parseDisplay(display);
8
- const formatter = dimensionValueDisplay(_display);
9
- const _getFlags = getFlags(customAttributes, formatter, {});
10
- const unitsValuesIds = R.pipe(R.propOr([], 'values'), R.pluck('id'))(units);
11
-
12
- return R.pipe(
13
- R.propOr([], 'one'),
14
- R.values,
15
- R.sortBy(R.prop('__index')),
16
- R.reduce(
17
- (acc, dim) => {
18
- if (!R.propOr(true, 'display', dim)) {
19
- return acc;
20
- }
21
- if (R.includes(dim.id, unitsValuesIds)) {
22
- return acc;
23
- }
24
- const value = R.path(['values', 0], dim);
25
-
26
- if (R.includes(value.id, DEFAULT_REJECTED_SUBTITLE_IDS) || !R.propOr(true, 'display', value)) {
27
- return acc;
28
- }
29
-
30
- const flags = _getFlags({ attributes: R.propOr({}, 'attributes', value), notes: R.propOr([], 'notes', value) });
31
-
32
- return R.append({
33
- header: `${formatter(dim)}:`,
34
- label: formatter(value),
35
- flags
36
- }, acc);
37
- },
38
- []
39
- )
40
- )(dimensions);
41
- };
42
-
43
- export { getDefaultSubtitle };
44
- //# sourceMappingURL=getDefaultSubtitle.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getDefaultSubtitle.js","sources":["../../../../src/rules/src/header/getDefaultSubtitle.js"],"sourcesContent":["import * as R from 'ramda';\nimport { dimensionValueDisplay, getFlags, parseDisplay } from '../';\nimport { DEFAULT_REJECTED_SUBTITLE_IDS } from '../constants';\n\nexport const getDefaultSubtitle = ({ customAttributes, dimensions, display, units }) => {\n const _display = parseDisplay(display);\n const formatter = dimensionValueDisplay(_display);\n const _getFlags = getFlags(customAttributes, formatter, {});\n const unitsValuesIds = R.pipe(R.propOr([], 'values'), R.pluck('id'))(units);\n \n return R.pipe(\n R.propOr([], 'one'),\n R.values,\n R.sortBy(R.prop('__index')),\n R.reduce(\n (acc, dim) => {\n if (!R.propOr(true, 'display', dim)) {\n return acc;\n }\n if (R.includes(dim.id, unitsValuesIds)) {\n return acc;\n }\n const value = R.path(['values', 0], dim);\n\n if (R.includes(value.id, DEFAULT_REJECTED_SUBTITLE_IDS) || !R.propOr(true, 'display', value)) {\n return acc;\n }\n\n const flags = _getFlags({ attributes: R.propOr({}, 'attributes', value), notes: R.propOr([], 'notes', value) });\n\n return R.append({\n header: `${formatter(dim)}:`,\n label: formatter(value),\n flags\n }, acc);\n },\n []\n )\n )(dimensions);\n};\n"],"names":[],"mappings":";;;;;AAIY,MAAC,kBAAkB,GAAG,CAAC,EAAE,gBAAgB,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM;AACzF,EAAE,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC;AACxC,EAAE,MAAM,SAAS,GAAG,qBAAqB,CAAC,QAAQ,CAAC;AACnD,EAAE,MAAM,SAAS,IAAI,QAAQ,CAAC,gBAAgB,EAAE,SAAS,EAAE,EAAE,CAAC;AAC9D,EAAE,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;AAC7E;AACA,EAAE,OAAO,CAAC,CAAC,IAAI;AACf,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC;AACvB,IAAI,CAAC,CAAC,MAAM;AACZ,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAC/B,IAAI,CAAC,CAAC,MAAM;AACZ,MAAM,CAAC,GAAG,EAAE,GAAG,KAAK;AACpB,QAAQ,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE;AAC7C,UAAU,OAAO,GAAG;AACpB,QAAQ;AACR,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,cAAc,CAAC,EAAE;AAChD,UAAU,OAAO,GAAG;AACpB,QAAQ;AACR,QAAQ,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC;;AAEhD,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,6BAA6B,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE;AACtG,UAAU,OAAO,GAAG;AACpB,QAAQ;;AAER,QAAQ,MAAM,KAAK,GAAG,SAAS,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;;AAEvH,QAAQ,OAAO,CAAC,CAAC,MAAM,CAAC;AACxB,UAAU,MAAM,EAAE,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACtC,UAAU,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC;AACjC,UAAU;AACV,SAAS,EAAE,GAAG,CAAC;AACf,MAAM,CAAC;AACP,MAAM;AACN;AACA,GAAG,CAAC,UAAU,CAAC;AACf;;;;"}
@@ -1,21 +0,0 @@
1
- import * as R from 'ramda';
2
- import { parseDisplay } from '../index.js';
3
- import { dimensionValueDisplay } from '../dimension-utils.js';
4
-
5
- const getHeaderUnits = ({ units, display }) => {
6
- const _display = parseDisplay(display);
7
- return R.converge(
8
- (header, label) => R.isEmpty(label) ? null : { header, label },
9
- [
10
- (units) => `${dimensionValueDisplay(_display)(units)}:`,
11
- R.pipe(
12
- R.propOr([], 'values'),
13
- R.map(R.pipe(R.propOr({}, 'value'), dimensionValueDisplay(_display))),
14
- R.join(', ')
15
- )
16
- ]
17
- )(units);
18
- };
19
-
20
- export { getHeaderUnits };
21
- //# sourceMappingURL=getHeaderUnits.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getHeaderUnits.js","sources":["../../../../src/rules/src/header/getHeaderUnits.js"],"sourcesContent":["import * as R from 'ramda';\nimport { dimensionValueDisplay, parseDisplay } from '../';\n\nexport const getHeaderUnits = ({ units, display }) => {\n const _display = parseDisplay(display);\n return R.converge(\n (header, label) => R.isEmpty(label) ? null : { header, label },\n [\n (units) => `${dimensionValueDisplay(_display)(units)}:`,\n R.pipe(\n R.propOr([], 'values'),\n R.map(R.pipe(R.propOr({}, 'value'), dimensionValueDisplay(_display))),\n R.join(', ')\n )\n ]\n )(units);\n};\n"],"names":[],"mappings":";;;;AAGY,MAAC,cAAc,GAAG,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK;AACtD,EAAE,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC;AACxC,EAAE,OAAO,CAAC,CAAC,QAAQ;AACnB,IAAI,CAAC,MAAM,EAAE,KAAK,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE;AAClE,IAAI;AACJ,MAAM,CAAC,KAAK,KAAK,CAAC,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC7D,MAAM,CAAC,CAAC,IAAI;AACZ,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC;AAC9B,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC7E,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI;AACnB;AACA;AACA,GAAG,CAAC,KAAK,CAAC;AACV;;;;"}
@@ -1,47 +0,0 @@
1
- import * as R from 'ramda';
2
- import { parseDisplay, getFlags } from '../index.js';
3
- import { DEFAULT_REJECTED_SUBTITLE_IDS } from '../constants.js';
4
- import { dimensionValueDisplay } from '../dimension-utils.js';
5
-
6
- const getSubtitleFlags = ({ customAttributes, dimensions, display, units }) => {
7
- const _display = parseDisplay(display);
8
- const formatter = dimensionValueDisplay(_display);
9
- const _getFlags = getFlags(customAttributes, formatter, {});
10
- const unitsValuesIds = R.pipe(R.propOr([], 'values'), R.pluck('id'))(units);
11
-
12
- return R.pipe(
13
- R.propOr([], 'one'),
14
- R.values,
15
- R.sortBy(R.prop('__index')),
16
- R.reduce(
17
- (acc, dim) => {
18
- if (!R.propOr(true, 'display', dim)) {
19
- return acc;
20
- }
21
- if (R.includes(dim.id, unitsValuesIds)) {
22
- return acc;
23
- }
24
- const value = R.path(['values', 0], dim);
25
-
26
- if (R.includes(value.id, DEFAULT_REJECTED_SUBTITLE_IDS) || !R.propOr(true, 'display', value)) {
27
- return acc;
28
- }
29
-
30
- const flags = _getFlags({ attributes: R.propOr({}, 'attributes', value), notes: R.propOr([], 'notes', value) });
31
- if (R.isEmpty(flags)) {
32
- return acc;
33
- }
34
-
35
- return R.append({
36
- header: `${formatter(dim)}:`,
37
- label: formatter(value),
38
- sub: flags
39
- }, acc);
40
- },
41
- []
42
- )
43
- )(dimensions);
44
- };
45
-
46
- export { getSubtitleFlags };
47
- //# sourceMappingURL=getSubtitleFlags.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getSubtitleFlags.js","sources":["../../../../src/rules/src/header/getSubtitleFlags.js"],"sourcesContent":["import * as R from 'ramda';\nimport { dimensionValueDisplay, getFlags, parseDisplay } from '../';\nimport { DEFAULT_REJECTED_SUBTITLE_IDS } from '../constants';\n\nexport const getSubtitleFlags = ({ customAttributes, dimensions, display, units }) => {\n const _display = parseDisplay(display);\n const formatter = dimensionValueDisplay(_display);\n const _getFlags = getFlags(customAttributes, formatter, {});\n const unitsValuesIds = R.pipe(R.propOr([], 'values'), R.pluck('id'))(units);\n\n return R.pipe(\n R.propOr([], 'one'),\n R.values,\n R.sortBy(R.prop('__index')),\n R.reduce(\n (acc, dim) => {\n if (!R.propOr(true, 'display', dim)) {\n return acc;\n }\n if (R.includes(dim.id, unitsValuesIds)) {\n return acc;\n }\n const value = R.path(['values', 0], dim);\n\n if (R.includes(value.id, DEFAULT_REJECTED_SUBTITLE_IDS) || !R.propOr(true, 'display', value)) {\n return acc;\n }\n\n const flags = _getFlags({ attributes: R.propOr({}, 'attributes', value), notes: R.propOr([], 'notes', value) });\n if (R.isEmpty(flags)) {\n return acc;\n }\n\n return R.append({\n header: `${formatter(dim)}:`,\n label: formatter(value),\n sub: flags\n }, acc);\n },\n []\n )\n )(dimensions);\n};\n"],"names":[],"mappings":";;;;;AAIY,MAAC,gBAAgB,GAAG,CAAC,EAAE,gBAAgB,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM;AACvF,EAAE,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC;AACxC,EAAE,MAAM,SAAS,GAAG,qBAAqB,CAAC,QAAQ,CAAC;AACnD,EAAE,MAAM,SAAS,IAAI,QAAQ,CAAC,gBAAgB,EAAE,SAAS,EAAE,EAAE,CAAC;AAC9D,EAAE,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;;AAE7E,EAAE,OAAO,CAAC,CAAC,IAAI;AACf,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC;AACvB,IAAI,CAAC,CAAC,MAAM;AACZ,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAC/B,IAAI,CAAC,CAAC,MAAM;AACZ,MAAM,CAAC,GAAG,EAAE,GAAG,KAAK;AACpB,QAAQ,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE;AAC7C,UAAU,OAAO,GAAG;AACpB,QAAQ;AACR,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,cAAc,CAAC,EAAE;AAChD,UAAU,OAAO,GAAG;AACpB,QAAQ;AACR,QAAQ,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC;;AAEhD,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,6BAA6B,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE;AACtG,UAAU,OAAO,GAAG;AACpB,QAAQ;;AAER,QAAQ,MAAM,KAAK,GAAG,SAAS,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;AACvH,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AAC9B,UAAU,OAAO,GAAG;AACpB,QAAQ;;AAER,QAAQ,OAAO,CAAC,CAAC,MAAM,CAAC;AACxB,UAAU,MAAM,EAAE,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACtC,UAAU,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC;AACjC,UAAU,GAAG,EAAE;AACf,SAAS,EAAE,GAAG,CAAC;AACf,MAAM,CAAC;AACP,MAAM;AACN;AACA,GAAG,CAAC,UAAU,CAAC;AACf;;;;"}
@@ -1,12 +0,0 @@
1
- import 'ramda';
2
- import { parseDisplay, getFlags } from '../index.js';
3
- import { dimensionValueDisplay } from '../dimension-utils.js';
4
-
5
- const getTitleFlags = ({ customAttributes, dataflowAttributes, display }) => {
6
- const _display = parseDisplay(display);
7
- const formatter = dimensionValueDisplay(_display);
8
- return getFlags(customAttributes, formatter, {})({ attributes: dataflowAttributes });
9
- };
10
-
11
- export { getTitleFlags };
12
- //# sourceMappingURL=getTitleFlags.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getTitleFlags.js","sources":["../../../../src/rules/src/header/getTitleFlags.js"],"sourcesContent":["import * as R from 'ramda';\nimport { parseDisplay, dimensionValueDisplay, getFlags } from '../';\n\nexport const getTitleFlags = ({ customAttributes, dataflowAttributes, display }) => {\n const _display = parseDisplay(display);\n const formatter = dimensionValueDisplay(_display);\n return getFlags(customAttributes, formatter, {})({ attributes: dataflowAttributes });\n};\n"],"names":[],"mappings":";;;;AAGY,MAAC,aAAa,GAAG,CAAC,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,OAAO,EAAE,KAAK;AACpF,EAAE,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC;AACxC,EAAE,MAAM,SAAS,GAAG,qBAAqB,CAAC,QAAQ,CAAC;AACnD,EAAE,OAAO,QAAQ,CAAC,gBAAgB,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,kBAAkB,EAAE,CAAC;AACtF;;;;"}