@geotab/zenith 3.1.1-beta.5 → 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 (442) 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.d.ts +0 -1
  86. package/dist/formField/formField.js +15 -16
  87. package/dist/formField/hooks/useError.js +100 -36
  88. package/dist/formGroup/components/reviewListToggle/reviewListToggle.js +72 -7
  89. package/dist/formGroup/hooks/useToggle.js +37 -11
  90. package/dist/formGroup/utils/getControls.js +8 -7
  91. package/dist/formLayout/hooks/useError.js +55 -15
  92. package/dist/formLayout/hooks/useFormButtons.js +128 -27
  93. package/dist/formSection/components/formSectionModal.js +1 -1
  94. package/dist/formSection/formSection.js +1 -1
  95. package/dist/formSection/hooks/useError.js +70 -22
  96. package/dist/formStepper/components/formStep.js +65 -10
  97. package/dist/formStepper/formStepper.js +129 -33
  98. package/dist/formStepperButtons/formStepperButtons.js +184 -38
  99. package/dist/groupsFilter/groupsFilterTestData.d.ts +37 -0
  100. package/dist/groupsFilter/groupsFilterTestData.js +7 -0
  101. package/dist/groupsFilter/groupsHelper.d.ts +24 -1
  102. package/dist/groupsFilter/groupsHelper.js +25 -15
  103. package/dist/groupsFilterRaw/groupsFilterAdjustmentState.js +162 -17
  104. package/dist/groupsFilterRaw/groupsFilterBox.js +137 -32
  105. package/dist/groupsFilterRaw/groupsFilterCommon.js +75 -8
  106. package/dist/groupsFilterRaw/groupsFilterCurrentlySelectedState.js +184 -25
  107. package/dist/groupsFilterRaw/groupsFilterHelper.d.ts +2 -1
  108. package/dist/groupsFilterRaw/groupsFilterHelper.js +284 -168
  109. package/dist/groupsFilterRaw/groupsFilterInitialState.js +266 -18
  110. package/dist/groupsFilterRaw/groupsFilterMenu.js +124 -9
  111. package/dist/groupsFilterRaw/groupsFilterRaw.d.ts +1 -0
  112. package/dist/groupsFilterRaw/groupsFilterRaw.js +816 -308
  113. package/dist/groupsFilterRaw/groupsFilterTestData.d.ts +155 -2
  114. package/dist/groupsFilterRaw/groupsFilterTestData.js +153 -58
  115. package/dist/groupsFilterRaw/groupsFilterTrigger.js +139 -35
  116. package/dist/groupsFilterRaw/groupsHelper.js +739 -208
  117. package/dist/groupsFilterRaw/stateReducer/stateReducerHelper.js +3 -1
  118. package/dist/groupsFilterRaw/types.d.ts +1 -0
  119. package/dist/header/components/collapsedItemsControl/collapsedItemsControl.js +107 -52
  120. package/dist/header/components/mobileFilterControl/mobileFilterControl.js +62 -9
  121. package/dist/header/components/mobileSearchControl/mobileSearchControl.js +119 -14
  122. package/dist/header/headerBack.js +64 -20
  123. package/dist/index.css +110 -71
  124. package/dist/index.d.ts +2 -1
  125. package/dist/index.js +5 -2
  126. package/dist/list/itemData/itemDataInternal.js +216 -51
  127. package/dist/list/listItem/listItem.js +168 -55
  128. package/dist/menu/components/menuErrorItem.js +33 -5
  129. package/dist/mobileSheet/mobileSheet.js +195 -69
  130. package/dist/modal/modal.js +300 -142
  131. package/dist/nav/nav.js +1 -1
  132. package/dist/nav/navFooter/navFooter.js +82 -39
  133. package/dist/nav/navFooter/navFooterAction/navFooterAction.js +52 -13
  134. package/dist/nav/navHeader/navHeader.js +86 -36
  135. package/dist/nav/navHeader/navHeaderSearch/navHeaderSearch.js +88 -29
  136. package/dist/nav/navItem/navItem.d.ts +3 -3
  137. package/dist/nav/navItem/navItem.js +35 -33
  138. package/dist/nav/navMobileBar/navMobileBar.js +67 -21
  139. package/dist/notification/notification.js +124 -21
  140. package/dist/pagination/paginationArrow.js +81 -11
  141. package/dist/pagination/paginationText/paginationText.js +45 -11
  142. package/dist/pill/components/pillNonActionable/pillNonActionable.js +93 -24
  143. package/dist/pillBox/components/pillBoxItem.js +52 -9
  144. package/dist/pillBox/pillBox.js +121 -20
  145. package/dist/pillExpandable/pillExpandable.js +333 -139
  146. package/dist/rangeRaw/rangeRaw.js +486 -141
  147. package/dist/rangeRaw/utils/rangeHelper.js +209 -39
  148. package/dist/searchInputRaw/searchInputRaw.js +180 -65
  149. package/dist/skeleton/skeleton.js +51 -6
  150. package/dist/sortControl/sortControl.js +152 -42
  151. package/dist/stepperRaw/stepperRaw.js +116 -42
  152. package/dist/summary/summary.js +94 -8
  153. package/dist/table/actions/actionsMenu.js +171 -78
  154. package/dist/table/flexible/columnSettings.js +80 -10
  155. package/dist/table/flexible/columnsList.js +110 -43
  156. package/dist/table/flexible/columnsPopup.js +77 -20
  157. package/dist/table/nested/useNestedRows.js +167 -77
  158. package/dist/table/selectable/selectableHeader.js +180 -41
  159. package/dist/table/selectable/useSelectableRows.js +270 -191
  160. package/dist/table/sortable/sortableHeader.js +153 -75
  161. package/dist/tabs/tabs.js +227 -118
  162. package/dist/timePickerRaw/timePickerRaw.js +278 -58
  163. package/dist/toastRaw/toastRaw.js +138 -32
  164. package/dist/toggleButton/toggleButton.d.ts +0 -1
  165. package/dist/toggleButtonRaw/toggleButtonRaw.d.ts +1 -0
  166. package/dist/toggleButtonRaw/toggleButtonRaw.js +146 -40
  167. package/dist/utils/formatDate.js +1001 -117
  168. package/{esm/utils/localization/translations/cs-json.js → dist/utils/localization/translations/cs.json} +11 -12
  169. package/{esm/utils/localization/translations/da-DK-json.js → dist/utils/localization/translations/da-DK.json} +31 -23
  170. package/{esm/utils/localization/translations/de-json.js → dist/utils/localization/translations/de.json} +12 -13
  171. package/dist/utils/localization/translations/en.json +308 -0
  172. package/{esm/utils/localization/translations/es-json.js → dist/utils/localization/translations/es.json} +11 -12
  173. package/{esm/utils/localization/translations/fi-FI-json.js → dist/utils/localization/translations/fi-FI.json} +31 -23
  174. package/{esm/utils/localization/translations/fr-FR-json.js → dist/utils/localization/translations/fr-FR.json} +12 -12
  175. package/{esm/utils/localization/translations/fr-json.js → dist/utils/localization/translations/fr.json} +11 -12
  176. package/{esm/utils/localization/translations/hu-HU-json.js → dist/utils/localization/translations/hu-HU.json} +31 -23
  177. package/{esm/utils/localization/translations/id-json.js → dist/utils/localization/translations/id.json} +11 -13
  178. package/{esm/utils/localization/translations/it-json.js → dist/utils/localization/translations/it.json} +11 -12
  179. package/{esm/utils/localization/translations/ja-json.js → dist/utils/localization/translations/ja.json} +11 -12
  180. package/{esm/utils/localization/translations/ko-KR-json.js → dist/utils/localization/translations/ko-KR.json} +24 -23
  181. package/{esm/utils/localization/translations/ms-json.js → dist/utils/localization/translations/ms.json} +11 -12
  182. package/{esm/utils/localization/translations/nb-NO-json.js → dist/utils/localization/translations/nb-NO.json} +31 -23
  183. package/{esm/utils/localization/translations/nl-json.js → dist/utils/localization/translations/nl.json} +11 -12
  184. package/{esm/utils/localization/translations/pl-json.js → dist/utils/localization/translations/pl.json} +11 -12
  185. package/{esm/utils/localization/translations/pt-BR-json.js → dist/utils/localization/translations/pt-BR.json} +11 -12
  186. package/{esm/utils/localization/translations/sk-SK-json.js → dist/utils/localization/translations/sk-SK.json} +31 -23
  187. package/{esm/utils/localization/translations/sv-json.js → dist/utils/localization/translations/sv.json} +11 -12
  188. package/{esm/utils/localization/translations/th-json.js → dist/utils/localization/translations/th.json} +11 -12
  189. package/{esm/utils/localization/translations/tr-json.js → dist/utils/localization/translations/tr.json} +11 -12
  190. package/{esm/utils/localization/translations/zh-Hans-json.js → dist/utils/localization/translations/zh-Hans.json} +11 -12
  191. package/{esm/utils/localization/translations/zh-TW-json.js → dist/utils/localization/translations/zh-TW.json} +11 -23
  192. package/dist/utils/localization/translationsDictionary.d.ts +2 -0
  193. package/dist/utils/localization/translationsDictionary.js +63 -0
  194. package/dist/utils/localization/useLanguage.js +2 -74
  195. package/esm/advancedGroupsFilter/advancedGroupsFilter.js +130 -29
  196. package/esm/advancedGroupsFilter/advancedGroupsFilterForm.js +133 -33
  197. package/esm/advancedGroupsFilter/advancedGroupsFilterFormSection.js +317 -65
  198. package/esm/advancedGroupsFilter/advancedGroupsFilterSectionTooltip.d.ts +0 -1
  199. package/esm/advancedGroupsFilter/advancedGroupsFilterSectionTooltip.js +77 -8
  200. package/esm/alertRaw/alertRaw.js +165 -51
  201. package/esm/banner/bannerMultipLine.js +121 -20
  202. package/esm/banner/bannerSingleLine.js +100 -13
  203. package/esm/betaPill/betaPill.js +105 -19
  204. package/esm/bookmark/bookmark.js +89 -27
  205. package/esm/bulkEditControl/bulkEditControl.js +161 -33
  206. package/esm/calendar/calendar.js +937 -272
  207. package/esm/calendar/calendarUtils.js +151 -84
  208. package/esm/card/card.js +233 -101
  209. package/esm/chart/accessibleChart/accessibleChartNarrative.js +642 -554
  210. package/esm/chart/accessibleChart/accessibleChartTable.js +239 -85
  211. package/esm/chart/chart.js +30 -20
  212. package/esm/chart/chartAxis/chartAxis.js +79 -6
  213. package/esm/checkboxListWithAction/checkboxListWithAction.js +218 -68
  214. package/esm/chip/chip.js +189 -90
  215. package/esm/columnsSelector/columnsSelector.js +91 -11
  216. package/esm/columnsSelector/columnsTab/columnsTab.js +53 -14
  217. package/esm/columnsSelector/columnsTabGroup/columnsTabGroup.js +75 -33
  218. package/esm/comboboxSelected/comboboxSelected.js +1 -3
  219. package/esm/dataFeed/feedExpandControl/feedExpandControl.js +21 -9
  220. package/esm/dataGrid/columns/checkboxColumn/checkboxHeaderCell.js +86 -10
  221. package/esm/dataGrid/dataGrid.js +221 -116
  222. package/esm/dataGrid/emptySearchList/emptySearchList.js +50 -8
  223. package/esm/dataGrid/entitiesListActions/actions/columnsListButton.js +45 -6
  224. package/esm/dataGrid/entitiesListActions/actions/fullscreenButton.js +58 -17
  225. package/esm/dataGrid/withFlexibleColumns/components/columnSettings.js +78 -9
  226. package/esm/dataGrid/withFlexibleColumns/components/columnSettingsSidePanel.js +44 -15
  227. package/esm/dataGrid/withSelectableRows/components/bulkActions/bulkActions.js +217 -31
  228. package/esm/dataGrid/withSelectableRows/withSelectableRows.js +280 -212
  229. package/esm/dataGrid/withSortableColumns/columns/sortableColumnWrapper.js +172 -94
  230. package/esm/dateInputInner/dateInputInner.js +785 -475
  231. package/esm/dateInputInner/dateInputInnerControlBlock.js +119 -21
  232. package/esm/dateInputRaw/dateInputRaw.js +309 -103
  233. package/esm/dateInputRaw/utils/getLabel.js +32 -6
  234. package/esm/dateRangeInner/dateRangeInner.js +166 -57
  235. package/esm/dateRangeRaw/dateRangeRaw.js +595 -238
  236. package/esm/dateRangeRaw/utils/dateRangeUtils.js +622 -239
  237. package/esm/dateSelectionWrapper/dateSelectionWrapper.js +146 -13
  238. package/esm/dialog/dialogContent.js +117 -39
  239. package/esm/dropdownRaw/dropdownHelper.d.ts +2 -2
  240. package/esm/dropdownRaw/dropdownHelper.js +10 -10
  241. package/esm/dropdownRaw/dropdownList.js +412 -56
  242. package/esm/dropdownRaw/dropdownPopup.js +212 -19
  243. package/esm/dropdownRaw/dropdownRaw.js +862 -507
  244. package/esm/dropdownRaw/dropdownSearchableTrigger.js +217 -45
  245. package/esm/dropdownRaw/stateReducer/stateAction.d.ts +5 -1
  246. package/esm/dropdownRaw/stateReducer/stateActionType.d.ts +2 -1
  247. package/esm/dropdownRaw/stateReducer/stateActionType.js +1 -0
  248. package/esm/dropdownRaw/stateReducer/stateReducer.d.ts +6 -1
  249. package/esm/dropdownRaw/stateReducer/stateReducer.js +24 -12
  250. package/esm/dropdownRaw/stateReducer/stateReducerHelper.d.ts +2 -0
  251. package/esm/dropdownRaw/stateReducer/stateReducerHelper.js +18 -0
  252. package/esm/dropdownRaw/stateReducer/stateReducerTestData.d.ts +39 -0
  253. package/esm/dropdownRaw/stateReducer/stateReducerTestData.js +71 -0
  254. package/esm/dropdownRaw/types.d.ts +1 -0
  255. package/esm/favoriteButton/favoriteButton.js +53 -9
  256. package/esm/filters/components/filtersContainer.js +141 -61
  257. package/esm/filters/components/filtersEmptySelectedList.js +24 -3
  258. package/esm/filters/components/filtersSaveModal.js +134 -41
  259. package/esm/filters/components/filtersSavedChipComponent.js +312 -107
  260. package/esm/filters/components/filtersSearchItemData.js +121 -46
  261. package/esm/filters/components/filtersSearchList.js +375 -178
  262. package/esm/filters/components/filtersSelect.js +122 -60
  263. package/esm/filters/components/filtersSelectListItem.js +119 -12
  264. package/esm/filters/components/filtersSidePanel.js +504 -177
  265. package/esm/filters/filters.js +435 -265
  266. package/esm/filtersBar/components/filtersBarPeriodPicker/getRangeOption.js +722 -270
  267. package/esm/filtersBar/components/resetComponentButton.js +39 -4
  268. package/esm/filtersBar/filtersBarActions/filtersBarActions.js +120 -14
  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.d.ts +0 -1
  279. package/esm/formField/formField.js +15 -16
  280. package/esm/formField/hooks/useError.js +94 -35
  281. package/esm/formGroup/components/reviewListToggle/reviewListToggle.js +66 -6
  282. package/esm/formGroup/hooks/useToggle.js +31 -10
  283. package/esm/formGroup/utils/getControls.js +8 -7
  284. package/esm/formLayout/hooks/useError.js +49 -14
  285. package/esm/formLayout/hooks/useFormButtons.js +122 -26
  286. package/esm/formSection/components/formSectionModal.js +1 -1
  287. package/esm/formSection/formSection.js +1 -1
  288. package/esm/formSection/hooks/useError.js +64 -21
  289. package/esm/formStepper/components/formStep.js +59 -9
  290. package/esm/formStepper/formStepper.js +123 -32
  291. package/esm/formStepperButtons/formStepperButtons.js +178 -37
  292. package/esm/groupsFilter/groupsFilterTestData.d.ts +37 -0
  293. package/esm/groupsFilter/groupsFilterTestData.js +4 -0
  294. package/esm/groupsFilter/groupsHelper.d.ts +24 -1
  295. package/esm/groupsFilter/groupsHelper.js +24 -1
  296. package/esm/groupsFilterRaw/groupsFilterAdjustmentState.js +152 -14
  297. package/esm/groupsFilterRaw/groupsFilterBox.js +131 -31
  298. package/esm/groupsFilterRaw/groupsFilterCommon.js +69 -7
  299. package/esm/groupsFilterRaw/groupsFilterCurrentlySelectedState.js +178 -24
  300. package/esm/groupsFilterRaw/groupsFilterHelper.d.ts +2 -1
  301. package/esm/groupsFilterRaw/groupsFilterHelper.js +279 -168
  302. package/esm/groupsFilterRaw/groupsFilterInitialState.js +260 -17
  303. package/esm/groupsFilterRaw/groupsFilterMenu.js +118 -8
  304. package/esm/groupsFilterRaw/groupsFilterRaw.d.ts +1 -0
  305. package/esm/groupsFilterRaw/groupsFilterRaw.js +811 -308
  306. package/esm/groupsFilterRaw/groupsFilterTestData.d.ts +155 -2
  307. package/esm/groupsFilterRaw/groupsFilterTestData.js +152 -57
  308. package/esm/groupsFilterRaw/groupsFilterTrigger.js +133 -34
  309. package/esm/groupsFilterRaw/groupsHelper.js +733 -207
  310. package/esm/groupsFilterRaw/stateReducer/stateReducerHelper.js +3 -1
  311. package/esm/groupsFilterRaw/types.d.ts +1 -0
  312. package/esm/header/components/collapsedItemsControl/collapsedItemsControl.js +101 -51
  313. package/esm/header/components/mobileFilterControl/mobileFilterControl.js +56 -8
  314. package/esm/header/components/mobileSearchControl/mobileSearchControl.js +113 -13
  315. package/esm/header/headerBack.js +58 -19
  316. package/esm/index.d.ts +2 -1
  317. package/esm/index.js +2 -1
  318. package/esm/list/itemData/itemDataInternal.js +210 -50
  319. package/esm/list/listItem/listItem.js +162 -54
  320. package/esm/menu/components/menuErrorItem.js +27 -4
  321. package/esm/mobileSheet/mobileSheet.js +189 -68
  322. package/esm/modal/modal.js +265 -120
  323. package/esm/nav/nav.js +1 -1
  324. package/esm/nav/navFooter/navFooter.js +76 -38
  325. package/esm/nav/navFooter/navFooterAction/navFooterAction.js +46 -12
  326. package/esm/nav/navHeader/navHeader.js +80 -35
  327. package/esm/nav/navHeader/navHeaderSearch/navHeaderSearch.js +82 -28
  328. package/esm/nav/navItem/navItem.d.ts +3 -3
  329. package/esm/nav/navItem/navItem.js +35 -33
  330. package/esm/nav/navMobileBar/navMobileBar.js +61 -20
  331. package/esm/notification/notification.js +114 -18
  332. package/esm/pagination/paginationArrow.js +75 -10
  333. package/esm/pagination/paginationText/paginationText.js +39 -10
  334. package/esm/pill/components/pillNonActionable/pillNonActionable.js +87 -23
  335. package/esm/pillBox/components/pillBoxItem.js +46 -8
  336. package/esm/pillBox/pillBox.js +115 -19
  337. package/esm/pillExpandable/pillExpandable.js +327 -138
  338. package/esm/rangeRaw/rangeRaw.js +480 -140
  339. package/esm/rangeRaw/utils/rangeHelper.js +203 -38
  340. package/esm/searchInputRaw/searchInputRaw.js +145 -43
  341. package/esm/skeleton/skeleton.js +45 -5
  342. package/esm/sortControl/sortControl.js +146 -41
  343. package/esm/stepperRaw/stepperRaw.js +112 -41
  344. package/esm/storybookHelpers/dataGridWithDifferentCellOptions/components/EntitiesListAction.js +178 -19
  345. package/esm/summary/summary.js +88 -7
  346. package/esm/table/actions/actionsMenu.js +165 -77
  347. package/esm/table/flexible/columnSettings.js +74 -9
  348. package/esm/table/flexible/columnsList.js +104 -42
  349. package/esm/table/flexible/columnsPopup.js +71 -19
  350. package/esm/table/nested/useNestedRows.js +161 -76
  351. package/esm/table/selectable/selectableHeader.js +174 -40
  352. package/esm/table/selectable/useSelectableRows.js +264 -190
  353. package/esm/table/sortable/sortableHeader.js +147 -74
  354. package/esm/tabs/tabs.js +221 -117
  355. package/esm/timePickerRaw/timePickerRaw.js +272 -57
  356. package/esm/toastRaw/toastRaw.js +132 -31
  357. package/esm/toggleButton/toggleButton.d.ts +0 -1
  358. package/esm/toggleButtonRaw/toggleButtonRaw.d.ts +1 -0
  359. package/esm/toggleButtonRaw/toggleButtonRaw.js +111 -18
  360. package/esm/utils/formatDate.js +995 -116
  361. package/{dist/utils/localization/translations/cs-json.js → esm/utils/localization/translations/cs.json} +11 -15
  362. package/{dist/utils/localization/translations/da-DK-json.js → esm/utils/localization/translations/da-DK.json} +31 -26
  363. package/{dist/utils/localization/translations/de-json.js → esm/utils/localization/translations/de.json} +12 -16
  364. package/esm/utils/localization/translations/en.json +308 -0
  365. package/{dist/utils/localization/translations/es-json.js → esm/utils/localization/translations/es.json} +11 -15
  366. package/{dist/utils/localization/translations/fi-FI-json.js → esm/utils/localization/translations/fi-FI.json} +31 -26
  367. package/{dist/utils/localization/translations/fr-FR-json.js → esm/utils/localization/translations/fr-FR.json} +12 -15
  368. package/{dist/utils/localization/translations/fr-json.js → esm/utils/localization/translations/fr.json} +11 -15
  369. package/{dist/utils/localization/translations/hu-HU-json.js → esm/utils/localization/translations/hu-HU.json} +31 -26
  370. package/{dist/utils/localization/translations/id-json.js → esm/utils/localization/translations/id.json} +11 -16
  371. package/{dist/utils/localization/translations/it-json.js → esm/utils/localization/translations/it.json} +11 -15
  372. package/{dist/utils/localization/translations/ja-json.js → esm/utils/localization/translations/ja.json} +11 -15
  373. package/{dist/utils/localization/translations/ko-KR-json.js → esm/utils/localization/translations/ko-KR.json} +24 -26
  374. package/{dist/utils/localization/translations/ms-json.js → esm/utils/localization/translations/ms.json} +11 -15
  375. package/{dist/utils/localization/translations/nb-NO-json.js → esm/utils/localization/translations/nb-NO.json} +31 -26
  376. package/{dist/utils/localization/translations/nl-json.js → esm/utils/localization/translations/nl.json} +11 -15
  377. package/{dist/utils/localization/translations/pl-json.js → esm/utils/localization/translations/pl.json} +11 -15
  378. package/{dist/utils/localization/translations/pt-BR-json.js → esm/utils/localization/translations/pt-BR.json} +11 -15
  379. package/{dist/utils/localization/translations/sk-SK-json.js → esm/utils/localization/translations/sk-SK.json} +31 -26
  380. package/{dist/utils/localization/translations/sv-json.js → esm/utils/localization/translations/sv.json} +11 -15
  381. package/{dist/utils/localization/translations/th-json.js → esm/utils/localization/translations/th.json} +11 -15
  382. package/{dist/utils/localization/translations/tr-json.js → esm/utils/localization/translations/tr.json} +11 -15
  383. package/{dist/utils/localization/translations/zh-Hans-json.js → esm/utils/localization/translations/zh-Hans.json} +11 -15
  384. package/{dist/utils/localization/translations/zh-TW-json.js → esm/utils/localization/translations/zh-TW.json} +11 -26
  385. package/esm/utils/localization/translationsDictionary.d.ts +2 -0
  386. package/esm/utils/localization/translationsDictionary.js +59 -0
  387. package/esm/utils/localization/useLanguage.js +1 -50
  388. package/package.json +17 -10
  389. package/dist/formField/hooks/useClasses.d.ts +0 -8
  390. package/dist/formField/hooks/useClasses.js +0 -25
  391. package/dist/utils/localization/translations/cs-json.d.ts +0 -251
  392. package/dist/utils/localization/translations/da-DK-json.d.ts +0 -252
  393. package/dist/utils/localization/translations/de-json.d.ts +0 -251
  394. package/dist/utils/localization/translations/en-json.d.ts +0 -314
  395. package/dist/utils/localization/translations/en-json.js +0 -317
  396. package/dist/utils/localization/translations/es-json.d.ts +0 -251
  397. package/dist/utils/localization/translations/fi-FI-json.d.ts +0 -252
  398. package/dist/utils/localization/translations/fr-FR-json.d.ts +0 -250
  399. package/dist/utils/localization/translations/fr-json.d.ts +0 -251
  400. package/dist/utils/localization/translations/hu-HU-json.d.ts +0 -252
  401. package/dist/utils/localization/translations/id-json.d.ts +0 -252
  402. package/dist/utils/localization/translations/it-json.d.ts +0 -251
  403. package/dist/utils/localization/translations/ja-json.d.ts +0 -251
  404. package/dist/utils/localization/translations/ko-KR-json.d.ts +0 -258
  405. package/dist/utils/localization/translations/ms-json.d.ts +0 -251
  406. package/dist/utils/localization/translations/nb-NO-json.d.ts +0 -252
  407. package/dist/utils/localization/translations/nl-json.d.ts +0 -251
  408. package/dist/utils/localization/translations/pl-json.d.ts +0 -251
  409. package/dist/utils/localization/translations/pt-BR-json.d.ts +0 -251
  410. package/dist/utils/localization/translations/sk-SK-json.d.ts +0 -251
  411. package/dist/utils/localization/translations/sv-json.d.ts +0 -251
  412. package/dist/utils/localization/translations/th-json.d.ts +0 -251
  413. package/dist/utils/localization/translations/tr-json.d.ts +0 -251
  414. package/dist/utils/localization/translations/zh-Hans-json.d.ts +0 -251
  415. package/dist/utils/localization/translations/zh-TW-json.d.ts +0 -271
  416. package/esm/formField/hooks/useClasses.d.ts +0 -8
  417. package/esm/formField/hooks/useClasses.js +0 -21
  418. package/esm/utils/localization/translations/cs-json.d.ts +0 -251
  419. package/esm/utils/localization/translations/da-DK-json.d.ts +0 -252
  420. package/esm/utils/localization/translations/de-json.d.ts +0 -251
  421. package/esm/utils/localization/translations/en-json.d.ts +0 -314
  422. package/esm/utils/localization/translations/en-json.js +0 -314
  423. package/esm/utils/localization/translations/es-json.d.ts +0 -251
  424. package/esm/utils/localization/translations/fi-FI-json.d.ts +0 -252
  425. package/esm/utils/localization/translations/fr-FR-json.d.ts +0 -250
  426. package/esm/utils/localization/translations/fr-json.d.ts +0 -251
  427. package/esm/utils/localization/translations/hu-HU-json.d.ts +0 -252
  428. package/esm/utils/localization/translations/id-json.d.ts +0 -252
  429. package/esm/utils/localization/translations/it-json.d.ts +0 -251
  430. package/esm/utils/localization/translations/ja-json.d.ts +0 -251
  431. package/esm/utils/localization/translations/ko-KR-json.d.ts +0 -258
  432. package/esm/utils/localization/translations/ms-json.d.ts +0 -251
  433. package/esm/utils/localization/translations/nb-NO-json.d.ts +0 -252
  434. package/esm/utils/localization/translations/nl-json.d.ts +0 -251
  435. package/esm/utils/localization/translations/pl-json.d.ts +0 -251
  436. package/esm/utils/localization/translations/pt-BR-json.d.ts +0 -251
  437. package/esm/utils/localization/translations/sk-SK-json.d.ts +0 -251
  438. package/esm/utils/localization/translations/sv-json.d.ts +0 -251
  439. package/esm/utils/localization/translations/th-json.d.ts +0 -251
  440. package/esm/utils/localization/translations/tr-json.d.ts +0 -251
  441. package/esm/utils/localization/translations/zh-Hans-json.d.ts +0 -251
  442. package/esm/utils/localization/translations/zh-TW-json.d.ts +0 -271
@@ -1,5 +1,11 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
2
+
3
+ const {
4
+ injectString
5
+ } = require("../utils/localization/translationsDictionary");
6
+ Object.defineProperty(exports, "__esModule", {
7
+ value: true
8
+ });
3
9
  exports.TRANSLATIONS = exports.DateInputInnerControlBlock = void 0;
4
10
  const jsx_runtime_1 = require("react/jsx-runtime");
5
11
  const react_1 = require("react");
@@ -8,27 +14,124 @@ const timePicker_1 = require("../timePicker/timePicker");
8
14
  const useLanguage_1 = require("../utils/localization/useLanguage");
9
15
  const classNames_1 = require("../commonHelpers/classNames/classNames");
10
16
  const formFieldError_1 = require("../formFieldError/formFieldError");
17
+ injectString("cs", "The time must be set", "Je t\u0159eba nastavit \u010Das.");
18
+ injectString("da-DK", "The time must be set", "Tiden skal indstilles.");
19
+ injectString("de", "The time must be set", "Die Uhrzeit muss festgelegt werden.");
20
+ injectString("en", "The time must be set", "The time must be set.");
21
+ injectString("es", "The time must be set", "Se debe establecer la hora.");
22
+ injectString("fi-FI", "The time must be set", "Aika on asetettava.");
23
+ injectString("fr", "The time must be set", "L'heure doit \xEAtre programm\xE9e.");
24
+ injectString("fr-FR", "The time must be set", "L'heure doit \xEAtre d\xE9finie.");
25
+ injectString("hu-HU", "The time must be set", "Az id\u0151 be\xE1ll\xEDt\xE1sa k\xF6telez\u0151.");
26
+ injectString("id", "The time must be set", "Waktu harus diatur.");
27
+ injectString("it", "The time must be set", "Impostare l'ora.");
28
+ injectString("ja", "The time must be set", "\u6642\u523B\u3092\u8A2D\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002");
29
+ injectString("ko-KR", "The time must be set", "\uC2DC\uAC04\uC744 \uC124\uC815\uD574\uC57C \uD569\uB2C8\uB2E4.");
30
+ injectString("ms", "The time must be set", "Masa mesti ditetapkan.");
31
+ injectString("nb-NO", "The time must be set", "Tiden m\xE5 settes.");
32
+ injectString("nl", "The time must be set", "De tijd moet worden ingesteld.");
33
+ injectString("pl", "The time must be set", "Godzina musi by\u0107 ustawiona.");
34
+ injectString("pt-BR", "The time must be set", "\xC9 necess\xE1rio definir a hora.");
35
+ injectString("sk-SK", "The time must be set", "Mus\xED\u0161 nastavi\u0165 \u010Das.");
36
+ injectString("sv", "The time must be set", "Tiden m\xE5ste anges.");
37
+ injectString("th", "The time must be set", "\u0E15\u0E49\u0E2D\u0E07\u0E01\u0E33\u0E2B\u0E19\u0E14\u0E40\u0E27\u0E25\u0E32");
38
+ injectString("tr", "The time must be set", "Saat ayarlanmal\u0131d\u0131r.");
39
+ injectString("zh-Hans", "The time must be set", "\u5FC5\u987B\u8BBE\u5B9A\u65F6\u95F4\u3002");
40
+ injectString("zh-TW", "The time must be set", "\u5FC5\u9808\u8A2D\u5B9A\u6642\u9593");
41
+ injectString("cs", "The date must be set", "Je t\u0159eba nastavit datum.");
42
+ injectString("da-DK", "The date must be set", "Datoen skal indstilles.");
43
+ injectString("de", "The date must be set", "Das Datum muss festgelegt werden.");
44
+ injectString("en", "The date must be set", "The date must be set.");
45
+ injectString("es", "The date must be set", "Se debe establecer la fecha.");
46
+ injectString("fi-FI", "The date must be set", "P\xE4iv\xE4m\xE4\xE4r\xE4 on asetettava.");
47
+ injectString("fr", "The date must be set", "La date doit \xEAtre programm\xE9e.");
48
+ injectString("fr-FR", "The date must be set", "La date doit \xEAtre d\xE9finie.");
49
+ injectString("hu-HU", "The date must be set", "A d\xE1tum be\xE1ll\xEDt\xE1sa k\xF6telez\u0151.");
50
+ injectString("id", "The date must be set", "Tanggal harus diatur.");
51
+ injectString("it", "The date must be set", "Impostare la data.");
52
+ injectString("ja", "The date must be set", "\u65E5\u4ED8\u3092\u8A2D\u5B9A\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\u3002");
53
+ injectString("ko-KR", "The date must be set", "\uB0A0\uC9DC\uB97C \uC124\uC815\uD574\uC57C \uD569\uB2C8\uB2E4.");
54
+ injectString("ms", "The date must be set", "Tarikh mesti ditetapkan.");
55
+ injectString("nb-NO", "The date must be set", "Datoen m\xE5 settes.");
56
+ injectString("nl", "The date must be set", "De datum moet worden ingesteld.");
57
+ injectString("pl", "The date must be set", "Data musi by\u0107 ustawiona.");
58
+ injectString("pt-BR", "The date must be set", "\xC9 necess\xE1rio definir a data.");
59
+ injectString("sk-SK", "The date must be set", "Mus\xED\u0161 nastavi\u0165 d\xE1tum.");
60
+ injectString("sv", "The date must be set", "Datumet m\xE5ste anges.");
61
+ injectString("th", "The date must be set", "\u0E15\u0E49\u0E2D\u0E07\u0E01\u0E33\u0E2B\u0E19\u0E14\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48");
62
+ injectString("tr", "The date must be set", "Tarih ayarlanmal\u0131d\u0131r.");
63
+ injectString("zh-Hans", "The date must be set", "\u5FC5\u987B\u8BBE\u5B9A\u65E5\u671F\u3002");
64
+ injectString("zh-TW", "The date must be set", "\u5FC5\u9808\u8A2D\u5B9A\u65E5\u671F");
11
65
  const useDriveClassName_1 = require("../utils/theme/useDriveClassName");
12
- const DateInputInnerControlBlock = (props) => {
13
- const { className, title, id, dateText, timePickerValue, placeholder, handleSetDateText, onBlurDateChangeHandler, requireSelection, selectTime, timeChangeHandler, isMobileView, isActiveField, assistiveText, ref } = props;
14
- const { translate } = (0, useLanguage_1.useLanguage)();
15
- const driveAssistiveClass = (0, useDriveClassName_1.useDriveClassName)("zen-form-field__text");
16
- const isHasDateError = requireSelection && !dateText;
17
- const isHasTimeError = requireSelection && !timePickerValue;
18
- const memoizedDateInput = (0, react_1.useMemo)(() => (0, jsx_runtime_1.jsx)(textInputRaw_1.TextInputRaw, { className: (0, classNames_1.classNames)(["zen-date-input-inner__text-input", isActiveField ? "zen-date-input-inner__text-input--active" : ""]), id: id, value: dateText, onChange: handleSetDateText, onBlur: onBlurDateChangeHandler, placeholder: placeholder, autocomplete: "off", isError: isHasDateError, ref: ref }), [dateText, handleSetDateText, id, isActiveField, isHasDateError, onBlurDateChangeHandler, placeholder, ref]);
19
- const memoizedTimeSelect = (0, react_1.useMemo)(() => selectTime
20
- ? (0, jsx_runtime_1.jsxs)("div", { className: "zen-date-input-inner__inputs-block-item", children: [(0, jsx_runtime_1.jsx)(timePicker_1.TimePicker, { className: (0, classNames_1.classNames)(["zen-date-input-inner__text-input", isActiveField ? "zen-date-input-inner__text-input--active" : "",
21
- isHasTimeError ? "zen-date-input-inner__text-input--error" : ""]), value: timePickerValue, onChange: timeChangeHandler, isMobileView: isMobileView, fullWidth: true,
22
- // eslint-disable-next-line
23
- // @ts-ignore
24
- dataTimeId: id }), isHasTimeError ? (0, jsx_runtime_1.jsx)(formFieldError_1.FormFieldError, { error: translate("The time must be set") }) : null] })
25
- : null, [isActiveField, isHasTimeError, isMobileView, selectTime, timeChangeHandler, timePickerValue, translate, id]);
26
- return (0, jsx_runtime_1.jsxs)("div", { className: (0, classNames_1.classNames)(["zen-date-input-inner__control-block", className || ""]), children: [title
27
- ? (0, jsx_runtime_1.jsx)("label", { htmlFor: id, className: "zen-date-input-inner__label", children: title })
28
- : null, (0, jsx_runtime_1.jsxs)("div", { className: "zen-date-input-inner__inputs-block", children: [(0, jsx_runtime_1.jsxs)("div", { className: "zen-date-input-inner__inputs-block-item", children: [memoizedDateInput, isHasDateError ? (0, jsx_runtime_1.jsx)(formFieldError_1.FormFieldError, { error: translate("The date must be set") }) : null] }), memoizedTimeSelect] }), assistiveText ? (0, jsx_runtime_1.jsx)("div", { className: (0, classNames_1.classNames)(["zen-date-input-inner__assistive-text", "zen-form-field__text", driveAssistiveClass || ""]), children: assistiveText }) : null] });
66
+ const DateInputInnerControlBlock = props => {
67
+ const {
68
+ className,
69
+ title,
70
+ id,
71
+ dateText,
72
+ timePickerValue,
73
+ placeholder,
74
+ handleSetDateText,
75
+ onBlurDateChangeHandler,
76
+ requireSelection,
77
+ selectTime,
78
+ timeChangeHandler,
79
+ isMobileView,
80
+ isActiveField,
81
+ assistiveText,
82
+ ref
83
+ } = props;
84
+ const {
85
+ translate
86
+ } = (0, useLanguage_1.useLanguage)();
87
+ const driveAssistiveClass = (0, useDriveClassName_1.useDriveClassName)("zen-form-field__text");
88
+ const isHasDateError = requireSelection && !dateText;
89
+ const isHasTimeError = requireSelection && !timePickerValue;
90
+ const memoizedDateInput = (0, react_1.useMemo)(() => (0, jsx_runtime_1.jsx)(textInputRaw_1.TextInputRaw, {
91
+ className: (0, classNames_1.classNames)(["zen-date-input-inner__text-input", isActiveField ? "zen-date-input-inner__text-input--active" : ""]),
92
+ id: id,
93
+ value: dateText,
94
+ onChange: handleSetDateText,
95
+ onBlur: onBlurDateChangeHandler,
96
+ placeholder: placeholder,
97
+ autocomplete: "off",
98
+ isError: isHasDateError,
99
+ ref: ref
100
+ }), [dateText, handleSetDateText, id, isActiveField, isHasDateError, onBlurDateChangeHandler, placeholder, ref]);
101
+ const memoizedTimeSelect = (0, react_1.useMemo)(() => selectTime ? (0, jsx_runtime_1.jsxs)("div", {
102
+ className: "zen-date-input-inner__inputs-block-item",
103
+ children: [(0, jsx_runtime_1.jsx)(timePicker_1.TimePicker, {
104
+ className: (0, classNames_1.classNames)(["zen-date-input-inner__text-input", isActiveField ? "zen-date-input-inner__text-input--active" : "", isHasTimeError ? "zen-date-input-inner__text-input--error" : ""]),
105
+ value: timePickerValue,
106
+ onChange: timeChangeHandler,
107
+ isMobileView: isMobileView,
108
+ fullWidth: true,
109
+ // eslint-disable-next-line
110
+ // @ts-ignore
111
+ dataTimeId: id
112
+ }), isHasTimeError ? (0, jsx_runtime_1.jsx)(formFieldError_1.FormFieldError, {
113
+ error: translate("The time must be set")
114
+ }) : null]
115
+ }) : null, [isActiveField, isHasTimeError, isMobileView, selectTime, timeChangeHandler, timePickerValue, translate, id]);
116
+ return (0, jsx_runtime_1.jsxs)("div", {
117
+ className: (0, classNames_1.classNames)(["zen-date-input-inner__control-block", className || ""]),
118
+ children: [title ? (0, jsx_runtime_1.jsx)("label", {
119
+ htmlFor: id,
120
+ className: "zen-date-input-inner__label",
121
+ children: title
122
+ }) : null, (0, jsx_runtime_1.jsxs)("div", {
123
+ className: "zen-date-input-inner__inputs-block",
124
+ children: [(0, jsx_runtime_1.jsxs)("div", {
125
+ className: "zen-date-input-inner__inputs-block-item",
126
+ children: [memoizedDateInput, isHasDateError ? (0, jsx_runtime_1.jsx)(formFieldError_1.FormFieldError, {
127
+ error: translate("The date must be set")
128
+ }) : null]
129
+ }), memoizedTimeSelect]
130
+ }), assistiveText ? (0, jsx_runtime_1.jsx)("div", {
131
+ className: (0, classNames_1.classNames)(["zen-date-input-inner__assistive-text", "zen-form-field__text", driveAssistiveClass || ""]),
132
+ children: assistiveText
133
+ }) : null]
134
+ });
29
135
  };
30
136
  exports.DateInputInnerControlBlock = DateInputInnerControlBlock;
31
- exports.TRANSLATIONS = [
32
- "The date must be set",
33
- "The time must be set"
34
- ];
137
+ exports.TRANSLATIONS = ["The date must be set", "The time must be set"];
@@ -1,7 +1,85 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
2
+
3
+ const {
4
+ injectString
5
+ } = require("../utils/localization/translationsDictionary");
6
+ Object.defineProperty(exports, "__esModule", {
7
+ value: true
8
+ });
3
9
  exports.TRANSLATIONS = exports.DateInputRaw = void 0;
4
10
  const jsx_runtime_1 = require("react/jsx-runtime");
11
+ injectString("cs", "Pick a date", "Vyberte datum");
12
+ injectString("da-DK", "Pick a date", "V\xE6lg en dato");
13
+ injectString("de", "Pick a date", "Datum ausw\xE4hlen");
14
+ injectString("en", "Pick a date", "Pick a date");
15
+ injectString("es", "Pick a date", "Elegir una fecha");
16
+ injectString("fi-FI", "Pick a date", "Valitse p\xE4iv\xE4m\xE4\xE4r\xE4");
17
+ injectString("fr", "Pick a date", "Choisir une date");
18
+ injectString("fr-FR", "Pick a date", "S\xE9lectionner une date");
19
+ injectString("hu-HU", "Pick a date", "V\xE1lassz d\xE1tumot");
20
+ injectString("id", "Pick a date", "Pilih tanggal");
21
+ injectString("it", "Pick a date", "Scegliere una data");
22
+ injectString("ja", "Pick a date", "\u65E5\u4ED8\u3092\u9078\u629E");
23
+ injectString("ko-KR", "Pick a date", "\uB0A0\uC9DC \uC120\uD0DD");
24
+ injectString("ms", "Pick a date", "Pilih tarikh");
25
+ injectString("nb-NO", "Pick a date", "Velg en dato");
26
+ injectString("nl", "Pick a date", "Kies een datum");
27
+ injectString("pl", "Pick a date", "Wybierz dat\u0119");
28
+ injectString("pt-BR", "Pick a date", "Escolha uma data");
29
+ injectString("sk-SK", "Pick a date", "Vyber d\xE1tum");
30
+ injectString("sv", "Pick a date", "V\xE4lj ett datum");
31
+ injectString("th", "Pick a date", "\u0E40\u0E25\u0E37\u0E2D\u0E01\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48");
32
+ injectString("tr", "Pick a date", "Bir tarih se\xE7in");
33
+ injectString("zh-Hans", "Pick a date", "\u9009\u62E9\u65E5\u671F");
34
+ injectString("zh-TW", "Pick a date", "\u9078\u64C7\u65E5\u671F");
35
+ injectString("cs", "Clear", "Vymazat");
36
+ injectString("da-DK", "Clear", "Ryd");
37
+ injectString("de", "Clear", "L\xF6schen");
38
+ injectString("en", "Clear", "Clear");
39
+ injectString("es", "Clear", "Borrar");
40
+ injectString("fi-FI", "Clear", "Tyhjenn\xE4");
41
+ injectString("fr", "Clear", "Effacer");
42
+ injectString("fr-FR", "Clear", "Effacer");
43
+ injectString("hu-HU", "Clear", "T\xF6r\xF6ld.");
44
+ injectString("id", "Clear", "Hapus");
45
+ injectString("it", "Clear", "Cancella");
46
+ injectString("ja", "Clear", "\u30AF\u30EA\u30A2");
47
+ injectString("ko-KR", "Clear", "\uC9C0\uC6B0\uAE30");
48
+ injectString("ms", "Clear", "Kosongkan");
49
+ injectString("nb-NO", "Clear", "T\xF8m");
50
+ injectString("nl", "Clear", "Wissen");
51
+ injectString("pl", "Clear", "Wyczy\u015B\u0107");
52
+ injectString("pt-BR", "Clear", "Limpar");
53
+ injectString("sk-SK", "Clear", "Vyma\u017E");
54
+ injectString("sv", "Clear", "Rensa");
55
+ injectString("th", "Clear", "\u0E25\u0E49\u0E32\u0E07");
56
+ injectString("tr", "Clear", "Temizle");
57
+ injectString("zh-Hans", "Clear", "\u6E05\u9664");
58
+ injectString("zh-TW", "Clear", "\u6E05\u9664");
59
+ injectString("cs", "Apply", "Pou\u017E\xEDt");
60
+ injectString("da-DK", "Apply", "Anvend");
61
+ injectString("de", "Apply", "Anwenden");
62
+ injectString("en", "Apply", "Apply");
63
+ injectString("es", "Apply", "Aplicar");
64
+ injectString("fi-FI", "Apply", "K\xE4yt\xE4");
65
+ injectString("fr", "Apply", "Appliquer");
66
+ injectString("fr-FR", "Apply", "Appliquer");
67
+ injectString("hu-HU", "Apply", "Alkalmazd.");
68
+ injectString("id", "Apply", "Terapkan");
69
+ injectString("it", "Apply", "Applicare");
70
+ injectString("ja", "Apply", "\u9069\u7528");
71
+ injectString("ko-KR", "Apply", "\uC801\uC6A9");
72
+ injectString("ms", "Apply", "Gunakan");
73
+ injectString("nb-NO", "Apply", "Bruk");
74
+ injectString("nl", "Apply", "Toepassen");
75
+ injectString("pl", "Apply", "Zastosuj");
76
+ injectString("pt-BR", "Apply", "Aplicar");
77
+ injectString("sk-SK", "Apply", "Pou\u017Ei");
78
+ injectString("sv", "Apply", "Ans\xF6k");
79
+ injectString("th", "Apply", "\u0E43\u0E0A\u0E49");
80
+ injectString("tr", "Apply", "Uygula");
81
+ injectString("zh-Hans", "Apply", "\u5E94\u7528");
82
+ injectString("zh-TW", "Apply", "\u5957\u7528");
5
83
  const textIconButton_1 = require("../textIconButton/textIconButton");
6
84
  const button_1 = require("../button/button");
7
85
  const iconCalendar_1 = require("../icons/iconCalendar");
@@ -26,109 +104,242 @@ const chip_1 = require("../chip/chip");
26
104
  const chipStatusProvider_1 = require("../chip/chipStatusProvider");
27
105
  const getAriaAttributes_1 = require("../commonHelpers/getAriaAttributes");
28
106
  const useFormFieldValues_1 = require("../commonHelpers/hooks/useFormFieldValues/useFormFieldValues");
29
- const DateInputRaw = (props) => {
30
- var _a;
31
- const { className, classNamePopup, defaultValue, id, dropDownTitle, timeSelect, disableFutureDates, disablePastDates, disableDatesBefore, disableDatesAfter, isReadOnly, requireSelection = false, chip, chipIcon, chipId, chipName, buttonLabel, error } = props;
32
- const { name, disabled, value, onChange, onBlur } = (0, useFormFieldValues_1.useFormFieldValues)(props.controller, props);
33
- const isFormItemVal = (0, isFormItem_1.isFormItem)(props);
34
- const accessibilityProps = (0, getAriaAttributes_1.getAriaAttributes)(props);
35
- const defaultValueInner = isFormItemVal ? (_a = props.controller) === null || _a === void 0 ? void 0 : _a.defaultValue : defaultValue;
36
- const { translate } = (0, useLanguage_1.useLanguage)();
37
- const isMobile = (0, useMobile_1.useMobile)();
38
- const chipStatus = (0, chipStatusProvider_1.useChipStatus)();
39
- const drivePopupClassName = (0, useDriveClassName_1.useDriveClassName)("zen-date-input-popup");
40
- const driveWrapperClassName = (0, useDriveClassName_1.useDriveClassName)("zen-date-input-popup-wrapper");
41
- const { dateFormat, timeFormat, weekStartsOnSunday, toLocalDateTime } = (0, react_1.useContext)(userFormatContext_1.userFormatContext);
42
- const dateFormatter = (0, react_1.useCallback)((d) => (0, formatDate_1.formatDate)(toLocalDateTime(d), dateFormat, translate), [dateFormat, toLocalDateTime, translate]);
43
- const dateDeformatter = (0, react_1.useCallback)((d) => (0, formatDate_1.deformatDate)(d, dateFormat, translate) || new Date(""), [dateFormat, translate]);
44
- const [isOpen, setIsOpen] = (0, react_1.useState)(false);
45
- const [renderContent, setRenderContent] = (0, react_1.useState)(false);
46
- const prevIsOpenRef = (0, react_1.useRef)(false);
47
- const [customDate, setCustomDate] = (0, react_1.useState)(value);
48
- const triggerRef = (0, react_1.useRef)(null);
49
- const [prevValue, setPrevValue] = (0, react_1.useState)(value);
50
- const isDefaultState = (0, react_1.useMemo)(() => (0, cutSeconds_1.cutSeconds)(defaultValueInner) === (0, cutSeconds_1.cutSeconds)(customDate), [defaultValueInner, customDate]);
51
- const isValueState = (0, react_1.useMemo)(() => (0, cutSeconds_1.cutSeconds)(value) === (0, cutSeconds_1.cutSeconds)(customDate), [value, customDate]);
52
- const componentId = (0, useUniqueId_1.useUniqueId)();
53
- const cssClass = (0, classNames_1.classNames)([
54
- "zen-date-input",
55
- className !== null && className !== void 0 ? className : "",
56
- error ? "zen-date-input--error" : "",
57
- !value || (0, cutSeconds_1.cutSeconds)(defaultValueInner) === (0, cutSeconds_1.cutSeconds)(value) ? "" : "zen-date-input--active"
58
- ]);
59
- const title = (0, react_1.useMemo)(() => dropDownTitle || translate("Pick a date"), [dropDownTitle, translate]);
60
- const toggleVisibility = (0, react_1.useCallback)(() => setIsOpen(currentIsOpen => !currentIsOpen), []);
61
- const getButtonLabel = (0, react_1.useCallback)((getTitle) => (0, getLabel_1.getLabel)(value, dateFormat, timeFormat, translate, toLocalDateTime, timeSelect, buttonLabel, getTitle), [value, dateFormat, timeFormat, translate, toLocalDateTime, buttonLabel, timeSelect]);
62
- (0, react_1.useEffect)(() => {
63
- if (prevValue !== value) {
64
- setPrevValue(value);
65
- }
66
- }, [prevValue, value]);
67
- const onCalendarChange = (0, react_1.useCallback)((val) => {
68
- setCustomDate(val.from);
69
- }, []);
70
- const handleRangeSelection = (0, react_1.useCallback)(() => {
71
- const newState = customDate;
72
- setPrevValue(newState);
73
- onChange(newState);
74
- setCustomDate(newState);
75
- setIsOpen(false);
76
- }, [customDate, onChange]);
77
- const handleApplyClick = (0, react_1.useCallback)(() => {
78
- setIsOpen(false);
79
- handleRangeSelection();
80
- }, [handleRangeSelection]);
81
- const handleClearClick = (0, react_1.useCallback)(() => {
82
- setCustomDate(defaultValueInner);
83
- }, [defaultValueInner]);
84
- const handleClearAndApply = (0, react_1.useCallback)(() => {
85
- setCustomDate(defaultValueInner);
86
- setIsOpen(false);
87
- onChange(defaultValue);
88
- }, [defaultValue, defaultValueInner, onChange]);
89
- (0, react_1.useEffect)(() => {
90
- setCustomDate(value);
91
- }, [value]);
92
- const memoizedHandleClose = (0, react_1.useCallback)(() => {
93
- setIsOpen(false);
94
- }, [setIsOpen]);
95
- const onReadyForFocus = (0, react_1.useCallback)((isCurrentOpen) => {
96
- if (!isMobile) {
97
- return;
98
- }
99
- if (isCurrentOpen) {
100
- setRenderContent(true);
101
- return;
102
- }
103
- setRenderContent(false);
104
- prevIsOpenRef.current = isCurrentOpen;
105
- }, [isMobile]);
106
- const component = (0, react_1.useMemo)(() => (0, jsx_runtime_1.jsx)("div", { className: "zen-date-input-inner__calendar-wrapper", children: (0, jsx_runtime_1.jsx)(dateInputInner_1.DateInputInner, { id: id || componentId, value: { from: customDate, to: undefined }, onChange: onCalendarChange, dateFormat: dateFormat, dateFormatter: dateFormatter, dateDeformatter: dateDeformatter, startDayOfWeek: weekStartsOnSunday ? 0 : 1, dateRangeMode: false, selectTime: timeSelect, disableFutureDates: disableFutureDates, disablePastDates: disablePastDates, disableDatesAfter: disableDatesAfter, disableDatesBefore: disableDatesBefore, title: "", isMobileView: isMobile, requireSelection: requireSelection }) }), [componentId, customDate, dateDeformatter, dateFormat, dateFormatter, disableDatesAfter, disableDatesBefore, disableFutureDates, disablePastDates, id, isMobile, onCalendarChange, requireSelection, timeSelect, weekStartsOnSunday]);
107
- const memoizedDesktopView = (0, react_1.useMemo)(() => (0, jsx_runtime_1.jsx)(controlledPopup_1.ControlledPopup, { className: (0, classNames_1.classNames)(["zen-date-input-popup-wrapper", driveWrapperClassName || ""]), ariaLabel: translate("Pick a date"), useTrapFocusWithTrigger: "on", triggerRef: triggerRef, onOpenChange: setIsOpen, shouldHoldScroll: true, isOpen: isOpen, recalculateOnScroll: true, children: (0, jsx_runtime_1.jsxs)("div", { className: (0, classNames_1.classNames)(["zen-date-input-popup", drivePopupClassName || "", classNamePopup !== null && classNamePopup !== void 0 ? classNamePopup : ""]), children: [(0, jsx_runtime_1.jsx)("div", { className: "zen-date-input-popup__header", children: title }), component, (0, jsx_runtime_1.jsxs)("div", { className: "zen-date-input-popup__footer", children: [(0, jsx_runtime_1.jsx)(button_1.Button, { className: "zen-date-input-popup__button-clear", type: buttonType_1.ButtonType.Tertiary, disabled: isDefaultState, onClick: handleClearClick, children: translate("Clear") }), (0, jsx_runtime_1.jsx)(button_1.Button, { className: "zen-date-input-popup__button-apply", type: buttonType_1.ButtonType.Primary, disabled: isValueState || (requireSelection && !customDate), onClick: handleApplyClick, children: translate("Apply") })] })] }) }), [classNamePopup, component, customDate, drivePopupClassName, driveWrapperClassName, handleApplyClick, handleClearClick, isDefaultState, isOpen, isValueState, requireSelection, title, translate]);
108
- const memoizedMobileFooter = (0, react_1.useMemo)(() => (0, jsx_runtime_1.jsxs)(footerButtons_1.FooterButtons, { children: [(0, jsx_runtime_1.jsx)(button_1.Button, { type: buttonType_1.ButtonType.Primary, disabled: isValueState || (requireSelection && !customDate), onClick: handleApplyClick, children: translate("Apply") }), (0, jsx_runtime_1.jsx)(button_1.Button, { type: buttonType_1.ButtonType.Tertiary, disabled: isDefaultState, onClick: handleClearClick, children: translate("Clear") })] }), [customDate, handleApplyClick, handleClearClick, isDefaultState, isValueState, requireSelection, translate]);
109
- const memoizedMobileView = (0, react_1.useMemo)(() => (0, jsx_runtime_1.jsxs)(mobileSheet_1.MobileSheet, { className: (0, classNames_1.classNames)(["zen-date-input-mobile-sheet", classNamePopup ? `${classNamePopup}--mobile-sheet` : ""]), label: translate("Pick a date"), triggerRef: triggerRef, isOpen: isOpen, onHidePanel: memoizedHandleClose, onCloseClick: memoizedHandleClose, useTrapFocusWithTrigger: true, onReadyForFocus: onReadyForFocus, children: [(0, jsx_runtime_1.jsx)(mobileSheet_1.MobileSheet.Title, { children: title }), (0, jsx_runtime_1.jsx)(mobileSheet_1.MobileSheet.Content, { children: renderContent ? component : null }), (0, jsx_runtime_1.jsx)(mobileSheet_1.MobileSheet.Footer, { children: memoizedMobileFooter })] }), [classNamePopup, component, isOpen, memoizedHandleClose, memoizedMobileFooter, onReadyForFocus, renderContent, title, translate]);
110
- (0, react_1.useEffect)(() => {
111
- if (!isMobile && !isOpen && prevIsOpenRef.current) {
112
- setTimeout(() => {
113
- var _a;
114
- (_a = triggerRef.current) === null || _a === void 0 ? void 0 : _a.focus();
115
- }, 0);
116
- }
117
- prevIsOpenRef.current = isOpen;
118
- }, [isOpen, isMobile]);
119
- const buttonCurrentLabel = getButtonLabel();
120
- const buttonCurrentTitle = getButtonLabel(true);
121
- const chipTriggerComponent = (0, react_1.useMemo)(() => (0, jsx_runtime_1.jsx)(chip_1.Chip, { status: isDefaultState ? undefined : chipStatus || "active", title: isDefaultState ? chipName : buttonCurrentTitle, isOpen: isOpen, disabled: disabled, onClick: toggleVisibility, onClose: isDefaultState ? undefined : handleClearAndApply, triggerRef: triggerRef, icon: chipIcon || iconCalendar_1.IconCalendar, id: chipId, children: isDefaultState ? chipName : buttonCurrentLabel }), [isDefaultState, chipStatus, isOpen, disabled, toggleVisibility, handleClearAndApply, chipIcon, chipId, chipName, buttonCurrentLabel, buttonCurrentTitle]);
122
- if (isReadOnly) {
123
- const readOnlyValue = getButtonLabel() === translate("Pick a date") ? " " : getButtonLabel();
124
- return (0, jsx_runtime_1.jsx)(reviewTextControl_1.ReviewTextControl, { value: readOnlyValue });
107
+ const DateInputRaw = props => {
108
+ var _a;
109
+ const {
110
+ className,
111
+ classNamePopup,
112
+ defaultValue,
113
+ id,
114
+ dropDownTitle,
115
+ timeSelect,
116
+ disableFutureDates,
117
+ disablePastDates,
118
+ disableDatesBefore,
119
+ disableDatesAfter,
120
+ isReadOnly,
121
+ requireSelection = false,
122
+ chip,
123
+ chipIcon,
124
+ chipId,
125
+ chipName,
126
+ buttonLabel,
127
+ error
128
+ } = props;
129
+ const {
130
+ name,
131
+ disabled,
132
+ value,
133
+ onChange,
134
+ onBlur
135
+ } = (0, useFormFieldValues_1.useFormFieldValues)(props.controller, props);
136
+ const isFormItemVal = (0, isFormItem_1.isFormItem)(props);
137
+ const accessibilityProps = (0, getAriaAttributes_1.getAriaAttributes)(props);
138
+ const defaultValueInner = isFormItemVal ? (_a = props.controller) === null || _a === void 0 ? void 0 : _a.defaultValue : defaultValue;
139
+ const {
140
+ translate
141
+ } = (0, useLanguage_1.useLanguage)();
142
+ const isMobile = (0, useMobile_1.useMobile)();
143
+ const chipStatus = (0, chipStatusProvider_1.useChipStatus)();
144
+ const drivePopupClassName = (0, useDriveClassName_1.useDriveClassName)("zen-date-input-popup");
145
+ const driveWrapperClassName = (0, useDriveClassName_1.useDriveClassName)("zen-date-input-popup-wrapper");
146
+ const {
147
+ dateFormat,
148
+ timeFormat,
149
+ weekStartsOnSunday,
150
+ toLocalDateTime
151
+ } = (0, react_1.useContext)(userFormatContext_1.userFormatContext);
152
+ const dateFormatter = (0, react_1.useCallback)(d => (0, formatDate_1.formatDate)(toLocalDateTime(d), dateFormat, translate), [dateFormat, toLocalDateTime, translate]);
153
+ const dateDeformatter = (0, react_1.useCallback)(d => (0, formatDate_1.deformatDate)(d, dateFormat, translate) || new Date(""), [dateFormat, translate]);
154
+ const [isOpen, setIsOpen] = (0, react_1.useState)(false);
155
+ const [renderContent, setRenderContent] = (0, react_1.useState)(false);
156
+ const prevIsOpenRef = (0, react_1.useRef)(false);
157
+ const [customDate, setCustomDate] = (0, react_1.useState)(value);
158
+ const triggerRef = (0, react_1.useRef)(null);
159
+ const [prevValue, setPrevValue] = (0, react_1.useState)(value);
160
+ const isDefaultState = (0, react_1.useMemo)(() => (0, cutSeconds_1.cutSeconds)(defaultValueInner) === (0, cutSeconds_1.cutSeconds)(customDate), [defaultValueInner, customDate]);
161
+ const isValueState = (0, react_1.useMemo)(() => (0, cutSeconds_1.cutSeconds)(value) === (0, cutSeconds_1.cutSeconds)(customDate), [value, customDate]);
162
+ const componentId = (0, useUniqueId_1.useUniqueId)();
163
+ const cssClass = (0, classNames_1.classNames)(["zen-date-input", className !== null && className !== void 0 ? className : "", error ? "zen-date-input--error" : "", !value || (0, cutSeconds_1.cutSeconds)(defaultValueInner) === (0, cutSeconds_1.cutSeconds)(value) ? "" : "zen-date-input--active"]);
164
+ const title = (0, react_1.useMemo)(() => dropDownTitle || translate("Pick a date"), [dropDownTitle, translate]);
165
+ const toggleVisibility = (0, react_1.useCallback)(() => setIsOpen(currentIsOpen => !currentIsOpen), []);
166
+ const getButtonLabel = (0, react_1.useCallback)(getTitle => (0, getLabel_1.getLabel)(value, dateFormat, timeFormat, translate, toLocalDateTime, timeSelect, buttonLabel, getTitle), [value, dateFormat, timeFormat, translate, toLocalDateTime, buttonLabel, timeSelect]);
167
+ (0, react_1.useEffect)(() => {
168
+ if (prevValue !== value) {
169
+ setPrevValue(value);
125
170
  }
126
- return (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [chip ? chipTriggerComponent : (0, jsx_runtime_1.jsx)(textIconButton_1.TextIconButton, Object.assign({ id: id || undefined, name: name, onBlur: onBlur, htmlType: "button", title: buttonCurrentTitle, icon: iconCalendar_1.IconCalendar, iconPosition: textIconButton_1.ButtonIconPosition.Start, className: cssClass, disabled: disabled, onClick: toggleVisibility, ref: triggerRef }, accessibilityProps, { children: buttonCurrentLabel })), isMobile ? memoizedMobileView : memoizedDesktopView] });
171
+ }, [prevValue, value]);
172
+ const onCalendarChange = (0, react_1.useCallback)(val => {
173
+ setCustomDate(val.from);
174
+ }, []);
175
+ const handleRangeSelection = (0, react_1.useCallback)(() => {
176
+ const newState = customDate;
177
+ setPrevValue(newState);
178
+ onChange(newState);
179
+ setCustomDate(newState);
180
+ setIsOpen(false);
181
+ }, [customDate, onChange]);
182
+ const handleApplyClick = (0, react_1.useCallback)(() => {
183
+ setIsOpen(false);
184
+ handleRangeSelection();
185
+ }, [handleRangeSelection]);
186
+ const handleClearClick = (0, react_1.useCallback)(() => {
187
+ setCustomDate(defaultValueInner);
188
+ }, [defaultValueInner]);
189
+ const handleClearAndApply = (0, react_1.useCallback)(() => {
190
+ setCustomDate(defaultValueInner);
191
+ setIsOpen(false);
192
+ onChange(defaultValue);
193
+ }, [defaultValue, defaultValueInner, onChange]);
194
+ (0, react_1.useEffect)(() => {
195
+ setCustomDate(value);
196
+ }, [value]);
197
+ const memoizedHandleClose = (0, react_1.useCallback)(() => {
198
+ setIsOpen(false);
199
+ }, [setIsOpen]);
200
+ const onReadyForFocus = (0, react_1.useCallback)(isCurrentOpen => {
201
+ if (!isMobile) {
202
+ return;
203
+ }
204
+ if (isCurrentOpen) {
205
+ setRenderContent(true);
206
+ return;
207
+ }
208
+ setRenderContent(false);
209
+ prevIsOpenRef.current = isCurrentOpen;
210
+ }, [isMobile]);
211
+ const component = (0, react_1.useMemo)(() => (0, jsx_runtime_1.jsx)("div", {
212
+ className: "zen-date-input-inner__calendar-wrapper",
213
+ children: (0, jsx_runtime_1.jsx)(dateInputInner_1.DateInputInner, {
214
+ id: id || componentId,
215
+ value: {
216
+ from: customDate,
217
+ to: undefined
218
+ },
219
+ onChange: onCalendarChange,
220
+ dateFormat: dateFormat,
221
+ dateFormatter: dateFormatter,
222
+ dateDeformatter: dateDeformatter,
223
+ startDayOfWeek: weekStartsOnSunday ? 0 : 1,
224
+ dateRangeMode: false,
225
+ selectTime: timeSelect,
226
+ disableFutureDates: disableFutureDates,
227
+ disablePastDates: disablePastDates,
228
+ disableDatesAfter: disableDatesAfter,
229
+ disableDatesBefore: disableDatesBefore,
230
+ title: "",
231
+ isMobileView: isMobile,
232
+ requireSelection: requireSelection
233
+ })
234
+ }), [componentId, customDate, dateDeformatter, dateFormat, dateFormatter, disableDatesAfter, disableDatesBefore, disableFutureDates, disablePastDates, id, isMobile, onCalendarChange, requireSelection, timeSelect, weekStartsOnSunday]);
235
+ const memoizedDesktopView = (0, react_1.useMemo)(() => (0, jsx_runtime_1.jsx)(controlledPopup_1.ControlledPopup, {
236
+ className: (0, classNames_1.classNames)(["zen-date-input-popup-wrapper", driveWrapperClassName || ""]),
237
+ ariaLabel: translate("Pick a date"),
238
+ useTrapFocusWithTrigger: "on",
239
+ triggerRef: triggerRef,
240
+ onOpenChange: setIsOpen,
241
+ shouldHoldScroll: true,
242
+ isOpen: isOpen,
243
+ recalculateOnScroll: true,
244
+ children: (0, jsx_runtime_1.jsxs)("div", {
245
+ className: (0, classNames_1.classNames)(["zen-date-input-popup", drivePopupClassName || "", classNamePopup !== null && classNamePopup !== void 0 ? classNamePopup : ""]),
246
+ children: [(0, jsx_runtime_1.jsx)("div", {
247
+ className: "zen-date-input-popup__header",
248
+ children: title
249
+ }), component, (0, jsx_runtime_1.jsxs)("div", {
250
+ className: "zen-date-input-popup__footer",
251
+ children: [(0, jsx_runtime_1.jsx)(button_1.Button, {
252
+ className: "zen-date-input-popup__button-clear",
253
+ type: buttonType_1.ButtonType.Tertiary,
254
+ disabled: isDefaultState,
255
+ onClick: handleClearClick,
256
+ children: translate("Clear")
257
+ }), (0, jsx_runtime_1.jsx)(button_1.Button, {
258
+ className: "zen-date-input-popup__button-apply",
259
+ type: buttonType_1.ButtonType.Primary,
260
+ disabled: isValueState || requireSelection && !customDate,
261
+ onClick: handleApplyClick,
262
+ children: translate("Apply")
263
+ })]
264
+ })]
265
+ })
266
+ }), [classNamePopup, component, customDate, drivePopupClassName, driveWrapperClassName, handleApplyClick, handleClearClick, isDefaultState, isOpen, isValueState, requireSelection, title, translate]);
267
+ const memoizedMobileFooter = (0, react_1.useMemo)(() => (0, jsx_runtime_1.jsxs)(footerButtons_1.FooterButtons, {
268
+ children: [(0, jsx_runtime_1.jsx)(button_1.Button, {
269
+ type: buttonType_1.ButtonType.Primary,
270
+ disabled: isValueState || requireSelection && !customDate,
271
+ onClick: handleApplyClick,
272
+ children: translate("Apply")
273
+ }), (0, jsx_runtime_1.jsx)(button_1.Button, {
274
+ type: buttonType_1.ButtonType.Tertiary,
275
+ disabled: isDefaultState,
276
+ onClick: handleClearClick,
277
+ children: translate("Clear")
278
+ })]
279
+ }), [customDate, handleApplyClick, handleClearClick, isDefaultState, isValueState, requireSelection, translate]);
280
+ const memoizedMobileView = (0, react_1.useMemo)(() => (0, jsx_runtime_1.jsxs)(mobileSheet_1.MobileSheet, {
281
+ className: (0, classNames_1.classNames)(["zen-date-input-mobile-sheet", classNamePopup ? `${classNamePopup}--mobile-sheet` : ""]),
282
+ label: translate("Pick a date"),
283
+ triggerRef: triggerRef,
284
+ isOpen: isOpen,
285
+ onHidePanel: memoizedHandleClose,
286
+ onCloseClick: memoizedHandleClose,
287
+ useTrapFocusWithTrigger: true,
288
+ onReadyForFocus: onReadyForFocus,
289
+ children: [(0, jsx_runtime_1.jsx)(mobileSheet_1.MobileSheet.Title, {
290
+ children: title
291
+ }), (0, jsx_runtime_1.jsx)(mobileSheet_1.MobileSheet.Content, {
292
+ children: renderContent ? component : null
293
+ }), (0, jsx_runtime_1.jsx)(mobileSheet_1.MobileSheet.Footer, {
294
+ children: memoizedMobileFooter
295
+ })]
296
+ }), [classNamePopup, component, isOpen, memoizedHandleClose, memoizedMobileFooter, onReadyForFocus, renderContent, title, translate]);
297
+ (0, react_1.useEffect)(() => {
298
+ if (!isMobile && !isOpen && prevIsOpenRef.current) {
299
+ setTimeout(() => {
300
+ var _a;
301
+ (_a = triggerRef.current) === null || _a === void 0 ? void 0 : _a.focus();
302
+ }, 0);
303
+ }
304
+ prevIsOpenRef.current = isOpen;
305
+ }, [isOpen, isMobile]);
306
+ const buttonCurrentLabel = getButtonLabel();
307
+ const buttonCurrentTitle = getButtonLabel(true);
308
+ const chipTriggerComponent = (0, react_1.useMemo)(() => (0, jsx_runtime_1.jsx)(chip_1.Chip, {
309
+ status: isDefaultState ? undefined : chipStatus || "active",
310
+ title: isDefaultState ? chipName : buttonCurrentTitle,
311
+ isOpen: isOpen,
312
+ disabled: disabled,
313
+ onClick: toggleVisibility,
314
+ onClose: isDefaultState ? undefined : handleClearAndApply,
315
+ triggerRef: triggerRef,
316
+ icon: chipIcon || iconCalendar_1.IconCalendar,
317
+ id: chipId,
318
+ children: isDefaultState ? chipName : buttonCurrentLabel
319
+ }), [isDefaultState, chipStatus, isOpen, disabled, toggleVisibility, handleClearAndApply, chipIcon, chipId, chipName, buttonCurrentLabel, buttonCurrentTitle]);
320
+ if (isReadOnly) {
321
+ const readOnlyValue = getButtonLabel() === translate("Pick a date") ? " " : getButtonLabel();
322
+ return (0, jsx_runtime_1.jsx)(reviewTextControl_1.ReviewTextControl, {
323
+ value: readOnlyValue
324
+ });
325
+ }
326
+ return (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, {
327
+ children: [chip ? chipTriggerComponent : (0, jsx_runtime_1.jsx)(textIconButton_1.TextIconButton, Object.assign({
328
+ id: id || undefined,
329
+ name: name,
330
+ onBlur: onBlur,
331
+ htmlType: "button",
332
+ title: buttonCurrentTitle,
333
+ icon: iconCalendar_1.IconCalendar,
334
+ iconPosition: textIconButton_1.ButtonIconPosition.Start,
335
+ className: cssClass,
336
+ disabled: disabled,
337
+ onClick: toggleVisibility,
338
+ ref: triggerRef
339
+ }, accessibilityProps, {
340
+ children: buttonCurrentLabel
341
+ })), isMobile ? memoizedMobileView : memoizedDesktopView]
342
+ });
127
343
  };
128
344
  exports.DateInputRaw = DateInputRaw;
129
- exports.TRANSLATIONS = [
130
- "Pick a date",
131
- "Clear",
132
- "Apply",
133
- "Today"
134
- ];
345
+ exports.TRANSLATIONS = ["Pick a date", "Clear", "Apply", "Today"];