@geotab/zenith 3.11.1 → 3.12.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 (636) hide show
  1. package/README.md +70 -0
  2. package/dist/absolute/absolute.d.ts +21 -1
  3. package/dist/absolute/absolute.js +46 -6
  4. package/dist/advancedGroupsFilter/advancedGroupsFilter.js +3 -3
  5. package/dist/advancedGroupsFilter/advancedGroupsFilterForm.js +2 -2
  6. package/dist/advancedGroupsFilter/advancedGroupsFilterFormSection.js +7 -7
  7. package/dist/advancedGroupsFilter/advancedGroupsFilterSectionTooltip.js +1 -1
  8. package/dist/alert/banner.d.ts +3 -1
  9. package/dist/alertRaw/alertRaw.js +1 -1
  10. package/dist/banner/banner.d.ts +5 -2
  11. package/dist/banner/banner.js +13 -2
  12. package/dist/banner/bannerErrorSummary.d.ts +7 -0
  13. package/dist/banner/bannerErrorSummary.js +8 -0
  14. package/dist/banner/bannerMultipLine.js +1 -1
  15. package/dist/banner/bannerSingleLine.js +1 -1
  16. package/dist/banner/utils/buildSummaryErrorList.d.ts +1 -0
  17. package/dist/banner/utils/buildSummaryErrorList.js +16 -0
  18. package/dist/banner/utils/hasSummaryErrorChild.d.ts +1 -0
  19. package/dist/banner/utils/hasSummaryErrorChild.js +7 -0
  20. package/dist/banner/utils/isSummaryErrorBanner.d.ts +2 -0
  21. package/dist/banner/utils/isSummaryErrorBanner.js +6 -0
  22. package/dist/banner/utils/isSummaryErrorElement.d.ts +3 -0
  23. package/dist/banner/utils/isSummaryErrorElement.js +7 -0
  24. package/dist/banner/utils/useSummaryBannerProp.d.ts +6 -0
  25. package/dist/banner/utils/useSummaryBannerProp.js +34 -0
  26. package/dist/betaPill/betaPill.js +4 -4
  27. package/dist/bookmark/bookmark.js +2 -2
  28. package/dist/bulkEditControl/bulkEditControl.js +5 -5
  29. package/dist/calendar/calendar.js +37 -34
  30. package/dist/calendar/calendarUtils.js +6 -4
  31. package/dist/card/card.js +1 -1
  32. package/dist/card/components/title.js +4 -1
  33. package/dist/card/components/titleLink.js +5 -2
  34. package/dist/chart/accessibleChart/accessibleChartNarrative.js +13 -13
  35. package/dist/chart/accessibleChart/accessibleChartTable.js +5 -5
  36. package/dist/chart/barChart/getDefaultOptions.d.ts +2 -1
  37. package/dist/chart/barChart/getDefaultOptions.js +5 -2
  38. package/dist/chart/barChart.js +6 -4
  39. package/dist/chart/chart.js +1 -1
  40. package/dist/chart/chartAxis/chartAxis.js +2 -2
  41. package/dist/chart/lineChart/getDefaultOptions.d.ts +4 -1
  42. package/dist/chart/lineChart/getDefaultOptions.js +7 -2
  43. package/dist/chart/lineChart.js +7 -3
  44. package/dist/chart/plugins/linePlugin/linePlugin.js +5 -4
  45. package/dist/chart/utils/getXAxisMeta.js +8 -5
  46. package/dist/chart/utils/isDateRange.js +1 -1
  47. package/dist/chart/utils/useHidden.d.ts +1 -0
  48. package/dist/chart/utils/useHidden.js +1 -1
  49. package/dist/chart/utils/useLastVisibleXAxisMeta.d.ts +2 -0
  50. package/dist/chart/utils/useLastVisibleXAxisMeta.js +15 -0
  51. package/dist/checkboxListWithAction/checkboxListWithAction.js +8 -5
  52. package/dist/chip/chip.js +1 -1
  53. package/dist/columnsSelector/columnsSelector.js +2 -2
  54. package/dist/columnsSelector/columnsTab/columnsTab.js +1 -1
  55. package/dist/columnsSelector/columnsTabGroup/columnsTabGroup.js +1 -1
  56. package/dist/commonHelpers/arrowNavigation/components/arrowButton/arrowButton.js +4 -1
  57. package/dist/commonStyles/columnsList.less +59 -0
  58. package/dist/commonStyles/link/link.less +1 -1
  59. package/dist/commonStyles/pillStyles/pillContent.less +14 -15
  60. package/dist/commonStyles/pillStyles/pillStyles.less +4 -5
  61. package/dist/commonStyles/pillStyles/pillTextContent.less +2 -2
  62. package/dist/commonStyles/pillStyles/pillTypes.less +1 -1
  63. package/dist/commonStyles/popupMixin.less +1 -1
  64. package/dist/commonStyles/selectButton.less +1 -1
  65. package/dist/commonStyles/typography/typography.less +545 -19
  66. package/dist/controlledPopup/controlledPopup.d.ts +1 -0
  67. package/dist/controlledPopup/controlledPopup.js +3 -1
  68. package/dist/dataFeed/feedExpandControl/feedExpandControl.js +5 -0
  69. package/dist/dataGrid/cell/cell.d.ts +2 -1
  70. package/dist/dataGrid/cell/cell.js +2 -2
  71. package/dist/dataGrid/columns/checkboxColumn/checkboxHeaderCell.js +1 -1
  72. package/dist/dataGrid/dataGrid.js +8 -5
  73. package/dist/dataGrid/emptySearchList/emptySearchList.js +1 -1
  74. package/dist/dataGrid/entitiesListActions/actions/columnsListButton.js +1 -1
  75. package/dist/dataGrid/entitiesListActions/actions/fullscreenButton.js +2 -2
  76. package/dist/dataGrid/listColumn.d.ts +2 -0
  77. package/dist/dataGrid/row/row.d.ts +2 -1
  78. package/dist/dataGrid/row/row.js +13 -9
  79. package/dist/dataGrid/withFlexibleColumns/components/columnSettings.js +2 -2
  80. package/dist/dataGrid/withFlexibleColumns/components/columnSettingsList.d.ts +1 -1
  81. package/dist/dataGrid/withFlexibleColumns/components/columnSettingsList.js +45 -116
  82. package/dist/dataGrid/withFlexibleColumns/components/columnSettingsSidePanel.js +4 -0
  83. package/dist/dataGrid/withFlexibleColumns/withFlexibleColumns.js +1 -1
  84. package/dist/dataGrid/withSelectableRows/components/bulkActions/bulkActions.d.ts +4 -0
  85. package/dist/dataGrid/withSelectableRows/components/bulkActions/bulkActions.js +5 -5
  86. package/dist/dataGrid/withSelectableRows/withSelectableRows.js +4 -3
  87. package/dist/dataGrid/withSortableColumns/columns/sortableColumnWrapper.js +2 -2
  88. package/dist/dateInputInner/dateInputInner.js +7 -7
  89. package/dist/dateInputInner/dateInputInnerControlBlock.js +2 -2
  90. package/dist/dateInputRaw/dateInputRaw.js +4 -4
  91. package/dist/dateInputRaw/utils/getLabel.js +2 -2
  92. package/dist/dateRangeInner/dateRangeInner.js +6 -3
  93. package/dist/dateRangeRaw/dateRangeRaw.d.ts +1 -0
  94. package/dist/dateRangeRaw/dateRangeRaw.js +21 -15
  95. package/dist/dateRangeRaw/types.d.ts +1 -0
  96. package/dist/dateRangeRaw/utils/dateRangeUtils.js +17 -17
  97. package/dist/dateRangeRaw/utils/parseLabel.js +1 -1
  98. package/dist/dateSelectionWrapper/dateSelectionWrapper.js +4 -4
  99. package/dist/dialog/dialogContent.js +1 -1
  100. package/dist/dropdown/dropdownTrigger.d.ts +1 -1
  101. package/dist/dropdownRaw/dropdownList.js +9 -9
  102. package/dist/dropdownRaw/dropdownPopup.js +3 -3
  103. package/dist/dropdownRaw/dropdownRaw.js +34 -17
  104. package/dist/dropdownRaw/dropdownSearchableTrigger.d.ts +2 -1
  105. package/dist/dropdownRaw/dropdownSearchableTrigger.js +8 -6
  106. package/dist/dropdownRaw/dropdownTrigger.d.ts +2 -1
  107. package/dist/dropdownRaw/dropdownTrigger.js +2 -2
  108. package/dist/dropdownRaw/types.d.ts +2 -0
  109. package/dist/favoriteButton/favoriteButton.js +1 -1
  110. package/dist/fileUpload/components/dropZoneContent.js +104 -104
  111. package/dist/fileUpload/components/templateDownloadSection.js +1 -1
  112. package/dist/fileUpload/components/uploadedFilesSection.js +2 -2
  113. package/dist/fileUpload/fileUpload.js +106 -106
  114. package/dist/filterButton/filterButton.d.ts +1 -0
  115. package/dist/filters/components/filtersContainer.js +2 -2
  116. package/dist/filters/components/filtersDropdown.d.ts +1 -1
  117. package/dist/filters/components/filtersEmptyState.js +2 -2
  118. package/dist/filters/components/filtersSaveModal.js +5 -5
  119. package/dist/filters/components/filtersSavedChipComponent.js +11 -11
  120. package/dist/filters/components/filtersSearchItemData.js +1 -1
  121. package/dist/filters/components/filtersSearchList.js +14 -11
  122. package/dist/filters/components/filtersSelect.js +1 -1
  123. package/dist/filters/components/filtersSelectListItem.js +2 -2
  124. package/dist/filters/components/filtersSidePanel.js +8 -8
  125. package/dist/filters/filters.js +7 -7
  126. package/dist/filtersBar/components/filtersBarGroupsFilter/filtersBarGroupsFilter.d.ts +1 -1
  127. package/dist/filtersBar/components/filtersBarPeriodPicker/filtersBarPeriodPicker.d.ts +1 -0
  128. package/dist/filtersBar/components/filtersBarPeriodPicker/getRangeOption.js +18 -18
  129. package/dist/filtersBar/components/resetComponentButton.js +1 -1
  130. package/dist/filtersBar/filtersBarActions/filtersBarActions.js +3 -3
  131. package/dist/filtersBar/filtersBarSidePanel/components/filtersBarSidePanelRange/filtersBarSidePanelRange.js +2 -2
  132. package/dist/filtersBar/filtersBarSidePanel/filtersBarSidePanel.js +5 -5
  133. package/dist/filtersBar/filtersContainer/filtersContainer.js +62 -61
  134. package/dist/formField/hooks/useError.js +3 -3
  135. package/dist/formField/hooks/useFormFieldProps.d.ts +1 -1
  136. package/dist/formField/hooks/useFormFieldProps.js +4 -2
  137. package/dist/formGroup/components/reviewListToggle/reviewListToggle.js +2 -2
  138. package/dist/formGroup/hooks/useCustomRow.js +46 -32
  139. package/dist/formGroup/hooks/useRowElements.js +9 -6
  140. package/dist/formGroup/hooks/useToggle.js +1 -1
  141. package/dist/formGroup/types.d.ts +4 -0
  142. package/dist/formGroup/utils/normalizeFieldId.d.ts +1 -0
  143. package/dist/formGroup/utils/normalizeFieldId.js +5 -0
  144. package/dist/formGroup/utils/resolveId.d.ts +7 -0
  145. package/dist/formGroup/utils/resolveId.js +6 -0
  146. package/dist/formLayout/components/getLayoutColumns.js +4 -2
  147. package/dist/formLayout/hooks/useError.js +3 -3
  148. package/dist/formLayout/hooks/useErrorSummary.d.ts +6 -0
  149. package/dist/formLayout/hooks/useErrorSummary.js +34 -0
  150. package/dist/formLayout/hooks/useFormButtons.js +3 -3
  151. package/dist/formLayout/utils/applyGridPropsStatic.js +1 -1
  152. package/dist/formLayout/utils/flattenErrors.d.ts +5 -0
  153. package/dist/formLayout/utils/flattenErrors.js +14 -0
  154. package/dist/formLayout/utils/getChildrenWithCustomColumns.js +3 -0
  155. package/dist/formLayout/utils/getFieldLabel.d.ts +1 -0
  156. package/dist/formLayout/utils/getFieldLabel.js +26 -0
  157. package/dist/formSection/hooks/useError.js +3 -3
  158. package/dist/formStepper/components/formStep.js +1 -1
  159. package/dist/formStepper/formStepper.js +2 -2
  160. package/dist/formStepperButtons/formStepperButtons.js +8 -5
  161. package/dist/gridLayout/hooks/useGridClasses.js +3 -9
  162. package/dist/groupButtonRaw/groupButtonRaw.js +2 -2
  163. package/dist/groupButtonRaw/types.d.ts +1 -0
  164. package/dist/groupsFilterRaw/groupsFilterAdjustmentState.js +8 -5
  165. package/dist/groupsFilterRaw/groupsFilterBox.js +3 -3
  166. package/dist/groupsFilterRaw/groupsFilterCommon.js +2 -2
  167. package/dist/groupsFilterRaw/groupsFilterCurrentlySelectedState.js +5 -5
  168. package/dist/groupsFilterRaw/groupsFilterHelper.js +2 -2
  169. package/dist/groupsFilterRaw/groupsFilterInitialState.js +12 -9
  170. package/dist/groupsFilterRaw/groupsFilterMenu.js +3 -3
  171. package/dist/groupsFilterRaw/groupsFilterRaw.d.ts +1 -0
  172. package/dist/groupsFilterRaw/groupsFilterRaw.js +15 -10
  173. package/dist/groupsFilterRaw/groupsFilterTrigger.d.ts +2 -1
  174. package/dist/groupsFilterRaw/groupsFilterTrigger.js +8 -5
  175. package/dist/groupsFilterRaw/groupsHelper.js +22 -22
  176. package/dist/groupsFilterRaw/types.d.ts +2 -0
  177. package/dist/header/components/collapsedItemsControl/collapsedItemsControl.js +1 -1
  178. package/dist/header/components/mobileFilterControl/mobileFilterControl.js +1 -1
  179. package/dist/header/components/mobileSearchControl/mobileSearchControl.js +3 -3
  180. package/dist/header/header.js +1 -1
  181. package/dist/header/headerBack.js +5 -2
  182. package/dist/header/headerHelpers.d.ts +1 -0
  183. package/dist/header/headerHelpers.js +10 -1
  184. package/dist/header/hooks/useNonFittingElements.js +1 -1
  185. package/dist/icons/iconAlignLeft.js +1 -3
  186. package/dist/icons/iconAlignmentLeft.js +1 -3
  187. package/dist/icons/iconAlignmentRight.js +1 -3
  188. package/dist/icons/iconArrowBottomLeft.js +1 -3
  189. package/dist/icons/iconArrowBottomRight.js +1 -3
  190. package/dist/icons/iconArrowLeftPath.js +1 -3
  191. package/dist/icons/iconArrowRight.js +1 -3
  192. package/dist/icons/iconArrowRightCircle.js +1 -3
  193. package/dist/icons/iconArrowRightPath.js +1 -3
  194. package/dist/icons/iconArrowTopLeft.js +1 -3
  195. package/dist/icons/iconArrowTopRight.js +1 -3
  196. package/dist/icons/iconChevronDoubleRight.js +1 -3
  197. package/dist/icons/iconChevronRight.js +1 -3
  198. package/dist/icons/iconChevronRightSmall.js +1 -3
  199. package/dist/icons/iconCornerDownLeft.js +1 -3
  200. package/dist/icons/iconCornerDownRight.js +1 -3
  201. package/dist/icons/iconCornerLeftDown.js +1 -3
  202. package/dist/icons/iconCornerLeftUp.js +1 -3
  203. package/dist/icons/iconCornerRightDown.js +1 -3
  204. package/dist/icons/iconCornerRightUp.js +1 -3
  205. package/dist/icons/iconCornerUpLeft.js +1 -3
  206. package/dist/icons/iconCornerUpRight.js +1 -3
  207. package/dist/index.css +3628 -3321
  208. package/dist/index.d.ts +1 -0
  209. package/dist/index.js +16 -14
  210. package/dist/lineChartMini/lineChartMini.js +15 -3
  211. package/dist/list/itemData/itemDataInternal.js +6 -3
  212. package/dist/list/listItem/listItem.js +6 -3
  213. package/dist/menu/components/controlledMenuList/controlledMenuList.js +4 -1
  214. package/dist/menu/components/menuButton.d.ts +2 -1
  215. package/dist/menu/components/menuButton.js +7 -4
  216. package/dist/menu/components/menuErrorItem.js +2 -2
  217. package/dist/menu/components/menuItem.js +4 -4
  218. package/dist/menu/utils/useMenuItemCore.js +4 -3
  219. package/dist/miniTabs/miniTabs.d.ts +1 -0
  220. package/dist/miniTabs/miniTabs.js +1 -1
  221. package/dist/miniTabs/miniTabsHeaderItem.d.ts +2 -1
  222. package/dist/miniTabs/miniTabsHeaderItem.js +1 -1
  223. package/dist/miniTabs/miniTabsItem.d.ts +1 -0
  224. package/dist/mobileSheet/mobileSheet.js +2 -2
  225. package/dist/modal/modal.js +1 -1
  226. package/dist/nav/navFooter/navEditFooter/navEditFooter.js +2 -2
  227. package/dist/nav/navFooter/navFooter.js +1 -1
  228. package/dist/nav/navFooter/navFooterAction/navFooterAction.js +1 -1
  229. package/dist/nav/navHeader/navHeader.js +2 -2
  230. package/dist/nav/navHeader/navHeaderSearch/navHeaderSearch.js +2 -2
  231. package/dist/nav/navItem/navItem.js +4 -1
  232. package/dist/nav/navMobileBar/navMobileBar.js +1 -1
  233. package/dist/notification/notification.js +1 -1
  234. package/dist/pagination/paginationArrow.js +12 -5
  235. package/dist/pagination/paginationText/paginationText.js +1 -1
  236. package/dist/pill/components/pillNonActionable/pillNonActionable.js +1 -1
  237. package/dist/pillBox/components/pillBoxItem.js +1 -1
  238. package/dist/pillBox/pillBox.js +3 -3
  239. package/dist/pillExpandable/pillContent.js +12 -3
  240. package/dist/pillExpandable/pillExpandable.d.ts +4 -1
  241. package/dist/pillExpandable/pillExpandable.js +5 -3
  242. package/dist/pillExpandable/pillExpandableSimple.d.ts +1 -1
  243. package/dist/pillExpandable/pillExpandableSimple.js +4 -4
  244. package/dist/radioGroupRaw/radioGroupRaw.js +2 -1
  245. package/dist/rangeRaw/rangeRaw.js +7 -8
  246. package/dist/rangeRaw/utils/rangeHelper.js +7 -7
  247. package/dist/searchInputRaw/searchInputRaw.js +6 -3
  248. package/dist/selectList/selectList.js +2 -2
  249. package/dist/selectList/selectListItem.js +4 -1
  250. package/dist/skeleton/skeleton.js +1 -1
  251. package/dist/sortControl/sortControl.js +6 -7
  252. package/dist/stepperRaw/stepperRaw.js +5 -0
  253. package/dist/summary/summary.js +2 -2
  254. package/dist/summaryTile/summaryTile.d.ts +4 -2
  255. package/dist/summaryTile/summaryTile.js +59 -26
  256. package/dist/summaryTileBar/summaryTileBar.d.ts +4 -2
  257. package/dist/summaryTileBar/summaryTileBar.js +2 -2
  258. package/dist/table/actions/actionsMenu.js +2 -2
  259. package/dist/table/children/useTableChildren.d.ts +1 -1
  260. package/dist/table/children/useTableChildren.js +3 -3
  261. package/dist/table/detailPanel/detailPanel.js +1 -1
  262. package/dist/table/detailPanel/detailPanelHeader.js +2 -2
  263. package/dist/table/flexible/columnSettings.js +2 -2
  264. package/dist/table/flexible/columnsList.js +47 -117
  265. package/dist/table/flexible/columnsPopup.d.ts +1 -1
  266. package/dist/table/flexible/columnsPopup.js +1 -1
  267. package/dist/table/nested/useNestedRows.js +2 -2
  268. package/dist/table/selectable/selectableHeader.js +5 -4
  269. package/dist/table/selectable/useSelectableRows.d.ts +8 -0
  270. package/dist/table/selectable/useSelectableRows.js +16 -8
  271. package/dist/table/sortable/mobileSortControl.js +1 -1
  272. package/dist/table/sortable/sortableHeader.js +2 -2
  273. package/dist/table/table.js +3 -9
  274. package/dist/tabs/tabItem/tabItem.d.ts +2 -1
  275. package/dist/tabs/tabItem/tabItem.js +7 -2
  276. package/dist/tabs/tabs.d.ts +2 -1
  277. package/dist/tabs/tabs.js +71 -61
  278. package/dist/tabs/tabsTestHelper.js +2 -2
  279. package/dist/timePickerRaw/timePickerRaw.js +11 -9
  280. package/dist/timePickerRaw/types.d.ts +1 -0
  281. package/dist/toastRaw/toastRaw.js +1 -1
  282. package/dist/toggleButtonRaw/toggleButtonRaw.js +7 -4
  283. package/dist/tooltip/tooltip.js +13 -5
  284. package/dist/utils/formatDate.js +37 -37
  285. package/dist/utils/localization/flipAlignment.js +12 -1
  286. package/dist/utils/localization/languageContext.d.ts +1 -1
  287. package/dist/utils/localization/translations/cs.json +7 -5
  288. package/dist/utils/localization/translations/da-DK.json +7 -5
  289. package/dist/utils/localization/translations/de.json +7 -5
  290. package/dist/utils/localization/translations/en.json +12 -1
  291. package/dist/utils/localization/translations/es.json +7 -5
  292. package/dist/utils/localization/translations/fi-FI.json +7 -5
  293. package/dist/utils/localization/translations/fr-FR.json +7 -5
  294. package/dist/utils/localization/translations/fr.json +7 -5
  295. package/dist/utils/localization/translations/hu-HU.json +7 -5
  296. package/dist/utils/localization/translations/id.json +7 -5
  297. package/dist/utils/localization/translations/it.json +7 -5
  298. package/dist/utils/localization/translations/ja.json +7 -5
  299. package/dist/utils/localization/translations/ko-KR.json +7 -5
  300. package/dist/utils/localization/translations/ms.json +7 -5
  301. package/dist/utils/localization/translations/nb-NO.json +7 -5
  302. package/dist/utils/localization/translations/nl.json +7 -5
  303. package/dist/utils/localization/translations/pl.json +7 -5
  304. package/dist/utils/localization/translations/pt-BR.json +7 -5
  305. package/dist/utils/localization/translations/pt-PT.json +7 -5
  306. package/dist/utils/localization/translations/ro-RO.json +7 -5
  307. package/dist/utils/localization/translations/sk-SK.json +7 -5
  308. package/dist/utils/localization/translations/sv.json +7 -5
  309. package/dist/utils/localization/translations/th.json +7 -5
  310. package/dist/utils/localization/translations/tr.json +7 -5
  311. package/dist/utils/localization/translations/zh-Hans.json +7 -5
  312. package/dist/utils/localization/translations/zh-TW.json +7 -5
  313. package/dist/utils/localization/useDirectionalIcon.d.ts +3 -0
  314. package/dist/utils/localization/useDirectionalIcon.js +9 -0
  315. package/dist/utils/positioningUtils/alignments.d.ts +2 -2
  316. package/dist/utils/positioningUtils/alignments.js +2 -2
  317. package/dist/utils/positioningUtils/calculatePosition.d.ts +2 -1
  318. package/dist/utils/positioningUtils/calculatePosition.js +11 -11
  319. package/dist/utils/positioningUtils/normalizeLogicalAlignment.d.ts +4 -0
  320. package/dist/utils/positioningUtils/normalizeLogicalAlignment.js +36 -0
  321. package/esm/absolute/absolute.d.ts +21 -1
  322. package/esm/absolute/absolute.js +46 -6
  323. package/esm/advancedGroupsFilter/advancedGroupsFilter.js +3 -3
  324. package/esm/advancedGroupsFilter/advancedGroupsFilterForm.js +2 -2
  325. package/esm/advancedGroupsFilter/advancedGroupsFilterFormSection.js +7 -7
  326. package/esm/advancedGroupsFilter/advancedGroupsFilterSectionTooltip.js +1 -1
  327. package/esm/alert/banner.d.ts +3 -1
  328. package/esm/alertRaw/alertRaw.js +1 -1
  329. package/esm/banner/banner.d.ts +5 -2
  330. package/esm/banner/banner.js +13 -2
  331. package/esm/banner/bannerErrorSummary.d.ts +7 -0
  332. package/esm/banner/bannerErrorSummary.js +4 -0
  333. package/esm/banner/bannerMultipLine.js +1 -1
  334. package/esm/banner/bannerSingleLine.js +1 -1
  335. package/esm/banner/utils/buildSummaryErrorList.d.ts +1 -0
  336. package/esm/banner/utils/buildSummaryErrorList.js +12 -0
  337. package/esm/banner/utils/hasSummaryErrorChild.d.ts +1 -0
  338. package/esm/banner/utils/hasSummaryErrorChild.js +3 -0
  339. package/esm/banner/utils/isSummaryErrorBanner.d.ts +2 -0
  340. package/esm/banner/utils/isSummaryErrorBanner.js +2 -0
  341. package/esm/banner/utils/isSummaryErrorElement.d.ts +3 -0
  342. package/esm/banner/utils/isSummaryErrorElement.js +3 -0
  343. package/esm/banner/utils/useSummaryBannerProp.d.ts +6 -0
  344. package/esm/banner/utils/useSummaryBannerProp.js +25 -0
  345. package/esm/betaPill/betaPill.js +4 -4
  346. package/esm/bookmark/bookmark.js +2 -2
  347. package/esm/bulkEditControl/bulkEditControl.js +5 -5
  348. package/esm/calendar/calendar.js +37 -34
  349. package/esm/calendar/calendarUtils.js +6 -4
  350. package/esm/card/card.js +1 -1
  351. package/esm/card/components/title.js +4 -1
  352. package/esm/card/components/titleLink.js +5 -2
  353. package/esm/chart/accessibleChart/accessibleChartNarrative.js +13 -13
  354. package/esm/chart/accessibleChart/accessibleChartTable.js +5 -5
  355. package/esm/chart/barChart/getDefaultOptions.d.ts +2 -1
  356. package/esm/chart/barChart/getDefaultOptions.js +5 -2
  357. package/esm/chart/barChart.js +6 -4
  358. package/esm/chart/chart.js +1 -1
  359. package/esm/chart/chartAxis/chartAxis.js +2 -2
  360. package/esm/chart/lineChart/getDefaultOptions.d.ts +4 -1
  361. package/esm/chart/lineChart/getDefaultOptions.js +7 -2
  362. package/esm/chart/lineChart.js +7 -3
  363. package/esm/chart/plugins/linePlugin/linePlugin.js +5 -4
  364. package/esm/chart/utils/getXAxisMeta.js +8 -5
  365. package/esm/chart/utils/isDateRange.js +1 -1
  366. package/esm/chart/utils/useHidden.d.ts +1 -0
  367. package/esm/chart/utils/useHidden.js +1 -1
  368. package/esm/chart/utils/useLastVisibleXAxisMeta.d.ts +2 -0
  369. package/esm/chart/utils/useLastVisibleXAxisMeta.js +11 -0
  370. package/esm/checkboxListWithAction/checkboxListWithAction.js +8 -5
  371. package/esm/chip/chip.js +1 -1
  372. package/esm/columnsSelector/columnsSelector.js +2 -2
  373. package/esm/columnsSelector/columnsTab/columnsTab.js +1 -1
  374. package/esm/columnsSelector/columnsTabGroup/columnsTabGroup.js +1 -1
  375. package/esm/commonHelpers/arrowNavigation/components/arrowButton/arrowButton.js +4 -1
  376. package/esm/controlledPopup/controlledPopup.d.ts +1 -0
  377. package/esm/controlledPopup/controlledPopup.js +3 -1
  378. package/esm/dataFeed/feedExpandControl/feedExpandControl.js +3 -0
  379. package/esm/dataGrid/cell/cell.d.ts +2 -1
  380. package/esm/dataGrid/cell/cell.js +2 -2
  381. package/esm/dataGrid/columns/checkboxColumn/checkboxHeaderCell.js +1 -1
  382. package/esm/dataGrid/dataGrid.js +8 -5
  383. package/esm/dataGrid/emptySearchList/emptySearchList.js +1 -1
  384. package/esm/dataGrid/entitiesListActions/actions/columnsListButton.js +1 -1
  385. package/esm/dataGrid/entitiesListActions/actions/fullscreenButton.js +2 -2
  386. package/esm/dataGrid/listColumn.d.ts +2 -0
  387. package/esm/dataGrid/row/row.d.ts +2 -1
  388. package/esm/dataGrid/row/row.js +13 -9
  389. package/esm/dataGrid/withFlexibleColumns/components/columnSettings.js +2 -2
  390. package/esm/dataGrid/withFlexibleColumns/components/columnSettingsList.d.ts +1 -1
  391. package/esm/dataGrid/withFlexibleColumns/components/columnSettingsList.js +44 -110
  392. package/esm/dataGrid/withFlexibleColumns/components/columnSettingsSidePanel.js +2 -0
  393. package/esm/dataGrid/withFlexibleColumns/withFlexibleColumns.js +1 -1
  394. package/esm/dataGrid/withSelectableRows/components/bulkActions/bulkActions.d.ts +4 -0
  395. package/esm/dataGrid/withSelectableRows/components/bulkActions/bulkActions.js +5 -5
  396. package/esm/dataGrid/withSelectableRows/withSelectableRows.js +4 -3
  397. package/esm/dataGrid/withSortableColumns/columns/sortableColumnWrapper.js +2 -2
  398. package/esm/dateInputInner/dateInputInner.js +7 -7
  399. package/esm/dateInputInner/dateInputInnerControlBlock.js +2 -2
  400. package/esm/dateInputRaw/dateInputRaw.js +4 -4
  401. package/esm/dateInputRaw/utils/getLabel.js +2 -2
  402. package/esm/dateRangeInner/dateRangeInner.js +6 -3
  403. package/esm/dateRangeRaw/dateRangeRaw.d.ts +1 -0
  404. package/esm/dateRangeRaw/dateRangeRaw.js +21 -15
  405. package/esm/dateRangeRaw/types.d.ts +1 -0
  406. package/esm/dateRangeRaw/utils/dateRangeUtils.js +17 -17
  407. package/esm/dateRangeRaw/utils/parseLabel.js +1 -1
  408. package/esm/dateSelectionWrapper/dateSelectionWrapper.js +4 -4
  409. package/esm/dialog/dialogContent.js +1 -1
  410. package/esm/dropdown/dropdownTrigger.d.ts +1 -1
  411. package/esm/dropdownRaw/dropdownList.js +9 -9
  412. package/esm/dropdownRaw/dropdownPopup.js +3 -3
  413. package/esm/dropdownRaw/dropdownRaw.js +34 -17
  414. package/esm/dropdownRaw/dropdownSearchableTrigger.d.ts +2 -1
  415. package/esm/dropdownRaw/dropdownSearchableTrigger.js +8 -6
  416. package/esm/dropdownRaw/dropdownTrigger.d.ts +2 -1
  417. package/esm/dropdownRaw/dropdownTrigger.js +2 -2
  418. package/esm/dropdownRaw/types.d.ts +2 -0
  419. package/esm/favoriteButton/favoriteButton.js +1 -1
  420. package/esm/fileUpload/components/dropZoneContent.js +104 -104
  421. package/esm/fileUpload/components/templateDownloadSection.js +1 -1
  422. package/esm/fileUpload/components/uploadedFilesSection.js +2 -2
  423. package/esm/fileUpload/fileUpload.js +106 -106
  424. package/esm/filterButton/filterButton.d.ts +1 -0
  425. package/esm/filters/components/filtersContainer.js +2 -2
  426. package/esm/filters/components/filtersDropdown.d.ts +1 -1
  427. package/esm/filters/components/filtersEmptyState.js +2 -2
  428. package/esm/filters/components/filtersSaveModal.js +5 -5
  429. package/esm/filters/components/filtersSavedChipComponent.js +11 -11
  430. package/esm/filters/components/filtersSearchItemData.js +1 -1
  431. package/esm/filters/components/filtersSearchList.js +14 -11
  432. package/esm/filters/components/filtersSelect.js +1 -1
  433. package/esm/filters/components/filtersSelectListItem.js +2 -2
  434. package/esm/filters/components/filtersSidePanel.js +8 -8
  435. package/esm/filters/filters.js +7 -7
  436. package/esm/filtersBar/components/filtersBarGroupsFilter/filtersBarGroupsFilter.d.ts +1 -1
  437. package/esm/filtersBar/components/filtersBarPeriodPicker/filtersBarPeriodPicker.d.ts +1 -0
  438. package/esm/filtersBar/components/filtersBarPeriodPicker/getRangeOption.js +18 -18
  439. package/esm/filtersBar/components/resetComponentButton.js +1 -1
  440. package/esm/filtersBar/filtersBarActions/filtersBarActions.js +3 -3
  441. package/esm/filtersBar/filtersBarSidePanel/components/filtersBarSidePanelRange/filtersBarSidePanelRange.js +2 -2
  442. package/esm/filtersBar/filtersBarSidePanel/filtersBarSidePanel.js +5 -5
  443. package/esm/filtersBar/filtersContainer/filtersContainer.js +62 -61
  444. package/esm/formField/hooks/useError.js +3 -3
  445. package/esm/formField/hooks/useFormFieldProps.d.ts +1 -1
  446. package/esm/formField/hooks/useFormFieldProps.js +4 -2
  447. package/esm/formGroup/components/reviewListToggle/reviewListToggle.js +2 -2
  448. package/esm/formGroup/hooks/useCustomRow.js +46 -32
  449. package/esm/formGroup/hooks/useRowElements.js +9 -6
  450. package/esm/formGroup/hooks/useToggle.js +1 -1
  451. package/esm/formGroup/types.d.ts +4 -0
  452. package/esm/formGroup/utils/normalizeFieldId.d.ts +1 -0
  453. package/esm/formGroup/utils/normalizeFieldId.js +1 -0
  454. package/esm/formGroup/utils/resolveId.d.ts +7 -0
  455. package/esm/formGroup/utils/resolveId.js +2 -0
  456. package/esm/formLayout/components/getLayoutColumns.js +4 -2
  457. package/esm/formLayout/hooks/useError.js +3 -3
  458. package/esm/formLayout/hooks/useErrorSummary.d.ts +6 -0
  459. package/esm/formLayout/hooks/useErrorSummary.js +30 -0
  460. package/esm/formLayout/hooks/useFormButtons.js +3 -3
  461. package/esm/formLayout/utils/applyGridPropsStatic.js +1 -1
  462. package/esm/formLayout/utils/flattenErrors.d.ts +5 -0
  463. package/esm/formLayout/utils/flattenErrors.js +10 -0
  464. package/esm/formLayout/utils/getChildrenWithCustomColumns.js +3 -0
  465. package/esm/formLayout/utils/getFieldLabel.d.ts +1 -0
  466. package/esm/formLayout/utils/getFieldLabel.js +22 -0
  467. package/esm/formSection/hooks/useError.js +3 -3
  468. package/esm/formStepper/components/formStep.js +1 -1
  469. package/esm/formStepper/formStepper.js +2 -2
  470. package/esm/formStepperButtons/formStepperButtons.js +8 -5
  471. package/esm/gridLayout/hooks/useGridClasses.js +3 -9
  472. package/esm/groupButtonRaw/groupButtonRaw.js +2 -2
  473. package/esm/groupButtonRaw/types.d.ts +1 -0
  474. package/esm/groupsFilterRaw/groupsFilterAdjustmentState.js +8 -5
  475. package/esm/groupsFilterRaw/groupsFilterBox.js +3 -3
  476. package/esm/groupsFilterRaw/groupsFilterCommon.js +2 -2
  477. package/esm/groupsFilterRaw/groupsFilterCurrentlySelectedState.js +5 -5
  478. package/esm/groupsFilterRaw/groupsFilterHelper.js +2 -2
  479. package/esm/groupsFilterRaw/groupsFilterInitialState.js +12 -9
  480. package/esm/groupsFilterRaw/groupsFilterMenu.js +3 -3
  481. package/esm/groupsFilterRaw/groupsFilterRaw.d.ts +1 -0
  482. package/esm/groupsFilterRaw/groupsFilterRaw.js +15 -10
  483. package/esm/groupsFilterRaw/groupsFilterTrigger.d.ts +2 -1
  484. package/esm/groupsFilterRaw/groupsFilterTrigger.js +8 -5
  485. package/esm/groupsFilterRaw/groupsHelper.js +22 -22
  486. package/esm/groupsFilterRaw/types.d.ts +2 -0
  487. package/esm/header/components/collapsedItemsControl/collapsedItemsControl.js +1 -1
  488. package/esm/header/components/mobileFilterControl/mobileFilterControl.js +1 -1
  489. package/esm/header/components/mobileSearchControl/mobileSearchControl.js +3 -3
  490. package/esm/header/header.js +2 -2
  491. package/esm/header/headerBack.js +5 -2
  492. package/esm/header/headerHelpers.d.ts +1 -0
  493. package/esm/header/headerHelpers.js +8 -0
  494. package/esm/header/hooks/useNonFittingElements.js +1 -1
  495. package/esm/icons/iconAlignLeft.js +1 -3
  496. package/esm/icons/iconAlignmentLeft.js +1 -3
  497. package/esm/icons/iconAlignmentRight.js +1 -3
  498. package/esm/icons/iconArrowBottomLeft.js +1 -3
  499. package/esm/icons/iconArrowBottomRight.js +1 -3
  500. package/esm/icons/iconArrowLeftPath.js +1 -3
  501. package/esm/icons/iconArrowRight.js +1 -3
  502. package/esm/icons/iconArrowRightCircle.js +1 -3
  503. package/esm/icons/iconArrowRightPath.js +1 -3
  504. package/esm/icons/iconArrowTopLeft.js +1 -3
  505. package/esm/icons/iconArrowTopRight.js +1 -3
  506. package/esm/icons/iconChevronDoubleRight.js +1 -3
  507. package/esm/icons/iconChevronRight.js +1 -3
  508. package/esm/icons/iconChevronRightSmall.js +1 -3
  509. package/esm/icons/iconCornerDownLeft.js +1 -3
  510. package/esm/icons/iconCornerDownRight.js +1 -3
  511. package/esm/icons/iconCornerLeftDown.js +1 -3
  512. package/esm/icons/iconCornerLeftUp.js +1 -3
  513. package/esm/icons/iconCornerRightDown.js +1 -3
  514. package/esm/icons/iconCornerRightUp.js +1 -3
  515. package/esm/icons/iconCornerUpLeft.js +1 -3
  516. package/esm/icons/iconCornerUpRight.js +1 -3
  517. package/esm/index.d.ts +1 -0
  518. package/esm/index.js +1 -0
  519. package/esm/lineChartMini/lineChartMini.js +15 -3
  520. package/esm/list/itemData/itemDataInternal.js +6 -3
  521. package/esm/list/listItem/listItem.js +6 -3
  522. package/esm/menu/components/controlledMenuList/controlledMenuList.js +4 -1
  523. package/esm/menu/components/menuButton.d.ts +2 -1
  524. package/esm/menu/components/menuButton.js +7 -4
  525. package/esm/menu/components/menuErrorItem.js +2 -2
  526. package/esm/menu/components/menuItem.js +4 -4
  527. package/esm/menu/utils/useMenuItemCore.js +4 -3
  528. package/esm/miniTabs/miniTabs.d.ts +1 -0
  529. package/esm/miniTabs/miniTabs.js +1 -1
  530. package/esm/miniTabs/miniTabsHeaderItem.d.ts +2 -1
  531. package/esm/miniTabs/miniTabsHeaderItem.js +1 -1
  532. package/esm/miniTabs/miniTabsItem.d.ts +1 -0
  533. package/esm/mobileSheet/mobileSheet.js +2 -2
  534. package/esm/modal/modal.js +1 -1
  535. package/esm/nav/navFooter/navEditFooter/navEditFooter.js +2 -2
  536. package/esm/nav/navFooter/navFooter.js +1 -1
  537. package/esm/nav/navFooter/navFooterAction/navFooterAction.js +1 -1
  538. package/esm/nav/navHeader/navHeader.js +2 -2
  539. package/esm/nav/navHeader/navHeaderSearch/navHeaderSearch.js +2 -2
  540. package/esm/nav/navItem/navItem.js +4 -1
  541. package/esm/nav/navMobileBar/navMobileBar.js +1 -1
  542. package/esm/notification/notification.js +1 -1
  543. package/esm/pagination/paginationArrow.js +12 -5
  544. package/esm/pagination/paginationText/paginationText.js +1 -1
  545. package/esm/pill/components/pillNonActionable/pillNonActionable.js +1 -1
  546. package/esm/pillBox/components/pillBoxItem.js +1 -1
  547. package/esm/pillBox/pillBox.js +3 -3
  548. package/esm/pillExpandable/pillContent.js +12 -3
  549. package/esm/pillExpandable/pillExpandable.d.ts +4 -1
  550. package/esm/pillExpandable/pillExpandable.js +5 -3
  551. package/esm/pillExpandable/pillExpandableSimple.d.ts +1 -1
  552. package/esm/pillExpandable/pillExpandableSimple.js +4 -4
  553. package/esm/radioGroupRaw/radioGroupRaw.js +2 -1
  554. package/esm/rangeRaw/rangeRaw.js +7 -8
  555. package/esm/rangeRaw/utils/rangeHelper.js +7 -7
  556. package/esm/searchInputRaw/searchInputRaw.js +6 -3
  557. package/esm/selectList/selectList.js +2 -2
  558. package/esm/selectList/selectListItem.js +4 -1
  559. package/esm/skeleton/skeleton.js +1 -1
  560. package/esm/sortControl/sortControl.js +6 -7
  561. package/esm/stepperRaw/stepperRaw.js +3 -0
  562. package/esm/summary/summary.js +2 -2
  563. package/esm/summaryTile/summaryTile.d.ts +4 -2
  564. package/esm/summaryTile/summaryTile.js +59 -26
  565. package/esm/summaryTileBar/summaryTileBar.d.ts +4 -2
  566. package/esm/summaryTileBar/summaryTileBar.js +2 -2
  567. package/esm/table/actions/actionsMenu.js +2 -2
  568. package/esm/table/children/useTableChildren.d.ts +1 -1
  569. package/esm/table/children/useTableChildren.js +3 -3
  570. package/esm/table/detailPanel/detailPanel.js +1 -1
  571. package/esm/table/detailPanel/detailPanelHeader.js +2 -2
  572. package/esm/table/flexible/columnSettings.js +2 -2
  573. package/esm/table/flexible/columnsList.js +46 -111
  574. package/esm/table/flexible/columnsPopup.d.ts +1 -1
  575. package/esm/table/flexible/columnsPopup.js +1 -1
  576. package/esm/table/nested/useNestedRows.js +2 -2
  577. package/esm/table/selectable/selectableHeader.js +5 -4
  578. package/esm/table/selectable/useSelectableRows.d.ts +8 -0
  579. package/esm/table/selectable/useSelectableRows.js +16 -8
  580. package/esm/table/sortable/mobileSortControl.js +1 -1
  581. package/esm/table/sortable/sortableHeader.js +2 -2
  582. package/esm/table/table.js +3 -9
  583. package/esm/tabs/tabItem/tabItem.d.ts +2 -1
  584. package/esm/tabs/tabItem/tabItem.js +7 -2
  585. package/esm/tabs/tabs.d.ts +2 -1
  586. package/esm/tabs/tabs.js +71 -61
  587. package/esm/tabs/tabsTestHelper.js +2 -2
  588. package/esm/testHelpers/mockAbsoluteAlignment.d.ts +1 -0
  589. package/esm/testHelpers/mockAbsoluteAlignment.js +10 -0
  590. package/esm/timePickerRaw/timePickerRaw.js +11 -9
  591. package/esm/timePickerRaw/types.d.ts +1 -0
  592. package/esm/toastRaw/toastRaw.js +1 -1
  593. package/esm/toggleButtonRaw/toggleButtonRaw.js +7 -4
  594. package/esm/tooltip/tooltip.js +13 -5
  595. package/esm/utils/formatDate.js +37 -37
  596. package/esm/utils/localization/flipAlignment.js +12 -1
  597. package/esm/utils/localization/languageContext.d.ts +1 -1
  598. package/esm/utils/localization/translations/cs.json +7 -5
  599. package/esm/utils/localization/translations/da-DK.json +7 -5
  600. package/esm/utils/localization/translations/de.json +7 -5
  601. package/esm/utils/localization/translations/en.json +12 -1
  602. package/esm/utils/localization/translations/es.json +7 -5
  603. package/esm/utils/localization/translations/fi-FI.json +7 -5
  604. package/esm/utils/localization/translations/fr-FR.json +7 -5
  605. package/esm/utils/localization/translations/fr.json +7 -5
  606. package/esm/utils/localization/translations/hu-HU.json +7 -5
  607. package/esm/utils/localization/translations/id.json +7 -5
  608. package/esm/utils/localization/translations/it.json +7 -5
  609. package/esm/utils/localization/translations/ja.json +7 -5
  610. package/esm/utils/localization/translations/ko-KR.json +7 -5
  611. package/esm/utils/localization/translations/ms.json +7 -5
  612. package/esm/utils/localization/translations/nb-NO.json +7 -5
  613. package/esm/utils/localization/translations/nl.json +7 -5
  614. package/esm/utils/localization/translations/pl.json +7 -5
  615. package/esm/utils/localization/translations/pt-BR.json +7 -5
  616. package/esm/utils/localization/translations/pt-PT.json +7 -5
  617. package/esm/utils/localization/translations/ro-RO.json +7 -5
  618. package/esm/utils/localization/translations/sk-SK.json +7 -5
  619. package/esm/utils/localization/translations/sv.json +7 -5
  620. package/esm/utils/localization/translations/th.json +7 -5
  621. package/esm/utils/localization/translations/tr.json +7 -5
  622. package/esm/utils/localization/translations/zh-Hans.json +7 -5
  623. package/esm/utils/localization/translations/zh-TW.json +7 -5
  624. package/esm/utils/localization/useDirectionalIcon.d.ts +3 -0
  625. package/esm/utils/localization/useDirectionalIcon.js +5 -0
  626. package/esm/utils/positioningUtils/alignments.d.ts +2 -2
  627. package/esm/utils/positioningUtils/alignments.js +2 -2
  628. package/esm/utils/positioningUtils/calculatePosition.d.ts +2 -1
  629. package/esm/utils/positioningUtils/calculatePosition.js +11 -11
  630. package/esm/utils/positioningUtils/normalizeLogicalAlignment.d.ts +4 -0
  631. package/esm/utils/positioningUtils/normalizeLogicalAlignment.js +32 -0
  632. package/package.json +11 -12
  633. package/dist/utils/localization/translations/en-json.d.ts +0 -317
  634. package/dist/utils/localization/translations/en-json.js +0 -320
  635. package/esm/utils/localization/translations/en-json.d.ts +0 -317
  636. package/esm/utils/localization/translations/en-json.js +0 -317
@@ -1,10 +1,8 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useId, useMemo } from "react";
3
3
  import { classNames } from "../commonHelpers/classNames/classNames";
4
- import { useIsRTL } from "../utils/localization/useIsRTL";
5
4
  export const IconCornerLeftDown = ({ className, size, title, description, focusable = false }) => {
6
5
  const uniqueId = useId();
7
- const isRTL = useIsRTL();
8
- const classes = useMemo(() => classNames(["zen-icon", size ? `zen-icon--${size}` : "", isRTL ? "zen-icon--rtl" : "", className !== null && className !== void 0 ? className : ""]), [size, isRTL, className]);
6
+ const classes = useMemo(() => classNames(["zen-icon", size ? `zen-icon--${size}` : "", className !== null && className !== void 0 ? className : ""]), [size, className]);
9
7
  return (_jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 25", focusable: focusable ? "true" : undefined, tabIndex: focusable ? 0 : undefined, role: focusable || title || description ? undefined : "presentation", className: classes, "aria-labelledby": title && focusable ? uniqueId : undefined, "data-name": "IconCornerLeftDown", children: [title ? _jsx("title", { id: uniqueId, children: title }) : null, description ? _jsx("desc", { children: description }) : null, _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M21 4.87a1 1 0 01-1 1H9v12.585l2.293-2.292a1 1 0 011.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 111.414-1.415L7 18.456V4.87a1 1 0 011-1h12a1 1 0 011 1z" })] }));
10
8
  };
@@ -1,10 +1,8 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useId, useMemo } from "react";
3
3
  import { classNames } from "../commonHelpers/classNames/classNames";
4
- import { useIsRTL } from "../utils/localization/useIsRTL";
5
4
  export const IconCornerLeftUp = ({ className, size, title, description, focusable = false }) => {
6
5
  const uniqueId = useId();
7
- const isRTL = useIsRTL();
8
- const classes = useMemo(() => classNames(["zen-icon", size ? `zen-icon--${size}` : "", isRTL ? "zen-icon--rtl" : "", className !== null && className !== void 0 ? className : ""]), [size, isRTL, className]);
6
+ const classes = useMemo(() => classNames(["zen-icon", size ? `zen-icon--${size}` : "", className !== null && className !== void 0 ? className : ""]), [size, className]);
9
7
  return (_jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 25", focusable: focusable ? "true" : undefined, tabIndex: focusable ? 0 : undefined, role: focusable || title || description ? undefined : "presentation", className: classes, "aria-labelledby": title && focusable ? uniqueId : undefined, "data-name": "IconCornerLeftUp", children: [title ? _jsx("title", { id: uniqueId, children: title }) : null, description ? _jsx("desc", { children: description }) : null, _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M7.293 4.163a1 1 0 011.414 0l4 4a1 1 0 01-1.414 1.414L9 7.284V19.87h11a1 1 0 110 2H8a1 1 0 01-1-1V7.284L4.707 9.577a1 1 0 01-1.414-1.414l4-4z" })] }));
10
8
  };
@@ -1,10 +1,8 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useId, useMemo } from "react";
3
3
  import { classNames } from "../commonHelpers/classNames/classNames";
4
- import { useIsRTL } from "../utils/localization/useIsRTL";
5
4
  export const IconCornerRightDown = ({ className, size, title, description, focusable = false }) => {
6
5
  const uniqueId = useId();
7
- const isRTL = useIsRTL();
8
- const classes = useMemo(() => classNames(["zen-icon", size ? `zen-icon--${size}` : "", isRTL ? "zen-icon--rtl" : "", className !== null && className !== void 0 ? className : ""]), [size, isRTL, className]);
6
+ const classes = useMemo(() => classNames(["zen-icon", size ? `zen-icon--${size}` : "", className !== null && className !== void 0 ? className : ""]), [size, className]);
9
7
  return (_jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 25", focusable: focusable ? "true" : undefined, tabIndex: focusable ? 0 : undefined, role: focusable || title || description ? undefined : "presentation", className: classes, "aria-labelledby": title && focusable ? uniqueId : undefined, "data-name": "IconCornerRightDown", children: [title ? _jsx("title", { id: uniqueId, children: title }) : null, description ? _jsx("desc", { children: description }) : null, _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M3 4.87a1 1 0 001 1h11v12.585l-2.293-2.292a1 1 0 00-1.414 1.414l4 4a1 1 0 001.414 0l4-4a1 1 0 00-1.414-1.415L17 18.456V4.87a1 1 0 00-1-1H4a1 1 0 00-1 1z" })] }));
10
8
  };
@@ -1,10 +1,8 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useId, useMemo } from "react";
3
3
  import { classNames } from "../commonHelpers/classNames/classNames";
4
- import { useIsRTL } from "../utils/localization/useIsRTL";
5
4
  export const IconCornerRightUp = ({ className, size, title, description, focusable = false }) => {
6
5
  const uniqueId = useId();
7
- const isRTL = useIsRTL();
8
- const classes = useMemo(() => classNames(["zen-icon", size ? `zen-icon--${size}` : "", isRTL ? "zen-icon--rtl" : "", className !== null && className !== void 0 ? className : ""]), [size, isRTL, className]);
6
+ const classes = useMemo(() => classNames(["zen-icon", size ? `zen-icon--${size}` : "", className !== null && className !== void 0 ? className : ""]), [size, className]);
9
7
  return (_jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 25", focusable: focusable ? "true" : undefined, tabIndex: focusable ? 0 : undefined, role: focusable || title || description ? undefined : "presentation", className: classes, "aria-labelledby": title && focusable ? uniqueId : undefined, "data-name": "IconCornerRightUp", children: [title ? _jsx("title", { id: uniqueId, children: title }) : null, description ? _jsx("desc", { children: description }) : null, _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M15.293 4.163a1 1 0 011.414 0l4 4a1 1 0 01-1.414 1.414L17 7.284V20.87a1 1 0 01-1 1H4a1 1 0 110-2h11V7.284l-2.293 2.293a1 1 0 11-1.414-1.414l4-4z" })] }));
10
8
  };
@@ -1,10 +1,8 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useId, useMemo } from "react";
3
3
  import { classNames } from "../commonHelpers/classNames/classNames";
4
- import { useIsRTL } from "../utils/localization/useIsRTL";
5
4
  export const IconCornerUpLeft = ({ className, size, title, description, focusable = false }) => {
6
5
  const uniqueId = useId();
7
- const isRTL = useIsRTL();
8
- const classes = useMemo(() => classNames(["zen-icon", size ? `zen-icon--${size}` : "", isRTL ? "zen-icon--rtl" : "", className !== null && className !== void 0 ? className : ""]), [size, isRTL, className]);
6
+ const classes = useMemo(() => classNames(["zen-icon", size ? `zen-icon--${size}` : "", className !== null && className !== void 0 ? className : ""]), [size, className]);
9
7
  return (_jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", focusable: focusable ? "true" : undefined, tabIndex: focusable ? 0 : undefined, role: focusable || title || description ? undefined : "presentation", className: classes, "aria-labelledby": title && focusable ? uniqueId : undefined, "data-name": "IconCornerUpLeft", children: [title ? _jsx("title", { id: uniqueId, children: title }) : null, description ? _jsx("desc", { children: description }) : null, _jsx("path", { fillRule: "evenodd", d: "M20 20a1 1 0 0 1-1-1v-9H6.414l2.293 2.293a1 1 0 1 1-1.414 1.414l-4-4a1 1 0 0 1 0-1.414l4-4a1 1 0 0 1 1.414 1.414L6.414 8H20a1 1 0 0 1 1 1v10a1 1 0 0 1-1 1", clipRule: "evenodd" })] }));
10
8
  };
@@ -1,10 +1,8 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useId, useMemo } from "react";
3
3
  import { classNames } from "../commonHelpers/classNames/classNames";
4
- import { useIsRTL } from "../utils/localization/useIsRTL";
5
4
  export const IconCornerUpRight = ({ className, size, title, description, focusable = false }) => {
6
5
  const uniqueId = useId();
7
- const isRTL = useIsRTL();
8
- const classes = useMemo(() => classNames(["zen-icon", size ? `zen-icon--${size}` : "", isRTL ? "zen-icon--rtl" : "", className !== null && className !== void 0 ? className : ""]), [size, isRTL, className]);
6
+ const classes = useMemo(() => classNames(["zen-icon", size ? `zen-icon--${size}` : "", className !== null && className !== void 0 ? className : ""]), [size, className]);
9
7
  return (_jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 25", focusable: focusable ? "true" : undefined, tabIndex: focusable ? 0 : undefined, role: focusable || title || description ? undefined : "presentation", className: classes, "aria-labelledby": title && focusable ? uniqueId : undefined, "data-name": "IconCornerUpRight", children: [title ? _jsx("title", { id: uniqueId, children: title }) : null, description ? _jsx("desc", { children: description }) : null, _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M4 20.87a1 1 0 001-1v-9h12.586l-2.293 2.293a1 1 0 001.414 1.414l4-4a1 1 0 000-1.414l-4-4a1 1 0 10-1.414 1.414l2.293 2.293H4a1 1 0 00-1 1v10a1 1 0 001 1z" })] }));
10
8
  };
package/esm/index.d.ts CHANGED
@@ -144,6 +144,7 @@ export { OneColumnGrid } from "./formLayout/components/oneColumnGrid";
144
144
  export { TwoColumnsGrid } from "./formLayout/components/twoColumnsGrid";
145
145
  export { FormLayout } from "./formLayout/formLayout";
146
146
  export { useColumns } from "./formLayout/hooks/useColumns";
147
+ export { type IUseErrorSummaryConfig, useErrorSummary } from "./formLayout/hooks/useErrorSummary";
147
148
  export { type IUseFormButtonsProps, useFormButtons } from "./formLayout/hooks/useFormButtons";
148
149
  export { useLayoutColumns } from "./formLayout/hooks/useLayoutColumns";
149
150
  export { type TFormLayoutColumns, type TFormLayoutMode, type IFormLayout, type IFormLayoutWithStepper, type TFormLayout, type IDefaultColumns } from "./formLayout/types";
package/esm/index.js CHANGED
@@ -137,6 +137,7 @@ export { OneColumnGrid } from "./formLayout/components/oneColumnGrid";
137
137
  export { TwoColumnsGrid } from "./formLayout/components/twoColumnsGrid";
138
138
  export { FormLayout } from "./formLayout/formLayout";
139
139
  export { useColumns } from "./formLayout/hooks/useColumns";
140
+ export { useErrorSummary } from "./formLayout/hooks/useErrorSummary";
140
141
  export { useFormButtons } from "./formLayout/hooks/useFormButtons";
141
142
  export { useLayoutColumns } from "./formLayout/hooks/useLayoutColumns";
142
143
  export { applyFirstColumn } from "./formLayout/utils/applyGridPropsTwoColumns/applyFirstColumn";
@@ -18,6 +18,7 @@ import { getDefaultDatasetStyle } from "../lineChart/utils";
18
18
  import { useDrive } from "../utils/theme/useDrive";
19
19
  import { useMobile } from "../commonHelpers/hooks/useMobile";
20
20
  import { themeContext } from "../utils/theme/themeContext";
21
+ import { useIsRTL } from "../utils/localization/useIsRTL";
21
22
  import { AccessibleChart } from "../chart/accessibleChart/accessibleChart";
22
23
  ChartJS.defaults.font = {
23
24
  family: "Roboto",
@@ -30,17 +31,26 @@ const defaultGridStyle = {
30
31
  const defaultGridBorderStyle = {
31
32
  display: false
32
33
  };
33
- const defaultOptions = {
34
+ const getDefaultOptions = (isRtl) => ({
34
35
  responsive: true,
35
36
  maintainAspectRatio: false,
37
+ layout: {
38
+ padding: {
39
+ left: isRtl ? 16 : 0,
40
+ right: isRtl ? 0 : 16
41
+ }
42
+ },
36
43
  scales: {
37
44
  x: {
38
45
  grid: defaultGridStyle,
39
- border: defaultGridBorderStyle
46
+ border: defaultGridBorderStyle,
47
+ reverse: isRtl,
48
+ offset: false
40
49
  },
41
50
  y: {
42
51
  grid: defaultGridStyle,
43
52
  border: defaultGridBorderStyle,
53
+ position: isRtl ? "right" : "left",
44
54
  ticks: {
45
55
  display: false
46
56
  }
@@ -54,7 +64,7 @@ const defaultOptions = {
54
64
  enabled: false
55
65
  }
56
66
  }
57
- };
67
+ });
58
68
  export const LineChartMini = (_a) => {
59
69
  var _b, _c;
60
70
  var { data, options = {} } = _a, rest = __rest(_a, ["data", "options"]);
@@ -62,6 +72,7 @@ export const LineChartMini = (_a) => {
62
72
  const isMobile = useMobile();
63
73
  const memoizedFontSize = useMemo(() => (isDrive ? (isMobile ? 14 : 16) : 12), [isDrive, isMobile]);
64
74
  const { dark } = useContext(themeContext);
75
+ const isRtl = useIsRTL();
65
76
  useEffect(() => {
66
77
  ChartJS.defaults.font = {
67
78
  family: "Roboto",
@@ -70,6 +81,7 @@ export const LineChartMini = (_a) => {
70
81
  ChartJS.defaults.color = dark ? "#FFFFFF" : "#1F2833";
71
82
  }, [memoizedFontSize, dark]);
72
83
  const adaptedData = Object.assign({}, data);
84
+ const defaultOptions = useMemo(() => getDefaultOptions(isRtl), [isRtl]);
73
85
  const adaptedOptions = deepMerge(defaultOptions, options);
74
86
  if (((_b = adaptedData.labels) === null || _b === void 0 ? void 0 : _b.length) === 2) {
75
87
  const maxLabelsCount = Math.max(...data.datasets.map(ds => ds.data.length));
@@ -6,6 +6,8 @@ import { useLanguage } from "../../utils/localization/useLanguage";
6
6
  import { Button } from "../../button/button";
7
7
  import { classNames } from "../../commonHelpers/classNames/classNames";
8
8
  import { IconChevronRight } from "../../icons/iconChevronRight";
9
+ import { IconChevronLeft } from "../../icons/iconChevronLeft";
10
+ import { useDirectionalIcon } from "../../utils/localization/useDirectionalIcon";
9
11
  import { IconDotVertical } from "../../icons/iconDotVertical";
10
12
  import { Menu } from "../../menu/menu";
11
13
  import { isActiveElement } from "../utils/isActiveElement";
@@ -37,7 +39,7 @@ injectString("tr", "More", "Di\u011Fer");
37
39
  injectString("zh-Hans", "More", "\u66F4\u591A");
38
40
  injectString("zh-TW", "More", "\u66F4\u591A");
39
41
  injectString("ro-RO", "More", "Mai multe");
40
- injectString("ar-SA", "More", "\u0627\u0644\u0645\u0632\u064A\u062F");
42
+ injectString("ar", "More", "\u0627\u0644\u0645\u0632\u064A\u062F");
41
43
  injectString("cs", "Open", "Otev\u0159\xEDt");
42
44
  injectString("da-DK", "Open", "\xC5bn");
43
45
  injectString("de", "Open", "Offen");
@@ -64,7 +66,7 @@ injectString("tr", "Open", "A\xE7");
64
66
  injectString("zh-Hans", "Open", "\u6253\u5F00");
65
67
  injectString("zh-TW", "Open", "\u958B\u555F");
66
68
  injectString("ro-RO", "Open", "Deschis");
67
- injectString("ar-SA", "Open", "\u0641\u062A\u062D");
69
+ injectString("ar", "Open", "\u0641\u062A\u062D");
68
70
  const ItemDataInternalInner = ({
69
71
  id,
70
72
  visible,
@@ -87,6 +89,7 @@ const ItemDataInternalInner = ({
87
89
  const {
88
90
  translate
89
91
  } = useLanguage();
92
+ const ChevronIcon = useDirectionalIcon(IconChevronRight, IconChevronLeft);
90
93
  const driveClassName = useMemo(() => isDrive ? isMobile ? "zen-item-data-drive" : "zen-item-data-drive-tablet" : "", [isDrive, isMobile]);
91
94
  const mobileClassName = useMobileClassName("zen-item-data");
92
95
  const aceClassName = useMemo(() => isTall ? "zen-item-data--tall" : "", [isTall]);
@@ -194,7 +197,7 @@ const ItemDataInternalInner = ({
194
197
  onClick: onClick,
195
198
  title: translate("Open"),
196
199
  "aria-label": translate("Open"),
197
- children: _jsx(IconChevronRight, {
200
+ children: _jsx(ChevronIcon, {
198
201
  size: "large",
199
202
  className: "zen-item-data__click-icon"
200
203
  })
@@ -12,6 +12,8 @@ import { useDriveClassName } from "../../utils/theme/useDriveClassName";
12
12
  import { classNames } from "../../commonHelpers/classNames/classNames";
13
13
  import { useIconSize } from "../../utils/theme/useIconSize";
14
14
  import { IconChevronRight } from "../../icons/iconChevronRight";
15
+ import { IconChevronLeft } from "../../icons/iconChevronLeft";
16
+ import { useDirectionalIcon } from "../../utils/localization/useDirectionalIcon";
15
17
  import { isActiveElement } from "../utils/isActiveElement";
16
18
  import { useMobileClassName } from "../../utils/theme/useMobileClassName";
17
19
  injectString("cs", "More", "V\xEDce");
@@ -40,7 +42,7 @@ injectString("tr", "More", "Di\u011Fer");
40
42
  injectString("zh-Hans", "More", "\u66F4\u591A");
41
43
  injectString("zh-TW", "More", "\u66F4\u591A");
42
44
  injectString("ro-RO", "More", "Mai multe");
43
- injectString("ar-SA", "More", "\u0627\u0644\u0645\u0632\u064A\u062F");
45
+ injectString("ar", "More", "\u0627\u0644\u0645\u0632\u064A\u062F");
44
46
  injectString("cs", "View details", "Zobrazit podrobnosti");
45
47
  injectString("da-DK", "View details", "Se detaljer");
46
48
  injectString("de", "View details", "Details anzeigen");
@@ -67,7 +69,7 @@ injectString("tr", "View details", "Ayr\u0131nt\u0131lar\u0131 g\xF6r\xFCnt\xFCl
67
69
  injectString("zh-Hans", "View details", "\u67E5\u770B\u8BE6\u7EC6\u4FE1\u606F");
68
70
  injectString("zh-TW", "View details", "\u6AA2\u8996\u8A73\u7D30\u8CC7\u8A0A");
69
71
  injectString("ro-RO", "View details", "Afi\u0219a\u021Bi detaliile");
70
- injectString("ar-SA", "View details", "\u0639\u0631\u0636 \u0627\u0644\u062A\u0641\u0627\u0635\u064A\u0644");
72
+ injectString("ar", "View details", "\u0639\u0631\u0636 \u0627\u0644\u062A\u0641\u0627\u0635\u064A\u0644");
71
73
  export const ListItem = ({
72
74
  id,
73
75
  className,
@@ -89,6 +91,7 @@ export const ListItem = ({
89
91
  translate
90
92
  } = useLanguage();
91
93
  const itemRef = useRef(null);
94
+ const ChevronIcon = useDirectionalIcon(IconChevronRight, IconChevronLeft);
92
95
  const renderActions = useCallback(() => {
93
96
  if (!actions || actions.length === 0) {
94
97
  return null;
@@ -201,7 +204,7 @@ export const ListItem = ({
201
204
  link: link,
202
205
  target: target,
203
206
  title: translate("View details"),
204
- children: _jsx(IconChevronRight, {
207
+ children: _jsx(ChevronIcon, {
205
208
  size: isMobile ? "huge" : "large",
206
209
  className: "zen-list-item__click-icon"
207
210
  })
@@ -11,6 +11,8 @@ import { useLastValidSheet } from "../../utils/useLastValidSheet";
11
11
  import { useMenuListKeyboardNav } from "../../utils/useMenuListKeyboardNav";
12
12
  import { MenuButton } from "../menuButton";
13
13
  import { IconArrowLeft } from "../../../icons/iconArrowLeft";
14
+ import { IconArrowRight } from "../../../icons/iconArrowRight";
15
+ import { useDirectionalIcon } from "../../../utils/localization/useDirectionalIcon";
14
16
  import { DeviceType } from "../../../commonHelpers/hooks/deviceType";
15
17
  import { useDeviceType } from "../../../commonHelpers/hooks/useDeviceType";
16
18
  import { generateId } from "../../../commonHelpers/generateId";
@@ -20,6 +22,7 @@ import { isSeparator, MenuSeparator } from "../menuSeparator";
20
22
  const ControlledMenuListBase = forwardRef(({ children, setIsOpen, isOpen, className = "", listClassName = "", ariaLabel, defaultTooltipAlignment, defaultAlignment, direction = "vertical" }, ref) => {
21
23
  const [deviceType, setDeviceType] = useState(DeviceType.Desktop);
22
24
  const isMobile = deviceType === DeviceType.Mobile;
25
+ const BackArrowIcon = useDirectionalIcon(IconArrowLeft, IconArrowRight);
23
26
  useDeviceType(setDeviceType);
24
27
  // True when mounted inside ControlledMenu, which injects setIsOpen and isOpen.
25
28
  // Standalone usage leaves both undefined.
@@ -110,7 +113,7 @@ const ControlledMenuListBase = forwardRef(({ children, setIsOpen, isOpen, classN
110
113
  className,
111
114
  listClassName,
112
115
  applyDirection && direction === "horizontal" ? "zen-menu-item--horizontal" : ""
113
- ]), children: [backParent ? (_jsx(MenuButton, { id: "root", name: getItemLabel(backParent), icon: IconArrowLeft, onClick: closeBranch, hasChildren: false, disabled: false }, "root")) : null, listContent] }) }));
116
+ ]), children: [backParent ? (_jsx(MenuButton, { id: "root", name: getItemLabel(backParent), icon: BackArrowIcon, onClick: closeBranch, hasChildren: false, disabled: false }, "root")) : null, listContent] }) }));
114
117
  const { sheetContent, sheetParent, sheetPathLength, sheetParentName } = useLastValidSheet(nestedContent, nestedParent, path, children);
115
118
  return (_jsxs(PathProvider, { path: path, onOpenBranch: onOpenBranch, closeBranch: closeBranch, navigatedViaKeyboardRef: navigatedViaKeyboardRef, keyboardActiveRef: keyboardActiveRef, children: [renderList(content, parent, divRefCallback), !isEmbedded && isMobile && (_jsxs(MobileSheet, { label: sheetParentName, isOpen: path.length > 0, triggerRef: internalRef, onHidePanel: closeAll, onCloseClick: closeAll, children: [_jsx(MobileSheet.Title, { children: sheetParentName }), _jsx(MobileSheet.Content, { children: renderList(sheetContent, sheetPathLength > 1 ? sheetParent : null, undefined, false, onKeyDownVertical) })] }))] }));
116
119
  });
@@ -16,6 +16,7 @@ export interface IMenuButton extends IZenIdComponentProps {
16
16
  onClick?: (id: string, e: React.MouseEvent) => void;
17
17
  active?: boolean | null;
18
18
  ref?: RefObject<HTMLButtonElement | null>;
19
+ dataAnalyticsId?: string;
19
20
  }
20
- export declare const MenuButton: ({ id, onClick, hasChildren, disabled, icon, name, link, target, rel, className, active, ref }: IMenuButton & IMenuButtonInternal) => import("react/jsx-runtime").JSX.Element;
21
+ export declare const MenuButton: ({ id, onClick, hasChildren, disabled, icon, name, link, target, rel, className, active, ref, dataAnalyticsId }: IMenuButton & IMenuButtonInternal) => import("react/jsx-runtime").JSX.Element;
21
22
  export {};
@@ -2,15 +2,18 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { createElement, useCallback, useMemo } from "react";
3
3
  import { classNames } from "../../commonHelpers/classNames/classNames";
4
4
  import { IconChevronRight } from "../../icons/iconChevronRight";
5
+ import { IconChevronLeft } from "../../icons/iconChevronLeft";
6
+ import { useDirectionalIcon } from "../../utils/localization/useDirectionalIcon";
5
7
  import { useDriveClassName } from "../../utils/theme/useDriveClassName";
6
8
  import { useDrive } from "../../utils/theme/useDrive";
7
9
  import { getMenuButtonState } from "../utils/getMenuButtonState";
8
10
  import { isSafeHref } from "../utils/isSafeHref";
9
11
  import { getSafeRel } from "../utils/getSafeRel";
10
- export const MenuButton = ({ id, onClick, hasChildren, disabled, icon, name, link, target, rel, className = "", active = null, ref }) => {
12
+ export const MenuButton = ({ id, onClick, hasChildren, disabled, icon, name, link, target, rel, className = "", active = null, ref, dataAnalyticsId }) => {
11
13
  const { hasState, isActive } = getMenuButtonState(active, disabled);
12
14
  const driveMenuButtonActionClasses = useDriveClassName("zen-menu-button__action");
13
15
  const isDrive = useDrive();
16
+ const ChevronIcon = useDirectionalIcon(IconChevronRight, IconChevronLeft);
14
17
  const linkEvents = useMemo(() => ({
15
18
  onKeyDown: e => {
16
19
  if (e.key === " ") {
@@ -42,17 +45,17 @@ export const MenuButton = ({ id, onClick, hasChildren, disabled, icon, name, lin
42
45
  hasChildren ? "zen-menu-button__action--has-children" : "",
43
46
  hasState && isActive ? "zen-menu-button__action--active" : "",
44
47
  driveMenuButtonActionClasses || ""
45
- ]), role: hasState ? "menuitemcheckbox" : "menuitem", onClick: onClickHandler, "aria-checked": hasState ? isActive : undefined, children: [!!icon &&
48
+ ]), role: hasState ? "menuitemcheckbox" : "menuitem", onClick: onClickHandler, "aria-checked": hasState ? isActive : undefined, "data-analytics-id": dataAnalyticsId, children: [!!icon &&
46
49
  createElement(icon, {
47
50
  size: isDrive ? "huge" : "large",
48
51
  className: classNames(["zen-caption__pre-content", "zen-menu-button__icon"])
49
- }), _jsx("span", { className: "zen-menu-button__action-text", children: name }), !!hasChildren && (_jsx(IconChevronRight, { size: isDrive ? "huge" : "large", className: classNames(["zen-caption__pre-content", "zen-menu-button__more-icon"]) }))] }));
52
+ }), _jsx("span", { className: "zen-menu-button__action-text", children: name }), !!hasChildren && (_jsx(ChevronIcon, { size: isDrive ? "huge" : "large", className: classNames(["zen-caption__pre-content", "zen-menu-button__more-icon"]) }))] }));
50
53
  const linkTemplate = (_jsxs("a", Object.assign({ "data-id": id, role: "menuitem", className: classNames([
51
54
  "zen-menu-button__action",
52
55
  "zen-caption",
53
56
  disabled ? "zen-menu-button__action--disabled" : "",
54
57
  driveMenuButtonActionClasses || ""
55
- ]), href: disabled || !isSafeHref(link) ? undefined : link, "aria-disabled": disabled, onClick: onClickHandler, target: target, rel: getSafeRel(rel, target) }, linkEvents, { children: [!!icon &&
58
+ ]), href: disabled || !isSafeHref(link) ? undefined : link, "aria-disabled": disabled, onClick: onClickHandler, target: target, rel: getSafeRel(rel, target), "data-analytics-id": dataAnalyticsId }, linkEvents, { children: [!!icon &&
56
59
  createElement(icon, {
57
60
  size: isDrive ? "huge" : "large",
58
61
  className: "zen-caption__pre-content"
@@ -29,7 +29,7 @@ injectString("tr", "Error with loading", "Error with loading");
29
29
  injectString("zh-Hans", "Error with loading", "Error with loading");
30
30
  injectString("zh-TW", "Error with loading", "Error with loading");
31
31
  injectString("ro-RO", "Error with loading", "Eroare la \xEEnc\u0103rcare");
32
- injectString("ar-SA", "Error with loading", "\u062E\u0637\u0623 \u0641\u064A \u0627\u0644\u062A\u062D\u0645\u064A\u0644");
32
+ injectString("ar", "Error with loading", "\u062E\u0637\u0623 \u0641\u064A \u0627\u0644\u062A\u062D\u0645\u064A\u0644");
33
33
  injectString("cs", "Click to refresh", "Click to refresh");
34
34
  injectString("da-DK", "Click to refresh", "Click to refresh");
35
35
  injectString("de", "Click to refresh", "Click to refresh");
@@ -56,7 +56,7 @@ injectString("tr", "Click to refresh", "Click to refresh");
56
56
  injectString("zh-Hans", "Click to refresh", "Click to refresh");
57
57
  injectString("zh-TW", "Click to refresh", "Click to refresh");
58
58
  injectString("ro-RO", "Click to refresh", "Face\u021Bi clic pentru a re\xEEnc\u0103rca");
59
- injectString("ar-SA", "Click to refresh", "\u0627\u0646\u0642\u0631 \u0644\u0644\u062A\u062D\u062F\u064A\u062B");
59
+ injectString("ar", "Click to refresh", "\u0627\u0646\u0642\u0631 \u0644\u0644\u062A\u062D\u062F\u064A\u062B");
60
60
  export const MenuErrorItem = ({
61
61
  id,
62
62
  onClick
@@ -6,7 +6,7 @@ import { ControlledPopup } from "../../controlledPopup/controlledPopup";
6
6
  import { classNames } from "../../commonHelpers/classNames/classNames";
7
7
  import { useMenuItemCore } from "../utils/useMenuItemCore";
8
8
  export { isMenuItem } from "../utils/isMenuItem";
9
- export const MenuItem = ({ id, children, name, icon, disabled, onClick, link, target, rel, isMobile = false, setIsOpen, trigger, className, active, alignment }) => {
9
+ export const MenuItem = ({ id, children, name, icon, disabled, onClick, link, target, rel, isMobile = false, setIsOpen, trigger, className, active, alignment, dataAnalyticsId }) => {
10
10
  const { ref, isOpen, hasChildren, content, openedViaKeyboard, contentAlignment, path, onOpenBranch, handleOpenChange } = useMenuItemCore({
11
11
  id,
12
12
  children,
@@ -40,10 +40,10 @@ export const MenuItem = ({ id, children, name, icon, disabled, onClick, link, ta
40
40
  onClick === null || onClick === void 0 ? void 0 : onClick(id, e);
41
41
  }, [onClick, onOpenBranch, id, trigger]);
42
42
  if (!hasChildren) {
43
- return (_jsx(MenuButton, { id: id, name: name, icon: icon, disabled: disabled, link: link, target: target, rel: rel, onClick: memoizedDesktopActionOnClick, className: className, active: active, hasChildren: false }, id));
43
+ return (_jsx(MenuButton, { id: id, name: name, icon: icon, disabled: disabled, link: link, target: target, rel: rel, onClick: memoizedDesktopActionOnClick, className: className, active: active, hasChildren: false, dataAnalyticsId: dataAnalyticsId }, id));
44
44
  }
45
45
  if (isMobile) {
46
- return (_jsx(MenuButton, { id: id, name: name, icon: icon, disabled: disabled, link: link, target: target, rel: rel, onClick: memoizedMobileActionOnClick, active: active, hasChildren: true }, id));
46
+ return (_jsx(MenuButton, { id: id, name: name, icon: icon, disabled: disabled, link: link, target: target, rel: rel, onClick: memoizedMobileActionOnClick, active: active, hasChildren: true, dataAnalyticsId: dataAnalyticsId }, id));
47
47
  }
48
48
  let popupTrigger;
49
49
  if (trigger) {
@@ -53,7 +53,7 @@ export const MenuItem = ({ id, children, name, icon, disabled, onClick, link, ta
53
53
  });
54
54
  }
55
55
  else {
56
- popupTrigger = (_jsx(MenuButton, { id: id, ref: ref, name: name, icon: icon, disabled: disabled, hasChildren: true, onClick: memoizedTriggerOnClick, active: active }, id));
56
+ popupTrigger = (_jsx(MenuButton, { id: id, ref: ref, name: name, icon: icon, disabled: disabled, hasChildren: true, onClick: memoizedTriggerOnClick, active: active, dataAnalyticsId: dataAnalyticsId }, id));
57
57
  }
58
58
  return (_jsxs(Fragment, { children: [popupTrigger, _jsx(ControlledPopup, { className: classNames([`zen-controlled-menu-submenu--${path.length}`]), useTrapFocusWithTrigger: openedViaKeyboard ? "on" : "withTrigger", alignment: contentAlignment, triggerRef: ref, isOpen: isOpen, onOpenChange: handleOpenChange, ariaLabel: popupTrigger.props.name, recalculateOnScroll: true, children: _jsx("ul", { role: "menu", className: "zen-menu-item", children: content }) })] }, id));
59
59
  };
@@ -3,15 +3,16 @@ import { PathContext } from "../contexts/pathContext";
3
3
  import { MenuAlignmentContext } from "../../header/headerContext";
4
4
  import { buildMenuContent } from "./buildMenuContent";
5
5
  import { useMenuItemKeyboardNav } from "./useMenuItemKeyboardNav";
6
- import { useRTLAlignment } from "../../utils/localization/useRTLAlignment";
6
+ import { directionContext } from "../../utils/localization/directionContext";
7
7
  /**
8
8
  * Core menu item logic shared between MenuItem and createMenuItem.
9
9
  * Consolidates context access, state computation, and callback memoization.
10
10
  */
11
11
  export const useMenuItemCore = ({ id, children, className, alignment, isMobile = false, setIsOpen, onClick, onOpenChange }) => {
12
12
  const alignmentContext = useContext(MenuAlignmentContext);
13
- const rawAlignment = alignment || alignmentContext.alignment || "right-top";
14
- const contentAlignment = useRTLAlignment(rawAlignment);
13
+ const direction = useContext(directionContext);
14
+ const defaultAlignment = direction === "rtl" ? "left-top" : "right-top";
15
+ const contentAlignment = alignment || alignmentContext.alignment || defaultAlignment;
15
16
  const { path, onOpenBranch, closeBranch, navigatedViaKeyboardRef } = useContext(PathContext);
16
17
  const ref = useRef(null);
17
18
  const content = useMemo(() => buildMenuContent(children, isMobile, setIsOpen, className), [children, isMobile, setIsOpen, className]);
@@ -5,6 +5,7 @@ export interface IMiniTabElement {
5
5
  name: string;
6
6
  content: ReactNode;
7
7
  id: string;
8
+ dataAnalyticsId?: string;
8
9
  }
9
10
  export declare enum MiniTabsSize {
10
11
  Small = "small",
@@ -33,5 +33,5 @@ export const MiniTabs = ({ activeTabId, onTabChange, children, size = MiniTabsSi
33
33
  var _a;
34
34
  (_a = activeButtonRef.current) === null || _a === void 0 ? void 0 : _a.focus();
35
35
  }, [activeTabId]);
36
- return (_jsx("div", { className: classNames(["zen-mini-tabs", `zen-mini-tabs--${size}`, className ? className : ""]), children: tabs.length ? (_jsxs(_Fragment, { children: [_jsx("div", { className: "zen-mini-tabs__header", role: "tablist", onKeyDown: keyDownHandler, ref: tabsRef, children: tabs.map(tab => (_jsx(MiniTabsHeaderItem, { id: tab.id, isActive: activeTabId === tab.id, handleClick: handleTabItemClick, buttonRef: tab.id === activeTabId ? activeButtonRef : undefined, children: tab.name }, tab.id))) }), _jsx("div", { className: "zen-mini-tabs__content", children: tabs.map((props) => (_createElement(MiniTabsItem, Object.assign({}, props, { key: props.id, activeId: activeTabId })))) })] })) : null }));
36
+ return (_jsx("div", { className: classNames(["zen-mini-tabs", `zen-mini-tabs--${size}`, className ? className : ""]), children: tabs.length ? (_jsxs(_Fragment, { children: [_jsx("div", { className: "zen-mini-tabs__header", role: "tablist", onKeyDown: keyDownHandler, ref: tabsRef, children: tabs.map(tab => (_jsx(MiniTabsHeaderItem, { id: tab.id, isActive: activeTabId === tab.id, handleClick: handleTabItemClick, buttonRef: tab.id === activeTabId ? activeButtonRef : undefined, dataAnalyticsId: tab.dataAnalyticsId, children: tab.name }, tab.id))) }), _jsx("div", { className: "zen-mini-tabs__content", children: tabs.map((props) => (_createElement(MiniTabsItem, Object.assign({}, props, { key: props.id, activeId: activeTabId })))) })] })) : null }));
37
37
  };
@@ -6,5 +6,6 @@ export interface IMiniTabsHeaderItem extends IZenComponentProps {
6
6
  handleClick: (e: React.MouseEvent<HTMLElement>) => void;
7
7
  children: string;
8
8
  buttonRef?: RefObject<HTMLButtonElement | null>;
9
+ dataAnalyticsId?: string;
9
10
  }
10
- export declare const MiniTabsHeaderItem: ({ id, isActive, handleClick, children, buttonRef }: IMiniTabsHeaderItem) => import("react/jsx-runtime").JSX.Element;
11
+ export declare const MiniTabsHeaderItem: ({ id, isActive, handleClick, children, buttonRef, dataAnalyticsId }: IMiniTabsHeaderItem) => import("react/jsx-runtime").JSX.Element;
@@ -1,3 +1,3 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { classNames } from "../commonHelpers/classNames/classNames";
3
- export const MiniTabsHeaderItem = ({ id, isActive, handleClick, children, buttonRef }) => (_jsx("button", { id: id, className: classNames(["zen-mini-tabs__header-item", isActive ? "zen-mini-tabs__header-item--active" : "", "zen-ellipsis", "label-01"]), role: "tab", type: "button", "aria-controls": `panel-${id}`, "aria-selected": isActive ? "true" : "false", title: children, tabIndex: isActive ? 0 : -1, ref: buttonRef, onClick: handleClick, children: children }));
3
+ export const MiniTabsHeaderItem = ({ id, isActive, handleClick, children, buttonRef, dataAnalyticsId }) => (_jsx("button", { id: id, className: classNames(["zen-mini-tabs__header-item", isActive ? "zen-mini-tabs__header-item--active" : "", "zen-ellipsis", "label-01"]), role: "tab", type: "button", "aria-controls": `panel-${id}`, "aria-selected": isActive ? "true" : "false", title: children, tabIndex: isActive ? 0 : -1, ref: buttonRef, onClick: handleClick, "data-analytics-id": dataAnalyticsId, children: children }));
@@ -3,5 +3,6 @@ export interface IMiniTabsItem extends IZenComponentProps {
3
3
  id: string;
4
4
  name: string;
5
5
  activeId?: string;
6
+ dataAnalyticsId?: string;
6
7
  }
7
8
  export declare const MiniTabsItem: ({ id, children, activeId }: IMiniTabsItem) => import("react/jsx-runtime").JSX.Element;
@@ -45,7 +45,7 @@ injectString("tr", "Back", "Geri");
45
45
  injectString("zh-Hans", "Back", "\u8FD4\u56DE");
46
46
  injectString("zh-TW", "Back", "\u8FD4\u56DE");
47
47
  injectString("ro-RO", "Back", "\xCEnapoi");
48
- injectString("ar-SA", "Back", "\u0631\u062C\u0648\u0639");
48
+ injectString("ar", "Back", "\u0631\u062C\u0648\u0639");
49
49
  injectString("cs", "Close", "Zav\u0159\xEDt");
50
50
  injectString("da-DK", "Close", "Luk");
51
51
  injectString("de", "Close", "Schlie\xDFen");
@@ -72,7 +72,7 @@ injectString("tr", "Close", "Kapat");
72
72
  injectString("zh-Hans", "Close", "\u5173\u95ED");
73
73
  injectString("zh-TW", "Close", "\u95DC\u9589");
74
74
  injectString("ro-RO", "Close", "\xCEnchide");
75
- injectString("ar-SA", "Close", "\u0625\u063A\u0644\u0627\u0642");
75
+ injectString("ar", "Close", "\u0625\u063A\u0644\u0627\u0642");
76
76
  export const MobileSheet = ({
77
77
  /* eslint-enable @typescript-eslint/naming-convention */
78
78
  triggerRef,
@@ -48,7 +48,7 @@ injectString("tr", "Close", "Kapat");
48
48
  injectString("zh-Hans", "Close", "\u5173\u95ED");
49
49
  injectString("zh-TW", "Close", "\u95DC\u9589");
50
50
  injectString("ro-RO", "Close", "\xCEnchide");
51
- injectString("ar-SA", "Close", "\u0625\u063A\u0644\u0627\u0642");
51
+ injectString("ar", "Close", "\u0625\u063A\u0644\u0627\u0642");
52
52
  export const Modal = ({
53
53
  isOpen,
54
54
  children,
@@ -32,7 +32,7 @@ injectString("tr", "Save", "Kaydet");
32
32
  injectString("zh-Hans", "Save", "\u4FDD\u5B58");
33
33
  injectString("zh-TW", "Save", "\u5132\u5B58");
34
34
  injectString("ro-RO", "Save", "Salva\u021Bi");
35
- injectString("ar-SA", "Save", "\u062D\u0641\u0638");
35
+ injectString("ar", "Save", "\u062D\u0641\u0638");
36
36
  injectString("cs", "Cancel", "Zru\u0161it");
37
37
  injectString("da-DK", "Cancel", "Annuller");
38
38
  injectString("de", "Cancel", "Abbrechen");
@@ -59,7 +59,7 @@ injectString("tr", "Cancel", "\u0130ptal");
59
59
  injectString("zh-Hans", "Cancel", "\u53D6\u6D88");
60
60
  injectString("zh-TW", "Cancel", "\u53D6\u6D88");
61
61
  injectString("ro-RO", "Cancel", "Anula\u021Bi");
62
- injectString("ar-SA", "Cancel", "\u0625\u0644\u063A\u0627\u0621");
62
+ injectString("ar", "Cancel", "\u0625\u0644\u063A\u0627\u0621");
63
63
  export const NavEditFooter = ({
64
64
  className,
65
65
  handleSaveClick,
@@ -34,7 +34,7 @@ injectString("tr", "Edit Navigation", "Edit Navigation");
34
34
  injectString("zh-Hans", "Edit Navigation", "Edit Navigation");
35
35
  injectString("zh-TW", "Edit Navigation", "Edit Navigation");
36
36
  injectString("ro-RO", "Edit Navigation", "Edita\u021Bi navigarea");
37
- injectString("ar-SA", "Edit Navigation", "\u062A\u0639\u062F\u064A\u0644 \u0627\u0644\u062A\u0646\u0642\u0644");
37
+ injectString("ar", "Edit Navigation", "\u062A\u0639\u062F\u064A\u0644 \u0627\u0644\u062A\u0646\u0642\u0644");
38
38
  const NavFooterComponent = ({
39
39
  className,
40
40
  children
@@ -32,7 +32,7 @@ injectString("tr", "Configure", "Yap\u0131land\u0131r");
32
32
  injectString("zh-Hans", "Configure", "\u914D\u7F6E");
33
33
  injectString("zh-TW", "Configure", "\u914D\u7F6E");
34
34
  injectString("ro-RO", "Configure", "Configura\u021Bi");
35
- injectString("ar-SA", "Configure", "\u062A\u0643\u0648\u064A\u0646");
35
+ injectString("ar", "Configure", "\u062A\u0643\u0648\u064A\u0646");
36
36
  export const NavFooterAction = ({
37
37
  children
38
38
  }) => {
@@ -36,7 +36,7 @@ injectString("tr", "Expand Navigation", "Expand Navigation");
36
36
  injectString("zh-Hans", "Expand Navigation", "Expand Navigation");
37
37
  injectString("zh-TW", "Expand Navigation", "Expand Navigation");
38
38
  injectString("ro-RO", "Expand Navigation", "Extinde\u021Bi navigarea");
39
- injectString("ar-SA", "Expand Navigation", "\u062A\u0648\u0633\u064A\u0639 \u0627\u0644\u062A\u0646\u0642\u0644");
39
+ injectString("ar", "Expand Navigation", "\u062A\u0648\u0633\u064A\u0639 \u0627\u0644\u062A\u0646\u0642\u0644");
40
40
  injectString("cs", "Collapse Navigation", "Collapse Navigation");
41
41
  injectString("da-DK", "Collapse Navigation", "Collapse Navigation");
42
42
  injectString("de", "Collapse Navigation", "Collapse Navigation");
@@ -63,7 +63,7 @@ injectString("tr", "Collapse Navigation", "Collapse Navigation");
63
63
  injectString("zh-Hans", "Collapse Navigation", "Collapse Navigation");
64
64
  injectString("zh-TW", "Collapse Navigation", "Collapse Navigation");
65
65
  injectString("ro-RO", "Collapse Navigation", "Restr\xE2nge\u021Bi navigarea");
66
- injectString("ar-SA", "Collapse Navigation", "\u0637\u064A \u0627\u0644\u062A\u0646\u0642\u0644");
66
+ injectString("ar", "Collapse Navigation", "\u0637\u064A \u0627\u0644\u062A\u0646\u0642\u0644");
67
67
  const NavHeaderToggler = ({
68
68
  className
69
69
  }) => {
@@ -38,7 +38,7 @@ injectString("tr", "Search", "Ara");
38
38
  injectString("zh-Hans", "Search", "\u641C\u7D22");
39
39
  injectString("zh-TW", "Search", "\u641C\u5C0B");
40
40
  injectString("ro-RO", "Search", "C\u0103uta\u021Bi");
41
- injectString("ar-SA", "Search", "\u0628\u062D\u062B");
41
+ injectString("ar", "Search", "\u0628\u062D\u062B");
42
42
  injectString("cs", "Close search", "Close search");
43
43
  injectString("da-DK", "Close search", "Close search");
44
44
  injectString("de", "Close search", "Close search");
@@ -65,7 +65,7 @@ injectString("tr", "Close search", "Close search");
65
65
  injectString("zh-Hans", "Close search", "Close search");
66
66
  injectString("zh-TW", "Close search", "Close search");
67
67
  injectString("ro-RO", "Close search", "Close search");
68
- injectString("ar-SA", "Close search", "\u0625\u063A\u0644\u0627\u0642 \u0627\u0644\u0628\u062D\u062B");
68
+ injectString("ar", "Close search", "\u0625\u063A\u0644\u0627\u0642 \u0627\u0644\u0628\u062D\u062B");
69
69
  export const NavHeaderSearch = ({
70
70
  className,
71
71
  onSearch
@@ -14,7 +14,9 @@ import { classNames } from "../../commonHelpers/classNames/classNames";
14
14
  import { useRef, useState, useEffect, Children, cloneElement, createContext, useContext, useId } from "react";
15
15
  import { IconBeta } from "../../icons/iconBeta";
16
16
  import { IconChevronRight } from "../../icons/iconChevronRight";
17
+ import { IconChevronLeft } from "../../icons/iconChevronLeft";
17
18
  import { IconOpen2 } from "../../icons/iconOpen2";
19
+ import { useDirectionalIcon } from "../../utils/localization/useDirectionalIcon";
18
20
  import { Tooltip } from "../../tooltip/tooltip";
19
21
  import { ControlledMenu } from "../../menu/controlledMenu";
20
22
  import { useNavContext } from "../context/nav.context";
@@ -26,11 +28,12 @@ const defaultTooltipAlignment = "right";
26
28
  const isLinkNavItem = (item) => !!item.link;
27
29
  const NavItemContent = ({ primaryIcon, secondaryIcon, isBeta, counter, collapsed, hasSubmenu, iconClass, level = 1, children }) => {
28
30
  const primaryIconRef = useRef(null);
31
+ const ChevronIcon = useDirectionalIcon(IconChevronRight, IconChevronLeft);
29
32
  const PrimaryIconComponent = typeof primaryIcon === "function" ? primaryIcon : null;
30
33
  const SecondaryIconComponent = secondaryIcon;
31
34
  const iconSize = level > 1 ? SUBMENU_ICON_SIZE : ICON_SIZE;
32
35
  const primaryIconComponent = primaryIcon ? (_jsx("span", { ref: primaryIconRef, className: classNames(["zen-nav-item__icon", counter ? "zen-nav-item__icon--with-counter" : "", iconClass || ""]), children: PrimaryIconComponent ? _jsx(PrimaryIconComponent, { size: iconSize }) : primaryIcon })) : null;
33
- return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "zen-nav-item__content-left", children: [isBeta && !collapsed ? (_jsx("span", { className: "zen-nav-item__beta", children: _jsx(IconBeta, { size: "big" }) })) : null, primaryIconComponent, SecondaryIconComponent && !collapsed ? (_jsx("span", { className: "zen-nav-item__icon", children: _jsx(SecondaryIconComponent, { size: iconSize }) })) : null, !collapsed ? _jsx("span", { className: "zen-nav-item__title", children: children }) : null] }), !collapsed && (counter || hasSubmenu) ? (_jsxs("div", { className: "zen-nav-item__content-right", children: [counter ? _jsx("div", { className: "zen-nav-item__counter", children: counter }) : null, hasSubmenu ? _jsx(IconChevronRight, { className: "zen-nav-item__title-icon", size: iconSize }) : null] })) : null] }));
36
+ return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "zen-nav-item__content-left", children: [isBeta && !collapsed ? (_jsx("span", { className: "zen-nav-item__beta", children: _jsx(IconBeta, { size: "big" }) })) : null, primaryIconComponent, SecondaryIconComponent && !collapsed ? (_jsx("span", { className: "zen-nav-item__icon", children: _jsx(SecondaryIconComponent, { size: iconSize }) })) : null, !collapsed ? _jsx("span", { className: "zen-nav-item__title", children: children }) : null] }), !collapsed && (counter || hasSubmenu) ? (_jsxs("div", { className: "zen-nav-item__content-right", children: [counter ? _jsx("div", { className: "zen-nav-item__counter", children: counter }) : null, hasSubmenu ? _jsx(ChevronIcon, { className: "zen-nav-item__title-icon", size: iconSize }) : null] })) : null] }));
34
37
  };
35
38
  const NavItemAction = ({ actionIcon, actionIconTitle = "", onActionIconClick, collapsed, isMenuItem, level = 1 }) => {
36
39
  const ActionIconComponent = actionIcon;
@@ -36,7 +36,7 @@ injectString("tr", "More", "Di\u011Fer");
36
36
  injectString("zh-Hans", "More", "\u66F4\u591A");
37
37
  injectString("zh-TW", "More", "\u66F4\u591A");
38
38
  injectString("ro-RO", "More", "Mai multe");
39
- injectString("ar-SA", "More", "\u0627\u0644\u0645\u0632\u064A\u062F");
39
+ injectString("ar", "More", "\u0627\u0644\u0645\u0632\u064A\u062F");
40
40
  export const NavMobileBar = ({
41
41
  className,
42
42
  children,