@geotab/zenith 3.14.1 → 3.15.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (523) hide show
  1. package/README.md +28 -2
  2. package/dist/advancedGroupsFilter/advancedGroupsFilterFormSection.js +17 -7
  3. package/dist/alert/banner.d.ts +2 -3
  4. package/dist/alert/hooks/useAlertState.d.ts +0 -1
  5. package/dist/banner/bannerMultipLine.d.ts +0 -1
  6. package/dist/banner/bannerSingleLine.d.ts +0 -1
  7. package/dist/banner/utils/isSummaryErrorElement.d.ts +1 -2
  8. package/dist/calendar/dateUtils.js +2 -2
  9. package/dist/card/card.js +17 -7
  10. package/dist/card/components/content.d.ts +0 -1
  11. package/dist/cardContainer/helpers/getSizeClass.js +1 -2
  12. package/dist/chart/accessibleChart/accessibleChart.js +1 -1
  13. package/dist/chart/accessibleChart/accessibleChartNarrative.d.ts +1 -1
  14. package/dist/chart/accessibleChart/accessibleChartNarrative.js +11 -5
  15. package/dist/chart/accessibleChart/generatePieNarrative.d.ts +7 -0
  16. package/dist/chart/accessibleChart/generatePieNarrative.js +179 -0
  17. package/dist/chart/accessibleChart/interfaces.d.ts +1 -0
  18. package/dist/chart/barChart/getDefaultOptions.js +5 -6
  19. package/dist/chart/barChart.js +152 -50
  20. package/dist/chart/interfaces.d.ts +0 -1
  21. package/dist/chart/lineChart/getDefaultOptions.js +5 -6
  22. package/dist/chart/lineChart/useChartTicks.d.ts +0 -1
  23. package/dist/chart/lineChart/useSummary.d.ts +7 -8
  24. package/dist/chart/lineChart.js +167 -59
  25. package/dist/chart/pieChart.js +174 -76
  26. package/dist/chart/plugins/linePlugin/getInterpolatedValue.js +1 -2
  27. package/dist/chart/plugins/linePlugin/linePlugin.js +29 -7
  28. package/dist/chart/utils/convertDates.d.ts +1 -1
  29. package/dist/chart/utils/getFormattedLabel.js +1 -2
  30. package/dist/chart/utils/getNiceAxisRange.d.ts +21 -0
  31. package/dist/chart/utils/getNiceAxisRange.js +76 -0
  32. package/dist/chart/utils/getRange.js +2 -2
  33. package/dist/chart/utils/getYAxisMeta.d.ts +2 -5
  34. package/dist/chart/utils/getYAxisMeta.js +17 -2
  35. package/dist/chart/utils/getYAxisTickCount.d.ts +15 -0
  36. package/dist/chart/utils/getYAxisTickCount.js +19 -0
  37. package/dist/chart/utils/resampleArrayEvenly.js +1 -2
  38. package/dist/checkbox/checkbox.js +17 -7
  39. package/dist/checkboxListWithAction/checkboxListWithAction.d.ts +0 -1
  40. package/dist/chip/chip.d.ts +0 -1
  41. package/dist/chip/utils/useChip.d.ts +0 -1
  42. package/dist/commonHelpers/HOC/reducerLogger/reducerLogger.d.ts +1 -1
  43. package/dist/commonHelpers/arrowNavigation/components/arrowButton/arrowButton.d.ts +0 -1
  44. package/dist/commonHelpers/arrowNavigation/hooks/useHoldOnScroll.d.ts +0 -1
  45. package/dist/commonHelpers/generateId.js +1 -2
  46. package/dist/commonHelpers/hooks/breakpoints.d.ts +4 -0
  47. package/dist/commonHelpers/hooks/breakpoints.js +7 -0
  48. package/dist/commonHelpers/hooks/fetch.reducer.d.ts +1 -1
  49. package/dist/commonHelpers/hooks/fetch.reducer.js +1 -2
  50. package/dist/commonHelpers/hooks/useDebouncedMemo.d.ts +0 -1
  51. package/dist/commonHelpers/hooks/useDebouncedMemo.js +1 -2
  52. package/dist/commonHelpers/hooks/useDeviceType.js +2 -2
  53. package/dist/commonHelpers/hooks/useEscape.d.ts +1 -1
  54. package/dist/commonHelpers/hooks/useGridSize.d.ts +0 -1
  55. package/dist/commonHelpers/hooks/useMobileOrTablet.d.ts +1 -0
  56. package/dist/commonHelpers/hooks/useMobileOrTablet.js +21 -0
  57. package/dist/commonHelpers/hooks/usePillSize.d.ts +0 -1
  58. package/dist/{gridLayout → commonHelpers}/hooks/useTablet.js +8 -11
  59. package/dist/commonHelpers/utils.js +3 -3
  60. package/dist/commonStyles/colors/colors.less +1 -0
  61. package/dist/dataFeed/dataFeed.d.ts +1 -1
  62. package/dist/dataFeed/dataFeed.js +2 -2
  63. package/dist/dataFeed/dataFeedCell/dataFeedCell.d.ts +3 -1
  64. package/dist/dataFeed/dataFeedColumnsItems.d.ts +2 -2
  65. package/dist/dataGrid/cell/cell.d.ts +3 -1
  66. package/dist/dataGrid/columns/actionsColumn/actionsButton.js +1 -2
  67. package/dist/dataGrid/columns/actionsColumn/actionsColumn.d.ts +3 -3
  68. package/dist/dataGrid/dataGrid.d.ts +13 -1
  69. package/dist/dataGrid/dataGrid.js +48 -3
  70. package/dist/dataGrid/emptySearchList/emptySearchList.d.ts +0 -1
  71. package/dist/dataGrid/row/row.d.ts +3 -1
  72. package/dist/dataGrid/withActions/withActions.d.ts +1 -1
  73. package/dist/dataGrid/withFlexibleColumns/components/columnSettingsList.js +1 -2
  74. package/dist/dataGrid/withFlexibleColumns/withFlexibleColumns.d.ts +1 -1
  75. package/dist/dataGrid/withLoading/withLoading.d.ts +1 -1
  76. package/dist/dataGrid/withSelectableRows/withLimitedSelectableRows.d.ts +1 -1
  77. package/dist/dataGrid/withSelectableRows/withSelectableRows.d.ts +1 -1
  78. package/dist/dataGrid/withSortableColumns/withSortableColumns.d.ts +1 -1
  79. package/dist/dateInputInner/dateInputInnerReducer.js +2 -2
  80. package/dist/dateRangeRaw/utils/areMapsEqual.js +1 -2
  81. package/dist/dialog/dialog.d.ts +0 -1
  82. package/dist/dropdown/dropdown.js +1 -1
  83. package/dist/dropdown/useDropdownState.d.ts +0 -1
  84. package/dist/dropdownRaw/dropdownHelper.js +2 -2
  85. package/dist/dropdownRaw/dropdownList.d.ts +3 -2
  86. package/dist/dropdownRaw/dropdownList.js +31 -49
  87. package/dist/dropdownRaw/dropdownRaw.js +34 -13
  88. package/dist/dropdownRaw/stateReducer/stateReducer.d.ts +4 -1
  89. package/dist/dropdownRaw/stateReducer/stateReducer.js +33 -23
  90. package/dist/dropdownRaw/stateReducer/stateReducerHelper.d.ts +1 -2
  91. package/dist/dropdownRaw/stateReducer/stateReducerHelper.js +8 -13
  92. package/dist/dropdownRaw/types.d.ts +20 -0
  93. package/dist/feedbackContainer/feedbackContainer.js +17 -7
  94. package/dist/feedbackContainer/hooks/useFeedbackAlert.d.ts +0 -1
  95. package/dist/feedbackContainer/hooks/useFeedbackToast.d.ts +0 -1
  96. package/dist/filters/components/filtersDropdown.js +2 -2
  97. package/dist/filters/components/filtersItem.d.ts +2 -2
  98. package/dist/filters/components/filtersSearchList.d.ts +0 -1
  99. package/dist/filters/components/filtersSelect.d.ts +0 -1
  100. package/dist/filters/components/filtersSelectCompact.d.ts +0 -1
  101. package/dist/filters/components/filtersSelectListItem.d.ts +0 -1
  102. package/dist/filters/components/filtersSelectUnfoldingPill.d.ts +0 -1
  103. package/dist/filters/components/filtersSidePanelItem.js +17 -7
  104. package/dist/filters/filtersHelper.d.ts +1 -1
  105. package/dist/filters/filtersHelper.js +5 -5
  106. package/dist/filters/filtersHooks.d.ts +0 -1
  107. package/dist/filtersBar/components/filtersBarDropdownWithCheckbox/filtersBarDropdownWithCheckbox.js +1 -1
  108. package/dist/filtersBar/components/filtersBarPeriodPicker/getRangeOption.js +2 -2
  109. package/dist/filtersBar/filtersBar.js +2 -2
  110. package/dist/filtersBar/filtersBarActions/filtersBarActions.d.ts +0 -1
  111. package/dist/filtersBar/filtersBarInterfaces.d.ts +0 -1
  112. package/dist/filtersBar/filtersBarReducer.js +2 -2
  113. package/dist/filtersBar/filtersBarSidePanel/components/filtersBarSidePanelDropdownWithCheckbox/filtersBarSidePanelDropdownWithCheckbox.d.ts +4 -10
  114. package/dist/filtersBar/filtersBarSidePanel/sidePanelReducer.js +2 -2
  115. package/dist/filtersBar/utils/getNumberOfChangedFilters.js +1 -2
  116. package/dist/footerButtons/footerButtons.js +17 -7
  117. package/dist/formField/components/formFieldAdditionalInfo.d.ts +0 -1
  118. package/dist/formField/components/formFieldCounter.d.ts +0 -1
  119. package/dist/formField/components/formFieldLoading.d.ts +0 -1
  120. package/dist/formField/components/formFieldSkeleton.d.ts +0 -1
  121. package/dist/formField/components/formFieldWithLabel.d.ts +0 -1
  122. package/dist/formField/components/formFieldWithoutLabel.d.ts +0 -1
  123. package/dist/formField/formField.d.ts +1 -1
  124. package/dist/formField/hooks/useBanner.d.ts +0 -1
  125. package/dist/formField/hooks/useDisabled.d.ts +1 -1
  126. package/dist/formGroup/components/customRow/customRow.d.ts +0 -1
  127. package/dist/formGroup/formGroup.js +17 -7
  128. package/dist/formGroup/hooks/listHooks/useStateToElements.d.ts +0 -1
  129. package/dist/formGroup/hooks/listHooks/useStateToElements.js +1 -1
  130. package/dist/formGroup/utils/formGroupProvider.d.ts +0 -1
  131. package/dist/formGroup/utils/isFormLabel.d.ts +1 -1
  132. package/dist/formGroupItem/formGroupItem.d.ts +0 -1
  133. package/dist/formLayout/components/layoutColumn/layoutColum.d.ts +0 -1
  134. package/dist/formLayout/hooks/useFormButtons.d.ts +1 -1
  135. package/dist/formLayout/types.d.ts +0 -1
  136. package/dist/formLayout/utils/attachHeadings.d.ts +1 -1
  137. package/dist/formLayout/utils/attachSeparators.d.ts +0 -1
  138. package/dist/formLayout/utils/getChildrenWithCustomColumns.d.ts +1 -2
  139. package/dist/formLayout/utils/getChildrenWithCustomColumns.js +2 -2
  140. package/dist/formLayout/utils/getFieldLabel.js +5 -5
  141. package/dist/formSection/components/actions.d.ts +0 -1
  142. package/dist/formSection/components/additional.d.ts +0 -1
  143. package/dist/formSection/utils/isFormSection.d.ts +2 -4
  144. package/dist/formStepper/components/formStepRaw.d.ts +0 -1
  145. package/dist/formStepper/formStepper.d.ts +0 -1
  146. package/dist/formStepper/formStepper.js +5 -5
  147. package/dist/formStepperButtons/formStepperButtons.js +3 -3
  148. package/dist/gridLayout/hooks/useStretch.js +1 -1
  149. package/dist/gridLayout/utils/convertStateToClasses.js +1 -2
  150. package/dist/gridLayout/utils/gridLayoutProvider.d.ts +0 -1
  151. package/dist/gridLayout/utils/gridLayoutProvider.js +1 -1
  152. package/dist/gridLayout/utils/isGridItem.d.ts +1 -1
  153. package/dist/groupsFilter/groupsHelper.d.ts +5 -5
  154. package/dist/groupsFilterRaw/groupsFilterHelper.js +16 -16
  155. package/dist/groupsFilterRaw/groupsHelper.d.ts +1 -1
  156. package/dist/groupsFilterRaw/groupsHelper.js +4 -4
  157. package/dist/groupsFilterRaw/stateReducer/stateReducer.d.ts +1 -1
  158. package/dist/groupsFilterRaw/stateReducer/stateReducer.js +2 -2
  159. package/dist/groupsFilterRaw/testData.js +3 -4
  160. package/dist/groupsFilterRaw/uiStateReducer/uiStateReducer.js +2 -2
  161. package/dist/header/components/collapsedItemsControl/utils/handleCustomMenuWrapper.js +5 -0
  162. package/dist/header/components/mobileFilterControl/mobileFilterControl.d.ts +0 -1
  163. package/dist/header/components/mobileSearchControl/mobileSearchControl.d.ts +0 -1
  164. package/dist/header/header.js +17 -7
  165. package/dist/header/headerButton.d.ts +0 -1
  166. package/dist/header/headerContext.d.ts +1 -2
  167. package/dist/header/headerHelpers.d.ts +5 -5
  168. package/dist/header/headerHelpers.js +17 -7
  169. package/dist/header/hooks/useNonFittingElements.d.ts +3 -4
  170. package/dist/headerTitle/headerTitle.d.ts +0 -1
  171. package/dist/icons/iconAce.d.ts +3 -0
  172. package/dist/icons/iconAce.js +12 -0
  173. package/dist/icons/iconBreak.d.ts +3 -0
  174. package/dist/icons/iconBreak.js +12 -0
  175. package/dist/icons/iconChevronStepper.d.ts +3 -0
  176. package/dist/icons/iconChevronStepper.js +12 -0
  177. package/dist/icons/iconPotato.d.ts +3 -0
  178. package/dist/icons/iconPotato.js +12 -0
  179. package/dist/icons/iconToggleLarge.d.ts +3 -0
  180. package/dist/icons/iconToggleLarge.js +12 -0
  181. package/dist/icons/iconToggleSmall.d.ts +3 -0
  182. package/dist/icons/iconToggleSmall.js +12 -0
  183. package/dist/icons/iconTrendNeutral.d.ts +3 -0
  184. package/dist/icons/iconTrendNeutral.js +12 -0
  185. package/dist/icons/iconTruck.d.ts +3 -0
  186. package/dist/icons/iconTruck.js +12 -0
  187. package/dist/index.css +219 -169
  188. package/dist/index.d.ts +8 -0
  189. package/dist/index.js +30 -13
  190. package/dist/layout/layout.d.ts +2 -1
  191. package/dist/layout/layout.js +17 -7
  192. package/dist/layout/layoutBanner.d.ts +0 -1
  193. package/dist/lineChart/lineChart.d.ts +1 -0
  194. package/dist/lineChart/lineChart.js +135 -70
  195. package/dist/lineChartMini/lineChartMini.d.ts +1 -0
  196. package/dist/lineChartMini/lineChartMini.js +141 -73
  197. package/dist/list/itemData/itemData.d.ts +2 -1
  198. package/dist/list/itemData/itemDataInternal.d.ts +2 -1
  199. package/dist/list/list.d.ts +0 -1
  200. package/dist/list/utils/changeOrder.js +1 -2
  201. package/dist/list/utils/isDataListitem.d.ts +1 -1
  202. package/dist/list/viewportProvider/viewportContext.d.ts +0 -1
  203. package/dist/menu/components/controlledMenuList/controlledMenuList.d.ts +2 -4
  204. package/dist/menu/components/controlledMenuList/controlledMenuList.js +3 -1
  205. package/dist/menu/components/createControlledMenuList.js +1 -2
  206. package/dist/menu/components/createMenuItem.js +1 -2
  207. package/dist/menu/contexts/usePathContext.js +1 -2
  208. package/dist/menu/utils/buildMenuContent.js +1 -2
  209. package/dist/menu/utils/findPrevFocusable.js +1 -2
  210. package/dist/menu/utils/useDisplayContent.d.ts +21 -0
  211. package/dist/menu/utils/useDisplayContent.js +35 -0
  212. package/dist/menu/utils/useMenuItemKeyboardNav.js +1 -2
  213. package/dist/miniTabs/miniTabsHelper.js +17 -7
  214. package/dist/mobileSheet/components/mobileSheetTitle.d.ts +0 -1
  215. package/dist/modal/modal.js +17 -7
  216. package/dist/nav/context/nav.context.d.ts +0 -1
  217. package/dist/nav/navFooter/navEditFooter/navEditFooter.d.ts +0 -1
  218. package/dist/nav/navFooter/navFooter.d.ts +1 -1
  219. package/dist/nav/navFooter/navFooterAction/navFooterAction.d.ts +2 -1
  220. package/dist/nav/navFooter/navFooterAction/navFooterAction.js +3 -1
  221. package/dist/nav/navItem/navItem.d.ts +2 -0
  222. package/dist/nav/navItem/navItem.js +56 -47
  223. package/dist/nav/navItem/navItemContent.d.ts +19 -0
  224. package/dist/nav/navItem/navItemContent.js +21 -0
  225. package/dist/nav/navItem/navItemType.d.ts +7 -0
  226. package/dist/nav/navItem/navItemType.js +9 -0
  227. package/dist/nav/utils/navUtils.d.ts +2 -4
  228. package/dist/nav/utils/navUtils.js +2 -2
  229. package/dist/overview/overview.d.ts +0 -1
  230. package/dist/pageHeader/pageHeader.d.ts +1 -1
  231. package/dist/pageHeader/pageHeaderButton.d.ts +0 -1
  232. package/dist/pageHeader/pageHeaderHelpers.d.ts +1 -1
  233. package/dist/pageHeader/pageHeaderMenu.d.ts +0 -1
  234. package/dist/pagination/paginationArrow.d.ts +0 -1
  235. package/dist/pill/interfaces/pill.interface.d.ts +0 -1
  236. package/dist/pillBox/components/pillBoxItem.d.ts +1 -2
  237. package/dist/popup/popup.js +17 -7
  238. package/dist/progressIndicator/progressIndicator.d.ts +39 -0
  239. package/dist/progressIndicator/progressIndicator.js +30 -0
  240. package/dist/progressIndicator/progressIndicatorUtils.d.ts +12 -0
  241. package/dist/progressIndicator/progressIndicatorUtils.js +30 -0
  242. package/dist/radioGroupRaw/radioGroupRaw.js +17 -7
  243. package/dist/radioGroupRaw/types.d.ts +0 -1
  244. package/dist/react-chartjs/dateFns/dateFns.js +10 -11
  245. package/dist/react-chartjs/utils.d.ts +3 -3
  246. package/dist/react-chartjs/utils.js +8 -9
  247. package/dist/searchInputRaw/searchInputRaw.js +17 -7
  248. package/dist/searchInputRaw/types.d.ts +0 -1
  249. package/dist/selectField/selectField.d.ts +2 -3
  250. package/dist/selectList/selectList.d.ts +0 -1
  251. package/dist/selectRaw/hooks/usePopupWidth.js +17 -7
  252. package/dist/selectRaw/selectRaw.js +20 -7
  253. package/dist/sidePanel/sidePanelCell/sidePanelCell.d.ts +0 -1
  254. package/dist/summaries/utils/splitIntoPairs.js +1 -2
  255. package/dist/summaryTile/summaryTile.js +17 -7
  256. package/dist/summaryTile/summaryTileTrigger.js +17 -7
  257. package/dist/table/actions/actionsMenu.d.ts +0 -1
  258. package/dist/table/children/useTableChildren.d.ts +7 -7
  259. package/dist/table/detailPanel/interfaces.d.ts +0 -1
  260. package/dist/table/flexible/columnsList.js +1 -2
  261. package/dist/table/loading/useLoading.d.ts +10 -10
  262. package/dist/table/nested/nestedData.d.ts +3 -1
  263. package/dist/table/nested/useNestedRows.d.ts +2 -2
  264. package/dist/table/selectable/selectableHeader.d.ts +2 -1
  265. package/dist/table/selectable/selectableHeader.js +4 -3
  266. package/dist/table/selectable/useSelectableRows.d.ts +1 -1
  267. package/dist/table/selectable/useSelectableRows.js +7 -4
  268. package/dist/table/table.d.ts +16 -1
  269. package/dist/table/table.js +101 -5
  270. package/dist/tag/tag.d.ts +19 -0
  271. package/dist/tag/tag.js +14 -0
  272. package/dist/textIconButton/textIconButton.js +17 -7
  273. package/dist/toastRaw/toastRaw.d.ts +1 -1
  274. package/dist/toastRaw/toastRaw.js +3 -1
  275. package/dist/toggleButtonRaw/toggleButtonRaw.js +17 -7
  276. package/dist/toggleButtonRaw/types.d.ts +0 -1
  277. package/dist/tooltip/tooltip.js +17 -7
  278. package/dist/tooltipInfo/tooltipInfo.d.ts +0 -1
  279. package/dist/tsconfig.cjs.tsbuildinfo +1 -0
  280. package/dist/utils/compareElementsUtils/isArraysEqualDeeply.js +1 -2
  281. package/dist/utils/compareElementsUtils/isElementsEqual.js +2 -2
  282. package/dist/utils/escapeHtml.js +1 -2
  283. package/dist/utils/localization/directionContext.d.ts +0 -1
  284. package/dist/utils/localization/languageContext.d.ts +0 -1
  285. package/dist/utils/localization/translations/en.json +12 -1
  286. package/dist/utils/theme/themeContext.d.ts +0 -1
  287. package/dist/utils/topWindow/topWindowContext.d.ts +0 -1
  288. package/dist/utils/useFadeComponent.d.ts +0 -1
  289. package/dist/utils/userFormat/userFormatContext.d.ts +0 -1
  290. package/dist/waiting/waiting.d.ts +2 -1
  291. package/dist/waiting/waiting.js +23 -6
  292. package/esm/alert/banner.d.ts +2 -3
  293. package/esm/alert/hooks/useAlertState.d.ts +0 -1
  294. package/esm/banner/bannerMultipLine.d.ts +0 -1
  295. package/esm/banner/bannerSingleLine.d.ts +0 -1
  296. package/esm/banner/utils/isSummaryErrorElement.d.ts +1 -2
  297. package/esm/card/components/content.d.ts +0 -1
  298. package/esm/chart/accessibleChart/accessibleChart.js +1 -1
  299. package/esm/chart/accessibleChart/accessibleChartNarrative.d.ts +1 -1
  300. package/esm/chart/accessibleChart/accessibleChartNarrative.js +8 -2
  301. package/esm/chart/accessibleChart/generatePieNarrative.d.ts +7 -0
  302. package/esm/chart/accessibleChart/generatePieNarrative.js +167 -0
  303. package/esm/chart/accessibleChart/interfaces.d.ts +1 -0
  304. package/esm/chart/barChart/getDefaultOptions.js +5 -6
  305. package/esm/chart/barChart.js +147 -50
  306. package/esm/chart/interfaces.d.ts +0 -1
  307. package/esm/chart/lineChart/getDefaultOptions.js +5 -6
  308. package/esm/chart/lineChart/useChartTicks.d.ts +0 -1
  309. package/esm/chart/lineChart/useSummary.d.ts +7 -8
  310. package/esm/chart/lineChart.js +162 -59
  311. package/esm/chart/pieChart.js +169 -76
  312. package/esm/chart/plugins/linePlugin/linePlugin.js +29 -7
  313. package/esm/chart/utils/convertDates.d.ts +1 -1
  314. package/esm/chart/utils/getNiceAxisRange.d.ts +21 -0
  315. package/esm/chart/utils/getNiceAxisRange.js +72 -0
  316. package/esm/chart/utils/getRange.js +2 -2
  317. package/esm/chart/utils/getYAxisMeta.d.ts +2 -5
  318. package/esm/chart/utils/getYAxisMeta.js +17 -2
  319. package/esm/chart/utils/getYAxisTickCount.d.ts +15 -0
  320. package/esm/chart/utils/getYAxisTickCount.js +15 -0
  321. package/esm/checkboxListWithAction/checkboxListWithAction.d.ts +0 -1
  322. package/esm/chip/chip.d.ts +0 -1
  323. package/esm/chip/utils/useChip.d.ts +0 -1
  324. package/esm/commonHelpers/HOC/reducerLogger/reducerLogger.d.ts +1 -1
  325. package/esm/commonHelpers/arrowNavigation/components/arrowButton/arrowButton.d.ts +0 -1
  326. package/esm/commonHelpers/arrowNavigation/hooks/useHoldOnScroll.d.ts +0 -1
  327. package/esm/commonHelpers/hooks/breakpoints.d.ts +4 -0
  328. package/esm/commonHelpers/hooks/breakpoints.js +4 -0
  329. package/esm/commonHelpers/hooks/fetch.reducer.d.ts +1 -1
  330. package/esm/commonHelpers/hooks/useDebouncedMemo.d.ts +0 -1
  331. package/esm/commonHelpers/hooks/useDeviceType.js +2 -2
  332. package/esm/commonHelpers/hooks/useEscape.d.ts +1 -1
  333. package/esm/commonHelpers/hooks/useGridSize.d.ts +0 -1
  334. package/esm/commonHelpers/hooks/useMobileOrTablet.d.ts +1 -0
  335. package/esm/commonHelpers/hooks/useMobileOrTablet.js +17 -0
  336. package/esm/commonHelpers/hooks/usePillSize.d.ts +0 -1
  337. package/esm/commonHelpers/hooks/useTablet.js +17 -0
  338. package/esm/dataFeed/dataFeed.d.ts +1 -1
  339. package/esm/dataFeed/dataFeed.js +2 -2
  340. package/esm/dataFeed/dataFeedCell/dataFeedCell.d.ts +3 -1
  341. package/esm/dataFeed/dataFeedColumnsItems.d.ts +2 -2
  342. package/esm/dataGrid/cell/cell.d.ts +3 -1
  343. package/esm/dataGrid/columns/actionsColumn/actionsColumn.d.ts +3 -3
  344. package/esm/dataGrid/dataGrid.d.ts +13 -1
  345. package/esm/dataGrid/dataGrid.js +48 -3
  346. package/esm/dataGrid/emptySearchList/emptySearchList.d.ts +0 -1
  347. package/esm/dataGrid/row/row.d.ts +3 -1
  348. package/esm/dataGrid/withActions/withActions.d.ts +1 -1
  349. package/esm/dataGrid/withFlexibleColumns/withFlexibleColumns.d.ts +1 -1
  350. package/esm/dataGrid/withLoading/withLoading.d.ts +1 -1
  351. package/esm/dataGrid/withSelectableRows/withLimitedSelectableRows.d.ts +1 -1
  352. package/esm/dataGrid/withSelectableRows/withSelectableRows.d.ts +1 -1
  353. package/esm/dataGrid/withSortableColumns/withSortableColumns.d.ts +1 -1
  354. package/esm/dialog/dialog.d.ts +0 -1
  355. package/esm/dropdown/dropdown.js +1 -1
  356. package/esm/dropdown/useDropdownState.d.ts +0 -1
  357. package/esm/dropdownRaw/dropdownList.d.ts +3 -2
  358. package/esm/dropdownRaw/dropdownList.js +14 -42
  359. package/esm/dropdownRaw/dropdownRaw.js +35 -14
  360. package/esm/dropdownRaw/stateReducer/stateReducer.d.ts +4 -1
  361. package/esm/dropdownRaw/stateReducer/stateReducer.js +32 -22
  362. package/esm/dropdownRaw/stateReducer/stateReducerHelper.d.ts +1 -2
  363. package/esm/dropdownRaw/stateReducer/stateReducerHelper.js +5 -10
  364. package/esm/dropdownRaw/types.d.ts +20 -0
  365. package/esm/feedbackContainer/hooks/useFeedbackAlert.d.ts +0 -1
  366. package/esm/feedbackContainer/hooks/useFeedbackToast.d.ts +0 -1
  367. package/esm/filters/components/filtersItem.d.ts +2 -2
  368. package/esm/filters/components/filtersSearchList.d.ts +0 -1
  369. package/esm/filters/components/filtersSelect.d.ts +0 -1
  370. package/esm/filters/components/filtersSelectCompact.d.ts +0 -1
  371. package/esm/filters/components/filtersSelectListItem.d.ts +0 -1
  372. package/esm/filters/components/filtersSelectUnfoldingPill.d.ts +0 -1
  373. package/esm/filters/filtersHelper.d.ts +1 -1
  374. package/esm/filters/filtersHooks.d.ts +0 -1
  375. package/esm/filtersBar/components/filtersBarDropdownWithCheckbox/filtersBarDropdownWithCheckbox.js +1 -1
  376. package/esm/filtersBar/filtersBar.js +2 -2
  377. package/esm/filtersBar/filtersBarActions/filtersBarActions.d.ts +0 -1
  378. package/esm/filtersBar/filtersBarInterfaces.d.ts +0 -1
  379. package/esm/filtersBar/filtersBarSidePanel/components/filtersBarSidePanelDropdownWithCheckbox/filtersBarSidePanelDropdownWithCheckbox.d.ts +4 -10
  380. package/esm/formField/components/formFieldAdditionalInfo.d.ts +0 -1
  381. package/esm/formField/components/formFieldCounter.d.ts +0 -1
  382. package/esm/formField/components/formFieldLoading.d.ts +0 -1
  383. package/esm/formField/components/formFieldSkeleton.d.ts +0 -1
  384. package/esm/formField/components/formFieldWithLabel.d.ts +0 -1
  385. package/esm/formField/components/formFieldWithoutLabel.d.ts +0 -1
  386. package/esm/formField/formField.d.ts +1 -1
  387. package/esm/formField/hooks/useBanner.d.ts +0 -1
  388. package/esm/formField/hooks/useDisabled.d.ts +1 -1
  389. package/esm/formGroup/components/customRow/customRow.d.ts +0 -1
  390. package/esm/formGroup/hooks/listHooks/useStateToElements.d.ts +0 -1
  391. package/esm/formGroup/hooks/listHooks/useStateToElements.js +1 -1
  392. package/esm/formGroup/utils/formGroupProvider.d.ts +0 -1
  393. package/esm/formGroup/utils/isFormLabel.d.ts +1 -1
  394. package/esm/formGroupItem/formGroupItem.d.ts +0 -1
  395. package/esm/formLayout/components/layoutColumn/layoutColum.d.ts +0 -1
  396. package/esm/formLayout/hooks/useFormButtons.d.ts +1 -1
  397. package/esm/formLayout/types.d.ts +0 -1
  398. package/esm/formLayout/utils/attachHeadings.d.ts +1 -1
  399. package/esm/formLayout/utils/attachSeparators.d.ts +0 -1
  400. package/esm/formLayout/utils/getChildrenWithCustomColumns.d.ts +1 -2
  401. package/esm/formLayout/utils/getChildrenWithCustomColumns.js +2 -2
  402. package/esm/formLayout/utils/getFieldLabel.js +5 -5
  403. package/esm/formSection/components/actions.d.ts +0 -1
  404. package/esm/formSection/components/additional.d.ts +0 -1
  405. package/esm/formSection/utils/isFormSection.d.ts +2 -4
  406. package/esm/formStepper/components/formStepRaw.d.ts +0 -1
  407. package/esm/formStepper/formStepper.d.ts +0 -1
  408. package/esm/formStepper/formStepper.js +5 -5
  409. package/esm/formStepperButtons/formStepperButtons.js +3 -3
  410. package/esm/gridLayout/hooks/useStretch.js +1 -1
  411. package/esm/gridLayout/utils/gridLayoutProvider.d.ts +0 -1
  412. package/esm/gridLayout/utils/gridLayoutProvider.js +1 -1
  413. package/esm/gridLayout/utils/isGridItem.d.ts +1 -1
  414. package/esm/groupsFilter/groupsHelper.d.ts +5 -5
  415. package/esm/groupsFilterRaw/groupsHelper.d.ts +1 -1
  416. package/esm/groupsFilterRaw/stateReducer/stateReducer.d.ts +1 -1
  417. package/esm/groupsFilterRaw/testData.js +1 -2
  418. package/esm/header/components/collapsedItemsControl/utils/handleCustomMenuWrapper.js +5 -0
  419. package/esm/header/components/mobileFilterControl/mobileFilterControl.d.ts +0 -1
  420. package/esm/header/components/mobileSearchControl/mobileSearchControl.d.ts +0 -1
  421. package/esm/header/headerButton.d.ts +0 -1
  422. package/esm/header/headerContext.d.ts +1 -2
  423. package/esm/header/headerHelpers.d.ts +5 -5
  424. package/esm/header/hooks/useNonFittingElements.d.ts +3 -4
  425. package/esm/headerTitle/headerTitle.d.ts +0 -1
  426. package/esm/icons/iconAce.d.ts +3 -0
  427. package/esm/icons/iconAce.js +8 -0
  428. package/esm/icons/iconBreak.d.ts +3 -0
  429. package/esm/icons/iconBreak.js +8 -0
  430. package/esm/icons/iconChevronStepper.d.ts +3 -0
  431. package/esm/icons/iconChevronStepper.js +8 -0
  432. package/esm/icons/iconPotato.d.ts +3 -0
  433. package/esm/icons/iconPotato.js +8 -0
  434. package/esm/icons/iconToggleLarge.d.ts +3 -0
  435. package/esm/icons/iconToggleLarge.js +8 -0
  436. package/esm/icons/iconToggleSmall.d.ts +3 -0
  437. package/esm/icons/iconToggleSmall.js +8 -0
  438. package/esm/icons/iconTrendNeutral.d.ts +3 -0
  439. package/esm/icons/iconTrendNeutral.js +8 -0
  440. package/esm/icons/iconTruck.d.ts +3 -0
  441. package/esm/icons/iconTruck.js +8 -0
  442. package/esm/index.d.ts +8 -0
  443. package/esm/index.js +8 -0
  444. package/esm/layout/layout.d.ts +2 -1
  445. package/esm/layout/layoutBanner.d.ts +0 -1
  446. package/esm/lineChart/lineChart.d.ts +1 -0
  447. package/esm/lineChart/lineChart.js +129 -69
  448. package/esm/lineChartMini/lineChartMini.d.ts +1 -0
  449. package/esm/lineChartMini/lineChartMini.js +136 -73
  450. package/esm/list/itemData/itemData.d.ts +2 -1
  451. package/esm/list/itemData/itemDataInternal.d.ts +2 -1
  452. package/esm/list/list.d.ts +0 -1
  453. package/esm/list/utils/isDataListitem.d.ts +1 -1
  454. package/esm/list/viewportProvider/viewportContext.d.ts +0 -1
  455. package/esm/menu/components/controlledMenuList/controlledMenuList.d.ts +2 -4
  456. package/esm/menu/components/controlledMenuList/controlledMenuList.js +3 -1
  457. package/esm/menu/utils/useDisplayContent.d.ts +21 -0
  458. package/esm/menu/utils/useDisplayContent.js +31 -0
  459. package/esm/mobileSheet/components/mobileSheetTitle.d.ts +0 -1
  460. package/esm/nav/context/nav.context.d.ts +0 -1
  461. package/esm/nav/navFooter/navEditFooter/navEditFooter.d.ts +0 -1
  462. package/esm/nav/navFooter/navFooter.d.ts +1 -1
  463. package/esm/nav/navFooter/navFooterAction/navFooterAction.d.ts +2 -1
  464. package/esm/nav/navFooter/navFooterAction/navFooterAction.js +3 -1
  465. package/esm/nav/navItem/navItem.d.ts +2 -0
  466. package/esm/nav/navItem/navItem.js +57 -48
  467. package/esm/nav/navItem/navItemContent.d.ts +19 -0
  468. package/esm/nav/navItem/navItemContent.js +17 -0
  469. package/esm/nav/navItem/navItemType.d.ts +7 -0
  470. package/esm/nav/navItem/navItemType.js +6 -0
  471. package/esm/nav/utils/navUtils.d.ts +2 -4
  472. package/esm/overview/overview.d.ts +0 -1
  473. package/esm/pageHeader/pageHeader.d.ts +1 -1
  474. package/esm/pageHeader/pageHeaderButton.d.ts +0 -1
  475. package/esm/pageHeader/pageHeaderHelpers.d.ts +1 -1
  476. package/esm/pageHeader/pageHeaderMenu.d.ts +0 -1
  477. package/esm/pagination/paginationArrow.d.ts +0 -1
  478. package/esm/pill/interfaces/pill.interface.d.ts +0 -1
  479. package/esm/pillBox/components/pillBoxItem.d.ts +1 -2
  480. package/esm/progressIndicator/progressIndicator.d.ts +39 -0
  481. package/esm/progressIndicator/progressIndicator.js +26 -0
  482. package/esm/progressIndicator/progressIndicatorUtils.d.ts +12 -0
  483. package/esm/progressIndicator/progressIndicatorUtils.js +25 -0
  484. package/esm/radioGroupRaw/types.d.ts +0 -1
  485. package/esm/react-chartjs/utils.d.ts +3 -3
  486. package/esm/searchInputRaw/types.d.ts +0 -1
  487. package/esm/selectField/selectField.d.ts +2 -3
  488. package/esm/selectList/selectList.d.ts +0 -1
  489. package/esm/selectRaw/selectRaw.js +3 -0
  490. package/esm/sidePanel/sidePanelCell/sidePanelCell.d.ts +0 -1
  491. package/esm/table/actions/actionsMenu.d.ts +0 -1
  492. package/esm/table/children/useTableChildren.d.ts +7 -7
  493. package/esm/table/detailPanel/interfaces.d.ts +0 -1
  494. package/esm/table/loading/useLoading.d.ts +10 -10
  495. package/esm/table/nested/nestedData.d.ts +3 -1
  496. package/esm/table/nested/useNestedRows.d.ts +2 -2
  497. package/esm/table/selectable/selectableHeader.d.ts +2 -1
  498. package/esm/table/selectable/selectableHeader.js +4 -3
  499. package/esm/table/selectable/useSelectableRows.d.ts +1 -1
  500. package/esm/table/selectable/useSelectableRows.js +7 -4
  501. package/esm/table/table.d.ts +16 -1
  502. package/esm/table/table.js +102 -6
  503. package/esm/tag/tag.d.ts +19 -0
  504. package/esm/tag/tag.js +10 -0
  505. package/esm/testHelpers/geotab-axe/index.d.ts +0 -1
  506. package/esm/toastRaw/toastRaw.d.ts +1 -1
  507. package/esm/toastRaw/toastRaw.js +3 -1
  508. package/esm/toggleButtonRaw/types.d.ts +0 -1
  509. package/esm/tooltipInfo/tooltipInfo.d.ts +0 -1
  510. package/esm/tsconfig.esm.tsbuildinfo +1 -0
  511. package/esm/utils/localization/directionContext.d.ts +0 -1
  512. package/esm/utils/localization/languageContext.d.ts +0 -1
  513. package/esm/utils/localization/translations/en.json +12 -1
  514. package/esm/utils/theme/themeContext.d.ts +0 -1
  515. package/esm/utils/topWindow/topWindowContext.d.ts +0 -1
  516. package/esm/utils/useFadeComponent.d.ts +0 -1
  517. package/esm/utils/userFormat/userFormatContext.d.ts +0 -1
  518. package/esm/waiting/waiting.d.ts +2 -1
  519. package/esm/waiting/waiting.js +24 -7
  520. package/package.json +13 -6
  521. package/esm/gridLayout/hooks/useTablet.js +0 -20
  522. /package/dist/{gridLayout → commonHelpers}/hooks/useTablet.d.ts +0 -0
  523. /package/esm/{gridLayout → commonHelpers}/hooks/useTablet.d.ts +0 -0
@@ -1,19 +1,55 @@
1
1
  "use strict";
2
- var __rest = (this && this.__rest) || function (s, e) {
3
- var t = {};
4
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
- t[p] = s[p];
6
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
- t[p[i]] = s[p[i]];
10
- }
11
- return t;
2
+
3
+ const {
4
+ injectString
5
+ } = require("../utils/localization/translationsDictionary");
6
+ var __rest = this && this.__rest || function (s, e) {
7
+ var t = {};
8
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
9
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
10
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
11
+ }
12
+ return t;
12
13
  };
13
- Object.defineProperty(exports, "__esModule", { value: true });
14
+ Object.defineProperty(exports, "__esModule", {
15
+ value: true
16
+ });
14
17
  exports.BarChart = void 0;
15
18
  const jsx_runtime_1 = require("react/jsx-runtime");
16
19
  const react_1 = require("react");
20
+ injectString("cs", "Bar chart", "Sloupcov\xFD graf");
21
+ injectString("da-DK", "Bar chart", "S\xF8jlediagram");
22
+ injectString("de", "Bar chart", "Balkendiagramm");
23
+ injectString("en", "Bar chart", "Bar chart");
24
+ injectString("es", "Bar chart", "Gr\xE1fico de barras");
25
+ injectString("fi-FI", "Bar chart", "Pylv\xE4sdiagrammi");
26
+ injectString("fr", "Bar chart", "Graphique \xE0 barres");
27
+ injectString("fr-FR", "Bar chart", "Diagramme \xE0 barres");
28
+ injectString("hu-HU", "Bar chart", "Oszlopdiagram");
29
+ injectString("id", "Bar chart", "Bagan batang");
30
+ injectString("it", "Bar chart", "Grafico a barre");
31
+ injectString("ja", "Bar chart", "\u68D2\u30B0\u30E9\u30D5");
32
+ injectString("ko-KR", "Bar chart", "\uB9C9\uB300\uD615 \uCC28\uD2B8");
33
+ injectString("ms", "Bar chart", "Carta bar");
34
+ injectString("nb-NO", "Bar chart", "S\xF8ylediagram");
35
+ injectString("nl", "Bar chart", "Staafdiagram");
36
+ injectString("pl", "Bar chart", "Wykres s\u0142upkowy");
37
+ injectString("pt-BR", "Bar chart", "Gr\xE1fico de barras");
38
+ injectString("pt-PT", "Bar chart", "Gr\xE1fico de barras");
39
+ injectString("sk-SK", "Bar chart", "St\u013Apcov\xFD graf");
40
+ injectString("sv", "Bar chart", "Stapeldiagram");
41
+ injectString("th", "Bar chart", "\u0E41\u0E1C\u0E19\u0E20\u0E39\u0E21\u0E34\u0E41\u0E17\u0E48\u0E07");
42
+ injectString("tr", "Bar chart", "\xC7ubuk grafik");
43
+ injectString("zh-Hans", "Bar chart", "\u6761\u5F62\u56FE");
44
+ injectString("zh-TW", "Bar chart", "\u6A6B\u689D\u5716");
45
+ injectString("ro-RO", "Bar chart", "Grafic de bare");
46
+ injectString("ar", "Bar chart", "\u0645\u062E\u0637\u0637 \u0634\u0631\u064A\u0637\u064A");
47
+ injectString("lt-LT", "Bar chart", "Stulpelin\u0117 diagrama");
48
+ injectString("lv-LV", "Bar chart", "Joslu diagramma");
49
+ injectString("ka-GE", "Bar chart", "\u10D6\u10DD\u10DA\u10DD\u10D5\u10D0\u10DC\u10D8 \u10E1\u10E5\u10D4\u10DB\u10D0");
50
+ injectString("el-GR", "Bar chart", "\u0393\u03C1\u03AC\u03C6\u03B7\u03BC\u03B1 \u03C1\u03AC\u03B2\u03B4\u03C9\u03BD");
51
+ injectString("et-EE", "Bar chart", "Tulpdiagramm");
52
+ injectString("bg-BG", "Bar chart", "\u0421\u0442\u044A\u043B\u0431\u043E\u0432\u0438\u0434\u043D\u0430 \u0434\u0438\u0430\u0433\u0440\u0430\u043C\u0430");
17
53
  const typedCharts_1 = require("../react-chartjs/typedCharts");
18
54
  const auto_1 = require("chart.js/auto");
19
55
  require("../react-chartjs/dateAdapter");
@@ -40,43 +76,109 @@ const userFormatContext_1 = require("../utils/userFormat/userFormatContext");
40
76
  const summary_1 = require("../summary/summary");
41
77
  const accessibleChart_1 = require("./accessibleChart/accessibleChart");
42
78
  auto_1.Chart.register(auto_1.BarController, auto_1.BarElement, auto_1.CategoryScale, auto_1.LinearScale);
43
- const BarChart = (_a) => {
44
- var { data, options = {}, axis, insight, summary, legend, tooltip, plugins, className } = _a, rest = __rest(_a, ["data", "options", "axis", "insight", "summary", "legend", "tooltip", "plugins", "className"]);
45
- const { translate } = (0, useLanguage_1.useLanguage)();
46
- const isDrive = (0, useDrive_1.useDrive)();
47
- const isMobile = (0, useMobile_1.useMobile)();
48
- const isRtl = (0, useIsRTL_1.useIsRTL)();
49
- const fontSize = (0, react_1.useMemo)(() => (isDrive ? (isMobile ? 14 : 16) : 12), [isDrive, isMobile]);
50
- const { dark } = (0, react_1.useContext)(themeContext_1.themeContext);
51
- (0, react_1.useEffect)(() => {
52
- auto_1.Chart.defaults.font = {
53
- family: "Roboto",
54
- size: fontSize
55
- };
56
- auto_1.Chart.defaults.color = dark ? "#FFFFFF" : "#1F2833";
57
- }, [fontSize, dark]);
58
- const legendId = (0, react_1.useId)();
59
- const tooltipId = (0, react_1.useId)();
60
- const { toLocalDateTime } = (0, react_1.useContext)(userFormatContext_1.userFormatContext);
61
- const isTimedData = (0, react_1.useMemo)(() => (0, isDateRange_1.isDateRange)(data, false), [data]);
62
- const isStacked = (0, react_1.useMemo)(() => { var _a, _b; return ((_b = (_a = options.scales) === null || _a === void 0 ? void 0 : _a.y) === null || _b === void 0 ? void 0 : _b.stacked) === true; }, [options]);
63
- const yAxisMeta = (0, react_1.useMemo)(() => (0, getYAxisMeta_1.getYAxisMeta)(data, isStacked), [data, isStacked]);
64
- const defOptions = (0, react_1.useMemo)(() => (0, getDefaultOptions_1.getDefaultOptions)(yAxisMeta, isTimedData, dark, translate, isRtl), [yAxisMeta, isTimedData, dark, translate, isRtl]);
65
- const chartOptions = (0, utils_1.deepMerge)(defOptions, options);
66
- const { isHidden, toggleHidden } = (0, useHidden_1.useHidden)();
67
- const chartData = (0, react_1.useMemo)(() => {
68
- const chData = (0, convertDates_1.convertDates)(data, toLocalDateTime);
69
- chData.datasets = chData.datasets.map((ds, i) => (0, getDefaultDatasetStyle_1.getDefaultDatasetStyle)(ds, i));
70
- chData.datasets = chData.datasets.map((ds, i) => (Object.assign(Object.assign({}, ds), { hidden: isHidden(i), order: isRtl ? chData.datasets.length - 1 - i : i })));
71
- return chData;
72
- }, [data, isHidden, toLocalDateTime, isRtl]);
73
- const chartTooltip = (0, react_1.useMemo)(() => (0, tooltipPlugin_1.TooltipPlugin)(tooltipId, tooltip, "top", isHidden, dark), [tooltipId, tooltip, isHidden, dark]);
74
- const chartLegend = (0, react_1.useMemo)(() => (0, legendPlugin_1.legendPlugin)(legendId, legend, isDrive, isHidden, toggleHidden), [isDrive, isHidden, legend, legendId, toggleHidden]);
75
- const chartPlugins = (0, react_1.useMemo)(() => [...(plugins || []), chartTooltip, chartLegend], [chartLegend, chartTooltip, plugins]);
76
- const { xLabels, yLabels } = (0, useAxisLabels_1.useAxisLabels)(axis, chartOptions);
77
- const intSummary = (0, useSummary_1.useSummary)(summary, chartData);
78
- const isMainHidden = (0, react_1.useMemo)(() => isHidden(0), [isHidden]);
79
- const toggleMainData = (0, react_1.useCallback)(() => toggleHidden(0), [toggleHidden]);
80
- return ((0, jsx_runtime_1.jsxs)("div", { className: (0, classNames_1.classNames)(["zen-chart", className || ""]), children: [insight ? (0, jsx_runtime_1.jsx)(chartInsight_1.ChartInsight, Object.assign({}, insight)) : null, summary ? (0, jsx_runtime_1.jsx)(summary_1.Summary, Object.assign({ onToggle: toggleMainData, isEnabled: isMainHidden }, intSummary)) : null, (isDrive ? undefined : xLabels) || yLabels.length > 0 ? ((0, jsx_runtime_1.jsx)(chartAxis_1.ChartAxis, { xLabel: isDrive ? undefined : xLabels, yLabels: yLabels, yAxisPosition: isRtl ? "left" : "right" })) : null, (0, jsx_runtime_1.jsx)("div", { className: "zen-chart__chart", children: (0, jsx_runtime_1.jsx)(typedCharts_1.Bar, Object.assign({ options: chartOptions, data: chartData, plugins: chartPlugins }, rest, { "aria-hidden": true })) }), (0, jsx_runtime_1.jsx)("div", { className: "zen-chart__legend", id: legendId }), isDrive && xLabels ? (0, jsx_runtime_1.jsx)("div", { className: "zen-chart__x-axis", children: xLabels }) : null, (0, jsx_runtime_1.jsx)(accessibleChart_1.AccessibleChart, { type: "bar", data: chartData, options: chartOptions })] }));
79
+ const BarChart = _a => {
80
+ var {
81
+ data,
82
+ options = {},
83
+ axis,
84
+ insight,
85
+ summary,
86
+ legend,
87
+ tooltip,
88
+ plugins,
89
+ className
90
+ } = _a,
91
+ rest = __rest(_a, ["data", "options", "axis", "insight", "summary", "legend", "tooltip", "plugins", "className"]);
92
+ const {
93
+ translate
94
+ } = (0, useLanguage_1.useLanguage)();
95
+ const isDrive = (0, useDrive_1.useDrive)();
96
+ const isMobile = (0, useMobile_1.useMobile)();
97
+ const isRtl = (0, useIsRTL_1.useIsRTL)();
98
+ const fontSize = (0, react_1.useMemo)(() => isDrive ? isMobile ? 14 : 16 : 12, [isDrive, isMobile]);
99
+ const {
100
+ dark
101
+ } = (0, react_1.useContext)(themeContext_1.themeContext);
102
+ (0, react_1.useEffect)(() => {
103
+ auto_1.Chart.defaults.font = {
104
+ family: "Roboto",
105
+ size: fontSize
106
+ };
107
+ auto_1.Chart.defaults.color = dark ? "#FFFFFF" : "#1F2833";
108
+ }, [fontSize, dark]);
109
+ const legendId = (0, react_1.useId)();
110
+ const tooltipId = (0, react_1.useId)();
111
+ const narrativeId = (0, react_1.useId)();
112
+ const {
113
+ toLocalDateTime
114
+ } = (0, react_1.useContext)(userFormatContext_1.userFormatContext);
115
+ const isTimedData = (0, react_1.useMemo)(() => (0, isDateRange_1.isDateRange)(data, false), [data]);
116
+ const isStacked = (0, react_1.useMemo)(() => {
117
+ var _a, _b;
118
+ return ((_b = (_a = options.scales) === null || _a === void 0 ? void 0 : _a.y) === null || _b === void 0 ? void 0 : _b.stacked) === true;
119
+ }, [options]);
120
+ const yAxisMeta = (0, react_1.useMemo)(() => (0, getYAxisMeta_1.getYAxisMeta)(data, isStacked), [data, isStacked]);
121
+ const defOptions = (0, react_1.useMemo)(() => (0, getDefaultOptions_1.getDefaultOptions)(yAxisMeta, isTimedData, dark, translate, isRtl), [yAxisMeta, isTimedData, dark, translate, isRtl]);
122
+ const chartOptions = (0, utils_1.deepMerge)(defOptions, options);
123
+ const {
124
+ isHidden,
125
+ toggleHidden
126
+ } = (0, useHidden_1.useHidden)();
127
+ const chartData = (0, react_1.useMemo)(() => {
128
+ const chData = (0, convertDates_1.convertDates)(data, toLocalDateTime);
129
+ chData.datasets = chData.datasets.map((ds, i) => (0, getDefaultDatasetStyle_1.getDefaultDatasetStyle)(ds, i));
130
+ chData.datasets = chData.datasets.map((ds, i) => Object.assign(Object.assign({}, ds), {
131
+ hidden: isHidden(i),
132
+ order: isRtl ? chData.datasets.length - 1 - i : i
133
+ }));
134
+ return chData;
135
+ }, [data, isHidden, toLocalDateTime, isRtl]);
136
+ const chartTooltip = (0, react_1.useMemo)(() => (0, tooltipPlugin_1.TooltipPlugin)(tooltipId, tooltip, "top", isHidden, dark), [tooltipId, tooltip, isHidden, dark]);
137
+ const chartLegend = (0, react_1.useMemo)(() => (0, legendPlugin_1.legendPlugin)(legendId, legend, isDrive, isHidden, toggleHidden), [isDrive, isHidden, legend, legendId, toggleHidden]);
138
+ const chartPlugins = (0, react_1.useMemo)(() => [...(plugins || []), chartTooltip, chartLegend], [chartLegend, chartTooltip, plugins]);
139
+ const {
140
+ xLabels,
141
+ yLabels
142
+ } = (0, useAxisLabels_1.useAxisLabels)(axis, chartOptions);
143
+ const intSummary = (0, useSummary_1.useSummary)(summary, chartData);
144
+ const isMainHidden = (0, react_1.useMemo)(() => isHidden(0), [isHidden]);
145
+ const toggleMainData = (0, react_1.useCallback)(() => toggleHidden(0), [toggleHidden]);
146
+ return (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, {
147
+ children: [(0, jsx_runtime_1.jsxs)("div", {
148
+ className: (0, classNames_1.classNames)(["zen-chart", className || ""]),
149
+ tabIndex: 0,
150
+ role: "figure",
151
+ "aria-label": translate("Bar chart"),
152
+ "aria-describedby": narrativeId,
153
+ children: [insight ? (0, jsx_runtime_1.jsx)(chartInsight_1.ChartInsight, Object.assign({}, insight)) : null, summary ? (0, jsx_runtime_1.jsx)(summary_1.Summary, Object.assign({
154
+ onToggle: toggleMainData,
155
+ isEnabled: isMainHidden
156
+ }, intSummary)) : null, (isDrive ? undefined : xLabels) || yLabels.length > 0 ? (0, jsx_runtime_1.jsx)(chartAxis_1.ChartAxis, {
157
+ xLabel: isDrive ? undefined : xLabels,
158
+ yLabels: yLabels,
159
+ yAxisPosition: isRtl ? "left" : "right"
160
+ }) : null, (0, jsx_runtime_1.jsx)("div", {
161
+ className: "zen-chart__chart",
162
+ children: (0, jsx_runtime_1.jsx)(typedCharts_1.Bar, Object.assign({
163
+ options: chartOptions,
164
+ data: chartData,
165
+ plugins: chartPlugins
166
+ }, rest, {
167
+ "aria-hidden": true
168
+ }))
169
+ }), (0, jsx_runtime_1.jsx)("div", {
170
+ className: "zen-chart__legend",
171
+ id: legendId
172
+ }), isDrive && xLabels ? (0, jsx_runtime_1.jsx)("div", {
173
+ className: "zen-chart__x-axis",
174
+ children: xLabels
175
+ }) : null]
176
+ }), (0, jsx_runtime_1.jsx)(accessibleChart_1.AccessibleChart, {
177
+ type: "bar",
178
+ data: chartData,
179
+ options: chartOptions,
180
+ narrativeId: narrativeId
181
+ })]
182
+ });
81
183
  };
82
- exports.BarChart = BarChart;
184
+ exports.BarChart = BarChart;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  export interface IYAxisMeta {
3
2
  name: string;
4
3
  min: number;
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getDefaultOptions = void 0;
4
4
  const formatDate_1 = require("../../utils/formatDate");
5
+ const getYAxisTickCount_1 = require("../utils/getYAxisTickCount");
5
6
  const defaultGridStyle = {
6
7
  drawTicks: false,
7
8
  color: "#C0CCD8"
@@ -97,18 +98,16 @@ const getDefaultOptions = (yAxis, xAxis, isTimedData, ticks, isDark, translate,
97
98
  border: defaultGridBorderStyle
98
99
  }
99
100
  };
101
+ // When there is more than one Y-axis, force every axis to render the same number of tick
102
+ // increments so their horizontal grid lines line up (see getYAxisTickCount for details).
103
+ const yAxisTickCount = (0, getYAxisTickCount_1.getYAxisTickCount)(yAxis.length);
100
104
  for (let i = 0; i < yAxis.length; i++) {
101
105
  const yAxisId = yAxis[i].name;
102
106
  scales[yAxisId] = {
103
107
  title: {
104
108
  display: false
105
109
  },
106
- ticks: {
107
- color: textColor,
108
- padding: 10,
109
- source: "data",
110
- autoSkip: true
111
- },
110
+ ticks: Object.assign({ color: textColor, padding: 10, source: "data", autoSkip: yAxisTickCount === undefined }, (yAxisTickCount !== undefined && { count: yAxisTickCount })),
112
111
  beginAtZero: true,
113
112
  grid: i === 0 ? defaultGridStyle : { display: false },
114
113
  border: defaultGridBorderStyle,
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  export declare const useChartTicks: () => {
3
2
  chartRef: import("react").RefObject<HTMLDivElement | null>;
4
3
  ticks: number;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { ILineChartData } from "./interfaces";
3
2
  import { IBarChartData } from "../barChart/interfaces";
4
3
  import { IPieChartData } from "../pieChart/interfaces";
@@ -8,13 +7,13 @@ export declare const useSummary: (chartSummary: IChartSummary | false | undefine
8
7
  value: string | number | bigint | true | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | null | undefined>;
9
8
  color: string | undefined;
10
9
  prefix?: import("react").ReactNode;
11
- unit?: string | undefined;
10
+ unit?: string;
12
11
  tooltip?: import("react").ReactNode;
13
- more?: import("react").ReactNode;
14
- isEnabled?: boolean | undefined;
15
- onToggle?: (() => void) | undefined;
12
+ more?: React.ReactNode;
13
+ isEnabled?: boolean;
14
+ onToggle?: () => void;
16
15
  description?: string | number | bigint | boolean | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | null | undefined> | null | undefined;
17
- label?: string | undefined;
18
- onClick?: (() => void) | undefined;
19
- isHidden?: boolean | undefined;
16
+ label?: string;
17
+ onClick?: () => void;
18
+ isHidden?: boolean;
20
19
  };
@@ -1,19 +1,55 @@
1
1
  "use strict";
2
- var __rest = (this && this.__rest) || function (s, e) {
3
- var t = {};
4
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
- t[p] = s[p];
6
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
- t[p[i]] = s[p[i]];
10
- }
11
- return t;
2
+
3
+ const {
4
+ injectString
5
+ } = require("../utils/localization/translationsDictionary");
6
+ var __rest = this && this.__rest || function (s, e) {
7
+ var t = {};
8
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
9
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
10
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
11
+ }
12
+ return t;
12
13
  };
13
- Object.defineProperty(exports, "__esModule", { value: true });
14
+ Object.defineProperty(exports, "__esModule", {
15
+ value: true
16
+ });
14
17
  exports.LineChart = void 0;
15
18
  const jsx_runtime_1 = require("react/jsx-runtime");
16
19
  const react_1 = require("react");
20
+ injectString("cs", "Line chart", "Spojnicov\xFD graf");
21
+ injectString("da-DK", "Line chart", "Linjediagram");
22
+ injectString("de", "Line chart", "Liniendiagramm");
23
+ injectString("en", "Line chart", "Line chart");
24
+ injectString("es", "Line chart", "Gr\xE1fico de l\xEDneas");
25
+ injectString("fi-FI", "Line chart", "Viivakaavio");
26
+ injectString("fr", "Line chart", "Graphique lin\xE9aire");
27
+ injectString("fr-FR", "Line chart", "Graphique lin\xE9aire");
28
+ injectString("hu-HU", "Line chart", "Vonaldiagram");
29
+ injectString("id", "Line chart", "Bagan garis");
30
+ injectString("it", "Line chart", "Grafico a linee");
31
+ injectString("ja", "Line chart", "\u6298\u308C\u7DDA\u30B0\u30E9\u30D5");
32
+ injectString("ko-KR", "Line chart", "\uC120\uD615 \uCC28\uD2B8");
33
+ injectString("ms", "Line chart", "Carta garisan");
34
+ injectString("nb-NO", "Line chart", "Linjediagram");
35
+ injectString("nl", "Line chart", "Lijndiagram");
36
+ injectString("pl", "Line chart", "Wykres liniowy");
37
+ injectString("pt-BR", "Line chart", "Gr\xE1fico de linhas");
38
+ injectString("pt-PT", "Line chart", "Gr\xE1fico de linhas");
39
+ injectString("sk-SK", "Line chart", "\u010Ciarov\xFD graf");
40
+ injectString("sv", "Line chart", "Linjediagram");
41
+ injectString("th", "Line chart", "\u0E41\u0E1C\u0E19\u0E20\u0E39\u0E21\u0E34\u0E40\u0E2A\u0E49\u0E19");
42
+ injectString("tr", "Line chart", "\xC7izgi grafik");
43
+ injectString("zh-Hans", "Line chart", "\u6298\u7EBF\u56FE");
44
+ injectString("zh-TW", "Line chart", "\u6298\u7DDA\u5716");
45
+ injectString("ro-RO", "Line chart", "Grafic liniar");
46
+ injectString("ar", "Line chart", "\u0645\u062E\u0637\u0637 \u062E\u0637\u064A");
47
+ injectString("lt-LT", "Line chart", "Linijin\u0117 diagrama");
48
+ injectString("lv-LV", "Line chart", "L\u012Bniju diagramma");
49
+ injectString("ka-GE", "Line chart", "\u10EE\u10D0\u10D6\u10DD\u10D5\u10D0\u10DC\u10D8 \u10E1\u10E5\u10D4\u10DB\u10D0");
50
+ injectString("el-GR", "Line chart", "\u0393\u03C1\u03AC\u03C6\u03B7\u03BC\u03B1 \u03B3\u03C1\u03B1\u03BC\u03BC\u03CE\u03BD");
51
+ injectString("et-EE", "Line chart", "Joondiagramm");
52
+ injectString("bg-BG", "Line chart", "\u041B\u0438\u043D\u0435\u0439\u043D\u0430 \u0434\u0438\u0430\u0433\u0440\u0430\u043C\u0430");
17
53
  const typedCharts_1 = require("../react-chartjs/typedCharts");
18
54
  const auto_1 = require("chart.js/auto");
19
55
  require("../react-chartjs/dateAdapter");
@@ -43,52 +79,124 @@ const userFormatContext_1 = require("../utils/userFormat/userFormatContext");
43
79
  const summary_1 = require("../summary/summary");
44
80
  const accessibleChart_1 = require("./accessibleChart/accessibleChart");
45
81
  auto_1.Chart.register(auto_1.CategoryScale, auto_1.LinearScale, auto_1.PointElement, auto_1.LineElement, auto_1.Title, auto_1.Tooltip, auto_1.Legend, auto_1.Filler, auto_1.TimeScale);
46
- const LineChart = (_a) => {
47
- var { data, options = {}, axis, insight, summary, legend, tooltip, plugins, className } = _a, rest = __rest(_a, ["data", "options", "axis", "insight", "summary", "legend", "tooltip", "plugins", "className"]);
48
- const { translate } = (0, useLanguage_1.useLanguage)();
49
- const isDrive = (0, useDrive_1.useDrive)();
50
- const isMobile = (0, useMobile_1.useMobile)();
51
- const isRtl = (0, useIsRTL_1.useIsRTL)();
52
- const fontSize = (0, react_1.useMemo)(() => (isDrive ? (isMobile ? 14 : 16) : 12), [isDrive, isMobile]);
53
- const { dark } = (0, react_1.useContext)(themeContext_1.themeContext);
54
- (0, react_1.useEffect)(() => {
55
- auto_1.Chart.defaults.font = {
56
- family: "Roboto",
57
- size: fontSize
58
- };
59
- auto_1.Chart.defaults.color = dark ? "#FFFFFF" : "#1F2833";
60
- }, [fontSize, dark]);
61
- const legendId = (0, react_1.useId)();
62
- const tooltipId = (0, react_1.useId)();
63
- const { isHidden, toggleHidden, hiddenCount } = (0, useHidden_1.useHidden)();
64
- const { toLocalDateTime } = (0, react_1.useContext)(userFormatContext_1.userFormatContext);
65
- const isTimedData = (0, react_1.useMemo)(() => (0, isDateRange_1.isDateRange)(data, true), [data]);
66
- const chartData = (0, react_1.useMemo)(() => {
67
- const chData = Object.assign({}, data);
68
- chData.datasets = chData.datasets.map((ds, i) => (0, getDefaultDatasetStyle_1.getDefaultDatasetStyle)(ds, i));
69
- chData.datasets = chData.datasets.reduce((acc, dataset, dsIndex) => {
70
- acc.push(dataset);
71
- if (dataset.trendData) {
72
- acc.push(Object.assign(Object.assign({}, dataset), { data: dataset.trendData, borderDash: [5, 5], parentIndex: dsIndex }));
73
- }
74
- return acc;
75
- }, []);
76
- chData.datasets = chData.datasets.map((ds, i) => isHidden(ds.parentIndex !== undefined ? ds.parentIndex : i) ? Object.assign(Object.assign({}, ds), { hidden: true }) : ds);
77
- return (0, convertDates_1.convertDates)(chData, toLocalDateTime);
78
- }, [data, isHidden, toLocalDateTime]);
79
- const yAxisMeta = (0, react_1.useMemo)(() => (0, getYAxisMeta_1.getYAxisMeta)(chartData), [chartData]);
80
- const xAxisMeta = (0, react_1.useMemo)(() => (0, getXAxisMeta_1.getXAxisMeta)(chartData, isTimedData), [chartData, isTimedData]);
81
- const stableXAxisMeta = (0, useLastVisibleXAxisMeta_1.useLastVisibleXAxisMeta)(xAxisMeta, hiddenCount, data.datasets.length);
82
- const { chartRef, ticks } = (0, useChartTicks_1.useChartTicks)();
83
- const defOptions = (0, react_1.useMemo)(() => (0, getDefaultOptions_1.getDefaultOptions)(yAxisMeta, stableXAxisMeta, isTimedData, ticks, dark, translate, isRtl), [yAxisMeta, stableXAxisMeta, isTimedData, ticks, dark, translate, isRtl]);
84
- const chartOptions = (0, utils_1.deepMerge)(defOptions, options);
85
- const chartTooltip = (0, react_1.useMemo)(() => (0, linePlugin_1.LinePlugin)(tooltipId, tooltip, dark), [tooltip, tooltipId, dark]);
86
- const chartLegend = (0, react_1.useMemo)(() => (0, legendPlugin_1.legendPlugin)(legendId, legend, isDrive, isHidden, toggleHidden), [isDrive, legend, legendId, isHidden, toggleHidden]);
87
- const chartPlugins = (0, react_1.useMemo)(() => [...(plugins || []), chartTooltip, chartLegend], [plugins, chartTooltip, chartLegend]);
88
- const { xLabels, yLabels } = (0, useAxisLabels_1.useAxisLabels)(axis, chartOptions);
89
- const intSummary = (0, useSummary_1.useSummary)(summary, chartData);
90
- const isMainHidden = (0, react_1.useMemo)(() => isHidden(0), [isHidden]);
91
- const toggleMainDataset = (0, react_1.useCallback)(() => toggleHidden(0), [toggleHidden]);
92
- return ((0, jsx_runtime_1.jsxs)("div", { className: (0, classNames_1.classNames)(["zen-chart", className || ""]), ref: chartRef, children: [insight ? (0, jsx_runtime_1.jsx)(chartInsight_1.ChartInsight, Object.assign({}, insight)) : null, summary !== false ? (0, jsx_runtime_1.jsx)(summary_1.Summary, Object.assign({}, intSummary, { onToggle: toggleMainDataset, isEnabled: isMainHidden })) : null, (isDrive ? undefined : xLabels) || yLabels.length > 0 ? ((0, jsx_runtime_1.jsx)(chartAxis_1.ChartAxis, { xLabel: isDrive ? undefined : xLabels, yLabels: yLabels, yAxisPosition: isRtl ? "left" : "right" })) : null, (0, jsx_runtime_1.jsx)("div", { className: "zen-chart__chart", children: (0, jsx_runtime_1.jsx)(typedCharts_1.Line, Object.assign({ width: 100, height: 100, options: chartOptions, data: chartData, plugins: chartPlugins, "aria-hidden": true }, rest)) }), (0, jsx_runtime_1.jsx)("div", { className: "zen-chart__legend", id: legendId }), isDrive && xLabels ? (0, jsx_runtime_1.jsx)("div", { className: "zen-chart__x-axis", children: xLabels }) : null, (0, jsx_runtime_1.jsx)(accessibleChart_1.AccessibleChart, { type: "line", data: chartData, options: chartOptions })] }));
82
+ const LineChart = _a => {
83
+ var {
84
+ data,
85
+ options = {},
86
+ axis,
87
+ insight,
88
+ summary,
89
+ legend,
90
+ tooltip,
91
+ plugins,
92
+ className
93
+ } = _a,
94
+ rest = __rest(_a, ["data", "options", "axis", "insight", "summary", "legend", "tooltip", "plugins", "className"]);
95
+ const {
96
+ translate
97
+ } = (0, useLanguage_1.useLanguage)();
98
+ const isDrive = (0, useDrive_1.useDrive)();
99
+ const isMobile = (0, useMobile_1.useMobile)();
100
+ const isRtl = (0, useIsRTL_1.useIsRTL)();
101
+ const fontSize = (0, react_1.useMemo)(() => isDrive ? isMobile ? 14 : 16 : 12, [isDrive, isMobile]);
102
+ const {
103
+ dark
104
+ } = (0, react_1.useContext)(themeContext_1.themeContext);
105
+ (0, react_1.useEffect)(() => {
106
+ auto_1.Chart.defaults.font = {
107
+ family: "Roboto",
108
+ size: fontSize
109
+ };
110
+ auto_1.Chart.defaults.color = dark ? "#FFFFFF" : "#1F2833";
111
+ }, [fontSize, dark]);
112
+ const legendId = (0, react_1.useId)();
113
+ const tooltipId = (0, react_1.useId)();
114
+ const narrativeId = (0, react_1.useId)();
115
+ const {
116
+ isHidden,
117
+ toggleHidden,
118
+ hiddenCount
119
+ } = (0, useHidden_1.useHidden)();
120
+ const {
121
+ toLocalDateTime
122
+ } = (0, react_1.useContext)(userFormatContext_1.userFormatContext);
123
+ const isTimedData = (0, react_1.useMemo)(() => (0, isDateRange_1.isDateRange)(data, true), [data]);
124
+ const chartData = (0, react_1.useMemo)(() => {
125
+ const chData = Object.assign({}, data);
126
+ chData.datasets = chData.datasets.map((ds, i) => (0, getDefaultDatasetStyle_1.getDefaultDatasetStyle)(ds, i));
127
+ chData.datasets = chData.datasets.reduce((acc, dataset, dsIndex) => {
128
+ acc.push(dataset);
129
+ if (dataset.trendData) {
130
+ acc.push(Object.assign(Object.assign({}, dataset), {
131
+ data: dataset.trendData,
132
+ borderDash: [5, 5],
133
+ parentIndex: dsIndex
134
+ }));
135
+ }
136
+ return acc;
137
+ }, []);
138
+ chData.datasets = chData.datasets.map((ds, i) => isHidden(ds.parentIndex !== undefined ? ds.parentIndex : i) ? Object.assign(Object.assign({}, ds), {
139
+ hidden: true
140
+ }) : ds);
141
+ return (0, convertDates_1.convertDates)(chData, toLocalDateTime);
142
+ }, [data, isHidden, toLocalDateTime]);
143
+ const yAxisMeta = (0, react_1.useMemo)(() => (0, getYAxisMeta_1.getYAxisMeta)(chartData), [chartData]);
144
+ const xAxisMeta = (0, react_1.useMemo)(() => (0, getXAxisMeta_1.getXAxisMeta)(chartData, isTimedData), [chartData, isTimedData]);
145
+ const stableXAxisMeta = (0, useLastVisibleXAxisMeta_1.useLastVisibleXAxisMeta)(xAxisMeta, hiddenCount, data.datasets.length);
146
+ const {
147
+ chartRef,
148
+ ticks
149
+ } = (0, useChartTicks_1.useChartTicks)();
150
+ const defOptions = (0, react_1.useMemo)(() => (0, getDefaultOptions_1.getDefaultOptions)(yAxisMeta, stableXAxisMeta, isTimedData, ticks, dark, translate, isRtl), [yAxisMeta, stableXAxisMeta, isTimedData, ticks, dark, translate, isRtl]);
151
+ const chartOptions = (0, utils_1.deepMerge)(defOptions, options);
152
+ const chartTooltip = (0, react_1.useMemo)(() => (0, linePlugin_1.LinePlugin)(tooltipId, tooltip, dark), [tooltip, tooltipId, dark]);
153
+ const chartLegend = (0, react_1.useMemo)(() => (0, legendPlugin_1.legendPlugin)(legendId, legend, isDrive, isHidden, toggleHidden), [isDrive, legend, legendId, isHidden, toggleHidden]);
154
+ const chartPlugins = (0, react_1.useMemo)(() => [...(plugins || []), chartTooltip, chartLegend], [plugins, chartTooltip, chartLegend]);
155
+ const {
156
+ xLabels,
157
+ yLabels
158
+ } = (0, useAxisLabels_1.useAxisLabels)(axis, chartOptions);
159
+ const intSummary = (0, useSummary_1.useSummary)(summary, chartData);
160
+ const isMainHidden = (0, react_1.useMemo)(() => isHidden(0), [isHidden]);
161
+ const toggleMainDataset = (0, react_1.useCallback)(() => toggleHidden(0), [toggleHidden]);
162
+ return (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, {
163
+ children: [(0, jsx_runtime_1.jsxs)("div", {
164
+ className: (0, classNames_1.classNames)(["zen-chart", className || ""]),
165
+ ref: chartRef,
166
+ tabIndex: 0,
167
+ role: "figure",
168
+ "aria-label": translate("Line chart"),
169
+ "aria-describedby": narrativeId,
170
+ children: [insight ? (0, jsx_runtime_1.jsx)(chartInsight_1.ChartInsight, Object.assign({}, insight)) : null, summary !== false ? (0, jsx_runtime_1.jsx)(summary_1.Summary, Object.assign({}, intSummary, {
171
+ onToggle: toggleMainDataset,
172
+ isEnabled: isMainHidden
173
+ })) : null, (isDrive ? undefined : xLabels) || yLabels.length > 0 ? (0, jsx_runtime_1.jsx)(chartAxis_1.ChartAxis, {
174
+ xLabel: isDrive ? undefined : xLabels,
175
+ yLabels: yLabels,
176
+ yAxisPosition: isRtl ? "left" : "right"
177
+ }) : null, (0, jsx_runtime_1.jsx)("div", {
178
+ className: "zen-chart__chart",
179
+ children: (0, jsx_runtime_1.jsx)(typedCharts_1.Line, Object.assign({
180
+ width: 100,
181
+ height: 100,
182
+ options: chartOptions,
183
+ data: chartData,
184
+ plugins: chartPlugins,
185
+ "aria-hidden": true
186
+ }, rest))
187
+ }), (0, jsx_runtime_1.jsx)("div", {
188
+ className: "zen-chart__legend",
189
+ id: legendId
190
+ }), isDrive && xLabels ? (0, jsx_runtime_1.jsx)("div", {
191
+ className: "zen-chart__x-axis",
192
+ children: xLabels
193
+ }) : null]
194
+ }), (0, jsx_runtime_1.jsx)(accessibleChart_1.AccessibleChart, {
195
+ type: "line",
196
+ data: chartData,
197
+ options: chartOptions,
198
+ narrativeId: narrativeId
199
+ })]
200
+ });
93
201
  };
94
- exports.LineChart = LineChart;
202
+ exports.LineChart = LineChart;