@dhis2/analytics 26.0.8 → 26.0.10

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 (737) hide show
  1. package/build/cjs/__demo__/CalculationModal.stories.js +0 -5
  2. package/build/cjs/__demo__/DimensionsPanel.stories.js +0 -7
  3. package/build/cjs/__demo__/DynamicDimension.stories.js +0 -4
  4. package/build/cjs/__demo__/FileMenu.stories.js +2 -7
  5. package/build/cjs/__demo__/Filter.stories.js +0 -10
  6. package/build/cjs/__demo__/FixedPeriodSelect.stories.js +0 -6
  7. package/build/cjs/__demo__/OpenFileDialog.stories.js +1 -9
  8. package/build/cjs/__demo__/OrgUnitDimension.stories.js +1 -9
  9. package/build/cjs/__demo__/PeriodDimension.stories.js +0 -5
  10. package/build/cjs/__demo__/PivotTable.stories.js +100 -104
  11. package/build/cjs/__demo__/Toolbar.stories.js +0 -6
  12. package/build/cjs/__fixtures__/fixtures.js +0 -7
  13. package/build/cjs/api/__tests__/dimensions.spec.js +0 -3
  14. package/build/cjs/api/analytics/Analytics.js +1 -12
  15. package/build/cjs/api/analytics/AnalyticsAggregate.js +2 -9
  16. package/build/cjs/api/analytics/AnalyticsBase.js +8 -21
  17. package/build/cjs/api/analytics/AnalyticsEnrollments.js +0 -5
  18. package/build/cjs/api/analytics/AnalyticsEvents.js +3 -11
  19. package/build/cjs/api/analytics/AnalyticsRequest.js +15 -34
  20. package/build/cjs/api/analytics/AnalyticsRequestBase.js +7 -28
  21. package/build/cjs/api/analytics/AnalyticsRequestDimensionsMixin.js +3 -16
  22. package/build/cjs/api/analytics/AnalyticsRequestFiltersMixin.js +3 -16
  23. package/build/cjs/api/analytics/AnalyticsRequestPropertiesMixin.js +55 -140
  24. package/build/cjs/api/analytics/AnalyticsResponse.js +21 -45
  25. package/build/cjs/api/analytics/AnalyticsResponseHeader.js +0 -6
  26. package/build/cjs/api/analytics/__mocks__/DataEngine.js +0 -5
  27. package/build/cjs/api/analytics/__tests__/Analytics.spec.js +0 -5
  28. package/build/cjs/api/analytics/__tests__/AnalyticsAggregate.spec.js +11 -8
  29. package/build/cjs/api/analytics/__tests__/AnalyticsBase.spec.js +0 -2
  30. package/build/cjs/api/analytics/__tests__/AnalyticsEnrollments.spec.js +0 -7
  31. package/build/cjs/api/analytics/__tests__/AnalyticsEvents.spec.js +0 -7
  32. package/build/cjs/api/analytics/__tests__/AnalyticsRequest.spec.js +17 -19
  33. package/build/cjs/api/analytics/__tests__/AnalyticsRequestBase.spec.js +4 -9
  34. package/build/cjs/api/analytics/__tests__/AnalyticsResponse.spec.js +3 -5
  35. package/build/cjs/api/analytics/__tests__/AnalyticsResponseHeader.spec.js +2 -4
  36. package/build/cjs/api/analytics/utils.js +1 -3
  37. package/build/cjs/api/dimensions.js +41 -91
  38. package/build/cjs/api/index.js +1 -2
  39. package/build/cjs/api/organisationUnits.js +5 -16
  40. package/build/cjs/assets/AssignedCategoriesIcon.js +0 -4
  41. package/build/cjs/assets/DimensionItemIcons/CalculationIcon.js +0 -4
  42. package/build/cjs/assets/DimensionItemIcons/DataElementIcon.js +0 -4
  43. package/build/cjs/assets/DimensionItemIcons/GenericIcon.js +0 -4
  44. package/build/cjs/assets/DimensionItemIcons/PeriodIcon.js +0 -4
  45. package/build/cjs/assets/DynamicDimensionIcon.js +0 -4
  46. package/build/cjs/assets/FormulaIcon.js +0 -4
  47. package/build/cjs/components/AboutAOUnit/AboutAOUnit.js +19 -47
  48. package/build/cjs/components/AboutAOUnit/styles/AboutAOUnit.style.js +1 -3
  49. package/build/cjs/components/AboutAOUnit/utils.js +0 -5
  50. package/build/cjs/components/CachedDataQueryProvider.js +0 -17
  51. package/build/cjs/components/DataDimension/Calculation/CalculationModal.js +26 -73
  52. package/build/cjs/components/DataDimension/Calculation/DataElementOption.js +6 -19
  53. package/build/cjs/components/DataDimension/Calculation/DataElementSelector.js +16 -51
  54. package/build/cjs/components/DataDimension/Calculation/DndContext.js +6 -36
  55. package/build/cjs/components/DataDimension/Calculation/DragHandleIcon.js +0 -4
  56. package/build/cjs/components/DataDimension/Calculation/DraggingItem.js +3 -15
  57. package/build/cjs/components/DataDimension/Calculation/DropZone.js +1 -12
  58. package/build/cjs/components/DataDimension/Calculation/FormulaField.js +5 -21
  59. package/build/cjs/components/DataDimension/Calculation/FormulaItem.js +13 -41
  60. package/build/cjs/components/DataDimension/Calculation/MathOperatorSelector.js +4 -14
  61. package/build/cjs/components/DataDimension/Calculation/Operator.js +5 -18
  62. package/build/cjs/components/DataDimension/Calculation/styles/CalculationModal.style.js +1 -3
  63. package/build/cjs/components/DataDimension/Calculation/styles/DataElementOption.style.js +1 -3
  64. package/build/cjs/components/DataDimension/Calculation/styles/DataElementSelector.style.js +1 -3
  65. package/build/cjs/components/DataDimension/Calculation/styles/DraggingItem.style.js +1 -3
  66. package/build/cjs/components/DataDimension/Calculation/styles/DropZone.style.js +1 -3
  67. package/build/cjs/components/DataDimension/Calculation/styles/FormulaField.style.js +1 -3
  68. package/build/cjs/components/DataDimension/Calculation/styles/FormulaItem.style.js +1 -3
  69. package/build/cjs/components/DataDimension/Calculation/styles/MathOperatorSelector.style.js +1 -3
  70. package/build/cjs/components/DataDimension/Calculation/styles/Operator.style.js +1 -3
  71. package/build/cjs/components/DataDimension/DataDimension.js +1 -11
  72. package/build/cjs/components/DataDimension/DataTypeSelector.js +3 -14
  73. package/build/cjs/components/DataDimension/DetailSelector.js +2 -13
  74. package/build/cjs/components/DataDimension/GroupSelector.js +7 -26
  75. package/build/cjs/components/DataDimension/ItemSelector.js +45 -94
  76. package/build/cjs/components/DataDimension/MetricSelector.js +3 -14
  77. package/build/cjs/components/DataDimension/styles/DataTypeSelector.style.js +1 -3
  78. package/build/cjs/components/DataDimension/styles/DetailSelector.style.js +1 -3
  79. package/build/cjs/components/DataDimension/styles/GroupSelector.style.js +1 -3
  80. package/build/cjs/components/DataDimension/styles/MetricSelector.style.js +1 -3
  81. package/build/cjs/components/DimensionMenu.js +18 -35
  82. package/build/cjs/components/DimensionsPanel/DimensionsPanel.js +5 -19
  83. package/build/cjs/components/DimensionsPanel/List/DimensionItem.js +11 -32
  84. package/build/cjs/components/DimensionsPanel/List/DimensionList.js +11 -30
  85. package/build/cjs/components/DimensionsPanel/List/OptionsButton.js +0 -6
  86. package/build/cjs/components/DimensionsPanel/List/RecommendedIcon.js +0 -8
  87. package/build/cjs/components/DimensionsPanel/List/__tests__/DimensionItem.spec.js +0 -7
  88. package/build/cjs/components/DimensionsPanel/List/styles/DimensionItem.style.js +0 -2
  89. package/build/cjs/components/DimensionsPanel/List/styles/DimensionList.style.js +2 -4
  90. package/build/cjs/components/DimensionsPanel/List/styles/RecommendedIcon.style.js +0 -2
  91. package/build/cjs/components/DimensionsPanel/__tests__/DimensionsPanel.spec.js +0 -8
  92. package/build/cjs/components/DimensionsPanel/styles/DimensionsPanel.style.js +1 -3
  93. package/build/cjs/components/DynamicDimension/DynamicDimension.js +4 -23
  94. package/build/cjs/components/DynamicDimension/ItemSelector.js +15 -41
  95. package/build/cjs/components/DynamicDimension/styles/DynamicDimension.style.js +1 -3
  96. package/build/cjs/components/FileMenu/DeleteDialog.js +0 -12
  97. package/build/cjs/components/FileMenu/FileMenu.js +0 -29
  98. package/build/cjs/components/FileMenu/FileMenu.styles.js +2 -4
  99. package/build/cjs/components/FileMenu/GetLinkDialog.js +5 -15
  100. package/build/cjs/components/FileMenu/GetLinkDialog.styles.js +1 -3
  101. package/build/cjs/components/FileMenu/RenameDialog.js +1 -17
  102. package/build/cjs/components/FileMenu/SaveAsDialog.js +3 -16
  103. package/build/cjs/components/FileMenu/__tests__/DeleteDialog.spec.js +1 -9
  104. package/build/cjs/components/FileMenu/__tests__/FileMenu.spec.js +28 -51
  105. package/build/cjs/components/FileMenu/__tests__/GetLinkDialog.spec.js +0 -9
  106. package/build/cjs/components/FileMenu/__tests__/RenameDialog.spec.js +1 -9
  107. package/build/cjs/components/FileMenu/__tests__/SaveAsDialog.spec.js +1 -9
  108. package/build/cjs/components/FileMenu/utils.js +4 -19
  109. package/build/cjs/components/Filter/Filter.js +1 -9
  110. package/build/cjs/components/Filter/__tests__/Filter.spec.js +0 -8
  111. package/build/cjs/components/Filter/styles/Filter.style.js +1 -3
  112. package/build/cjs/components/Interpretations/InterpretationModal/Comment.js +0 -12
  113. package/build/cjs/components/Interpretations/InterpretationModal/CommentAddForm.js +1 -14
  114. package/build/cjs/components/Interpretations/InterpretationModal/CommentDeleteButton.js +1 -11
  115. package/build/cjs/components/Interpretations/InterpretationModal/CommentUpdateForm.js +2 -14
  116. package/build/cjs/components/Interpretations/InterpretationModal/InterpretationModal.js +2 -26
  117. package/build/cjs/components/Interpretations/InterpretationModal/InterpretationThread.js +0 -15
  118. package/build/cjs/components/Interpretations/InterpretationModal/index.js +0 -1
  119. package/build/cjs/components/Interpretations/InterpretationModal/useModalContentWidth.js +0 -7
  120. package/build/cjs/components/Interpretations/InterpretationsUnit/InterpretationForm.js +2 -15
  121. package/build/cjs/components/Interpretations/InterpretationsUnit/InterpretationList.js +1 -16
  122. package/build/cjs/components/Interpretations/InterpretationsUnit/InterpretationsUnit.js +2 -15
  123. package/build/cjs/components/Interpretations/InterpretationsUnit/index.js +0 -1
  124. package/build/cjs/components/Interpretations/common/Interpretation/Interpretation.js +0 -13
  125. package/build/cjs/components/Interpretations/common/Interpretation/InterpretationDeleteButton.js +0 -10
  126. package/build/cjs/components/Interpretations/common/Interpretation/InterpretationSharingLink.js +1 -11
  127. package/build/cjs/components/Interpretations/common/Interpretation/InterpretationUpdateForm.js +1 -14
  128. package/build/cjs/components/Interpretations/common/Interpretation/index.js +0 -2
  129. package/build/cjs/components/Interpretations/common/Interpretation/useLike.js +1 -7
  130. package/build/cjs/components/Interpretations/common/Message/Message.js +1 -10
  131. package/build/cjs/components/Interpretations/common/Message/MessageButtonStrip.js +1 -8
  132. package/build/cjs/components/Interpretations/common/Message/MessageEditorContainer.js +1 -8
  133. package/build/cjs/components/Interpretations/common/Message/MessageIconButton.js +5 -13
  134. package/build/cjs/components/Interpretations/common/Message/MessageInput.js +2 -10
  135. package/build/cjs/components/Interpretations/common/Message/MessageStatsBar.js +1 -8
  136. package/build/cjs/components/Interpretations/common/Message/index.js +0 -6
  137. package/build/cjs/components/Interpretations/common/RichTextEditor/RichTextEditor.js +15 -35
  138. package/build/cjs/components/Interpretations/common/RichTextEditor/index.js +0 -1
  139. package/build/cjs/components/Interpretations/common/RichTextEditor/markdownHandler.js +4 -22
  140. package/build/cjs/components/Interpretations/common/RichTextEditor/styles/RichTextEditor.style.js +3 -5
  141. package/build/cjs/components/Interpretations/common/UserMention/UserList.js +1 -9
  142. package/build/cjs/components/Interpretations/common/UserMention/UserMentionWrapper.js +18 -46
  143. package/build/cjs/components/Interpretations/common/UserMention/styles/UserMentionWrapper.style.js +1 -6
  144. package/build/cjs/components/Interpretations/common/UserMention/useUserSearchResults.js +1 -9
  145. package/build/cjs/components/Interpretations/common/index.js +0 -6
  146. package/build/cjs/components/LegendKey/LegendKey.js +9 -17
  147. package/build/cjs/components/LegendKey/styles/LegendKey.style.js +1 -3
  148. package/build/cjs/components/OfflineTooltip.js +1 -12
  149. package/build/cjs/components/OpenFileDialog/CreatedByFilter.js +1 -8
  150. package/build/cjs/components/OpenFileDialog/CustomSelectOption.js +2 -13
  151. package/build/cjs/components/OpenFileDialog/DateField.js +0 -6
  152. package/build/cjs/components/OpenFileDialog/FileList.js +0 -8
  153. package/build/cjs/components/OpenFileDialog/NameFilter.js +0 -7
  154. package/build/cjs/components/OpenFileDialog/OpenFileDialog.js +29 -64
  155. package/build/cjs/components/OpenFileDialog/OpenFileDialog.styles.js +1 -3
  156. package/build/cjs/components/OpenFileDialog/PaginationControls.js +0 -7
  157. package/build/cjs/components/OpenFileDialog/VisTypeFilter.js +0 -10
  158. package/build/cjs/components/OpenFileDialog/styles/CustomSelectOption.style.js +1 -3
  159. package/build/cjs/components/OpenFileDialog/utils.js +0 -5
  160. package/build/cjs/components/Options/VisualizationOptions.js +0 -16
  161. package/build/cjs/components/Options/styles/VisualizationOptions.style.js +11 -14
  162. package/build/cjs/components/OrgUnitDimension/OrgUnitDimension.js +12 -47
  163. package/build/cjs/components/OrgUnitDimension/styles/OrgUnitDimension.style.js +1 -3
  164. package/build/cjs/components/PeriodDimension/FixedPeriodFilter.js +5 -16
  165. package/build/cjs/components/PeriodDimension/FixedPeriodSelect.js +5 -27
  166. package/build/cjs/components/PeriodDimension/PeriodDimension.js +0 -11
  167. package/build/cjs/components/PeriodDimension/PeriodTransfer.js +12 -41
  168. package/build/cjs/components/PeriodDimension/RelativePeriodFilter.js +2 -13
  169. package/build/cjs/components/PeriodDimension/__tests__/FixedPeriodSingleSelect.spec.js +0 -7
  170. package/build/cjs/components/PeriodDimension/__tests__/PeriodDimension.spec.js +0 -7
  171. package/build/cjs/components/PeriodDimension/__tests__/PeriodSelector.spec.js +0 -7
  172. package/build/cjs/components/PeriodDimension/__tests__/fixedPeriods.spec.js +2 -2
  173. package/build/cjs/components/PeriodDimension/__tests__/utils.spec.js +0 -3
  174. package/build/cjs/components/PeriodDimension/styles/FixedPeriodSelect.style.js +1 -3
  175. package/build/cjs/components/PeriodDimension/styles/PeriodFilter.style.js +1 -3
  176. package/build/cjs/components/PeriodDimension/utils/fixedPeriods.js +2 -35
  177. package/build/cjs/components/PeriodDimension/utils/index.js +0 -2
  178. package/build/cjs/components/PeriodDimension/utils/relativePeriods.js +0 -19
  179. package/build/cjs/components/PivotTable/PivotTable.js +0 -15
  180. package/build/cjs/components/PivotTable/PivotTableBody.js +0 -8
  181. package/build/cjs/components/PivotTable/PivotTableCell.js +4 -14
  182. package/build/cjs/components/PivotTable/PivotTableClippedAxis.js +0 -5
  183. package/build/cjs/components/PivotTable/PivotTableColumnHeaderCell.js +4 -18
  184. package/build/cjs/components/PivotTable/PivotTableColumnHeaders.js +0 -11
  185. package/build/cjs/components/PivotTable/PivotTableContainer.js +2 -11
  186. package/build/cjs/components/PivotTable/PivotTableDimensionLabelCell.js +4 -16
  187. package/build/cjs/components/PivotTable/PivotTableEmptyCell.js +3 -10
  188. package/build/cjs/components/PivotTable/PivotTableEmptyRow.js +0 -7
  189. package/build/cjs/components/PivotTable/PivotTableEngineContext.js +0 -10
  190. package/build/cjs/components/PivotTable/PivotTableHead.js +0 -7
  191. package/build/cjs/components/PivotTable/PivotTableHeaderCell.js +0 -5
  192. package/build/cjs/components/PivotTable/PivotTableRow.js +0 -11
  193. package/build/cjs/components/PivotTable/PivotTableRowHeaderCell.js +2 -10
  194. package/build/cjs/components/PivotTable/PivotTableSortIcon.js +2 -14
  195. package/build/cjs/components/PivotTable/PivotTableTitleRow.js +2 -13
  196. package/build/cjs/components/PivotTable/PivotTableTitleRows.js +0 -9
  197. package/build/cjs/components/PivotTable/PivotTableValueCell.js +4 -19
  198. package/build/cjs/components/PivotTable/icons/SortIconAscending.js +0 -4
  199. package/build/cjs/components/PivotTable/icons/SortIconDescending.js +0 -4
  200. package/build/cjs/components/PivotTable/icons/SortIconIdle.js +0 -4
  201. package/build/cjs/components/PivotTable/styles/PivotTable.style.js +3 -6
  202. package/build/cjs/components/Toolbar/HoverMenuBar/HoverMenuBar.js +0 -14
  203. package/build/cjs/components/Toolbar/HoverMenuBar/HoverMenuDropdown.js +1 -14
  204. package/build/cjs/components/Toolbar/HoverMenuBar/HoverMenuList.js +1 -16
  205. package/build/cjs/components/Toolbar/HoverMenuBar/HoverMenuListItem.js +4 -21
  206. package/build/cjs/components/Toolbar/HoverMenuBar/HoverMenuListItem.styles.js +1 -3
  207. package/build/cjs/components/Toolbar/HoverMenuBar/__tests__/HoverMenuBar.spec.js +0 -50
  208. package/build/cjs/components/Toolbar/HoverMenuBar/__tests__/HoverMenuDropdown.spec.js +1 -4
  209. package/build/cjs/components/Toolbar/HoverMenuBar/__tests__/HoverMenuList.spec.js +2 -6
  210. package/build/cjs/components/Toolbar/HoverMenuBar/__tests__/HoverMenuListItem.spec.js +1 -6
  211. package/build/cjs/components/Toolbar/HoverMenuBar/index.js +0 -4
  212. package/build/cjs/components/Toolbar/InterpretationsAndDetailsToggler.js +1 -10
  213. package/build/cjs/components/Toolbar/MenuButton.styles.js +1 -3
  214. package/build/cjs/components/Toolbar/Toolbar.js +1 -8
  215. package/build/cjs/components/Toolbar/ToolbarSidebar.js +1 -9
  216. package/build/cjs/components/Toolbar/UpdateButton.js +2 -13
  217. package/build/cjs/components/Toolbar/__tests__/InterpretationsAndDetailsToggler.spec.js +0 -5
  218. package/build/cjs/components/Toolbar/__tests__/Toolbar.spec.js +0 -4
  219. package/build/cjs/components/Toolbar/__tests__/ToolbarSidebar.spec.js +0 -4
  220. package/build/cjs/components/Toolbar/__tests__/UpdateButton.spec.js +0 -5
  221. package/build/cjs/components/Toolbar/index.js +0 -6
  222. package/build/cjs/components/TransferOption.js +7 -20
  223. package/build/cjs/components/TranslationDialog/TranslationModal/LocalesSelect.js +2 -12
  224. package/build/cjs/components/TranslationDialog/TranslationModal/TranslationForm.js +3 -27
  225. package/build/cjs/components/TranslationDialog/TranslationModal/TranslationModal.js +0 -12
  226. package/build/cjs/components/TranslationDialog/TranslationModal/TranslationModalActions.js +0 -11
  227. package/build/cjs/components/TranslationDialog/TranslationModal/useTranslationsResults.js +1 -7
  228. package/build/cjs/components/TranslationDialog/index.js +0 -1
  229. package/build/cjs/components/VisTypeIcon.js +0 -24
  230. package/build/cjs/components/styles/DimensionSelector.style.js +1 -3
  231. package/build/cjs/components/styles/DimensionsPanel.style.js +0 -2
  232. package/build/cjs/components/styles/TransferOption.style.js +1 -3
  233. package/build/cjs/index.js +0 -84
  234. package/build/cjs/locales/es/translations.json +34 -34
  235. package/build/cjs/locales/index.js +1 -74
  236. package/build/cjs/locales/nl/translations.json +1 -1
  237. package/build/cjs/modules/__tests__/expressions.spec.js +4 -4
  238. package/build/cjs/modules/__tests__/getAdaptedUiLayoutByType.spec.js +0 -4
  239. package/build/cjs/modules/__tests__/getColorByValueFromLegendSet.spec.js +1 -2
  240. package/build/cjs/modules/__tests__/getOuLevelAndGroupText.spec.js +0 -1
  241. package/build/cjs/modules/__tests__/hash.spec.js +0 -2
  242. package/build/cjs/modules/__tests__/parseExpression.spec.js +0 -1
  243. package/build/cjs/modules/__tests__/renderValue.spec.js +19 -13
  244. package/build/cjs/modules/axis.js +1 -17
  245. package/build/cjs/modules/dataSets.js +0 -3
  246. package/build/cjs/modules/dataTypes.js +0 -9
  247. package/build/cjs/modules/dimensionListItem.js +0 -24
  248. package/build/cjs/modules/expressions.js +2 -21
  249. package/build/cjs/modules/fontStyle.js +15 -27
  250. package/build/cjs/modules/getAdaptedUiLayoutByType.js +7 -39
  251. package/build/cjs/modules/getOuLevelAndGroupText.js +0 -18
  252. package/build/cjs/modules/hash.js +0 -10
  253. package/build/cjs/modules/layout/__tests__/axisGetAllItems.spec.js +0 -2
  254. package/build/cjs/modules/layout/__tests__/axisGetDimension.spec.js +0 -3
  255. package/build/cjs/modules/layout/__tests__/axisGetDimensionIds.spec.js +0 -5
  256. package/build/cjs/modules/layout/__tests__/axisHasDataDimension.spec.js +0 -2
  257. package/build/cjs/modules/layout/__tests__/axisHasDimension.spec.js +0 -3
  258. package/build/cjs/modules/layout/__tests__/axisHasOuDimension.spec.js +0 -2
  259. package/build/cjs/modules/layout/__tests__/axisHasPeriodDimension.spec.js +0 -2
  260. package/build/cjs/modules/layout/__tests__/axisIsEmpty.spec.js +0 -2
  261. package/build/cjs/modules/layout/__tests__/dimensionCreate.spec.js +0 -5
  262. package/build/cjs/modules/layout/__tests__/dimensionGetId.spec.js +0 -3
  263. package/build/cjs/modules/layout/__tests__/dimensionGetItemIds.spec.js +0 -4
  264. package/build/cjs/modules/layout/__tests__/dimensionGetItems.spec.js +0 -3
  265. package/build/cjs/modules/layout/__tests__/dimensionHasRelativeItems.spec.js +0 -2
  266. package/build/cjs/modules/layout/__tests__/dimensionIs.spec.js +0 -3
  267. package/build/cjs/modules/layout/__tests__/dimensionIsEmpty.spec.js +0 -2
  268. package/build/cjs/modules/layout/__tests__/dimensionIsValid.spec.js +0 -2
  269. package/build/cjs/modules/layout/__tests__/itemGetId.spec.js +0 -3
  270. package/build/cjs/modules/layout/__tests__/itemIsValid.spec.js +0 -2
  271. package/build/cjs/modules/layout/__tests__/layoutFilterDimensions.spec.js +0 -5
  272. package/build/cjs/modules/layout/__tests__/layoutGetAllAxes.spec.js +0 -2
  273. package/build/cjs/modules/layout/__tests__/layoutGetAllDimensions.spec.js +0 -2
  274. package/build/cjs/modules/layout/__tests__/layoutGetAllItemIds.spec.js +0 -3
  275. package/build/cjs/modules/layout/__tests__/layoutGetAllItems.spec.js +0 -2
  276. package/build/cjs/modules/layout/__tests__/layoutGetAxisIdDimensionIdsObject.spec.js +0 -4
  277. package/build/cjs/modules/layout/__tests__/layoutGetDimension.spec.js +0 -3
  278. package/build/cjs/modules/layout/__tests__/layoutGetDimensionIdItemIdsObject.spec.js +0 -6
  279. package/build/cjs/modules/layout/__tests__/layoutGetDimensionItems.spec.js +0 -3
  280. package/build/cjs/modules/layout/__tests__/layoutHasDataDimension.spec.js +2 -4
  281. package/build/cjs/modules/layout/__tests__/layoutHasDimension.spec.js +2 -5
  282. package/build/cjs/modules/layout/__tests__/layoutHasDynamicDimension.spec.js +2 -4
  283. package/build/cjs/modules/layout/__tests__/layoutHasPeriodDimension.spec.js +2 -4
  284. package/build/cjs/modules/layout/__tests__/layoutReplaceDimension.spec.js +0 -3
  285. package/build/cjs/modules/layout/axis.js +5 -3
  286. package/build/cjs/modules/layout/axisGetAllItems.js +0 -3
  287. package/build/cjs/modules/layout/axisGetDimension.js +0 -4
  288. package/build/cjs/modules/layout/axisGetDimensionIds.js +0 -4
  289. package/build/cjs/modules/layout/axisHasDataDimension.js +0 -4
  290. package/build/cjs/modules/layout/axisHasDimension.js +0 -3
  291. package/build/cjs/modules/layout/axisHasOuDimension.js +0 -4
  292. package/build/cjs/modules/layout/axisHasPeriodDimension.js +0 -4
  293. package/build/cjs/modules/layout/axisHasRelativeItems.js +0 -3
  294. package/build/cjs/modules/layout/axisIsEmpty.js +0 -2
  295. package/build/cjs/modules/layout/dimension.js +3 -5
  296. package/build/cjs/modules/layout/dimensionCreate.js +0 -3
  297. package/build/cjs/modules/layout/dimensionGetId.js +1 -5
  298. package/build/cjs/modules/layout/dimensionGetItemIds.js +0 -4
  299. package/build/cjs/modules/layout/dimensionGetItems.js +0 -4
  300. package/build/cjs/modules/layout/dimensionHasRelativeItems.js +0 -5
  301. package/build/cjs/modules/layout/dimensionIs.js +0 -3
  302. package/build/cjs/modules/layout/dimensionIsEmpty.js +0 -3
  303. package/build/cjs/modules/layout/dimensionIsValid.js +0 -9
  304. package/build/cjs/modules/layout/item.js +3 -5
  305. package/build/cjs/modules/layout/itemGetId.js +0 -3
  306. package/build/cjs/modules/layout/itemIsValid.js +0 -5
  307. package/build/cjs/modules/layout/layout.js +0 -3
  308. package/build/cjs/modules/layout/layoutFilterDimensions.js +0 -6
  309. package/build/cjs/modules/layout/layoutGetAllAxes.js +0 -3
  310. package/build/cjs/modules/layout/layoutGetAllDimensions.js +0 -3
  311. package/build/cjs/modules/layout/layoutGetAllItemIds.js +0 -4
  312. package/build/cjs/modules/layout/layoutGetAllItems.js +0 -4
  313. package/build/cjs/modules/layout/layoutGetAxisIdDimensionIdsObject.js +0 -5
  314. package/build/cjs/modules/layout/layoutGetDimension.js +0 -4
  315. package/build/cjs/modules/layout/layoutGetDimensionIdItemIdsObject.js +0 -5
  316. package/build/cjs/modules/layout/layoutGetDimensionItems.js +0 -4
  317. package/build/cjs/modules/layout/layoutHasDataDimension.js +0 -4
  318. package/build/cjs/modules/layout/layoutHasDimension.js +0 -3
  319. package/build/cjs/modules/layout/layoutHasDynamicDimension.js +0 -5
  320. package/build/cjs/modules/layout/layoutHasPeriodDimension.js +0 -4
  321. package/build/cjs/modules/layout/layoutReplaceDimension.js +0 -8
  322. package/build/cjs/modules/layout/testResources.js +7 -9
  323. package/build/cjs/modules/layoutUiRules/__tests__/rules.spec.js +6 -14
  324. package/build/cjs/modules/layoutUiRules/index.js +0 -2
  325. package/build/cjs/modules/layoutUiRules/rules.js +10 -26
  326. package/build/cjs/modules/layoutUiRules/rulesHelper.js +1 -11
  327. package/build/cjs/modules/layoutUiRules/rulesUtils.js +6 -16
  328. package/build/cjs/modules/legends.js +0 -8
  329. package/build/cjs/modules/list.js +0 -4
  330. package/build/cjs/modules/ouIdHelper/__tests__/index.spec.js +0 -1
  331. package/build/cjs/modules/ouIdHelper/index.js +2 -8
  332. package/build/cjs/modules/ouLevelUtils/__tests__/index.spec.js +0 -1
  333. package/build/cjs/modules/ouLevelUtils/index.js +0 -13
  334. package/build/cjs/modules/outliers/__tests__/index.spec.js +0 -1
  335. package/build/cjs/modules/outliers/__tests__/iqr.spec.js +0 -1
  336. package/build/cjs/modules/outliers/__tests__/modZScore.spec.js +0 -1
  337. package/build/cjs/modules/outliers/__tests__/xyStats.spec.js +0 -1
  338. package/build/cjs/modules/outliers/index.js +6 -28
  339. package/build/cjs/modules/outliers/iqr.js +0 -19
  340. package/build/cjs/modules/outliers/modZScore.js +10 -34
  341. package/build/cjs/modules/outliers/normalization.js +2 -9
  342. package/build/cjs/modules/outliers/xyStats.js +0 -4
  343. package/build/cjs/modules/outliers/zScore.js +0 -13
  344. package/build/cjs/modules/pivotTable/AdaptiveClippingController.js +4 -33
  345. package/build/cjs/modules/pivotTable/PivotTableEngine.js +20 -190
  346. package/build/cjs/modules/pivotTable/applyLegendSet.js +0 -23
  347. package/build/cjs/modules/pivotTable/clipAxis.js +3 -6
  348. package/build/cjs/modules/pivotTable/clipPartitionedAxis.js +0 -8
  349. package/build/cjs/modules/pivotTable/getHeaderForDisplay.js +0 -9
  350. package/build/cjs/modules/pivotTable/isColorBright.js +0 -6
  351. package/build/cjs/modules/pivotTable/measureText.js +5 -21
  352. package/build/cjs/modules/pivotTable/parseValue.js +0 -4
  353. package/build/cjs/modules/pivotTable/useParentSize.js +0 -11
  354. package/build/cjs/modules/pivotTable/useScrollPosition.js +0 -7
  355. package/build/cjs/modules/pivotTable/useSortableColumns.js +0 -7
  356. package/build/cjs/modules/pivotTable/useTableClipping.js +0 -6
  357. package/build/cjs/modules/predefinedDimensions.js +2 -18
  358. package/build/cjs/modules/relativeItems/__tests__/index.spec.js +0 -2
  359. package/build/cjs/modules/relativeItems/index.js +0 -5
  360. package/build/cjs/modules/renderValue.js +0 -18
  361. package/build/cjs/modules/utils.js +0 -5
  362. package/build/cjs/modules/valueTypes.js +1 -3
  363. package/build/cjs/modules/visTypeToLayoutType.js +0 -5
  364. package/build/cjs/modules/visTypes.js +1 -27
  365. package/build/cjs/visualizations/config/adapters/dhis_dhis/index.js +2 -8
  366. package/build/cjs/visualizations/config/adapters/dhis_dhis/subtitle/__tests__/index.spec.js +0 -3
  367. package/build/cjs/visualizations/config/adapters/dhis_dhis/subtitle/__tests__/singleValue.spec.js +0 -2
  368. package/build/cjs/visualizations/config/adapters/dhis_dhis/subtitle/index.js +0 -11
  369. package/build/cjs/visualizations/config/adapters/dhis_dhis/subtitle/singleValue.js +0 -3
  370. package/build/cjs/visualizations/config/adapters/dhis_dhis/title/__tests__/index.spec.js +0 -3
  371. package/build/cjs/visualizations/config/adapters/dhis_dhis/title/__tests__/singleValue.spec.js +0 -2
  372. package/build/cjs/visualizations/config/adapters/dhis_dhis/title/index.js +0 -10
  373. package/build/cjs/visualizations/config/adapters/dhis_dhis/title/singleValue.js +0 -4
  374. package/build/cjs/visualizations/config/adapters/dhis_dhis/type.js +0 -3
  375. package/build/cjs/visualizations/config/adapters/dhis_dhis/value/index.js +3 -7
  376. package/build/cjs/visualizations/config/adapters/dhis_highcharts/addTrendLines.js +30 -113
  377. package/build/cjs/visualizations/config/adapters/dhis_highcharts/axis.js +6 -37
  378. package/build/cjs/visualizations/config/adapters/dhis_highcharts/chart.js +0 -5
  379. package/build/cjs/visualizations/config/adapters/dhis_highcharts/customAxes.js +8 -10
  380. package/build/cjs/visualizations/config/adapters/dhis_highcharts/getAxisTitle.js +1 -8
  381. package/build/cjs/visualizations/config/adapters/dhis_highcharts/getCategories.js +0 -3
  382. package/build/cjs/visualizations/config/adapters/dhis_highcharts/getCumulativeData.js +6 -15
  383. package/build/cjs/visualizations/config/adapters/dhis_highcharts/getFormatter.js +0 -3
  384. package/build/cjs/visualizations/config/adapters/dhis_highcharts/getScatterData.js +0 -2
  385. package/build/cjs/visualizations/config/adapters/dhis_highcharts/getSortedConfig.js +7 -19
  386. package/build/cjs/visualizations/config/adapters/dhis_highcharts/getStackedData.js +0 -4
  387. package/build/cjs/visualizations/config/adapters/dhis_highcharts/getSteps.js +0 -3
  388. package/build/cjs/visualizations/config/adapters/dhis_highcharts/getTextAlignOption.js +0 -7
  389. package/build/cjs/visualizations/config/adapters/dhis_highcharts/getTrimmedConfig.js +4 -31
  390. package/build/cjs/visualizations/config/adapters/dhis_highcharts/getTwoCategorySplitSerieData.js +0 -2
  391. package/build/cjs/visualizations/config/adapters/dhis_highcharts/index.js +21 -56
  392. package/build/cjs/visualizations/config/adapters/dhis_highcharts/legend.js +1 -8
  393. package/build/cjs/visualizations/config/adapters/dhis_highcharts/legendSet.js +5 -14
  394. package/build/cjs/visualizations/config/adapters/dhis_highcharts/noData.js +0 -1
  395. package/build/cjs/visualizations/config/adapters/dhis_highcharts/pane/gauge.js +0 -1
  396. package/build/cjs/visualizations/config/adapters/dhis_highcharts/pane/index.js +0 -5
  397. package/build/cjs/visualizations/config/adapters/dhis_highcharts/plotOptions.js +1 -15
  398. package/build/cjs/visualizations/config/adapters/dhis_highcharts/series/gauge.js +0 -5
  399. package/build/cjs/visualizations/config/adapters/dhis_highcharts/series/index.js +13 -48
  400. package/build/cjs/visualizations/config/adapters/dhis_highcharts/series/pie.js +0 -1
  401. package/build/cjs/visualizations/config/adapters/dhis_highcharts/series/scatter.js +9 -11
  402. package/build/cjs/visualizations/config/adapters/dhis_highcharts/subtitle/gauge.js +0 -3
  403. package/build/cjs/visualizations/config/adapters/dhis_highcharts/subtitle/index.js +3 -18
  404. package/build/cjs/visualizations/config/adapters/dhis_highcharts/title/index.js +1 -18
  405. package/build/cjs/visualizations/config/adapters/dhis_highcharts/title/scatter.js +1 -5
  406. package/build/cjs/visualizations/config/adapters/dhis_highcharts/title/yearOverYear.js +0 -6
  407. package/build/cjs/visualizations/config/adapters/dhis_highcharts/type.js +0 -9
  408. package/build/cjs/visualizations/config/adapters/dhis_highcharts/xAxis/index.js +1 -28
  409. package/build/cjs/visualizations/config/adapters/dhis_highcharts/xAxis/radar.js +0 -11
  410. package/build/cjs/visualizations/config/adapters/dhis_highcharts/xAxis/scatter.js +0 -12
  411. package/build/cjs/visualizations/config/adapters/dhis_highcharts/xAxis/twoCategory.js +4 -11
  412. package/build/cjs/visualizations/config/adapters/dhis_highcharts/xAxis/yearOnYear.js +0 -11
  413. package/build/cjs/visualizations/config/adapters/dhis_highcharts/yAxis/gauge.js +3 -28
  414. package/build/cjs/visualizations/config/adapters/dhis_highcharts/yAxis/index.js +8 -37
  415. package/build/cjs/visualizations/config/adapters/index.js +0 -4
  416. package/build/cjs/visualizations/config/generators/dhis/index.js +0 -8
  417. package/build/cjs/visualizations/config/generators/dhis/singleValue.js +41 -70
  418. package/build/cjs/visualizations/config/generators/highcharts/index.js +9 -24
  419. package/build/cjs/visualizations/config/generators/index.js +0 -4
  420. package/build/cjs/visualizations/config/index.js +9 -22
  421. package/build/cjs/visualizations/config/validators/dhis/index.js +0 -1
  422. package/build/cjs/visualizations/config/validators/index.js +0 -4
  423. package/build/cjs/visualizations/index.js +0 -10
  424. package/build/cjs/visualizations/store/adapters/dhis_dhis/index.js +3 -13
  425. package/build/cjs/visualizations/store/adapters/dhis_dhis/singleValue.js +0 -1
  426. package/build/cjs/visualizations/store/adapters/dhis_highcharts/gauge.js +0 -1
  427. package/build/cjs/visualizations/store/adapters/dhis_highcharts/index.js +8 -26
  428. package/build/cjs/visualizations/store/adapters/dhis_highcharts/pie.js +0 -2
  429. package/build/cjs/visualizations/store/adapters/dhis_highcharts/twoCategory.js +3 -6
  430. package/build/cjs/visualizations/store/adapters/dhis_highcharts/yearOnYear.js +3 -4
  431. package/build/cjs/visualizations/store/adapters/index.js +0 -4
  432. package/build/cjs/visualizations/store/index.js +2 -12
  433. package/build/cjs/visualizations/store/validators/dhis/index.js +6 -22
  434. package/build/cjs/visualizations/store/validators/index.js +0 -4
  435. package/build/cjs/visualizations/util/__tests__/getFilterText.spec.js +0 -2
  436. package/build/cjs/visualizations/util/axes.js +0 -2
  437. package/build/cjs/visualizations/util/axisId.js +1 -3
  438. package/build/cjs/visualizations/util/colors/colorSets.js +0 -4
  439. package/build/cjs/visualizations/util/colors/gradientColorGenerator.js +3 -10
  440. package/build/cjs/visualizations/util/colors/index.js +0 -3
  441. package/build/cjs/visualizations/util/getFilterText.js +4 -13
  442. package/build/es/__demo__/DimensionsPanel.stories.js +0 -2
  443. package/build/es/__demo__/FileMenu.stories.js +2 -1
  444. package/build/es/__demo__/Filter.stories.js +0 -5
  445. package/build/es/__demo__/OpenFileDialog.stories.js +1 -3
  446. package/build/es/__demo__/OrgUnitDimension.stories.js +1 -3
  447. package/build/es/__demo__/PivotTable.stories.js +100 -57
  448. package/build/es/__demo__/Toolbar.stories.js +0 -2
  449. package/build/es/__fixtures__/fixtures.js +0 -5
  450. package/build/es/api/__tests__/dimensions.spec.js +0 -2
  451. package/build/es/api/analytics/Analytics.js +2 -6
  452. package/build/es/api/analytics/AnalyticsAggregate.js +3 -7
  453. package/build/es/api/analytics/AnalyticsBase.js +8 -17
  454. package/build/es/api/analytics/AnalyticsEnrollments.js +1 -3
  455. package/build/es/api/analytics/AnalyticsEvents.js +4 -9
  456. package/build/es/api/analytics/AnalyticsRequest.js +16 -27
  457. package/build/es/api/analytics/AnalyticsRequestBase.js +8 -25
  458. package/build/es/api/analytics/AnalyticsRequestDimensionsMixin.js +4 -14
  459. package/build/es/api/analytics/AnalyticsRequestFiltersMixin.js +4 -14
  460. package/build/es/api/analytics/AnalyticsRequestPropertiesMixin.js +57 -138
  461. package/build/es/api/analytics/AnalyticsResponse.js +21 -41
  462. package/build/es/api/analytics/AnalyticsResponseHeader.js +0 -5
  463. package/build/es/api/analytics/__mocks__/DataEngine.js +0 -4
  464. package/build/es/api/analytics/__tests__/AnalyticsAggregate.spec.js +11 -1
  465. package/build/es/api/analytics/__tests__/AnalyticsRequest.spec.js +17 -15
  466. package/build/es/api/analytics/__tests__/AnalyticsRequestBase.spec.js +4 -6
  467. package/build/es/api/analytics/__tests__/AnalyticsResponse.spec.js +3 -1
  468. package/build/es/api/analytics/__tests__/AnalyticsResponseHeader.spec.js +2 -1
  469. package/build/es/api/analytics/utils.js +1 -1
  470. package/build/es/api/dimensions.js +43 -78
  471. package/build/es/api/index.js +1 -0
  472. package/build/es/api/organisationUnits.js +5 -4
  473. package/build/es/assets/AssignedCategoriesIcon.js +0 -2
  474. package/build/es/assets/DynamicDimensionIcon.js +0 -2
  475. package/build/es/assets/FormulaIcon.js +0 -2
  476. package/build/es/components/AboutAOUnit/AboutAOUnit.js +19 -31
  477. package/build/es/components/AboutAOUnit/styles/AboutAOUnit.style.js +1 -1
  478. package/build/es/components/CachedDataQueryProvider.js +0 -7
  479. package/build/es/components/DataDimension/Calculation/CalculationModal.js +26 -54
  480. package/build/es/components/DataDimension/Calculation/DataElementOption.js +6 -10
  481. package/build/es/components/DataDimension/Calculation/DataElementSelector.js +16 -35
  482. package/build/es/components/DataDimension/Calculation/DndContext.js +6 -28
  483. package/build/es/components/DataDimension/Calculation/DraggingItem.js +3 -5
  484. package/build/es/components/DataDimension/Calculation/DropZone.js +1 -5
  485. package/build/es/components/DataDimension/Calculation/FormulaField.js +5 -8
  486. package/build/es/components/DataDimension/Calculation/FormulaItem.js +13 -26
  487. package/build/es/components/DataDimension/Calculation/MathOperatorSelector.js +4 -6
  488. package/build/es/components/DataDimension/Calculation/Operator.js +5 -9
  489. package/build/es/components/DataDimension/Calculation/styles/CalculationModal.style.js +1 -1
  490. package/build/es/components/DataDimension/Calculation/styles/DataElementOption.style.js +1 -1
  491. package/build/es/components/DataDimension/Calculation/styles/DataElementSelector.style.js +1 -1
  492. package/build/es/components/DataDimension/Calculation/styles/DraggingItem.style.js +1 -1
  493. package/build/es/components/DataDimension/Calculation/styles/DropZone.style.js +1 -1
  494. package/build/es/components/DataDimension/Calculation/styles/FormulaField.style.js +1 -1
  495. package/build/es/components/DataDimension/Calculation/styles/FormulaItem.style.js +1 -1
  496. package/build/es/components/DataDimension/Calculation/styles/MathOperatorSelector.style.js +1 -1
  497. package/build/es/components/DataDimension/Calculation/styles/Operator.style.js +1 -1
  498. package/build/es/components/DataDimension/DataDimension.js +1 -5
  499. package/build/es/components/DataDimension/DataTypeSelector.js +3 -6
  500. package/build/es/components/DataDimension/DetailSelector.js +2 -4
  501. package/build/es/components/DataDimension/GroupSelector.js +7 -12
  502. package/build/es/components/DataDimension/ItemSelector.js +45 -74
  503. package/build/es/components/DataDimension/MetricSelector.js +3 -3
  504. package/build/es/components/DataDimension/styles/DataTypeSelector.style.js +1 -1
  505. package/build/es/components/DataDimension/styles/DetailSelector.style.js +1 -1
  506. package/build/es/components/DataDimension/styles/GroupSelector.style.js +1 -1
  507. package/build/es/components/DataDimension/styles/MetricSelector.style.js +1 -1
  508. package/build/es/components/DimensionMenu.js +18 -24
  509. package/build/es/components/DimensionsPanel/DimensionsPanel.js +5 -10
  510. package/build/es/components/DimensionsPanel/List/DimensionItem.js +11 -21
  511. package/build/es/components/DimensionsPanel/List/DimensionList.js +11 -21
  512. package/build/es/components/DimensionsPanel/List/OptionsButton.js +0 -2
  513. package/build/es/components/DimensionsPanel/List/RecommendedIcon.js +0 -2
  514. package/build/es/components/DimensionsPanel/List/__tests__/DimensionItem.spec.js +0 -3
  515. package/build/es/components/DimensionsPanel/List/styles/DimensionList.style.js +2 -2
  516. package/build/es/components/DimensionsPanel/__tests__/DimensionsPanel.spec.js +0 -3
  517. package/build/es/components/DimensionsPanel/styles/DimensionsPanel.style.js +1 -1
  518. package/build/es/components/DynamicDimension/DynamicDimension.js +4 -10
  519. package/build/es/components/DynamicDimension/ItemSelector.js +15 -29
  520. package/build/es/components/DynamicDimension/styles/DynamicDimension.style.js +1 -1
  521. package/build/es/components/FileMenu/DeleteDialog.js +0 -2
  522. package/build/es/components/FileMenu/FileMenu.js +0 -12
  523. package/build/es/components/FileMenu/FileMenu.styles.js +2 -2
  524. package/build/es/components/FileMenu/GetLinkDialog.js +5 -4
  525. package/build/es/components/FileMenu/GetLinkDialog.styles.js +1 -1
  526. package/build/es/components/FileMenu/RenameDialog.js +1 -5
  527. package/build/es/components/FileMenu/SaveAsDialog.js +3 -3
  528. package/build/es/components/FileMenu/__tests__/DeleteDialog.spec.js +1 -4
  529. package/build/es/components/FileMenu/__tests__/FileMenu.spec.js +28 -20
  530. package/build/es/components/FileMenu/__tests__/GetLinkDialog.spec.js +0 -3
  531. package/build/es/components/FileMenu/__tests__/RenameDialog.spec.js +1 -4
  532. package/build/es/components/FileMenu/__tests__/SaveAsDialog.spec.js +1 -4
  533. package/build/es/components/FileMenu/utils.js +4 -10
  534. package/build/es/components/Filter/Filter.js +1 -3
  535. package/build/es/components/Filter/__tests__/Filter.spec.js +0 -3
  536. package/build/es/components/Filter/styles/Filter.style.js +1 -1
  537. package/build/es/components/Interpretations/InterpretationModal/Comment.js +0 -2
  538. package/build/es/components/Interpretations/InterpretationModal/CommentAddForm.js +1 -1
  539. package/build/es/components/Interpretations/InterpretationModal/CommentDeleteButton.js +1 -3
  540. package/build/es/components/Interpretations/InterpretationModal/CommentUpdateForm.js +2 -2
  541. package/build/es/components/Interpretations/InterpretationModal/InterpretationModal.js +2 -13
  542. package/build/es/components/Interpretations/InterpretationModal/InterpretationThread.js +0 -3
  543. package/build/es/components/Interpretations/InterpretationModal/useModalContentWidth.js +0 -3
  544. package/build/es/components/Interpretations/InterpretationsUnit/InterpretationForm.js +2 -2
  545. package/build/es/components/Interpretations/InterpretationsUnit/InterpretationList.js +1 -8
  546. package/build/es/components/Interpretations/InterpretationsUnit/InterpretationsUnit.js +2 -2
  547. package/build/es/components/Interpretations/common/Interpretation/InterpretationDeleteButton.js +0 -2
  548. package/build/es/components/Interpretations/common/Interpretation/InterpretationSharingLink.js +1 -3
  549. package/build/es/components/Interpretations/common/Interpretation/InterpretationUpdateForm.js +1 -1
  550. package/build/es/components/Interpretations/common/Interpretation/useLike.js +1 -5
  551. package/build/es/components/Interpretations/common/Message/Message.js +1 -3
  552. package/build/es/components/Interpretations/common/Message/MessageButtonStrip.js +1 -3
  553. package/build/es/components/Interpretations/common/Message/MessageEditorContainer.js +1 -3
  554. package/build/es/components/Interpretations/common/Message/MessageIconButton.js +6 -8
  555. package/build/es/components/Interpretations/common/Message/MessageInput.js +2 -4
  556. package/build/es/components/Interpretations/common/Message/MessageStatsBar.js +1 -3
  557. package/build/es/components/Interpretations/common/RichTextEditor/RichTextEditor.js +15 -23
  558. package/build/es/components/Interpretations/common/RichTextEditor/markdownHandler.js +4 -19
  559. package/build/es/components/Interpretations/common/RichTextEditor/styles/RichTextEditor.style.js +3 -3
  560. package/build/es/components/Interpretations/common/UserMention/UserList.js +1 -2
  561. package/build/es/components/Interpretations/common/UserMention/UserMentionWrapper.js +18 -33
  562. package/build/es/components/Interpretations/common/UserMention/styles/UserMentionWrapper.style.js +1 -2
  563. package/build/es/components/Interpretations/common/UserMention/useUserSearchResults.js +1 -2
  564. package/build/es/components/LegendKey/LegendKey.js +9 -11
  565. package/build/es/components/LegendKey/styles/LegendKey.style.js +1 -1
  566. package/build/es/components/OfflineTooltip.js +1 -3
  567. package/build/es/components/OpenFileDialog/CreatedByFilter.js +3 -1
  568. package/build/es/components/OpenFileDialog/CustomSelectOption.js +2 -4
  569. package/build/es/components/OpenFileDialog/OpenFileDialog.js +29 -45
  570. package/build/es/components/OpenFileDialog/OpenFileDialog.styles.js +1 -1
  571. package/build/es/components/OpenFileDialog/styles/CustomSelectOption.style.js +1 -1
  572. package/build/es/components/Options/VisualizationOptions.js +0 -8
  573. package/build/es/components/Options/styles/VisualizationOptions.style.js +11 -12
  574. package/build/es/components/OrgUnitDimension/OrgUnitDimension.js +12 -31
  575. package/build/es/components/OrgUnitDimension/styles/OrgUnitDimension.style.js +1 -1
  576. package/build/es/components/PeriodDimension/FixedPeriodFilter.js +5 -7
  577. package/build/es/components/PeriodDimension/FixedPeriodSelect.js +5 -17
  578. package/build/es/components/PeriodDimension/PeriodDimension.js +0 -4
  579. package/build/es/components/PeriodDimension/PeriodTransfer.js +12 -25
  580. package/build/es/components/PeriodDimension/RelativePeriodFilter.js +2 -4
  581. package/build/es/components/PeriodDimension/__tests__/FixedPeriodSingleSelect.spec.js +0 -3
  582. package/build/es/components/PeriodDimension/__tests__/PeriodDimension.spec.js +0 -3
  583. package/build/es/components/PeriodDimension/__tests__/PeriodSelector.spec.js +0 -3
  584. package/build/es/components/PeriodDimension/__tests__/fixedPeriods.spec.js +2 -1
  585. package/build/es/components/PeriodDimension/styles/FixedPeriodSelect.style.js +1 -1
  586. package/build/es/components/PeriodDimension/styles/PeriodFilter.style.js +1 -1
  587. package/build/es/components/PeriodDimension/utils/fixedPeriods.js +2 -23
  588. package/build/es/components/PeriodDimension/utils/relativePeriods.js +0 -11
  589. package/build/es/components/PivotTable/PivotTable.js +0 -2
  590. package/build/es/components/PivotTable/PivotTableCell.js +4 -6
  591. package/build/es/components/PivotTable/PivotTableColumnHeaderCell.js +4 -7
  592. package/build/es/components/PivotTable/PivotTableContainer.js +2 -2
  593. package/build/es/components/PivotTable/PivotTableDimensionLabelCell.js +4 -9
  594. package/build/es/components/PivotTable/PivotTableEmptyCell.js +3 -4
  595. package/build/es/components/PivotTable/PivotTableRowHeaderCell.js +2 -2
  596. package/build/es/components/PivotTable/PivotTableSortIcon.js +2 -2
  597. package/build/es/components/PivotTable/PivotTableTitleRow.js +2 -2
  598. package/build/es/components/PivotTable/PivotTableTitleRows.js +0 -1
  599. package/build/es/components/PivotTable/PivotTableValueCell.js +4 -6
  600. package/build/es/components/PivotTable/styles/PivotTable.style.js +3 -3
  601. package/build/es/components/Toolbar/HoverMenuBar/HoverMenuBar.js +0 -7
  602. package/build/es/components/Toolbar/HoverMenuBar/HoverMenuDropdown.js +1 -1
  603. package/build/es/components/Toolbar/HoverMenuBar/HoverMenuList.js +1 -7
  604. package/build/es/components/Toolbar/HoverMenuBar/HoverMenuListItem.js +4 -9
  605. package/build/es/components/Toolbar/HoverMenuBar/HoverMenuListItem.styles.js +1 -1
  606. package/build/es/components/Toolbar/HoverMenuBar/__tests__/HoverMenuBar.spec.js +0 -2
  607. package/build/es/components/Toolbar/HoverMenuBar/__tests__/HoverMenuDropdown.spec.js +1 -0
  608. package/build/es/components/Toolbar/HoverMenuBar/__tests__/HoverMenuList.spec.js +2 -2
  609. package/build/es/components/Toolbar/HoverMenuBar/__tests__/HoverMenuListItem.spec.js +1 -0
  610. package/build/es/components/Toolbar/InterpretationsAndDetailsToggler.js +1 -1
  611. package/build/es/components/Toolbar/MenuButton.styles.js +1 -1
  612. package/build/es/components/Toolbar/Toolbar.js +1 -1
  613. package/build/es/components/Toolbar/ToolbarSidebar.js +1 -1
  614. package/build/es/components/Toolbar/UpdateButton.js +2 -2
  615. package/build/es/components/Toolbar/__tests__/InterpretationsAndDetailsToggler.spec.js +0 -1
  616. package/build/es/components/Toolbar/__tests__/UpdateButton.spec.js +0 -1
  617. package/build/es/components/TransferOption.js +7 -11
  618. package/build/es/components/TranslationDialog/TranslationModal/LocalesSelect.js +2 -3
  619. package/build/es/components/TranslationDialog/TranslationModal/TranslationForm.js +3 -15
  620. package/build/es/components/TranslationDialog/TranslationModal/TranslationModalActions.js +0 -2
  621. package/build/es/components/TranslationDialog/TranslationModal/useTranslationsResults.js +1 -1
  622. package/build/es/components/VisTypeIcon.js +0 -17
  623. package/build/es/components/styles/DimensionSelector.style.js +1 -1
  624. package/build/es/components/styles/TransferOption.style.js +1 -1
  625. package/build/es/index.js +53 -19
  626. package/build/es/locales/es/translations.json +34 -34
  627. package/build/es/locales/nl/translations.json +1 -1
  628. package/build/es/modules/__tests__/expressions.spec.js +4 -3
  629. package/build/es/modules/__tests__/getColorByValueFromLegendSet.spec.js +1 -1
  630. package/build/es/modules/__tests__/renderValue.spec.js +19 -10
  631. package/build/es/modules/axis.js +1 -8
  632. package/build/es/modules/dataTypes.js +0 -3
  633. package/build/es/modules/dimensionListItem.js +0 -12
  634. package/build/es/modules/expressions.js +2 -6
  635. package/build/es/modules/fontStyle.js +16 -16
  636. package/build/es/modules/getAdaptedUiLayoutByType.js +7 -22
  637. package/build/es/modules/getOuLevelAndGroupText.js +0 -10
  638. package/build/es/modules/hash.js +0 -3
  639. package/build/es/modules/layout/__tests__/layoutHasDataDimension.spec.js +2 -1
  640. package/build/es/modules/layout/__tests__/layoutHasDimension.spec.js +2 -1
  641. package/build/es/modules/layout/__tests__/layoutHasDynamicDimension.spec.js +2 -1
  642. package/build/es/modules/layout/__tests__/layoutHasPeriodDimension.spec.js +2 -1
  643. package/build/es/modules/layout/axis.js +6 -2
  644. package/build/es/modules/layout/dimension.js +6 -2
  645. package/build/es/modules/layout/dimensionGetId.js +1 -2
  646. package/build/es/modules/layout/dimensionIsValid.js +0 -5
  647. package/build/es/modules/layout/item.js +6 -2
  648. package/build/es/modules/layout/itemIsValid.js +0 -1
  649. package/build/es/modules/layout/layoutGetAxisIdDimensionIdsObject.js +0 -1
  650. package/build/es/modules/layout/layoutReplaceDimension.js +0 -3
  651. package/build/es/modules/layout/testResources.js +12 -4
  652. package/build/es/modules/layoutUiRules/__tests__/rules.spec.js +8 -12
  653. package/build/es/modules/layoutUiRules/rules.js +11 -11
  654. package/build/es/modules/layoutUiRules/rulesHelper.js +3 -1
  655. package/build/es/modules/layoutUiRules/rulesUtils.js +6 -4
  656. package/build/es/modules/legends.js +0 -2
  657. package/build/es/modules/ouIdHelper/index.js +2 -8
  658. package/build/es/modules/ouLevelUtils/index.js +0 -7
  659. package/build/es/modules/outliers/index.js +6 -17
  660. package/build/es/modules/outliers/iqr.js +0 -9
  661. package/build/es/modules/outliers/modZScore.js +13 -9
  662. package/build/es/modules/outliers/normalization.js +3 -5
  663. package/build/es/modules/outliers/xyStats.js +0 -2
  664. package/build/es/modules/outliers/zScore.js +0 -2
  665. package/build/es/modules/pivotTable/AdaptiveClippingController.js +4 -29
  666. package/build/es/modules/pivotTable/PivotTableEngine.js +20 -179
  667. package/build/es/modules/pivotTable/applyLegendSet.js +0 -19
  668. package/build/es/modules/pivotTable/clipAxis.js +3 -2
  669. package/build/es/modules/pivotTable/clipPartitionedAxis.js +0 -6
  670. package/build/es/modules/pivotTable/getHeaderForDisplay.js +0 -7
  671. package/build/es/modules/pivotTable/isColorBright.js +0 -4
  672. package/build/es/modules/pivotTable/measureText.js +5 -18
  673. package/build/es/modules/pivotTable/parseValue.js +0 -2
  674. package/build/es/modules/pivotTable/useParentSize.js +0 -5
  675. package/build/es/modules/pivotTable/useScrollPosition.js +0 -2
  676. package/build/es/modules/pivotTable/useSortableColumns.js +0 -3
  677. package/build/es/modules/predefinedDimensions.js +2 -1
  678. package/build/es/modules/renderValue.js +0 -15
  679. package/build/es/modules/valueTypes.js +1 -0
  680. package/build/es/modules/visTypes.js +1 -3
  681. package/build/es/visualizations/config/adapters/dhis_dhis/index.js +2 -2
  682. package/build/es/visualizations/config/adapters/dhis_dhis/subtitle/index.js +0 -7
  683. package/build/es/visualizations/config/adapters/dhis_dhis/title/index.js +0 -6
  684. package/build/es/visualizations/config/adapters/dhis_dhis/title/singleValue.js +0 -1
  685. package/build/es/visualizations/config/adapters/dhis_dhis/type.js +0 -1
  686. package/build/es/visualizations/config/adapters/dhis_dhis/value/index.js +3 -3
  687. package/build/es/visualizations/config/adapters/dhis_highcharts/addTrendLines.js +30 -101
  688. package/build/es/visualizations/config/adapters/dhis_highcharts/axis.js +6 -19
  689. package/build/es/visualizations/config/adapters/dhis_highcharts/chart.js +0 -2
  690. package/build/es/visualizations/config/adapters/dhis_highcharts/customAxes.js +8 -7
  691. package/build/es/visualizations/config/adapters/dhis_highcharts/getAxisTitle.js +1 -3
  692. package/build/es/visualizations/config/adapters/dhis_highcharts/getCumulativeData.js +6 -11
  693. package/build/es/visualizations/config/adapters/dhis_highcharts/getScatterData.js +0 -1
  694. package/build/es/visualizations/config/adapters/dhis_highcharts/getSortedConfig.js +7 -12
  695. package/build/es/visualizations/config/adapters/dhis_highcharts/getStackedData.js +0 -2
  696. package/build/es/visualizations/config/adapters/dhis_highcharts/getTextAlignOption.js +0 -4
  697. package/build/es/visualizations/config/adapters/dhis_highcharts/getTrimmedConfig.js +4 -26
  698. package/build/es/visualizations/config/adapters/dhis_highcharts/getTwoCategorySplitSerieData.js +0 -1
  699. package/build/es/visualizations/config/adapters/dhis_highcharts/index.js +21 -32
  700. package/build/es/visualizations/config/adapters/dhis_highcharts/legend.js +1 -4
  701. package/build/es/visualizations/config/adapters/dhis_highcharts/legendSet.js +5 -6
  702. package/build/es/visualizations/config/adapters/dhis_highcharts/pane/index.js +0 -1
  703. package/build/es/visualizations/config/adapters/dhis_highcharts/plotOptions.js +1 -9
  704. package/build/es/visualizations/config/adapters/dhis_highcharts/series/gauge.js +0 -1
  705. package/build/es/visualizations/config/adapters/dhis_highcharts/series/index.js +13 -32
  706. package/build/es/visualizations/config/adapters/dhis_highcharts/series/scatter.js +9 -6
  707. package/build/es/visualizations/config/adapters/dhis_highcharts/subtitle/gauge.js +2 -1
  708. package/build/es/visualizations/config/adapters/dhis_highcharts/subtitle/index.js +3 -10
  709. package/build/es/visualizations/config/adapters/dhis_highcharts/title/index.js +1 -9
  710. package/build/es/visualizations/config/adapters/dhis_highcharts/title/scatter.js +1 -2
  711. package/build/es/visualizations/config/adapters/dhis_highcharts/title/yearOverYear.js +0 -3
  712. package/build/es/visualizations/config/adapters/dhis_highcharts/type.js +0 -7
  713. package/build/es/visualizations/config/adapters/dhis_highcharts/xAxis/index.js +1 -11
  714. package/build/es/visualizations/config/adapters/dhis_highcharts/xAxis/radar.js +0 -3
  715. package/build/es/visualizations/config/adapters/dhis_highcharts/xAxis/scatter.js +0 -1
  716. package/build/es/visualizations/config/adapters/dhis_highcharts/xAxis/twoCategory.js +4 -3
  717. package/build/es/visualizations/config/adapters/dhis_highcharts/xAxis/yearOnYear.js +0 -4
  718. package/build/es/visualizations/config/adapters/dhis_highcharts/yAxis/gauge.js +3 -14
  719. package/build/es/visualizations/config/adapters/dhis_highcharts/yAxis/index.js +8 -23
  720. package/build/es/visualizations/config/generators/dhis/index.js +0 -4
  721. package/build/es/visualizations/config/generators/dhis/singleValue.js +42 -67
  722. package/build/es/visualizations/config/generators/highcharts/index.js +11 -15
  723. package/build/es/visualizations/config/index.js +9 -15
  724. package/build/es/visualizations/config/validators/index.js +0 -2
  725. package/build/es/visualizations/index.js +0 -6
  726. package/build/es/visualizations/store/adapters/dhis_dhis/index.js +3 -9
  727. package/build/es/visualizations/store/adapters/dhis_highcharts/index.js +8 -17
  728. package/build/es/visualizations/store/adapters/dhis_highcharts/pie.js +0 -1
  729. package/build/es/visualizations/store/adapters/dhis_highcharts/twoCategory.js +5 -4
  730. package/build/es/visualizations/store/adapters/dhis_highcharts/yearOnYear.js +3 -3
  731. package/build/es/visualizations/store/index.js +2 -8
  732. package/build/es/visualizations/store/validators/dhis/index.js +6 -17
  733. package/build/es/visualizations/store/validators/index.js +0 -2
  734. package/build/es/visualizations/util/axisId.js +1 -1
  735. package/build/es/visualizations/util/colors/gradientColorGenerator.js +3 -8
  736. package/build/es/visualizations/util/getFilterText.js +4 -7
  737. package/package.json +6 -7
@@ -4,27 +4,18 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.PivotTableEngine = void 0;
7
-
8
7
  var _times = _interopRequireDefault(require("lodash/times"));
9
-
10
8
  var _dataTypes = require("../dataTypes.js");
11
-
12
9
  var _predefinedDimensions = require("../predefinedDimensions.js");
13
-
14
10
  var _renderValue = require("../renderValue.js");
15
-
16
11
  var _valueTypes = require("../valueTypes.js");
17
-
18
12
  var _AdaptiveClippingController = require("./AdaptiveClippingController.js");
19
-
20
13
  var _parseValue = require("./parseValue.js");
21
-
22
14
  var _pivotTableConstants = require("./pivotTableConstants.js");
23
-
24
15
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
-
26
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
27
-
16
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
17
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
18
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
28
19
  const dataFields = ['value', 'numerator', 'denominator', 'factor', 'multiplier', 'divisor'];
29
20
  const defaultOptions = {
30
21
  hideEmptyColumns: false,
@@ -40,9 +31,7 @@ const defaultVisualizationProps = {
40
31
  fontSize: _pivotTableConstants.FONT_SIZE_OPTION_NORMAL,
41
32
  displayDensity: _pivotTableConstants.DISPLAY_DENSITY_OPTION_NORMAL
42
33
  };
43
-
44
34
  const isDxDimension = dimensionItem => [_dataTypes.DIMENSION_TYPE_DATA, _dataTypes.DIMENSION_TYPE_DATA_ELEMENT_GROUP_SET].includes(dimensionItem.dimensionType);
45
-
46
35
  const countFromDisaggregates = list => {
47
36
  let count = 1;
48
37
  list.forEach(x => {
@@ -50,7 +39,6 @@ const countFromDisaggregates = list => {
50
39
  });
51
40
  return count;
52
41
  };
53
-
54
42
  const addSize = list => {
55
43
  const reversedList = list.slice().reverse();
56
44
  reversedList.forEach((level, idx) => {
@@ -59,22 +47,18 @@ const addSize = list => {
59
47
  level.size = lastLevel ? lastLevel.count * lastLevel.size : 1;
60
48
  });
61
49
  };
62
-
63
50
  const listByDimension = list => list.reduce((all, item) => {
64
51
  all[item.dimension] = item;
65
52
  return all;
66
53
  }, {});
67
-
68
54
  const sortByHierarchy = items => {
69
55
  items.sort((a, b) => {
70
56
  if (!a.hierarchy || !b.hierarchy) {
71
57
  return 0;
72
58
  }
73
-
74
59
  return a.hierarchy.join('/').localeCompare(b.hierarchy.join('/'));
75
60
  });
76
61
  };
77
-
78
62
  const buildDimensionLookup = (visualization, metadata, headers) => {
79
63
  const rows = visualization.rows.map(row => ({
80
64
  dimension: row.dimension,
@@ -96,7 +80,8 @@ const buildDimensionLookup = (visualization, metadata, headers) => {
96
80
  }));
97
81
  addSize(rows);
98
82
  addSize(columns);
99
- const allByDimension = { ...listByDimension(rows),
83
+ const allByDimension = {
84
+ ...listByDimension(rows),
100
85
  ...listByDimension(columns)
101
86
  };
102
87
  const headerDimensions = headers.map(header => allByDimension[header.name]);
@@ -107,11 +92,9 @@ const buildDimensionLookup = (visualization, metadata, headers) => {
107
92
  return out;
108
93
  }, {});
109
94
  const ouDimension = allByDimension[_predefinedDimensions.DIMENSION_ID_ORGUNIT];
110
-
111
95
  if (visualization.showHierarchy && metadata.ouNameHierarchy && ouDimension) {
112
96
  ouDimension.items.forEach(ou => {
113
97
  const hierarchy = metadata.ouNameHierarchy[ou.uid];
114
-
115
98
  if (hierarchy) {
116
99
  ou.hierarchy = hierarchy.split('/').filter(x => x.length);
117
100
  }
@@ -119,7 +102,6 @@ const buildDimensionLookup = (visualization, metadata, headers) => {
119
102
  sortByHierarchy(ouDimension.items);
120
103
  ouDimension.itemIds = ouDimension.items.map(item => item.uid);
121
104
  }
122
-
123
105
  return {
124
106
  rows,
125
107
  columns,
@@ -130,52 +112,40 @@ const buildDimensionLookup = (visualization, metadata, headers) => {
130
112
  dataHeaders
131
113
  };
132
114
  };
133
-
134
115
  const lookup = (dataRow, dimensionLookup, _ref) => {
135
116
  let {
136
117
  doColumnSubtotals,
137
118
  doRowSubtotals
138
119
  } = _ref;
139
120
  let row = 0;
140
-
141
121
  for (const headerIndex of dimensionLookup.rowHeaders) {
142
122
  const idx = dimensionLookup.headerDimensions[headerIndex].itemIds.indexOf(dataRow[headerIndex]);
143
-
144
123
  if (idx === -1) {
145
124
  return undefined;
146
125
  }
147
-
148
126
  const size = dimensionLookup.headerDimensions[headerIndex].size;
149
127
  row += idx * size;
150
128
  }
151
-
152
129
  if (doColumnSubtotals) {
153
130
  row += Math.floor(row / dimensionLookup.rows[0].size);
154
131
  }
155
-
156
132
  let column = 0;
157
-
158
133
  for (const headerIndex of dimensionLookup.columnHeaders) {
159
134
  const idx = dimensionLookup.headerDimensions[headerIndex].itemIds.indexOf(dataRow[headerIndex]);
160
-
161
135
  if (idx === -1) {
162
136
  return undefined;
163
137
  }
164
-
165
138
  const size = dimensionLookup.headerDimensions[headerIndex].size;
166
139
  column += idx * size;
167
140
  }
168
-
169
141
  if (doRowSubtotals) {
170
142
  column += Math.floor(column / dimensionLookup.columns[0].size);
171
143
  }
172
-
173
144
  return {
174
145
  column,
175
146
  row
176
147
  };
177
148
  };
178
-
179
149
  const applyTotalAggregationType = (_ref2, overrideTotalAggregationType) => {
180
150
  let {
181
151
  totalAggregationType,
@@ -185,48 +155,31 @@ const applyTotalAggregationType = (_ref2, overrideTotalAggregationType) => {
185
155
  multiplier,
186
156
  divisor
187
157
  } = _ref2;
188
-
189
158
  switch (overrideTotalAggregationType || totalAggregationType) {
190
159
  case _pivotTableConstants.AGGREGATE_TYPE_NA:
191
160
  return 'N/A';
192
-
193
161
  case _pivotTableConstants.AGGREGATE_TYPE_AVERAGE:
194
162
  return (numerator || value) * multiplier / (denominator * divisor || 1);
195
-
196
163
  case _pivotTableConstants.AGGREGATE_TYPE_SUM:
197
164
  default:
198
165
  return value;
199
166
  }
200
167
  };
201
-
202
168
  class PivotTableEngine {
203
169
  constructor(visualization, data, legendSets) {
204
170
  _defineProperty(this, "visualization", void 0);
205
-
206
171
  _defineProperty(this, "rawData", void 0);
207
-
208
172
  _defineProperty(this, "options", void 0);
209
-
210
173
  _defineProperty(this, "legendSets", void 0);
211
-
212
174
  _defineProperty(this, "dimensionLookup", void 0);
213
-
214
175
  _defineProperty(this, "adaptiveClippingController", void 0);
215
-
216
176
  _defineProperty(this, "columnDepth", 0);
217
-
218
177
  _defineProperty(this, "rowDepth", 0);
219
-
220
178
  _defineProperty(this, "height", 0);
221
-
222
179
  _defineProperty(this, "width", 0);
223
-
224
180
  _defineProperty(this, "data", []);
225
-
226
181
  _defineProperty(this, "rowMap", []);
227
-
228
182
  _defineProperty(this, "columnMap", []);
229
-
230
183
  this.visualization = Object.assign({}, defaultVisualizationProps, visualization);
231
184
  this.legendSets = (legendSets || []).reduce((sets, set) => {
232
185
  sets[set.id] = set;
@@ -234,7 +187,8 @@ class PivotTableEngine {
234
187
  }, {});
235
188
  this.rawData = data;
236
189
  this.dimensionLookup = buildDimensionLookup(this.visualization, this.rawData.metaData, this.rawData.headers);
237
- this.options = { ...defaultOptions,
190
+ this.options = {
191
+ ...defaultOptions,
238
192
  showColumnTotals: visualization.colTotals,
239
193
  showRowTotals: visualization.rowTotals,
240
194
  showColumnSubtotals: visualization.colSubTotals,
@@ -255,10 +209,8 @@ class PivotTableEngine {
255
209
  this.rowDepth = this.dimensionLookup.rows.length || (this.visualization.showDimensionLabels ? 1 : 0);
256
210
  this.buildMatrix();
257
211
  }
258
-
259
212
  getRaw(_ref3) {
260
213
  var _headers$find, _headers$find2;
261
-
262
214
  let {
263
215
  row,
264
216
  column
@@ -274,7 +226,6 @@ class PivotTableEngine {
274
226
  const headers = [...this.getRawRowHeader(row), ...this.getRawColumnHeader(column)];
275
227
  const peId = (_headers$find = headers.find(header => (header === null || header === void 0 ? void 0 : header.dimensionItemType) === _dataTypes.DIMENSION_TYPE_PERIOD)) === null || _headers$find === void 0 ? void 0 : _headers$find.uid;
276
228
  const ouId = (_headers$find2 = headers.find(header => (header === null || header === void 0 ? void 0 : header.dimensionItemType) === _dataTypes.DIMENSION_TYPE_ORGANISATION_UNIT)) === null || _headers$find2 === void 0 ? void 0 : _headers$find2.uid;
277
-
278
229
  if (!this.data[row] || !this.data[row][column]) {
279
230
  return {
280
231
  cellType,
@@ -283,29 +234,23 @@ class PivotTableEngine {
283
234
  peId
284
235
  };
285
236
  }
286
-
287
237
  const dataRow = this.data[row][column];
288
238
  let rawValue = cellType === _pivotTableConstants.CELL_TYPE_VALUE ? dataRow[this.dimensionLookup.dataHeaders.value] : dataRow.value;
289
239
  let renderedValue = rawValue;
290
240
  const valueType = (dxDimension === null || dxDimension === void 0 ? void 0 : dxDimension.valueType) || _valueTypes.VALUE_TYPE_TEXT;
291
-
292
241
  if (valueType === _valueTypes.VALUE_TYPE_NUMBER) {
293
242
  rawValue = (0, _parseValue.parseValue)(rawValue);
294
-
295
243
  switch (this.visualization.numberType) {
296
244
  case _pivotTableConstants.NUMBER_TYPE_ROW_PERCENTAGE:
297
245
  renderedValue = rawValue / this.percentageTotals[row].value;
298
246
  break;
299
-
300
247
  case _pivotTableConstants.NUMBER_TYPE_COLUMN_PERCENTAGE:
301
248
  renderedValue = rawValue / this.percentageTotals[column].value;
302
249
  break;
303
-
304
250
  default:
305
251
  break;
306
252
  }
307
253
  }
308
-
309
254
  renderedValue = (0, _renderValue.renderValue)(renderedValue, valueType, this.visualization);
310
255
  return {
311
256
  cellType,
@@ -318,25 +263,21 @@ class PivotTableEngine {
318
263
  peId
319
264
  };
320
265
  }
321
-
322
266
  get(_ref4) {
323
267
  let {
324
268
  row,
325
269
  column
326
270
  } = _ref4;
327
271
  const mappedRow = this.rowMap[row],
328
- mappedColumn = this.columnMap[column];
329
-
272
+ mappedColumn = this.columnMap[column];
330
273
  if (!mappedRow && mappedRow !== 0 || !mappedColumn && mappedColumn !== 0) {
331
274
  return undefined;
332
275
  }
333
-
334
276
  return this.getRaw({
335
277
  row: mappedRow,
336
278
  column: mappedColumn
337
279
  });
338
280
  }
339
-
340
281
  getRawCellType(_ref5) {
341
282
  let {
342
283
  row,
@@ -344,21 +285,16 @@ class PivotTableEngine {
344
285
  } = _ref5;
345
286
  const isRowTotal = this.doRowTotals && column === this.dataWidth - 1;
346
287
  const isColumnTotal = this.doColumnTotals && row === this.dataHeight - 1;
347
-
348
288
  if (isRowTotal || isColumnTotal) {
349
289
  return _pivotTableConstants.CELL_TYPE_TOTAL;
350
290
  }
351
-
352
291
  const isRowSubtotal = this.doRowSubtotals && (column + 1) % (this.dimensionLookup.columns[0].size + 1) === 0;
353
292
  const isColumnSubtotal = this.doColumnSubtotals && (row + 1) % (this.dimensionLookup.rows[0].size + 1) === 0;
354
-
355
293
  if (isRowSubtotal || isColumnSubtotal) {
356
294
  return _pivotTableConstants.CELL_TYPE_SUBTOTAL;
357
295
  }
358
-
359
296
  return _pivotTableConstants.CELL_TYPE_VALUE;
360
297
  }
361
-
362
298
  getCellType(_ref6) {
363
299
  let {
364
300
  row,
@@ -371,36 +307,28 @@ class PivotTableEngine {
371
307
  column
372
308
  });
373
309
  }
374
-
375
310
  getDimensionLabel(rowLevel, columnLevel) {
376
311
  const lastRowLevel = this.rowDepth - 1;
377
312
  const lastColumnLevel = this.columnDepth - 1;
378
-
379
313
  if (rowLevel !== lastRowLevel && columnLevel !== lastColumnLevel) {
380
314
  return null;
381
315
  }
382
-
383
316
  if (rowLevel === lastRowLevel && this.dimensionLookup.rows[lastRowLevel] && columnLevel === lastColumnLevel && this.dimensionLookup.columns[lastColumnLevel]) {
384
- return "".concat(this.dimensionLookup.rows[lastRowLevel].meta.name, " / ").concat(this.dimensionLookup.columns[lastColumnLevel].meta.name);
317
+ return `${this.dimensionLookup.rows[lastRowLevel].meta.name} / ${this.dimensionLookup.columns[lastColumnLevel].meta.name}`;
385
318
  }
386
-
387
319
  if (lastRowLevel === -1) {
388
320
  return this.dimensionLookup.columns[columnLevel].meta.name;
389
321
  }
390
-
391
322
  if (lastColumnLevel === -1) {
392
323
  return this.dimensionLookup.rows[rowLevel].meta.name;
393
324
  }
394
-
395
325
  if (rowLevel === lastRowLevel && this.dimensionLookup.columns[columnLevel]) {
396
326
  return this.dimensionLookup.columns[columnLevel].meta.name;
397
327
  }
398
-
399
328
  if (columnLevel === lastColumnLevel && this.dimensionLookup.rows[rowLevel]) {
400
329
  return this.dimensionLookup.rows[rowLevel].meta.name;
401
330
  }
402
331
  }
403
-
404
332
  getCellDxDimension(_ref7) {
405
333
  let {
406
334
  row,
@@ -411,23 +339,18 @@ class PivotTableEngine {
411
339
  column: this.columnMap[column]
412
340
  });
413
341
  }
414
-
415
342
  getRawCellDxDimension(_ref8) {
416
343
  let {
417
344
  row,
418
345
  column
419
346
  } = _ref8;
420
-
421
347
  if (!this.data[row]) {
422
348
  return undefined;
423
349
  }
424
-
425
350
  const cellValue = this.data[row][column];
426
-
427
351
  if (!cellValue) {
428
352
  return undefined;
429
353
  }
430
-
431
354
  if (!Array.isArray(cellValue)) {
432
355
  // This is a total cell
433
356
  return {
@@ -436,11 +359,9 @@ class PivotTableEngine {
436
359
  legendSet: undefined
437
360
  };
438
361
  }
439
-
440
362
  const rowHeaders = this.getRawRowHeader(row);
441
363
  const columnHeaders = this.getRawColumnHeader(column);
442
364
  const dxRowIndex = this.dimensionLookup.rows.findIndex(dim => dim.isDxDimension);
443
-
444
365
  if (rowHeaders.length && dxRowIndex !== -1) {
445
366
  return {
446
367
  valueType: rowHeaders[dxRowIndex].valueType,
@@ -448,90 +369,74 @@ class PivotTableEngine {
448
369
  legendSet: rowHeaders[dxRowIndex].legendSet
449
370
  };
450
371
  }
451
-
452
372
  const dxColumnIndex = this.dimensionLookup.columns.findIndex(dim => dim.isDxDimension);
453
-
454
373
  if (columnHeaders.length && dxColumnIndex !== -1) {
455
374
  return {
456
375
  valueType: columnHeaders[dxColumnIndex].valueType,
457
376
  totalAggregationType: columnHeaders[dxColumnIndex].totalAggregationType,
458
377
  legendSet: columnHeaders[dxColumnIndex].legendSet
459
378
  };
460
- } // Data is in Filter
461
- // TODO : This assumes the server ignores text types, we should confirm this is the case
462
-
379
+ }
463
380
 
381
+ // Data is in Filter
382
+ // TODO : This assumes the server ignores text types, we should confirm this is the case
464
383
  return {
465
384
  valueType: _valueTypes.VALUE_TYPE_NUMBER,
466
385
  totalAggregationType: _pivotTableConstants.AGGREGATE_TYPE_SUM
467
386
  };
468
387
  }
469
-
470
388
  rowIsEmpty(row) {
471
389
  return !this.data[row] || this.data[row].length === 0;
472
390
  }
473
-
474
391
  columnIsEmpty(column) {
475
392
  return !this.adaptiveClippingController.columns.sizes[column];
476
393
  }
477
-
478
394
  getRawColumnHeader(column) {
479
395
  if (this.doRowTotals && column === this.dataWidth - 1) {
480
396
  return (0, _times.default)(this.columnDepth - 1, () => undefined).concat([{
481
397
  name: 'Total'
482
398
  }]);
483
399
  }
484
-
485
400
  if (this.doRowSubtotals) {
486
401
  if ((column + 1) % (this.dimensionLookup.columns[0].size + 1) === 0) {
487
402
  return (0, _times.default)(this.columnDepth - 1, () => undefined).concat([{
488
403
  name: 'Subtotal'
489
404
  }]);
490
405
  }
491
-
492
406
  column -= Math.floor(column / (this.dimensionLookup.columns[0].size + 1));
493
407
  }
494
-
495
408
  return this.dimensionLookup.columns.map(dimension => {
496
409
  const itemIndex = Math.floor(column / dimension.size) % dimension.count;
497
410
  return dimension.items[itemIndex];
498
411
  });
499
412
  }
500
-
501
413
  getColumnHeader(column) {
502
414
  return this.getRawColumnHeader(this.columnMap[column]);
503
415
  }
504
-
505
416
  getRawRowHeader(row) {
506
417
  if (this.doColumnTotals && row === this.dataHeight - 1) {
507
418
  return (0, _times.default)(this.rowDepth - 1, () => undefined).concat([{
508
419
  name: 'Total'
509
420
  }]);
510
421
  }
511
-
512
422
  if (this.doColumnSubtotals) {
513
423
  if ((row + 1) % (this.dimensionLookup.rows[0].size + 1) === 0) {
514
424
  return (0, _times.default)(this.rowDepth - 1, () => undefined).concat([{
515
425
  name: 'Subtotal'
516
426
  }]);
517
427
  }
518
-
519
428
  row -= Math.floor(row / (this.dimensionLookup.rows[0].size + 1));
520
429
  }
521
-
522
430
  return this.dimensionLookup.rows.map(dimension => {
523
431
  const itemIndex = Math.floor(row / dimension.size) % dimension.count;
524
432
  return dimension.items[itemIndex];
525
433
  });
526
434
  }
527
-
528
435
  getRowHeader(row) {
529
436
  return this.getRawRowHeader(this.rowMap[row]);
530
437
  }
531
-
532
438
  getDependantTotalCells(_ref9) {
533
439
  var _this$dimensionLookup, _this$dimensionLookup2;
534
-
535
440
  let {
536
441
  row,
537
442
  column
@@ -589,7 +494,6 @@ class PivotTableEngine {
589
494
  combinedTotal
590
495
  };
591
496
  }
592
-
593
497
  addCellValueToTotals(pos, dataRow) {
594
498
  const totals = this.getDependantTotalCells(pos);
595
499
  const dxDimension = this.getRawCellDxDimension(pos);
@@ -597,7 +501,6 @@ class PivotTableEngine {
597
501
  if (!totalItem) {
598
502
  return;
599
503
  }
600
-
601
504
  this.data[totalItem.row] = this.data[totalItem.row] || [];
602
505
  this.data[totalItem.row][totalItem.column] = this.data[totalItem.row][totalItem.column] || {
603
506
  count: 0,
@@ -606,36 +509,29 @@ class PivotTableEngine {
606
509
  const totalCell = this.data[totalItem.row][totalItem.column];
607
510
  const currentAggType = dxDimension === null || dxDimension === void 0 ? void 0 : dxDimension.totalAggregationType;
608
511
  const previousAggType = totalCell.totalAggregationType || currentAggType;
609
-
610
512
  if (previousAggType && currentAggType !== previousAggType) {
611
513
  totalCell.totalAggregationType = _pivotTableConstants.AGGREGATE_TYPE_NA;
612
514
  } else {
613
515
  totalCell.totalAggregationType = currentAggType;
614
516
  }
615
-
616
517
  const currentValueType = dxDimension === null || dxDimension === void 0 ? void 0 : dxDimension.valueType;
617
518
  const previousValueType = totalCell.valueType;
618
-
619
519
  if (previousValueType && currentValueType !== previousValueType) {
620
520
  totalCell.valueType = _pivotTableConstants.AGGREGATE_TYPE_NA;
621
521
  } else {
622
522
  totalCell.valueType = currentValueType;
623
523
  }
624
-
625
524
  if ((dxDimension === null || dxDimension === void 0 ? void 0 : dxDimension.valueType) === _valueTypes.VALUE_TYPE_NUMBER) {
626
525
  dataFields.forEach(field => {
627
526
  const headerIndex = this.dimensionLookup.dataHeaders[field];
628
527
  const value = (0, _parseValue.parseValue)(dataRow[headerIndex]);
629
-
630
528
  if (value && !isNaN(value)) {
631
529
  totalCell[field] = (totalCell[field] || 0) + value;
632
530
  }
633
531
  });
634
532
  }
635
-
636
533
  totalCell.count += 1;
637
534
  });
638
-
639
535
  if (this.visualization.numberType === _pivotTableConstants.NUMBER_TYPE_ROW_PERCENTAGE) {
640
536
  if (!this.percentageTotals[pos.row]) {
641
537
  this.percentageTotals[pos.row] = {
@@ -643,17 +539,14 @@ class PivotTableEngine {
643
539
  totalCount: this.rawDataWidth
644
540
  };
645
541
  }
646
-
647
542
  const percentageTotal = this.percentageTotals[pos.row];
648
543
  dataFields.forEach(field => {
649
544
  const headerIndex = this.dimensionLookup.dataHeaders[field];
650
545
  const value = (0, _parseValue.parseValue)(dataRow[headerIndex]);
651
-
652
546
  if (value && !isNaN(value)) {
653
547
  percentageTotal[field] = (percentageTotal[field] || 0) + value;
654
548
  }
655
549
  });
656
-
657
550
  if (totals.columnSubtotal) {
658
551
  if (!this.percentageTotals[totals.columnSubtotal.row]) {
659
552
  this.percentageTotals[totals.columnSubtotal.row] = {
@@ -661,18 +554,15 @@ class PivotTableEngine {
661
554
  totalCount: this.rawDataWidth
662
555
  };
663
556
  }
664
-
665
557
  const percentageTotal = this.percentageTotals[totals.columnSubtotal.row];
666
558
  dataFields.forEach(field => {
667
559
  const headerIndex = this.dimensionLookup.dataHeaders[field];
668
560
  const value = (0, _parseValue.parseValue)(dataRow[headerIndex]);
669
-
670
561
  if (value && !isNaN(value)) {
671
562
  percentageTotal[field] = (percentageTotal[field] || 0) + value;
672
563
  }
673
564
  });
674
565
  }
675
-
676
566
  if (totals.columnTotal) {
677
567
  if (!this.percentageTotals[totals.columnTotal.row]) {
678
568
  this.percentageTotals[totals.columnTotal.row] = {
@@ -680,19 +570,16 @@ class PivotTableEngine {
680
570
  totalCount: this.rawDataWidth
681
571
  };
682
572
  }
683
-
684
573
  const percentageTotal = this.percentageTotals[totals.columnTotal.row];
685
574
  dataFields.forEach(field => {
686
575
  const headerIndex = this.dimensionLookup.dataHeaders[field];
687
576
  const value = (0, _parseValue.parseValue)(dataRow[headerIndex]);
688
-
689
577
  if (value && !isNaN(value)) {
690
578
  percentageTotal[field] = (percentageTotal[field] || 0) + value;
691
579
  }
692
580
  });
693
581
  }
694
582
  }
695
-
696
583
  if (this.visualization.numberType === _pivotTableConstants.NUMBER_TYPE_COLUMN_PERCENTAGE) {
697
584
  if (!this.percentageTotals[pos.column]) {
698
585
  this.percentageTotals[pos.column] = {
@@ -700,17 +587,14 @@ class PivotTableEngine {
700
587
  totalCount: this.rawDataHeight
701
588
  };
702
589
  }
703
-
704
590
  const percentageTotal = this.percentageTotals[pos.column];
705
591
  dataFields.forEach(field => {
706
592
  const headerIndex = this.dimensionLookup.dataHeaders[field];
707
593
  const value = (0, _parseValue.parseValue)(dataRow[headerIndex]);
708
-
709
594
  if (value && !isNaN(value)) {
710
595
  percentageTotal[field] = (percentageTotal[field] || 0) + value;
711
596
  }
712
597
  });
713
-
714
598
  if (totals.rowSubtotal) {
715
599
  if (!this.percentageTotals[totals.rowSubtotal.column]) {
716
600
  this.percentageTotals[totals.rowSubtotal.column] = {
@@ -718,18 +602,15 @@ class PivotTableEngine {
718
602
  totalCount: this.rawDataHeight
719
603
  };
720
604
  }
721
-
722
605
  const percentageTotal = this.percentageTotals[totals.rowSubtotal.column];
723
606
  dataFields.forEach(field => {
724
607
  const headerIndex = this.dimensionLookup.dataHeaders[field];
725
608
  const value = (0, _parseValue.parseValue)(dataRow[headerIndex]);
726
-
727
609
  if (value && !isNaN(value)) {
728
610
  percentageTotal[field] = (percentageTotal[field] || 0) + value;
729
611
  }
730
612
  });
731
613
  }
732
-
733
614
  if (totals.rowTotal) {
734
615
  if (!this.percentageTotals[totals.rowTotal.column]) {
735
616
  this.percentageTotals[totals.rowTotal.column] = {
@@ -737,12 +618,10 @@ class PivotTableEngine {
737
618
  totalCount: this.rawDataHeight
738
619
  };
739
620
  }
740
-
741
621
  const percentageTotal = this.percentageTotals[totals.rowTotal.column];
742
622
  dataFields.forEach(field => {
743
623
  const headerIndex = this.dimensionLookup.dataHeaders[field];
744
624
  const value = (0, _parseValue.parseValue)(dataRow[headerIndex]);
745
-
746
625
  if (value && !isNaN(value)) {
747
626
  percentageTotal[field] = (percentageTotal[field] || 0) + value;
748
627
  }
@@ -750,19 +629,15 @@ class PivotTableEngine {
750
629
  }
751
630
  }
752
631
  }
753
-
754
632
  finalizeTotal(_ref10) {
755
633
  let {
756
634
  row,
757
635
  column
758
636
  } = _ref10;
759
-
760
637
  if (!this.data[row]) {
761
638
  return;
762
639
  }
763
-
764
640
  const totalCell = this.data[row][column];
765
-
766
641
  if (totalCell && totalCell.count) {
767
642
  totalCell.value = applyTotalAggregationType(totalCell, this.visualization.numberType !== _pivotTableConstants.NUMBER_TYPE_VALUE && _pivotTableConstants.AGGREGATE_TYPE_SUM);
768
643
  this.adaptiveClippingController.add({
@@ -771,13 +646,10 @@ class PivotTableEngine {
771
646
  }, (0, _renderValue.renderValue)(totalCell.value, totalCell.valueType, this.visualization));
772
647
  }
773
648
  }
774
-
775
649
  finalizeTotals() {
776
650
  var _this$dimensionLookup3, _this$dimensionLookup4;
777
-
778
651
  const columnSubtotalSize = ((_this$dimensionLookup3 = this.dimensionLookup.rows[0]) === null || _this$dimensionLookup3 === void 0 ? void 0 : _this$dimensionLookup3.size) + 1;
779
652
  const rowSubtotalSize = ((_this$dimensionLookup4 = this.dimensionLookup.columns[0]) === null || _this$dimensionLookup4 === void 0 ? void 0 : _this$dimensionLookup4.size) + 1;
780
-
781
653
  if (this.doRowSubtotals && rowSubtotalSize) {
782
654
  (0, _times.default)(this.dimensionLookup.columns[0].count, n => (n + 1) * rowSubtotalSize - 1).forEach(column => {
783
655
  (0, _times.default)(this.dataHeight - (this.doColumnTotals ? 1 : 0), n => n).forEach(row => {
@@ -791,7 +663,6 @@ class PivotTableEngine {
791
663
  });
792
664
  });
793
665
  }
794
-
795
666
  if (this.doColumnSubtotals && columnSubtotalSize) {
796
667
  (0, _times.default)(this.dimensionLookup.rows[0].count, n => (n + 1) * columnSubtotalSize - 1).forEach(row => {
797
668
  (0, _times.default)(this.dataWidth - (this.doRowTotals ? 1 : 0), n => n).forEach(column => {
@@ -804,9 +675,9 @@ class PivotTableEngine {
804
675
  }
805
676
  });
806
677
  });
807
- } // Combined subtotal cells
808
-
678
+ }
809
679
 
680
+ // Combined subtotal cells
810
681
  if (this.doRowSubtotals && this.doColumnSubtotals && rowSubtotalSize && columnSubtotalSize) {
811
682
  (0, _times.default)(this.dimensionLookup.rows[0].count, n => (n + 1) * columnSubtotalSize - 1).forEach(row => {
812
683
  (0, _times.default)(this.dimensionLookup.columns[0].count, n => (n + 1) * rowSubtotalSize - 1).forEach(column => {
@@ -817,7 +688,6 @@ class PivotTableEngine {
817
688
  });
818
689
  });
819
690
  }
820
-
821
691
  if (this.doRowTotals) {
822
692
  const column = this.dataWidth - 1;
823
693
  const rowCount = this.doColumnTotals ? this.dataHeight - 1 : this.dataHeight;
@@ -828,7 +698,6 @@ class PivotTableEngine {
828
698
  });
829
699
  });
830
700
  }
831
-
832
701
  if (this.doColumnTotals) {
833
702
  const row = this.dataHeight - 1;
834
703
  const colCount = this.doRowTotals ? this.dataWidth - 1 : this.dataWidth;
@@ -839,106 +708,87 @@ class PivotTableEngine {
839
708
  });
840
709
  });
841
710
  }
842
-
843
711
  if (this.doRowTotals && this.doColumnTotals) {
844
712
  this.finalizeTotal({
845
713
  row: this.dataHeight - 1,
846
714
  column: this.dataWidth - 1
847
715
  });
848
716
  }
849
-
850
717
  if (this.percentageTotals) {
851
718
  this.percentageTotals.forEach(item => {
852
719
  item.value = applyTotalAggregationType(item);
853
720
  });
854
721
  }
855
722
  }
856
-
857
723
  resetRowMap() {
858
724
  this.rowMap = this.options.hideEmptyRows ? (0, _times.default)(this.dataHeight, n => n).filter(idx => !!this.data[idx]) : (0, _times.default)(this.dataHeight, n => n);
859
725
  }
860
-
861
726
  resetColumnMap() {
862
727
  this.columnMap = this.options.hideEmptyColumns ? (0, _times.default)(this.dataWidth, n => n).filter(idx => !this.columnIsEmpty(idx)) : (0, _times.default)(this.dataWidth, n => n);
863
728
  }
864
-
865
729
  get cellPadding() {
866
730
  switch (this.visualization.displayDensity) {
867
731
  case _pivotTableConstants.DISPLAY_DENSITY_OPTION_COMPACT:
868
732
  return _pivotTableConstants.DISPLAY_DENSITY_PADDING_COMPACT;
869
-
870
733
  case _pivotTableConstants.DISPLAY_DENSITY_OPTION_COMFORTABLE:
871
734
  return _pivotTableConstants.DISPLAY_DENSITY_PADDING_COMFORTABLE;
872
-
873
735
  case _pivotTableConstants.DISPLAY_DENSITY_OPTION_NORMAL:
874
736
  default:
875
737
  return _pivotTableConstants.DISPLAY_DENSITY_PADDING_NORMAL;
876
738
  }
877
739
  }
878
-
879
740
  get fontSize() {
880
741
  switch (this.visualization.fontSize) {
881
742
  case _pivotTableConstants.FONT_SIZE_OPTION_SMALL:
882
743
  return _pivotTableConstants.FONT_SIZE_SMALL;
883
-
884
744
  case _pivotTableConstants.FONT_SIZE_OPTION_LARGE:
885
745
  return _pivotTableConstants.FONT_SIZE_LARGE;
886
-
887
746
  case _pivotTableConstants.FONT_SIZE_OPTION_NORMAL:
888
747
  default:
889
748
  return _pivotTableConstants.FONT_SIZE_NORMAL;
890
749
  }
891
750
  }
892
-
893
751
  get scrollIconBuffer() {
894
752
  switch (this.visualization.fontSize) {
895
753
  case _pivotTableConstants.FONT_SIZE_OPTION_SMALL:
896
754
  return 11;
897
-
898
755
  case _pivotTableConstants.FONT_SIZE_OPTION_LARGE:
899
756
  return 15;
900
-
901
757
  case _pivotTableConstants.FONT_SIZE_OPTION_NORMAL:
902
758
  default:
903
759
  return 13;
904
760
  }
905
761
  }
906
-
907
762
  buildMatrix() {
908
763
  this.data = [];
909
764
  this.adaptiveClippingController.reset();
910
765
  this.dataHeight = this.rawDataHeight = countFromDisaggregates(this.dimensionLookup.rows);
911
- this.dataWidth = this.rawDataWidth = countFromDisaggregates(this.dimensionLookup.columns); // TODO: Check last row/col dimension for size===1, skip redundant sub-totals
766
+ this.dataWidth = this.rawDataWidth = countFromDisaggregates(this.dimensionLookup.columns);
912
767
 
768
+ // TODO: Check last row/col dimension for size===1, skip redundant sub-totals
913
769
  this.doRowSubtotals = this.options.showRowSubtotals && this.columnDepth > 1;
914
770
  this.doColumnSubtotals = this.options.showColumnSubtotals && this.rowDepth > 1;
915
771
  this.doRowTotals = this.options.showRowTotals && this.dataWidth > 1;
916
772
  this.doColumnTotals = this.options.showColumnTotals && this.dataHeight > 1;
917
-
918
773
  if (this.doRowSubtotals) {
919
774
  this.dataWidth += this.dimensionLookup.columns[0].count;
920
775
  }
921
-
922
776
  if (this.doColumnSubtotals) {
923
777
  this.dataHeight += this.dimensionLookup.rows[0].count;
924
778
  }
925
-
926
779
  if (this.doRowTotals) {
927
780
  this.dataWidth += 1;
928
781
  }
929
-
930
782
  if (this.doColumnTotals) {
931
783
  this.dataHeight += 1;
932
- } // TODO: Use total cell calculation, don't duplicate here
933
-
784
+ }
934
785
 
786
+ // TODO: Use total cell calculation, don't duplicate here
935
787
  if (this.visualization.numberType === _pivotTableConstants.NUMBER_TYPE_ROW_PERCENTAGE || this.visualization.numberType === _pivotTableConstants.NUMBER_TYPE_COLUMN_PERCENTAGE) {
936
788
  this.percentageTotals = [];
937
789
  }
938
-
939
790
  this.rawData.rows.forEach(dataRow => {
940
791
  const pos = lookup(dataRow, this.dimensionLookup, this);
941
-
942
792
  if (pos) {
943
793
  this.data[pos.row] = this.data[pos.row] || [];
944
794
  this.data[pos.row][pos.column] = dataRow;
@@ -948,7 +798,6 @@ class PivotTableEngine {
948
798
  this.finalizeTotals();
949
799
  this.rawData.rows.forEach(dataRow => {
950
800
  const pos = lookup(dataRow, this.dimensionLookup, this);
951
-
952
801
  if (pos) {
953
802
  this.adaptiveClippingController.add(pos, this.getRaw(pos).renderedValue);
954
803
  }
@@ -959,50 +808,39 @@ class PivotTableEngine {
959
808
  this.width = this.columnMap.length;
960
809
  this.adaptiveClippingController.finalize();
961
810
  }
962
-
963
811
  getColumnType(column) {
964
812
  column = this.columnMap[column];
965
-
966
813
  if (!column && column !== 0) {
967
814
  return undefined;
968
815
  }
969
-
970
816
  if (this.doRowSubtotals && (column + 1) % (this.dimensionLookup.columns[0].size + 1) === 0) {
971
817
  return _pivotTableConstants.CELL_TYPE_SUBTOTAL;
972
818
  }
973
-
974
819
  if (this.doRowTotals && column === this.dataWidth - 1) {
975
820
  return _pivotTableConstants.CELL_TYPE_TOTAL;
976
821
  }
977
-
978
822
  return _pivotTableConstants.CELL_TYPE_VALUE;
979
823
  }
980
-
981
824
  isSortable(column) {
982
825
  return this.dataHeight > 1 && !this.doColumnSubtotals && this.getColumnType(column) !== undefined;
983
826
  }
984
-
985
827
  sort(column, order) {
986
828
  if (order !== _pivotTableConstants.SORT_ORDER_ASCENDING && order !== _pivotTableConstants.SORT_ORDER_DESCENDING) {
987
- console.warn("Invalid sort order ".concat(order));
829
+ console.warn(`Invalid sort order ${order}`);
988
830
  return;
989
831
  }
990
-
991
832
  if (!this.isSortable(column)) {
992
- console.warn("Invalid sort column ".concat(column));
833
+ console.warn(`Invalid sort column ${column}`);
993
834
  return;
994
835
  }
995
-
996
836
  const mappedColumn = this.columnMap[column];
997
837
  this.rowMap.sort((rowA, rowB) => {
998
838
  if (this.doColumnTotals && rowA === this.dataHeight - 1) {
999
839
  return 1;
1000
840
  }
1001
-
1002
841
  if (this.doColumnTotals && rowB === this.dataHeight - 1) {
1003
842
  return -1;
1004
843
  }
1005
-
1006
844
  const valueA = this.getRaw({
1007
845
  row: rowA,
1008
846
  column: mappedColumn
@@ -1011,33 +849,25 @@ class PivotTableEngine {
1011
849
  row: rowB,
1012
850
  column: mappedColumn
1013
851
  });
1014
-
1015
852
  if ((!valueA || valueA.empty) && (!valueB || valueB.empty)) {
1016
853
  return 0;
1017
854
  }
1018
-
1019
855
  if (!valueA || valueA.empty) {
1020
856
  return -1 * order;
1021
857
  }
1022
-
1023
858
  if (!valueB || valueB.empty) {
1024
859
  return 1 * order;
1025
860
  }
1026
-
1027
861
  if (valueA.valueType === _valueTypes.VALUE_TYPE_NUMBER && valueB.valueType === _valueTypes.VALUE_TYPE_NUMBER) {
1028
862
  return (valueA.rawValue - valueB.rawValue) * order;
1029
863
  }
1030
-
1031
864
  return valueA.renderedValue.localeCompare(valueB.renderedValue) * order;
1032
865
  });
1033
866
  this.adaptiveClippingController.resetRowPartitions();
1034
867
  }
1035
-
1036
868
  clearSort() {
1037
869
  this.resetRowMap();
1038
870
  this.adaptiveClippingController.resetRowPartitions();
1039
871
  }
1040
-
1041
872
  }
1042
-
1043
873
  exports.PivotTableEngine = PivotTableEngine;