@geotab/zenith 3.1.1-beta.6 → 3.2.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 (430) hide show
  1. package/README.md +20 -0
  2. package/dist/advancedGroupsFilter/advancedGroupsFilter.js +136 -30
  3. package/dist/advancedGroupsFilter/advancedGroupsFilterForm.js +139 -34
  4. package/dist/advancedGroupsFilter/advancedGroupsFilterFormSection.js +352 -87
  5. package/dist/advancedGroupsFilter/advancedGroupsFilterSectionTooltip.d.ts +0 -1
  6. package/dist/advancedGroupsFilter/advancedGroupsFilterSectionTooltip.js +83 -9
  7. package/dist/alertRaw/alertRaw.js +175 -54
  8. package/dist/banner/bannerMultipLine.js +131 -23
  9. package/dist/banner/bannerSingleLine.js +110 -16
  10. package/dist/betaPill/betaPill.js +111 -20
  11. package/dist/bookmark/bookmark.js +95 -28
  12. package/dist/bulkEditControl/bulkEditControl.js +167 -34
  13. package/dist/calendar/calendar.js +943 -273
  14. package/dist/calendar/calendarUtils.js +157 -85
  15. package/dist/card/card.js +268 -123
  16. package/dist/chart/accessibleChart/accessibleChartNarrative.js +648 -555
  17. package/dist/chart/accessibleChart/accessibleChartTable.js +245 -86
  18. package/dist/chart/chart.js +36 -21
  19. package/dist/chart/chartAxis/chartAxis.js +85 -7
  20. package/dist/checkboxListWithAction/checkboxListWithAction.js +224 -69
  21. package/dist/chip/chip.js +195 -91
  22. package/dist/columnsSelector/columnsSelector.js +97 -12
  23. package/dist/columnsSelector/columnsTab/columnsTab.js +59 -15
  24. package/dist/columnsSelector/columnsTabGroup/columnsTabGroup.js +81 -34
  25. package/dist/comboboxSelected/comboboxSelected.js +1 -3
  26. package/dist/dataFeed/feedExpandControl/feedExpandControl.js +25 -10
  27. package/dist/dataGrid/columns/checkboxColumn/checkboxHeaderCell.js +92 -11
  28. package/dist/dataGrid/dataGrid.js +227 -117
  29. package/dist/dataGrid/emptySearchList/emptySearchList.js +56 -9
  30. package/dist/dataGrid/entitiesListActions/actions/columnsListButton.js +51 -7
  31. package/dist/dataGrid/entitiesListActions/actions/fullscreenButton.js +64 -18
  32. package/dist/dataGrid/withFlexibleColumns/components/columnSettings.js +84 -10
  33. package/dist/dataGrid/withFlexibleColumns/components/columnSettingsSidePanel.js +48 -16
  34. package/dist/dataGrid/withSelectableRows/components/bulkActions/bulkActions.js +223 -32
  35. package/dist/dataGrid/withSelectableRows/withSelectableRows.js +286 -213
  36. package/dist/dataGrid/withSortableColumns/columns/sortableColumnWrapper.js +178 -95
  37. package/dist/dateInputInner/dateInputInner.js +791 -476
  38. package/dist/dateInputInner/dateInputInnerControlBlock.js +125 -22
  39. package/dist/dateInputRaw/dateInputRaw.js +315 -104
  40. package/dist/dateInputRaw/utils/getLabel.js +38 -7
  41. package/dist/dateRangeInner/dateRangeInner.js +172 -58
  42. package/dist/dateRangeRaw/dateRangeRaw.js +601 -239
  43. package/dist/dateRangeRaw/utils/dateRangeUtils.js +629 -241
  44. package/dist/dateSelectionWrapper/dateSelectionWrapper.js +152 -14
  45. package/dist/dialog/dialogContent.js +123 -40
  46. package/dist/dropdownRaw/dropdownHelper.d.ts +2 -2
  47. package/dist/dropdownRaw/dropdownHelper.js +9 -9
  48. package/dist/dropdownRaw/dropdownList.js +447 -78
  49. package/dist/dropdownRaw/dropdownPopup.js +218 -20
  50. package/dist/dropdownRaw/dropdownRaw.js +866 -506
  51. package/dist/dropdownRaw/dropdownSearchableTrigger.js +223 -46
  52. package/dist/dropdownRaw/stateReducer/stateAction.d.ts +5 -1
  53. package/dist/dropdownRaw/stateReducer/stateActionType.d.ts +2 -1
  54. package/dist/dropdownRaw/stateReducer/stateActionType.js +1 -0
  55. package/dist/dropdownRaw/stateReducer/stateReducer.d.ts +6 -1
  56. package/dist/dropdownRaw/stateReducer/stateReducer.js +24 -12
  57. package/dist/dropdownRaw/stateReducer/stateReducerHelper.d.ts +2 -0
  58. package/dist/dropdownRaw/stateReducer/stateReducerHelper.js +20 -1
  59. package/dist/dropdownRaw/stateReducer/stateReducerTestData.d.ts +39 -0
  60. package/dist/dropdownRaw/stateReducer/stateReducerTestData.js +74 -0
  61. package/dist/dropdownRaw/types.d.ts +1 -0
  62. package/dist/favoriteButton/favoriteButton.js +59 -10
  63. package/dist/filters/components/filtersContainer.js +151 -64
  64. package/dist/filters/components/filtersEmptySelectedList.js +30 -4
  65. package/dist/filters/components/filtersSaveModal.js +140 -42
  66. package/dist/filters/components/filtersSavedChipComponent.js +318 -108
  67. package/dist/filters/components/filtersSearchItemData.js +127 -47
  68. package/dist/filters/components/filtersSearchList.js +381 -179
  69. package/dist/filters/components/filtersSelect.js +128 -61
  70. package/dist/filters/components/filtersSelectListItem.js +125 -13
  71. package/dist/filters/components/filtersSidePanel.js +510 -178
  72. package/dist/filters/filters.js +445 -268
  73. package/dist/filtersBar/components/filtersBarPeriodPicker/getRangeOption.js +729 -272
  74. package/dist/filtersBar/components/resetComponentButton.js +45 -5
  75. package/dist/filtersBar/filtersBarActions/filtersBarActions.js +126 -15
  76. package/dist/filtersBar/filtersBarSidePanel/components/filtersBarSidePanelRange/filtersBarSidePanelRange.js +155 -49
  77. package/dist/filtersBar/filtersBarSidePanel/filtersBarSidePanel.js +360 -104
  78. package/dist/filtersBar/filtersContainer/filtersContainer.js +204 -134
  79. package/dist/formField/components/formFieldWithLabel.d.ts +2 -1
  80. package/dist/formField/components/formFieldWithLabel.js +3 -2
  81. package/dist/formField/components/formFieldWithoutLabel.d.ts +2 -1
  82. package/dist/formField/components/formFieldWithoutLabel.js +3 -3
  83. package/dist/formField/components/trailingComponent.d.ts +8 -0
  84. package/dist/formField/components/trailingComponent.js +11 -0
  85. package/dist/formField/formField.js +12 -11
  86. package/dist/formField/hooks/useError.js +100 -36
  87. package/dist/formGroup/components/reviewListToggle/reviewListToggle.js +72 -7
  88. package/dist/formGroup/hooks/useToggle.js +37 -11
  89. package/dist/formGroup/utils/getControls.js +8 -7
  90. package/dist/formLayout/hooks/useError.js +55 -15
  91. package/dist/formLayout/hooks/useFormButtons.js +128 -27
  92. package/dist/formSection/components/formSectionModal.js +1 -1
  93. package/dist/formSection/formSection.js +1 -1
  94. package/dist/formSection/hooks/useError.js +70 -22
  95. package/dist/formStepper/components/formStep.js +65 -10
  96. package/dist/formStepper/formStepper.js +129 -33
  97. package/dist/formStepperButtons/formStepperButtons.js +184 -38
  98. package/dist/groupsFilter/groupsHelper.d.ts +1 -1
  99. package/dist/groupsFilterRaw/groupsFilterAdjustmentState.js +162 -17
  100. package/dist/groupsFilterRaw/groupsFilterBox.js +137 -32
  101. package/dist/groupsFilterRaw/groupsFilterCommon.js +75 -8
  102. package/dist/groupsFilterRaw/groupsFilterCurrentlySelectedState.js +184 -25
  103. package/dist/groupsFilterRaw/groupsFilterHelper.d.ts +2 -1
  104. package/dist/groupsFilterRaw/groupsFilterHelper.js +284 -168
  105. package/dist/groupsFilterRaw/groupsFilterInitialState.js +266 -18
  106. package/dist/groupsFilterRaw/groupsFilterMenu.js +124 -9
  107. package/dist/groupsFilterRaw/groupsFilterRaw.d.ts +1 -0
  108. package/dist/groupsFilterRaw/groupsFilterRaw.js +816 -308
  109. package/dist/groupsFilterRaw/groupsFilterTestData.d.ts +155 -2
  110. package/dist/groupsFilterRaw/groupsFilterTestData.js +153 -58
  111. package/dist/groupsFilterRaw/groupsFilterTrigger.js +139 -35
  112. package/dist/groupsFilterRaw/groupsHelper.js +739 -208
  113. package/dist/groupsFilterRaw/stateReducer/stateReducerHelper.js +3 -1
  114. package/dist/groupsFilterRaw/types.d.ts +1 -0
  115. package/dist/header/components/collapsedItemsControl/collapsedItemsControl.js +107 -52
  116. package/dist/header/components/mobileFilterControl/mobileFilterControl.js +62 -9
  117. package/dist/header/components/mobileSearchControl/mobileSearchControl.js +119 -14
  118. package/dist/header/headerBack.js +64 -20
  119. package/dist/index.css +110 -71
  120. package/dist/index.d.ts +1 -0
  121. package/dist/index.js +4 -1
  122. package/dist/list/itemData/itemDataInternal.js +216 -51
  123. package/dist/list/listItem/listItem.js +168 -55
  124. package/dist/menu/components/menuErrorItem.js +33 -5
  125. package/dist/mobileSheet/mobileSheet.js +195 -69
  126. package/dist/modal/modal.js +300 -142
  127. package/dist/nav/nav.js +1 -1
  128. package/dist/nav/navFooter/navFooter.js +82 -39
  129. package/dist/nav/navFooter/navFooterAction/navFooterAction.js +52 -13
  130. package/dist/nav/navHeader/navHeader.js +86 -36
  131. package/dist/nav/navHeader/navHeaderSearch/navHeaderSearch.js +88 -29
  132. package/dist/nav/navItem/navItem.d.ts +3 -3
  133. package/dist/nav/navItem/navItem.js +35 -33
  134. package/dist/nav/navMobileBar/navMobileBar.js +67 -21
  135. package/dist/notification/notification.js +124 -21
  136. package/dist/pagination/paginationArrow.js +81 -11
  137. package/dist/pagination/paginationText/paginationText.js +45 -11
  138. package/dist/pill/components/pillNonActionable/pillNonActionable.js +93 -24
  139. package/dist/pillBox/components/pillBoxItem.js +52 -9
  140. package/dist/pillBox/pillBox.js +121 -20
  141. package/dist/pillExpandable/pillExpandable.js +333 -139
  142. package/dist/rangeRaw/rangeRaw.js +486 -141
  143. package/dist/rangeRaw/utils/rangeHelper.js +209 -39
  144. package/dist/searchInputRaw/searchInputRaw.js +180 -65
  145. package/dist/skeleton/skeleton.js +51 -6
  146. package/dist/sortControl/sortControl.js +152 -42
  147. package/dist/stepperRaw/stepperRaw.js +116 -42
  148. package/dist/summary/summary.js +94 -8
  149. package/dist/table/actions/actionsMenu.js +171 -78
  150. package/dist/table/flexible/columnSettings.js +80 -10
  151. package/dist/table/flexible/columnsList.js +110 -43
  152. package/dist/table/flexible/columnsPopup.js +77 -20
  153. package/dist/table/nested/useNestedRows.js +167 -77
  154. package/dist/table/selectable/selectableHeader.js +180 -41
  155. package/dist/table/selectable/useSelectableRows.js +270 -191
  156. package/dist/table/sortable/sortableHeader.js +153 -75
  157. package/dist/tabs/tabs.js +227 -118
  158. package/dist/timePickerRaw/timePickerRaw.js +278 -58
  159. package/dist/toastRaw/toastRaw.js +138 -32
  160. package/dist/toggleButton/toggleButton.d.ts +0 -1
  161. package/dist/toggleButtonRaw/toggleButtonRaw.d.ts +1 -0
  162. package/dist/toggleButtonRaw/toggleButtonRaw.js +146 -40
  163. package/dist/utils/formatDate.js +1001 -117
  164. package/{esm/utils/localization/translations/cs-json.js → dist/utils/localization/translations/cs.json} +11 -12
  165. package/{esm/utils/localization/translations/da-DK-json.js → dist/utils/localization/translations/da-DK.json} +31 -23
  166. package/{esm/utils/localization/translations/de-json.js → dist/utils/localization/translations/de.json} +12 -13
  167. package/dist/utils/localization/translations/en.json +308 -0
  168. package/{esm/utils/localization/translations/es-json.js → dist/utils/localization/translations/es.json} +11 -12
  169. package/{esm/utils/localization/translations/fi-FI-json.js → dist/utils/localization/translations/fi-FI.json} +31 -23
  170. package/{esm/utils/localization/translations/fr-FR-json.js → dist/utils/localization/translations/fr-FR.json} +12 -12
  171. package/{esm/utils/localization/translations/fr-json.js → dist/utils/localization/translations/fr.json} +11 -12
  172. package/{esm/utils/localization/translations/hu-HU-json.js → dist/utils/localization/translations/hu-HU.json} +31 -23
  173. package/{esm/utils/localization/translations/id-json.js → dist/utils/localization/translations/id.json} +11 -13
  174. package/{esm/utils/localization/translations/it-json.js → dist/utils/localization/translations/it.json} +11 -12
  175. package/{esm/utils/localization/translations/ja-json.js → dist/utils/localization/translations/ja.json} +11 -12
  176. package/{esm/utils/localization/translations/ko-KR-json.js → dist/utils/localization/translations/ko-KR.json} +24 -23
  177. package/{esm/utils/localization/translations/ms-json.js → dist/utils/localization/translations/ms.json} +11 -12
  178. package/{esm/utils/localization/translations/nb-NO-json.js → dist/utils/localization/translations/nb-NO.json} +31 -23
  179. package/{esm/utils/localization/translations/nl-json.js → dist/utils/localization/translations/nl.json} +11 -12
  180. package/{esm/utils/localization/translations/pl-json.js → dist/utils/localization/translations/pl.json} +11 -12
  181. package/{esm/utils/localization/translations/pt-BR-json.js → dist/utils/localization/translations/pt-BR.json} +11 -12
  182. package/{esm/utils/localization/translations/sk-SK-json.js → dist/utils/localization/translations/sk-SK.json} +31 -23
  183. package/{esm/utils/localization/translations/sv-json.js → dist/utils/localization/translations/sv.json} +11 -12
  184. package/{esm/utils/localization/translations/th-json.js → dist/utils/localization/translations/th.json} +11 -12
  185. package/{esm/utils/localization/translations/tr-json.js → dist/utils/localization/translations/tr.json} +11 -12
  186. package/{esm/utils/localization/translations/zh-Hans-json.js → dist/utils/localization/translations/zh-Hans.json} +11 -12
  187. package/{esm/utils/localization/translations/zh-TW-json.js → dist/utils/localization/translations/zh-TW.json} +11 -23
  188. package/dist/utils/localization/translationsDictionary.d.ts +2 -0
  189. package/dist/utils/localization/translationsDictionary.js +63 -0
  190. package/dist/utils/localization/useLanguage.js +2 -74
  191. package/esm/advancedGroupsFilter/advancedGroupsFilter.js +130 -29
  192. package/esm/advancedGroupsFilter/advancedGroupsFilterForm.js +133 -33
  193. package/esm/advancedGroupsFilter/advancedGroupsFilterFormSection.js +317 -65
  194. package/esm/advancedGroupsFilter/advancedGroupsFilterSectionTooltip.d.ts +0 -1
  195. package/esm/advancedGroupsFilter/advancedGroupsFilterSectionTooltip.js +77 -8
  196. package/esm/alertRaw/alertRaw.js +165 -51
  197. package/esm/banner/bannerMultipLine.js +121 -20
  198. package/esm/banner/bannerSingleLine.js +100 -13
  199. package/esm/betaPill/betaPill.js +105 -19
  200. package/esm/bookmark/bookmark.js +89 -27
  201. package/esm/bulkEditControl/bulkEditControl.js +161 -33
  202. package/esm/calendar/calendar.js +937 -272
  203. package/esm/calendar/calendarUtils.js +151 -84
  204. package/esm/card/card.js +233 -101
  205. package/esm/chart/accessibleChart/accessibleChartNarrative.js +642 -554
  206. package/esm/chart/accessibleChart/accessibleChartTable.js +239 -85
  207. package/esm/chart/chart.js +30 -20
  208. package/esm/chart/chartAxis/chartAxis.js +79 -6
  209. package/esm/checkboxListWithAction/checkboxListWithAction.js +218 -68
  210. package/esm/chip/chip.js +189 -90
  211. package/esm/columnsSelector/columnsSelector.js +91 -11
  212. package/esm/columnsSelector/columnsTab/columnsTab.js +53 -14
  213. package/esm/columnsSelector/columnsTabGroup/columnsTabGroup.js +75 -33
  214. package/esm/comboboxSelected/comboboxSelected.js +1 -3
  215. package/esm/dataFeed/feedExpandControl/feedExpandControl.js +21 -9
  216. package/esm/dataGrid/columns/checkboxColumn/checkboxHeaderCell.js +86 -10
  217. package/esm/dataGrid/dataGrid.js +221 -116
  218. package/esm/dataGrid/emptySearchList/emptySearchList.js +50 -8
  219. package/esm/dataGrid/entitiesListActions/actions/columnsListButton.js +45 -6
  220. package/esm/dataGrid/entitiesListActions/actions/fullscreenButton.js +58 -17
  221. package/esm/dataGrid/withFlexibleColumns/components/columnSettings.js +78 -9
  222. package/esm/dataGrid/withFlexibleColumns/components/columnSettingsSidePanel.js +44 -15
  223. package/esm/dataGrid/withSelectableRows/components/bulkActions/bulkActions.js +217 -31
  224. package/esm/dataGrid/withSelectableRows/withSelectableRows.js +280 -212
  225. package/esm/dataGrid/withSortableColumns/columns/sortableColumnWrapper.js +172 -94
  226. package/esm/dateInputInner/dateInputInner.js +785 -475
  227. package/esm/dateInputInner/dateInputInnerControlBlock.js +119 -21
  228. package/esm/dateInputRaw/dateInputRaw.js +309 -103
  229. package/esm/dateInputRaw/utils/getLabel.js +32 -6
  230. package/esm/dateRangeInner/dateRangeInner.js +166 -57
  231. package/esm/dateRangeRaw/dateRangeRaw.js +595 -238
  232. package/esm/dateRangeRaw/utils/dateRangeUtils.js +622 -239
  233. package/esm/dateSelectionWrapper/dateSelectionWrapper.js +146 -13
  234. package/esm/dialog/dialogContent.js +117 -39
  235. package/esm/dropdownRaw/dropdownHelper.d.ts +2 -2
  236. package/esm/dropdownRaw/dropdownHelper.js +10 -10
  237. package/esm/dropdownRaw/dropdownList.js +412 -56
  238. package/esm/dropdownRaw/dropdownPopup.js +212 -19
  239. package/esm/dropdownRaw/dropdownRaw.js +862 -507
  240. package/esm/dropdownRaw/dropdownSearchableTrigger.js +217 -45
  241. package/esm/dropdownRaw/stateReducer/stateAction.d.ts +5 -1
  242. package/esm/dropdownRaw/stateReducer/stateActionType.d.ts +2 -1
  243. package/esm/dropdownRaw/stateReducer/stateActionType.js +1 -0
  244. package/esm/dropdownRaw/stateReducer/stateReducer.d.ts +6 -1
  245. package/esm/dropdownRaw/stateReducer/stateReducer.js +24 -12
  246. package/esm/dropdownRaw/stateReducer/stateReducerHelper.d.ts +2 -0
  247. package/esm/dropdownRaw/stateReducer/stateReducerHelper.js +18 -0
  248. package/esm/dropdownRaw/stateReducer/stateReducerTestData.d.ts +39 -0
  249. package/esm/dropdownRaw/stateReducer/stateReducerTestData.js +71 -0
  250. package/esm/dropdownRaw/types.d.ts +1 -0
  251. package/esm/favoriteButton/favoriteButton.js +53 -9
  252. package/esm/filters/components/filtersContainer.js +141 -61
  253. package/esm/filters/components/filtersEmptySelectedList.js +24 -3
  254. package/esm/filters/components/filtersSaveModal.js +134 -41
  255. package/esm/filters/components/filtersSavedChipComponent.js +312 -107
  256. package/esm/filters/components/filtersSearchItemData.js +121 -46
  257. package/esm/filters/components/filtersSearchList.js +375 -178
  258. package/esm/filters/components/filtersSelect.js +122 -60
  259. package/esm/filters/components/filtersSelectListItem.js +119 -12
  260. package/esm/filters/components/filtersSidePanel.js +504 -177
  261. package/esm/filters/filters.js +435 -265
  262. package/esm/filtersBar/components/filtersBarPeriodPicker/getRangeOption.js +722 -270
  263. package/esm/filtersBar/components/resetComponentButton.js +39 -4
  264. package/esm/filtersBar/filtersBarActions/filtersBarActions.js +120 -14
  265. package/esm/filtersBar/filtersBarSidePanel/components/filtersBarSidePanelRange/filtersBarSidePanelRange.js +149 -48
  266. package/esm/filtersBar/filtersBarSidePanel/filtersBarSidePanel.js +354 -103
  267. package/esm/filtersBar/filtersContainer/filtersContainer.js +198 -133
  268. package/esm/formField/components/formFieldWithLabel.d.ts +2 -1
  269. package/esm/formField/components/formFieldWithLabel.js +3 -2
  270. package/esm/formField/components/formFieldWithoutLabel.d.ts +2 -1
  271. package/esm/formField/components/formFieldWithoutLabel.js +3 -3
  272. package/esm/formField/components/trailingComponent.d.ts +8 -0
  273. package/esm/formField/components/trailingComponent.js +7 -0
  274. package/esm/formField/formField.js +12 -11
  275. package/esm/formField/hooks/useError.js +94 -35
  276. package/esm/formGroup/components/reviewListToggle/reviewListToggle.js +66 -6
  277. package/esm/formGroup/hooks/useToggle.js +31 -10
  278. package/esm/formGroup/utils/getControls.js +8 -7
  279. package/esm/formLayout/hooks/useError.js +49 -14
  280. package/esm/formLayout/hooks/useFormButtons.js +122 -26
  281. package/esm/formSection/components/formSectionModal.js +1 -1
  282. package/esm/formSection/formSection.js +1 -1
  283. package/esm/formSection/hooks/useError.js +64 -21
  284. package/esm/formStepper/components/formStep.js +59 -9
  285. package/esm/formStepper/formStepper.js +123 -32
  286. package/esm/formStepperButtons/formStepperButtons.js +178 -37
  287. package/esm/groupsFilter/groupsHelper.d.ts +1 -1
  288. package/esm/groupsFilterRaw/groupsFilterAdjustmentState.js +152 -14
  289. package/esm/groupsFilterRaw/groupsFilterBox.js +131 -31
  290. package/esm/groupsFilterRaw/groupsFilterCommon.js +69 -7
  291. package/esm/groupsFilterRaw/groupsFilterCurrentlySelectedState.js +178 -24
  292. package/esm/groupsFilterRaw/groupsFilterHelper.d.ts +2 -1
  293. package/esm/groupsFilterRaw/groupsFilterHelper.js +279 -168
  294. package/esm/groupsFilterRaw/groupsFilterInitialState.js +260 -17
  295. package/esm/groupsFilterRaw/groupsFilterMenu.js +118 -8
  296. package/esm/groupsFilterRaw/groupsFilterRaw.d.ts +1 -0
  297. package/esm/groupsFilterRaw/groupsFilterRaw.js +811 -308
  298. package/esm/groupsFilterRaw/groupsFilterTestData.d.ts +155 -2
  299. package/esm/groupsFilterRaw/groupsFilterTestData.js +152 -57
  300. package/esm/groupsFilterRaw/groupsFilterTrigger.js +133 -34
  301. package/esm/groupsFilterRaw/groupsHelper.js +733 -207
  302. package/esm/groupsFilterRaw/stateReducer/stateReducerHelper.js +3 -1
  303. package/esm/groupsFilterRaw/types.d.ts +1 -0
  304. package/esm/header/components/collapsedItemsControl/collapsedItemsControl.js +101 -51
  305. package/esm/header/components/mobileFilterControl/mobileFilterControl.js +56 -8
  306. package/esm/header/components/mobileSearchControl/mobileSearchControl.js +113 -13
  307. package/esm/header/headerBack.js +58 -19
  308. package/esm/index.d.ts +1 -0
  309. package/esm/index.js +1 -0
  310. package/esm/list/itemData/itemDataInternal.js +210 -50
  311. package/esm/list/listItem/listItem.js +162 -54
  312. package/esm/menu/components/menuErrorItem.js +27 -4
  313. package/esm/mobileSheet/mobileSheet.js +189 -68
  314. package/esm/modal/modal.js +265 -120
  315. package/esm/nav/nav.js +1 -1
  316. package/esm/nav/navFooter/navFooter.js +76 -38
  317. package/esm/nav/navFooter/navFooterAction/navFooterAction.js +46 -12
  318. package/esm/nav/navHeader/navHeader.js +80 -35
  319. package/esm/nav/navHeader/navHeaderSearch/navHeaderSearch.js +82 -28
  320. package/esm/nav/navItem/navItem.d.ts +3 -3
  321. package/esm/nav/navItem/navItem.js +35 -33
  322. package/esm/nav/navMobileBar/navMobileBar.js +61 -20
  323. package/esm/notification/notification.js +114 -18
  324. package/esm/pagination/paginationArrow.js +75 -10
  325. package/esm/pagination/paginationText/paginationText.js +39 -10
  326. package/esm/pill/components/pillNonActionable/pillNonActionable.js +87 -23
  327. package/esm/pillBox/components/pillBoxItem.js +46 -8
  328. package/esm/pillBox/pillBox.js +115 -19
  329. package/esm/pillExpandable/pillExpandable.js +327 -138
  330. package/esm/rangeRaw/rangeRaw.js +480 -140
  331. package/esm/rangeRaw/utils/rangeHelper.js +203 -38
  332. package/esm/searchInputRaw/searchInputRaw.js +145 -43
  333. package/esm/skeleton/skeleton.js +45 -5
  334. package/esm/sortControl/sortControl.js +146 -41
  335. package/esm/stepperRaw/stepperRaw.js +112 -41
  336. package/esm/storybookHelpers/dataGridWithDifferentCellOptions/components/EntitiesListAction.js +178 -19
  337. package/esm/summary/summary.js +88 -7
  338. package/esm/table/actions/actionsMenu.js +165 -77
  339. package/esm/table/flexible/columnSettings.js +74 -9
  340. package/esm/table/flexible/columnsList.js +104 -42
  341. package/esm/table/flexible/columnsPopup.js +71 -19
  342. package/esm/table/nested/useNestedRows.js +161 -76
  343. package/esm/table/selectable/selectableHeader.js +174 -40
  344. package/esm/table/selectable/useSelectableRows.js +264 -190
  345. package/esm/table/sortable/sortableHeader.js +147 -74
  346. package/esm/tabs/tabs.js +221 -117
  347. package/esm/timePickerRaw/timePickerRaw.js +272 -57
  348. package/esm/toastRaw/toastRaw.js +132 -31
  349. package/esm/toggleButton/toggleButton.d.ts +0 -1
  350. package/esm/toggleButtonRaw/toggleButtonRaw.d.ts +1 -0
  351. package/esm/toggleButtonRaw/toggleButtonRaw.js +111 -18
  352. package/esm/utils/formatDate.js +995 -116
  353. package/{dist/utils/localization/translations/cs-json.js → esm/utils/localization/translations/cs.json} +11 -15
  354. package/{dist/utils/localization/translations/da-DK-json.js → esm/utils/localization/translations/da-DK.json} +31 -26
  355. package/{dist/utils/localization/translations/de-json.js → esm/utils/localization/translations/de.json} +12 -16
  356. package/esm/utils/localization/translations/en.json +308 -0
  357. package/{dist/utils/localization/translations/es-json.js → esm/utils/localization/translations/es.json} +11 -15
  358. package/{dist/utils/localization/translations/fi-FI-json.js → esm/utils/localization/translations/fi-FI.json} +31 -26
  359. package/{dist/utils/localization/translations/fr-FR-json.js → esm/utils/localization/translations/fr-FR.json} +12 -15
  360. package/{dist/utils/localization/translations/fr-json.js → esm/utils/localization/translations/fr.json} +11 -15
  361. package/{dist/utils/localization/translations/hu-HU-json.js → esm/utils/localization/translations/hu-HU.json} +31 -26
  362. package/{dist/utils/localization/translations/id-json.js → esm/utils/localization/translations/id.json} +11 -16
  363. package/{dist/utils/localization/translations/it-json.js → esm/utils/localization/translations/it.json} +11 -15
  364. package/{dist/utils/localization/translations/ja-json.js → esm/utils/localization/translations/ja.json} +11 -15
  365. package/{dist/utils/localization/translations/ko-KR-json.js → esm/utils/localization/translations/ko-KR.json} +24 -26
  366. package/{dist/utils/localization/translations/ms-json.js → esm/utils/localization/translations/ms.json} +11 -15
  367. package/{dist/utils/localization/translations/nb-NO-json.js → esm/utils/localization/translations/nb-NO.json} +31 -26
  368. package/{dist/utils/localization/translations/nl-json.js → esm/utils/localization/translations/nl.json} +11 -15
  369. package/{dist/utils/localization/translations/pl-json.js → esm/utils/localization/translations/pl.json} +11 -15
  370. package/{dist/utils/localization/translations/pt-BR-json.js → esm/utils/localization/translations/pt-BR.json} +11 -15
  371. package/{dist/utils/localization/translations/sk-SK-json.js → esm/utils/localization/translations/sk-SK.json} +31 -26
  372. package/{dist/utils/localization/translations/sv-json.js → esm/utils/localization/translations/sv.json} +11 -15
  373. package/{dist/utils/localization/translations/th-json.js → esm/utils/localization/translations/th.json} +11 -15
  374. package/{dist/utils/localization/translations/tr-json.js → esm/utils/localization/translations/tr.json} +11 -15
  375. package/{dist/utils/localization/translations/zh-Hans-json.js → esm/utils/localization/translations/zh-Hans.json} +11 -15
  376. package/{dist/utils/localization/translations/zh-TW-json.js → esm/utils/localization/translations/zh-TW.json} +11 -26
  377. package/esm/utils/localization/translationsDictionary.d.ts +2 -0
  378. package/esm/utils/localization/translationsDictionary.js +59 -0
  379. package/esm/utils/localization/useLanguage.js +1 -50
  380. package/package.json +17 -10
  381. package/dist/utils/localization/translations/cs-json.d.ts +0 -251
  382. package/dist/utils/localization/translations/da-DK-json.d.ts +0 -252
  383. package/dist/utils/localization/translations/de-json.d.ts +0 -251
  384. package/dist/utils/localization/translations/en-json.d.ts +0 -314
  385. package/dist/utils/localization/translations/en-json.js +0 -317
  386. package/dist/utils/localization/translations/es-json.d.ts +0 -251
  387. package/dist/utils/localization/translations/fi-FI-json.d.ts +0 -252
  388. package/dist/utils/localization/translations/fr-FR-json.d.ts +0 -250
  389. package/dist/utils/localization/translations/fr-json.d.ts +0 -251
  390. package/dist/utils/localization/translations/hu-HU-json.d.ts +0 -252
  391. package/dist/utils/localization/translations/id-json.d.ts +0 -252
  392. package/dist/utils/localization/translations/it-json.d.ts +0 -251
  393. package/dist/utils/localization/translations/ja-json.d.ts +0 -251
  394. package/dist/utils/localization/translations/ko-KR-json.d.ts +0 -258
  395. package/dist/utils/localization/translations/ms-json.d.ts +0 -251
  396. package/dist/utils/localization/translations/nb-NO-json.d.ts +0 -252
  397. package/dist/utils/localization/translations/nl-json.d.ts +0 -251
  398. package/dist/utils/localization/translations/pl-json.d.ts +0 -251
  399. package/dist/utils/localization/translations/pt-BR-json.d.ts +0 -251
  400. package/dist/utils/localization/translations/sk-SK-json.d.ts +0 -251
  401. package/dist/utils/localization/translations/sv-json.d.ts +0 -251
  402. package/dist/utils/localization/translations/th-json.d.ts +0 -251
  403. package/dist/utils/localization/translations/tr-json.d.ts +0 -251
  404. package/dist/utils/localization/translations/zh-Hans-json.d.ts +0 -251
  405. package/dist/utils/localization/translations/zh-TW-json.d.ts +0 -271
  406. package/esm/utils/localization/translations/cs-json.d.ts +0 -251
  407. package/esm/utils/localization/translations/da-DK-json.d.ts +0 -252
  408. package/esm/utils/localization/translations/de-json.d.ts +0 -251
  409. package/esm/utils/localization/translations/en-json.d.ts +0 -314
  410. package/esm/utils/localization/translations/en-json.js +0 -314
  411. package/esm/utils/localization/translations/es-json.d.ts +0 -251
  412. package/esm/utils/localization/translations/fi-FI-json.d.ts +0 -252
  413. package/esm/utils/localization/translations/fr-FR-json.d.ts +0 -250
  414. package/esm/utils/localization/translations/fr-json.d.ts +0 -251
  415. package/esm/utils/localization/translations/hu-HU-json.d.ts +0 -252
  416. package/esm/utils/localization/translations/id-json.d.ts +0 -252
  417. package/esm/utils/localization/translations/it-json.d.ts +0 -251
  418. package/esm/utils/localization/translations/ja-json.d.ts +0 -251
  419. package/esm/utils/localization/translations/ko-KR-json.d.ts +0 -258
  420. package/esm/utils/localization/translations/ms-json.d.ts +0 -251
  421. package/esm/utils/localization/translations/nb-NO-json.d.ts +0 -252
  422. package/esm/utils/localization/translations/nl-json.d.ts +0 -251
  423. package/esm/utils/localization/translations/pl-json.d.ts +0 -251
  424. package/esm/utils/localization/translations/pt-BR-json.d.ts +0 -251
  425. package/esm/utils/localization/translations/sk-SK-json.d.ts +0 -251
  426. package/esm/utils/localization/translations/sv-json.d.ts +0 -251
  427. package/esm/utils/localization/translations/th-json.d.ts +0 -251
  428. package/esm/utils/localization/translations/tr-json.d.ts +0 -251
  429. package/esm/utils/localization/translations/zh-Hans-json.d.ts +0 -251
  430. package/esm/utils/localization/translations/zh-TW-json.d.ts +0 -271
@@ -1,3 +1,4 @@
1
+ import { injectString } from "../../utils/localization/translationsDictionary";
1
2
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
3
  /* eslint-disable @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-argument */
3
4
  import { Children, cloneElement, Fragment, useCallback, useContext, useEffect, useMemo } from "react";
@@ -20,110 +21,360 @@ import { useUniqueId } from "../../commonHelpers/useUniqueId";
20
21
  import { useBodyScroll } from "../../utils/useBodyScroll";
21
22
  import { FooterButtons } from "../../footerButtons/footerButtons";
22
23
  import { Pill } from "../../pill/pill";
23
- const getChangeHandlers = (children) => {
24
- const handlers = {};
25
- Children.map(children, (child) => {
26
- handlers[child.props.id] = child.props.onChange;
27
- });
28
- return handlers;
24
+ injectString("cs", "Reset All", "Obnovit v\u0161e");
25
+ injectString("da-DK", "Reset All", "Nulstil alle");
26
+ injectString("de", "Reset All", "Alles zur\xFCcksetzen");
27
+ injectString("en", "Reset All", "Reset all");
28
+ injectString("es", "Reset All", "Restablecer todo");
29
+ injectString("fi-FI", "Reset All", "Palauta kaikki");
30
+ injectString("fr", "Reset All", "R\xE9initialiser tout");
31
+ injectString("fr-FR", "Reset All", "R\xE9initialiser tout");
32
+ injectString("hu-HU", "Reset All", "\xC1ll\xEDtsd vissza mindet.");
33
+ injectString("id", "Reset All", "Atur ulang semua");
34
+ injectString("it", "Reset All", "Ripristinare tutto");
35
+ injectString("ja", "Reset All", "\u3059\u3079\u3066\u30EA\u30BB\u30C3\u30C8");
36
+ injectString("ko-KR", "Reset All", "\uC804\uCCB4 \uC7AC\uC124\uC815");
37
+ injectString("ms", "Reset All", "Tetapkan semula semua");
38
+ injectString("nb-NO", "Reset All", "Tilbakestill alt");
39
+ injectString("nl", "Reset All", "Alles resetten");
40
+ injectString("pl", "Reset All", "Resetuj wszystko");
41
+ injectString("pt-BR", "Reset All", "Redefinir tudo");
42
+ injectString("sk-SK", "Reset All", "Vynulova\u0165 v\u0161etko");
43
+ injectString("sv", "Reset All", "\xC5terst\xE4ll alla");
44
+ injectString("th", "Reset All", "\u0E23\u0E35\u0E40\u0E0B\u0E47\u0E15\u0E17\u0E31\u0E49\u0E07\u0E2B\u0E21\u0E14");
45
+ injectString("tr", "Reset All", "T\xFCm\xFCn\xFC s\u0131f\u0131rla");
46
+ injectString("zh-Hans", "Reset All", "\u5168\u90E8\u91CD\u7F6E");
47
+ injectString("zh-TW", "Reset All", "\u5168\u90E8\u91CD\u8A2D");
48
+ injectString("cs", "Cancel", "Zru\u0161it");
49
+ injectString("da-DK", "Cancel", "Annuller");
50
+ injectString("de", "Cancel", "Abbrechen");
51
+ injectString("en", "Cancel", "Cancel");
52
+ injectString("es", "Cancel", "Cancelar");
53
+ injectString("fi-FI", "Cancel", "Peruuta");
54
+ injectString("fr", "Cancel", "Annuler");
55
+ injectString("fr-FR", "Cancel", "Annuler");
56
+ injectString("hu-HU", "Cancel", "M\xE9gse");
57
+ injectString("id", "Cancel", "Batalkan");
58
+ injectString("it", "Cancel", "Annullare");
59
+ injectString("ja", "Cancel", "\u30AD\u30E3\u30F3\u30BB\u30EB");
60
+ injectString("ko-KR", "Cancel", "\uCDE8\uC18C");
61
+ injectString("ms", "Cancel", "Batal");
62
+ injectString("nb-NO", "Cancel", "Avbryt");
63
+ injectString("nl", "Cancel", "Annuleren");
64
+ injectString("pl", "Cancel", "Anuluj");
65
+ injectString("pt-BR", "Cancel", "Cancelar");
66
+ injectString("sk-SK", "Cancel", "Zru\u0161.");
67
+ injectString("sv", "Cancel", "Avbryt");
68
+ injectString("th", "Cancel", "\u0E22\u0E01\u0E40\u0E25\u0E34\u0E01");
69
+ injectString("tr", "Cancel", "\u0130ptal");
70
+ injectString("zh-Hans", "Cancel", "\u53D6\u6D88");
71
+ injectString("zh-TW", "Cancel", "\u53D6\u6D88");
72
+ injectString("cs", "Apply", "Pou\u017E\xEDt");
73
+ injectString("da-DK", "Apply", "Anvend");
74
+ injectString("de", "Apply", "Anwenden");
75
+ injectString("en", "Apply", "Apply");
76
+ injectString("es", "Apply", "Aplicar");
77
+ injectString("fi-FI", "Apply", "K\xE4yt\xE4");
78
+ injectString("fr", "Apply", "Appliquer");
79
+ injectString("fr-FR", "Apply", "Appliquer");
80
+ injectString("hu-HU", "Apply", "Alkalmazd.");
81
+ injectString("id", "Apply", "Terapkan");
82
+ injectString("it", "Apply", "Applicare");
83
+ injectString("ja", "Apply", "\u9069\u7528");
84
+ injectString("ko-KR", "Apply", "\uC801\uC6A9");
85
+ injectString("ms", "Apply", "Gunakan");
86
+ injectString("nb-NO", "Apply", "Bruk");
87
+ injectString("nl", "Apply", "Toepassen");
88
+ injectString("pl", "Apply", "Zastosuj");
89
+ injectString("pt-BR", "Apply", "Aplicar");
90
+ injectString("sk-SK", "Apply", "Pou\u017Ei");
91
+ injectString("sv", "Apply", "Ans\xF6k");
92
+ injectString("th", "Apply", "\u0E43\u0E0A\u0E49");
93
+ injectString("tr", "Apply", "Uygula");
94
+ injectString("zh-Hans", "Apply", "\u5E94\u7528");
95
+ injectString("zh-TW", "Apply", "\u5957\u7528");
96
+ injectString("cs", "All Filters", "V\u0161echny filtry");
97
+ injectString("da-DK", "All Filters", "Alle filtre");
98
+ injectString("de", "All Filters", "Alle Filter");
99
+ injectString("en", "All Filters", "All Filters");
100
+ injectString("es", "All Filters", "Todos los filtros");
101
+ injectString("fi-FI", "All Filters", "Kaikki suodattimet");
102
+ injectString("fr", "All Filters", "Tous les filtres");
103
+ injectString("fr-FR", "All Filters", "Tous les filtres");
104
+ injectString("hu-HU", "All Filters", "Minden sz\u0171r\u0151");
105
+ injectString("id", "All Filters", "Semua Filter");
106
+ injectString("it", "All Filters", "Tutti i filtri");
107
+ injectString("ja", "All Filters", "\u3059\u3079\u3066\u306E\u30D5\u30A3\u30EB\u30BF\u30FC");
108
+ injectString("ko-KR", "All Filters", "\uBAA8\uB4E0 \uD544\uD130");
109
+ injectString("ms", "All Filters", "Semua Penyaring");
110
+ injectString("nb-NO", "All Filters", "Alle filtre");
111
+ injectString("nl", "All Filters", "Alle filters");
112
+ injectString("pl", "All Filters", "Wszystkie filtry");
113
+ injectString("pt-BR", "All Filters", "Todos os filtros");
114
+ injectString("sk-SK", "All Filters", "V\u0161etky filtre");
115
+ injectString("sv", "All Filters", "Alla filter");
116
+ injectString("th", "All Filters", "\u0E15\u0E31\u0E27\u0E01\u0E23\u0E2D\u0E07\u0E17\u0E31\u0E49\u0E07\u0E2B\u0E21\u0E14");
117
+ injectString("tr", "All Filters", "T\xFCm Filtreler");
118
+ injectString("zh-Hans", "All Filters", "\u6240\u6709\u7B5B\u9009\u5668");
119
+ injectString("zh-TW", "All Filters", "\u6240\u6709\u7BE9\u9078\u5668");
120
+ injectString("cs", "Close", "Zav\u0159\xEDt");
121
+ injectString("da-DK", "Close", "Luk");
122
+ injectString("de", "Close", "Schlie\xDFen");
123
+ injectString("en", "Close", "Close");
124
+ injectString("es", "Close", "Cerrar");
125
+ injectString("fi-FI", "Close", "Sulje");
126
+ injectString("fr", "Close", "Fermer");
127
+ injectString("fr-FR", "Close", "Fermer");
128
+ injectString("hu-HU", "Close", "Z\xE1rd be.");
129
+ injectString("id", "Close", "Tutup");
130
+ injectString("it", "Close", "Chiudere");
131
+ injectString("ja", "Close", "\u9589\u3058\u308B");
132
+ injectString("ko-KR", "Close", "\uB2EB\uAE30");
133
+ injectString("ms", "Close", "Tutup");
134
+ injectString("nb-NO", "Close", "Lukk");
135
+ injectString("nl", "Close", "Sluiten");
136
+ injectString("pl", "Close", "Zamknij");
137
+ injectString("pt-BR", "Close", "Fechar");
138
+ injectString("sk-SK", "Close", "Zatvor");
139
+ injectString("sv", "Close", "St\xE4ng");
140
+ injectString("th", "Close", "\u0E1B\u0E34\u0E14");
141
+ injectString("tr", "Close", "Kapat");
142
+ injectString("zh-Hans", "Close", "\u5173\u95ED");
143
+ injectString("zh-TW", "Close", "\u95DC\u9589");
144
+ const getChangeHandlers = children => {
145
+ const handlers = {};
146
+ Children.map(children, child => {
147
+ handlers[child.props.id] = child.props.onChange;
148
+ });
149
+ return handlers;
29
150
  };
30
- export const FiltersBarSidePanel = ({ isOpen, className, children, triggerRef, parentElement, pillName, pillIcon, pillType = "info", onClosePanel, getDefaultFiltersState, state, dispatch, onApplyAllFilters }) => {
31
- var _a;
32
- const { translate } = useLanguage();
33
- const isLongTextLanguages = useMemo(() => `${translate("Reset All")}${translate("Cancel")}${translate("Apply")}`.length > 31, [translate]);
34
- const dataShieldId = useUniqueId();
35
- const isMobile = useMobile();
36
- const { dark } = useContext(themeContext);
37
- const onChangeHandlers = useMemo(() => getChangeHandlers(children), [children]);
38
- const { setScrollHidden, resetScroll } = useBodyScroll();
39
- const onChangeState = useCallback((id, inputState) => {
40
- const componentState = state[id];
41
- if (componentState) {
42
- const action = { type: StateActionType.Change, payload: { id: id, value: { state: deepClone(inputState) } } };
43
- dispatch(action);
44
- }
45
- }, [state, dispatch]);
46
- const onHasErrorState = useCallback((id, isError) => {
47
- const componentState = state[id];
48
- if (componentState) {
49
- dispatch({ type: StateActionType.SetError, payload: { id: id, value: isError } });
50
- }
51
- }, [state, dispatch]);
52
- const onCloseAction = useCallback((reason, shieldId) => {
53
- if (reason === SidePanelCloseReason.ClickOutside && shieldId === dataShieldId || reason === SidePanelCloseReason.Escape) {
54
- onClosePanel();
55
- return;
56
- }
57
- }, [onClosePanel, dataShieldId]);
58
- const newChildren = useMemo(() => Children.map(children, (child) => {
59
- if (!child) {
60
- return null;
61
- }
62
- const element = child;
63
- let hasCheckError = false;
64
- const childState = state[element.props.id];
65
- if (!element.props.showInSidePanel && !isMobile || !childState) {
66
- return null;
67
- }
68
- if (element.type === FiltersBarRange || element.type === FiltersBarPeriodPicker) {
69
- hasCheckError = true;
151
+ export const FiltersBarSidePanel = ({
152
+ isOpen,
153
+ className,
154
+ children,
155
+ triggerRef,
156
+ parentElement,
157
+ pillName,
158
+ pillIcon,
159
+ pillType = "info",
160
+ onClosePanel,
161
+ getDefaultFiltersState,
162
+ state,
163
+ dispatch,
164
+ onApplyAllFilters
165
+ }) => {
166
+ var _a;
167
+ const {
168
+ translate
169
+ } = useLanguage();
170
+ const isLongTextLanguages = useMemo(() => `${translate("Reset All")}${translate("Cancel")}${translate("Apply")}`.length > 31, [translate]);
171
+ const dataShieldId = useUniqueId();
172
+ const isMobile = useMobile();
173
+ const {
174
+ dark
175
+ } = useContext(themeContext);
176
+ const onChangeHandlers = useMemo(() => getChangeHandlers(children), [children]);
177
+ const {
178
+ setScrollHidden,
179
+ resetScroll
180
+ } = useBodyScroll();
181
+ const onChangeState = useCallback((id, inputState) => {
182
+ const componentState = state[id];
183
+ if (componentState) {
184
+ const action = {
185
+ type: StateActionType.Change,
186
+ payload: {
187
+ id: id,
188
+ value: {
189
+ state: deepClone(inputState)
190
+ }
70
191
  }
71
- return cloneElement(child, Object.assign(Object.assign(Object.assign({}, element.props), { useSidePanelView: true, id: element.props.id + "-side-panel", state: deepClone(childState.state), key: element.props.id + "-side-panelKey", onChange: (newState) => onChangeState(element.props.id, newState) }), (hasCheckError ? { checkError: (hasError) => onHasErrorState(element.props.id, hasError) } : {})));
72
- }), [children, state, isMobile, onChangeState, onHasErrorState]);
73
- const onApplyFilters = useCallback(() => {
74
- let isHasError = false;
75
- Object.keys(state).forEach((key) => {
76
- const resultState = state[key];
77
- if (resultState === null || resultState === void 0 ? void 0 : resultState.hasError) {
78
- isHasError = true;
79
- }
80
- });
81
- // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
82
- if (isHasError) {
83
- return;
192
+ };
193
+ dispatch(action);
194
+ }
195
+ }, [state, dispatch]);
196
+ const onHasErrorState = useCallback((id, isError) => {
197
+ const componentState = state[id];
198
+ if (componentState) {
199
+ dispatch({
200
+ type: StateActionType.SetError,
201
+ payload: {
202
+ id: id,
203
+ value: isError
84
204
  }
85
- onApplyAllFilters && onApplyAllFilters(Object.assign({}, state));
86
- Object.keys(state).forEach((key) => {
87
- const resultState = state[key];
88
- const changeHandler = onChangeHandlers[key];
89
- changeHandler === null || changeHandler === void 0 ? void 0 : changeHandler(resultState === null || resultState === void 0 ? void 0 : resultState.state);
90
- });
91
- onClosePanel();
92
- }, [state, onApplyAllFilters, onClosePanel, onChangeHandlers]);
93
- const onResetFilters = useCallback(() => {
94
- const defaultState = getDefaultFiltersState();
95
- dispatch({ type: StateActionType.Reset, payload: defaultState });
96
- }, [getDefaultFiltersState, dispatch]);
97
- const applyDisabled = useMemo(() => Object.values(state).map(el => el === null || el === void 0 ? void 0 : el.hasError).filter(el => el).length > 0, [state]);
98
- const handleReadyForFocus = useCallback((isCurrentOpen) => {
99
- var _a;
100
- if (!isCurrentOpen) {
101
- (_a = triggerRef.current) === null || _a === void 0 ? void 0 : _a.focus();
102
- return;
103
- }
104
- }, [triggerRef]);
105
- useEffect(() => {
106
- const handleOpen = () => {
107
- setScrollHidden();
108
- };
109
- const handleClose = () => {
110
- resetScroll();
111
- };
112
- if (isOpen) {
113
- handleOpen();
114
- }
115
- else {
116
- handleClose();
117
- }
118
- return () => { handleClose(); };
119
- }, [isOpen, setScrollHidden, resetScroll]);
120
- return _jsxs(Fragment, { children: [_jsx(Shield, { className: "zen-high-level-shield", dataShieldId: dataShieldId, isVisible: isOpen }), createPortal(_jsx(SidePanel, { triggerRef: triggerRef, isOpen: isOpen, label: translate("All Filters"), onHidePanel: onCloseAction, className: classNames(["zen-side-panel-filters-bar", dark ? "zen-dark" : "", className !== null && className !== void 0 ? className : ""]), onTransitionEnd: handleReadyForFocus, children: _jsxs("div", { className: "zen-side-panel-filters-bar-wrapper", children: [_jsxs("div", { className: "zen-side-panel-filters-bar__header", children: [_jsxs("div", { className: "zen-side-panel-filters-bar__title-wrapper", children: [_jsx("div", { className: "zen-side-panel-filters-bar__title zen-ellipsis", children: translate("All Filters") }), pillName ? _jsx("div", { className: "zen-side-panel-filters-bar__title-pill", children: _jsx(Pill, { type: pillType, icon: pillIcon, children: pillName }) }) : null] }), _jsx(TextIconButton, { type: "tertiary-black", className: "zen-side-panel-filters-bar__close-button", icon: IconClose, iconSize: "large", onClick: onClosePanel, iconPosition: ButtonIconPosition.Start, title: translate("Close") })] }), _jsx("div", { className: "zen-side-panel-filters-bar__content", children: newChildren }), _jsx("div", { className: classNames(["zen-side-panel-filters-bar__footer", isMobile ? "zen-side-panel-filters-bar__footer--mobile" : "", isLongTextLanguages && !isMobile ? "zen-side-panel-filters-bar__footer--long-text" : ""]), children: isMobile ? _jsxs(FooterButtons, { children: [_jsx(Button, { className: "zen-side-panel-filters-bar__apply-button", disabled: applyDisabled, onClick: onApplyFilters, type: "primary", children: translate("Apply") }), _jsx(Button, { className: "zen-side-panel-filters-bar__cancel-button", type: "secondary", onClick: onClosePanel, children: translate("Cancel") }), _jsx(Button, { className: "zen-side-panel-filters-bar__clear-button", onClick: onResetFilters, type: "tertiary", children: translate("Reset All") })] }) : _jsxs(_Fragment, { children: [_jsx("div", { className: "zen-side-panel-filters-bar__footer-section", children: _jsx(Button, { type: "tertiary", className: "zen-side-panel-filters-bar__clear-button", onClick: onResetFilters, children: translate("Reset All") }) }), _jsxs("div", { className: "zen-side-panel-filters-bar__footer-section", children: [_jsx(Button, { className: "zen-side-panel-filters-bar__cancel-button", type: "secondary", onClick: onClosePanel, children: translate("Cancel") }), _jsx(Button, { className: "zen-side-panel-filters-bar__apply-button zen-side-panel-filters-bar__apply-button--desktop", disabled: applyDisabled, onClick: onApplyFilters, type: "primary", children: translate("Apply") })] })] }) })] }) }), (_a = parentElement !== null && parentElement !== void 0 ? parentElement : document.fullscreenElement) !== null && _a !== void 0 ? _a : document.body)] });
205
+ });
206
+ }
207
+ }, [state, dispatch]);
208
+ const onCloseAction = useCallback((reason, shieldId) => {
209
+ if (reason === SidePanelCloseReason.ClickOutside && shieldId === dataShieldId || reason === SidePanelCloseReason.Escape) {
210
+ onClosePanel();
211
+ return;
212
+ }
213
+ }, [onClosePanel, dataShieldId]);
214
+ const newChildren = useMemo(() => Children.map(children, child => {
215
+ if (!child) {
216
+ return null;
217
+ }
218
+ const element = child;
219
+ let hasCheckError = false;
220
+ const childState = state[element.props.id];
221
+ if (!element.props.showInSidePanel && !isMobile || !childState) {
222
+ return null;
223
+ }
224
+ if (element.type === FiltersBarRange || element.type === FiltersBarPeriodPicker) {
225
+ hasCheckError = true;
226
+ }
227
+ return cloneElement(child, Object.assign(Object.assign(Object.assign({}, element.props), {
228
+ useSidePanelView: true,
229
+ id: element.props.id + "-side-panel",
230
+ state: deepClone(childState.state),
231
+ key: element.props.id + "-side-panelKey",
232
+ onChange: newState => onChangeState(element.props.id, newState)
233
+ }), hasCheckError ? {
234
+ checkError: hasError => onHasErrorState(element.props.id, hasError)
235
+ } : {}));
236
+ }), [children, state, isMobile, onChangeState, onHasErrorState]);
237
+ const onApplyFilters = useCallback(() => {
238
+ let isHasError = false;
239
+ Object.keys(state).forEach(key => {
240
+ const resultState = state[key];
241
+ if (resultState === null || resultState === void 0 ? void 0 : resultState.hasError) {
242
+ isHasError = true;
243
+ }
244
+ });
245
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
246
+ if (isHasError) {
247
+ return;
248
+ }
249
+ onApplyAllFilters && onApplyAllFilters(Object.assign({}, state));
250
+ Object.keys(state).forEach(key => {
251
+ const resultState = state[key];
252
+ const changeHandler = onChangeHandlers[key];
253
+ changeHandler === null || changeHandler === void 0 ? void 0 : changeHandler(resultState === null || resultState === void 0 ? void 0 : resultState.state);
254
+ });
255
+ onClosePanel();
256
+ }, [state, onApplyAllFilters, onClosePanel, onChangeHandlers]);
257
+ const onResetFilters = useCallback(() => {
258
+ const defaultState = getDefaultFiltersState();
259
+ dispatch({
260
+ type: StateActionType.Reset,
261
+ payload: defaultState
262
+ });
263
+ }, [getDefaultFiltersState, dispatch]);
264
+ const applyDisabled = useMemo(() => Object.values(state).map(el => el === null || el === void 0 ? void 0 : el.hasError).filter(el => el).length > 0, [state]);
265
+ const handleReadyForFocus = useCallback(isCurrentOpen => {
266
+ var _a;
267
+ if (!isCurrentOpen) {
268
+ (_a = triggerRef.current) === null || _a === void 0 ? void 0 : _a.focus();
269
+ return;
270
+ }
271
+ }, [triggerRef]);
272
+ useEffect(() => {
273
+ const handleOpen = () => {
274
+ setScrollHidden();
275
+ };
276
+ const handleClose = () => {
277
+ resetScroll();
278
+ };
279
+ if (isOpen) {
280
+ handleOpen();
281
+ } else {
282
+ handleClose();
283
+ }
284
+ return () => {
285
+ handleClose();
286
+ };
287
+ }, [isOpen, setScrollHidden, resetScroll]);
288
+ return _jsxs(Fragment, {
289
+ children: [_jsx(Shield, {
290
+ className: "zen-high-level-shield",
291
+ dataShieldId: dataShieldId,
292
+ isVisible: isOpen
293
+ }), createPortal(_jsx(SidePanel, {
294
+ triggerRef: triggerRef,
295
+ isOpen: isOpen,
296
+ label: translate("All Filters"),
297
+ onHidePanel: onCloseAction,
298
+ className: classNames(["zen-side-panel-filters-bar", dark ? "zen-dark" : "", className !== null && className !== void 0 ? className : ""]),
299
+ onTransitionEnd: handleReadyForFocus,
300
+ children: _jsxs("div", {
301
+ className: "zen-side-panel-filters-bar-wrapper",
302
+ children: [_jsxs("div", {
303
+ className: "zen-side-panel-filters-bar__header",
304
+ children: [_jsxs("div", {
305
+ className: "zen-side-panel-filters-bar__title-wrapper",
306
+ children: [_jsx("div", {
307
+ className: "zen-side-panel-filters-bar__title zen-ellipsis",
308
+ children: translate("All Filters")
309
+ }), pillName ? _jsx("div", {
310
+ className: "zen-side-panel-filters-bar__title-pill",
311
+ children: _jsx(Pill, {
312
+ type: pillType,
313
+ icon: pillIcon,
314
+ children: pillName
315
+ })
316
+ }) : null]
317
+ }), _jsx(TextIconButton, {
318
+ type: "tertiary-black",
319
+ className: "zen-side-panel-filters-bar__close-button",
320
+ icon: IconClose,
321
+ iconSize: "large",
322
+ onClick: onClosePanel,
323
+ iconPosition: ButtonIconPosition.Start,
324
+ title: translate("Close")
325
+ })]
326
+ }), _jsx("div", {
327
+ className: "zen-side-panel-filters-bar__content",
328
+ children: newChildren
329
+ }), _jsx("div", {
330
+ className: classNames(["zen-side-panel-filters-bar__footer", isMobile ? "zen-side-panel-filters-bar__footer--mobile" : "", isLongTextLanguages && !isMobile ? "zen-side-panel-filters-bar__footer--long-text" : ""]),
331
+ children: isMobile ? _jsxs(FooterButtons, {
332
+ children: [_jsx(Button, {
333
+ className: "zen-side-panel-filters-bar__apply-button",
334
+ disabled: applyDisabled,
335
+ onClick: onApplyFilters,
336
+ type: "primary",
337
+ children: translate("Apply")
338
+ }), _jsx(Button, {
339
+ className: "zen-side-panel-filters-bar__cancel-button",
340
+ type: "secondary",
341
+ onClick: onClosePanel,
342
+ children: translate("Cancel")
343
+ }), _jsx(Button, {
344
+ className: "zen-side-panel-filters-bar__clear-button",
345
+ onClick: onResetFilters,
346
+ type: "tertiary",
347
+ children: translate("Reset All")
348
+ })]
349
+ }) : _jsxs(_Fragment, {
350
+ children: [_jsx("div", {
351
+ className: "zen-side-panel-filters-bar__footer-section",
352
+ children: _jsx(Button, {
353
+ type: "tertiary",
354
+ className: "zen-side-panel-filters-bar__clear-button",
355
+ onClick: onResetFilters,
356
+ children: translate("Reset All")
357
+ })
358
+ }), _jsxs("div", {
359
+ className: "zen-side-panel-filters-bar__footer-section",
360
+ children: [_jsx(Button, {
361
+ className: "zen-side-panel-filters-bar__cancel-button",
362
+ type: "secondary",
363
+ onClick: onClosePanel,
364
+ children: translate("Cancel")
365
+ }), _jsx(Button, {
366
+ className: "zen-side-panel-filters-bar__apply-button zen-side-panel-filters-bar__apply-button--desktop",
367
+ disabled: applyDisabled,
368
+ onClick: onApplyFilters,
369
+ type: "primary",
370
+ children: translate("Apply")
371
+ })]
372
+ })]
373
+ })
374
+ })]
375
+ })
376
+ }), (_a = parentElement !== null && parentElement !== void 0 ? parentElement : document.fullscreenElement) !== null && _a !== void 0 ? _a : document.body)]
377
+ });
121
378
  };
122
- export const FiltersBarSidePanelContainer = (_) => _jsx(_Fragment, {});
123
- export const TRANSLATIONS = [
124
- "Apply",
125
- "Clear",
126
- "Reset All",
127
- "Close",
128
- "Cancel"
129
- ];
379
+ export const FiltersBarSidePanelContainer = _ => _jsx(_Fragment, {});
380
+ export const TRANSLATIONS = ["Apply", "Clear", "Reset All", "Close", "Cancel"];