@dhis2/analytics 26.0.7 → 26.0.9

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 +7 -7
  235. package/build/cjs/locales/index.js +1 -74
  236. package/build/cjs/locales/km/translations.json +4 -3
  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 +7 -7
  627. package/build/es/locales/km/translations.json +4 -3
  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,7 +4,8 @@ import { VALUE_TYPE_NUMBER, VALUE_TYPE_INTEGER, VALUE_TYPE_INTEGER_POSITIVE, VAL
4
4
  const DGS_COMMA = 'COMMA';
5
5
  const DGS_SPACE = 'SPACE';
6
6
  const DGS_NONE = 'NONE';
7
- const tests = [// Numbers
7
+ const tests = [
8
+ // Numbers
8
9
  {
9
10
  value: 1000.5,
10
11
  expected: '1 000.5',
@@ -66,7 +67,8 @@ const tests = [// Numbers
66
67
  valueType: VALUE_TYPE_NUMBER,
67
68
  round: false,
68
69
  dgs: DGS_SPACE
69
- }, // Numbers showing as column/row percentage
70
+ },
71
+ // Numbers showing as column/row percentage
70
72
  {
71
73
  value: 0.234,
72
74
  expected: '23.4%',
@@ -137,7 +139,8 @@ const tests = [// Numbers
137
139
  numberType: NUMBER_TYPE_COLUMN_PERCENTAGE,
138
140
  round: true,
139
141
  dgs: DGS_COMMA
140
- }, // Integers
142
+ },
143
+ // Integers
141
144
  {
142
145
  value: 99777888,
143
146
  expected: '99 777 888',
@@ -206,7 +209,8 @@ const tests = [// Numbers
206
209
  numberType: NUMBER_TYPE_COLUMN_PERCENTAGE,
207
210
  round: true,
208
211
  dgs: DGS_NONE
209
- }, // Phone number
212
+ },
213
+ // Phone number
210
214
  {
211
215
  value: '99777888',
212
216
  expected: '99777888',
@@ -231,7 +235,8 @@ const tests = [// Numbers
231
235
  valueType: VALUE_TYPE_PHONE_NUMBER,
232
236
  round: false,
233
237
  dgs: DGS_COMMA
234
- }, // Date
238
+ },
239
+ // Date
235
240
  {
236
241
  value: '05/04/2022',
237
242
  expected: '05/04/2022',
@@ -250,7 +255,8 @@ const tests = [// Numbers
250
255
  valueType: VALUE_TYPE_DATETIME,
251
256
  round: true,
252
257
  dgs: DGS_NONE
253
- }, // Percentage
258
+ },
259
+ // Percentage
254
260
  {
255
261
  value: 5,
256
262
  expected: '5',
@@ -270,7 +276,8 @@ const tests = [// Numbers
270
276
  numberType: NUMBER_TYPE_COLUMN_PERCENTAGE,
271
277
  round: true,
272
278
  dgs: DGS_SPACE
273
- }, // Unit interval
279
+ },
280
+ // Unit interval
274
281
  {
275
282
  value: 4,
276
283
  expected: '4',
@@ -290,7 +297,8 @@ const tests = [// Numbers
290
297
  numberType: NUMBER_TYPE_COLUMN_PERCENTAGE,
291
298
  round: true,
292
299
  dgs: DGS_COMMA
293
- }, // Texts
300
+ },
301
+ // Texts
294
302
  {
295
303
  value: 'This string has multiple whitespace characters',
296
304
  expected: 'This string has multiple whitespace characters',
@@ -303,7 +311,8 @@ const tests = [// Numbers
303
311
  value: 'Characters \nmorecharacters here',
304
312
  expected: 'Characters \nmorecharacters here',
305
313
  valueType: VALUE_TYPE_TEXT
306
- }, // Undefined values
314
+ },
315
+ // Undefined values
307
316
  {
308
317
  value: undefined,
309
318
  expected: 'undefined',
@@ -315,7 +324,7 @@ const tests = [// Numbers
315
324
  }];
316
325
  describe('renderValue', () => {
317
326
  tests.forEach(t => {
318
- const testname = "valueType: ".concat(t.valueType, ", value: ").concat(t.value, ", dgs: ").concat(t.dgs, ", round: ").concat(t.round, ", isPercent: ").concat([NUMBER_TYPE_ROW_PERCENTAGE, NUMBER_TYPE_COLUMN_PERCENTAGE].includes(t.numberType));
327
+ const testname = `valueType: ${t.valueType}, value: ${t.value}, dgs: ${t.dgs}, round: ${t.round}, isPercent: ${[NUMBER_TYPE_ROW_PERCENTAGE, NUMBER_TYPE_COLUMN_PERCENTAGE].includes(t.numberType)}`;
319
328
  it(testname, () => {
320
329
  const actual = renderValue(t.value, t.valueType, {
321
330
  skipRounding: !t.round,
@@ -1,7 +1,6 @@
1
1
  import i18n from '../locales/index.js';
2
2
  import { AXIS_ID_COLUMNS, AXIS_ID_ROWS, AXIS_ID_FILTERS } from './layout/axis.js';
3
3
  import { LAYOUT_TYPE_DEFAULT, LAYOUT_TYPE_PIE, LAYOUT_TYPE_YEAR_OVER_YEAR, LAYOUT_TYPE_PIVOT_TABLE, LAYOUT_TYPE_SCATTER, LAYOUT_TYPE_LINE_LIST } from './layoutTypes.js';
4
-
5
4
  const getAxisNamesByLayoutType = layoutType => {
6
5
  switch (layoutType) {
7
6
  case LAYOUT_TYPE_DEFAULT:
@@ -13,20 +12,17 @@ const getAxisNamesByLayoutType = layoutType => {
13
12
  [AXIS_ID_ROWS]: i18n.t('Category'),
14
13
  [AXIS_ID_FILTERS]: i18n.t('Filter')
15
14
  };
16
-
17
15
  case LAYOUT_TYPE_PIVOT_TABLE:
18
16
  return {
19
17
  [AXIS_ID_COLUMNS]: i18n.t('Columns'),
20
18
  [AXIS_ID_ROWS]: i18n.t('Rows'),
21
19
  [AXIS_ID_FILTERS]: i18n.t('Filter')
22
20
  };
23
-
24
21
  case LAYOUT_TYPE_LINE_LIST:
25
22
  return {
26
23
  [AXIS_ID_COLUMNS]: i18n.t('Columns'),
27
24
  [AXIS_ID_FILTERS]: i18n.t('Filter')
28
25
  };
29
-
30
26
  case LAYOUT_TYPE_SCATTER:
31
27
  return {
32
28
  [AXIS_ID_ROWS]: i18n.t('Points'),
@@ -34,14 +30,11 @@ const getAxisNamesByLayoutType = layoutType => {
34
30
  };
35
31
  }
36
32
  };
37
-
38
33
  export const getAxisNameByLayoutType = (axisId, layoutType) => {
39
34
  const name = getAxisNamesByLayoutType(layoutType)[axisId];
40
-
41
35
  if (!name) {
42
- throw new Error("".concat(axisId, " is not a valid axis id"));
36
+ throw new Error(`${axisId} is not a valid axis id`);
43
37
  }
44
-
45
38
  return name;
46
39
  };
47
40
  export const getAxisName = axisId => getAxisNameByLayoutType(axisId, LAYOUT_TYPE_DEFAULT);
@@ -20,11 +20,8 @@ export const TOTALS = 'totals';
20
20
  export const DETAIL = 'detail';
21
21
  export const SUB_GROUP_DETAIL = 'DETAIL';
22
22
  export const SUB_GROUP_METRIC = 'METRIC';
23
-
24
23
  const getProgramText = () => i18n.t('Program');
25
-
26
24
  const getSelectProgramText = () => i18n.t('Select a program');
27
-
28
25
  export const dataTypeMap = {
29
26
  [DIMENSION_TYPE_INDICATOR]: {
30
27
  id: DIMENSION_TYPE_INDICATOR,
@@ -7,27 +7,21 @@ import { REPORTING_RATE } from './dataSets.js';
7
7
  import { DIMENSION_TYPE_DATA_ELEMENT, DIMENSION_TYPE_DATA_ELEMENT_OPERAND, DIMENSION_TYPE_DATA_SET, DIMENSION_TYPE_EVENT_DATA_ITEM, DIMENSION_TYPE_EXPRESSION_DIMENSION_ITEM, DIMENSION_TYPE_PROGRAM_ATTRIBUTE, DIMENSION_TYPE_PROGRAM_DATA_ELEMENT, dataTypeMap as dataTypes, DIMENSION_TYPE_INDICATOR, DIMENSION_TYPE_PROGRAM_INDICATOR } from './dataTypes.js';
8
8
  export const getTooltipText = _ref => {
9
9
  var _dataTypes$type;
10
-
11
10
  let {
12
11
  type,
13
12
  expression
14
13
  } = _ref;
15
-
16
14
  if (type === DIMENSION_TYPE_EXPRESSION_DIMENSION_ITEM && expression) {
17
15
  return dataTypes[DIMENSION_TYPE_EXPRESSION_DIMENSION_ITEM].getItemName();
18
16
  }
19
-
20
17
  switch (type) {
21
18
  case DIMENSION_TYPE_DATA_ELEMENT_OPERAND:
22
19
  return dataTypes[DIMENSION_TYPE_DATA_ELEMENT].getItemName();
23
-
24
20
  case REPORTING_RATE:
25
21
  return dataTypes[DIMENSION_TYPE_DATA_SET].getItemName();
26
-
27
22
  case DIMENSION_TYPE_PROGRAM_DATA_ELEMENT:
28
23
  case DIMENSION_TYPE_PROGRAM_ATTRIBUTE:
29
24
  return dataTypes[DIMENSION_TYPE_EVENT_DATA_ITEM].getItemName();
30
-
31
25
  default:
32
26
  return (_dataTypes$type = dataTypes[type]) === null || _dataTypes$type === void 0 ? void 0 : _dataTypes$type.getItemName();
33
27
  }
@@ -36,25 +30,19 @@ export const getIcon = type => {
36
30
  switch (type) {
37
31
  case DIMENSION_TYPE_INDICATOR:
38
32
  return /*#__PURE__*/React.createElement(IconDimensionIndicator16, null);
39
-
40
33
  case DIMENSION_TYPE_DATA_ELEMENT_OPERAND:
41
34
  case DIMENSION_TYPE_DATA_ELEMENT:
42
35
  return DataElementIcon;
43
-
44
36
  case REPORTING_RATE:
45
37
  return /*#__PURE__*/React.createElement(IconDimensionDataSet16, null);
46
-
47
38
  case DIMENSION_TYPE_EVENT_DATA_ITEM:
48
39
  case DIMENSION_TYPE_PROGRAM_DATA_ELEMENT:
49
40
  case DIMENSION_TYPE_PROGRAM_ATTRIBUTE:
50
41
  return /*#__PURE__*/React.createElement(IconDimensionEventDataItem16, null);
51
-
52
42
  case DIMENSION_TYPE_PROGRAM_INDICATOR:
53
43
  return /*#__PURE__*/React.createElement(IconDimensionProgramIndicator16, null);
54
-
55
44
  case DIMENSION_TYPE_EXPRESSION_DIMENSION_ITEM:
56
45
  return CalculationIcon;
57
-
58
46
  default:
59
47
  return GenericIcon;
60
48
  }
@@ -43,7 +43,6 @@ export const parseExpressionToArray = function () {
43
43
  return parseExpression(expression).map(value => {
44
44
  if (value.startsWith('#{') && value.endsWith('}')) {
45
45
  var _metadata$find;
46
-
47
46
  const id = value.slice(2, -1);
48
47
  const label = ((_metadata$find = metadata.find(item => item.id === id)) === null || _metadata$find === void 0 ? void 0 : _metadata$find.name) || id;
49
48
  return {
@@ -52,7 +51,6 @@ export const parseExpressionToArray = function () {
52
51
  type: EXPRESSION_TYPE_DATA
53
52
  };
54
53
  }
55
-
56
54
  if (isNaN(value)) {
57
55
  return {
58
56
  value,
@@ -60,7 +58,6 @@ export const parseExpressionToArray = function () {
60
58
  type: EXPRESSION_TYPE_OPERATOR
61
59
  };
62
60
  }
63
-
64
61
  return {
65
62
  value,
66
63
  label: value,
@@ -76,13 +73,13 @@ export const validateExpression = expression => {
76
73
  let result;
77
74
  const leftParenthesisCount = expression.split('(').length - 1;
78
75
  const rightParenthesisCount = expression.split(')').length - 1;
79
-
80
76
  if (!expression) {
81
77
  // empty formula
82
78
  result = {
83
79
  status: INVALID_EXPRESSION,
84
80
  message: i18n.t('Formula is empty. Add items to the formula from the lists on the left.')
85
- }; // TODO: reimplement this but allow negative values, e.g. 10 / -5
81
+ };
82
+ // TODO: reimplement this but allow negative values, e.g. 10 / -5
86
83
  // } else if (/[-+/*]{2,}/.test(expression)) {
87
84
  // // two math operators next to each other
88
85
  // result = {
@@ -120,7 +117,6 @@ export const validateExpression = expression => {
120
117
  message: i18n.t('Missing left parenthesis (')
121
118
  };
122
119
  }
123
-
124
120
  return result;
125
121
  };
126
122
  export const getItemIdsFromExpression = function () {
@@ -1,27 +1,29 @@
1
1
  /*eslint no-unused-vars: ["error", { "ignoreRestSiblings": true }]*/
2
2
  import { colors } from '@dhis2/ui';
3
- import i18n from '../locales/index.js'; // Font styles
3
+ import i18n from '../locales/index.js';
4
4
 
5
+ // Font styles
5
6
  export const FONT_STYLE_VISUALIZATION_TITLE = 'visualizationTitle';
6
7
  export const FONT_STYLE_VISUALIZATION_SUBTITLE = 'visualizationSubtitle';
7
8
  export const FONT_STYLE_HORIZONTAL_AXIS_TITLE = 'horizontalAxisTitle';
8
9
  export const FONT_STYLE_VERTICAL_AXIS_TITLE = 'verticalAxisTitle';
9
10
  export const FONT_STYLE_LEGEND = 'legend';
10
11
  export const FONT_STYLE_AXIS_LABELS = 'axisLabel';
11
- export const FONT_STYLE_REGRESSION_LINE_LABEL = 'regressionLineLabel'; // Options
12
-
12
+ export const FONT_STYLE_REGRESSION_LINE_LABEL = 'regressionLineLabel';
13
+ // Options
13
14
  export const FONT_STYLE_OPTION_FONT = 'font';
14
15
  export const FONT_STYLE_OPTION_FONT_SIZE = 'fontSize';
15
16
  export const FONT_STYLE_OPTION_BOLD = 'bold';
16
17
  export const FONT_STYLE_OPTION_ITALIC = 'italic';
17
18
  export const FONT_STYLE_OPTION_UNDERLINE = 'underline';
18
19
  export const FONT_STYLE_OPTION_TEXT_COLOR = 'textColor';
19
- export const FONT_STYLE_OPTION_TEXT_ALIGN = 'textAlign'; // Text align
20
-
20
+ export const FONT_STYLE_OPTION_TEXT_ALIGN = 'textAlign';
21
+ // Text align
21
22
  export const TEXT_ALIGN_LEFT = 'LEFT';
22
23
  export const TEXT_ALIGN_CENTER = 'CENTER';
23
- export const TEXT_ALIGN_RIGHT = 'RIGHT'; // Tiers
24
+ export const TEXT_ALIGN_RIGHT = 'RIGHT';
24
25
 
26
+ // Tiers
25
27
  const TIER1 = 'tier1';
26
28
  const TIER2 = 'tier2';
27
29
  export const getFontSizeOptions = fontStyleKey => {
@@ -66,18 +68,15 @@ export const getTextAlignOptions = (fontStyleKey, isVertical) => {
66
68
  case FONT_STYLE_HORIZONTAL_AXIS_TITLE:
67
69
  case FONT_STYLE_VERTICAL_AXIS_TITLE:
68
70
  return axisTitleAlignOptions();
69
-
70
71
  case FONT_STYLE_VISUALIZATION_TITLE:
71
72
  case FONT_STYLE_VISUALIZATION_SUBTITLE:
72
73
  case FONT_STYLE_LEGEND:
73
74
  return defaultAlignOptions();
74
-
75
75
  case FONT_STYLE_REGRESSION_LINE_LABEL:
76
76
  default:
77
77
  return isVertical ? verticalAlignOptions() : defaultAlignOptions();
78
78
  }
79
79
  };
80
-
81
80
  const defaultAlignOptions = () => [{
82
81
  label: i18n.t('Left'),
83
82
  value: TEXT_ALIGN_LEFT
@@ -88,7 +87,6 @@ const defaultAlignOptions = () => [{
88
87
  label: i18n.t('Right'),
89
88
  value: TEXT_ALIGN_RIGHT
90
89
  }];
91
-
92
90
  const axisTitleAlignOptions = () => [{
93
91
  label: i18n.t('Start'),
94
92
  value: TEXT_ALIGN_LEFT
@@ -99,7 +97,6 @@ const axisTitleAlignOptions = () => [{
99
97
  label: i18n.t('End'),
100
98
  value: TEXT_ALIGN_RIGHT
101
99
  }];
102
-
103
100
  const verticalAlignOptions = () => [{
104
101
  label: i18n.t('Top'),
105
102
  value: TEXT_ALIGN_LEFT
@@ -110,7 +107,6 @@ const verticalAlignOptions = () => [{
110
107
  label: i18n.t('Bottom'),
111
108
  value: TEXT_ALIGN_RIGHT
112
109
  }];
113
-
114
110
  const defaultFont = 'Roboto';
115
111
  export const defaultFontStyle = {
116
112
  [FONT_STYLE_VISUALIZATION_TITLE]: {
@@ -176,13 +172,17 @@ export const defaultFontStyle = {
176
172
  [FONT_STYLE_OPTION_TEXT_ALIGN]: TEXT_ALIGN_LEFT
177
173
  }
178
174
  };
179
- export const mergeFontStyleWithDefault = (fontStyle, fontStyleKey) => ({ ...defaultFontStyle[fontStyleKey],
175
+ export const mergeFontStyleWithDefault = (fontStyle, fontStyleKey) => ({
176
+ ...defaultFontStyle[fontStyleKey],
180
177
  ...fontStyle
181
- }); //FIXME: Is this function unused? Remove?
178
+ });
182
179
 
180
+ //FIXME: Is this function unused? Remove?
183
181
  export const deleteFontStyleOption = (inputFontStyle, fontStyleKey, option) => {
184
- const style = { ...inputFontStyle,
185
- [fontStyleKey]: { ...inputFontStyle[fontStyleKey]
182
+ const style = {
183
+ ...inputFontStyle,
184
+ [fontStyleKey]: {
185
+ ...inputFontStyle[fontStyleKey]
186
186
  }
187
187
  };
188
188
  style[fontStyleKey] && delete style[fontStyleKey][option];
@@ -4,40 +4,34 @@ import { DIMENSION_ID_DATA, DIMENSION_ID_ORGUNIT, DIMENSION_ID_PERIOD } from './
4
4
  import { VIS_TYPE_YEAR_OVER_YEAR_LINE, VIS_TYPE_YEAR_OVER_YEAR_COLUMN, VIS_TYPE_PIE, VIS_TYPE_GAUGE, VIS_TYPE_SINGLE_VALUE, VIS_TYPE_PIVOT_TABLE, VIS_TYPE_SCATTER, isTwoCategoryChartType } from './visTypes.js';
5
5
  export const getAdaptedUiLayoutByType = (layout, type) => {
6
6
  var _layout$rows;
7
-
8
7
  if (isTwoCategoryChartType(type) && ((_layout$rows = layout.rows) === null || _layout$rows === void 0 ? void 0 : _layout$rows.length) > 1) {
9
8
  return getDualCategoryLayout(layout);
10
9
  }
11
-
12
10
  switch (type) {
13
11
  case VIS_TYPE_YEAR_OVER_YEAR_LINE:
14
12
  case VIS_TYPE_YEAR_OVER_YEAR_COLUMN:
15
13
  {
16
14
  return getYearOverYearLayout(layout);
17
15
  }
18
-
19
16
  case VIS_TYPE_PIE:
20
17
  {
21
18
  return getPieLayout(layout);
22
19
  }
23
-
24
20
  case VIS_TYPE_SINGLE_VALUE:
25
21
  case VIS_TYPE_GAUGE:
26
22
  {
27
23
  return getSingleValueLayout(layout);
28
24
  }
29
-
30
25
  case VIS_TYPE_PIVOT_TABLE:
31
26
  return layout;
32
-
33
27
  case VIS_TYPE_SCATTER:
34
28
  return getScatterLayout(layout);
35
-
36
29
  default:
37
30
  return getDefaultLayout(layout);
38
31
  }
39
- }; // Transform from ui.layout to default layout format
32
+ };
40
33
 
34
+ // Transform from ui.layout to default layout format
41
35
  const getDefaultLayout = layout => {
42
36
  const columns = layout[AXIS_ID_COLUMNS].slice();
43
37
  const rows = layout[AXIS_ID_ROWS].slice();
@@ -47,7 +41,6 @@ const getDefaultLayout = layout => {
47
41
  [AXIS_ID_FILTERS]: [...layout[AXIS_ID_FILTERS], ...columns, ...rows]
48
42
  };
49
43
  };
50
-
51
44
  const getDualCategoryLayout = layout => {
52
45
  const columns = layout[AXIS_ID_COLUMNS].slice();
53
46
  const rows = layout[AXIS_ID_ROWS].slice();
@@ -56,9 +49,9 @@ const getDualCategoryLayout = layout => {
56
49
  [AXIS_ID_ROWS]: rows.length > 2 ? rows.splice(0, 2) : rows.splice(0, rows.length),
57
50
  [AXIS_ID_FILTERS]: [...layout[AXIS_ID_FILTERS], ...columns, ...rows]
58
51
  };
59
- }; // Transform from ui.layout to pie layout format
60
-
52
+ };
61
53
 
54
+ // Transform from ui.layout to pie layout format
62
55
  const getPieLayout = layout => {
63
56
  const columns = layout[AXIS_ID_COLUMNS].slice();
64
57
  const rows = layout[AXIS_ID_ROWS].slice();
@@ -68,57 +61,49 @@ const getPieLayout = layout => {
68
61
  [AXIS_ID_FILTERS]: [...layout[AXIS_ID_FILTERS], ...columns, ...rows]
69
62
  };
70
63
  };
71
-
72
64
  const getYearOverYearLayout = layout => ({
73
65
  [AXIS_ID_COLUMNS]: [],
74
66
  [AXIS_ID_ROWS]: [],
75
67
  [AXIS_ID_FILTERS]: [...layout[AXIS_ID_FILTERS], ...layout[AXIS_ID_COLUMNS], ...layout[AXIS_ID_ROWS]].filter(dim => getDimensionId(dim) !== DIMENSION_ID_PERIOD)
76
68
  });
77
-
78
69
  const getScatterLayout = layout => ({
79
70
  [AXIS_ID_COLUMNS]: [DIMENSION_ID_DATA],
80
71
  [AXIS_ID_ROWS]: [DIMENSION_ID_ORGUNIT],
81
72
  [AXIS_ID_FILTERS]: [...layout[AXIS_ID_COLUMNS], ...layout[AXIS_ID_ROWS], ...layout[AXIS_ID_FILTERS]].filter(dim => ![DIMENSION_ID_DATA, DIMENSION_ID_ORGUNIT].includes(getDimensionId(dim)))
82
- }); // Transform from ui.layout to single value layout format
83
-
73
+ });
84
74
 
75
+ // Transform from ui.layout to single value layout format
85
76
  const getSingleValueLayout = layout => {
86
77
  const columns = layout[AXIS_ID_COLUMNS].slice();
87
78
  const rows = layout[AXIS_ID_ROWS].slice();
88
79
  const filters = layout[AXIS_ID_FILTERS].slice();
89
80
  let dxDimensionArr = [];
90
81
  const clonedLayout = [columns, rows, filters];
91
-
92
82
  for (let i = 0; i < clonedLayout.length; ++i) {
93
83
  const axis = clonedLayout[i];
94
-
95
84
  for (let j = 0; j < axis.length; ++j) {
96
85
  const dimension = axis[j];
97
-
98
86
  if (getDimensionId(dimension) == DIMENSION_ID_DATA) {
99
87
  dxDimensionArr = axis.splice(j, 1);
100
88
  break;
101
89
  }
102
90
  }
103
-
104
91
  if (dxDimensionArr.length > 0) {
105
92
  break;
106
93
  }
107
94
  }
108
-
109
95
  return {
110
96
  [AXIS_ID_COLUMNS]: dxDimensionArr,
111
97
  [AXIS_ID_ROWS]: [],
112
98
  [AXIS_ID_FILTERS]: [...filters, ...columns, ...rows]
113
99
  };
114
100
  };
101
+
115
102
  /**
116
103
  *
117
104
  * @param {string|object} dimension
118
105
  * @returns {string}
119
106
  */
120
-
121
-
122
107
  const getDimensionId = dimension => {
123
108
  return isObject(dimension) ? dimension.dimension : dimension;
124
109
  };
@@ -7,31 +7,24 @@ export const getOuLevelAndGroupText = (filter, metaData) => {
7
7
  if (!dimensionIs(DIMENSION_ID_ORGUNIT)) {
8
8
  return '';
9
9
  }
10
-
11
10
  const items = dimensionGetItems(filter);
12
11
  const hasOuLevel = items.some(item => ouIdHelper.hasLevelPrefix(item.id));
13
12
  const hasOuGroup = items.some(item => ouIdHelper.hasGroupPrefix(item.id));
14
13
  const filterFragments = [];
15
-
16
14
  if (hasOuGroup) {
17
15
  filterFragments.push(getLevelAndGroupText(items, metaData, false));
18
16
  }
19
-
20
17
  if (hasOuLevel) {
21
18
  filterFragments.push(getLevelAndGroupText(items, metaData, true));
22
19
  }
23
-
24
20
  return filterFragments.join(' - ');
25
21
  };
26
-
27
22
  const getLevelAndGroupText = (items, metaData, isLevel) => {
28
23
  const getNameFromMetadata = id => metaData.items[id] ? metaData.items[id].name : id;
29
-
30
24
  const dynamicOuItems = items.filter(item => isLevel ? ouIdHelper.hasLevelPrefix(item.id) : ouIdHelper.hasGroupPrefix(item.id));
31
25
  const lastItem = dynamicOuItems.length > 1 ? dynamicOuItems.pop() : null;
32
26
  const dynamicOuNames = dynamicOuItems.map(item => getNameFromMetadata(ouIdHelper.removePrefix(item.id))).join(', ');
33
27
  let allDynamicOuNames;
34
-
35
28
  if (lastItem) {
36
29
  const lastOuName = getNameFromMetadata(ouIdHelper.removePrefix(lastItem.id));
37
30
  allDynamicOuNames = i18n.t('{{dynamicOuNames}} and {{lastOuName}}', {
@@ -41,10 +34,8 @@ const getLevelAndGroupText = (items, metaData, isLevel) => {
41
34
  } else {
42
35
  allDynamicOuNames = dynamicOuNames;
43
36
  }
44
-
45
37
  const staticOuNames = items.filter(item => !ouIdHelper.hasGroupPrefix(item.id) && !ouIdHelper.hasLevelPrefix(item.id)).map(item => getNameFromMetadata(item.id)).join(', ');
46
38
  let ouLevelAndGroupText = '';
47
-
48
39
  if (!staticOuNames) {
49
40
  if (isLevel) {
50
41
  ouLevelAndGroupText = i18n.t('{{allDynamicOuNames}} levels', {
@@ -68,6 +59,5 @@ const getLevelAndGroupText = (items, metaData, isLevel) => {
68
59
  });
69
60
  }
70
61
  }
71
-
72
62
  return ouLevelAndGroupText;
73
63
  };
@@ -1,12 +1,9 @@
1
1
  import SHA1 from 'crypto-js/sha1';
2
2
  import { DIMENSION_TYPE_EXPRESSION_DIMENSION_ITEM } from './dataTypes.js';
3
3
  import { layoutGetAllItems } from './layout/layoutGetAllItems.js';
4
-
5
4
  const isValidValue = value => typeof value === 'string' && value.length;
6
-
7
5
  export const getHash = value => isValidValue(value) ? SHA1(value).toString() : undefined;
8
6
  export const getExpressionHashFromVisualization = visualization => {
9
7
  var _layoutGetAllItems;
10
-
11
8
  return getHash((_layoutGetAllItems = layoutGetAllItems(visualization)) === null || _layoutGetAllItems === void 0 ? void 0 : _layoutGetAllItems.filter(item => item.dimensionItemType === DIMENSION_TYPE_EXPRESSION_DIMENSION_ITEM && isValidValue(item.expression)).sort((i1, i2) => i1.id < i2.id ? -1 : i1.id > i2.id ? 1 : 0).map(edi => edi.expression).join(''));
12
9
  };
@@ -4,7 +4,8 @@ import { TEST_LAYOUT } from '../testResources.js';
4
4
  describe('layoutHasDataDimension', () => {
5
5
  it('should return true if the dx dimension is found in the layout, otherwise false', () => {
6
6
  expect(layoutHasDataDimension(TEST_LAYOUT)).toBe(true);
7
- const layoutWithoutData = { ...TEST_LAYOUT,
7
+ const layoutWithoutData = {
8
+ ...TEST_LAYOUT,
8
9
  [AXIS_ID_COLUMNS]: AXIS.defaultValue
9
10
  };
10
11
  expect(layoutHasDataDimension(layoutWithoutData)).toBe(false);
@@ -5,7 +5,8 @@ import { TEST_LAYOUT } from '../testResources.js';
5
5
  describe('layoutHasDimension', () => {
6
6
  it('should return true if the dimension id is found in the layout, otherwise false', () => {
7
7
  expect(layoutHasDimension(TEST_LAYOUT, DIMENSION_ID_ORGUNIT)).toBe(true);
8
- const layoutWithoutPeriod = { ...TEST_LAYOUT,
8
+ const layoutWithoutPeriod = {
9
+ ...TEST_LAYOUT,
9
10
  [AXIS_ID_FILTERS]: AXIS.defaultValue
10
11
  };
11
12
  expect(layoutHasDimension(layoutWithoutPeriod, DIMENSION_ID_ORGUNIT)).toBe(false);
@@ -4,7 +4,8 @@ import { TEST_LAYOUT } from '../testResources.js';
4
4
  describe('layoutHasDynamicDimension', () => {
5
5
  it('should return true if a dynamic dimension id is found in the layout, otherwise false', () => {
6
6
  expect(layoutHasDynamicDimension(TEST_LAYOUT)).toBe(true);
7
- const layoutWithoutDynamicDimension = { ...TEST_LAYOUT,
7
+ const layoutWithoutDynamicDimension = {
8
+ ...TEST_LAYOUT,
8
9
  [AXIS_ID_FILTERS]: AXIS.defaultValue
9
10
  };
10
11
  expect(layoutHasDynamicDimension(layoutWithoutDynamicDimension)).toBe(false);
@@ -4,7 +4,8 @@ import { TEST_LAYOUT } from '../testResources.js';
4
4
  describe('layoutHasPeriodDimension', () => {
5
5
  it('should return true if the pe dimension is found in the layout, otherwise false', () => {
6
6
  expect(layoutHasPeriodDimension(TEST_LAYOUT)).toBe(true);
7
- const layoutWithoutPeriod = { ...TEST_LAYOUT,
7
+ const layoutWithoutPeriod = {
8
+ ...TEST_LAYOUT,
8
9
  [AXIS_ID_ROWS]: AXIS.defaultValue
9
10
  };
10
11
  expect(layoutHasPeriodDimension(layoutWithoutPeriod)).toBe(false);
@@ -1,14 +1,18 @@
1
1
  // Axis
2
+
2
3
  export const AXIS = {
3
4
  defaultValue: [],
4
5
  isValid: axis => Array.isArray(axis)
5
- }; // Axis ids
6
+ };
7
+
8
+ // Axis ids
6
9
 
7
10
  export const AXIS_ID_COLUMNS = 'columns';
8
11
  export const AXIS_ID_ROWS = 'rows';
9
12
  export const AXIS_ID_FILTERS = 'filters';
10
13
  export const AXIS_ID_YEAR_OVER_YEAR_SERIES = 'yearOverYearSeries';
11
- export const AXIS_ID_YEAR_OVER_YEAR_CATEGORY = 'yearOverYearCategory'; //export const AXIS_ID_POINTS_CATEGORY = 'pointsCategory'
14
+ export const AXIS_ID_YEAR_OVER_YEAR_CATEGORY = 'yearOverYearCategory';
15
+ //export const AXIS_ID_POINTS_CATEGORY = 'pointsCategory'
12
16
 
13
17
  export const DEFAULT_AXIS_IDS = [AXIS_ID_COLUMNS, AXIS_ID_ROWS, AXIS_ID_FILTERS];
14
18
  export const ALL_AXIS_IDS = [AXIS_ID_COLUMNS, AXIS_ID_ROWS, AXIS_ID_FILTERS, AXIS_ID_YEAR_OVER_YEAR_SERIES, AXIS_ID_YEAR_OVER_YEAR_CATEGORY];
@@ -1,9 +1,13 @@
1
1
  import isObject from 'lodash/isObject';
2
- import isString from 'lodash/isString'; // Dimension
2
+ import isString from 'lodash/isString';
3
+
4
+ // Dimension
3
5
 
4
6
  export const DIMENSION = {
5
7
  isValid: dimension => isObject(dimension)
6
- }; // Props
8
+ };
9
+
10
+ // Props
7
11
 
8
12
  export const DIMENSION_PROP_ID = {
9
13
  name: 'dimension',
@@ -1,6 +1,5 @@
1
1
  import { DIMENSION_PROP_ID, DIMENSION_PROP_PROGRAM_STAGE } from './dimension.js';
2
2
  export const dimensionGetId = dimension => {
3
3
  var _dimension$DIMENSION_;
4
-
5
- return (_dimension$DIMENSION_ = dimension[DIMENSION_PROP_PROGRAM_STAGE.name]) !== null && _dimension$DIMENSION_ !== void 0 && _dimension$DIMENSION_.id ? "".concat(dimension[DIMENSION_PROP_PROGRAM_STAGE.name].id, ".").concat(dimension[DIMENSION_PROP_ID.name]) : dimension[DIMENSION_PROP_ID.name];
4
+ return (_dimension$DIMENSION_ = dimension[DIMENSION_PROP_PROGRAM_STAGE.name]) !== null && _dimension$DIMENSION_ !== void 0 && _dimension$DIMENSION_.id ? `${dimension[DIMENSION_PROP_PROGRAM_STAGE.name].id}.${dimension[DIMENSION_PROP_ID.name]}` : dimension[DIMENSION_PROP_ID.name];
6
5
  };
@@ -4,20 +4,15 @@ export const dimensionIsValid = function (dimension) {
4
4
  let {
5
5
  requireItems
6
6
  } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
7
-
8
7
  if (!DIMENSION.isValid(dimension)) {
9
8
  return false;
10
9
  }
11
-
12
10
  const requiredProps = DIMENSION_PROPS.filter(prop => prop.required);
13
-
14
11
  if (!requiredProps.every(prop => prop.isValid(dimension[prop.name]))) {
15
12
  return false;
16
13
  }
17
-
18
14
  if (requireItems === true && dimensionIsEmpty(dimension)) {
19
15
  return false;
20
16
  }
21
-
22
17
  return true;
23
18
  };
@@ -1,9 +1,13 @@
1
1
  import isObject from 'lodash/isObject';
2
- import isString from 'lodash/isString'; // Item
2
+ import isString from 'lodash/isString';
3
+
4
+ // Item
3
5
 
4
6
  export const ITEM = {
5
7
  isValid: item => isObject(item)
6
- }; // Props
8
+ };
9
+
10
+ // Props
7
11
 
8
12
  export const ITEM_PROP_ID = {
9
13
  name: 'id',