@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,46 +1,53 @@
1
1
  "use strict";
2
2
 
3
- var _enzyme = require("enzyme");
4
- var _react = _interopRequireDefault(require("react"));
3
+ var _react = require("@testing-library/react");
4
+ var _react2 = _interopRequireDefault(require("react"));
5
5
  var _DimensionItem = _interopRequireDefault(require("../DimensionItem.js"));
6
6
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
7
- describe('DimensionItem', () => {
8
- let props;
9
- let shallowItem;
10
- const dimensionItem = () => {
11
- if (!shallowItem) {
12
- shallowItem = (0, _enzyme.shallow)(/*#__PURE__*/_react.default.createElement(_DimensionItem.default, props));
13
- }
14
- return shallowItem;
15
- };
16
- beforeEach(() => {
17
- props = {
18
- id: 'pe',
19
- name: 'Period',
20
- isDeactivated: false,
21
- isSelected: false,
22
- isRecommended: false,
23
- isLocked: false
24
- };
25
- shallowItem = undefined;
26
- });
27
- it('matches the snapshot', () => {
28
- expect(dimensionItem()).toMatchSnapshot();
29
- });
30
- it('matches the snapshot with recommended', () => {
31
- props.isRecommended = true;
32
- expect(dimensionItem()).toMatchSnapshot();
33
- });
34
- it('matches the snapshot with selected', () => {
35
- props.isSelected = true;
36
- expect(dimensionItem()).toMatchSnapshot();
37
- });
38
- it('matches the snapshot with locked', () => {
39
- props.isLocked = true;
40
- expect(dimensionItem()).toMatchSnapshot();
41
- });
42
- it('matches the snapshot with onOptionsClick', () => {
43
- props.onOptionsClick = jest.fn();
44
- expect(dimensionItem()).toMatchSnapshot();
45
- });
7
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
8
+ const props = {
9
+ id: 'pe',
10
+ name: 'Period',
11
+ isDeactivated: false,
12
+ isSelected: false,
13
+ isRecommended: false,
14
+ isLocked: false
15
+ };
16
+ test('DimensionItem matches the snapshot', () => {
17
+ const {
18
+ container
19
+ } = (0, _react.render)(/*#__PURE__*/_react2.default.createElement(_DimensionItem.default, props));
20
+ expect(container).toMatchSnapshot();
21
+ });
22
+ test('DimensionItem matches the snapshot with recommended', () => {
23
+ const {
24
+ container
25
+ } = (0, _react.render)(/*#__PURE__*/_react2.default.createElement(_DimensionItem.default, _extends({}, props, {
26
+ isRecommended: true
27
+ })));
28
+ expect(container).toMatchSnapshot();
29
+ });
30
+ test('DimensionItem matches the snapshot with selected', () => {
31
+ const {
32
+ container
33
+ } = (0, _react.render)(/*#__PURE__*/_react2.default.createElement(_DimensionItem.default, _extends({}, props, {
34
+ isSelected: true
35
+ })));
36
+ expect(container).toMatchSnapshot();
37
+ });
38
+ test('DimensionItem matches the snapshot with locked', () => {
39
+ const {
40
+ container
41
+ } = (0, _react.render)(/*#__PURE__*/_react2.default.createElement(_DimensionItem.default, _extends({}, props, {
42
+ isLocked: true
43
+ })));
44
+ expect(container).toMatchSnapshot();
45
+ });
46
+ test('DimensionItem matches the snapshot with onOptionsClick', () => {
47
+ const {
48
+ container
49
+ } = (0, _react.render)(/*#__PURE__*/_react2.default.createElement(_DimensionItem.default, _extends({}, props, {
50
+ onOptionsClick: jest.fn()
51
+ })));
52
+ expect(container).toMatchSnapshot();
46
53
  });
@@ -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,38 +1,41 @@
1
1
  "use strict";
2
2
 
3
- var _enzyme = require("enzyme");
4
- var _react = _interopRequireDefault(require("react"));
3
+ var _react = require("@testing-library/react");
4
+ var _userEvent = _interopRequireDefault(require("@testing-library/user-event"));
5
+ var _react2 = _interopRequireDefault(require("react"));
5
6
  var _DimensionsPanel = _interopRequireDefault(require("../DimensionsPanel.js"));
6
- var _DimensionList = _interopRequireDefault(require("../List/DimensionList.js"));
7
7
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
8
- describe('The Dimensions component ', () => {
9
- let shallowDimensions;
10
- let props;
11
- const dimensionsComponent = () => {
12
- if (!shallowDimensions) {
13
- shallowDimensions = (0, _enzyme.shallow)(/*#__PURE__*/_react.default.createElement(_DimensionsPanel.default, props));
14
- }
15
- return shallowDimensions;
16
- };
17
- beforeEach(() => {
18
- shallowDimensions = undefined;
19
- props = {
20
- dimensions: []
21
- };
22
- });
23
- it('renders a div', () => {
24
- expect(dimensionsComponent().find('div').length).toEqual(1);
25
- });
26
- it('renders a div containing everything else', () => {
27
- const wrappingDiv = dimensionsComponent().find('div').first();
28
- expect(wrappingDiv.children()).toEqual(dimensionsComponent().children());
29
- });
30
- it('renders a DimensionList with the correct prop', () => {
31
- const dimensionsComp = dimensionsComponent();
32
- dimensionsComp.setState({
33
- filterText: 'filteredText'
34
- });
35
- const filteredList = dimensionsComp.find(_DimensionList.default).first();
36
- expect(filteredList.props().filterText).toEqual(dimensionsComp.state().filterText);
37
- });
8
+ const props = {
9
+ dimensions: [{
10
+ id: 'id1',
11
+ name: 'Dimension 1'
12
+ }, {
13
+ id: 'id2',
14
+ name: 'Dimension 2'
15
+ }]
16
+ };
17
+ test('DimensionsPanel renders a DimensionList component', () => {
18
+ (0, _react.render)(/*#__PURE__*/_react2.default.createElement(_DimensionsPanel.default, props));
19
+ const dimensionListComponent = _react.screen.getByTestId('dhis2-analytics-dimension-list');
20
+ expect(dimensionListComponent).toBeInTheDocument();
21
+ const liElements = _react.screen.getAllByTestId('dimension-item');
22
+ expect(liElements).toHaveLength(2);
23
+ const dim1Element = _react.screen.getByText(props.dimensions[0].name);
24
+ expect(dim1Element).toBeInTheDocument();
25
+ const dim2Element = _react.screen.getByText(props.dimensions[1].name);
26
+ expect(dim2Element).toBeInTheDocument();
27
+ });
28
+ test('DimensionsPanel can filter the dimension list', async () => {
29
+ const user = _userEvent.default.setup();
30
+ (0, _react.render)(/*#__PURE__*/_react2.default.createElement(_DimensionsPanel.default, props));
31
+ const filterComponent = _react.screen.getByPlaceholderText('Filter dimensions');
32
+ expect(filterComponent).toBeInTheDocument();
33
+ await user.click(filterComponent);
34
+ await user.keyboard('1');
35
+ const liElements = _react.screen.getAllByTestId('dimension-item');
36
+ expect(liElements).toHaveLength(1);
37
+ const dim1Element = _react.screen.getByText(props.dimensions[0].name);
38
+ expect(dim1Element).toBeInTheDocument();
39
+ const dim2Element = _react.screen.queryByText(props.dimensions[1].name);
40
+ expect(dim2Element).not.toBeInTheDocument();
38
41
  });
@@ -15,15 +15,15 @@ var _ItemSelector = _interopRequireDefault(require("./ItemSelector.js"));
15
15
  var _DynamicDimensionStyle = _interopRequireDefault(require("./styles/DynamicDimension.style.js"));
16
16
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
17
17
  const ALL_DYNAMIC_DIMENSION_ITEMS = exports.ALL_DYNAMIC_DIMENSION_ITEMS = 'ALL_ITEMS';
18
- const DynamicDimension = _ref => {
19
- let {
20
- dimensionId,
21
- onSelect,
22
- selectedItems,
23
- rightFooter,
24
- dimensionTitle,
25
- displayNameProp
26
- } = _ref;
18
+ const SELECTED_ITEMS_PROP_DEFAULT = [];
19
+ const DynamicDimension = ({
20
+ dimensionId,
21
+ onSelect = Function.prototype,
22
+ selectedItems = SELECTED_ITEMS_PROP_DEFAULT,
23
+ rightFooter,
24
+ dimensionTitle,
25
+ displayNameProp
26
+ }) => {
27
27
  const dataEngine = (0, _appRuntime.useDataEngine)();
28
28
  const fetchItems = (page, searchTerm) => (0, _dimensions.apiFetchItemsByDimension)({
29
29
  dataEngine,
@@ -104,8 +104,4 @@ DynamicDimension.propTypes = {
104
104
  onSelect: _propTypes.default.func.isRequired,
105
105
  rightFooter: _propTypes.default.node
106
106
  };
107
- DynamicDimension.defaultProps = {
108
- selectedItems: [],
109
- onSelect: Function.prototype
110
- };
111
107
  var _default = exports.default = DynamicDimension;