@dhis2/analytics 28.0.3 → 28.0.5

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 (496) hide show
  1. package/build/cjs/__demo__/DataDimension.stories.js +1 -2
  2. package/build/cjs/__demo__/Filter.stories.js +1 -2
  3. package/build/cjs/__demo__/FixedPeriodSelect.stories.js +1 -2
  4. package/build/cjs/__demo__/OpenFileDialog.stories.js +19 -1
  5. package/build/cjs/__demo__/OrgUnitDimension.stories.js +1 -2
  6. package/build/cjs/__demo__/PivotTable.stories.js +166 -224
  7. package/build/cjs/__demo__/ScatterPlotPdfExport.stories.js +1 -2
  8. package/build/cjs/__demo__/SingleValue.stories.js +1 -2
  9. package/build/cjs/__demo__/Toolbar.stories.js +1 -2
  10. package/build/cjs/api/__tests__/dimensions.spec.js +1 -2
  11. package/build/cjs/api/analytics/Analytics.js +8 -9
  12. package/build/cjs/api/analytics/AnalyticsBase.js +58 -77
  13. package/build/cjs/api/analytics/AnalyticsRequest.js +1 -2
  14. package/build/cjs/api/analytics/AnalyticsRequestBase.js +18 -21
  15. package/build/cjs/api/analytics/AnalyticsRequestPropertiesMixin.js +19 -38
  16. package/build/cjs/api/analytics/AnalyticsResponseHeader.js +5 -7
  17. package/build/cjs/api/analytics/__tests__/AnalyticsBase.spec.js +9 -12
  18. package/build/cjs/api/analytics/__tests__/AnalyticsRequest.spec.js +8 -2
  19. package/build/cjs/api/analytics/utils.js +11 -17
  20. package/build/cjs/api/dimensions.js +119 -148
  21. package/build/cjs/api/expression.js +39 -60
  22. package/build/cjs/api/organisationUnits.js +23 -35
  23. package/build/cjs/components/AboutAOUnit/AboutAOUnit.js +12 -20
  24. package/build/cjs/components/CachedDataQueryProvider.js +7 -9
  25. package/build/cjs/components/DashboardPluginWrapper/DashboardPluginWrapper.js +18 -22
  26. package/build/cjs/components/DataDimension/Calculation/CalculationModal.js +44 -61
  27. package/build/cjs/components/DataDimension/Calculation/DataElementOption.js +5 -6
  28. package/build/cjs/components/DataDimension/Calculation/DataElementSelector.js +29 -38
  29. package/build/cjs/components/DataDimension/Calculation/DndContext.js +29 -37
  30. package/build/cjs/components/DataDimension/Calculation/DraggingItem.js +5 -6
  31. package/build/cjs/components/DataDimension/Calculation/DropZone.js +4 -5
  32. package/build/cjs/components/DataDimension/Calculation/FormulaField.js +29 -32
  33. package/build/cjs/components/DataDimension/Calculation/FormulaItem.js +14 -16
  34. package/build/cjs/components/DataDimension/Calculation/MathOperatorSelector.js +23 -29
  35. package/build/cjs/components/DataDimension/Calculation/Operator.js +6 -7
  36. package/build/cjs/components/DataDimension/DataDimension.js +20 -32
  37. package/build/cjs/components/DataDimension/Info/CalculationInfo.js +14 -22
  38. package/build/cjs/components/DataDimension/Info/DataElementInfo.js +23 -36
  39. package/build/cjs/components/DataDimension/Info/DataElementOperandInfo.js +30 -44
  40. package/build/cjs/components/DataDimension/Info/DataSetInfo.js +26 -39
  41. package/build/cjs/components/DataDimension/Info/EventDataItemInfo.js +21 -34
  42. package/build/cjs/components/DataDimension/Info/IndicatorInfo.js +21 -32
  43. package/build/cjs/components/DataDimension/Info/InfoPopover.js +6 -7
  44. package/build/cjs/components/DataDimension/Info/InfoTable.js +39 -52
  45. package/build/cjs/components/DataDimension/Info/OptionInfo.js +13 -20
  46. package/build/cjs/components/DataDimension/Info/ProgramIndicatorInfo.js +46 -58
  47. package/build/cjs/components/DataDimension/ItemOptionsSelector/ItemOptionsSelector.js +22 -32
  48. package/build/cjs/components/DataDimension/ItemSelector/DataTypeSelector.js +6 -7
  49. package/build/cjs/components/DataDimension/ItemSelector/DetailSelector.js +5 -6
  50. package/build/cjs/components/DataDimension/ItemSelector/GroupSelector.js +10 -12
  51. package/build/cjs/components/DataDimension/ItemSelector/ItemSelector.js +86 -104
  52. package/build/cjs/components/DataDimension/ItemSelector/MetricSelector.js +5 -6
  53. package/build/cjs/components/DataDimension/SourceEmptyPlaceholder.js +10 -13
  54. package/build/cjs/components/DataDimension/TransferOption.js +35 -39
  55. package/build/cjs/components/DimensionMenu.js +13 -14
  56. package/build/cjs/components/DimensionsPanel/DimensionsPanel.js +8 -9
  57. package/build/cjs/components/DimensionsPanel/List/DimensionItem.js +12 -13
  58. package/build/cjs/components/DimensionsPanel/List/DimensionList.js +12 -11
  59. package/build/cjs/components/DimensionsPanel/List/OptionsButton.js +8 -11
  60. package/build/cjs/components/DimensionsPanel/List/RecommendedIcon.js +10 -13
  61. package/build/cjs/components/DimensionsPanel/List/__tests__/DimensionItem.spec.js +48 -41
  62. package/build/cjs/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap +110 -114
  63. package/build/cjs/components/DimensionsPanel/__tests__/DimensionsPanel.spec.js +36 -33
  64. package/build/cjs/components/DynamicDimension/DynamicDimension.js +9 -13
  65. package/build/cjs/components/DynamicDimension/ItemSelector.js +25 -38
  66. package/build/cjs/components/FileMenu/DeleteDialog.js +11 -16
  67. package/build/cjs/components/FileMenu/FileMenu.js +19 -30
  68. package/build/cjs/components/FileMenu/GetLinkDialog.js +7 -7
  69. package/build/cjs/components/FileMenu/RenameDialog.js +13 -21
  70. package/build/cjs/components/FileMenu/SaveAsDialog.js +13 -21
  71. package/build/cjs/components/FileMenu/__tests__/DeleteDialog.spec.js +24 -27
  72. package/build/cjs/components/FileMenu/__tests__/FileMenu.spec.js +55 -31
  73. package/build/cjs/components/FileMenu/__tests__/GetLinkDialog.spec.js +35 -39
  74. package/build/cjs/components/FileMenu/__tests__/RenameDialog.spec.js +17 -11
  75. package/build/cjs/components/FileMenu/__tests__/SaveAsDialog.spec.js +44 -37
  76. package/build/cjs/components/FileMenu/utils.js +10 -12
  77. package/build/cjs/components/Filter/Filter.js +21 -27
  78. package/build/cjs/components/Filter/__tests__/Filter.spec.js +29 -34
  79. package/build/cjs/components/Interpretations/InterpretationModal/Comment.js +8 -10
  80. package/build/cjs/components/Interpretations/InterpretationModal/CommentAddForm.js +10 -15
  81. package/build/cjs/components/Interpretations/InterpretationModal/CommentDeleteButton.js +10 -15
  82. package/build/cjs/components/Interpretations/InterpretationModal/CommentUpdateForm.js +12 -17
  83. package/build/cjs/components/Interpretations/InterpretationModal/InterpretationModal.js +19 -25
  84. package/build/cjs/components/Interpretations/InterpretationModal/InterpretationThread.js +12 -14
  85. package/build/cjs/components/Interpretations/InterpretationsUnit/InterpretationForm.js +12 -17
  86. package/build/cjs/components/Interpretations/InterpretationsUnit/InterpretationList.js +10 -11
  87. package/build/cjs/components/Interpretations/InterpretationsUnit/InterpretationsUnit.js +23 -33
  88. package/build/cjs/components/Interpretations/common/Interpretation/Interpretation.js +13 -15
  89. package/build/cjs/components/Interpretations/common/Interpretation/InterpretationDeleteButton.js +7 -11
  90. package/build/cjs/components/Interpretations/common/Interpretation/InterpretationSharingLink.js +5 -7
  91. package/build/cjs/components/Interpretations/common/Interpretation/InterpretationUpdateForm.js +15 -23
  92. package/build/cjs/components/Interpretations/common/Interpretation/useLike.js +5 -6
  93. package/build/cjs/components/Interpretations/common/Message/Message.js +6 -7
  94. package/build/cjs/components/Interpretations/common/Message/MessageButtonStrip.js +8 -11
  95. package/build/cjs/components/Interpretations/common/Message/MessageEditorContainer.js +18 -21
  96. package/build/cjs/components/Interpretations/common/Message/MessageIconButton.js +34 -40
  97. package/build/cjs/components/Interpretations/common/Message/MessageInput.js +1 -2
  98. package/build/cjs/components/Interpretations/common/Message/MessageStatsBar.js +8 -11
  99. package/build/cjs/components/LegendKey/LegendKey.js +3 -4
  100. package/build/cjs/components/OfflineTooltip.js +18 -26
  101. package/build/cjs/components/OpenFileDialog/CreatedByFilter.js +28 -26
  102. package/build/cjs/components/OpenFileDialog/CustomSelectOption.js +23 -26
  103. package/build/cjs/components/OpenFileDialog/DateField.js +3 -4
  104. package/build/cjs/components/OpenFileDialog/FileList.js +19 -22
  105. package/build/cjs/components/OpenFileDialog/NameFilter.js +15 -21
  106. package/build/cjs/components/OpenFileDialog/OpenFileDialog.js +50 -79
  107. package/build/cjs/components/OpenFileDialog/PaginationControls.js +22 -28
  108. package/build/cjs/components/OpenFileDialog/VisTypeFilter.js +65 -36
  109. package/build/cjs/components/OpenFileDialog/__tests__/OpenFileDialog.spec.js +51 -0
  110. package/build/cjs/components/Options/VisualizationOptions.js +35 -46
  111. package/build/cjs/components/OrgUnitDimension/OrgUnitDimension.js +38 -60
  112. package/build/cjs/components/OrgUnitDimension/__tests__/OrgUnitDimension.spec.js +78 -44
  113. package/build/cjs/components/PeriodDimension/FixedPeriodFilter.js +17 -25
  114. package/build/cjs/components/PeriodDimension/FixedPeriodSelect.js +15 -21
  115. package/build/cjs/components/PeriodDimension/PeriodDimension.js +9 -12
  116. package/build/cjs/components/PeriodDimension/PeriodTransfer.js +49 -63
  117. package/build/cjs/components/PeriodDimension/RelativePeriodFilter.js +25 -30
  118. package/build/cjs/components/PeriodDimension/__tests__/FixedPeriodSingleSelect.spec.js +14 -21
  119. package/build/cjs/components/PeriodDimension/__tests__/PeriodDimension.spec.js +27 -23
  120. package/build/cjs/components/PeriodDimension/utils/fixedPeriods.js +6 -7
  121. package/build/cjs/components/PeriodDimension/utils/index.js +1 -5
  122. package/build/cjs/components/PivotTable/PivotTable.js +8 -10
  123. package/build/cjs/components/PivotTable/PivotTableBody.js +20 -29
  124. package/build/cjs/components/PivotTable/PivotTableCell.js +8 -12
  125. package/build/cjs/components/PivotTable/PivotTableClippedAxis.js +14 -17
  126. package/build/cjs/components/PivotTable/PivotTableColumnHeaderCell.js +7 -8
  127. package/build/cjs/components/PivotTable/PivotTableColumnHeaders.js +22 -29
  128. package/build/cjs/components/PivotTable/PivotTableContainer.js +5 -6
  129. package/build/cjs/components/PivotTable/PivotTableDimensionLabelCell.js +4 -5
  130. package/build/cjs/components/PivotTable/PivotTableEmptyCell.js +3 -4
  131. package/build/cjs/components/PivotTable/PivotTableEmptyRow.js +4 -5
  132. package/build/cjs/components/PivotTable/PivotTableEngineContext.js +5 -7
  133. package/build/cjs/components/PivotTable/PivotTableHead.js +13 -16
  134. package/build/cjs/components/PivotTable/PivotTableHeaderCell.js +8 -9
  135. package/build/cjs/components/PivotTable/PivotTableRow.js +20 -27
  136. package/build/cjs/components/PivotTable/PivotTableRowHeaderCell.js +5 -6
  137. package/build/cjs/components/PivotTable/PivotTableSortIcon.js +4 -5
  138. package/build/cjs/components/PivotTable/PivotTableTitleRow.js +19 -24
  139. package/build/cjs/components/PivotTable/PivotTableTitleRows.js +4 -5
  140. package/build/cjs/components/PivotTable/PivotTableValueCell.js +6 -8
  141. package/build/cjs/components/RichText/Editor/Editor.js +70 -85
  142. package/build/cjs/components/RichText/Editor/__tests__/Editor.spec.js +6 -7
  143. package/build/cjs/components/RichText/Parser/Parser.js +5 -10
  144. package/build/cjs/components/RichText/Parser/__tests__/MdParser.spec.js +1 -1
  145. package/build/cjs/components/RichText/Parser/__tests__/Parser.spec.js +22 -23
  146. package/build/cjs/components/Toolbar/HoverMenuBar/HoverMenuBar.js +20 -24
  147. package/build/cjs/components/Toolbar/HoverMenuBar/HoverMenuDropdown.js +8 -13
  148. package/build/cjs/components/Toolbar/HoverMenuBar/HoverMenuList.js +9 -17
  149. package/build/cjs/components/Toolbar/HoverMenuBar/HoverMenuListItem.js +11 -16
  150. package/build/cjs/components/Toolbar/HoverMenuBar/__tests__/HoverMenuBar.spec.js +56 -47
  151. package/build/cjs/components/Toolbar/HoverMenuBar/__tests__/HoverMenuDropdown.spec.js +8 -8
  152. package/build/cjs/components/Toolbar/HoverMenuBar/__tests__/HoverMenuList.spec.js +30 -23
  153. package/build/cjs/components/Toolbar/HoverMenuBar/__tests__/HoverMenuListItem.spec.js +23 -17
  154. package/build/cjs/components/Toolbar/HoverMenuBar/__tests__/__snapshots__/HoverMenuList.spec.js.snap +63 -0
  155. package/build/cjs/components/Toolbar/InterpretationsAndDetailsToggler.js +17 -21
  156. package/build/cjs/components/Toolbar/Toolbar.js +10 -16
  157. package/build/cjs/components/Toolbar/ToolbarSidebar.js +12 -18
  158. package/build/cjs/components/Toolbar/UpdateButton.js +18 -24
  159. package/build/cjs/components/Toolbar/__tests__/InterpretationsAndDetailsToggler.spec.js +19 -18
  160. package/build/cjs/components/Toolbar/__tests__/Toolbar.spec.js +8 -8
  161. package/build/cjs/components/Toolbar/__tests__/ToolbarSidebar.spec.js +14 -11
  162. package/build/cjs/components/Toolbar/__tests__/UpdateButton.spec.js +16 -14
  163. package/build/cjs/components/TransferOption.js +14 -15
  164. package/build/cjs/components/TranslationDialog/TranslationModal/LocalesSelect.js +19 -27
  165. package/build/cjs/components/TranslationDialog/TranslationModal/TranslationForm.js +17 -25
  166. package/build/cjs/components/TranslationDialog/TranslationModal/TranslationModal.js +9 -10
  167. package/build/cjs/components/TranslationDialog/TranslationModal/TranslationModalActions.js +18 -27
  168. package/build/cjs/components/TranslationDialog/TranslationModal/__tests__/TranslationModal.spec.js +25 -16
  169. package/build/cjs/components/TranslationDialog/TranslationModal/useTranslationsResults.js +3 -4
  170. package/build/cjs/components/UserMention/UserList.js +6 -7
  171. package/build/cjs/components/UserMention/UserMentionWrapper.js +13 -20
  172. package/build/cjs/components/UserMention/useUserSearchResults.js +12 -16
  173. package/build/cjs/components/VisTypeIcon.js +5 -6
  174. package/build/cjs/index.js +38 -39
  175. package/build/cjs/locales/ar_IQ/translations.json +20 -11
  176. package/build/cjs/locales/cs/translations.json +2 -0
  177. package/build/cjs/locales/en/translations.json +1 -0
  178. package/build/cjs/locales/es/translations.json +2 -0
  179. package/build/cjs/locales/fr/translations.json +2 -0
  180. package/build/cjs/locales/id/translations.json +20 -11
  181. package/build/cjs/locales/index.js +62 -62
  182. package/build/cjs/locales/lo/translations.json +2 -0
  183. package/build/cjs/locales/nb/translations.json +2 -0
  184. package/build/cjs/locales/prs/translations.json +2 -0
  185. package/build/cjs/locales/ps/translations.json +2 -0
  186. package/build/cjs/locales/pt/translations.json +2 -0
  187. package/build/cjs/locales/pt_BR/translations.json +2 -0
  188. package/build/cjs/locales/ru/translations.json +2 -0
  189. package/build/cjs/locales/si/translations.json +20 -11
  190. package/build/cjs/locales/sv/translations.json +20 -11
  191. package/build/cjs/locales/tet/translations.json +20 -11
  192. package/build/cjs/locales/tg/translations.json +2 -0
  193. package/build/cjs/locales/uk/translations.json +2 -0
  194. package/build/cjs/locales/ur/translations.json +2 -0
  195. package/build/cjs/locales/uz_UZ_Cyrl/translations.json +2 -0
  196. package/build/cjs/locales/uz_UZ_Latn/translations.json +4 -2
  197. package/build/cjs/locales/vi/translations.json +2 -0
  198. package/build/cjs/locales/zh/translations.json +2 -0
  199. package/build/cjs/locales/zh_CN/translations.json +17 -15
  200. package/build/cjs/modules/__tests__/expressions.spec.js +4 -5
  201. package/build/cjs/modules/__tests__/isNumeric.spec.js +33 -0
  202. package/build/cjs/modules/dimensionListItem.js +4 -5
  203. package/build/cjs/modules/expressions.js +3 -9
  204. package/build/cjs/modules/getPWAInstallationStatus.js +7 -9
  205. package/build/cjs/modules/layout/dimensionCreate.js +1 -3
  206. package/build/cjs/modules/layout/dimensionIsValid.js +3 -4
  207. package/build/cjs/modules/legends.js +5 -6
  208. package/build/cjs/modules/outliers/index.js +5 -6
  209. package/build/cjs/modules/outliers/iqr.js +4 -6
  210. package/build/cjs/modules/outliers/modZScore.js +6 -14
  211. package/build/cjs/modules/outliers/zScore.js +3 -4
  212. package/build/cjs/modules/pivotTable/AdaptiveClippingController.js +12 -16
  213. package/build/cjs/modules/pivotTable/PivotTableEngine.js +48 -59
  214. package/build/cjs/modules/pivotTable/clipAxis.js +7 -8
  215. package/build/cjs/modules/pivotTable/clipPartitionedAxis.js +9 -10
  216. package/build/cjs/modules/pivotTable/getHeaderForDisplay.js +8 -9
  217. package/build/cjs/modules/pivotTable/measureText.js +7 -9
  218. package/build/cjs/modules/pivotTable/useParentSize.js +1 -2
  219. package/build/cjs/modules/pivotTable/useScrollPosition.js +1 -2
  220. package/build/cjs/modules/pivotTable/useTableClipping.js +6 -7
  221. package/build/cjs/modules/relativeItems/index.js +1 -4
  222. package/build/cjs/modules/renderValue.js +1 -2
  223. package/build/cjs/modules/utils.js +11 -2
  224. package/build/cjs/visualizations/config/adapters/dhis_highcharts/addTrendLines.js +3 -8
  225. package/build/cjs/visualizations/config/adapters/dhis_highcharts/axis.js +7 -10
  226. package/build/cjs/visualizations/config/adapters/dhis_highcharts/customAxes.js +2 -5
  227. package/build/cjs/visualizations/config/adapters/dhis_highcharts/customSVGOptions/index.js +7 -8
  228. package/build/cjs/visualizations/config/adapters/dhis_highcharts/customSVGOptions/singleValue/getSingleValueBackgroundColor.js +1 -2
  229. package/build/cjs/visualizations/config/adapters/dhis_highcharts/customSVGOptions/singleValue/index.js +6 -7
  230. package/build/cjs/visualizations/config/adapters/dhis_highcharts/getFormatter.js +2 -3
  231. package/build/cjs/visualizations/config/adapters/dhis_highcharts/getSteps.js +2 -3
  232. package/build/cjs/visualizations/config/adapters/dhis_highcharts/getTrimmedConfig.js +3 -4
  233. package/build/cjs/visualizations/config/adapters/dhis_highcharts/index.js +8 -10
  234. package/build/cjs/visualizations/config/adapters/dhis_highcharts/legend.js +6 -7
  235. package/build/cjs/visualizations/config/adapters/dhis_highcharts/legendSet.js +22 -26
  236. package/build/cjs/visualizations/config/adapters/dhis_highcharts/plotOptions.js +8 -9
  237. package/build/cjs/visualizations/config/adapters/dhis_highcharts/series/index.js +18 -20
  238. package/build/cjs/visualizations/config/adapters/dhis_highcharts/series/pie.js +1 -4
  239. package/build/cjs/visualizations/config/adapters/dhis_highcharts/subtitle/index.js +1 -2
  240. package/build/cjs/visualizations/config/adapters/dhis_highcharts/yAxis/gauge.js +1 -3
  241. package/build/cjs/visualizations/config/index.js +11 -12
  242. package/build/cjs/visualizations/config/validators/dhis/index.js +3 -4
  243. package/build/cjs/visualizations/index.js +1 -4
  244. package/build/cjs/visualizations/store/adapters/dhis_highcharts/index.js +7 -8
  245. package/build/cjs/visualizations/store/index.js +15 -17
  246. package/build/cjs/visualizations/store/validators/dhis/index.js +5 -6
  247. package/build/cjs/visualizations/util/getFilterText.js +3 -6
  248. package/build/cjs/visualizations/util/shouldUseContrastColor.js +1 -2
  249. package/build/es/__demo__/OpenFileDialog.stories.js +17 -0
  250. package/build/es/__demo__/PivotTable.stories.js +165 -222
  251. package/build/es/api/__tests__/dimensions.spec.js +1 -2
  252. package/build/es/api/analytics/Analytics.js +8 -9
  253. package/build/es/api/analytics/AnalyticsBase.js +58 -77
  254. package/build/es/api/analytics/AnalyticsRequest.js +1 -2
  255. package/build/es/api/analytics/AnalyticsRequestBase.js +18 -21
  256. package/build/es/api/analytics/AnalyticsRequestPropertiesMixin.js +19 -38
  257. package/build/es/api/analytics/AnalyticsResponseHeader.js +5 -7
  258. package/build/es/api/analytics/__tests__/AnalyticsBase.spec.js +8 -10
  259. package/build/es/api/analytics/__tests__/AnalyticsRequest.spec.js +8 -2
  260. package/build/es/api/analytics/utils.js +11 -17
  261. package/build/es/api/dimensions.js +119 -148
  262. package/build/es/api/expression.js +39 -60
  263. package/build/es/api/organisationUnits.js +23 -35
  264. package/build/es/components/AboutAOUnit/AboutAOUnit.js +11 -18
  265. package/build/es/components/CachedDataQueryProvider.js +6 -7
  266. package/build/es/components/DashboardPluginWrapper/DashboardPluginWrapper.js +17 -20
  267. package/build/es/components/DataDimension/Calculation/CalculationModal.js +43 -59
  268. package/build/es/components/DataDimension/Calculation/DataElementOption.js +5 -6
  269. package/build/es/components/DataDimension/Calculation/DataElementSelector.js +28 -36
  270. package/build/es/components/DataDimension/Calculation/DndContext.js +28 -35
  271. package/build/es/components/DataDimension/Calculation/DraggingItem.js +5 -6
  272. package/build/es/components/DataDimension/Calculation/DropZone.js +4 -5
  273. package/build/es/components/DataDimension/Calculation/FormulaField.js +29 -32
  274. package/build/es/components/DataDimension/Calculation/FormulaItem.js +13 -14
  275. package/build/es/components/DataDimension/Calculation/MathOperatorSelector.js +23 -29
  276. package/build/es/components/DataDimension/Calculation/Operator.js +6 -7
  277. package/build/es/components/DataDimension/DataDimension.js +19 -30
  278. package/build/es/components/DataDimension/Info/CalculationInfo.js +13 -20
  279. package/build/es/components/DataDimension/Info/DataElementInfo.js +23 -36
  280. package/build/es/components/DataDimension/Info/DataElementOperandInfo.js +29 -42
  281. package/build/es/components/DataDimension/Info/DataSetInfo.js +26 -39
  282. package/build/es/components/DataDimension/Info/EventDataItemInfo.js +21 -34
  283. package/build/es/components/DataDimension/Info/IndicatorInfo.js +20 -30
  284. package/build/es/components/DataDimension/Info/InfoPopover.js +6 -7
  285. package/build/es/components/DataDimension/Info/InfoTable.js +39 -52
  286. package/build/es/components/DataDimension/Info/OptionInfo.js +13 -20
  287. package/build/es/components/DataDimension/Info/ProgramIndicatorInfo.js +45 -56
  288. package/build/es/components/DataDimension/ItemOptionsSelector/ItemOptionsSelector.js +21 -30
  289. package/build/es/components/DataDimension/ItemSelector/DataTypeSelector.js +6 -7
  290. package/build/es/components/DataDimension/ItemSelector/DetailSelector.js +5 -6
  291. package/build/es/components/DataDimension/ItemSelector/GroupSelector.js +9 -10
  292. package/build/es/components/DataDimension/ItemSelector/ItemSelector.js +85 -102
  293. package/build/es/components/DataDimension/ItemSelector/MetricSelector.js +5 -6
  294. package/build/es/components/DataDimension/SourceEmptyPlaceholder.js +10 -13
  295. package/build/es/components/DataDimension/TransferOption.js +35 -39
  296. package/build/es/components/DimensionMenu.js +13 -14
  297. package/build/es/components/DimensionsPanel/DimensionsPanel.js +7 -7
  298. package/build/es/components/DimensionsPanel/List/DimensionItem.js +11 -11
  299. package/build/es/components/DimensionsPanel/List/DimensionList.js +11 -9
  300. package/build/es/components/DimensionsPanel/List/OptionsButton.js +8 -11
  301. package/build/es/components/DimensionsPanel/List/RecommendedIcon.js +10 -13
  302. package/build/es/components/DimensionsPanel/List/__tests__/DimensionItem.spec.js +47 -40
  303. package/build/es/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap +110 -114
  304. package/build/es/components/DimensionsPanel/__tests__/DimensionsPanel.spec.js +35 -32
  305. package/build/es/components/DynamicDimension/DynamicDimension.js +9 -13
  306. package/build/es/components/DynamicDimension/ItemSelector.js +24 -36
  307. package/build/es/components/FileMenu/DeleteDialog.js +10 -14
  308. package/build/es/components/FileMenu/FileMenu.js +18 -28
  309. package/build/es/components/FileMenu/GetLinkDialog.js +7 -7
  310. package/build/es/components/FileMenu/RenameDialog.js +12 -19
  311. package/build/es/components/FileMenu/SaveAsDialog.js +12 -19
  312. package/build/es/components/FileMenu/__tests__/DeleteDialog.spec.js +23 -26
  313. package/build/es/components/FileMenu/__tests__/FileMenu.spec.js +56 -32
  314. package/build/es/components/FileMenu/__tests__/GetLinkDialog.spec.js +34 -38
  315. package/build/es/components/FileMenu/__tests__/RenameDialog.spec.js +18 -12
  316. package/build/es/components/FileMenu/__tests__/SaveAsDialog.spec.js +43 -36
  317. package/build/es/components/FileMenu/utils.js +10 -12
  318. package/build/es/components/Filter/Filter.js +21 -27
  319. package/build/es/components/Filter/__tests__/Filter.spec.js +28 -33
  320. package/build/es/components/Interpretations/InterpretationModal/Comment.js +7 -8
  321. package/build/es/components/Interpretations/InterpretationModal/CommentAddForm.js +9 -13
  322. package/build/es/components/Interpretations/InterpretationModal/CommentDeleteButton.js +9 -13
  323. package/build/es/components/Interpretations/InterpretationModal/CommentUpdateForm.js +11 -15
  324. package/build/es/components/Interpretations/InterpretationModal/InterpretationModal.js +18 -23
  325. package/build/es/components/Interpretations/InterpretationModal/InterpretationThread.js +11 -12
  326. package/build/es/components/Interpretations/InterpretationsUnit/InterpretationForm.js +11 -15
  327. package/build/es/components/Interpretations/InterpretationsUnit/InterpretationList.js +10 -11
  328. package/build/es/components/Interpretations/InterpretationsUnit/InterpretationsUnit.js +22 -31
  329. package/build/es/components/Interpretations/common/Interpretation/Interpretation.js +12 -13
  330. package/build/es/components/Interpretations/common/Interpretation/InterpretationDeleteButton.js +7 -11
  331. package/build/es/components/Interpretations/common/Interpretation/InterpretationSharingLink.js +4 -5
  332. package/build/es/components/Interpretations/common/Interpretation/InterpretationUpdateForm.js +14 -21
  333. package/build/es/components/Interpretations/common/Interpretation/useLike.js +5 -6
  334. package/build/es/components/Interpretations/common/Message/Message.js +6 -7
  335. package/build/es/components/Interpretations/common/Message/MessageButtonStrip.js +8 -11
  336. package/build/es/components/Interpretations/common/Message/MessageEditorContainer.js +18 -21
  337. package/build/es/components/Interpretations/common/Message/MessageIconButton.js +34 -40
  338. package/build/es/components/Interpretations/common/Message/MessageStatsBar.js +8 -11
  339. package/build/es/components/LegendKey/LegendKey.js +3 -4
  340. package/build/es/components/OfflineTooltip.js +18 -26
  341. package/build/es/components/OpenFileDialog/CreatedByFilter.js +26 -25
  342. package/build/es/components/OpenFileDialog/CustomSelectOption.js +23 -26
  343. package/build/es/components/OpenFileDialog/DateField.js +3 -4
  344. package/build/es/components/OpenFileDialog/FileList.js +19 -22
  345. package/build/es/components/OpenFileDialog/NameFilter.js +15 -21
  346. package/build/es/components/OpenFileDialog/OpenFileDialog.js +49 -78
  347. package/build/es/components/OpenFileDialog/PaginationControls.js +22 -28
  348. package/build/es/components/OpenFileDialog/VisTypeFilter.js +64 -36
  349. package/build/es/components/OpenFileDialog/__tests__/OpenFileDialog.spec.js +49 -0
  350. package/build/es/components/Options/VisualizationOptions.js +34 -44
  351. package/build/es/components/OrgUnitDimension/OrgUnitDimension.js +37 -58
  352. package/build/es/components/OrgUnitDimension/__tests__/OrgUnitDimension.spec.js +77 -43
  353. package/build/es/components/PeriodDimension/FixedPeriodFilter.js +17 -25
  354. package/build/es/components/PeriodDimension/FixedPeriodSelect.js +14 -19
  355. package/build/es/components/PeriodDimension/PeriodDimension.js +9 -12
  356. package/build/es/components/PeriodDimension/PeriodTransfer.js +48 -61
  357. package/build/es/components/PeriodDimension/RelativePeriodFilter.js +25 -30
  358. package/build/es/components/PeriodDimension/__tests__/FixedPeriodSingleSelect.spec.js +13 -20
  359. package/build/es/components/PeriodDimension/__tests__/PeriodDimension.spec.js +26 -22
  360. package/build/es/components/PeriodDimension/utils/fixedPeriods.js +6 -7
  361. package/build/es/components/PeriodDimension/utils/index.js +1 -5
  362. package/build/es/components/PivotTable/PivotTable.js +7 -8
  363. package/build/es/components/PivotTable/PivotTableBody.js +20 -29
  364. package/build/es/components/PivotTable/PivotTableCell.js +8 -12
  365. package/build/es/components/PivotTable/PivotTableClippedAxis.js +14 -17
  366. package/build/es/components/PivotTable/PivotTableColumnHeaderCell.js +7 -8
  367. package/build/es/components/PivotTable/PivotTableColumnHeaders.js +22 -29
  368. package/build/es/components/PivotTable/PivotTableContainer.js +5 -6
  369. package/build/es/components/PivotTable/PivotTableDimensionLabelCell.js +4 -5
  370. package/build/es/components/PivotTable/PivotTableEmptyCell.js +3 -4
  371. package/build/es/components/PivotTable/PivotTableEmptyRow.js +4 -5
  372. package/build/es/components/PivotTable/PivotTableEngineContext.js +4 -5
  373. package/build/es/components/PivotTable/PivotTableHead.js +13 -16
  374. package/build/es/components/PivotTable/PivotTableHeaderCell.js +8 -9
  375. package/build/es/components/PivotTable/PivotTableRow.js +20 -27
  376. package/build/es/components/PivotTable/PivotTableRowHeaderCell.js +5 -6
  377. package/build/es/components/PivotTable/PivotTableSortIcon.js +4 -5
  378. package/build/es/components/PivotTable/PivotTableTitleRow.js +18 -22
  379. package/build/es/components/PivotTable/PivotTableTitleRows.js +4 -5
  380. package/build/es/components/PivotTable/PivotTableValueCell.js +5 -6
  381. package/build/es/components/RichText/Editor/Editor.js +69 -83
  382. package/build/es/components/RichText/Editor/__tests__/Editor.spec.js +7 -8
  383. package/build/es/components/RichText/Parser/Parser.js +4 -8
  384. package/build/es/components/RichText/Parser/__tests__/MdParser.spec.js +1 -1
  385. package/build/es/components/RichText/Parser/__tests__/Parser.spec.js +21 -22
  386. package/build/es/components/Toolbar/HoverMenuBar/HoverMenuBar.js +20 -23
  387. package/build/es/components/Toolbar/HoverMenuBar/HoverMenuDropdown.js +7 -11
  388. package/build/es/components/Toolbar/HoverMenuBar/HoverMenuList.js +8 -15
  389. package/build/es/components/Toolbar/HoverMenuBar/HoverMenuListItem.js +10 -14
  390. package/build/es/components/Toolbar/HoverMenuBar/__tests__/HoverMenuBar.spec.js +57 -48
  391. package/build/es/components/Toolbar/HoverMenuBar/__tests__/HoverMenuDropdown.spec.js +7 -7
  392. package/build/es/components/Toolbar/HoverMenuBar/__tests__/HoverMenuList.spec.js +27 -20
  393. package/build/es/components/Toolbar/HoverMenuBar/__tests__/HoverMenuListItem.spec.js +21 -15
  394. package/build/es/components/Toolbar/HoverMenuBar/__tests__/__snapshots__/HoverMenuList.spec.js.snap +63 -0
  395. package/build/es/components/Toolbar/InterpretationsAndDetailsToggler.js +17 -21
  396. package/build/es/components/Toolbar/Toolbar.js +10 -16
  397. package/build/es/components/Toolbar/ToolbarSidebar.js +12 -18
  398. package/build/es/components/Toolbar/UpdateButton.js +18 -24
  399. package/build/es/components/Toolbar/__tests__/InterpretationsAndDetailsToggler.spec.js +18 -17
  400. package/build/es/components/Toolbar/__tests__/Toolbar.spec.js +7 -7
  401. package/build/es/components/Toolbar/__tests__/ToolbarSidebar.spec.js +13 -10
  402. package/build/es/components/Toolbar/__tests__/UpdateButton.spec.js +15 -13
  403. package/build/es/components/TransferOption.js +14 -15
  404. package/build/es/components/TranslationDialog/TranslationModal/LocalesSelect.js +19 -27
  405. package/build/es/components/TranslationDialog/TranslationModal/TranslationForm.js +16 -23
  406. package/build/es/components/TranslationDialog/TranslationModal/TranslationModal.js +8 -8
  407. package/build/es/components/TranslationDialog/TranslationModal/TranslationModalActions.js +18 -27
  408. package/build/es/components/TranslationDialog/TranslationModal/__tests__/TranslationModal.spec.js +24 -15
  409. package/build/es/components/TranslationDialog/TranslationModal/useTranslationsResults.js +3 -4
  410. package/build/es/components/UserMention/UserList.js +6 -7
  411. package/build/es/components/UserMention/UserMentionWrapper.js +12 -18
  412. package/build/es/components/UserMention/useUserSearchResults.js +12 -16
  413. package/build/es/components/VisTypeIcon.js +5 -6
  414. package/build/es/locales/ar_IQ/translations.json +20 -11
  415. package/build/es/locales/cs/translations.json +2 -0
  416. package/build/es/locales/en/translations.json +1 -0
  417. package/build/es/locales/es/translations.json +2 -0
  418. package/build/es/locales/fr/translations.json +2 -0
  419. package/build/es/locales/id/translations.json +20 -11
  420. package/build/es/locales/lo/translations.json +2 -0
  421. package/build/es/locales/nb/translations.json +2 -0
  422. package/build/es/locales/prs/translations.json +2 -0
  423. package/build/es/locales/ps/translations.json +2 -0
  424. package/build/es/locales/pt/translations.json +2 -0
  425. package/build/es/locales/pt_BR/translations.json +2 -0
  426. package/build/es/locales/ru/translations.json +2 -0
  427. package/build/es/locales/si/translations.json +20 -11
  428. package/build/es/locales/sv/translations.json +20 -11
  429. package/build/es/locales/tet/translations.json +20 -11
  430. package/build/es/locales/tg/translations.json +2 -0
  431. package/build/es/locales/uk/translations.json +2 -0
  432. package/build/es/locales/ur/translations.json +2 -0
  433. package/build/es/locales/uz_UZ_Cyrl/translations.json +2 -0
  434. package/build/es/locales/uz_UZ_Latn/translations.json +4 -2
  435. package/build/es/locales/vi/translations.json +2 -0
  436. package/build/es/locales/zh/translations.json +2 -0
  437. package/build/es/locales/zh_CN/translations.json +17 -15
  438. package/build/es/modules/__tests__/expressions.spec.js +4 -5
  439. package/build/es/modules/__tests__/isNumeric.spec.js +31 -0
  440. package/build/es/modules/dimensionListItem.js +4 -5
  441. package/build/es/modules/expressions.js +3 -9
  442. package/build/es/modules/getPWAInstallationStatus.js +7 -9
  443. package/build/es/modules/layout/dimensionCreate.js +1 -3
  444. package/build/es/modules/layout/dimensionIsValid.js +3 -4
  445. package/build/es/modules/legends.js +5 -6
  446. package/build/es/modules/outliers/index.js +2 -3
  447. package/build/es/modules/outliers/iqr.js +4 -6
  448. package/build/es/modules/outliers/modZScore.js +6 -14
  449. package/build/es/modules/outliers/zScore.js +3 -4
  450. package/build/es/modules/pivotTable/AdaptiveClippingController.js +12 -16
  451. package/build/es/modules/pivotTable/PivotTableEngine.js +48 -59
  452. package/build/es/modules/pivotTable/clipAxis.js +7 -8
  453. package/build/es/modules/pivotTable/clipPartitionedAxis.js +9 -10
  454. package/build/es/modules/pivotTable/getHeaderForDisplay.js +8 -9
  455. package/build/es/modules/pivotTable/measureText.js +7 -9
  456. package/build/es/modules/pivotTable/useParentSize.js +1 -2
  457. package/build/es/modules/pivotTable/useScrollPosition.js +1 -2
  458. package/build/es/modules/pivotTable/useTableClipping.js +6 -7
  459. package/build/es/modules/relativeItems/index.js +1 -4
  460. package/build/es/modules/renderValue.js +1 -2
  461. package/build/es/modules/utils.js +9 -1
  462. package/build/es/visualizations/config/adapters/dhis_highcharts/addTrendLines.js +3 -8
  463. package/build/es/visualizations/config/adapters/dhis_highcharts/axis.js +2 -5
  464. package/build/es/visualizations/config/adapters/dhis_highcharts/customAxes.js +2 -5
  465. package/build/es/visualizations/config/adapters/dhis_highcharts/customSVGOptions/index.js +7 -8
  466. package/build/es/visualizations/config/adapters/dhis_highcharts/customSVGOptions/singleValue/getSingleValueBackgroundColor.js +1 -2
  467. package/build/es/visualizations/config/adapters/dhis_highcharts/customSVGOptions/singleValue/index.js +6 -7
  468. package/build/es/visualizations/config/adapters/dhis_highcharts/getFormatter.js +1 -1
  469. package/build/es/visualizations/config/adapters/dhis_highcharts/getSteps.js +1 -1
  470. package/build/es/visualizations/config/adapters/dhis_highcharts/getTrimmedConfig.js +3 -4
  471. package/build/es/visualizations/config/adapters/dhis_highcharts/index.js +7 -8
  472. package/build/es/visualizations/config/adapters/dhis_highcharts/legend.js +6 -7
  473. package/build/es/visualizations/config/adapters/dhis_highcharts/legendSet.js +22 -26
  474. package/build/es/visualizations/config/adapters/dhis_highcharts/plotOptions.js +8 -9
  475. package/build/es/visualizations/config/adapters/dhis_highcharts/series/index.js +18 -20
  476. package/build/es/visualizations/config/adapters/dhis_highcharts/series/pie.js +1 -4
  477. package/build/es/visualizations/config/adapters/dhis_highcharts/yAxis/gauge.js +1 -3
  478. package/build/es/visualizations/config/index.js +11 -12
  479. package/build/es/visualizations/config/validators/dhis/index.js +3 -4
  480. package/build/es/visualizations/index.js +1 -4
  481. package/build/es/visualizations/store/adapters/dhis_highcharts/index.js +7 -8
  482. package/build/es/visualizations/store/index.js +15 -17
  483. package/build/es/visualizations/store/validators/dhis/index.js +5 -6
  484. package/build/es/visualizations/util/getFilterText.js +3 -6
  485. package/build/es/visualizations/util/shouldUseContrastColor.js +1 -2
  486. package/package.json +13 -15
  487. package/build/cjs/components/OrgUnitDimension/__tests__/__snapshots__/OrgUnitDimension.spec.js.snap +0 -89
  488. package/build/cjs/components/PeriodDimension/__tests__/PeriodSelector.spec.js +0 -29
  489. package/build/cjs/components/PeriodDimension/__tests__/__snapshots__/FixedPeriodSingleSelect.spec.js.snap +0 -93
  490. package/build/cjs/components/PeriodDimension/__tests__/__snapshots__/PeriodDimension.spec.js.snap +0 -17
  491. package/build/cjs/components/PeriodDimension/__tests__/__snapshots__/PeriodSelector.spec.js.snap +0 -89
  492. package/build/es/components/OrgUnitDimension/__tests__/__snapshots__/OrgUnitDimension.spec.js.snap +0 -89
  493. package/build/es/components/PeriodDimension/__tests__/PeriodSelector.spec.js +0 -26
  494. package/build/es/components/PeriodDimension/__tests__/__snapshots__/FixedPeriodSingleSelect.spec.js.snap +0 -93
  495. package/build/es/components/PeriodDimension/__tests__/__snapshots__/PeriodDimension.spec.js.snap +0 -17
  496. package/build/es/components/PeriodDimension/__tests__/__snapshots__/PeriodSelector.spec.js.snap +0 -89
@@ -1,35 +1,36 @@
1
1
  // Jest Snapshot v1, https://goo.gl/fbAQLP
2
2
 
3
3
  exports[`DimensionItem matches the snapshot 1`] = `
4
- <Fragment>
5
- <CssVariables
6
- colors={true}
7
- />
4
+ <div>
8
5
  <li
9
- className="item"
6
+ class="item"
10
7
  name="Period"
11
- onClick={[Function]}
12
- onMouseLeave={[Function]}
13
- onMouseOver={[Function]}
14
- style={Object {}}
15
8
  >
16
9
  <div
17
- className="label"
10
+ class="label"
18
11
  data-test="undefined-button-pe"
19
- tabIndex={0}
12
+ tabindex="0"
20
13
  >
21
14
  <div
22
- className="iconWrapper"
15
+ class="iconWrapper"
23
16
  >
24
- <SvgClock16
25
- className="fixedDimensionIcon"
26
- />
17
+ <svg
18
+ height="16"
19
+ viewBox="0 0 16 16"
20
+ width="16"
21
+ xmlns="http://www.w3.org/2000/svg"
22
+ >
23
+ <path
24
+ d="M8 1a7 7 0 110 14A7 7 0 018 1zm0 1a6 6 0 100 12A6 6 0 008 2zm.5 1.5v4.293l2.854 2.853-.708.708L7.5 8.207V3.5z"
25
+ fill="currentColor"
26
+ />
27
+ </svg>
27
28
  </div>
28
29
  <div
29
- className="labelWrapper"
30
+ class="labelWrapper"
30
31
  >
31
32
  <span
32
- className="labelText"
33
+ class="labelText"
33
34
  >
34
35
  <span
35
36
  data-dimensionid="pe"
@@ -37,47 +38,44 @@ exports[`DimensionItem matches the snapshot 1`] = `
37
38
  Period
38
39
  </span>
39
40
  </span>
40
- <RecommendedIcon
41
- dataTest="undefined-recommended-icon"
42
- isRecommended={false}
43
- />
44
41
  </div>
45
42
  </div>
46
43
  </li>
47
44
  <style />
48
- </Fragment>
45
+ </div>
49
46
  `;
50
47
 
51
48
  exports[`DimensionItem matches the snapshot with locked 1`] = `
52
- <Fragment>
53
- <CssVariables
54
- colors={true}
55
- />
49
+ <div>
56
50
  <li
57
- className="item"
51
+ class="item"
58
52
  name="Period"
59
- onClick={[Function]}
60
- onMouseLeave={[Function]}
61
- onMouseOver={[Function]}
62
- style={Object {}}
63
53
  >
64
54
  <div
65
- className="label"
55
+ class="label"
66
56
  data-test="undefined-button-pe"
67
- tabIndex={0}
57
+ tabindex="0"
68
58
  >
69
59
  <div
70
- className="iconWrapper"
60
+ class="iconWrapper"
71
61
  >
72
- <SvgClock16
73
- className="fixedDimensionIcon"
74
- />
62
+ <svg
63
+ height="16"
64
+ viewBox="0 0 16 16"
65
+ width="16"
66
+ xmlns="http://www.w3.org/2000/svg"
67
+ >
68
+ <path
69
+ d="M8 1a7 7 0 110 14A7 7 0 018 1zm0 1a6 6 0 100 12A6 6 0 008 2zm.5 1.5v4.293l2.854 2.853-.708.708L7.5 8.207V3.5z"
70
+ fill="currentColor"
71
+ />
72
+ </svg>
75
73
  </div>
76
74
  <div
77
- className="labelWrapper"
75
+ class="labelWrapper"
78
76
  >
79
77
  <span
80
- className="labelText"
78
+ class="labelText"
81
79
  >
82
80
  <span
83
81
  data-dimensionid="pe"
@@ -85,14 +83,10 @@ exports[`DimensionItem matches the snapshot with locked 1`] = `
85
83
  Period
86
84
  </span>
87
85
  </span>
88
- <RecommendedIcon
89
- dataTest="undefined-recommended-icon"
90
- isRecommended={false}
91
- />
92
86
  </div>
93
87
  </div>
94
88
  <div
95
- className="lockWrapper"
89
+ class="lockWrapper"
96
90
  >
97
91
  <svg
98
92
  fill="none"
@@ -101,49 +95,50 @@ exports[`DimensionItem matches the snapshot with locked 1`] = `
101
95
  xmlns="http://www.w3.org/2000/svg"
102
96
  >
103
97
  <path
104
- clipRule="evenodd"
98
+ clip-rule="evenodd"
105
99
  d="M3.5 1A1.5 1.5 0 0 0 2 2.5V3h3v-.5A1.5 1.5 0 0 0 3.5 1ZM1 2.5V3H0v6h7V3H6v-.5a2.5 2.5 0 0 0-5 0ZM1 8V4h5v4H1Zm3-1V5H3v2h1Z"
106
100
  fill="none"
107
- fillRule="evenodd"
101
+ fill-rule="evenodd"
108
102
  />
109
103
  </svg>
110
104
  </div>
111
105
  <style />
112
106
  </li>
113
107
  <style />
114
- </Fragment>
108
+ </div>
115
109
  `;
116
110
 
117
111
  exports[`DimensionItem matches the snapshot with onOptionsClick 1`] = `
118
- <Fragment>
119
- <CssVariables
120
- colors={true}
121
- />
112
+ <div>
122
113
  <li
123
- className="item"
114
+ class="item"
124
115
  name="Period"
125
- onClick={[Function]}
126
- onMouseLeave={[Function]}
127
- onMouseOver={[Function]}
128
- style={Object {}}
129
116
  >
130
117
  <div
131
- className="label"
118
+ class="label"
132
119
  data-test="undefined-button-pe"
133
- tabIndex={0}
120
+ tabindex="0"
134
121
  >
135
122
  <div
136
- className="iconWrapper"
123
+ class="iconWrapper"
137
124
  >
138
- <SvgClock16
139
- className="fixedDimensionIcon"
140
- />
125
+ <svg
126
+ height="16"
127
+ viewBox="0 0 16 16"
128
+ width="16"
129
+ xmlns="http://www.w3.org/2000/svg"
130
+ >
131
+ <path
132
+ d="M8 1a7 7 0 110 14A7 7 0 018 1zm0 1a6 6 0 100 12A6 6 0 008 2zm.5 1.5v4.293l2.854 2.853-.708.708L7.5 8.207V3.5z"
133
+ fill="currentColor"
134
+ />
135
+ </svg>
141
136
  </div>
142
137
  <div
143
- className="labelWrapper"
138
+ class="labelWrapper"
144
139
  >
145
140
  <span
146
- className="labelText"
141
+ class="labelText"
147
142
  >
148
143
  <span
149
144
  data-dimensionid="pe"
@@ -151,51 +146,48 @@ exports[`DimensionItem matches the snapshot with onOptionsClick 1`] = `
151
146
  Period
152
147
  </span>
153
148
  </span>
154
- <RecommendedIcon
155
- dataTest="undefined-recommended-icon"
156
- isRecommended={false}
157
- />
158
149
  </div>
159
150
  </div>
160
151
  <div
161
- className="optionsWrapper"
152
+ class="optionsWrapper"
162
153
  data-test="undefined-menu-pe"
163
154
  />
164
155
  </li>
165
156
  <style />
166
- </Fragment>
157
+ </div>
167
158
  `;
168
159
 
169
160
  exports[`DimensionItem matches the snapshot with recommended 1`] = `
170
- <Fragment>
171
- <CssVariables
172
- colors={true}
173
- />
161
+ <div>
174
162
  <li
175
- className="item"
163
+ class="item"
176
164
  name="Period"
177
- onClick={[Function]}
178
- onMouseLeave={[Function]}
179
- onMouseOver={[Function]}
180
- style={Object {}}
181
165
  >
182
166
  <div
183
- className="label"
167
+ class="label"
184
168
  data-test="undefined-button-pe"
185
- tabIndex={0}
169
+ tabindex="0"
186
170
  >
187
171
  <div
188
- className="iconWrapper"
172
+ class="iconWrapper"
189
173
  >
190
- <SvgClock16
191
- className="fixedDimensionIcon"
192
- />
174
+ <svg
175
+ height="16"
176
+ viewBox="0 0 16 16"
177
+ width="16"
178
+ xmlns="http://www.w3.org/2000/svg"
179
+ >
180
+ <path
181
+ d="M8 1a7 7 0 110 14A7 7 0 018 1zm0 1a6 6 0 100 12A6 6 0 008 2zm.5 1.5v4.293l2.854 2.853-.708.708L7.5 8.207V3.5z"
182
+ fill="currentColor"
183
+ />
184
+ </svg>
193
185
  </div>
194
186
  <div
195
- className="labelWrapper"
187
+ class="labelWrapper"
196
188
  >
197
189
  <span
198
- className="labelText"
190
+ class="labelText"
199
191
  >
200
192
  <span
201
193
  data-dimensionid="pe"
@@ -203,47 +195,55 @@ exports[`DimensionItem matches the snapshot with recommended 1`] = `
203
195
  Period
204
196
  </span>
205
197
  </span>
206
- <RecommendedIcon
207
- dataTest="undefined-recommended-icon"
208
- isRecommended={true}
209
- />
198
+ <span
199
+ aria-describedby=""
200
+ class="jsx-237564060"
201
+ data-test="dhis2-uicore-tooltip-reference"
202
+ tabindex="0"
203
+ >
204
+ <div
205
+ data-test="undefined-recommended-icon"
206
+ style="background-color: rgb(0, 150, 136); height: 6px; width: 6px; border-radius: 4px; margin-left: 6px; display: inline-block; cursor: pointer;"
207
+ />
208
+ </span>
210
209
  </div>
211
210
  </div>
212
211
  </li>
213
212
  <style />
214
- </Fragment>
213
+ </div>
215
214
  `;
216
215
 
217
216
  exports[`DimensionItem matches the snapshot with selected 1`] = `
218
- <Fragment>
219
- <CssVariables
220
- colors={true}
221
- />
217
+ <div>
222
218
  <li
223
- className="item selected"
219
+ class="item selected"
224
220
  name="Period"
225
- onClick={[Function]}
226
- onMouseLeave={[Function]}
227
- onMouseOver={[Function]}
228
- style={Object {}}
229
221
  >
230
222
  <div
231
- className="label"
223
+ class="label"
232
224
  data-test="undefined-button-pe"
233
- tabIndex={0}
225
+ tabindex="0"
234
226
  >
235
227
  <div
236
- className="iconWrapper"
228
+ class="iconWrapper"
237
229
  >
238
- <SvgClock16
239
- className="fixedDimensionIcon"
240
- />
230
+ <svg
231
+ height="16"
232
+ viewBox="0 0 16 16"
233
+ width="16"
234
+ xmlns="http://www.w3.org/2000/svg"
235
+ >
236
+ <path
237
+ d="M8 1a7 7 0 110 14A7 7 0 018 1zm0 1a6 6 0 100 12A6 6 0 008 2zm.5 1.5v4.293l2.854 2.853-.708.708L7.5 8.207V3.5z"
238
+ fill="currentColor"
239
+ />
240
+ </svg>
241
241
  </div>
242
242
  <div
243
- className="labelWrapper"
243
+ class="labelWrapper"
244
244
  >
245
245
  <span
246
- className="labelText"
246
+ class="labelText"
247
247
  >
248
248
  <span
249
249
  data-dimensionid="pe"
@@ -251,13 +251,9 @@ exports[`DimensionItem matches the snapshot with selected 1`] = `
251
251
  Period
252
252
  </span>
253
253
  </span>
254
- <RecommendedIcon
255
- dataTest="undefined-recommended-icon"
256
- isRecommended={false}
257
- />
258
254
  </div>
259
255
  </div>
260
256
  </li>
261
257
  <style />
262
- </Fragment>
258
+ </div>
263
259
  `;
@@ -1,35 +1,38 @@
1
- import { shallow } from 'enzyme';
1
+ import { render, screen } from '@testing-library/react';
2
+ import userEvent from '@testing-library/user-event';
2
3
  import React from 'react';
3
4
  import DimensionsPanel from '../DimensionsPanel.js';
4
- import DimensionList from '../List/DimensionList.js';
5
- describe('The Dimensions component ', () => {
6
- let shallowDimensions;
7
- let props;
8
- const dimensionsComponent = () => {
9
- if (!shallowDimensions) {
10
- shallowDimensions = shallow(/*#__PURE__*/React.createElement(DimensionsPanel, props));
11
- }
12
- return shallowDimensions;
13
- };
14
- beforeEach(() => {
15
- shallowDimensions = undefined;
16
- props = {
17
- dimensions: []
18
- };
19
- });
20
- it('renders a div', () => {
21
- expect(dimensionsComponent().find('div').length).toEqual(1);
22
- });
23
- it('renders a div containing everything else', () => {
24
- const wrappingDiv = dimensionsComponent().find('div').first();
25
- expect(wrappingDiv.children()).toEqual(dimensionsComponent().children());
26
- });
27
- it('renders a DimensionList with the correct prop', () => {
28
- const dimensionsComp = dimensionsComponent();
29
- dimensionsComp.setState({
30
- filterText: 'filteredText'
31
- });
32
- const filteredList = dimensionsComp.find(DimensionList).first();
33
- expect(filteredList.props().filterText).toEqual(dimensionsComp.state().filterText);
34
- });
5
+ const props = {
6
+ dimensions: [{
7
+ id: 'id1',
8
+ name: 'Dimension 1'
9
+ }, {
10
+ id: 'id2',
11
+ name: 'Dimension 2'
12
+ }]
13
+ };
14
+ test('DimensionsPanel renders a DimensionList component', () => {
15
+ render(/*#__PURE__*/React.createElement(DimensionsPanel, props));
16
+ const dimensionListComponent = screen.getByTestId('dhis2-analytics-dimension-list');
17
+ expect(dimensionListComponent).toBeInTheDocument();
18
+ const liElements = screen.getAllByTestId('dimension-item');
19
+ expect(liElements).toHaveLength(2);
20
+ const dim1Element = screen.getByText(props.dimensions[0].name);
21
+ expect(dim1Element).toBeInTheDocument();
22
+ const dim2Element = screen.getByText(props.dimensions[1].name);
23
+ expect(dim2Element).toBeInTheDocument();
24
+ });
25
+ test('DimensionsPanel can filter the dimension list', async () => {
26
+ const user = userEvent.setup();
27
+ render(/*#__PURE__*/React.createElement(DimensionsPanel, props));
28
+ const filterComponent = screen.getByPlaceholderText('Filter dimensions');
29
+ expect(filterComponent).toBeInTheDocument();
30
+ await user.click(filterComponent);
31
+ await user.keyboard('1');
32
+ const liElements = screen.getAllByTestId('dimension-item');
33
+ expect(liElements).toHaveLength(1);
34
+ const dim1Element = screen.getByText(props.dimensions[0].name);
35
+ expect(dim1Element).toBeInTheDocument();
36
+ const dim2Element = screen.queryByText(props.dimensions[1].name);
37
+ expect(dim2Element).not.toBeInTheDocument();
35
38
  });
@@ -8,15 +8,15 @@ import i18n from '../../locales/index.js';
8
8
  import ItemSelector from './ItemSelector.js';
9
9
  import styles from './styles/DynamicDimension.style.js';
10
10
  export const ALL_DYNAMIC_DIMENSION_ITEMS = 'ALL_ITEMS';
11
- export const DynamicDimension = _ref => {
12
- let {
13
- dimensionId,
14
- onSelect,
15
- selectedItems,
16
- rightFooter,
17
- dimensionTitle,
18
- displayNameProp
19
- } = _ref;
11
+ const SELECTED_ITEMS_PROP_DEFAULT = [];
12
+ export const DynamicDimension = ({
13
+ dimensionId,
14
+ onSelect = Function.prototype,
15
+ selectedItems = SELECTED_ITEMS_PROP_DEFAULT,
16
+ rightFooter,
17
+ dimensionTitle,
18
+ displayNameProp
19
+ }) => {
20
20
  const dataEngine = useDataEngine();
21
21
  const fetchItems = (page, searchTerm) => apiFetchItemsByDimension({
22
22
  dataEngine,
@@ -96,8 +96,4 @@ DynamicDimension.propTypes = {
96
96
  onSelect: PropTypes.func.isRequired,
97
97
  rightFooter: PropTypes.node
98
98
  };
99
- DynamicDimension.defaultProps = {
100
- selectedItems: [],
101
- onSelect: Function.prototype
102
- };
103
99
  export default DynamicDimension;
@@ -11,15 +11,15 @@ import { SelectedEmptyPlaceholder } from '../DataDimension/SelectedEmptyPlacehol
11
11
  import { SourceEmptyPlaceholder } from '../DataDimension/SourceEmptyPlaceholder.js';
12
12
  import styles from '../styles/DimensionSelector.style.js';
13
13
  import { TransferOption } from '../TransferOption.js';
14
- const ItemSelector = _ref => {
15
- let {
16
- selectedItems,
17
- noItemsMessage,
18
- onFetch,
19
- onSelect,
20
- rightFooter,
21
- dataTest
22
- } = _ref;
14
+ const SELECTED_ITEMS_PROP_DEFAULT = [];
15
+ const ItemSelector = ({
16
+ selectedItems = SELECTED_ITEMS_PROP_DEFAULT,
17
+ noItemsMessage,
18
+ onFetch,
19
+ onSelect,
20
+ rightFooter,
21
+ dataTest
22
+ }) => {
23
23
  const [state, setState] = useState({
24
24
  searchTerm: '',
25
25
  options: [],
@@ -39,18 +39,15 @@ const ItemSelector = _ref => {
39
39
  loading: true
40
40
  }));
41
41
  const result = await onFetch(page, state.searchTerm);
42
- const newOptions = (_result$dimensionItem = result.dimensionItems) === null || _result$dimensionItem === void 0 ? void 0 : _result$dimensionItem.map(_ref2 => {
43
- let {
44
- id,
45
- name,
46
- disabled
47
- } = _ref2;
48
- return {
49
- label: name,
50
- value: id,
51
- disabled
52
- };
53
- });
42
+ const newOptions = (_result$dimensionItem = result.dimensionItems) === null || _result$dimensionItem === void 0 ? void 0 : _result$dimensionItem.map(({
43
+ id,
44
+ name,
45
+ disabled
46
+ }) => ({
47
+ label: name,
48
+ value: id,
49
+ disabled
50
+ }));
54
51
  setState(state => ({
55
52
  ...state,
56
53
  loading: false,
@@ -86,12 +83,9 @@ const ItemSelector = _ref => {
86
83
  }
87
84
  };
88
85
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Transfer, {
89
- onChange: _ref3 => {
90
- let {
91
- selected
92
- } = _ref3;
93
- return onChange(selected);
94
- },
86
+ onChange: ({
87
+ selected
88
+ }) => onChange(selected),
95
89
  selected: selectedItems.map(item => item.value),
96
90
  options: [...state.options, ...selectedItems],
97
91
  loading: state.loading,
@@ -107,12 +101,9 @@ const ItemSelector = _ref => {
107
101
  filterPlaceholder: i18n.t('Search'),
108
102
  filterablePicked: false,
109
103
  searchTerm: state.searchTerm,
110
- onFilterChange: _ref4 => {
111
- let {
112
- value
113
- } = _ref4;
114
- return setSearchTerm(value);
115
- },
104
+ onFilterChange: ({
105
+ value
106
+ }) => setSearchTerm(value),
116
107
  enableOrderChange: true,
117
108
  height: TRANSFER_HEIGHT,
118
109
  optionsWidth: TRANSFER_OPTIONS_WIDTH,
@@ -142,7 +133,4 @@ ItemSelector.propTypes = {
142
133
  value: PropTypes.string.isRequired
143
134
  }))
144
135
  };
145
- ItemSelector.defaultProps = {
146
- selectedItems: []
147
- };
148
136
  export default ItemSelector;
@@ -6,22 +6,18 @@ import i18n from '../../locales/index.js';
6
6
  import { supportedFileTypes, endpointFromFileType, labelForFileType } from './utils.js';
7
7
  const getMutation = type => ({
8
8
  resource: endpointFromFileType(type),
9
- id: _ref => {
10
- let {
11
- id
12
- } = _ref;
13
- return id;
14
- },
9
+ id: ({
10
+ id
11
+ }) => id,
15
12
  type: 'delete'
16
13
  });
17
- export const DeleteDialog = _ref2 => {
18
- let {
19
- type,
20
- id,
21
- onClose,
22
- onDelete,
23
- onError
24
- } = _ref2;
14
+ export const DeleteDialog = ({
15
+ type,
16
+ id,
17
+ onClose,
18
+ onDelete,
19
+ onError
20
+ }) => {
25
21
  const mutation = useMemo(() => getMutation(type), []);
26
22
  const [mutate] = useDataMutation(mutation, {
27
23
  variables: {
@@ -10,24 +10,23 @@ import { GetLinkDialog } from './GetLinkDialog.js';
10
10
  import { RenameDialog } from './RenameDialog.js';
11
11
  import { SaveAsDialog } from './SaveAsDialog.js';
12
12
  import { supportedFileTypes } from './utils.js';
13
- export const FileMenu = _ref => {
14
- var _fileObject$access, _fileObject$access2, _fileObject$access3, _fileObject$access4, _fileObject$access5, _fileObject$access6, _fileObject$access7, _fileObject$access8, _fileObject$access9, _fileObject$access10;
15
- let {
16
- currentUser,
17
- defaultFilterVisType,
18
- fileType,
19
- fileObject,
20
- filterVisTypes,
21
- onNew,
22
- onOpen,
23
- onSave,
24
- onSaveAs,
25
- onRename,
26
- onShare,
27
- onDelete,
28
- onError,
29
- onTranslate
30
- } = _ref;
13
+ export const FileMenu = ({
14
+ currentUser,
15
+ defaultFilterVisType,
16
+ fileType,
17
+ fileObject,
18
+ filterVisTypes,
19
+ onNew = Function.prototype,
20
+ onOpen = Function.prototype,
21
+ onSave,
22
+ onSaveAs,
23
+ onRename = Function.prototype,
24
+ onShare = Function.prototype,
25
+ onDelete = Function.prototype,
26
+ onError = Function.prototype,
27
+ onTranslate = Function.prototype
28
+ }) => {
29
+ var _fileObject$access, _fileObject$access2, _fileObject$access3, _fileObject$access4, _fileObject$access5, _fileObject$access6, _fileObject$access7, _fileObject$access8, _fileObject$access9, _fileObject$access0;
31
30
  const [currentDialog, setCurrentDialog] = useState(null);
32
31
  const onMenuItemClick = dialogToOpen => () => {
33
32
  setCurrentDialog(dialogToOpen);
@@ -184,20 +183,11 @@ export const FileMenu = _ref => {
184
183
  icon: /*#__PURE__*/React.createElement(IconDelete24, {
185
184
  color: fileObject !== null && fileObject !== void 0 && fileObject.id && fileObject !== null && fileObject !== void 0 && (_fileObject$access9 = fileObject.access) !== null && _fileObject$access9 !== void 0 && _fileObject$access9.delete ? colors.red700 : iconInactiveColor
186
185
  }),
187
- disabled: !(fileObject !== null && fileObject !== void 0 && fileObject.id && fileObject !== null && fileObject !== void 0 && (_fileObject$access10 = fileObject.access) !== null && _fileObject$access10 !== void 0 && _fileObject$access10.delete),
186
+ disabled: !(fileObject !== null && fileObject !== void 0 && fileObject.id && fileObject !== null && fileObject !== void 0 && (_fileObject$access0 = fileObject.access) !== null && _fileObject$access0 !== void 0 && _fileObject$access0.delete),
188
187
  onClick: onMenuItemClick('delete'),
189
188
  dataTest: "file-menu-delete"
190
189
  }))), renderDialog());
191
190
  };
192
- FileMenu.defaultProps = {
193
- onDelete: Function.prototype,
194
- onError: Function.prototype,
195
- onNew: Function.prototype,
196
- onOpen: Function.prototype,
197
- onRename: Function.prototype,
198
- onShare: Function.prototype,
199
- onTranslate: Function.prototype
200
- };
201
191
  FileMenu.propTypes = {
202
192
  currentUser: PropTypes.object,
203
193
  defaultFilterVisType: PropTypes.string,