@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,13 +1,11 @@
1
- var __rest = (this && this.__rest) || function (s, e) {
2
- var t = {};
3
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
- t[p] = s[p];
5
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
- t[p[i]] = s[p[i]];
9
- }
10
- return t;
1
+ import { injectString } from "../utils/localization/translationsDictionary";
2
+ var __rest = this && this.__rest || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
6
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
7
+ }
8
+ return t;
11
9
  };
12
10
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
11
  import { useContext, useId, useRef } from "react";
@@ -20,40 +18,214 @@ import { useDriveClassName } from "../utils/theme/useDriveClassName";
20
18
  import { useDrive } from "../utils/theme/useDrive";
21
19
  import { FormSectionContext } from "../formSection/utils/formSectionProvider";
22
20
  // eslint-disable-next-line complexity
23
- export const DropdownSearchableTrigger = (_a) => {
24
- var { value, className = "", onChange, placeholder, isOpenPopup, inputRef, handleClick, width, title, id, disabled, count, currentSelection, isError, fullWidth, ref, name, onBlur } = _a, otherProps = __rest(_a, ["value", "className", "onChange", "placeholder", "isOpenPopup", "inputRef", "handleClick", "width", "title", "id", "disabled", "count", "currentSelection", "isError", "fullWidth", "ref", "name", "onBlur"]);
25
- const { isFormSection } = useContext(FormSectionContext);
26
- const { translate } = useLanguage();
27
- const triggerId = useId();
28
- const driveComponentClass = useDriveClassName("zen-dropdown-searchable-trigger");
29
- const isDrive = useDrive();
30
- const inputStyle = width ? { style: { width: `${width}px` } } : {};
31
- const isLargeNumber = count && count > 99;
32
- const clearRef = useRef(null);
33
- const handleKeydown = (e) => {
34
- if (e.key === "Enter" && !isOpenPopup) {
35
- handleClick(true);
36
- }
37
- if (e.key === "Escape" && isOpenPopup && e.nativeEvent) {
38
- e.nativeEvent.stopImmediatePropagation();
39
- handleClick(false);
40
- }
41
- };
42
- const clickHandler = (e) => {
43
- if (e.target === inputRef.current && isOpenPopup || e.target === clearRef.current && isOpenPopup) {
44
- return;
45
- }
46
- handleClick(!isOpenPopup);
47
- };
48
- const handleClearSearch = () => {
49
- onChange(undefined);
50
- };
51
- return _jsxs("div", Object.assign({ className: classNames(["zen-dropdown-searchable-trigger", isError ? "zen-dropdown-searchable-trigger--error" : "",
52
- driveComponentClass || "", isFormSection ? "zen-dropdown-searchable-trigger--form-item" : "", disabled ? "zen-dropdown-searchable-trigger--disabled" : ""]) }, inputStyle, { ref: ref }, otherProps, { onClick: disabled ? () => { } : clickHandler, role: "combobox", "aria-label": placeholder, children: [_jsxs("div", { onBlur: onBlur, className: classNames(["zen-dropdown-searchable-trigger__search-container", className]), children: [_jsx("div", { className: "zen-dropdown-searchable-trigger__input-container", onKeyDown: handleKeydown, children: _jsx(TextInputRaw, { value: value, placeholder: currentSelection ? currentSelection : placeholder || translate("Filter by group"), className: classNames(["zen-dropdown-searchable-trigger__input", "zen-ellipsis", currentSelection ? "zen-dropdown-searchable-trigger__input--selected" : ""]), onChange: onChange, disabled: disabled, type: "text", ref: inputRef, id: id || triggerId }) }), count ? _jsx("div", { className: "zen-dropdown-searchable-trigger__label-element", children: _jsx("div", { className: "zen-dropdown-searchable-trigger__counter", children: _jsx("span", { children: isLargeNumber ? "99+" : count }) }) }) : null, value && _jsx("button", { type: "button", className: "zen-dropdown-searchable-trigger__close-button", ref: clearRef, title: translate("Clear search"), onClick: handleClearSearch, children: _jsx(IconCrossThin, { size: isDrive ? "big" : "small" }) })] }), _jsx("button", { name: name, type: "button", onMouseDown: e => e.preventDefault(), tabIndex: -1, "aria-hidden": "true", className: classNames(["zen-dropdown-searchable-trigger__popup-trigger", isOpenPopup ? "zen-dropdown-searchable-trigger__popup-trigger--active" : ""]), title: title || translate(isOpenPopup ? "Close filter" : "Open filter"), children: _jsx(IconChevronDownSmall, { className: isOpenPopup ? "zen-dropdown-searchable-trigger__arrow-icon--up" : "zen-dropdown-searchable-trigger__arrow-icon--down", size: isDrive ? "huge" : "large" }) })] }));
21
+ injectString("cs", "Filter by group", "Filtrovat podle skupiny");
22
+ injectString("da-DK", "Filter by group", "Filtrer efter gruppe");
23
+ injectString("de", "Filter by group", "Nach Gruppe filtern");
24
+ injectString("en", "Filter by group", "Filter by group");
25
+ injectString("es", "Filter by group", "Filtrar por grupo");
26
+ injectString("fi-FI", "Filter by group", "Suodata ryhm\xE4n mukaan");
27
+ injectString("fr", "Filter by group", "Filtrer par groupe");
28
+ injectString("fr-FR", "Filter by group", "Filtrer par groupe");
29
+ injectString("hu-HU", "Filter by group", "Sz\u0171rd csoport alapj\xE1n.");
30
+ injectString("id", "Filter by group", "Filter berdasarkan grup");
31
+ injectString("it", "Filter by group", "Filtrare per gruppo");
32
+ injectString("ja", "Filter by group", "\u30B0\u30EB\u30FC\u30D7\u306B\u3088\u308B\u30D5\u30A3\u30EB\u30BF\u30EA\u30F3\u30B0");
33
+ injectString("ko-KR", "Filter by group", "\uADF8\uB8F9\uBCC4 \uD544\uD130\uB9C1");
34
+ injectString("ms", "Filter by group", "Saring mengikut kumpulan");
35
+ injectString("nb-NO", "Filter by group", "Filtrer etter gruppe");
36
+ injectString("nl", "Filter by group", "Filteren op groep");
37
+ injectString("pl", "Filter by group", "Filtruj wed\u0142ug grupy");
38
+ injectString("pt-BR", "Filter by group", "Filtrar por grupo");
39
+ injectString("sk-SK", "Filter by group", "Filtrova\u0165 pod\u013Ea skupiny");
40
+ injectString("sv", "Filter by group", "Filtrera efter grupp");
41
+ injectString("th", "Filter by group", "\u0E01\u0E23\u0E2D\u0E07\u0E15\u0E32\u0E21\u0E01\u0E25\u0E38\u0E48\u0E21");
42
+ injectString("tr", "Filter by group", "Gruba g\xF6re filtrele");
43
+ injectString("zh-Hans", "Filter by group", "\u6309\u7EC4\u8FC7\u6EE4");
44
+ injectString("zh-TW", "Filter by group", "\u4F9D\u7FA4\u7D44\u7BE9\u9078");
45
+ injectString("cs", "Clear search", "Vymazat vyhled\xE1v\xE1n\xED");
46
+ injectString("da-DK", "Clear search", "Ryd s\xF8gning");
47
+ injectString("de", "Clear search", "Suche l\xF6schen");
48
+ injectString("en", "Clear search", "Clear search");
49
+ injectString("es", "Clear search", "Borrar b\xFAsqueda");
50
+ injectString("fi-FI", "Clear search", "Tyhjenn\xE4 haku");
51
+ injectString("fr", "Clear search", "Effacer la recherche");
52
+ injectString("fr-FR", "Clear search", "Effacer la recherche");
53
+ injectString("hu-HU", "Clear search", "T\xF6r\xF6ld a keres\xE9st.");
54
+ injectString("id", "Clear search", "Hapus pencarian");
55
+ injectString("it", "Clear search", "Cancellare ricerca");
56
+ injectString("ja", "Clear search", "\u691C\u7D22\u3092\u30AF\u30EA\u30A2");
57
+ injectString("ko-KR", "Clear search", "\uAC80\uC0C9 \uC9C0\uC6B0\uAE30");
58
+ injectString("ms", "Clear search", "Kosongkan carian");
59
+ injectString("nb-NO", "Clear search", "T\xF8m s\xF8k");
60
+ injectString("nl", "Clear search", "Zoekopdracht wissen");
61
+ injectString("pl", "Clear search", "Wyczy\u015B\u0107 wyszukiwanie");
62
+ injectString("pt-BR", "Clear search", "Limpar pesquisa");
63
+ injectString("sk-SK", "Clear search", "Vyma\u017E vyh\u013Ead\xE1vanie.");
64
+ injectString("sv", "Clear search", "Rensa s\xF6kningen");
65
+ injectString("th", "Clear search", "\u0E25\u0E49\u0E32\u0E07\u0E01\u0E32\u0E23\u0E04\u0E49\u0E19\u0E2B\u0E32");
66
+ injectString("tr", "Clear search", "Aramay\u0131 temizle");
67
+ injectString("zh-Hans", "Clear search", "\u6E05\u9664\u641C\u7D22");
68
+ injectString("zh-TW", "Clear search", "\u6E05\u9664\u641C\u5C0B");
69
+ injectString("cs", "Close filter", "Zav\u0159\xEDt filtr");
70
+ injectString("da-DK", "Close filter", "Luk filter");
71
+ injectString("de", "Close filter", "Filter schlie\xDFen");
72
+ injectString("en", "Close filter", "Close filter");
73
+ injectString("es", "Close filter", "Cerrar filtro");
74
+ injectString("fi-FI", "Close filter", "Sulje suodatin");
75
+ injectString("fr", "Close filter", "Fermer le filtre");
76
+ injectString("fr-FR", "Close filter", "Fermer le filtre");
77
+ injectString("hu-HU", "Close filter", "Z\xE1rja be a sz\u0171r\u0151t");
78
+ injectString("id", "Close filter", "Tutup filter");
79
+ injectString("it", "Close filter", "Chiudi filtro");
80
+ injectString("ja", "Close filter", "\u30D5\u30A3\u30EB\u30BF\u30FC\u3092\u9589\u3058\u308B");
81
+ injectString("ko-KR", "Close filter", "\uD544\uD130 \uB2EB\uAE30");
82
+ injectString("ms", "Close filter", "Tutup penyaring");
83
+ injectString("nb-NO", "Close filter", "Lukk filter");
84
+ injectString("nl", "Close filter", "Filter sluiten");
85
+ injectString("pl", "Close filter", "Zamknij filtr");
86
+ injectString("pt-BR", "Close filter", "Fechar filtro");
87
+ injectString("sk-SK", "Close filter", "Zatvori\u0165 filter");
88
+ injectString("sv", "Close filter", "St\xE4ng filter");
89
+ injectString("th", "Close filter", "\u0E1B\u0E34\u0E14\u0E15\u0E31\u0E27\u0E01\u0E23\u0E2D\u0E07");
90
+ injectString("tr", "Close filter", "Filtreyi kapat");
91
+ injectString("zh-Hans", "Close filter", "\u5173\u95ED\u7B5B\u9009\u5668");
92
+ injectString("zh-TW", "Close filter", "\u95DC\u9589\u7BE9\u9078\u5668");
93
+ injectString("cs", "Open filter", "Otev\u0159\xEDt filtr");
94
+ injectString("da-DK", "Open filter", "\xC5bn filter");
95
+ injectString("de", "Open filter", "Filter \xF6ffnen");
96
+ injectString("en", "Open filter", "Open filter");
97
+ injectString("es", "Open filter", "Abrir filtro");
98
+ injectString("fi-FI", "Open filter", "Avaa suodatin");
99
+ injectString("fr", "Open filter", "Ouvrir le filtre");
100
+ injectString("fr-FR", "Open filter", "Ouvrir le filtre");
101
+ injectString("hu-HU", "Open filter", "Nyisd meg a sz\u0171r\u0151t.");
102
+ injectString("id", "Open filter", "Buka filter");
103
+ injectString("it", "Open filter", "Aprire filtro");
104
+ injectString("ja", "Open filter", "\u30D5\u30A3\u30EB\u30BF\u30FC\u3092\u958B\u304F");
105
+ injectString("ko-KR", "Open filter", "\uD544\uD130 \uC5F4\uAE30");
106
+ injectString("ms", "Open filter", "Buka penyaring");
107
+ injectString("nb-NO", "Open filter", "\xC5pne filter");
108
+ injectString("nl", "Open filter", "Filter openen");
109
+ injectString("pl", "Open filter", "Otw\xF3rz filtr");
110
+ injectString("pt-BR", "Open filter", "Abrir filtro");
111
+ injectString("sk-SK", "Open filter", "Otvori filter.");
112
+ injectString("sv", "Open filter", "\xD6ppna filter");
113
+ injectString("th", "Open filter", "\u0E40\u0E1B\u0E34\u0E14\u0E15\u0E31\u0E27\u0E01\u0E23\u0E2D\u0E07");
114
+ injectString("tr", "Open filter", "Filtreyi a\xE7");
115
+ injectString("zh-Hans", "Open filter", "\u6253\u5F00\u7B5B\u9009\u5668");
116
+ injectString("zh-TW", "Open filter", "\u958B\u555F\u7BE9\u9078\u689D\u4EF6");
117
+ export const DropdownSearchableTrigger = _a => {
118
+ var {
119
+ value,
120
+ className = "",
121
+ onChange,
122
+ placeholder,
123
+ isOpenPopup,
124
+ inputRef,
125
+ handleClick,
126
+ width,
127
+ title,
128
+ id,
129
+ disabled,
130
+ count,
131
+ currentSelection,
132
+ isError,
133
+ fullWidth,
134
+ ref,
135
+ name,
136
+ onBlur
137
+ } = _a,
138
+ otherProps = __rest(_a, ["value", "className", "onChange", "placeholder", "isOpenPopup", "inputRef", "handleClick", "width", "title", "id", "disabled", "count", "currentSelection", "isError", "fullWidth", "ref", "name", "onBlur"]);
139
+ const {
140
+ isFormSection
141
+ } = useContext(FormSectionContext);
142
+ const {
143
+ translate
144
+ } = useLanguage();
145
+ const triggerId = useId();
146
+ const driveComponentClass = useDriveClassName("zen-dropdown-searchable-trigger");
147
+ const isDrive = useDrive();
148
+ const inputStyle = width ? {
149
+ style: {
150
+ width: `${width}px`
151
+ }
152
+ } : {};
153
+ const isLargeNumber = count && count > 99;
154
+ const clearRef = useRef(null);
155
+ const handleKeydown = e => {
156
+ if (e.key === "Enter" && !isOpenPopup) {
157
+ handleClick(true);
158
+ }
159
+ if (e.key === "Escape" && isOpenPopup && e.nativeEvent) {
160
+ e.nativeEvent.stopImmediatePropagation();
161
+ handleClick(false);
162
+ }
163
+ };
164
+ const clickHandler = e => {
165
+ if (e.target === inputRef.current && isOpenPopup || e.target === clearRef.current && isOpenPopup) {
166
+ return;
167
+ }
168
+ handleClick(!isOpenPopup);
169
+ };
170
+ const handleClearSearch = () => {
171
+ onChange(undefined);
172
+ };
173
+ return _jsxs("div", Object.assign({
174
+ className: classNames(["zen-dropdown-searchable-trigger", isError ? "zen-dropdown-searchable-trigger--error" : "", driveComponentClass || "", isFormSection ? "zen-dropdown-searchable-trigger--form-item" : "", disabled ? "zen-dropdown-searchable-trigger--disabled" : ""])
175
+ }, inputStyle, {
176
+ ref: ref
177
+ }, otherProps, {
178
+ onClick: disabled ? () => {} : clickHandler,
179
+ role: "combobox",
180
+ "aria-label": placeholder,
181
+ children: [_jsxs("div", {
182
+ onBlur: onBlur,
183
+ className: classNames(["zen-dropdown-searchable-trigger__search-container", className]),
184
+ children: [_jsx("div", {
185
+ className: "zen-dropdown-searchable-trigger__input-container",
186
+ onKeyDown: handleKeydown,
187
+ children: _jsx(TextInputRaw, {
188
+ value: value,
189
+ placeholder: currentSelection ? currentSelection : placeholder || translate("Filter by group"),
190
+ className: classNames(["zen-dropdown-searchable-trigger__input", "zen-ellipsis", currentSelection ? "zen-dropdown-searchable-trigger__input--selected" : ""]),
191
+ onChange: onChange,
192
+ disabled: disabled,
193
+ type: "text",
194
+ ref: inputRef,
195
+ id: id || triggerId
196
+ })
197
+ }), count ? _jsx("div", {
198
+ className: "zen-dropdown-searchable-trigger__label-element",
199
+ children: _jsx("div", {
200
+ className: "zen-dropdown-searchable-trigger__counter",
201
+ children: _jsx("span", {
202
+ children: isLargeNumber ? "99+" : count
203
+ })
204
+ })
205
+ }) : null, value && _jsx("button", {
206
+ type: "button",
207
+ className: "zen-dropdown-searchable-trigger__close-button",
208
+ ref: clearRef,
209
+ title: translate("Clear search"),
210
+ onClick: handleClearSearch,
211
+ children: _jsx(IconCrossThin, {
212
+ size: isDrive ? "big" : "small"
213
+ })
214
+ })]
215
+ }), _jsx("button", {
216
+ name: name,
217
+ type: "button",
218
+ onMouseDown: e => e.preventDefault(),
219
+ tabIndex: -1,
220
+ "aria-hidden": "true",
221
+ className: classNames(["zen-dropdown-searchable-trigger__popup-trigger", isOpenPopup ? "zen-dropdown-searchable-trigger__popup-trigger--active" : ""]),
222
+ title: title || (isOpenPopup ? translate("Close filter") : translate("Open filter")),
223
+ children: _jsx(IconChevronDownSmall, {
224
+ className: isOpenPopup ? "zen-dropdown-searchable-trigger__arrow-icon--up" : "zen-dropdown-searchable-trigger__arrow-icon--down",
225
+ size: isDrive ? "huge" : "large"
226
+ })
227
+ })]
228
+ }));
53
229
  };
54
230
  DropdownSearchableTrigger.displayName = "DropdownSearchableTrigger";
55
- export const TRANSLATIONS = [
56
- "Filter by group",
57
- "Open filter",
58
- "Clear search"
59
- ];
231
+ export const TRANSLATIONS = ["Filter by group", "Open filter", "Clear search"];
@@ -137,5 +137,9 @@ interface IUpdateNamelessItemsAction {
137
137
  type: StateActionType.UpdateNamelessItems;
138
138
  payload: undefined;
139
139
  }
140
- export type TStateAction = ICreateMapAction | ISetStateAction | ISetGlobalStateAction | ISetListDataAction | ISetIsOpenComboAction | IShowAction | IShowWaitingAction | IShowEmptyListAction | IShowListAction | ISetInputValueAction | INothingToShowAction | ISetCurrentIdAction | IChangeSelectionAction | IChangeBulkSelectionAction | IChangeSingleSelectionAction | ISelectAllChildrenAction | IDeselectAllChildrenAction | IResetSelection | IResetStateToGlobal | ISetDataProblemAction | ISetDefaultValueAction | IUpdateSelectedItemsAction | ISetPendingStateAction | IUpdateNamelessItemsAction | IToggleValueForAllSelectedAction | IDeselectItemsFromAllSelectedAction | ISetDefaultAllSelectedAction | ISetIsCheckedAction | ISetIsCheckedAction | ISetDefaultIsCheckedAction;
140
+ interface ISetFirstParentNodeIsVisibleAction {
141
+ type: StateActionType.SetFirstParentNodeIsVisible;
142
+ payload: boolean | undefined;
143
+ }
144
+ export type TStateAction = ICreateMapAction | ISetStateAction | ISetGlobalStateAction | ISetListDataAction | ISetIsOpenComboAction | IShowAction | IShowWaitingAction | IShowEmptyListAction | IShowListAction | ISetInputValueAction | INothingToShowAction | ISetCurrentIdAction | IChangeSelectionAction | IChangeBulkSelectionAction | IChangeSingleSelectionAction | ISelectAllChildrenAction | IDeselectAllChildrenAction | IResetSelection | IResetStateToGlobal | ISetDataProblemAction | ISetDefaultValueAction | IUpdateSelectedItemsAction | ISetPendingStateAction | IUpdateNamelessItemsAction | IToggleValueForAllSelectedAction | IDeselectItemsFromAllSelectedAction | ISetDefaultAllSelectedAction | ISetIsCheckedAction | ISetIsCheckedAction | ISetDefaultIsCheckedAction | ISetFirstParentNodeIsVisibleAction;
141
145
  export {};
@@ -27,5 +27,6 @@ export declare enum StateActionType {
27
27
  DeselectItemsFromAllSelected = "DESELECT_ITEMS_FROM_ALL_SELECTED",
28
28
  SetDefaultAllSelected = "SET_DEFAULT_ALL_SELECTED",
29
29
  SetDefaultIsChecked = "SET_DEFAULT_IS_CHECKED",
30
- SetIsChecked = "SET_IS_CHECKED"
30
+ SetIsChecked = "SET_IS_CHECKED",
31
+ SetFirstParentNodeIsVisible = "SET_FIRST_PARENT_NODE_IS_VISIBLE"
31
32
  }
@@ -29,4 +29,5 @@ export var StateActionType;
29
29
  StateActionType["SetDefaultAllSelected"] = "SET_DEFAULT_ALL_SELECTED";
30
30
  StateActionType["SetDefaultIsChecked"] = "SET_DEFAULT_IS_CHECKED";
31
31
  StateActionType["SetIsChecked"] = "SET_IS_CHECKED";
32
+ StateActionType["SetFirstParentNodeIsVisible"] = "SET_FIRST_PARENT_NODE_IS_VISIBLE";
32
33
  })(StateActionType || (StateActionType = {}));
@@ -2,6 +2,7 @@ import { Reducer } from "react";
2
2
  import { TStateAction } from "./stateAction";
3
3
  import { IGroupTree, ITypedHash } from "../../groupsFilterRaw/groupsFilterInterfaces";
4
4
  import { IDropdownRawItem } from "../types";
5
+ export declare const ROOT_GROUP_ID = "zen_dropdown_root_group_id";
5
6
  export interface IDropdownState {
6
7
  groupsMap: ITypedHash<IGroupTree | undefined>;
7
8
  selectedIds: string[];
@@ -9,6 +10,7 @@ export interface IDropdownState {
9
10
  defaultValue: string[];
10
11
  listData: IDropdownRawItem[];
11
12
  currentId: string | undefined;
13
+ rootId: string;
12
14
  showWaiting: boolean;
13
15
  showEmptyList: boolean;
14
16
  showList: boolean;
@@ -28,16 +30,18 @@ export interface IDropdownState {
28
30
  isChecked?: boolean;
29
31
  defaultValueIsChecked?: boolean;
30
32
  globalIsChecked?: boolean;
33
+ firstParentNodeIsVisible?: boolean;
31
34
  }
32
35
  export interface IStateReducer extends Reducer<IDropdownState, TStateAction> {
33
36
  }
34
- export declare const getInitialState: (isFullSelectionMode: boolean, comboItems: IDropdownRawItem[], selection: string[], listLimit: number, defaultValue?: string[], isAllSelected?: boolean, defaultValueIsAllSelected?: boolean, isChecked?: boolean, defaultValueIsChecked?: boolean) => {
37
+ export declare const getInitialState: (isFullSelectionMode: boolean, comboItems: IDropdownRawItem[], selection: string[], listLimit: number, defaultValue?: string[], isAllSelected?: boolean, defaultValueIsAllSelected?: boolean, isChecked?: boolean, defaultValueIsChecked?: boolean, firstParentNodeIsVisible?: boolean) => {
35
38
  groupsMap: ITypedHash<IGroupTree>;
36
39
  selectedIds: string[];
37
40
  globalSelectedIds: string[];
38
41
  defaultValue: string[];
39
42
  listData: never[];
40
43
  currentId: undefined;
44
+ rootId: string;
41
45
  showWaiting: boolean;
42
46
  showEmptyList: boolean;
43
47
  showList: boolean;
@@ -57,5 +61,6 @@ export declare const getInitialState: (isFullSelectionMode: boolean, comboItems:
57
61
  globalIsChecked: boolean | undefined;
58
62
  listLimit: number;
59
63
  resultsExceedListLimit: boolean;
64
+ firstParentNodeIsVisible: boolean | undefined;
60
65
  };
61
66
  export declare function stateReducer(state: IDropdownState, action: TStateAction): IDropdownState;
@@ -1,10 +1,10 @@
1
1
  import { StateActionType } from "./stateActionType";
2
- import { getChildList, updateAllSelectedStateValueBasedOnTotalSelected } from "./stateReducerHelper";
2
+ import { getChildList, updateAllSelectedStateValueBasedOnTotalSelected, getRootId } from "./stateReducerHelper";
3
3
  import { createGroupsMap } from "../../groupsFilterRaw/groupsFilterHelper";
4
- import { ENTIRE_ORGANIZATION_GROUP_ID } from "../../groupsFilterRaw/groupsHelper";
5
- export const getInitialState = (isFullSelectionMode, comboItems, selection, listLimit, defaultValue, isAllSelected, defaultValueIsAllSelected, isChecked, defaultValueIsChecked) => {
4
+ export const ROOT_GROUP_ID = "zen_dropdown_root_group_id";
5
+ export const getInitialState = (isFullSelectionMode, comboItems, selection, listLimit, defaultValue, isAllSelected, defaultValueIsAllSelected, isChecked, defaultValueIsChecked, firstParentNodeIsVisible) => {
6
6
  const updatedGroupsMapSelected = new Map();
7
- const updatedGroupsMap = comboItems.length ? createGroupsMap(comboItems, ENTIRE_ORGANIZATION_GROUP_ID) : {};
7
+ const updatedGroupsMap = comboItems.length ? createGroupsMap(comboItems, ROOT_GROUP_ID) : {};
8
8
  const namelessIds = new Set();
9
9
  if (selection.length > 0) {
10
10
  selection.forEach(id => {
@@ -19,7 +19,8 @@ export const getInitialState = (isFullSelectionMode, comboItems, selection, list
19
19
  }
20
20
  });
21
21
  }
22
- const isCurrentListNested = Object.keys(updatedGroupsMap).length > 0 && (updatedGroupsMap[ENTIRE_ORGANIZATION_GROUP_ID].children || []).some(el => el.children && el.children.length);
22
+ const isCurrentListNested = Object.keys(updatedGroupsMap).length > 0 && (updatedGroupsMap[ROOT_GROUP_ID].children || []).some(el => el.children && el.children.length);
23
+ const rootId = getRootId(updatedGroupsMap, ROOT_GROUP_ID, firstParentNodeIsVisible);
23
24
  return {
24
25
  groupsMap: updatedGroupsMap,
25
26
  selectedIds: selection,
@@ -27,6 +28,7 @@ export const getInitialState = (isFullSelectionMode, comboItems, selection, list
27
28
  defaultValue: defaultValue || [],
28
29
  listData: [],
29
30
  currentId: undefined,
31
+ rootId: rootId || ROOT_GROUP_ID,
30
32
  showWaiting: false,
31
33
  showEmptyList: false,
32
34
  showList: false,
@@ -45,7 +47,8 @@ export const getInitialState = (isFullSelectionMode, comboItems, selection, list
45
47
  defaultValueIsChecked: isChecked !== undefined ? defaultValueIsChecked || false : undefined,
46
48
  globalIsChecked: isChecked,
47
49
  listLimit,
48
- resultsExceedListLimit: false
50
+ resultsExceedListLimit: false,
51
+ firstParentNodeIsVisible: firstParentNodeIsVisible
49
52
  };
50
53
  };
51
54
  // eslint-disable-next-line complexity
@@ -54,7 +57,7 @@ export function stateReducer(state, action) {
54
57
  const { type, payload } = action;
55
58
  switch (type) {
56
59
  case StateActionType.CreateMap: {
57
- const updatedGroupsMap = payload.length ? createGroupsMap(payload, ENTIRE_ORGANIZATION_GROUP_ID) : {};
60
+ const updatedGroupsMap = payload.length ? createGroupsMap(payload, ROOT_GROUP_ID) : {};
58
61
  const newNamelessIds = new Set(state.namelessIds);
59
62
  if (Object.keys(updatedGroupsMap).length && state.selectedIds.length) {
60
63
  state.selectedIds.forEach(id => {
@@ -70,10 +73,11 @@ export function stateReducer(state, action) {
70
73
  }
71
74
  });
72
75
  }
73
- const isCurrentListNested = Object.keys(updatedGroupsMap).length > 0 && (updatedGroupsMap[ENTIRE_ORGANIZATION_GROUP_ID].children || []).some(el => el.children && el.children.length);
76
+ const isCurrentListNested = Object.keys(updatedGroupsMap).length > 0 && (updatedGroupsMap[ROOT_GROUP_ID].children || []).some(el => el.children && el.children.length);
74
77
  state.groupsMap = updatedGroupsMap;
75
78
  const additionalStateUpdates = updateAllSelectedStateValueBasedOnTotalSelected(state, state.selectedIds.length - newNamelessIds.size);
76
- return Object.assign(Object.assign(Object.assign({}, state), { namelessIds: newNamelessIds, isNestedList: state.isNestedList ? state.isNestedList : isCurrentListNested, resultsExceedListLimit: Object.keys(updatedGroupsMap).length - 1 >= state.listLimit }), additionalStateUpdates);
79
+ const rootId = getRootId(updatedGroupsMap, ROOT_GROUP_ID, state.firstParentNodeIsVisible);
80
+ return Object.assign(Object.assign(Object.assign({}, state), { rootId: rootId || ROOT_GROUP_ID, namelessIds: newNamelessIds, isNestedList: state.isNestedList ? state.isNestedList : isCurrentListNested, resultsExceedListLimit: Object.keys(updatedGroupsMap).length - 1 >= state.listLimit }), additionalStateUpdates);
77
81
  }
78
82
  case StateActionType.SetListData: {
79
83
  state.selectedIds.forEach(id => {
@@ -233,7 +237,8 @@ export function stateReducer(state, action) {
233
237
  }
234
238
  // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
235
239
  const currentChild = getChildList((_e = state.groupsMap[itemId]) === null || _e === void 0 ? void 0 : _e.children);
236
- currentChild.forEach(childId => childrenToProcess.add(childId.id));
240
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
241
+ currentChild.forEach(childId => childId && childrenToProcess.add(childId.id));
237
242
  }
238
243
  else {
239
244
  currentSelectedIds.delete(itemId);
@@ -287,7 +292,7 @@ export function stateReducer(state, action) {
287
292
  return Object.assign(Object.assign({}, state), { selectedIds: Array.from(newSelected) });
288
293
  }
289
294
  case StateActionType.DeselectItemsFromAllSelected: {
290
- const currentEl = state.groupsMap[ENTIRE_ORGANIZATION_GROUP_ID];
295
+ const currentEl = state.groupsMap[state.rootId];
291
296
  // action not submitted for disabled item, other items, even if disabled, not change their state
292
297
  const deselectedItems = payload ? new Set([payload]) : new Set(state.listData.filter(elem => !elem.disabled).map(el => el.id));
293
298
  const newSelected = new Set();
@@ -310,7 +315,7 @@ export function stateReducer(state, action) {
310
315
  return Object.assign(Object.assign({}, state), { selectedIds: Array.from(newSelected), isAllSelected: state.isFullSelectionMode ? false : undefined });
311
316
  }
312
317
  case StateActionType.ToggleValueForAllSelected: {
313
- const currentEl = state.groupsMap[ENTIRE_ORGANIZATION_GROUP_ID];
318
+ const currentEl = state.groupsMap[state.rootId];
314
319
  const newSelected = new Set();
315
320
  state.isAllSelected && ((currentEl === null || currentEl === void 0 ? void 0 : currentEl.children) || []).forEach(el => {
316
321
  if (!newSelected.has(el.id) && el.disabled) {
@@ -339,6 +344,13 @@ export function stateReducer(state, action) {
339
344
  childrenForDeselect.forEach(childId => newSelected.delete(childId));
340
345
  return Object.assign(Object.assign({}, state), { selectedIds: Array.from(newSelected) });
341
346
  }
347
+ case StateActionType.SetFirstParentNodeIsVisible: {
348
+ if (state.firstParentNodeIsVisible === payload) {
349
+ return state;
350
+ }
351
+ const newRootId = getRootId(state.groupsMap, ROOT_GROUP_ID, payload) || ROOT_GROUP_ID;
352
+ return Object.assign(Object.assign({}, state), { rootId: newRootId, firstParentNodeIsVisible: payload });
353
+ }
342
354
  default: {
343
355
  throw Error("Unknown action: " + type);
344
356
  }
@@ -1,4 +1,6 @@
1
1
  import { IDropdownState } from "./stateReducer";
2
2
  import { IDropdownRawItem } from "../types";
3
+ import { IGroupTree, ITypedHash } from "../../groupsFilterRaw/groupsFilterInterfaces";
3
4
  export declare function getChildList(childArr: IDropdownRawItem[] | undefined): IDropdownRawItem[];
4
5
  export declare const updateAllSelectedStateValueBasedOnTotalSelected: (state: IDropdownState, totalSelected: number) => Partial<Pick<IDropdownState, "isAllSelected">>;
6
+ export declare const getRootId: (groupsMap: ITypedHash<IGroupTree>, rootIdKey: string, firstParentNodeIsVisible?: boolean) => string | undefined;
@@ -1,3 +1,4 @@
1
+ import { ENTIRE_ORGANIZATION_GROUP_ID } from "../../groupsFilterRaw/groupsHelper";
1
2
  export function getChildList(childArr) {
2
3
  const list = [];
3
4
  if (!childArr) {
@@ -22,3 +23,20 @@ export const updateAllSelectedStateValueBasedOnTotalSelected = (state, totalSele
22
23
  }
23
24
  return additionalStateUpdates;
24
25
  };
26
+ export const getRootId = (groupsMap, rootIdKey, firstParentNodeIsVisible) => {
27
+ var _a;
28
+ if (Object.keys(groupsMap).length === 0) {
29
+ return undefined;
30
+ }
31
+ const rootGroup = groupsMap[rootIdKey];
32
+ if (((_a = rootGroup === null || rootGroup === void 0 ? void 0 : rootGroup.children) === null || _a === void 0 ? void 0 : _a.length) === 1 && rootGroup.children[0] && groupsMap[rootGroup.children[0].id]) {
33
+ if (firstParentNodeIsVisible) {
34
+ return undefined;
35
+ }
36
+ if (firstParentNodeIsVisible === undefined && rootGroup.children[0].children && rootGroup.children[0].children.length > 0) {
37
+ return rootGroup.children[0].id === ENTIRE_ORGANIZATION_GROUP_ID ? ENTIRE_ORGANIZATION_GROUP_ID : undefined;
38
+ }
39
+ return rootGroup.children[0].children && rootGroup.children[0].children.length > 0 ? rootGroup.children[0].id : undefined;
40
+ }
41
+ return undefined;
42
+ };
@@ -0,0 +1,39 @@
1
+ import { IGroupTree } from "../../groupsFilterRaw/groupsFilterInterfaces";
2
+ export declare const usersArr: {
3
+ id: string;
4
+ name: string;
5
+ firstName: string;
6
+ lastName: string;
7
+ }[];
8
+ export declare const usersMap: {
9
+ b4: {
10
+ id: string;
11
+ name: string;
12
+ firstName: string;
13
+ lastName: string;
14
+ parent: IGroupTree | undefined;
15
+ children: IGroupTree[];
16
+ };
17
+ b6: {
18
+ id: string;
19
+ name: string;
20
+ firstName: string;
21
+ lastName: string;
22
+ parent: IGroupTree | undefined;
23
+ children: IGroupTree[];
24
+ };
25
+ b12: {
26
+ id: string;
27
+ name: string;
28
+ firstName: string;
29
+ lastName: string;
30
+ parent: IGroupTree | undefined;
31
+ children: IGroupTree[];
32
+ };
33
+ zen_dropdown_root_group_id: {
34
+ id: string;
35
+ name: string;
36
+ parent: IGroupTree | undefined;
37
+ children: IGroupTree[];
38
+ };
39
+ };
@@ -0,0 +1,71 @@
1
+ import { ROOT_GROUP_ID } from "./stateReducer";
2
+ export const usersArr = [
3
+ {
4
+ id: "b4",
5
+ name: "atticuspinch@gmail.com",
6
+ firstName: "Atticus",
7
+ lastName: "Pinch"
8
+ },
9
+ {
10
+ id: "b6",
11
+ name: "jeanlouisepinch@gmail.com",
12
+ firstName: "Jean Louise",
13
+ lastName: "Pinch"
14
+ },
15
+ {
16
+ id: "b12",
17
+ name: "booadley@gmail.com",
18
+ firstName: "Boo",
19
+ lastName: "Adley"
20
+ }
21
+ ];
22
+ const rootNode = {
23
+ id: "root",
24
+ name: "",
25
+ parent: undefined,
26
+ children: []
27
+ };
28
+ const zenDropdownRootGroup = {
29
+ id: ROOT_GROUP_ID,
30
+ name: "",
31
+ parent: undefined,
32
+ children: []
33
+ };
34
+ const childB4 = {
35
+ id: "b4",
36
+ name: "atticuspinch@gmail.com",
37
+ firstName: "Atticus",
38
+ lastName: "Pinch",
39
+ parent: undefined,
40
+ children: []
41
+ };
42
+ const childB6 = {
43
+ id: "b6",
44
+ name: "jeanlouisepinch@gmail.com",
45
+ firstName: "Jean Louise",
46
+ lastName: "Pinch",
47
+ parent: undefined,
48
+ children: []
49
+ };
50
+ const childB12 = {
51
+ id: "b12",
52
+ name: "booadley@gmail.com",
53
+ firstName: "Boo",
54
+ lastName: "Adley",
55
+ parent: undefined,
56
+ children: []
57
+ };
58
+ rootNode.children = [zenDropdownRootGroup];
59
+ // Zen Group -> Company
60
+ zenDropdownRootGroup.children = [childB4, childB6, childB12];
61
+ // Setting parents
62
+ zenDropdownRootGroup.parent = rootNode;
63
+ childB4.parent = zenDropdownRootGroup;
64
+ childB6.parent = zenDropdownRootGroup;
65
+ childB12.parent = zenDropdownRootGroup;
66
+ export const usersMap = {
67
+ b4: childB4,
68
+ b6: childB6,
69
+ b12: childB12,
70
+ [ROOT_GROUP_ID]: zenDropdownRootGroup
71
+ };
@@ -59,6 +59,7 @@ interface IDropdownBase extends IChipsParent {
59
59
  setChecked?: (value: boolean) => void;
60
60
  fetchState?: IFetchDropdownState;
61
61
  mobileSheetStackingClassName?: string;
62
+ firstParentNodeIsVisible?: boolean;
62
63
  }
63
64
  interface IDropdownBaseDefault {
64
65
  disabled?: boolean;