@geotab/zenith 3.1.1-beta.6 → 3.2.0-beta.1

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 (434) 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 +173 -59
  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/components/filtersSidePanelDropdown.js +2 -2
  73. package/dist/filters/filters.js +445 -268
  74. package/dist/filtersBar/components/filtersBarPeriodPicker/getRangeOption.js +729 -272
  75. package/dist/filtersBar/components/resetComponentButton.js +45 -5
  76. package/dist/filtersBar/filtersBarActions/filtersBarActions.js +126 -15
  77. package/dist/filtersBar/filtersBarSidePanel/components/filtersBarSidePanelRadioGroup/filtersBarSidePanelRadioGroup.js +2 -2
  78. package/dist/filtersBar/filtersBarSidePanel/components/filtersBarSidePanelRange/filtersBarSidePanelRange.js +155 -49
  79. package/dist/filtersBar/filtersBarSidePanel/filtersBarSidePanel.js +360 -104
  80. package/dist/filtersBar/filtersContainer/filtersContainer.js +204 -134
  81. package/dist/formField/components/formFieldWithLabel.d.ts +2 -1
  82. package/dist/formField/components/formFieldWithLabel.js +3 -2
  83. package/dist/formField/components/formFieldWithoutLabel.d.ts +2 -1
  84. package/dist/formField/components/formFieldWithoutLabel.js +3 -3
  85. package/dist/formField/components/trailingComponent.d.ts +8 -0
  86. package/dist/formField/components/trailingComponent.js +11 -0
  87. package/dist/formField/formField.js +26 -11
  88. package/dist/formField/hooks/useError.js +100 -36
  89. package/dist/formGroup/components/reviewListToggle/reviewListToggle.js +72 -7
  90. package/dist/formGroup/hooks/useToggle.js +37 -11
  91. package/dist/formGroup/utils/getControls.js +8 -7
  92. package/dist/formLayout/hooks/useError.js +55 -15
  93. package/dist/formLayout/hooks/useFormButtons.js +128 -27
  94. package/dist/formSection/components/formSectionModal.js +1 -1
  95. package/dist/formSection/formSection.js +1 -1
  96. package/dist/formSection/hooks/useError.js +70 -22
  97. package/dist/formStepper/components/formStep.js +65 -10
  98. package/dist/formStepper/formStepper.js +129 -33
  99. package/dist/formStepperButtons/formStepperButtons.js +184 -38
  100. package/dist/groupsFilter/groupsHelper.d.ts +1 -1
  101. package/dist/groupsFilterRaw/groupsFilterAdjustmentState.js +162 -17
  102. package/dist/groupsFilterRaw/groupsFilterBox.js +137 -32
  103. package/dist/groupsFilterRaw/groupsFilterCommon.js +75 -8
  104. package/dist/groupsFilterRaw/groupsFilterCurrentlySelectedState.js +184 -25
  105. package/dist/groupsFilterRaw/groupsFilterHelper.d.ts +2 -1
  106. package/dist/groupsFilterRaw/groupsFilterHelper.js +284 -168
  107. package/dist/groupsFilterRaw/groupsFilterInitialState.js +266 -18
  108. package/dist/groupsFilterRaw/groupsFilterMenu.js +124 -9
  109. package/dist/groupsFilterRaw/groupsFilterRaw.d.ts +1 -0
  110. package/dist/groupsFilterRaw/groupsFilterRaw.js +816 -308
  111. package/dist/groupsFilterRaw/groupsFilterTestData.d.ts +155 -2
  112. package/dist/groupsFilterRaw/groupsFilterTestData.js +153 -58
  113. package/dist/groupsFilterRaw/groupsFilterTrigger.js +139 -35
  114. package/dist/groupsFilterRaw/groupsHelper.js +739 -208
  115. package/dist/groupsFilterRaw/stateReducer/stateReducerHelper.js +3 -1
  116. package/dist/groupsFilterRaw/types.d.ts +1 -0
  117. package/dist/header/components/collapsedItemsControl/collapsedItemsControl.js +107 -52
  118. package/dist/header/components/mobileFilterControl/mobileFilterControl.js +62 -9
  119. package/dist/header/components/mobileSearchControl/mobileSearchControl.js +119 -14
  120. package/dist/header/headerBack.js +64 -20
  121. package/dist/index.css +116 -74
  122. package/dist/index.d.ts +1 -0
  123. package/dist/index.js +4 -1
  124. package/dist/list/itemData/itemDataInternal.js +216 -51
  125. package/dist/list/listItem/listItem.js +168 -55
  126. package/dist/menu/components/menuErrorItem.js +33 -5
  127. package/dist/mobileSheet/mobileSheet.js +195 -69
  128. package/dist/modal/modal.js +300 -142
  129. package/dist/nav/nav.js +1 -1
  130. package/dist/nav/navFooter/navFooter.js +82 -39
  131. package/dist/nav/navFooter/navFooterAction/navFooterAction.js +52 -13
  132. package/dist/nav/navHeader/navHeader.js +86 -36
  133. package/dist/nav/navHeader/navHeaderSearch/navHeaderSearch.js +88 -29
  134. package/dist/nav/navItem/navItem.d.ts +3 -3
  135. package/dist/nav/navItem/navItem.js +35 -33
  136. package/dist/nav/navMobileBar/navMobileBar.js +67 -21
  137. package/dist/notification/notification.js +124 -21
  138. package/dist/pagination/paginationArrow.js +81 -11
  139. package/dist/pagination/paginationText/paginationText.js +45 -11
  140. package/dist/pill/components/pillNonActionable/pillNonActionable.js +93 -24
  141. package/dist/pillBox/components/pillBoxItem.js +52 -9
  142. package/dist/pillBox/pillBox.js +121 -20
  143. package/dist/pillExpandable/pillExpandable.js +333 -139
  144. package/dist/rangeRaw/rangeRaw.js +486 -141
  145. package/dist/rangeRaw/utils/rangeHelper.js +209 -39
  146. package/dist/searchInputRaw/searchInputRaw.js +180 -65
  147. package/dist/skeleton/skeleton.js +51 -6
  148. package/dist/sortControl/sortControl.js +152 -42
  149. package/dist/stepperRaw/stepperRaw.js +116 -42
  150. package/dist/summary/summary.js +94 -8
  151. package/dist/table/actions/actionsMenu.js +171 -78
  152. package/dist/table/flexible/columnSettings.js +80 -10
  153. package/dist/table/flexible/columnsList.js +110 -43
  154. package/dist/table/flexible/columnsPopup.js +77 -20
  155. package/dist/table/nested/useNestedRows.js +167 -77
  156. package/dist/table/selectable/selectableHeader.js +180 -41
  157. package/dist/table/selectable/useSelectableRows.js +270 -191
  158. package/dist/table/sortable/sortableHeader.js +153 -75
  159. package/dist/tabs/tabs.js +227 -118
  160. package/dist/timePickerRaw/timePickerRaw.js +278 -58
  161. package/dist/toastRaw/toastRaw.js +138 -32
  162. package/dist/toggleButton/toggleButton.d.ts +0 -1
  163. package/dist/toggleButtonRaw/toggleButtonRaw.d.ts +1 -0
  164. package/dist/toggleButtonRaw/toggleButtonRaw.js +146 -40
  165. package/dist/utils/formatDate.js +1001 -117
  166. package/{esm/utils/localization/translations/cs-json.js → dist/utils/localization/translations/cs.json} +11 -12
  167. package/{esm/utils/localization/translations/da-DK-json.js → dist/utils/localization/translations/da-DK.json} +31 -23
  168. package/{esm/utils/localization/translations/de-json.js → dist/utils/localization/translations/de.json} +12 -13
  169. package/dist/utils/localization/translations/en.json +308 -0
  170. package/{esm/utils/localization/translations/es-json.js → dist/utils/localization/translations/es.json} +11 -12
  171. package/{esm/utils/localization/translations/fi-FI-json.js → dist/utils/localization/translations/fi-FI.json} +31 -23
  172. package/{esm/utils/localization/translations/fr-FR-json.js → dist/utils/localization/translations/fr-FR.json} +12 -12
  173. package/{esm/utils/localization/translations/fr-json.js → dist/utils/localization/translations/fr.json} +11 -12
  174. package/{esm/utils/localization/translations/hu-HU-json.js → dist/utils/localization/translations/hu-HU.json} +31 -23
  175. package/{esm/utils/localization/translations/id-json.js → dist/utils/localization/translations/id.json} +11 -13
  176. package/{esm/utils/localization/translations/it-json.js → dist/utils/localization/translations/it.json} +11 -12
  177. package/{esm/utils/localization/translations/ja-json.js → dist/utils/localization/translations/ja.json} +11 -12
  178. package/{esm/utils/localization/translations/ko-KR-json.js → dist/utils/localization/translations/ko-KR.json} +24 -23
  179. package/{esm/utils/localization/translations/ms-json.js → dist/utils/localization/translations/ms.json} +11 -12
  180. package/{esm/utils/localization/translations/nb-NO-json.js → dist/utils/localization/translations/nb-NO.json} +31 -23
  181. package/{esm/utils/localization/translations/nl-json.js → dist/utils/localization/translations/nl.json} +11 -12
  182. package/{esm/utils/localization/translations/pl-json.js → dist/utils/localization/translations/pl.json} +11 -12
  183. package/{esm/utils/localization/translations/pt-BR-json.js → dist/utils/localization/translations/pt-BR.json} +11 -12
  184. package/{esm/utils/localization/translations/sk-SK-json.js → dist/utils/localization/translations/sk-SK.json} +31 -23
  185. package/{esm/utils/localization/translations/sv-json.js → dist/utils/localization/translations/sv.json} +11 -12
  186. package/{esm/utils/localization/translations/th-json.js → dist/utils/localization/translations/th.json} +11 -12
  187. package/{esm/utils/localization/translations/tr-json.js → dist/utils/localization/translations/tr.json} +11 -12
  188. package/{esm/utils/localization/translations/zh-Hans-json.js → dist/utils/localization/translations/zh-Hans.json} +11 -12
  189. package/{esm/utils/localization/translations/zh-TW-json.js → dist/utils/localization/translations/zh-TW.json} +11 -23
  190. package/dist/utils/localization/translationsDictionary.d.ts +2 -0
  191. package/dist/utils/localization/translationsDictionary.js +63 -0
  192. package/dist/utils/localization/useLanguage.js +2 -74
  193. package/esm/advancedGroupsFilter/advancedGroupsFilter.js +130 -29
  194. package/esm/advancedGroupsFilter/advancedGroupsFilterForm.js +133 -33
  195. package/esm/advancedGroupsFilter/advancedGroupsFilterFormSection.js +317 -65
  196. package/esm/advancedGroupsFilter/advancedGroupsFilterSectionTooltip.d.ts +0 -1
  197. package/esm/advancedGroupsFilter/advancedGroupsFilterSectionTooltip.js +77 -8
  198. package/esm/alertRaw/alertRaw.js +165 -51
  199. package/esm/banner/bannerMultipLine.js +121 -20
  200. package/esm/banner/bannerSingleLine.js +100 -13
  201. package/esm/betaPill/betaPill.js +105 -19
  202. package/esm/bookmark/bookmark.js +89 -27
  203. package/esm/bulkEditControl/bulkEditControl.js +161 -33
  204. package/esm/calendar/calendar.js +937 -272
  205. package/esm/calendar/calendarUtils.js +151 -84
  206. package/esm/card/card.js +233 -101
  207. package/esm/chart/accessibleChart/accessibleChartNarrative.js +642 -554
  208. package/esm/chart/accessibleChart/accessibleChartTable.js +239 -85
  209. package/esm/chart/chart.js +30 -20
  210. package/esm/chart/chartAxis/chartAxis.js +79 -6
  211. package/esm/checkboxListWithAction/checkboxListWithAction.js +218 -68
  212. package/esm/chip/chip.js +189 -90
  213. package/esm/columnsSelector/columnsSelector.js +91 -11
  214. package/esm/columnsSelector/columnsTab/columnsTab.js +53 -14
  215. package/esm/columnsSelector/columnsTabGroup/columnsTabGroup.js +75 -33
  216. package/esm/comboboxSelected/comboboxSelected.js +1 -3
  217. package/esm/dataFeed/feedExpandControl/feedExpandControl.js +21 -9
  218. package/esm/dataGrid/columns/checkboxColumn/checkboxHeaderCell.js +86 -10
  219. package/esm/dataGrid/dataGrid.js +221 -116
  220. package/esm/dataGrid/emptySearchList/emptySearchList.js +50 -8
  221. package/esm/dataGrid/entitiesListActions/actions/columnsListButton.js +45 -6
  222. package/esm/dataGrid/entitiesListActions/actions/fullscreenButton.js +58 -17
  223. package/esm/dataGrid/withFlexibleColumns/components/columnSettings.js +78 -9
  224. package/esm/dataGrid/withFlexibleColumns/components/columnSettingsSidePanel.js +44 -15
  225. package/esm/dataGrid/withSelectableRows/components/bulkActions/bulkActions.js +217 -31
  226. package/esm/dataGrid/withSelectableRows/withSelectableRows.js +280 -212
  227. package/esm/dataGrid/withSortableColumns/columns/sortableColumnWrapper.js +172 -94
  228. package/esm/dateInputInner/dateInputInner.js +785 -475
  229. package/esm/dateInputInner/dateInputInnerControlBlock.js +119 -21
  230. package/esm/dateInputRaw/dateInputRaw.js +309 -103
  231. package/esm/dateInputRaw/utils/getLabel.js +32 -6
  232. package/esm/dateRangeInner/dateRangeInner.js +167 -58
  233. package/esm/dateRangeRaw/dateRangeRaw.js +595 -238
  234. package/esm/dateRangeRaw/utils/dateRangeUtils.js +622 -239
  235. package/esm/dateSelectionWrapper/dateSelectionWrapper.js +146 -13
  236. package/esm/dialog/dialogContent.js +117 -39
  237. package/esm/dropdownRaw/dropdownHelper.d.ts +2 -2
  238. package/esm/dropdownRaw/dropdownHelper.js +10 -10
  239. package/esm/dropdownRaw/dropdownList.js +412 -56
  240. package/esm/dropdownRaw/dropdownPopup.js +212 -19
  241. package/esm/dropdownRaw/dropdownRaw.js +862 -507
  242. package/esm/dropdownRaw/dropdownSearchableTrigger.js +217 -45
  243. package/esm/dropdownRaw/stateReducer/stateAction.d.ts +5 -1
  244. package/esm/dropdownRaw/stateReducer/stateActionType.d.ts +2 -1
  245. package/esm/dropdownRaw/stateReducer/stateActionType.js +1 -0
  246. package/esm/dropdownRaw/stateReducer/stateReducer.d.ts +6 -1
  247. package/esm/dropdownRaw/stateReducer/stateReducer.js +24 -12
  248. package/esm/dropdownRaw/stateReducer/stateReducerHelper.d.ts +2 -0
  249. package/esm/dropdownRaw/stateReducer/stateReducerHelper.js +18 -0
  250. package/esm/dropdownRaw/stateReducer/stateReducerTestData.d.ts +39 -0
  251. package/esm/dropdownRaw/stateReducer/stateReducerTestData.js +71 -0
  252. package/esm/dropdownRaw/types.d.ts +1 -0
  253. package/esm/favoriteButton/favoriteButton.js +53 -9
  254. package/esm/filters/components/filtersContainer.js +141 -61
  255. package/esm/filters/components/filtersEmptySelectedList.js +24 -3
  256. package/esm/filters/components/filtersSaveModal.js +134 -41
  257. package/esm/filters/components/filtersSavedChipComponent.js +312 -107
  258. package/esm/filters/components/filtersSearchItemData.js +121 -46
  259. package/esm/filters/components/filtersSearchList.js +375 -178
  260. package/esm/filters/components/filtersSelect.js +122 -60
  261. package/esm/filters/components/filtersSelectListItem.js +119 -12
  262. package/esm/filters/components/filtersSidePanel.js +504 -177
  263. package/esm/filters/components/filtersSidePanelDropdown.js +2 -2
  264. package/esm/filters/filters.js +435 -265
  265. package/esm/filtersBar/components/filtersBarPeriodPicker/getRangeOption.js +722 -270
  266. package/esm/filtersBar/components/resetComponentButton.js +39 -4
  267. package/esm/filtersBar/filtersBarActions/filtersBarActions.js +120 -14
  268. package/esm/filtersBar/filtersBarSidePanel/components/filtersBarSidePanelRadioGroup/filtersBarSidePanelRadioGroup.js +2 -2
  269. package/esm/filtersBar/filtersBarSidePanel/components/filtersBarSidePanelRange/filtersBarSidePanelRange.js +149 -48
  270. package/esm/filtersBar/filtersBarSidePanel/filtersBarSidePanel.js +354 -103
  271. package/esm/filtersBar/filtersContainer/filtersContainer.js +198 -133
  272. package/esm/formField/components/formFieldWithLabel.d.ts +2 -1
  273. package/esm/formField/components/formFieldWithLabel.js +3 -2
  274. package/esm/formField/components/formFieldWithoutLabel.d.ts +2 -1
  275. package/esm/formField/components/formFieldWithoutLabel.js +3 -3
  276. package/esm/formField/components/trailingComponent.d.ts +8 -0
  277. package/esm/formField/components/trailingComponent.js +7 -0
  278. package/esm/formField/formField.js +27 -12
  279. package/esm/formField/hooks/useError.js +94 -35
  280. package/esm/formGroup/components/reviewListToggle/reviewListToggle.js +66 -6
  281. package/esm/formGroup/hooks/useToggle.js +31 -10
  282. package/esm/formGroup/utils/getControls.js +8 -7
  283. package/esm/formLayout/hooks/useError.js +49 -14
  284. package/esm/formLayout/hooks/useFormButtons.js +122 -26
  285. package/esm/formSection/components/formSectionModal.js +1 -1
  286. package/esm/formSection/formSection.js +1 -1
  287. package/esm/formSection/hooks/useError.js +64 -21
  288. package/esm/formStepper/components/formStep.js +59 -9
  289. package/esm/formStepper/formStepper.js +123 -32
  290. package/esm/formStepperButtons/formStepperButtons.js +178 -37
  291. package/esm/groupsFilter/groupsHelper.d.ts +1 -1
  292. package/esm/groupsFilterRaw/groupsFilterAdjustmentState.js +152 -14
  293. package/esm/groupsFilterRaw/groupsFilterBox.js +131 -31
  294. package/esm/groupsFilterRaw/groupsFilterCommon.js +69 -7
  295. package/esm/groupsFilterRaw/groupsFilterCurrentlySelectedState.js +178 -24
  296. package/esm/groupsFilterRaw/groupsFilterHelper.d.ts +2 -1
  297. package/esm/groupsFilterRaw/groupsFilterHelper.js +279 -168
  298. package/esm/groupsFilterRaw/groupsFilterInitialState.js +260 -17
  299. package/esm/groupsFilterRaw/groupsFilterMenu.js +118 -8
  300. package/esm/groupsFilterRaw/groupsFilterRaw.d.ts +1 -0
  301. package/esm/groupsFilterRaw/groupsFilterRaw.js +811 -308
  302. package/esm/groupsFilterRaw/groupsFilterTestData.d.ts +155 -2
  303. package/esm/groupsFilterRaw/groupsFilterTestData.js +152 -57
  304. package/esm/groupsFilterRaw/groupsFilterTrigger.js +133 -34
  305. package/esm/groupsFilterRaw/groupsHelper.js +733 -207
  306. package/esm/groupsFilterRaw/stateReducer/stateReducerHelper.js +3 -1
  307. package/esm/groupsFilterRaw/types.d.ts +1 -0
  308. package/esm/header/components/collapsedItemsControl/collapsedItemsControl.js +101 -51
  309. package/esm/header/components/mobileFilterControl/mobileFilterControl.js +56 -8
  310. package/esm/header/components/mobileSearchControl/mobileSearchControl.js +113 -13
  311. package/esm/header/headerBack.js +58 -19
  312. package/esm/index.d.ts +1 -0
  313. package/esm/index.js +1 -0
  314. package/esm/list/itemData/itemDataInternal.js +210 -50
  315. package/esm/list/listItem/listItem.js +162 -54
  316. package/esm/menu/components/menuErrorItem.js +27 -4
  317. package/esm/mobileSheet/mobileSheet.js +189 -68
  318. package/esm/modal/modal.js +265 -120
  319. package/esm/nav/nav.js +1 -1
  320. package/esm/nav/navFooter/navFooter.js +76 -38
  321. package/esm/nav/navFooter/navFooterAction/navFooterAction.js +46 -12
  322. package/esm/nav/navHeader/navHeader.js +80 -35
  323. package/esm/nav/navHeader/navHeaderSearch/navHeaderSearch.js +82 -28
  324. package/esm/nav/navItem/navItem.d.ts +3 -3
  325. package/esm/nav/navItem/navItem.js +35 -33
  326. package/esm/nav/navMobileBar/navMobileBar.js +61 -20
  327. package/esm/notification/notification.js +114 -18
  328. package/esm/pagination/paginationArrow.js +75 -10
  329. package/esm/pagination/paginationText/paginationText.js +39 -10
  330. package/esm/pill/components/pillNonActionable/pillNonActionable.js +87 -23
  331. package/esm/pillBox/components/pillBoxItem.js +46 -8
  332. package/esm/pillBox/pillBox.js +115 -19
  333. package/esm/pillExpandable/pillExpandable.js +327 -138
  334. package/esm/rangeRaw/rangeRaw.js +480 -140
  335. package/esm/rangeRaw/utils/rangeHelper.js +203 -38
  336. package/esm/searchInputRaw/searchInputRaw.js +145 -43
  337. package/esm/skeleton/skeleton.js +45 -5
  338. package/esm/sortControl/sortControl.js +146 -41
  339. package/esm/stepperRaw/stepperRaw.js +112 -41
  340. package/esm/storybookHelpers/dataGridWithDifferentCellOptions/components/EntitiesListAction.js +178 -19
  341. package/esm/summary/summary.js +88 -7
  342. package/esm/table/actions/actionsMenu.js +165 -77
  343. package/esm/table/flexible/columnSettings.js +74 -9
  344. package/esm/table/flexible/columnsList.js +104 -42
  345. package/esm/table/flexible/columnsPopup.js +71 -19
  346. package/esm/table/nested/useNestedRows.js +161 -76
  347. package/esm/table/selectable/selectableHeader.js +174 -40
  348. package/esm/table/selectable/useSelectableRows.js +264 -190
  349. package/esm/table/sortable/sortableHeader.js +147 -74
  350. package/esm/tabs/tabs.js +221 -117
  351. package/esm/timePickerRaw/timePickerRaw.js +272 -57
  352. package/esm/toastRaw/toastRaw.js +132 -31
  353. package/esm/toggleButton/toggleButton.d.ts +0 -1
  354. package/esm/toggleButtonRaw/toggleButtonRaw.d.ts +1 -0
  355. package/esm/toggleButtonRaw/toggleButtonRaw.js +111 -18
  356. package/esm/utils/formatDate.js +995 -116
  357. package/{dist/utils/localization/translations/cs-json.js → esm/utils/localization/translations/cs.json} +11 -15
  358. package/{dist/utils/localization/translations/da-DK-json.js → esm/utils/localization/translations/da-DK.json} +31 -26
  359. package/{dist/utils/localization/translations/de-json.js → esm/utils/localization/translations/de.json} +12 -16
  360. package/esm/utils/localization/translations/en.json +308 -0
  361. package/{dist/utils/localization/translations/es-json.js → esm/utils/localization/translations/es.json} +11 -15
  362. package/{dist/utils/localization/translations/fi-FI-json.js → esm/utils/localization/translations/fi-FI.json} +31 -26
  363. package/{dist/utils/localization/translations/fr-FR-json.js → esm/utils/localization/translations/fr-FR.json} +12 -15
  364. package/{dist/utils/localization/translations/fr-json.js → esm/utils/localization/translations/fr.json} +11 -15
  365. package/{dist/utils/localization/translations/hu-HU-json.js → esm/utils/localization/translations/hu-HU.json} +31 -26
  366. package/{dist/utils/localization/translations/id-json.js → esm/utils/localization/translations/id.json} +11 -16
  367. package/{dist/utils/localization/translations/it-json.js → esm/utils/localization/translations/it.json} +11 -15
  368. package/{dist/utils/localization/translations/ja-json.js → esm/utils/localization/translations/ja.json} +11 -15
  369. package/{dist/utils/localization/translations/ko-KR-json.js → esm/utils/localization/translations/ko-KR.json} +24 -26
  370. package/{dist/utils/localization/translations/ms-json.js → esm/utils/localization/translations/ms.json} +11 -15
  371. package/{dist/utils/localization/translations/nb-NO-json.js → esm/utils/localization/translations/nb-NO.json} +31 -26
  372. package/{dist/utils/localization/translations/nl-json.js → esm/utils/localization/translations/nl.json} +11 -15
  373. package/{dist/utils/localization/translations/pl-json.js → esm/utils/localization/translations/pl.json} +11 -15
  374. package/{dist/utils/localization/translations/pt-BR-json.js → esm/utils/localization/translations/pt-BR.json} +11 -15
  375. package/{dist/utils/localization/translations/sk-SK-json.js → esm/utils/localization/translations/sk-SK.json} +31 -26
  376. package/{dist/utils/localization/translations/sv-json.js → esm/utils/localization/translations/sv.json} +11 -15
  377. package/{dist/utils/localization/translations/th-json.js → esm/utils/localization/translations/th.json} +11 -15
  378. package/{dist/utils/localization/translations/tr-json.js → esm/utils/localization/translations/tr.json} +11 -15
  379. package/{dist/utils/localization/translations/zh-Hans-json.js → esm/utils/localization/translations/zh-Hans.json} +11 -15
  380. package/{dist/utils/localization/translations/zh-TW-json.js → esm/utils/localization/translations/zh-TW.json} +11 -26
  381. package/esm/utils/localization/translationsDictionary.d.ts +2 -0
  382. package/esm/utils/localization/translationsDictionary.js +59 -0
  383. package/esm/utils/localization/useLanguage.js +1 -50
  384. package/package.json +19 -12
  385. package/dist/utils/localization/translations/cs-json.d.ts +0 -251
  386. package/dist/utils/localization/translations/da-DK-json.d.ts +0 -252
  387. package/dist/utils/localization/translations/de-json.d.ts +0 -251
  388. package/dist/utils/localization/translations/en-json.d.ts +0 -314
  389. package/dist/utils/localization/translations/en-json.js +0 -317
  390. package/dist/utils/localization/translations/es-json.d.ts +0 -251
  391. package/dist/utils/localization/translations/fi-FI-json.d.ts +0 -252
  392. package/dist/utils/localization/translations/fr-FR-json.d.ts +0 -250
  393. package/dist/utils/localization/translations/fr-json.d.ts +0 -251
  394. package/dist/utils/localization/translations/hu-HU-json.d.ts +0 -252
  395. package/dist/utils/localization/translations/id-json.d.ts +0 -252
  396. package/dist/utils/localization/translations/it-json.d.ts +0 -251
  397. package/dist/utils/localization/translations/ja-json.d.ts +0 -251
  398. package/dist/utils/localization/translations/ko-KR-json.d.ts +0 -258
  399. package/dist/utils/localization/translations/ms-json.d.ts +0 -251
  400. package/dist/utils/localization/translations/nb-NO-json.d.ts +0 -252
  401. package/dist/utils/localization/translations/nl-json.d.ts +0 -251
  402. package/dist/utils/localization/translations/pl-json.d.ts +0 -251
  403. package/dist/utils/localization/translations/pt-BR-json.d.ts +0 -251
  404. package/dist/utils/localization/translations/sk-SK-json.d.ts +0 -251
  405. package/dist/utils/localization/translations/sv-json.d.ts +0 -251
  406. package/dist/utils/localization/translations/th-json.d.ts +0 -251
  407. package/dist/utils/localization/translations/tr-json.d.ts +0 -251
  408. package/dist/utils/localization/translations/zh-Hans-json.d.ts +0 -251
  409. package/dist/utils/localization/translations/zh-TW-json.d.ts +0 -271
  410. package/esm/utils/localization/translations/cs-json.d.ts +0 -251
  411. package/esm/utils/localization/translations/da-DK-json.d.ts +0 -252
  412. package/esm/utils/localization/translations/de-json.d.ts +0 -251
  413. package/esm/utils/localization/translations/en-json.d.ts +0 -314
  414. package/esm/utils/localization/translations/en-json.js +0 -314
  415. package/esm/utils/localization/translations/es-json.d.ts +0 -251
  416. package/esm/utils/localization/translations/fi-FI-json.d.ts +0 -252
  417. package/esm/utils/localization/translations/fr-FR-json.d.ts +0 -250
  418. package/esm/utils/localization/translations/fr-json.d.ts +0 -251
  419. package/esm/utils/localization/translations/hu-HU-json.d.ts +0 -252
  420. package/esm/utils/localization/translations/id-json.d.ts +0 -252
  421. package/esm/utils/localization/translations/it-json.d.ts +0 -251
  422. package/esm/utils/localization/translations/ja-json.d.ts +0 -251
  423. package/esm/utils/localization/translations/ko-KR-json.d.ts +0 -258
  424. package/esm/utils/localization/translations/ms-json.d.ts +0 -251
  425. package/esm/utils/localization/translations/nb-NO-json.d.ts +0 -252
  426. package/esm/utils/localization/translations/nl-json.d.ts +0 -251
  427. package/esm/utils/localization/translations/pl-json.d.ts +0 -251
  428. package/esm/utils/localization/translations/pt-BR-json.d.ts +0 -251
  429. package/esm/utils/localization/translations/sk-SK-json.d.ts +0 -251
  430. package/esm/utils/localization/translations/sv-json.d.ts +0 -251
  431. package/esm/utils/localization/translations/th-json.d.ts +0 -251
  432. package/esm/utils/localization/translations/tr-json.d.ts +0 -251
  433. package/esm/utils/localization/translations/zh-Hans-json.d.ts +0 -251
  434. package/esm/utils/localization/translations/zh-TW-json.d.ts +0 -271
package/dist/card/card.js CHANGED
@@ -1,32 +1,70 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
2
+
3
+ const {
4
+ injectString
5
+ } = require("../utils/localization/translationsDictionary");
6
+ var __createBinding = this && this.__createBinding || (Object.create ? function (o, m, k, k2) {
7
+ if (k2 === undefined) k2 = k;
8
+ var desc = Object.getOwnPropertyDescriptor(m, k);
9
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
10
+ desc = {
11
+ enumerable: true,
12
+ get: function () {
13
+ return m[k];
14
+ }
15
+ };
16
+ }
17
+ Object.defineProperty(o, k2, desc);
18
+ } : function (o, m, k, k2) {
19
+ if (k2 === undefined) k2 = k;
20
+ o[k2] = m[k];
21
+ });
22
+ var __setModuleDefault = this && this.__setModuleDefault || (Object.create ? function (o, v) {
23
+ Object.defineProperty(o, "default", {
24
+ enumerable: true,
25
+ value: v
26
+ });
27
+ } : function (o, v) {
28
+ o["default"] = v;
17
29
  });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
30
+ var __importStar = this && this.__importStar || function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
34
+ __setModuleDefault(result, mod);
35
+ return result;
24
36
  };
25
- Object.defineProperty(exports, "__esModule", { value: true });
37
+ Object.defineProperty(exports, "__esModule", {
38
+ value: true
39
+ });
26
40
  exports.TRANSLATIONS = exports.Card = exports.DEFAULT_CARD_SIZE = void 0;
27
41
  const jsx_runtime_1 = require("react/jsx-runtime");
28
42
  /* eslint-disable @typescript-eslint/no-unsafe-argument */
29
43
  /* eslint-disable react/prop-types */
44
+ injectString("cs", "Actions", "Akce");
45
+ injectString("da-DK", "Actions", "Handlinger");
46
+ injectString("de", "Actions", "Aktionen");
47
+ injectString("en", "Actions", "Actions");
48
+ injectString("es", "Actions", "Acciones");
49
+ injectString("fi-FI", "Actions", "Toimet");
50
+ injectString("fr", "Actions", "Actions");
51
+ injectString("fr-FR", "Actions", "Actions");
52
+ injectString("hu-HU", "Actions", "M\u0171veletek");
53
+ injectString("id", "Actions", "Tindakan");
54
+ injectString("it", "Actions", "Azioni");
55
+ injectString("ja", "Actions", "\u30A2\u30AF\u30B7\u30E7\u30F3");
56
+ injectString("ko-KR", "Actions", "\uC870\uCE58");
57
+ injectString("ms", "Actions", "Tindakan");
58
+ injectString("nb-NO", "Actions", "Handlinger");
59
+ injectString("nl", "Actions", "Acties");
60
+ injectString("pl", "Actions", "Dzia\u0142ania");
61
+ injectString("pt-BR", "Actions", "A\xE7\xF5es");
62
+ injectString("sk-SK", "Actions", "Akcie");
63
+ injectString("sv", "Actions", "\xC5tg\xE4rder");
64
+ injectString("th", "Actions", "\u0E01\u0E32\u0E23\u0E14\u0E33\u0E40\u0E19\u0E34\u0E19\u0E01\u0E32\u0E23");
65
+ injectString("tr", "Actions", "Eylemler");
66
+ injectString("zh-Hans", "Actions", "\u64CD\u4F5C");
67
+ injectString("zh-TW", "Actions", "\u52D5\u4F5C");
30
68
  const react_1 = __importStar(require("react"));
31
69
  const cardContainer_1 = require("../cardContainer/cardContainer");
32
70
  const deviceType_1 = require("../commonHelpers/hooks/deviceType");
@@ -57,112 +95,219 @@ const isFormSection_1 = require("../formSection/utils/isFormSection");
57
95
  // import { FormSection } from "../formSection/formSection";
58
96
  exports.DEFAULT_CARD_SIZE = "S";
59
97
  // eslint-disable-next-line @typescript-eslint/naming-convention, react/prop-types
60
- const Card =
98
+ const Card =
61
99
  // eslint-disable-next-line complexity
62
- (props) => {
63
- const { size, children, title, icon, iconType, secondary, status, date, tooltip, className = "", link, target, onClick, cardContentClasses = "", tooltipAlignment, tooltipSize, fullWidth, scrollableContent = true, autoHeight = false, fullHeight = false } = props;
64
- const { translate } = (0, useLanguage_1.useLanguage)();
65
- const [deviceType, setDeviceType] = (0, react_1.useState)(deviceType_1.DeviceType.Mobile);
66
- const [cardSize, setCardSize] = (0, react_1.useState)((0, isAbsoluteSize_1.isAbsoluteSize)(size) ? (0, getContainerSize_1.getContainerSize)(size.width) : (size || exports.DEFAULT_CARD_SIZE));
67
- const isMobile = deviceType === deviceType_1.DeviceType.Mobile;
68
- const containerRef = (0, react_1.useRef)(null);
69
- const headerRef = (0, react_1.useRef)(null);
70
- const titleId = (0, react_1.useId)();
71
- const isDrive = (0, useDrive_1.useDrive)();
72
- const dateDriveClasses = (0, useDriveClassName_1.useDriveClassName)("zen-card__date");
73
- const menuTriggerDriveClasses = (0, useDriveClassName_1.useDriveClassName)("zen-card__menu-trigger");
74
- const fullWidthValue = fullWidth === undefined ? (0, getDefaultFullWidthValue_1.getDefaultFullWidthValue)(isDrive) : fullWidth;
75
- const { isAutoHeight, isScrollable, isFullWidth, isFullHeight } = (0, useCardSizeState_1.useCardSizeState)(deviceType, scrollableContent, fullWidthValue, fullHeight, autoHeight, size || "S");
76
- (0, useDeviceType_1.useDeviceType)(setDeviceType);
77
- (0, useCardSize_1.useCardSize)(setCardSize, containerRef, (0, isAbsoluteSize_1.isAbsoluteSize)(size) ? (0, getContainerSize_1.getContainerSize)(size.width) : (size || "S"));
78
- const { actions, content } = (0, react_1.useMemo)(() => {
79
- if (!children) {
80
- return { actions: [], content: [] };
81
- }
82
- if (Array.isArray(children)) {
83
- const acts = [];
84
- const cnt = [];
85
- react_1.default.Children.forEach(children, (el) => {
86
- if (!el) {
87
- return;
88
- }
89
- if (el.type === exports.Card.Actions) {
90
- const actionChildren = el.props.children;
91
- if (!actionChildren) {
92
- return;
93
- }
94
- if (Array.isArray(actionChildren)) {
95
- acts.push(...actionChildren.filter((child) => (child === null || child === void 0 ? void 0 : child.type) === exports.Card.Button));
96
- return;
97
- }
98
- if (typeof actionChildren === "object" && react_1.default.isValidElement(actionChildren) && actionChildren.type === exports.Card.Button) {
99
- acts.push(actionChildren);
100
- }
101
- }
102
- if (el.type === exports.Card.Content || (0, isFormSection_1.isFormSection)(el)) {
103
- cnt.push(el);
104
- }
105
- });
106
- return { actions: acts, content: cnt };
107
- }
108
- return { actions: [], content: [children] };
109
- }, [children]);
110
- const maxNumberOfActions = (0, getMaxNumberOfActions_1.getMaxNumberOfActions)(cardSize);
111
- const { headerActions, menuActions } = (0, react_1.useMemo)(() => {
112
- const hActions = [];
113
- const mActions = [];
114
- for (let i = 0; i < actions.length; i++) {
115
- if (actions[i].props.inContextMenu || hActions.length >= maxNumberOfActions || isMobile) {
116
- mActions.push(actions[i]);
117
- }
118
- else {
119
- hActions.push(actions[i]);
120
- }
121
- }
122
- return { headerActions: hActions, menuActions: mActions };
123
- }, [actions, isMobile, maxNumberOfActions]);
124
- const menuTrigger = (0, jsx_runtime_1.jsx)(button_1.Button, { className: (0, classNames_1.classNames)(["zen-card__menu-trigger", menuTriggerDriveClasses || ""]), type: "tertiary-black", "aria-label": translate("Actions"), htmlType: "button", children: (0, jsx_runtime_1.jsx)(iconDotVertical_1.IconDotVertical, { size: isDrive ? svgIconSize_1.SvgIconSize.Huge : svgIconSize_1.SvgIconSize.Large }) });
125
- (0, react_1.useEffect)(() => {
126
- if (containerRef.current) {
127
- containerRef.current.setAttribute("role", "region");
128
- containerRef.current.setAttribute("aria-labelledby", titleId);
100
+ props => {
101
+ const {
102
+ size,
103
+ children,
104
+ title,
105
+ icon,
106
+ iconType,
107
+ secondary,
108
+ status,
109
+ date,
110
+ tooltip,
111
+ className = "",
112
+ link,
113
+ target,
114
+ onClick,
115
+ cardContentClasses = "",
116
+ tooltipAlignment,
117
+ tooltipSize,
118
+ fullWidth,
119
+ scrollableContent = true,
120
+ autoHeight = false,
121
+ fullHeight = false
122
+ } = props;
123
+ const {
124
+ translate
125
+ } = (0, useLanguage_1.useLanguage)();
126
+ const [deviceType, setDeviceType] = (0, react_1.useState)(deviceType_1.DeviceType.Mobile);
127
+ const [cardSize, setCardSize] = (0, react_1.useState)((0, isAbsoluteSize_1.isAbsoluteSize)(size) ? (0, getContainerSize_1.getContainerSize)(size.width) : size || exports.DEFAULT_CARD_SIZE);
128
+ const isMobile = deviceType === deviceType_1.DeviceType.Mobile;
129
+ const containerRef = (0, react_1.useRef)(null);
130
+ const headerRef = (0, react_1.useRef)(null);
131
+ const titleId = (0, react_1.useId)();
132
+ const isDrive = (0, useDrive_1.useDrive)();
133
+ const dateDriveClasses = (0, useDriveClassName_1.useDriveClassName)("zen-card__date");
134
+ const menuTriggerDriveClasses = (0, useDriveClassName_1.useDriveClassName)("zen-card__menu-trigger");
135
+ const fullWidthValue = fullWidth === undefined ? (0, getDefaultFullWidthValue_1.getDefaultFullWidthValue)(isDrive) : fullWidth;
136
+ const {
137
+ isAutoHeight,
138
+ isScrollable,
139
+ isFullWidth,
140
+ isFullHeight
141
+ } = (0, useCardSizeState_1.useCardSizeState)(deviceType, scrollableContent, fullWidthValue, fullHeight, autoHeight, size || "S");
142
+ (0, useDeviceType_1.useDeviceType)(setDeviceType);
143
+ (0, useCardSize_1.useCardSize)(setCardSize, containerRef, (0, isAbsoluteSize_1.isAbsoluteSize)(size) ? (0, getContainerSize_1.getContainerSize)(size.width) : size || "S");
144
+ const {
145
+ actions,
146
+ content
147
+ } = (0, react_1.useMemo)(() => {
148
+ if (!children) {
149
+ return {
150
+ actions: [],
151
+ content: []
152
+ };
153
+ }
154
+ if (Array.isArray(children)) {
155
+ const acts = [];
156
+ const cnt = [];
157
+ react_1.default.Children.forEach(children, el => {
158
+ if (!el) {
159
+ return;
129
160
  }
130
- }, [containerRef, titleId]);
131
- const cardContentClassName = (0, react_1.useMemo)(() => (0, classNames_1.classNames)([
132
- "zen-card__content",
133
- isScrollable ? "zen-card__content--overflow-scroll" : "zen-card__content--overflow-hidden",
134
- cardContentClasses
135
- ]), [cardContentClasses, isScrollable]);
136
- const dateClassName = (0, react_1.useMemo)(() => (0, classNames_1.classNames)(["zen-card__date", (isMobile && !isDrive) ? "zen-card__date--mobile" : "", dateDriveClasses !== null && dateDriveClasses !== void 0 ? dateDriveClasses : ""]), [isMobile, isDrive, dateDriveClasses]);
137
- const favoriteButton = (0, react_1.useMemo)(() => {
138
- if (props.onFavoriteChange === undefined) {
139
- return null;
161
+ if (el.type === exports.Card.Actions) {
162
+ const actionChildren = el.props.children;
163
+ if (!actionChildren) {
164
+ return;
165
+ }
166
+ if (Array.isArray(actionChildren)) {
167
+ acts.push(...actionChildren.filter(child => (child === null || child === void 0 ? void 0 : child.type) === exports.Card.Button));
168
+ return;
169
+ }
170
+ if (typeof actionChildren === "object" && react_1.default.isValidElement(actionChildren) && actionChildren.type === exports.Card.Button) {
171
+ acts.push(actionChildren);
172
+ }
140
173
  }
141
- return (0, jsx_runtime_1.jsx)(favoriteButton_1.FavoriteButton, { isFavorite: props.isFavorite || false, onChange: props.onFavoriteChange, className: "zen-card__favorite-button" });
142
- }, [props.isFavorite, props.onFavoriteChange]);
143
- const { titleIcon, titleIconType } = (0, react_1.useMemo)(() => {
144
- if (status) {
145
- return {
146
- titleIcon: icon || (0, getIconFromStatus_1.getIconFromStatus)(status),
147
- titleIconType: iconType || (0, getIconTypeFromStatus_1.getIconTypeFromStatus)(status)
148
- };
174
+ if (el.type === exports.Card.Content || (0, isFormSection_1.isFormSection)(el)) {
175
+ cnt.push(el);
149
176
  }
150
- return {
151
- titleIcon: icon,
152
- titleIconType: iconType
153
- };
154
- }, [icon, iconType, status]);
155
- const isHeaderPrimaryVisible = title || icon || link || onClick || !!headerActions.length || date || !!favoriteButton || !!tooltip || !!menuActions.length;
156
- const isHeaderVisible = isHeaderPrimaryVisible || secondary;
157
- return (0, jsx_runtime_1.jsxs)(cardContainer_1.CardContainer, { isMobile: isMobile, fullWidth: isFullWidth, fullHeight: isFullHeight, autoHeight: isAutoHeight, scrollable: isScrollable, ref: containerRef, size: size || "S", className: (0, classNames_1.classNames)(["zen-card", !isHeaderVisible ? "zen-card--no-header" : "", className]), children: [isHeaderVisible ? (0, jsx_runtime_1.jsxs)("div", { className: "zen-card__header", ref: headerRef, children: [isHeaderPrimaryVisible && (0, jsx_runtime_1.jsxs)("div", { className: "zen-card__header-primary", children: [title && (0, jsx_runtime_1.jsx)(title_1.Title, { id: titleId, link: link, target: target, onClick: onClick, isMobile: isMobile, title: title, icon: titleIcon, iconType: titleIconType }), (0, jsx_runtime_1.jsxs)("div", { className: "zen-card__header-right", children: [!!headerActions.length && headerActions, date ? (0, jsx_runtime_1.jsx)("span", { className: dateClassName, children: date }) : null, favoriteButton, tooltip && (0, jsx_runtime_1.jsx)(status_1.Status, { title: title, status: status, isMobile: isMobile, tooltip: tooltip, tooltipAlignment: tooltipAlignment, tooltipSize: tooltipSize }), !!menuActions.length && (0, jsx_runtime_1.jsx)(menu_1.Menu, { trigger: menuTrigger, title: title || translate("Actions"), children: menuActions.map((action, index) => {
158
- const actionProps = action.props;
159
- return (0, react_1.createElement)(menu_1.Menu.Item, Object.assign({ key: actionProps.id || index, id: actionProps.id || `action-${index}`, name: actionProps.name || "" }, actionProps));
160
- }) })] })] }), secondary ? (0, jsx_runtime_1.jsx)("div", { className: "zen-card__secondary", children: secondary }) : null] }) : null, (0, jsx_runtime_1.jsx)("div", { className: cardContentClassName, children: content })] });
177
+ });
178
+ return {
179
+ actions: acts,
180
+ content: cnt
181
+ };
182
+ }
183
+ return {
184
+ actions: [],
185
+ content: [children]
186
+ };
187
+ }, [children]);
188
+ const maxNumberOfActions = (0, getMaxNumberOfActions_1.getMaxNumberOfActions)(cardSize);
189
+ const {
190
+ headerActions,
191
+ menuActions
192
+ } = (0, react_1.useMemo)(() => {
193
+ const hActions = [];
194
+ const mActions = [];
195
+ for (let i = 0; i < actions.length; i++) {
196
+ if (actions[i].props.inContextMenu || hActions.length >= maxNumberOfActions || isMobile) {
197
+ mActions.push(actions[i]);
198
+ } else {
199
+ hActions.push(actions[i]);
200
+ }
201
+ }
202
+ return {
203
+ headerActions: hActions,
204
+ menuActions: mActions
205
+ };
206
+ }, [actions, isMobile, maxNumberOfActions]);
207
+ const menuTrigger = (0, jsx_runtime_1.jsx)(button_1.Button, {
208
+ className: (0, classNames_1.classNames)(["zen-card__menu-trigger", menuTriggerDriveClasses || ""]),
209
+ type: "tertiary-black",
210
+ "aria-label": translate("Actions"),
211
+ htmlType: "button",
212
+ children: (0, jsx_runtime_1.jsx)(iconDotVertical_1.IconDotVertical, {
213
+ size: isDrive ? svgIconSize_1.SvgIconSize.Huge : svgIconSize_1.SvgIconSize.Large
214
+ })
215
+ });
216
+ (0, react_1.useEffect)(() => {
217
+ if (containerRef.current) {
218
+ containerRef.current.setAttribute("role", "region");
219
+ containerRef.current.setAttribute("aria-labelledby", titleId);
220
+ }
221
+ }, [containerRef, titleId]);
222
+ const cardContentClassName = (0, react_1.useMemo)(() => (0, classNames_1.classNames)(["zen-card__content", isScrollable ? "zen-card__content--overflow-scroll" : "zen-card__content--overflow-hidden", cardContentClasses]), [cardContentClasses, isScrollable]);
223
+ const dateClassName = (0, react_1.useMemo)(() => (0, classNames_1.classNames)(["zen-card__date", isMobile && !isDrive ? "zen-card__date--mobile" : "", dateDriveClasses !== null && dateDriveClasses !== void 0 ? dateDriveClasses : ""]), [isMobile, isDrive, dateDriveClasses]);
224
+ const favoriteButton = (0, react_1.useMemo)(() => {
225
+ if (props.onFavoriteChange === undefined) {
226
+ return null;
227
+ }
228
+ return (0, jsx_runtime_1.jsx)(favoriteButton_1.FavoriteButton, {
229
+ isFavorite: props.isFavorite || false,
230
+ onChange: props.onFavoriteChange,
231
+ className: "zen-card__favorite-button"
232
+ });
233
+ }, [props.isFavorite, props.onFavoriteChange]);
234
+ const {
235
+ titleIcon,
236
+ titleIconType
237
+ } = (0, react_1.useMemo)(() => {
238
+ if (status) {
239
+ return {
240
+ titleIcon: icon || (0, getIconFromStatus_1.getIconFromStatus)(status),
241
+ titleIconType: iconType || (0, getIconTypeFromStatus_1.getIconTypeFromStatus)(status)
242
+ };
243
+ }
244
+ return {
245
+ titleIcon: icon,
246
+ titleIconType: iconType
247
+ };
248
+ }, [icon, iconType, status]);
249
+ const isHeaderPrimaryVisible = title || icon || link || onClick || !!headerActions.length || date || !!favoriteButton || !!tooltip || !!menuActions.length;
250
+ const isHeaderVisible = isHeaderPrimaryVisible || secondary;
251
+ return (0, jsx_runtime_1.jsxs)(cardContainer_1.CardContainer, {
252
+ isMobile: isMobile,
253
+ fullWidth: isFullWidth,
254
+ fullHeight: isFullHeight,
255
+ autoHeight: isAutoHeight,
256
+ scrollable: isScrollable,
257
+ ref: containerRef,
258
+ size: size || "S",
259
+ className: (0, classNames_1.classNames)(["zen-card", !isHeaderVisible ? "zen-card--no-header" : "", className]),
260
+ children: [isHeaderVisible ? (0, jsx_runtime_1.jsxs)("div", {
261
+ className: "zen-card__header",
262
+ ref: headerRef,
263
+ children: [isHeaderPrimaryVisible && (0, jsx_runtime_1.jsxs)("div", {
264
+ className: "zen-card__header-primary",
265
+ children: [title && (0, jsx_runtime_1.jsx)(title_1.Title, {
266
+ id: titleId,
267
+ link: link,
268
+ target: target,
269
+ onClick: onClick,
270
+ isMobile: isMobile,
271
+ title: title,
272
+ icon: titleIcon,
273
+ iconType: titleIconType
274
+ }), (0, jsx_runtime_1.jsxs)("div", {
275
+ className: "zen-card__header-right",
276
+ children: [!!headerActions.length && headerActions, date ? (0, jsx_runtime_1.jsx)("span", {
277
+ className: dateClassName,
278
+ children: date
279
+ }) : null, favoriteButton, tooltip && (0, jsx_runtime_1.jsx)(status_1.Status, {
280
+ title: title,
281
+ status: status,
282
+ isMobile: isMobile,
283
+ tooltip: tooltip,
284
+ tooltipAlignment: tooltipAlignment,
285
+ tooltipSize: tooltipSize
286
+ }), !!menuActions.length && (0, jsx_runtime_1.jsx)(menu_1.Menu, {
287
+ trigger: menuTrigger,
288
+ title: title || translate("Actions"),
289
+ children: menuActions.map((action, index) => {
290
+ const actionProps = action.props;
291
+ return (0, react_1.createElement)(menu_1.Menu.Item, Object.assign({
292
+ key: actionProps.id || index,
293
+ id: actionProps.id || `action-${index}`,
294
+ name: actionProps.name || ""
295
+ }, actionProps));
296
+ })
297
+ })]
298
+ })]
299
+ }), secondary ? (0, jsx_runtime_1.jsx)("div", {
300
+ className: "zen-card__secondary",
301
+ children: secondary
302
+ }) : null]
303
+ }) : null, (0, jsx_runtime_1.jsx)("div", {
304
+ className: cardContentClassName,
305
+ children: content
306
+ })]
307
+ });
161
308
  };
162
309
  exports.Card = Card;
163
- exports.TRANSLATIONS = [
164
- "Actions"
165
- ];
310
+ exports.TRANSLATIONS = ["Actions"];
166
311
  exports.Card.Actions = actions_1.Actions;
167
312
  exports.Card.Content = content_1.Content;
168
- exports.Card.Button = cardButton_1.CardButton;
313
+ exports.Card.Button = cardButton_1.CardButton;