@ui5/webcomponents 1.21.0 → 1.22.0-rc.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 (797) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/Avatar.d.ts +16 -47
  4. package/dist/Avatar.js +4 -12
  5. package/dist/Avatar.js.map +1 -1
  6. package/dist/AvatarGroup.d.ts +13 -30
  7. package/dist/AvatarGroup.js +11 -15
  8. package/dist/AvatarGroup.js.map +1 -1
  9. package/dist/Badge.d.ts +61 -20
  10. package/dist/Badge.js +98 -12
  11. package/dist/Badge.js.map +1 -1
  12. package/dist/Breadcrumbs.d.ts +4 -16
  13. package/dist/Breadcrumbs.js +16 -6
  14. package/dist/Breadcrumbs.js.map +1 -1
  15. package/dist/BreadcrumbsItem.d.ts +4 -18
  16. package/dist/BreadcrumbsItem.js +1 -6
  17. package/dist/BreadcrumbsItem.js.map +1 -1
  18. package/dist/BusyIndicator.d.ts +6 -24
  19. package/dist/BusyIndicator.js +2 -4
  20. package/dist/BusyIndicator.js.map +1 -1
  21. package/dist/Button.d.ts +20 -48
  22. package/dist/Button.js +3 -15
  23. package/dist/Button.js.map +1 -1
  24. package/dist/Calendar.d.ts +7 -18
  25. package/dist/Calendar.js +19 -19
  26. package/dist/Calendar.js.map +1 -1
  27. package/dist/CalendarDate.d.ts +2 -7
  28. package/dist/CalendarDate.js +1 -5
  29. package/dist/CalendarDate.js.map +1 -1
  30. package/dist/CalendarHeader.d.ts +8 -9
  31. package/dist/CalendarHeader.js.map +1 -1
  32. package/dist/CalendarPart.d.ts +1 -4
  33. package/dist/CalendarPart.js +7 -5
  34. package/dist/CalendarPart.js.map +1 -1
  35. package/dist/Card.d.ts +5 -19
  36. package/dist/Card.js +1 -5
  37. package/dist/Card.js.map +1 -1
  38. package/dist/CardHeader.d.ts +14 -38
  39. package/dist/CardHeader.js +6 -18
  40. package/dist/CardHeader.js.map +1 -1
  41. package/dist/Carousel.d.ts +17 -58
  42. package/dist/Carousel.js +7 -19
  43. package/dist/Carousel.js.map +1 -1
  44. package/dist/CheckBox.d.ts +14 -49
  45. package/dist/CheckBox.js +3 -15
  46. package/dist/CheckBox.js.map +1 -1
  47. package/dist/ColorPalette.d.ts +6 -18
  48. package/dist/ColorPalette.js +4 -6
  49. package/dist/ColorPalette.js.map +1 -1
  50. package/dist/ColorPaletteItem.d.ts +10 -14
  51. package/dist/ColorPaletteItem.js +2 -5
  52. package/dist/ColorPaletteItem.js.map +1 -1
  53. package/dist/ColorPalettePopover.d.ts +17 -32
  54. package/dist/ColorPalettePopover.js +8 -13
  55. package/dist/ColorPalettePopover.js.map +1 -1
  56. package/dist/ColorPicker.d.ts +6 -8
  57. package/dist/ColorPicker.js +1 -5
  58. package/dist/ColorPicker.js.map +1 -1
  59. package/dist/ComboBox.d.ts +16 -58
  60. package/dist/ComboBox.js +5 -9
  61. package/dist/ComboBox.js.map +1 -1
  62. package/dist/ComboBoxGroupItem.d.ts +3 -8
  63. package/dist/ComboBoxGroupItem.js +2 -5
  64. package/dist/ComboBoxGroupItem.js.map +1 -1
  65. package/dist/ComboBoxItem.d.ts +4 -11
  66. package/dist/ComboBoxItem.js +2 -5
  67. package/dist/ComboBoxItem.js.map +1 -1
  68. package/dist/CustomListItem.d.ts +9 -27
  69. package/dist/CustomListItem.js +8 -24
  70. package/dist/CustomListItem.js.map +1 -1
  71. package/dist/DateComponentBase.d.ts +9 -18
  72. package/dist/DateComponentBase.js +2 -3
  73. package/dist/DateComponentBase.js.map +1 -1
  74. package/dist/DatePicker.d.ts +44 -75
  75. package/dist/DatePicker.js +46 -44
  76. package/dist/DatePicker.js.map +1 -1
  77. package/dist/DateRangePicker.d.ts +10 -24
  78. package/dist/DateRangePicker.js +5 -16
  79. package/dist/DateRangePicker.js.map +1 -1
  80. package/dist/DateTimePicker.d.ts +7 -9
  81. package/dist/DateTimePicker.js +5 -5
  82. package/dist/DateTimePicker.js.map +1 -1
  83. package/dist/DayPicker.d.ts +42 -35
  84. package/dist/DayPicker.js +35 -27
  85. package/dist/DayPicker.js.map +1 -1
  86. package/dist/Dialog.d.ts +11 -40
  87. package/dist/Dialog.js +6 -19
  88. package/dist/Dialog.js.map +1 -1
  89. package/dist/FileUploader.d.ts +11 -39
  90. package/dist/FileUploader.js +7 -9
  91. package/dist/FileUploader.js.map +1 -1
  92. package/dist/GroupHeaderListItem.d.ts +6 -18
  93. package/dist/GroupHeaderListItem.js +5 -5
  94. package/dist/GroupHeaderListItem.js.map +1 -1
  95. package/dist/Icon.d.ts +12 -34
  96. package/dist/Icon.js +4 -15
  97. package/dist/Icon.js.map +1 -1
  98. package/dist/Input.d.ts +38 -84
  99. package/dist/Input.js +20 -22
  100. package/dist/Input.js.map +1 -1
  101. package/dist/Interfaces.d.ts +115 -133
  102. package/dist/Interfaces.js +1 -193
  103. package/dist/Interfaces.js.map +1 -1
  104. package/dist/Label.d.ts +8 -25
  105. package/dist/Label.js +4 -13
  106. package/dist/Label.js.map +1 -1
  107. package/dist/Link.d.ts +13 -42
  108. package/dist/Link.js +18 -9
  109. package/dist/Link.js.map +1 -1
  110. package/dist/List.d.ts +14 -50
  111. package/dist/List.js +21 -13
  112. package/dist/List.js.map +1 -1
  113. package/dist/ListItem.d.ts +10 -32
  114. package/dist/ListItem.js +2 -4
  115. package/dist/ListItem.js.map +1 -1
  116. package/dist/ListItemBase.d.ts +3 -9
  117. package/dist/ListItemBase.js +1 -3
  118. package/dist/ListItemBase.js.map +1 -1
  119. package/dist/Menu.d.ts +10 -33
  120. package/dist/Menu.js +21 -16
  121. package/dist/Menu.js.map +1 -1
  122. package/dist/MenuItem.d.ts +11 -32
  123. package/dist/MenuItem.js +1 -5
  124. package/dist/MenuItem.js.map +1 -1
  125. package/dist/MessageStrip.d.ts +10 -28
  126. package/dist/MessageStrip.js +5 -5
  127. package/dist/MessageStrip.js.map +1 -1
  128. package/dist/MonthPicker.d.ts +8 -13
  129. package/dist/MonthPicker.js +6 -13
  130. package/dist/MonthPicker.js.map +1 -1
  131. package/dist/MultiComboBox.d.ts +19 -70
  132. package/dist/MultiComboBox.js +8 -24
  133. package/dist/MultiComboBox.js.map +1 -1
  134. package/dist/MultiComboBoxGroupItem.d.ts +2 -8
  135. package/dist/MultiComboBoxGroupItem.js +1 -5
  136. package/dist/MultiComboBoxGroupItem.js.map +1 -1
  137. package/dist/MultiComboBoxItem.d.ts +4 -8
  138. package/dist/MultiComboBoxItem.js +2 -5
  139. package/dist/MultiComboBoxItem.js.map +1 -1
  140. package/dist/MultiInput.d.ts +9 -16
  141. package/dist/MultiInput.js +4 -7
  142. package/dist/MultiInput.js.map +1 -1
  143. package/dist/NavigationMenu.d.ts +36 -0
  144. package/dist/NavigationMenu.js +123 -0
  145. package/dist/NavigationMenu.js.map +1 -0
  146. package/dist/NavigationMenuItem.d.ts +67 -0
  147. package/dist/NavigationMenuItem.js +51 -0
  148. package/dist/NavigationMenuItem.js.map +1 -0
  149. package/dist/Option.d.ts +11 -28
  150. package/dist/Option.js +2 -6
  151. package/dist/Option.js.map +1 -1
  152. package/dist/Panel.d.ts +16 -52
  153. package/dist/Panel.js +4 -15
  154. package/dist/Panel.js.map +1 -1
  155. package/dist/Popover.d.ts +22 -62
  156. package/dist/Popover.js +12 -27
  157. package/dist/Popover.js.map +1 -1
  158. package/dist/Popup.d.ts +10 -46
  159. package/dist/Popup.js +10 -20
  160. package/dist/Popup.js.map +1 -1
  161. package/dist/ProgressIndicator.d.ts +8 -22
  162. package/dist/ProgressIndicator.js +2 -5
  163. package/dist/ProgressIndicator.js.map +1 -1
  164. package/dist/RadioButton.d.ts +13 -40
  165. package/dist/RadioButton.js +1 -5
  166. package/dist/RadioButton.js.map +1 -1
  167. package/dist/RangeSlider.d.ts +12 -27
  168. package/dist/RangeSlider.js +10 -21
  169. package/dist/RangeSlider.js.map +1 -1
  170. package/dist/RatingIndicator.d.ts +11 -27
  171. package/dist/RatingIndicator.js +1 -5
  172. package/dist/RatingIndicator.js.map +1 -1
  173. package/dist/ResponsivePopover.d.ts +8 -29
  174. package/dist/ResponsivePopover.js +7 -27
  175. package/dist/ResponsivePopover.js.map +1 -1
  176. package/dist/SegmentedButton.d.ts +13 -28
  177. package/dist/SegmentedButton.js +13 -14
  178. package/dist/SegmentedButton.js.map +1 -1
  179. package/dist/SegmentedButtonItem.d.ts +9 -19
  180. package/dist/SegmentedButtonItem.js +2 -5
  181. package/dist/SegmentedButtonItem.js.map +1 -1
  182. package/dist/Select.d.ts +15 -66
  183. package/dist/Select.js +18 -20
  184. package/dist/Select.js.map +1 -1
  185. package/dist/SelectMenu.d.ts +3 -10
  186. package/dist/SelectMenu.js +2 -4
  187. package/dist/SelectMenu.js.map +1 -1
  188. package/dist/SelectMenuOption.d.ts +12 -32
  189. package/dist/SelectMenuOption.js +11 -23
  190. package/dist/SelectMenuOption.js.map +1 -1
  191. package/dist/Slider.d.ts +5 -18
  192. package/dist/Slider.js +4 -15
  193. package/dist/Slider.js.map +1 -1
  194. package/dist/SliderBase.d.ts +11 -32
  195. package/dist/SliderBase.js +22 -17
  196. package/dist/SliderBase.js.map +1 -1
  197. package/dist/SplitButton.d.ts +25 -48
  198. package/dist/SplitButton.js +6 -14
  199. package/dist/SplitButton.js.map +1 -1
  200. package/dist/StandardListItem.d.ts +23 -58
  201. package/dist/StandardListItem.js +15 -22
  202. package/dist/StandardListItem.js.map +1 -1
  203. package/dist/StepInput.d.ts +20 -51
  204. package/dist/StepInput.js +7 -9
  205. package/dist/StepInput.js.map +1 -1
  206. package/dist/SuggestionGroupItem.d.ts +5 -9
  207. package/dist/SuggestionGroupItem.js +2 -5
  208. package/dist/SuggestionGroupItem.js.map +1 -1
  209. package/dist/SuggestionItem.d.ts +15 -27
  210. package/dist/SuggestionItem.js +2 -5
  211. package/dist/SuggestionItem.js.map +1 -1
  212. package/dist/SuggestionListItem.d.ts +7 -20
  213. package/dist/SuggestionListItem.js +4 -15
  214. package/dist/SuggestionListItem.js.map +1 -1
  215. package/dist/Switch.d.ts +16 -48
  216. package/dist/Switch.js +6 -17
  217. package/dist/Switch.js.map +1 -1
  218. package/dist/Tab.d.ts +10 -33
  219. package/dist/Tab.js +3 -7
  220. package/dist/Tab.js.map +1 -1
  221. package/dist/TabContainer.d.ts +21 -87
  222. package/dist/TabContainer.js +14 -23
  223. package/dist/TabContainer.js.map +1 -1
  224. package/dist/TabSeparator.d.ts +3 -8
  225. package/dist/TabSeparator.js +2 -7
  226. package/dist/TabSeparator.js.map +1 -1
  227. package/dist/Table.d.ts +18 -64
  228. package/dist/Table.js +13 -16
  229. package/dist/Table.js.map +1 -1
  230. package/dist/TableCell.d.ts +2 -17
  231. package/dist/TableCell.js +2 -14
  232. package/dist/TableCell.js.map +1 -1
  233. package/dist/TableColumn.d.ts +7 -26
  234. package/dist/TableColumn.js +3 -14
  235. package/dist/TableColumn.js.map +1 -1
  236. package/dist/TableGroupRow.d.ts +6 -28
  237. package/dist/TableGroupRow.js +3 -15
  238. package/dist/TableGroupRow.js.map +1 -1
  239. package/dist/TableRow.d.ts +11 -33
  240. package/dist/TableRow.js +4 -18
  241. package/dist/TableRow.js.map +1 -1
  242. package/dist/TextArea.d.ts +20 -61
  243. package/dist/TextArea.js +3 -16
  244. package/dist/TextArea.js.map +1 -1
  245. package/dist/TimePicker.d.ts +5 -15
  246. package/dist/TimePicker.js +2 -7
  247. package/dist/TimePicker.js.map +1 -1
  248. package/dist/TimePickerBase.d.ts +15 -51
  249. package/dist/TimePickerBase.js +23 -39
  250. package/dist/TimePickerBase.js.map +1 -1
  251. package/dist/TimePickerClock.d.ts +49 -89
  252. package/dist/TimePickerClock.js +38 -33
  253. package/dist/TimePickerClock.js.map +1 -1
  254. package/dist/TimePickerInternals.d.ts +16 -27
  255. package/dist/TimePickerInternals.js +9 -12
  256. package/dist/TimePickerInternals.js.map +1 -1
  257. package/dist/TimeSelection.d.ts +16 -23
  258. package/dist/TimeSelection.js +2 -5
  259. package/dist/TimeSelection.js.map +1 -1
  260. package/dist/TimeSelectionClocks.d.ts +16 -19
  261. package/dist/TimeSelectionClocks.js +14 -17
  262. package/dist/TimeSelectionClocks.js.map +1 -1
  263. package/dist/TimeSelectionInputs.d.ts +12 -16
  264. package/dist/TimeSelectionInputs.js +11 -15
  265. package/dist/TimeSelectionInputs.js.map +1 -1
  266. package/dist/Title.d.ts +7 -21
  267. package/dist/Title.js +5 -15
  268. package/dist/Title.js.map +1 -1
  269. package/dist/Toast.d.ts +12 -26
  270. package/dist/Toast.js +5 -5
  271. package/dist/Toast.js.map +1 -1
  272. package/dist/ToggleButton.d.ts +2 -7
  273. package/dist/ToggleButton.js +1 -4
  274. package/dist/ToggleButton.js.map +1 -1
  275. package/dist/ToggleSpinButton.d.ts +5 -15
  276. package/dist/ToggleSpinButton.js +1 -4
  277. package/dist/ToggleSpinButton.js.map +1 -1
  278. package/dist/Token.d.ts +13 -27
  279. package/dist/Token.js +2 -7
  280. package/dist/Token.js.map +1 -1
  281. package/dist/Tokenizer.d.ts +7 -11
  282. package/dist/Tokenizer.js +1 -5
  283. package/dist/Tokenizer.js.map +1 -1
  284. package/dist/Toolbar.d.ts +7 -26
  285. package/dist/Toolbar.js +4 -8
  286. package/dist/Toolbar.js.map +1 -1
  287. package/dist/ToolbarButton.d.ts +11 -34
  288. package/dist/ToolbarButton.js +1 -6
  289. package/dist/ToolbarButton.js.map +1 -1
  290. package/dist/ToolbarItem.d.ts +5 -28
  291. package/dist/ToolbarItem.js +1 -11
  292. package/dist/ToolbarItem.js.map +1 -1
  293. package/dist/ToolbarRegistry.d.ts +3 -3
  294. package/dist/ToolbarRegistry.js.map +1 -1
  295. package/dist/ToolbarSelect.d.ts +8 -27
  296. package/dist/ToolbarSelect.js +4 -10
  297. package/dist/ToolbarSelect.js.map +1 -1
  298. package/dist/ToolbarSelectOption.d.ts +2 -11
  299. package/dist/ToolbarSelectOption.js +1 -5
  300. package/dist/ToolbarSelectOption.js.map +1 -1
  301. package/dist/ToolbarSeparator.d.ts +1 -5
  302. package/dist/ToolbarSeparator.js +1 -5
  303. package/dist/ToolbarSeparator.js.map +1 -1
  304. package/dist/ToolbarSpacer.d.ts +2 -8
  305. package/dist/ToolbarSpacer.js +1 -5
  306. package/dist/ToolbarSpacer.js.map +1 -1
  307. package/dist/Tree.d.ts +12 -36
  308. package/dist/Tree.js +28 -14
  309. package/dist/Tree.js.map +1 -1
  310. package/dist/TreeItem.d.ts +8 -25
  311. package/dist/TreeItem.js +5 -16
  312. package/dist/TreeItem.js.map +1 -1
  313. package/dist/TreeItemBase.d.ts +12 -38
  314. package/dist/TreeItemBase.js +2 -9
  315. package/dist/TreeItemBase.js.map +1 -1
  316. package/dist/TreeItemCustom.d.ts +6 -22
  317. package/dist/TreeItemCustom.js +5 -16
  318. package/dist/TreeItemCustom.js.map +1 -1
  319. package/dist/WheelSlider.d.ts +9 -23
  320. package/dist/WheelSlider.js +11 -11
  321. package/dist/WheelSlider.js.map +1 -1
  322. package/dist/YearPicker.d.ts +14 -12
  323. package/dist/YearPicker.js +12 -12
  324. package/dist/YearPicker.js.map +1 -1
  325. package/dist/bundle.esm.js.map +1 -1
  326. package/dist/css/themes/Avatar.css +1 -1
  327. package/dist/css/themes/AvatarGroup.css +1 -1
  328. package/dist/css/themes/Badge.css +1 -1
  329. package/dist/css/themes/Breadcrumbs.css +1 -1
  330. package/dist/css/themes/BusyIndicator.css +1 -1
  331. package/dist/css/themes/Button.css +1 -1
  332. package/dist/css/themes/Calendar.css +1 -1
  333. package/dist/css/themes/CalendarHeader.css +1 -1
  334. package/dist/css/themes/Card.css +1 -1
  335. package/dist/css/themes/CardHeader.css +1 -1
  336. package/dist/css/themes/Carousel.css +1 -1
  337. package/dist/css/themes/CheckBox.css +1 -1
  338. package/dist/css/themes/ColorPalette.css +1 -1
  339. package/dist/css/themes/ColorPaletteItem.css +1 -1
  340. package/dist/css/themes/ColorPalettePopover.css +1 -1
  341. package/dist/css/themes/ColorPicker.css +1 -1
  342. package/dist/css/themes/ComboBox.css +1 -1
  343. package/dist/css/themes/CustomListItem.css +1 -1
  344. package/dist/css/themes/DatePicker.css +1 -1
  345. package/dist/css/themes/DateTimePickerPopover.css +1 -1
  346. package/dist/css/themes/DayPicker.css +1 -1
  347. package/dist/css/themes/Dialog.css +1 -1
  348. package/dist/css/themes/FileUploader.css +1 -1
  349. package/dist/css/themes/GroupHeaderListItem.css +1 -1
  350. package/dist/css/themes/GrowingButton.css +1 -1
  351. package/dist/css/themes/Icon.css +1 -1
  352. package/dist/css/themes/Input.css +1 -1
  353. package/dist/css/themes/InputIcon.css +1 -1
  354. package/dist/css/themes/InputSharedStyles.css +1 -1
  355. package/dist/css/themes/Link.css +1 -1
  356. package/dist/css/themes/List.css +1 -1
  357. package/dist/css/themes/ListItem.css +1 -1
  358. package/dist/css/themes/ListItemBase.css +1 -1
  359. package/dist/css/themes/Menu.css +1 -1
  360. package/dist/css/themes/MessageStrip.css +1 -1
  361. package/dist/css/themes/MonthPicker.css +1 -1
  362. package/dist/css/themes/MultiComboBox.css +1 -1
  363. package/dist/css/themes/MultiComboBoxPopover.css +1 -1
  364. package/dist/css/themes/MultiInput.css +1 -1
  365. package/dist/css/themes/NavigationMenu.css +1 -0
  366. package/dist/css/themes/Panel.css +1 -1
  367. package/dist/css/themes/Popover.css +1 -1
  368. package/dist/css/themes/PopupsCommon.css +1 -1
  369. package/dist/css/themes/ProgressIndicator.css +1 -1
  370. package/dist/css/themes/RadioButton.css +1 -1
  371. package/dist/css/themes/RangeSlider.css +1 -1
  372. package/dist/css/themes/RatingIndicator.css +1 -1
  373. package/dist/css/themes/ResponsivePopover.css +1 -1
  374. package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
  375. package/dist/css/themes/SegmentedButton.css +1 -1
  376. package/dist/css/themes/Select.css +1 -1
  377. package/dist/css/themes/SelectMenu.css +1 -1
  378. package/dist/css/themes/SelectPopover.css +1 -1
  379. package/dist/css/themes/SliderBase.css +1 -1
  380. package/dist/css/themes/SplitButton.css +1 -1
  381. package/dist/css/themes/StepInput.css +1 -1
  382. package/dist/css/themes/Switch.css +1 -1
  383. package/dist/css/themes/TabContainer.css +1 -1
  384. package/dist/css/themes/TabInOverflow.css +1 -1
  385. package/dist/css/themes/TabInStrip.css +1 -1
  386. package/dist/css/themes/TabSemanticIcon.css +1 -1
  387. package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
  388. package/dist/css/themes/Table.css +1 -1
  389. package/dist/css/themes/TableCell.css +1 -1
  390. package/dist/css/themes/TableColumn.css +1 -1
  391. package/dist/css/themes/TableGroupRow.css +1 -1
  392. package/dist/css/themes/TableRow.css +1 -1
  393. package/dist/css/themes/TextArea.css +1 -1
  394. package/dist/css/themes/TimePicker.css +1 -1
  395. package/dist/css/themes/Toast.css +1 -1
  396. package/dist/css/themes/ToggleButton.css +1 -1
  397. package/dist/css/themes/Token.css +1 -1
  398. package/dist/css/themes/Tokenizer.css +1 -1
  399. package/dist/css/themes/TokenizerPopover.css +1 -1
  400. package/dist/css/themes/Toolbar.css +1 -1
  401. package/dist/css/themes/ToolbarPopover.css +1 -1
  402. package/dist/css/themes/TreeItem.css +1 -1
  403. package/dist/css/themes/ValueStateMessage.css +1 -1
  404. package/dist/css/themes/WheelSlider.css +1 -1
  405. package/dist/css/themes/YearPicker.css +1 -1
  406. package/dist/css/themes/sap_belize/parameters-bundle.css +1 -1
  407. package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -1
  408. package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -1
  409. package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
  410. package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
  411. package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
  412. package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
  413. package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
  414. package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
  415. package/dist/css/themes/sap_horizon_dark_exp/parameters-bundle.css +1 -1
  416. package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
  417. package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
  418. package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +1 -1
  419. package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
  420. package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -1
  421. package/dist/custom-elements-internal.json +20999 -0
  422. package/dist/custom-elements.json +16118 -1
  423. package/dist/features/InputSuggestions.d.ts +10 -10
  424. package/dist/features/InputSuggestions.js +1 -2
  425. package/dist/features/InputSuggestions.js.map +1 -1
  426. package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
  427. package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
  428. package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
  429. package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
  430. package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
  431. package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
  432. package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
  433. package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
  434. package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
  435. package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +1 -1
  436. package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
  437. package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
  438. package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +1 -1
  439. package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
  440. package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -1
  441. package/dist/generated/i18n/i18n-defaults.d.ts +9 -2
  442. package/dist/generated/i18n/i18n-defaults.js +9 -2
  443. package/dist/generated/i18n/i18n-defaults.js.map +1 -1
  444. package/dist/generated/templates/BadgeTemplate.lit.js +8 -3
  445. package/dist/generated/templates/BadgeTemplate.lit.js.map +1 -1
  446. package/dist/generated/templates/NavigationMenuTemplate.lit.d.ts +4 -0
  447. package/dist/generated/templates/NavigationMenuTemplate.lit.js +21 -0
  448. package/dist/generated/templates/NavigationMenuTemplate.lit.js.map +1 -0
  449. package/dist/generated/themes/Avatar.css.js +1 -1
  450. package/dist/generated/themes/Avatar.css.js.map +1 -1
  451. package/dist/generated/themes/AvatarGroup.css.js +1 -1
  452. package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
  453. package/dist/generated/themes/Badge.css.js +1 -1
  454. package/dist/generated/themes/Badge.css.js.map +1 -1
  455. package/dist/generated/themes/Breadcrumbs.css.js +1 -1
  456. package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
  457. package/dist/generated/themes/BusyIndicator.css.js +1 -1
  458. package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
  459. package/dist/generated/themes/Button.css.js +1 -1
  460. package/dist/generated/themes/Button.css.js.map +1 -1
  461. package/dist/generated/themes/Calendar.css.js +1 -1
  462. package/dist/generated/themes/Calendar.css.js.map +1 -1
  463. package/dist/generated/themes/CalendarHeader.css.js +1 -1
  464. package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
  465. package/dist/generated/themes/Card.css.js +1 -1
  466. package/dist/generated/themes/Card.css.js.map +1 -1
  467. package/dist/generated/themes/CardHeader.css.js +1 -1
  468. package/dist/generated/themes/CardHeader.css.js.map +1 -1
  469. package/dist/generated/themes/Carousel.css.js +1 -1
  470. package/dist/generated/themes/Carousel.css.js.map +1 -1
  471. package/dist/generated/themes/CheckBox.css.js +1 -1
  472. package/dist/generated/themes/CheckBox.css.js.map +1 -1
  473. package/dist/generated/themes/ColorPalette.css.js +1 -1
  474. package/dist/generated/themes/ColorPalette.css.js.map +1 -1
  475. package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
  476. package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
  477. package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
  478. package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
  479. package/dist/generated/themes/ColorPicker.css.js +1 -1
  480. package/dist/generated/themes/ColorPicker.css.js.map +1 -1
  481. package/dist/generated/themes/ComboBox.css.js +1 -1
  482. package/dist/generated/themes/ComboBox.css.js.map +1 -1
  483. package/dist/generated/themes/CustomListItem.css.js +1 -1
  484. package/dist/generated/themes/CustomListItem.css.js.map +1 -1
  485. package/dist/generated/themes/DatePicker.css.js +1 -1
  486. package/dist/generated/themes/DatePicker.css.js.map +1 -1
  487. package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
  488. package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
  489. package/dist/generated/themes/DayPicker.css.js +1 -1
  490. package/dist/generated/themes/DayPicker.css.js.map +1 -1
  491. package/dist/generated/themes/Dialog.css.js +1 -1
  492. package/dist/generated/themes/Dialog.css.js.map +1 -1
  493. package/dist/generated/themes/FileUploader.css.js +1 -1
  494. package/dist/generated/themes/FileUploader.css.js.map +1 -1
  495. package/dist/generated/themes/GroupHeaderListItem.css.js +1 -1
  496. package/dist/generated/themes/GroupHeaderListItem.css.js.map +1 -1
  497. package/dist/generated/themes/GrowingButton.css.js +1 -1
  498. package/dist/generated/themes/GrowingButton.css.js.map +1 -1
  499. package/dist/generated/themes/Icon.css.js +1 -1
  500. package/dist/generated/themes/Icon.css.js.map +1 -1
  501. package/dist/generated/themes/Input.css.js +1 -1
  502. package/dist/generated/themes/Input.css.js.map +1 -1
  503. package/dist/generated/themes/InputIcon.css.js +1 -1
  504. package/dist/generated/themes/InputIcon.css.js.map +1 -1
  505. package/dist/generated/themes/InputSharedStyles.css.js +1 -1
  506. package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
  507. package/dist/generated/themes/Link.css.js +1 -1
  508. package/dist/generated/themes/Link.css.js.map +1 -1
  509. package/dist/generated/themes/List.css.js +1 -1
  510. package/dist/generated/themes/List.css.js.map +1 -1
  511. package/dist/generated/themes/ListItem.css.js +1 -1
  512. package/dist/generated/themes/ListItem.css.js.map +1 -1
  513. package/dist/generated/themes/ListItemBase.css.js +1 -1
  514. package/dist/generated/themes/ListItemBase.css.js.map +1 -1
  515. package/dist/generated/themes/Menu.css.js +1 -1
  516. package/dist/generated/themes/Menu.css.js.map +1 -1
  517. package/dist/generated/themes/MessageStrip.css.js +1 -1
  518. package/dist/generated/themes/MessageStrip.css.js.map +1 -1
  519. package/dist/generated/themes/MonthPicker.css.js +1 -1
  520. package/dist/generated/themes/MonthPicker.css.js.map +1 -1
  521. package/dist/generated/themes/MultiComboBox.css.js +1 -1
  522. package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
  523. package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
  524. package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
  525. package/dist/generated/themes/MultiInput.css.js +1 -1
  526. package/dist/generated/themes/MultiInput.css.js.map +1 -1
  527. package/dist/generated/themes/NavigationMenu.css.d.ts +3 -0
  528. package/dist/generated/themes/NavigationMenu.css.js +9 -0
  529. package/dist/generated/themes/NavigationMenu.css.js.map +1 -0
  530. package/dist/generated/themes/Panel.css.js +1 -1
  531. package/dist/generated/themes/Panel.css.js.map +1 -1
  532. package/dist/generated/themes/Popover.css.js +1 -1
  533. package/dist/generated/themes/Popover.css.js.map +1 -1
  534. package/dist/generated/themes/PopupsCommon.css.js +1 -1
  535. package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
  536. package/dist/generated/themes/ProgressIndicator.css.js +1 -1
  537. package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
  538. package/dist/generated/themes/RadioButton.css.js +1 -1
  539. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  540. package/dist/generated/themes/RangeSlider.css.js +1 -1
  541. package/dist/generated/themes/RangeSlider.css.js.map +1 -1
  542. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  543. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  544. package/dist/generated/themes/ResponsivePopover.css.js +1 -1
  545. package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
  546. package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
  547. package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
  548. package/dist/generated/themes/SegmentedButton.css.js +1 -1
  549. package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
  550. package/dist/generated/themes/Select.css.js +1 -1
  551. package/dist/generated/themes/Select.css.js.map +1 -1
  552. package/dist/generated/themes/SelectMenu.css.js +1 -1
  553. package/dist/generated/themes/SelectMenu.css.js.map +1 -1
  554. package/dist/generated/themes/SelectPopover.css.js +1 -1
  555. package/dist/generated/themes/SelectPopover.css.js.map +1 -1
  556. package/dist/generated/themes/SliderBase.css.js +1 -1
  557. package/dist/generated/themes/SliderBase.css.js.map +1 -1
  558. package/dist/generated/themes/SplitButton.css.js +1 -1
  559. package/dist/generated/themes/SplitButton.css.js.map +1 -1
  560. package/dist/generated/themes/StepInput.css.js +1 -1
  561. package/dist/generated/themes/StepInput.css.js.map +1 -1
  562. package/dist/generated/themes/Switch.css.js +1 -1
  563. package/dist/generated/themes/Switch.css.js.map +1 -1
  564. package/dist/generated/themes/TabContainer.css.js +1 -1
  565. package/dist/generated/themes/TabContainer.css.js.map +1 -1
  566. package/dist/generated/themes/TabInOverflow.css.js +1 -1
  567. package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
  568. package/dist/generated/themes/TabInStrip.css.js +1 -1
  569. package/dist/generated/themes/TabInStrip.css.js.map +1 -1
  570. package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
  571. package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
  572. package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
  573. package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
  574. package/dist/generated/themes/Table.css.js +1 -1
  575. package/dist/generated/themes/Table.css.js.map +1 -1
  576. package/dist/generated/themes/TableCell.css.js +1 -1
  577. package/dist/generated/themes/TableCell.css.js.map +1 -1
  578. package/dist/generated/themes/TableColumn.css.js +1 -1
  579. package/dist/generated/themes/TableColumn.css.js.map +1 -1
  580. package/dist/generated/themes/TableGroupRow.css.js +1 -1
  581. package/dist/generated/themes/TableGroupRow.css.js.map +1 -1
  582. package/dist/generated/themes/TableRow.css.js +1 -1
  583. package/dist/generated/themes/TableRow.css.js.map +1 -1
  584. package/dist/generated/themes/TextArea.css.js +1 -1
  585. package/dist/generated/themes/TextArea.css.js.map +1 -1
  586. package/dist/generated/themes/TimePicker.css.js +1 -1
  587. package/dist/generated/themes/TimePicker.css.js.map +1 -1
  588. package/dist/generated/themes/Toast.css.js +1 -1
  589. package/dist/generated/themes/Toast.css.js.map +1 -1
  590. package/dist/generated/themes/ToggleButton.css.js +1 -1
  591. package/dist/generated/themes/ToggleButton.css.js.map +1 -1
  592. package/dist/generated/themes/Token.css.js +1 -1
  593. package/dist/generated/themes/Token.css.js.map +1 -1
  594. package/dist/generated/themes/Tokenizer.css.js +1 -1
  595. package/dist/generated/themes/Tokenizer.css.js.map +1 -1
  596. package/dist/generated/themes/TokenizerPopover.css.js +1 -1
  597. package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
  598. package/dist/generated/themes/Toolbar.css.js +1 -1
  599. package/dist/generated/themes/Toolbar.css.js.map +1 -1
  600. package/dist/generated/themes/ToolbarPopover.css.js +1 -1
  601. package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
  602. package/dist/generated/themes/TreeItem.css.js +1 -1
  603. package/dist/generated/themes/TreeItem.css.js.map +1 -1
  604. package/dist/generated/themes/ValueStateMessage.css.js +1 -1
  605. package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
  606. package/dist/generated/themes/WheelSlider.css.js +1 -1
  607. package/dist/generated/themes/WheelSlider.css.js.map +1 -1
  608. package/dist/generated/themes/YearPicker.css.js +1 -1
  609. package/dist/generated/themes/YearPicker.css.js.map +1 -1
  610. package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
  611. package/dist/generated/themes/sap_belize/parameters-bundle.css.js.map +1 -1
  612. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
  613. package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js.map +1 -1
  614. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
  615. package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js.map +1 -1
  616. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
  617. package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
  618. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
  619. package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
  620. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
  621. package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
  622. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
  623. package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
  624. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
  625. package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
  626. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
  627. package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
  628. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +1 -1
  629. package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -1
  630. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
  631. package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
  632. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
  633. package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
  634. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +1 -1
  635. package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -1
  636. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
  637. package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
  638. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +1 -1
  639. package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -1
  640. package/dist/types/AvatarColorScheme.d.ts +0 -15
  641. package/dist/types/AvatarColorScheme.js +0 -15
  642. package/dist/types/AvatarColorScheme.js.map +1 -1
  643. package/dist/types/AvatarGroupType.d.ts +0 -6
  644. package/dist/types/AvatarGroupType.js +0 -6
  645. package/dist/types/AvatarGroupType.js.map +1 -1
  646. package/dist/types/AvatarShape.d.ts +0 -6
  647. package/dist/types/AvatarShape.js +0 -6
  648. package/dist/types/AvatarShape.js.map +1 -1
  649. package/dist/types/AvatarSize.d.ts +0 -9
  650. package/dist/types/AvatarSize.js +0 -9
  651. package/dist/types/AvatarSize.js.map +1 -1
  652. package/dist/types/BackgroundDesign.d.ts +0 -7
  653. package/dist/types/BackgroundDesign.js +0 -7
  654. package/dist/types/BackgroundDesign.js.map +1 -1
  655. package/dist/types/BadgeDesign.d.ts +49 -0
  656. package/dist/types/BadgeDesign.js +51 -0
  657. package/dist/types/BadgeDesign.js.map +1 -0
  658. package/dist/types/BorderDesign.d.ts +0 -6
  659. package/dist/types/BorderDesign.js +0 -6
  660. package/dist/types/BorderDesign.js.map +1 -1
  661. package/dist/types/BreadcrumbsDesign.d.ts +0 -6
  662. package/dist/types/BreadcrumbsDesign.js +0 -6
  663. package/dist/types/BreadcrumbsDesign.js.map +1 -1
  664. package/dist/types/BreadcrumbsSeparatorStyle.d.ts +0 -10
  665. package/dist/types/BreadcrumbsSeparatorStyle.js +0 -10
  666. package/dist/types/BreadcrumbsSeparatorStyle.js.map +1 -1
  667. package/dist/types/BusyIndicatorSize.d.ts +0 -7
  668. package/dist/types/BusyIndicatorSize.js +0 -7
  669. package/dist/types/BusyIndicatorSize.js.map +1 -1
  670. package/dist/types/ButtonDesign.d.ts +0 -10
  671. package/dist/types/ButtonDesign.js +0 -10
  672. package/dist/types/ButtonDesign.js.map +1 -1
  673. package/dist/types/ButtonType.d.ts +0 -7
  674. package/dist/types/ButtonType.js +0 -7
  675. package/dist/types/ButtonType.js.map +1 -1
  676. package/dist/types/CalendarPickersMode.d.ts +6 -10
  677. package/dist/types/CalendarPickersMode.js +6 -10
  678. package/dist/types/CalendarPickersMode.js.map +1 -1
  679. package/dist/types/CalendarSelectionMode.d.ts +0 -7
  680. package/dist/types/CalendarSelectionMode.js +0 -7
  681. package/dist/types/CalendarSelectionMode.js.map +1 -1
  682. package/dist/types/CarouselArrowsPlacement.d.ts +0 -6
  683. package/dist/types/CarouselArrowsPlacement.js +0 -6
  684. package/dist/types/CarouselArrowsPlacement.js.map +1 -1
  685. package/dist/types/CarouselPageIndicatorStyle.d.ts +0 -6
  686. package/dist/types/CarouselPageIndicatorStyle.js +0 -6
  687. package/dist/types/CarouselPageIndicatorStyle.js.map +1 -1
  688. package/dist/types/ComboBoxFilter.d.ts +0 -8
  689. package/dist/types/ComboBoxFilter.js +0 -8
  690. package/dist/types/ComboBoxFilter.js.map +1 -1
  691. package/dist/types/HasPopup.d.ts +0 -9
  692. package/dist/types/HasPopup.js +0 -9
  693. package/dist/types/HasPopup.js.map +1 -1
  694. package/dist/types/IconDesign.d.ts +0 -12
  695. package/dist/types/IconDesign.js +0 -12
  696. package/dist/types/IconDesign.js.map +1 -1
  697. package/dist/types/InputType.d.ts +0 -10
  698. package/dist/types/InputType.js +0 -10
  699. package/dist/types/InputType.js.map +1 -1
  700. package/dist/types/LinkDesign.d.ts +0 -7
  701. package/dist/types/LinkDesign.js +0 -7
  702. package/dist/types/LinkDesign.js.map +1 -1
  703. package/dist/types/ListGrowingMode.d.ts +0 -7
  704. package/dist/types/ListGrowingMode.js +0 -7
  705. package/dist/types/ListGrowingMode.js.map +1 -1
  706. package/dist/types/ListItemType.d.ts +0 -8
  707. package/dist/types/ListItemType.js +0 -8
  708. package/dist/types/ListItemType.js.map +1 -1
  709. package/dist/types/ListMode.d.ts +0 -11
  710. package/dist/types/ListMode.js +0 -11
  711. package/dist/types/ListMode.js.map +1 -1
  712. package/dist/types/ListSeparators.d.ts +0 -7
  713. package/dist/types/ListSeparators.js +0 -7
  714. package/dist/types/ListSeparators.js.map +1 -1
  715. package/dist/types/MessageStripDesign.d.ts +0 -8
  716. package/dist/types/MessageStripDesign.js +0 -8
  717. package/dist/types/MessageStripDesign.js.map +1 -1
  718. package/dist/types/PanelAccessibleRole.d.ts +0 -7
  719. package/dist/types/PanelAccessibleRole.js +0 -7
  720. package/dist/types/PanelAccessibleRole.js.map +1 -1
  721. package/dist/types/PopoverHorizontalAlign.d.ts +0 -8
  722. package/dist/types/PopoverHorizontalAlign.js +0 -8
  723. package/dist/types/PopoverHorizontalAlign.js.map +1 -1
  724. package/dist/types/PopoverPlacementType.d.ts +0 -8
  725. package/dist/types/PopoverPlacementType.js +0 -8
  726. package/dist/types/PopoverPlacementType.js.map +1 -1
  727. package/dist/types/PopoverVerticalAlign.d.ts +0 -8
  728. package/dist/types/PopoverVerticalAlign.js +0 -8
  729. package/dist/types/PopoverVerticalAlign.js.map +1 -1
  730. package/dist/types/PopupAccessibleRole.d.ts +0 -7
  731. package/dist/types/PopupAccessibleRole.js +0 -7
  732. package/dist/types/PopupAccessibleRole.js.map +1 -1
  733. package/dist/types/Priority.d.ts +0 -8
  734. package/dist/types/Priority.js +0 -8
  735. package/dist/types/Priority.js.map +1 -1
  736. package/dist/types/SegmentedButtonMode.d.ts +0 -6
  737. package/dist/types/SegmentedButtonMode.js +0 -6
  738. package/dist/types/SegmentedButtonMode.js.map +1 -1
  739. package/dist/types/SemanticColor.d.ts +0 -9
  740. package/dist/types/SemanticColor.js +0 -9
  741. package/dist/types/SemanticColor.js.map +1 -1
  742. package/dist/types/SwitchDesign.d.ts +0 -6
  743. package/dist/types/SwitchDesign.js +0 -6
  744. package/dist/types/SwitchDesign.js.map +1 -1
  745. package/dist/types/TabContainerBackgroundDesign.d.ts +0 -7
  746. package/dist/types/TabContainerBackgroundDesign.js +0 -7
  747. package/dist/types/TabContainerBackgroundDesign.js.map +1 -1
  748. package/dist/types/TabContainerTabsPlacement.d.ts +0 -6
  749. package/dist/types/TabContainerTabsPlacement.js +0 -6
  750. package/dist/types/TabContainerTabsPlacement.js.map +1 -1
  751. package/dist/types/TabLayout.d.ts +0 -6
  752. package/dist/types/TabLayout.js +0 -6
  753. package/dist/types/TabLayout.js.map +1 -1
  754. package/dist/types/TableColumnPopinDisplay.d.ts +0 -6
  755. package/dist/types/TableColumnPopinDisplay.js +0 -6
  756. package/dist/types/TableColumnPopinDisplay.js.map +1 -1
  757. package/dist/types/TableGrowingMode.d.ts +0 -7
  758. package/dist/types/TableGrowingMode.js +0 -7
  759. package/dist/types/TableGrowingMode.js.map +1 -1
  760. package/dist/types/TableMode.d.ts +0 -7
  761. package/dist/types/TableMode.js +0 -7
  762. package/dist/types/TableMode.js.map +1 -1
  763. package/dist/types/TableRowType.d.ts +0 -6
  764. package/dist/types/TableRowType.js +0 -6
  765. package/dist/types/TableRowType.js.map +1 -1
  766. package/dist/types/TabsOverflowMode.d.ts +0 -6
  767. package/dist/types/TabsOverflowMode.js +0 -6
  768. package/dist/types/TabsOverflowMode.js.map +1 -1
  769. package/dist/types/TitleLevel.d.ts +0 -10
  770. package/dist/types/TitleLevel.js +0 -10
  771. package/dist/types/TitleLevel.js.map +1 -1
  772. package/dist/types/ToastPlacement.d.ts +0 -13
  773. package/dist/types/ToastPlacement.js +0 -13
  774. package/dist/types/ToastPlacement.js.map +1 -1
  775. package/dist/types/ToolbarAlign.d.ts +2 -9
  776. package/dist/types/ToolbarAlign.js +2 -9
  777. package/dist/types/ToolbarAlign.js.map +1 -1
  778. package/dist/types/ToolbarItemOverflowBehavior.d.ts +1 -9
  779. package/dist/types/ToolbarItemOverflowBehavior.js +1 -9
  780. package/dist/types/ToolbarItemOverflowBehavior.js.map +1 -1
  781. package/dist/types/WrappingType.d.ts +0 -6
  782. package/dist/types/WrappingType.js +0 -6
  783. package/dist/types/WrappingType.js.map +1 -1
  784. package/package.json +9 -9
  785. package/src/Badge.hbs +26 -5
  786. package/src/NavigationMenu.hbs +159 -0
  787. package/src/i18n/messagebundle.properties +22 -1
  788. package/src/themes/Badge.css +505 -39
  789. package/src/themes/NavigationMenu.css +69 -0
  790. package/src/themes/base/Badge-parameters.css +106 -3
  791. package/src/themes/sap_belize/BusyIndicator-parameters.css +5 -0
  792. package/src/themes/sap_belize/parameters-bundle.css +1 -1
  793. package/src/themes/sap_horizon/Badge-parameters.css +3 -5
  794. package/src/themes/sap_horizon_dark/Badge-parameters.css +3 -5
  795. package/src/themes/sap_horizon_hcb/Badge-parameters.css +108 -5
  796. package/src/themes/sap_horizon_hcw/Badge-parameters.css +108 -2
  797. package/dist/api.json +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sourceRoot":"","sources":["../src/Button.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport { getFeature } from \"@ui5/webcomponents-base/dist/FeaturesRegistry.js\";\nimport type { PassiveEventListenerObject } from \"@ui5/webcomponents-base/dist/types.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { I18nText } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { markEvent } from \"@ui5/webcomponents-base/dist/MarkedEvents.js\";\nimport { getIconAccessibleName } from \"@ui5/webcomponents-base/dist/asset-registries/Icons.js\";\n\nimport {\n\tisPhone,\n\tisTablet,\n\tisCombi,\n\tisDesktop,\n\tisSafari,\n} from \"@ui5/webcomponents-base/dist/Device.js\";\nimport willShowContent from \"@ui5/webcomponents-base/dist/util/willShowContent.js\";\nimport type { IFormElement } from \"./features/InputElementsFormSupport.js\";\nimport ButtonDesign from \"./types/ButtonDesign.js\";\nimport ButtonType from \"./types/ButtonType.js\";\nimport ButtonTemplate from \"./generated/templates/ButtonTemplate.lit.js\";\nimport Icon from \"./Icon.js\";\n\nimport { BUTTON_ARIA_TYPE_ACCEPT, BUTTON_ARIA_TYPE_REJECT, BUTTON_ARIA_TYPE_EMPHASIZED } from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport buttonCss from \"./generated/themes/Button.css.js\";\nimport type FormSupport from \"./features/InputElementsFormSupport.js\";\n\nlet isGlobalHandlerAttached = false;\nlet activeButton: Button | null = null;\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>ui5-button</code> component represents a simple push button.\n * It enables users to trigger actions by clicking or tapping the <code>ui5-button</code>, or by pressing\n * certain keyboard keys, such as Enter.\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>ui5-button</code> UI, you can define text, icon, or both. You can also specify\n * whether the text or the icon is displayed first.\n * <br><br>\n * You can choose from a set of predefined types that offer different\n * styling to correspond to the triggered action.\n * <br><br>\n * You can set the <code>ui5-button</code> as enabled or disabled. An enabled\n * <code>ui5-button</code> can be pressed by clicking or tapping it. The button changes\n * its style to provide visual feedback to the user that it is pressed or hovered over with\n * the mouse cursor. A disabled <code>ui5-button</code> appears inactive and cannot be pressed.\n *\n * <h3>CSS Shadow Parts</h3>\n *\n * <ui5-link target=\"_blank\" href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/::part\">CSS Shadow Parts</ui5-link> allow developers to style elements inside the Shadow DOM.\n * <br>\n * The <code>ui5-button</code> exposes the following CSS Shadow Parts:\n * <ul>\n * <li>button - Used to style the native button element</li>\n * </ul>\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/Button\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.Button\n * @extends sap.ui.webc.base.UI5Element\n * @tagname ui5-button\n * @implements sap.ui.webc.main.IButton\n * @public\n */\n@customElement({\n\ttag: \"ui5-button\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: ButtonTemplate,\n\tstyles: buttonCss,\n\tdependencies: [Icon],\n})\n/**\n * Fired when the component is activated either with a\n * mouse/tap or by using the Enter or Space key.\n * <br><br>\n * <b>Note:</b> The event will not be fired if the <code>disabled</code>\n * property is set to <code>true</code>.\n *\n * @event sap.ui.webc.main.Button#click\n * @public\n * @native\n */\n@event(\"click\")\n/**\n * Fired whenever the active state of the component changes.\n * @private\n */\n@event(\"_active-state-change\")\nclass Button extends UI5Element implements IFormElement {\n\t/**\n\t * Defines the component design.\n\t *\n\t * @type {sap.ui.webc.main.types.ButtonDesign}\n\t * @name sap.ui.webc.main.Button.prototype.design\n\t * @defaultvalue \"Default\"\n\t * @public\n\t */\n\t@property({ type: ButtonDesign, defaultValue: ButtonDesign.Default })\n\tdesign!: `${ButtonDesign}`;\n\n\t/**\n\t * Defines whether the component is disabled.\n\t * A disabled component can't be pressed or\n\t * focused, and it is not in the tab chain.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Button.prototype.disabled\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines the icon, displayed as graphical element within the component.\n\t * The SAP-icons font provides numerous options.\n\t * <br><br>\n\t * Example:\n\t *\n\t * See all the available icons within the <ui5-link target=\"_blank\" href=\"https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html\">Icon Explorer</ui5-link>.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Button.prototype.icon\n\t * @defaultvalue \"\"\n\t * @public\n\t */\n\t@property()\n\ticon!: string;\n\n\t/**\n\t * Defines whether the icon should be displayed after the component text.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Button.prototype.iconEnd\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\ticonEnd!: boolean;\n\n\t/**\n\t * When set to <code>true</code>, the component will\n\t * automatically submit the nearest HTML form element on <code>press</code>.\n\t * <br><br>\n\t * <b>Note:</b> For the <code>submits</code> property to have effect, you must add the following import to your project:\n\t * <code>import \"@ui5/webcomponents/dist/features/InputElementsFormSupport.js\";</code>\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Button.prototype.submits\n\t * @defaultvalue false\n\t * @public\n\t * @deprecated Set the \"type\" property to \"Submit\" to achieve the same result. The \"submits\" property is ignored if \"type\" is set to any value other than \"Button\".\n\t */\n\t@property({ type: Boolean })\n\tsubmits!: boolean;\n\n\t/**\n\t * Defines the tooltip of the component.\n\t * <br>\n\t * <b>Note:</b> A tooltip attribute should be provided for icon-only buttons, in order to represent their exact meaning/function.\n\t * @type {string}\n\t * @name sap.ui.webc.main.Button.prototype.tooltip\n\t * @defaultvalue \"\"\n\t * @public\n\t * @since 1.2.0\n\t */\n\t@property()\n\ttooltip!: string;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Button.prototype.accessibleName\n\t * @defaultvalue undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property({ defaultValue: undefined })\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the component.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.Button.prototype.accessibleNameRef\n\t * @defaultvalue \"\"\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property({ defaultValue: \"\" })\n\taccessibleNameRef!: string;\n\n\t/**\n\t * An object of strings that defines several additional accessibility attribute values\n\t * for customization depending on the use case.\n\t *\n\t * It supports the following fields:\n\t *\n\t * <ul>\n\t * \t\t<li><code>expanded</code>: Indicates whether the button, or another grouping element it controls, is currently expanded or collapsed. Accepts the following string values:\n\t *\t\t\t<ul>\n\t *\t\t\t\t<li><code>true</code></li>\n\t *\t\t\t\t<li><code>false</code></li>\n\t *\t\t\t</ul>\n\t * \t\t</li>\n\t * \t\t<li><code>hasPopup</code>: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the button. Accepts the following string values:\n\t * \t\t\t<ul>\n\t *\t\t\t\t<li><code>Dialog</code></li>\n\t *\t\t\t\t<li><code>Grid</code></li>\n\t *\t\t\t\t<li><code>ListBox</code></li>\n\t *\t\t\t\t<li><code>Menu</code></li>\n\t *\t\t\t\t<li><code>Tree</code></li>\n\t * \t\t\t</ul>\n\t * \t\t</li>\n\t * \t\t<li><code>controls</code>: Identifies the element (or elements) whose contents or presence are controlled by the button element. Accepts a string value.</li>\n\t * </ul>\n\t * @type {object}\n\t * @name sap.ui.webc.main.Button.prototype.accessibilityAttributes\n\t * @public\n\t * @since 1.2.0\n\t */\n\t@property({ type: Object })\n\taccessibilityAttributes!: { expanded: \"true\" | \"false\", hasPopup: \"Dialog\" | \"Grid\" | \"ListBox\" | \"Menu\" | \"Tree\", controls: string};\n\n\t/**\n\t * Defines whether the button has special form-related functionality.\n\t *\n\t * <br><br>\n\t * <b>Note:</b> For the <code>type</code> property to have effect, you must add the following import to your project:\n\t * <code>import \"@ui5/webcomponents/dist/features/InputElementsFormSupport.js\";</code>\n\t *\n\t * @type {sap.ui.webc.main.types.ButtonType}\n\t * @name sap.ui.webc.main.Button.prototype.type\n\t * @defaultvalue \"Button\"\n\t * @public\n\t * @since 1.15.0\n\t */\n\t@property({ type: ButtonType, defaultValue: ButtonType.Button })\n\ttype!: `${ButtonType}`;\n\n\t/**\n\t * Used to switch the active state (pressed or not) of the component.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tactive!: boolean;\n\n\t/**\n\t * Defines if a content has been added to the default slot\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\ticonOnly!: boolean;\n\n\t/**\n\t * Indicates if the elements is on focus\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused!: boolean;\n\n\t/**\n\t * Indicates if the elements has a slotted icon\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\thasIcon!: boolean;\n\n\t/**\n\t * Indicates if the element if focusable\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tnonInteractive!: boolean;\n\n\t/**\n\t * The current title of the button, either the tooltip property or the icons tooltip. The tooltip property with higher prio.\n\t * @private\n\t */\n\t@property({ noAttribute: true })\n\tbuttonTitle?: string;\n\n\t@property({ type: Object })\n\t_iconSettings!: object;\n\n\t/**\n\t * Defines the tabIndex of the component.\n\t * @private\n\t */\n\t@property({ defaultValue: \"0\", noAttribute: true })\n\t_tabIndex!: string;\n\n\t/**\n\t * @since 1.0.0-rc.13\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_isTouch!: boolean;\n\n\t/**\n\t * Defines the text of the component.\n\t * <br><br>\n\t * <b>Note:</b> Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n\t *\n\t * @type {Node[]}\n\t * @name sap.ui.webc.main.Button.prototype.default\n\t * @slot\n\t * @public\n\t */\n\t@slot({ type: Node, \"default\": true })\n\ttext!: Array<Node>;\n\n\t_deactivate: () => void;\n\n\t_ontouchstart: PassiveEventListenerObject;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._deactivate = () => {\n\t\t\tif (activeButton) {\n\t\t\t\tactiveButton._setActiveState(false);\n\t\t\t}\n\t\t};\n\n\t\tif (!isGlobalHandlerAttached) {\n\t\t\tdocument.addEventListener(\"mouseup\", this._deactivate);\n\n\t\t\tisGlobalHandlerAttached = true;\n\t\t}\n\n\t\tconst handleTouchStartEvent = (e: TouchEvent) => {\n\t\t\tmarkEvent(e, \"button\");\n\n\t\t\tif (this.nonInteractive) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis._setActiveState(true);\n\t\t};\n\n\t\tthis._ontouchstart = {\n\t\t\thandleEvent: handleTouchStartEvent,\n\t\t\tpassive: true,\n\t\t};\n\t}\n\n\tonEnterDOM() {\n\t\tthis._isTouch = (isPhone() || isTablet()) && !isCombi();\n\t}\n\n\tasync onBeforeRendering() {\n\t\tconst formSupport = getFeature<typeof FormSupport>(\"FormSupport\");\n\t\tif (this.type !== ButtonType.Button && !formSupport) {\n\t\t\tconsole.warn(`In order for the \"type\" property to have effect, you should also: import \"@ui5/webcomponents/dist/features/InputElementsFormSupport.js\";`); // eslint-disable-line\n\t\t}\n\t\tif (this.submits && !formSupport) {\n\t\t\tconsole.warn(`In order for the \"submits\" property to have effect, you should also: import \"@ui5/webcomponents/dist/features/InputElementsFormSupport.js\";`); // eslint-disable-line\n\t\t}\n\n\t\tthis.iconOnly = this.isIconOnly;\n\t\tthis.hasIcon = !!this.icon;\n\n\t\tthis.buttonTitle = this.tooltip || await getIconAccessibleName(this.icon);\n\t}\n\n\t_onclick(e: MouseEvent) {\n\t\tif (this.nonInteractive) {\n\t\t\treturn;\n\t\t}\n\n\t\tmarkEvent(e, \"button\");\n\t\tconst formSupport = getFeature<typeof FormSupport>(\"FormSupport\");\n\t\tif (formSupport && this._isSubmit) {\n\t\t\tformSupport.triggerFormSubmit(this);\n\t\t}\n\t\tif (formSupport && this._isReset) {\n\t\t\tformSupport.triggerFormReset(this);\n\t\t}\n\n\t\tif (isSafari()) {\n\t\t\tthis.getDomRef()?.focus();\n\t\t}\n\t}\n\n\t_onmousedown(e: MouseEvent) {\n\t\tif (this.nonInteractive || this._isTouch) {\n\t\t\treturn;\n\t\t}\n\n\t\tmarkEvent(e, \"button\");\n\t\tthis._setActiveState(true);\n\t\tactiveButton = this; // eslint-disable-line\n\t}\n\n\t_ontouchend(e: TouchEvent) {\n\t\tif (this.disabled) {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t}\n\n\t\tif (this.active) {\n\t\t\tthis._setActiveState(false);\n\t\t}\n\n\t\tif (activeButton) {\n\t\t\tactiveButton._setActiveState(false);\n\t\t}\n\t}\n\n\t_onmouseup(e: MouseEvent) {\n\t\tmarkEvent(e, \"button\");\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tmarkEvent(e, \"button\");\n\n\t\tif (isSpace(e) || isEnter(e)) {\n\t\t\tthis._setActiveState(true);\n\t\t}\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e) || isEnter(e)) {\n\t\t\tif (this.active) {\n\t\t\t\tthis._setActiveState(false);\n\t\t\t}\n\t\t}\n\t}\n\n\t_onfocusout() {\n\t\tif (this.nonInteractive) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.active) {\n\t\t\tthis._setActiveState(false);\n\t\t}\n\n\t\tif (isDesktop()) {\n\t\t\tthis.focused = false;\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tif (this.nonInteractive) {\n\t\t\treturn;\n\t\t}\n\n\t\tmarkEvent(e, \"button\");\n\t\tif (isDesktop()) {\n\t\t\tthis.focused = true;\n\t\t}\n\t}\n\n\t_setActiveState(active: boolean) {\n\t\tconst eventPrevented = !this.fireEvent(\"_active-state-change\", null, true);\n\n\t\tif (eventPrevented) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.active = active;\n\t}\n\n\tget hasButtonType() {\n\t\treturn this.design !== ButtonDesign.Default && this.design !== ButtonDesign.Transparent;\n\t}\n\n\tget iconRole() {\n\t\tif (!this.icon) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\treturn \"presentation\";\n\t}\n\n\tget isIconOnly() {\n\t\treturn !willShowContent(this.text);\n\t}\n\n\tstatic typeTextMappings(): Record<string, I18nText> {\n\t\treturn {\n\t\t\t\"Positive\": BUTTON_ARIA_TYPE_ACCEPT,\n\t\t\t\"Negative\": BUTTON_ARIA_TYPE_REJECT,\n\t\t\t\"Emphasized\": BUTTON_ARIA_TYPE_EMPHASIZED,\n\t\t};\n\t}\n\n\tget buttonTypeText() {\n\t\treturn Button.i18nBundle.getText(Button.typeTextMappings()[this.design]);\n\t}\n\n\tget tabIndexValue() {\n\t\tconst tabindex = this.getAttribute(\"tabindex\");\n\n\t\tif (tabindex) {\n\t\t\treturn tabindex;\n\t\t}\n\n\t\treturn this.nonInteractive ? \"-1\" : this._tabIndex;\n\t}\n\n\tget showIconTooltip() {\n\t\treturn this.iconOnly && !this.tooltip;\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget _isSubmit() {\n\t\treturn this.type === ButtonType.Submit || this.submits;\n\t}\n\n\tget _isReset() {\n\t\treturn this.type === ButtonType.Reset;\n\t}\n\n\tstatic async onDefine() {\n\t\tButton.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n}\n\nButton.define();\n\nexport default Button;\n"]}
1
+ {"version":3,"file":"Button.js","sourceRoot":"","sources":["../src/Button.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getEffectiveAriaLabelText } from \"@ui5/webcomponents-base/dist/util/AriaLabelHelper.js\";\nimport { getFeature } from \"@ui5/webcomponents-base/dist/FeaturesRegistry.js\";\nimport type { PassiveEventListenerObject } from \"@ui5/webcomponents-base/dist/types.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { I18nText } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { markEvent } from \"@ui5/webcomponents-base/dist/MarkedEvents.js\";\nimport { getIconAccessibleName } from \"@ui5/webcomponents-base/dist/asset-registries/Icons.js\";\n\nimport {\n\tisPhone,\n\tisTablet,\n\tisCombi,\n\tisDesktop,\n\tisSafari,\n} from \"@ui5/webcomponents-base/dist/Device.js\";\nimport willShowContent from \"@ui5/webcomponents-base/dist/util/willShowContent.js\";\nimport type { IFormElement } from \"./features/InputElementsFormSupport.js\";\nimport ButtonDesign from \"./types/ButtonDesign.js\";\nimport ButtonType from \"./types/ButtonType.js\";\nimport type { IButton } from \"./Interfaces.js\";\nimport ButtonTemplate from \"./generated/templates/ButtonTemplate.lit.js\";\nimport Icon from \"./Icon.js\";\n\nimport { BUTTON_ARIA_TYPE_ACCEPT, BUTTON_ARIA_TYPE_REJECT, BUTTON_ARIA_TYPE_EMPHASIZED } from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport buttonCss from \"./generated/themes/Button.css.js\";\nimport type FormSupport from \"./features/InputElementsFormSupport.js\";\n\nlet isGlobalHandlerAttached = false;\nlet activeButton: Button | null = null;\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>ui5-button</code> component represents a simple push button.\n * It enables users to trigger actions by clicking or tapping the <code>ui5-button</code>, or by pressing\n * certain keyboard keys, such as Enter.\n *\n *\n * <h3>Usage</h3>\n *\n * For the <code>ui5-button</code> UI, you can define text, icon, or both. You can also specify\n * whether the text or the icon is displayed first.\n * <br><br>\n * You can choose from a set of predefined types that offer different\n * styling to correspond to the triggered action.\n * <br><br>\n * You can set the <code>ui5-button</code> as enabled or disabled. An enabled\n * <code>ui5-button</code> can be pressed by clicking or tapping it. The button changes\n * its style to provide visual feedback to the user that it is pressed or hovered over with\n * the mouse cursor. A disabled <code>ui5-button</code> appears inactive and cannot be pressed.\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/Button\";</code>\n *\n * @csspart button - Used to style the native button element\n * @constructor\n * @extends UI5Element\n * @implements { IButton }\n * @public\n */\n@customElement({\n\ttag: \"ui5-button\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: ButtonTemplate,\n\tstyles: buttonCss,\n\tdependencies: [Icon],\n})\n/**\n * Fired when the component is activated either with a\n * mouse/tap or by using the Enter or Space key.\n * <br><br>\n * <b>Note:</b> The event will not be fired if the <code>disabled</code>\n * property is set to <code>true</code>.\n *\n * @public\n * @native\n */\n@event(\"click\")\n/**\n * Fired whenever the active state of the component changes.\n * @private\n */\n@event(\"_active-state-change\")\nclass Button extends UI5Element implements IFormElement, IButton {\n\t/**\n\t * Defines the component design.\n\t *\n\t * @default \"Default\"\n\t * @public\n\t */\n\t@property({ type: ButtonDesign, defaultValue: ButtonDesign.Default })\n\tdesign!: `${ButtonDesign}`;\n\n\t/**\n\t * Defines whether the component is disabled.\n\t * A disabled component can't be pressed or\n\t * focused, and it is not in the tab chain.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\tdisabled!: boolean;\n\n\t/**\n\t * Defines the icon, displayed as graphical element within the component.\n\t * The SAP-icons font provides numerous options.\n\t * <br><br>\n\t * Example:\n\t *\n\t * See all the available icons within the <ui5-link target=\"_blank\" href=\"https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html\">Icon Explorer</ui5-link>.\n\t *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\ticon!: string;\n\n\t/**\n\t * Defines whether the icon should be displayed after the component text.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\ticonEnd!: boolean;\n\n\t/**\n\t * When set to <code>true</code>, the component will\n\t * automatically submit the nearest HTML form element on <code>press</code>.\n\t * <br><br>\n\t * <b>Note:</b> For the <code>submits</code> property to have effect, you must add the following import to your project:\n\t * <code>import \"@ui5/webcomponents/dist/features/InputElementsFormSupport.js\";</code>\n\t *\n\t * @default false\n\t * @public\n\t * @deprecated Set the \"type\" property to \"Submit\" to achieve the same result. The \"submits\" property is ignored if \"type\" is set to any value other than \"Button\".\n\t */\n\t@property({ type: Boolean })\n\tsubmits!: boolean;\n\n\t/**\n\t * Defines the tooltip of the component.\n\t * <br>\n\t * <b>Note:</b> A tooltip attribute should be provided for icon-only buttons, in order to represent their exact meaning/function.\n\t * @default \"\"\n\t * @public\n\t * @since 1.2.0\n\t */\n\t@property()\n\ttooltip!: string;\n\n\t/**\n\t * Defines the accessible ARIA name of the component.\n\t *\n\t * @default undefined\n\t * @public\n\t * @since 1.0.0-rc.15\n\t */\n\t@property({ defaultValue: undefined })\n\taccessibleName?: string;\n\n\t/**\n\t * Receives id(or many ids) of the elements that label the component.\n\t *\n\t * @default \"\"\n\t * @public\n\t * @since 1.1.0\n\t */\n\t@property({ defaultValue: \"\" })\n\taccessibleNameRef!: string;\n\n\t/**\n\t * An object of strings that defines several additional accessibility attribute values\n\t * for customization depending on the use case.\n\t *\n\t * It supports the following fields:\n\t *\n\t * <ul>\n\t * \t\t<li><code>expanded</code>: Indicates whether the button, or another grouping element it controls, is currently expanded or collapsed. Accepts the following string values:\n\t *\t\t\t<ul>\n\t *\t\t\t\t<li><code>true</code></li>\n\t *\t\t\t\t<li><code>false</code></li>\n\t *\t\t\t</ul>\n\t * \t\t</li>\n\t * \t\t<li><code>hasPopup</code>: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the button. Accepts the following string values:\n\t * \t\t\t<ul>\n\t *\t\t\t\t<li><code>Dialog</code></li>\n\t *\t\t\t\t<li><code>Grid</code></li>\n\t *\t\t\t\t<li><code>ListBox</code></li>\n\t *\t\t\t\t<li><code>Menu</code></li>\n\t *\t\t\t\t<li><code>Tree</code></li>\n\t * \t\t\t</ul>\n\t * \t\t</li>\n\t * \t\t<li><code>controls</code>: Identifies the element (or elements) whose contents or presence are controlled by the button element. Accepts a string value.</li>\n\t * </ul>\n\t *\n\t * @public\n\t * @since 1.2.0\n\t * @default {}\n\t */\n\t@property({ type: Object })\n\taccessibilityAttributes!: { expanded: \"true\" | \"false\", hasPopup: \"Dialog\" | \"Grid\" | \"ListBox\" | \"Menu\" | \"Tree\", controls: string};\n\n\t/**\n\t * Defines whether the button has special form-related functionality.\n\t *\n\t * <br><br>\n\t * <b>Note:</b> For the <code>type</code> property to have effect, you must add the following import to your project:\n\t * <code>import \"@ui5/webcomponents/dist/features/InputElementsFormSupport.js\";</code>\n\t *\n\t * @default \"Button\"\n\t * @public\n\t * @since 1.15.0\n\t */\n\t@property({ type: ButtonType, defaultValue: ButtonType.Button })\n\ttype!: `${ButtonType}`;\n\n\t/**\n\t * Used to switch the active state (pressed or not) of the component.\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tactive!: boolean;\n\n\t/**\n\t * Defines if a content has been added to the default slot\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\ticonOnly!: boolean;\n\n\t/**\n\t * Indicates if the elements is on focus\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tfocused!: boolean;\n\n\t/**\n\t * Indicates if the elements has a slotted icon\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\thasIcon!: boolean;\n\n\t/**\n\t * Indicates if the element if focusable\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\tnonInteractive!: boolean;\n\n\t/**\n\t * The current title of the button, either the tooltip property or the icons tooltip. The tooltip property with higher prio.\n\t * @private\n\t */\n\t@property({ noAttribute: true })\n\tbuttonTitle?: string;\n\n\t/**\n\t * @private\n\t */\n\t@property({ type: Object })\n\t_iconSettings!: object;\n\n\t/**\n\t * Defines the tabIndex of the component.\n\t * @private\n\t */\n\t@property({ defaultValue: \"0\", noAttribute: true })\n\t_tabIndex!: string;\n\n\t/**\n\t * @since 1.0.0-rc.13\n\t * @private\n\t */\n\t@property({ type: Boolean })\n\t_isTouch!: boolean;\n\n\t/**\n\t * Defines the text of the component.\n\t * <br><br>\n\t * <b>Note:</b> Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.\n\t *\n\t * @public\n\t */\n\t@slot({ type: Node, \"default\": true })\n\ttext!: Array<Node>;\n\n\t_deactivate: () => void;\n\n\t_ontouchstart: PassiveEventListenerObject;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._deactivate = () => {\n\t\t\tif (activeButton) {\n\t\t\t\tactiveButton._setActiveState(false);\n\t\t\t}\n\t\t};\n\n\t\tif (!isGlobalHandlerAttached) {\n\t\t\tdocument.addEventListener(\"mouseup\", this._deactivate);\n\n\t\t\tisGlobalHandlerAttached = true;\n\t\t}\n\n\t\tconst handleTouchStartEvent = (e: TouchEvent) => {\n\t\t\tmarkEvent(e, \"button\");\n\n\t\t\tif (this.nonInteractive) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis._setActiveState(true);\n\t\t};\n\n\t\tthis._ontouchstart = {\n\t\t\thandleEvent: handleTouchStartEvent,\n\t\t\tpassive: true,\n\t\t};\n\t}\n\n\tonEnterDOM() {\n\t\tthis._isTouch = (isPhone() || isTablet()) && !isCombi();\n\t}\n\n\tasync onBeforeRendering() {\n\t\tconst formSupport = getFeature<typeof FormSupport>(\"FormSupport\");\n\t\tif (this.type !== ButtonType.Button && !formSupport) {\n\t\t\tconsole.warn(`In order for the \"type\" property to have effect, you should also: import \"@ui5/webcomponents/dist/features/InputElementsFormSupport.js\";`); // eslint-disable-line\n\t\t}\n\t\tif (this.submits && !formSupport) {\n\t\t\tconsole.warn(`In order for the \"submits\" property to have effect, you should also: import \"@ui5/webcomponents/dist/features/InputElementsFormSupport.js\";`); // eslint-disable-line\n\t\t}\n\n\t\tthis.iconOnly = this.isIconOnly;\n\t\tthis.hasIcon = !!this.icon;\n\n\t\tthis.buttonTitle = this.tooltip || await getIconAccessibleName(this.icon);\n\t}\n\n\t_onclick(e: MouseEvent) {\n\t\tif (this.nonInteractive) {\n\t\t\treturn;\n\t\t}\n\n\t\tmarkEvent(e, \"button\");\n\t\tconst formSupport = getFeature<typeof FormSupport>(\"FormSupport\");\n\t\tif (formSupport && this._isSubmit) {\n\t\t\tformSupport.triggerFormSubmit(this);\n\t\t}\n\t\tif (formSupport && this._isReset) {\n\t\t\tformSupport.triggerFormReset(this);\n\t\t}\n\n\t\tif (isSafari()) {\n\t\t\tthis.getDomRef()?.focus();\n\t\t}\n\t}\n\n\t_onmousedown(e: MouseEvent) {\n\t\tif (this.nonInteractive || this._isTouch) {\n\t\t\treturn;\n\t\t}\n\n\t\tmarkEvent(e, \"button\");\n\t\tthis._setActiveState(true);\n\t\tactiveButton = this; // eslint-disable-line\n\t}\n\n\t_ontouchend(e: TouchEvent) {\n\t\tif (this.disabled) {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t}\n\n\t\tif (this.active) {\n\t\t\tthis._setActiveState(false);\n\t\t}\n\n\t\tif (activeButton) {\n\t\t\tactiveButton._setActiveState(false);\n\t\t}\n\t}\n\n\t_onmouseup(e: MouseEvent) {\n\t\tmarkEvent(e, \"button\");\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tmarkEvent(e, \"button\");\n\n\t\tif (isSpace(e) || isEnter(e)) {\n\t\t\tthis._setActiveState(true);\n\t\t}\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e) || isEnter(e)) {\n\t\t\tif (this.active) {\n\t\t\t\tthis._setActiveState(false);\n\t\t\t}\n\t\t}\n\t}\n\n\t_onfocusout() {\n\t\tif (this.nonInteractive) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.active) {\n\t\t\tthis._setActiveState(false);\n\t\t}\n\n\t\tif (isDesktop()) {\n\t\t\tthis.focused = false;\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent) {\n\t\tif (this.nonInteractive) {\n\t\t\treturn;\n\t\t}\n\n\t\tmarkEvent(e, \"button\");\n\t\tif (isDesktop()) {\n\t\t\tthis.focused = true;\n\t\t}\n\t}\n\n\t_setActiveState(active: boolean) {\n\t\tconst eventPrevented = !this.fireEvent(\"_active-state-change\", null, true);\n\n\t\tif (eventPrevented) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.active = active;\n\t}\n\n\tget hasButtonType() {\n\t\treturn this.design !== ButtonDesign.Default && this.design !== ButtonDesign.Transparent;\n\t}\n\n\tget iconRole() {\n\t\tif (!this.icon) {\n\t\t\treturn \"\";\n\t\t}\n\n\t\treturn \"presentation\";\n\t}\n\n\tget isIconOnly() {\n\t\treturn !willShowContent(this.text);\n\t}\n\n\tstatic typeTextMappings(): Record<string, I18nText> {\n\t\treturn {\n\t\t\t\"Positive\": BUTTON_ARIA_TYPE_ACCEPT,\n\t\t\t\"Negative\": BUTTON_ARIA_TYPE_REJECT,\n\t\t\t\"Emphasized\": BUTTON_ARIA_TYPE_EMPHASIZED,\n\t\t};\n\t}\n\n\tget buttonTypeText() {\n\t\treturn Button.i18nBundle.getText(Button.typeTextMappings()[this.design]);\n\t}\n\n\tget tabIndexValue() {\n\t\tconst tabindex = this.getAttribute(\"tabindex\");\n\n\t\tif (tabindex) {\n\t\t\treturn tabindex;\n\t\t}\n\n\t\treturn this.nonInteractive ? \"-1\" : this._tabIndex;\n\t}\n\n\tget showIconTooltip() {\n\t\treturn this.iconOnly && !this.tooltip;\n\t}\n\n\tget ariaLabelText() {\n\t\treturn getEffectiveAriaLabelText(this);\n\t}\n\n\tget _isSubmit() {\n\t\treturn this.type === ButtonType.Submit || this.submits;\n\t}\n\n\tget _isReset() {\n\t\treturn this.type === ButtonType.Reset;\n\t}\n\n\tstatic async onDefine() {\n\t\tButton.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n}\n\nButton.define();\n\nexport default Button;\n"]}
@@ -1,5 +1,5 @@
1
1
  import type { ChangeInfo } from "@ui5/webcomponents-base/dist/UI5Element.js";
2
- import type CalendarDateComponentT from "./CalendarDate.js";
2
+ import CalendarDate from "./CalendarDate.js";
3
3
  import CalendarPart from "./CalendarPart.js";
4
4
  import type { DayPickerChangeEventDetail } from "./DayPicker.js";
5
5
  import type { MonthPickerChangeEventDetail } from "./MonthPicker.js";
@@ -127,11 +127,7 @@ type CalendarSelectedDatesChangeEventDetail = {
127
127
  * <code>import "@ui5/webcomponents/dist/Calendar";</code>
128
128
  *
129
129
  * @constructor
130
- * @author SAP SE
131
- * @alias sap.ui.webc.main.Calendar
132
- * @extends sap.ui.webc.main.CalendarPart
133
- * @tagname ui5-calendar
134
- * @appenddocs sap.ui.webc.main.CalendarDate
130
+ * @extends CalendarPart
135
131
  * @public
136
132
  * @since 1.0.0-rc.11
137
133
  */
@@ -144,9 +140,7 @@ declare class Calendar extends CalendarPart {
144
140
  * <li><code>CalendarSelectionMode.Range</code> - enables selection of a date range.</li>
145
141
  * <li><code>CalendarSelectionMode.Multiple</code> - enables selection of multiple dates.</li>
146
142
  * </ul>
147
- * @type {sap.ui.webc.main.types.CalendarSelectionMode}
148
- * @name sap.ui.webc.main.Calendar.prototype.selectionMode
149
- * @defaultvalue "Single"
143
+ * @default "Single"
150
144
  * @public
151
145
  */
152
146
  selectionMode: `${CalendarSelectionMode}`;
@@ -157,14 +151,13 @@ declare class Calendar extends CalendarPart {
157
151
  * <b>Note:</b> For calendars other than Gregorian,
158
152
  * the week numbers are not displayed regardless of what is set.
159
153
  *
160
- * @type {boolean}
161
- * @name sap.ui.webc.main.Calendar.prototype.hideWeekNumbers
162
- * @defaultvalue false
154
+ * @default false
163
155
  * @public
164
156
  */
165
157
  hideWeekNumbers: boolean;
166
158
  /**
167
159
  * Which picker is currently visible to the user: day/month/year
160
+ * @private
168
161
  */
169
162
  _currentPicker: string;
170
163
  _previousButtonDisabled: boolean;
@@ -178,12 +171,9 @@ declare class Calendar extends CalendarPart {
178
171
  * Defines the selected date or dates (depending on the <code>selectionMode</code> property)
179
172
  * for this calendar as instances of <code>ui5-date</code>.
180
173
  *
181
- * @type {sap.ui.webc.main.ICalendarDate[]}
182
- * @name sap.ui.webc.main.Calendar.prototype.default
183
- * @slot dates
184
174
  * @public
185
175
  */
186
- dates: Array<CalendarDateComponentT>;
176
+ dates: Array<CalendarDate>;
187
177
  /**
188
178
  * @private
189
179
  */
@@ -225,7 +215,6 @@ declare class Calendar extends CalendarPart {
225
215
  } | undefined;
226
216
  /**
227
217
  * The month button is hidden when the month picker or year picker is shown
228
- * @returns {boolean}
229
218
  * @private
230
219
  */
231
220
  get _isHeaderMonthButtonHidden(): boolean;
@@ -248,7 +237,7 @@ declare class Calendar extends CalendarPart {
248
237
  * Creates instances of <code>ui5-date</code> inside this <code>ui5-calendar</code> with values, equal to the provided UTC timestamps
249
238
  * @protected
250
239
  * @deprecated
251
- * @param { Array<number> } selectedDates Array of UTC timestamps
240
+ * @param selectedDates Array of UTC timestamps
252
241
  */
253
242
  set selectedDates(selectedDates: Array<number>);
254
243
  }
package/dist/Calendar.js CHANGED
@@ -10,13 +10,13 @@ import property from "@ui5/webcomponents-base/dist/decorators/property.js";
10
10
  import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
11
11
  import transformDateToSecondaryType from "@ui5/webcomponents-localization/dist/dates/transformDateToSecondaryType.js";
12
12
  import convertMonthNumbersToMonthNames from "@ui5/webcomponents-localization/dist/dates/convertMonthNumbersToMonthNames.js";
13
- import CalendarDate from "@ui5/webcomponents-localization/dist/dates/CalendarDate.js";
13
+ import CalendarDateComponent from "@ui5/webcomponents-localization/dist/dates/CalendarDate.js";
14
14
  import { renderFinished } from "@ui5/webcomponents-base/dist/Render.js";
15
15
  import { isF4, isF4Shift, } from "@ui5/webcomponents-base/dist/Keys.js";
16
16
  import getCachedLocaleDataInstance from "@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js";
17
17
  import getLocale from "@ui5/webcomponents-base/dist/locale/getLocale.js";
18
18
  import DateFormat from "@ui5/webcomponents-localization/dist/DateFormat.js";
19
- import * as CalendarDateComponent from "./CalendarDate.js";
19
+ import CalendarDate from "./CalendarDate.js";
20
20
  import CalendarPart from "./CalendarPart.js";
21
21
  import CalendarHeader from "./CalendarHeader.js";
22
22
  import DayPicker from "./DayPicker.js";
@@ -136,11 +136,7 @@ import calendarCSS from "./generated/themes/Calendar.css.js";
136
136
  * <code>import "@ui5/webcomponents/dist/Calendar";</code>
137
137
  *
138
138
  * @constructor
139
- * @author SAP SE
140
- * @alias sap.ui.webc.main.Calendar
141
- * @extends sap.ui.webc.main.CalendarPart
142
- * @tagname ui5-calendar
143
- * @appenddocs sap.ui.webc.main.CalendarDate
139
+ * @extends CalendarPart
144
140
  * @public
145
141
  * @since 1.0.0-rc.11
146
142
  */
@@ -171,7 +167,7 @@ let Calendar = class Calendar extends CalendarPart {
171
167
  });
172
168
  // Create tags for the selected dates that don't already exist in DOM
173
169
  selectedValues.filter(value => !valuesInDOM.includes(value)).forEach(value => {
174
- const dateElement = document.createElement(CalendarDateComponent.default.getMetadata().getTag());
170
+ const dateElement = document.createElement(CalendarDate.getMetadata().getTag());
175
171
  dateElement.value = value;
176
172
  this.appendChild(dateElement);
177
173
  });
@@ -204,8 +200,8 @@ let Calendar = class Calendar extends CalendarPart {
204
200
  const localeData = getCachedLocaleDataInstance(getLocale());
205
201
  this._headerMonthButtonText = localeData.getMonthsStandAlone("wide", this.primaryCalendarType)[this._calendarDate.getMonth()];
206
202
  if (this._currentPicker === "year") {
207
- const rangeStart = new CalendarDate(this._calendarDate, this._primaryCalendarType);
208
- const rangeEnd = new CalendarDate(this._calendarDate, this._primaryCalendarType);
203
+ const rangeStart = new CalendarDateComponent(this._calendarDate, this._primaryCalendarType);
204
+ const rangeEnd = new CalendarDateComponent(this._calendarDate, this._primaryCalendarType);
209
205
  rangeStart.setYear(this._currentPickerDOM._firstYear);
210
206
  rangeEnd.setYear(this._currentPickerDOM._lastYear);
211
207
  this._headerYearButtonText = `${yearFormat.format(rangeStart.toLocalJSDate(), true)} - ${yearFormat.format(rangeEnd.toLocalJSDate(), true)}`;
@@ -255,8 +251,8 @@ let Calendar = class Calendar extends CalendarPart {
255
251
  _setSecondaryCalendarTypeButtonText() {
256
252
  const yearFormatSecType = DateFormat.getDateInstance({ format: "y", calendarType: this._secondaryCalendarType });
257
253
  if (this._currentPicker === "year") {
258
- const rangeStart = new CalendarDate(this._calendarDate, this._primaryCalendarType);
259
- const rangeEnd = new CalendarDate(this._calendarDate, this._primaryCalendarType);
254
+ const rangeStart = new CalendarDateComponent(this._calendarDate, this._primaryCalendarType);
255
+ const rangeEnd = new CalendarDateComponent(this._calendarDate, this._primaryCalendarType);
260
256
  rangeStart.setYear(this._currentPickerDOM._firstYear);
261
257
  rangeEnd.setYear(this._currentPickerDOM._lastYear);
262
258
  const rangeStartSecType = transformDateToSecondaryType(this.primaryCalendarType, this._secondaryCalendarType, rangeStart.valueOf() / 1000, true)
@@ -286,7 +282,6 @@ let Calendar = class Calendar extends CalendarPart {
286
282
  }
287
283
  /**
288
284
  * The month button is hidden when the month picker or year picker is shown
289
- * @returns {boolean}
290
285
  * @private
291
286
  */
292
287
  get _isHeaderMonthButtonHidden() {
@@ -303,7 +298,7 @@ let Calendar = class Calendar extends CalendarPart {
303
298
  }
304
299
  _fireEventAndUpdateSelectedDates(selectedDates) {
305
300
  const datesValues = selectedDates.map(timestamp => {
306
- const calendarDate = CalendarDate.fromTimestamp(timestamp * 1000, this._primaryCalendarType);
301
+ const calendarDate = CalendarDateComponent.fromTimestamp(timestamp * 1000, this._primaryCalendarType);
307
302
  return this.getFormat().format(calendarDate.toUTCJSDate(), true);
308
303
  });
309
304
  const defaultPrevented = !this.fireEvent("selected-dates-change", { timestamp: this.timestamp, dates: [...selectedDates], values: datesValues }, true);
@@ -361,7 +356,7 @@ let Calendar = class Calendar extends CalendarPart {
361
356
  * Creates instances of <code>ui5-date</code> inside this <code>ui5-calendar</code> with values, equal to the provided UTC timestamps
362
357
  * @protected
363
358
  * @deprecated
364
- * @param { Array<number> } selectedDates Array of UTC timestamps
359
+ * @param selectedDates Array of UTC timestamps
365
360
  */
366
361
  set selectedDates(selectedDates) {
367
362
  this._setSelectedDates(selectedDates);
@@ -407,7 +402,7 @@ Calendar = __decorate([
407
402
  template: CalendarTemplate,
408
403
  styles: calendarCSS,
409
404
  dependencies: [
410
- CalendarDateComponent.default,
405
+ CalendarDate,
411
406
  CalendarHeader,
412
407
  DayPicker,
413
408
  MonthPicker,
@@ -419,16 +414,21 @@ Calendar = __decorate([
419
414
  * <b>Note:</b> If you call <code>preventDefault()</code> for this event, the component will not
420
415
  * create instances of <code>ui5-date</code> for the newly selected dates. In that case you should do this manually.
421
416
  *
422
- * @event sap.ui.webc.main.Calendar#selected-dates-change
423
417
  * @allowPreventDefault
424
- * @param {Array} values The selected dates
425
- * @param {Array} dates The selected dates as UTC timestamps
418
+ * @param {Array<string>} values The selected dates
419
+ * @param {Array<number>} dates The selected dates as UTC timestamps
426
420
  * @public
427
421
  */
428
422
  ,
429
423
  event("selected-dates-change", {
430
424
  detail: {
425
+ /**
426
+ * @public
427
+ */
431
428
  dates: { type: Array },
429
+ /**
430
+ * @public
431
+ */
432
432
  values: { type: Array },
433
433
  },
434
434
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"Calendar.js","sourceRoot":"","sources":["../src/Calendar.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport type { ChangeInfo } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport transformDateToSecondaryType from \"@ui5/webcomponents-localization/dist/dates/transformDateToSecondaryType.js\";\nimport convertMonthNumbersToMonthNames from \"@ui5/webcomponents-localization/dist/dates/convertMonthNumbersToMonthNames.js\";\nimport CalendarDate from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport {\n\tisF4,\n\tisF4Shift,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport * as CalendarDateComponent from \"./CalendarDate.js\";\nimport type CalendarDateComponentT from \"./CalendarDate.js\";\nimport CalendarPart from \"./CalendarPart.js\";\nimport CalendarHeader from \"./CalendarHeader.js\";\nimport DayPicker from \"./DayPicker.js\";\nimport type { DayPickerChangeEventDetail } from \"./DayPicker.js\";\nimport MonthPicker from \"./MonthPicker.js\";\nimport type { MonthPickerChangeEventDetail } from \"./MonthPicker.js\";\nimport YearPicker from \"./YearPicker.js\";\nimport type { YearPickerChangeEventDetail } from \"./YearPicker.js\";\nimport CalendarSelectionMode from \"./types/CalendarSelectionMode.js\";\nimport CalendarPickersMode from \"./types/CalendarPickersMode.js\";\n\n// Default calendar for bundling\nimport \"@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js\";\n\n// Template\nimport CalendarTemplate from \"./generated/templates/CalendarTemplate.lit.js\";\n\n// Styles\nimport calendarCSS from \"./generated/themes/Calendar.css.js\";\n\ninterface ICalendarPicker {\n\t_showPreviousPage: () => void,\n\t_showNextPage: () => void,\n\t_hasPreviousPage: () => boolean,\n\t_hasNextPage: () => boolean,\n\t_autoFocus?: boolean,\n\t_firstYear?: number,\n\t_lastYear?: number,\n}\n\ntype CalendarSelectedDatesChangeEventDetail = {\n\tvalues: Array<string>,\n\tdates: Array<number>,\n\ttimestamp: number | undefined,\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>ui5-calendar</code> component allows users to select one or more dates.\n * <br><br>\n * Currently selected dates are represented with instances of <code>ui5-date</code> as\n * children of the <code>ui5-calendar</code>. The value property of each <code>ui5-date</code> must be a\n * date string, correctly formatted according to the <code>ui5-calendar</code>'s <code>formatPattern</code> property.\n * Whenever the user changes the date selection, <code>ui5-calendar</code> will automatically create/remove instances\n * of <code>ui5-date</code> in itself, unless you prevent this behavior by calling <code>preventDefault()</code> for the\n * <code>selected-dates-change</code> event. This is useful if you want to control the selected dates externally.\n * <br><br>\n *\n * <h3>Usage</h3>\n *\n * The user can navigate to a particular date by:\n * <br>\n * <ul>\n * <li>Pressing over a month inside the months view</li>\n * <li>Pressing over an year inside the years view</li>\n * </ul>\n * <br>\n * The user can confirm a date selection by pressing over a date inside the days view.\n * <br><br>\n *\n * <h3>Keyboard Handling</h3>\n * The <code>ui5-calendar</code> provides advanced keyboard handling.\n * When a picker is showed and focused the user can use the following keyboard\n * shortcuts in order to perform a navigation:\n * <br>\n * - Day picker: <br>\n * <ul>\n * <li>[F4] - Shows month picker</li>\n * <li>[SHIFT] + [F4] - Shows year picker</li>\n * <li>[PAGEUP] - Navigate to the previous month</li>\n * <li>[PAGEDOWN] - Navigate to the next month</li>\n * <li>[SHIFT] + [PAGEUP] - Navigate to the previous year</li>\n * <li>[SHIFT] + [PAGEDOWN] - Navigate to the next year</li>\n * <li>[CTRL] + [SHIFT] + [PAGEUP] - Navigate ten years backwards</li>\n * <li>[CTRL] + [SHIFT] + [PAGEDOWN] - Navigate ten years forwards</li>\n * <li>[HOME] - Navigate to the first day of the week</li>\n * <li>[END] - Navigate to the last day of the week</li>\n * <li>[CTRL] + [HOME] - Navigate to the first day of the month</li>\n * <li>[CTRL] + [END] - Navigate to the last day of the month</li>\n * </ul>\n * <br>\n * - Month picker: <br>\n * <ul>\n * <li>[PAGEUP] - Navigate to the previous year</li>\n * <li>[PAGEDOWN] - Navigate to the next year</li>\n * <li>[HOME] - Navigate to the first month of the current row</li>\n * <li>[END] - Navigate to the last month of the current row</li>\n * <li>[CTRL] + [HOME] - Navigate to the first month of the current year</li>\n * <li>[CTRL] + [END] - Navigate to the last month of the year</li>\n * </ul>\n * <br>\n * - Year picker: <br>\n * <ul>\n * <li>[PAGEUP] - Navigate to the previous year range</li>\n * <li>[PAGEDOWN] - Navigate the next year range</li>\n * <li>[HOME] - Navigate to the first year of the current row</li>\n * <li>[END] - Navigate to the last year of the current row</li>\n * <li>[CTRL] + [HOME] - Navigate to the first year of the current year range</li>\n * <li>[CTRL] + [END] - Navigate to the last year of the current year range</li>\n * </ul>\n * <br>\n *\n * <h4>Fast Navigation</h4>\n * This component provides a build in fast navigation group which can be used via <code>F6 / Shift + F6</code> or <code> Ctrl + Alt(Option) + Down / Ctrl + Alt(Option) + Up</code>.\n * In order to use this functionality, you need to import the following module:\n * <code>import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"</code>\n * <br><br>\n *\n* <h3>Calendar types</h3>\n * The component supports several calendar types - Gregorian, Buddhist, Islamic, Japanese and Persian.\n * By default the Gregorian Calendar is used. In order to use the Buddhist, Islamic, Japanese or Persian calendar,\n * you need to set the <code>primaryCalendarType</code> property and import one or more of the following modules:\n * <br><br>\n *\n * <code>import \"@ui5/webcomponents-localization/dist/features/calendar/Buddhist.js\";</code>\n * <br>\n * <code>import \"@ui5/webcomponents-localization/dist/features/calendar/Islamic.js\";</code>\n * <br>\n * <code>import \"@ui5/webcomponents-localization/dist/features/calendar/Japanese.js\";</code>\n * <br>\n * <code>import \"@ui5/webcomponents-localization/dist/features/calendar/Persian.js\";</code>\n * <br><br>\n *\n * Or, you can use the global configuration and set the <code>calendarType</code> key:\n * <br>\n * <code>\n * &lt;script data-id=\"sap-ui-config\" type=\"application/json\"&gt;\n * {\n *\t\"calendarType\": \"Japanese\"\n * }\n * &lt;/script&gt;\n * </code>\n *\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/Calendar\";</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.Calendar\n * @extends sap.ui.webc.main.CalendarPart\n * @tagname ui5-calendar\n * @appenddocs sap.ui.webc.main.CalendarDate\n * @public\n * @since 1.0.0-rc.11\n */\n@customElement({\n\ttag: \"ui5-calendar\",\n\tfastNavigation: true,\n\ttemplate: CalendarTemplate,\n\tstyles: calendarCSS,\n\tdependencies: [\n\t\tCalendarDateComponent.default,\n\t\tCalendarHeader,\n\t\tDayPicker,\n\t\tMonthPicker,\n\t\tYearPicker,\n\t],\n})\n/**\n * Fired when the selected dates change.\n * <b>Note:</b> If you call <code>preventDefault()</code> for this event, the component will not\n * create instances of <code>ui5-date</code> for the newly selected dates. In that case you should do this manually.\n *\n * @event sap.ui.webc.main.Calendar#selected-dates-change\n * @allowPreventDefault\n * @param {Array} values The selected dates\n * @param {Array} dates The selected dates as UTC timestamps\n * @public\n */\n@event(\"selected-dates-change\", {\n\tdetail: {\n\t\tdates: { type: Array },\n\t\tvalues: { type: Array },\n\t},\n})\n\n@event(\"show-month-press\")\n@event(\"show-year-press\")\nclass Calendar extends CalendarPart {\n\t/**\n\t * Defines the type of selection used in the calendar component.\n\t * Accepted property values are:<br>\n\t * <ul>\n\t * <li><code>CalendarSelectionMode.Single</code> - enables a single date selection.(default value)</li>\n\t * <li><code>CalendarSelectionMode.Range</code> - enables selection of a date range.</li>\n\t * <li><code>CalendarSelectionMode.Multiple</code> - enables selection of multiple dates.</li>\n\t * </ul>\n\t * @type {sap.ui.webc.main.types.CalendarSelectionMode}\n\t * @name sap.ui.webc.main.Calendar.prototype.selectionMode\n\t * @defaultvalue \"Single\"\n\t * @public\n\t */\n\t@property({\n\t\ttype: CalendarSelectionMode,\n\t\tdefaultValue: CalendarSelectionMode.Single,\n\t})\n\tselectionMode!: `${CalendarSelectionMode}`;\n\n\t/**\n\t * Defines the visibility of the week numbers column.\n\t * <br><br>\n\t *\n\t * <b>Note:</b> For calendars other than Gregorian,\n\t * the week numbers are not displayed regardless of what is set.\n\t *\n\t * @type {boolean}\n\t * @name sap.ui.webc.main.Calendar.prototype.hideWeekNumbers\n\t * @defaultvalue false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thideWeekNumbers!: boolean;\n\n\t/**\n\t * Which picker is currently visible to the user: day/month/year\n\t */\n\t@property({ defaultValue: \"day\" })\n\t_currentPicker!: string;\n\n\t@property({ type: Boolean })\n\t_previousButtonDisabled!: boolean;\n\n\t@property({ type: Boolean })\n\t_nextButtonDisabled!: boolean;\n\n\t@property()\n\t_headerMonthButtonText!: string;\n\n\t@property()\n\t_headerYearButtonText!: string;\n\n\t@property()\n\t_headerYearButtonTextSecType!: string;\n\n\t@property({ type: CalendarPickersMode, defaultValue: CalendarPickersMode.DAY_MONTH_YEAR, noAttribute: true })\n\t_pickersMode!: CalendarPickersMode;\n\n\t_valueIsProcessed!: boolean\n\n\t/**\n\t * Defines the selected date or dates (depending on the <code>selectionMode</code> property)\n\t * for this calendar as instances of <code>ui5-date</code>.\n\t *\n\t * @type {sap.ui.webc.main.ICalendarDate[]}\n\t * @name sap.ui.webc.main.Calendar.prototype.default\n\t * @slot dates\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true, \"default\": true })\n\tdates!: Array<CalendarDateComponentT>;\n\n\t/**\n\t * @private\n\t */\n\tget _selectedDatesTimestamps(): Array<number> {\n\t\treturn this.dates.map(date => {\n\t\t\tconst value = date.value;\n\t\t\tconst validValue = value && !!this.getFormat().parse(value);\n\t\t\treturn validValue ? this._getTimeStampFromString(value)! / 1000 : undefined;\n\t\t}).filter((date): date is number => !!date);\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._valueIsProcessed = false;\n\t}\n\t/**\n\t * @private\n\t */\n\t_setSelectedDates(selectedDates: Array<number>) {\n\t\tconst selectedValues = selectedDates.map(timestamp => this.getFormat().format(new Date(timestamp * 1000), true)); // Format as UTC\n\t\tconst valuesInDOM = [...this.dates].map(dateElement => dateElement.value);\n\n\t\t// Remove all elements for dates that are no longer selected\n\t\tthis.dates.filter(dateElement => !selectedValues.includes(dateElement.value)).forEach(dateElement => {\n\t\t\tthis.removeChild(dateElement);\n\t\t});\n\n\t\t// Create tags for the selected dates that don't already exist in DOM\n\t\tselectedValues.filter(value => !valuesInDOM.includes(value)).forEach(value => {\n\t\t\tconst dateElement = document.createElement(CalendarDateComponent.default.getMetadata().getTag()) as CalendarDateComponentT;\n\t\t\tdateElement.value = value;\n\t\t\tthis.appendChild(dateElement);\n\t\t});\n\t}\n\n\t/**\n\t * Makes sure that _currentPicker is always set to a value, allowed by _pickersMode\n\t */\n\t_normalizeCurrentPicker() {\n\t\tif (this._currentPicker === \"day\" && this._pickersMode !== CalendarPickersMode.DAY_MONTH_YEAR) {\n\t\t\tthis._currentPicker = \"month\";\n\t\t}\n\n\t\tif (this._currentPicker === \"month\" && this._pickersMode === CalendarPickersMode.YEAR) {\n\t\t\tthis._currentPicker = \"year\";\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._normalizeCurrentPicker();\n\n\t\tif (!this._valueIsProcessed) {\n\t\t\tif (this._selectedDatesTimestamps) {\n\t\t\t\tthis.timestamp = this._selectedDatesTimestamps[0];\n\t\t\t}\n\n\t\t\tthis._valueIsProcessed = true;\n\t\t}\n\t}\n\n\tasync onAfterRendering() {\n\t\tawait renderFinished(); // Await for the current picker to render and then ask if it has previous/next pages\n\t\tthis._previousButtonDisabled = !this._currentPickerDOM._hasPreviousPage();\n\t\tthis._nextButtonDisabled = !this._currentPickerDOM._hasNextPage();\n\n\t\tconst yearFormat = DateFormat.getDateInstance({ format: \"y\", calendarType: this.primaryCalendarType });\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\tthis._headerMonthButtonText = localeData.getMonthsStandAlone(\"wide\", this.primaryCalendarType)[this._calendarDate.getMonth()];\n\n\t\tif (this._currentPicker === \"year\") {\n\t\t\tconst rangeStart = new CalendarDate(this._calendarDate, this._primaryCalendarType);\n\t\t\tconst rangeEnd = new CalendarDate(this._calendarDate, this._primaryCalendarType);\n\t\t\trangeStart.setYear(this._currentPickerDOM._firstYear!);\n\t\t\trangeEnd.setYear(this._currentPickerDOM._lastYear!);\n\n\t\t\tthis._headerYearButtonText = `${yearFormat.format(rangeStart.toLocalJSDate(), true)} - ${yearFormat.format(rangeEnd.toLocalJSDate(), true)}`;\n\t\t} else {\n\t\t\tthis._headerYearButtonText = String(yearFormat.format(this._localDate, true));\n\t\t}\n\n\t\tthis._secondaryCalendarType && this._setSecondaryCalendarTypeButtonText();\n\t}\n\n\tonInvalidation(changeInfo: ChangeInfo) {\n\t\tif (changeInfo.reason === \"childchange\") {\n\t\t\tthis._valueIsProcessed = false;\n\t\t}\n\t}\n\n\t/**\n\t * The user clicked the \"month\" button in the header\n\t */\n\tonHeaderShowMonthPress(e: CustomEvent) {\n\t\tthis._currentPickerDOM._autoFocus = false;\n\t\tthis._currentPicker = \"month\";\n\t\tthis.fireEvent(\"show-month-press\", e);\n\t}\n\n\t/**\n\t * The user clicked the \"year\" button in the header\n\t */\n\tonHeaderShowYearPress(e: CustomEvent) {\n\t\tthis._currentPickerDOM._autoFocus = false;\n\t\tthis._currentPicker = \"year\";\n\t\tthis.fireEvent(\"show-year-press\", e);\n\t}\n\n\tget _currentPickerDOM() {\n\t\t// Calendar's shadowRoot and all the pickers are always present - the \"!\" is safe to be used.\n\t\treturn this.shadowRoot!.querySelector(`[ui5-${this._currentPicker}picker]`)! as unknown as ICalendarPicker;\n\t}\n\n\t/**\n\t * The year clicked the \"Previous\" button in the header\n\t */\n\tonHeaderPreviousPress() {\n\t\tthis._currentPickerDOM._showPreviousPage();\n\t}\n\n\t/**\n\t * The year clicked the \"Next\" button in the header\n\t */\n\tonHeaderNextPress() {\n\t\tthis._currentPickerDOM._showNextPage();\n\t}\n\n\t_setSecondaryCalendarTypeButtonText() {\n\t\tconst yearFormatSecType = DateFormat.getDateInstance({ format: \"y\", calendarType: this._secondaryCalendarType });\n\n\t\tif (this._currentPicker === \"year\") {\n\t\t\tconst rangeStart = new CalendarDate(this._calendarDate, this._primaryCalendarType);\n\t\t\tconst rangeEnd = new CalendarDate(this._calendarDate, this._primaryCalendarType);\n\t\t\trangeStart.setYear(this._currentPickerDOM._firstYear!);\n\t\t\trangeEnd.setYear(this._currentPickerDOM._lastYear!);\n\n\t\t\tconst rangeStartSecType = transformDateToSecondaryType(this.primaryCalendarType, this._secondaryCalendarType, rangeStart.valueOf() / 1000, true)\n\t\t\t\t.firstDate;\n\t\t\tconst rangeEndSecType = transformDateToSecondaryType(this.primaryCalendarType, this._secondaryCalendarType, rangeEnd.valueOf() / 1000, true)\n\t\t\t\t.lastDate;\n\t\t\tthis._headerYearButtonTextSecType = `${yearFormatSecType.format(rangeStartSecType.toLocalJSDate(), true)} - ${yearFormatSecType.format(rangeEndSecType.toLocalJSDate(), true)}`;\n\t\t} else {\n\t\t\tthis._headerYearButtonTextSecType = String(yearFormatSecType.format(this._localDate, true));\n\t\t}\n\t}\n\n\tget secondaryCalendarTypeButtonText() {\n\t\tif (!this.hasSecondaryCalendarType) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst localDate = new Date(this._timestamp * 1000);\n\t\tconst secondYearFormat = DateFormat.getDateInstance({ format: \"y\", calendarType: this._secondaryCalendarType });\n\t\tconst dateInSecType = transformDateToSecondaryType(this._primaryCalendarType, this._secondaryCalendarType, this._timestamp);\n\t\tconst secondMonthInfo = convertMonthNumbersToMonthNames(dateInSecType.firstDate.getMonth(), dateInSecType.lastDate.getMonth(), this._secondaryCalendarType);\n\t\tconst secondYearText = secondYearFormat.format(localDate, true);\n\n\t\treturn {\n\t\t\tyearButtonText: secondYearText,\n\t\t\tmonthButtonText: secondMonthInfo.text,\n\t\t\tmonthButtonInfo: secondMonthInfo.textInfo,\n\t\t};\n\t}\n\n\t/**\n\t * The month button is hidden when the month picker or year picker is shown\n\t * @returns {boolean}\n\t * @private\n\t */\n\tget _isHeaderMonthButtonHidden() {\n\t\treturn this._currentPicker === \"month\" || this._currentPicker === \"year\";\n\t}\n\n\tget _isDayPickerHidden() {\n\t\treturn this._currentPicker !== \"day\";\n\t}\n\n\tget _isMonthPickerHidden() {\n\t\treturn this._currentPicker !== \"month\";\n\t}\n\n\tget _isYearPickerHidden() {\n\t\treturn this._currentPicker !== \"year\";\n\t}\n\n\t_fireEventAndUpdateSelectedDates(selectedDates: Array<number>) {\n\t\tconst datesValues = selectedDates.map(timestamp => {\n\t\t\tconst calendarDate = CalendarDate.fromTimestamp(timestamp * 1000, this._primaryCalendarType);\n\t\t\treturn this.getFormat().format(calendarDate.toUTCJSDate(), true);\n\t\t});\n\n\t\tconst defaultPrevented = !this.fireEvent<CalendarSelectedDatesChangeEventDetail>(\"selected-dates-change\", { timestamp: this.timestamp, dates: [...selectedDates], values: datesValues }, true);\n\t\tif (!defaultPrevented) {\n\t\t\tthis._setSelectedDates(selectedDates);\n\t\t}\n\t}\n\n\tonSelectedDatesChange(e: CustomEvent<DayPickerChangeEventDetail>) {\n\t\tthis.timestamp = e.detail.timestamp;\n\t\tthis._fireEventAndUpdateSelectedDates(e.detail.dates);\n\t}\n\n\tonSelectedMonthChange(e: CustomEvent<MonthPickerChangeEventDetail>) {\n\t\tthis.timestamp = e.detail.timestamp;\n\n\t\tif (this._pickersMode === CalendarPickersMode.DAY_MONTH_YEAR) {\n\t\t\tthis._currentPicker = \"day\";\n\t\t} else {\n\t\t\tthis._fireEventAndUpdateSelectedDates([this.timestamp]);\n\t\t}\n\n\t\tthis._currentPickerDOM._autoFocus = true;\n\t}\n\n\tonSelectedYearChange(e: CustomEvent<YearPickerChangeEventDetail>) {\n\t\tthis.timestamp = e.detail.timestamp;\n\n\t\tif (this._pickersMode === CalendarPickersMode.DAY_MONTH_YEAR) {\n\t\t\tthis._currentPicker = \"day\";\n\t\t} else if (this._pickersMode === CalendarPickersMode.MONTH_YEAR) {\n\t\t\tthis._currentPicker = \"month\";\n\t\t} else {\n\t\t\tthis._fireEventAndUpdateSelectedDates([this.timestamp]);\n\t\t}\n\n\t\tthis._currentPickerDOM._autoFocus = true;\n\t}\n\n\tonNavigate(e: CustomEvent) {\n\t\tthis.timestamp = e.detail.timestamp;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isF4(e) && this._currentPicker !== \"month\") {\n\t\t\tthis._currentPicker = \"month\";\n\t\t}\n\n\t\tif (isF4Shift(e) && this._currentPicker !== \"year\") {\n\t\t\tthis._currentPicker = \"year\";\n\t\t}\n\t}\n\n\t/**\n\t * Returns an array of UTC timestamps, representing the selected dates.\n\t * @protected\n\t * @deprecated\n\t */\n\tget selectedDates(): Array<number> {\n\t\treturn this._selectedDatesTimestamps;\n\t}\n\n\t/**\n\t * Creates instances of <code>ui5-date</code> inside this <code>ui5-calendar</code> with values, equal to the provided UTC timestamps\n\t * @protected\n\t * @deprecated\n\t * @param { Array<number> } selectedDates Array of UTC timestamps\n\t */\n\tset selectedDates(selectedDates: Array<number>) {\n\t\tthis._setSelectedDates(selectedDates);\n\t}\n}\n\nCalendar.define();\n\nexport default Calendar;\nexport type {\n\tICalendarPicker,\n\tCalendarSelectedDatesChangeEventDetail,\n};\n"]}
1
+ {"version":3,"file":"Calendar.js","sourceRoot":"","sources":["../src/Calendar.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport type { ChangeInfo } from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport transformDateToSecondaryType from \"@ui5/webcomponents-localization/dist/dates/transformDateToSecondaryType.js\";\nimport convertMonthNumbersToMonthNames from \"@ui5/webcomponents-localization/dist/dates/convertMonthNumbersToMonthNames.js\";\nimport CalendarDateComponent from \"@ui5/webcomponents-localization/dist/dates/CalendarDate.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport {\n\tisF4,\n\tisF4Shift,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport getCachedLocaleDataInstance from \"@ui5/webcomponents-localization/dist/getCachedLocaleDataInstance.js\";\nimport getLocale from \"@ui5/webcomponents-base/dist/locale/getLocale.js\";\nimport DateFormat from \"@ui5/webcomponents-localization/dist/DateFormat.js\";\nimport CalendarDate from \"./CalendarDate.js\";\nimport CalendarPart from \"./CalendarPart.js\";\nimport CalendarHeader from \"./CalendarHeader.js\";\nimport DayPicker from \"./DayPicker.js\";\nimport type { DayPickerChangeEventDetail } from \"./DayPicker.js\";\nimport MonthPicker from \"./MonthPicker.js\";\nimport type { MonthPickerChangeEventDetail } from \"./MonthPicker.js\";\nimport YearPicker from \"./YearPicker.js\";\nimport type { YearPickerChangeEventDetail } from \"./YearPicker.js\";\nimport CalendarSelectionMode from \"./types/CalendarSelectionMode.js\";\nimport CalendarPickersMode from \"./types/CalendarPickersMode.js\";\n\n// Default calendar for bundling\nimport \"@ui5/webcomponents-localization/dist/features/calendar/Gregorian.js\";\n\n// Template\nimport CalendarTemplate from \"./generated/templates/CalendarTemplate.lit.js\";\n\n// Styles\nimport calendarCSS from \"./generated/themes/Calendar.css.js\";\n\ninterface ICalendarPicker {\n\t_showPreviousPage: () => void,\n\t_showNextPage: () => void,\n\t_hasPreviousPage: () => boolean,\n\t_hasNextPage: () => boolean,\n\t_autoFocus?: boolean,\n\t_firstYear?: number,\n\t_lastYear?: number,\n}\n\ntype CalendarSelectedDatesChangeEventDetail = {\n\tvalues: Array<string>,\n\tdates: Array<number>,\n\ttimestamp: number | undefined,\n}\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>ui5-calendar</code> component allows users to select one or more dates.\n * <br><br>\n * Currently selected dates are represented with instances of <code>ui5-date</code> as\n * children of the <code>ui5-calendar</code>. The value property of each <code>ui5-date</code> must be a\n * date string, correctly formatted according to the <code>ui5-calendar</code>'s <code>formatPattern</code> property.\n * Whenever the user changes the date selection, <code>ui5-calendar</code> will automatically create/remove instances\n * of <code>ui5-date</code> in itself, unless you prevent this behavior by calling <code>preventDefault()</code> for the\n * <code>selected-dates-change</code> event. This is useful if you want to control the selected dates externally.\n * <br><br>\n *\n * <h3>Usage</h3>\n *\n * The user can navigate to a particular date by:\n * <br>\n * <ul>\n * <li>Pressing over a month inside the months view</li>\n * <li>Pressing over an year inside the years view</li>\n * </ul>\n * <br>\n * The user can confirm a date selection by pressing over a date inside the days view.\n * <br><br>\n *\n * <h3>Keyboard Handling</h3>\n * The <code>ui5-calendar</code> provides advanced keyboard handling.\n * When a picker is showed and focused the user can use the following keyboard\n * shortcuts in order to perform a navigation:\n * <br>\n * - Day picker: <br>\n * <ul>\n * <li>[F4] - Shows month picker</li>\n * <li>[SHIFT] + [F4] - Shows year picker</li>\n * <li>[PAGEUP] - Navigate to the previous month</li>\n * <li>[PAGEDOWN] - Navigate to the next month</li>\n * <li>[SHIFT] + [PAGEUP] - Navigate to the previous year</li>\n * <li>[SHIFT] + [PAGEDOWN] - Navigate to the next year</li>\n * <li>[CTRL] + [SHIFT] + [PAGEUP] - Navigate ten years backwards</li>\n * <li>[CTRL] + [SHIFT] + [PAGEDOWN] - Navigate ten years forwards</li>\n * <li>[HOME] - Navigate to the first day of the week</li>\n * <li>[END] - Navigate to the last day of the week</li>\n * <li>[CTRL] + [HOME] - Navigate to the first day of the month</li>\n * <li>[CTRL] + [END] - Navigate to the last day of the month</li>\n * </ul>\n * <br>\n * - Month picker: <br>\n * <ul>\n * <li>[PAGEUP] - Navigate to the previous year</li>\n * <li>[PAGEDOWN] - Navigate to the next year</li>\n * <li>[HOME] - Navigate to the first month of the current row</li>\n * <li>[END] - Navigate to the last month of the current row</li>\n * <li>[CTRL] + [HOME] - Navigate to the first month of the current year</li>\n * <li>[CTRL] + [END] - Navigate to the last month of the year</li>\n * </ul>\n * <br>\n * - Year picker: <br>\n * <ul>\n * <li>[PAGEUP] - Navigate to the previous year range</li>\n * <li>[PAGEDOWN] - Navigate the next year range</li>\n * <li>[HOME] - Navigate to the first year of the current row</li>\n * <li>[END] - Navigate to the last year of the current row</li>\n * <li>[CTRL] + [HOME] - Navigate to the first year of the current year range</li>\n * <li>[CTRL] + [END] - Navigate to the last year of the current year range</li>\n * </ul>\n * <br>\n *\n * <h4>Fast Navigation</h4>\n * This component provides a build in fast navigation group which can be used via <code>F6 / Shift + F6</code> or <code> Ctrl + Alt(Option) + Down / Ctrl + Alt(Option) + Up</code>.\n * In order to use this functionality, you need to import the following module:\n * <code>import \"@ui5/webcomponents-base/dist/features/F6Navigation.js\"</code>\n * <br><br>\n *\n* <h3>Calendar types</h3>\n * The component supports several calendar types - Gregorian, Buddhist, Islamic, Japanese and Persian.\n * By default the Gregorian Calendar is used. In order to use the Buddhist, Islamic, Japanese or Persian calendar,\n * you need to set the <code>primaryCalendarType</code> property and import one or more of the following modules:\n * <br><br>\n *\n * <code>import \"@ui5/webcomponents-localization/dist/features/calendar/Buddhist.js\";</code>\n * <br>\n * <code>import \"@ui5/webcomponents-localization/dist/features/calendar/Islamic.js\";</code>\n * <br>\n * <code>import \"@ui5/webcomponents-localization/dist/features/calendar/Japanese.js\";</code>\n * <br>\n * <code>import \"@ui5/webcomponents-localization/dist/features/calendar/Persian.js\";</code>\n * <br><br>\n *\n * Or, you can use the global configuration and set the <code>calendarType</code> key:\n * <br>\n * <code>\n * &lt;script data-id=\"sap-ui-config\" type=\"application/json\"&gt;\n * {\n *\t\"calendarType\": \"Japanese\"\n * }\n * &lt;/script&gt;\n * </code>\n *\n *\n * <h3>ES6 Module Import</h3>\n *\n * <code>import \"@ui5/webcomponents/dist/Calendar\";</code>\n *\n * @constructor\n * @extends CalendarPart\n * @public\n * @since 1.0.0-rc.11\n */\n@customElement({\n\ttag: \"ui5-calendar\",\n\tfastNavigation: true,\n\ttemplate: CalendarTemplate,\n\tstyles: calendarCSS,\n\tdependencies: [\n\t\tCalendarDate,\n\t\tCalendarHeader,\n\t\tDayPicker,\n\t\tMonthPicker,\n\t\tYearPicker,\n\t],\n})\n/**\n * Fired when the selected dates change.\n * <b>Note:</b> If you call <code>preventDefault()</code> for this event, the component will not\n * create instances of <code>ui5-date</code> for the newly selected dates. In that case you should do this manually.\n *\n * @allowPreventDefault\n * @param {Array<string>} values The selected dates\n * @param {Array<number>} dates The selected dates as UTC timestamps\n * @public\n */\n@event(\"selected-dates-change\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tdates: { type: Array },\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tvalues: { type: Array },\n\t},\n})\n\n@event(\"show-month-press\")\n@event(\"show-year-press\")\nclass Calendar extends CalendarPart {\n\t/**\n\t * Defines the type of selection used in the calendar component.\n\t * Accepted property values are:<br>\n\t * <ul>\n\t * <li><code>CalendarSelectionMode.Single</code> - enables a single date selection.(default value)</li>\n\t * <li><code>CalendarSelectionMode.Range</code> - enables selection of a date range.</li>\n\t * <li><code>CalendarSelectionMode.Multiple</code> - enables selection of multiple dates.</li>\n\t * </ul>\n\t * @default \"Single\"\n\t * @public\n\t */\n\t@property({\n\t\ttype: CalendarSelectionMode,\n\t\tdefaultValue: CalendarSelectionMode.Single,\n\t})\n\tselectionMode!: `${CalendarSelectionMode}`;\n\n\t/**\n\t * Defines the visibility of the week numbers column.\n\t * <br><br>\n\t *\n\t * <b>Note:</b> For calendars other than Gregorian,\n\t * the week numbers are not displayed regardless of what is set.\n\t *\n\t * @default false\n\t * @public\n\t */\n\t@property({ type: Boolean })\n\thideWeekNumbers!: boolean;\n\n\t/**\n\t * Which picker is currently visible to the user: day/month/year\n\t * @private\n\t */\n\t@property({ defaultValue: \"day\" })\n\t_currentPicker!: string;\n\n\t@property({ type: Boolean })\n\t_previousButtonDisabled!: boolean;\n\n\t@property({ type: Boolean })\n\t_nextButtonDisabled!: boolean;\n\n\t@property()\n\t_headerMonthButtonText!: string;\n\n\t@property()\n\t_headerYearButtonText!: string;\n\n\t@property()\n\t_headerYearButtonTextSecType!: string;\n\n\t@property({ type: CalendarPickersMode, defaultValue: CalendarPickersMode.DAY_MONTH_YEAR, noAttribute: true })\n\t_pickersMode!: CalendarPickersMode;\n\n\t_valueIsProcessed!: boolean\n\n\t/**\n\t * Defines the selected date or dates (depending on the <code>selectionMode</code> property)\n\t * for this calendar as instances of <code>ui5-date</code>.\n\t *\n\t * @public\n\t */\n\t@slot({ type: HTMLElement, invalidateOnChildChange: true, \"default\": true })\n\tdates!: Array<CalendarDate>;\n\n\t/**\n\t * @private\n\t */\n\tget _selectedDatesTimestamps(): Array<number> {\n\t\treturn this.dates.map(date => {\n\t\t\tconst value = date.value;\n\t\t\tconst validValue = value && !!this.getFormat().parse(value);\n\t\t\treturn validValue ? this._getTimeStampFromString(value)! / 1000 : undefined;\n\t\t}).filter((date): date is number => !!date);\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis._valueIsProcessed = false;\n\t}\n\t/**\n\t * @private\n\t */\n\t_setSelectedDates(selectedDates: Array<number>) {\n\t\tconst selectedValues = selectedDates.map(timestamp => this.getFormat().format(new Date(timestamp * 1000), true)); // Format as UTC\n\t\tconst valuesInDOM = [...this.dates].map(dateElement => dateElement.value);\n\n\t\t// Remove all elements for dates that are no longer selected\n\t\tthis.dates.filter(dateElement => !selectedValues.includes(dateElement.value)).forEach(dateElement => {\n\t\t\tthis.removeChild(dateElement);\n\t\t});\n\n\t\t// Create tags for the selected dates that don't already exist in DOM\n\t\tselectedValues.filter(value => !valuesInDOM.includes(value)).forEach(value => {\n\t\t\tconst dateElement = document.createElement(CalendarDate.getMetadata().getTag()) as CalendarDate;\n\t\t\tdateElement.value = value;\n\t\t\tthis.appendChild(dateElement);\n\t\t});\n\t}\n\n\t/**\n\t * Makes sure that _currentPicker is always set to a value, allowed by _pickersMode\n\t */\n\t_normalizeCurrentPicker() {\n\t\tif (this._currentPicker === \"day\" && this._pickersMode !== CalendarPickersMode.DAY_MONTH_YEAR) {\n\t\t\tthis._currentPicker = \"month\";\n\t\t}\n\n\t\tif (this._currentPicker === \"month\" && this._pickersMode === CalendarPickersMode.YEAR) {\n\t\t\tthis._currentPicker = \"year\";\n\t\t}\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._normalizeCurrentPicker();\n\n\t\tif (!this._valueIsProcessed) {\n\t\t\tif (this._selectedDatesTimestamps) {\n\t\t\t\tthis.timestamp = this._selectedDatesTimestamps[0];\n\t\t\t}\n\n\t\t\tthis._valueIsProcessed = true;\n\t\t}\n\t}\n\n\tasync onAfterRendering() {\n\t\tawait renderFinished(); // Await for the current picker to render and then ask if it has previous/next pages\n\t\tthis._previousButtonDisabled = !this._currentPickerDOM._hasPreviousPage();\n\t\tthis._nextButtonDisabled = !this._currentPickerDOM._hasNextPage();\n\n\t\tconst yearFormat = DateFormat.getDateInstance({ format: \"y\", calendarType: this.primaryCalendarType });\n\t\tconst localeData = getCachedLocaleDataInstance(getLocale());\n\t\tthis._headerMonthButtonText = localeData.getMonthsStandAlone(\"wide\", this.primaryCalendarType)[this._calendarDate.getMonth()];\n\n\t\tif (this._currentPicker === \"year\") {\n\t\t\tconst rangeStart = new CalendarDateComponent(this._calendarDate, this._primaryCalendarType);\n\t\t\tconst rangeEnd = new CalendarDateComponent(this._calendarDate, this._primaryCalendarType);\n\t\t\trangeStart.setYear(this._currentPickerDOM._firstYear!);\n\t\t\trangeEnd.setYear(this._currentPickerDOM._lastYear!);\n\n\t\t\tthis._headerYearButtonText = `${yearFormat.format(rangeStart.toLocalJSDate(), true)} - ${yearFormat.format(rangeEnd.toLocalJSDate(), true)}`;\n\t\t} else {\n\t\t\tthis._headerYearButtonText = String(yearFormat.format(this._localDate, true));\n\t\t}\n\n\t\tthis._secondaryCalendarType && this._setSecondaryCalendarTypeButtonText();\n\t}\n\n\tonInvalidation(changeInfo: ChangeInfo) {\n\t\tif (changeInfo.reason === \"childchange\") {\n\t\t\tthis._valueIsProcessed = false;\n\t\t}\n\t}\n\n\t/**\n\t * The user clicked the \"month\" button in the header\n\t */\n\tonHeaderShowMonthPress(e: CustomEvent) {\n\t\tthis._currentPickerDOM._autoFocus = false;\n\t\tthis._currentPicker = \"month\";\n\t\tthis.fireEvent(\"show-month-press\", e);\n\t}\n\n\t/**\n\t * The user clicked the \"year\" button in the header\n\t */\n\tonHeaderShowYearPress(e: CustomEvent) {\n\t\tthis._currentPickerDOM._autoFocus = false;\n\t\tthis._currentPicker = \"year\";\n\t\tthis.fireEvent(\"show-year-press\", e);\n\t}\n\n\tget _currentPickerDOM() {\n\t\t// Calendar's shadowRoot and all the pickers are always present - the \"!\" is safe to be used.\n\t\treturn this.shadowRoot!.querySelector(`[ui5-${this._currentPicker}picker]`)! as unknown as ICalendarPicker;\n\t}\n\n\t/**\n\t * The year clicked the \"Previous\" button in the header\n\t */\n\tonHeaderPreviousPress() {\n\t\tthis._currentPickerDOM._showPreviousPage();\n\t}\n\n\t/**\n\t * The year clicked the \"Next\" button in the header\n\t */\n\tonHeaderNextPress() {\n\t\tthis._currentPickerDOM._showNextPage();\n\t}\n\n\t_setSecondaryCalendarTypeButtonText() {\n\t\tconst yearFormatSecType = DateFormat.getDateInstance({ format: \"y\", calendarType: this._secondaryCalendarType });\n\n\t\tif (this._currentPicker === \"year\") {\n\t\t\tconst rangeStart = new CalendarDateComponent(this._calendarDate, this._primaryCalendarType);\n\t\t\tconst rangeEnd = new CalendarDateComponent(this._calendarDate, this._primaryCalendarType);\n\t\t\trangeStart.setYear(this._currentPickerDOM._firstYear!);\n\t\t\trangeEnd.setYear(this._currentPickerDOM._lastYear!);\n\n\t\t\tconst rangeStartSecType = transformDateToSecondaryType(this.primaryCalendarType, this._secondaryCalendarType, rangeStart.valueOf() / 1000, true)\n\t\t\t\t.firstDate;\n\t\t\tconst rangeEndSecType = transformDateToSecondaryType(this.primaryCalendarType, this._secondaryCalendarType, rangeEnd.valueOf() / 1000, true)\n\t\t\t\t.lastDate;\n\t\t\tthis._headerYearButtonTextSecType = `${yearFormatSecType.format(rangeStartSecType.toLocalJSDate(), true)} - ${yearFormatSecType.format(rangeEndSecType.toLocalJSDate(), true)}`;\n\t\t} else {\n\t\t\tthis._headerYearButtonTextSecType = String(yearFormatSecType.format(this._localDate, true));\n\t\t}\n\t}\n\n\tget secondaryCalendarTypeButtonText() {\n\t\tif (!this.hasSecondaryCalendarType) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst localDate = new Date(this._timestamp * 1000);\n\t\tconst secondYearFormat = DateFormat.getDateInstance({ format: \"y\", calendarType: this._secondaryCalendarType });\n\t\tconst dateInSecType = transformDateToSecondaryType(this._primaryCalendarType, this._secondaryCalendarType, this._timestamp);\n\t\tconst secondMonthInfo = convertMonthNumbersToMonthNames(dateInSecType.firstDate.getMonth(), dateInSecType.lastDate.getMonth(), this._secondaryCalendarType);\n\t\tconst secondYearText = secondYearFormat.format(localDate, true);\n\n\t\treturn {\n\t\t\tyearButtonText: secondYearText,\n\t\t\tmonthButtonText: secondMonthInfo.text,\n\t\t\tmonthButtonInfo: secondMonthInfo.textInfo,\n\t\t};\n\t}\n\n\t/**\n\t * The month button is hidden when the month picker or year picker is shown\n\t * @private\n\t */\n\tget _isHeaderMonthButtonHidden(): boolean {\n\t\treturn this._currentPicker === \"month\" || this._currentPicker === \"year\";\n\t}\n\n\tget _isDayPickerHidden() {\n\t\treturn this._currentPicker !== \"day\";\n\t}\n\n\tget _isMonthPickerHidden() {\n\t\treturn this._currentPicker !== \"month\";\n\t}\n\n\tget _isYearPickerHidden() {\n\t\treturn this._currentPicker !== \"year\";\n\t}\n\n\t_fireEventAndUpdateSelectedDates(selectedDates: Array<number>) {\n\t\tconst datesValues = selectedDates.map(timestamp => {\n\t\t\tconst calendarDate = CalendarDateComponent.fromTimestamp(timestamp * 1000, this._primaryCalendarType);\n\t\t\treturn this.getFormat().format(calendarDate.toUTCJSDate(), true);\n\t\t});\n\n\t\tconst defaultPrevented = !this.fireEvent<CalendarSelectedDatesChangeEventDetail>(\"selected-dates-change\", { timestamp: this.timestamp, dates: [...selectedDates], values: datesValues }, true);\n\t\tif (!defaultPrevented) {\n\t\t\tthis._setSelectedDates(selectedDates);\n\t\t}\n\t}\n\n\tonSelectedDatesChange(e: CustomEvent<DayPickerChangeEventDetail>) {\n\t\tthis.timestamp = e.detail.timestamp;\n\t\tthis._fireEventAndUpdateSelectedDates(e.detail.dates);\n\t}\n\n\tonSelectedMonthChange(e: CustomEvent<MonthPickerChangeEventDetail>) {\n\t\tthis.timestamp = e.detail.timestamp;\n\n\t\tif (this._pickersMode === CalendarPickersMode.DAY_MONTH_YEAR) {\n\t\t\tthis._currentPicker = \"day\";\n\t\t} else {\n\t\t\tthis._fireEventAndUpdateSelectedDates([this.timestamp]);\n\t\t}\n\n\t\tthis._currentPickerDOM._autoFocus = true;\n\t}\n\n\tonSelectedYearChange(e: CustomEvent<YearPickerChangeEventDetail>) {\n\t\tthis.timestamp = e.detail.timestamp;\n\n\t\tif (this._pickersMode === CalendarPickersMode.DAY_MONTH_YEAR) {\n\t\t\tthis._currentPicker = \"day\";\n\t\t} else if (this._pickersMode === CalendarPickersMode.MONTH_YEAR) {\n\t\t\tthis._currentPicker = \"month\";\n\t\t} else {\n\t\t\tthis._fireEventAndUpdateSelectedDates([this.timestamp]);\n\t\t}\n\n\t\tthis._currentPickerDOM._autoFocus = true;\n\t}\n\n\tonNavigate(e: CustomEvent) {\n\t\tthis.timestamp = e.detail.timestamp;\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tif (isF4(e) && this._currentPicker !== \"month\") {\n\t\t\tthis._currentPicker = \"month\";\n\t\t}\n\n\t\tif (isF4Shift(e) && this._currentPicker !== \"year\") {\n\t\t\tthis._currentPicker = \"year\";\n\t\t}\n\t}\n\n\t/**\n\t * Returns an array of UTC timestamps, representing the selected dates.\n\t * @protected\n\t * @deprecated\n\t */\n\tget selectedDates(): Array<number> {\n\t\treturn this._selectedDatesTimestamps;\n\t}\n\n\t/**\n\t * Creates instances of <code>ui5-date</code> inside this <code>ui5-calendar</code> with values, equal to the provided UTC timestamps\n\t * @protected\n\t * @deprecated\n\t * @param selectedDates Array of UTC timestamps\n\t */\n\tset selectedDates(selectedDates: Array<number>) {\n\t\tthis._setSelectedDates(selectedDates);\n\t}\n}\n\nCalendar.define();\n\nexport default Calendar;\nexport type {\n\tICalendarPicker,\n\tCalendarSelectedDatesChangeEventDetail,\n};\n"]}
@@ -7,12 +7,8 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
7
7
  * The <code>ui5-date</code> component defines a calendar date to be used inside <code>ui5-calendar</code>
8
8
  *
9
9
  * @constructor
10
- * @author SAP SE
11
- * @alias sap.ui.webc.main.CalendarDate
12
- * @extends sap.ui.webc.base.UI5Element
10
+ * @extends UI5Element
13
11
  * @abstract
14
- * @tagname ui5-date
15
- * @implements sap.ui.webc.main.ICalendarDate
16
12
  * @public
17
13
  */
18
14
  declare class CalendarDate extends UI5Element {
@@ -20,8 +16,7 @@ declare class CalendarDate extends UI5Element {
20
16
  * The date formatted according to the <code>formatPattern</code> property
21
17
  * of the <code>ui5-calendar</code> that hosts the component.
22
18
  *
23
- * @type {string}
24
- * @name sap.ui.webc.main.CalendarDate.prototype.value
19
+ * @default ""
25
20
  * @public
26
21
  */
27
22
  value: string;
@@ -15,12 +15,8 @@ import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
15
15
  * The <code>ui5-date</code> component defines a calendar date to be used inside <code>ui5-calendar</code>
16
16
  *
17
17
  * @constructor
18
- * @author SAP SE
19
- * @alias sap.ui.webc.main.CalendarDate
20
- * @extends sap.ui.webc.base.UI5Element
18
+ * @extends UI5Element
21
19
  * @abstract
22
- * @tagname ui5-date
23
- * @implements sap.ui.webc.main.ICalendarDate
24
20
  * @public
25
21
  */
26
22
  let CalendarDate = class CalendarDate extends UI5Element {
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarDate.js","sourceRoot":"","sources":["../src/CalendarDate.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,UAAU,MAAM,4CAA4C,CAAC;AAEpE;;;;;;;;;;;;;;;GAeG;AAEH,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,UAAU;CAWpC,CAAA;AADA;IADC,QAAQ,EAAE;2CACI;AAVV,YAAY;IADjB,aAAa,CAAC,UAAU,CAAC;GACpB,YAAY,CAWjB;AAED,YAAY,CAAC,MAAM,EAAE,CAAC;AAEtB,eAAe,YAAY,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>ui5-date</code> component defines a calendar date to be used inside <code>ui5-calendar</code>\n *\n * @constructor\n * @author SAP SE\n * @alias sap.ui.webc.main.CalendarDate\n * @extends sap.ui.webc.base.UI5Element\n * @abstract\n * @tagname ui5-date\n * @implements sap.ui.webc.main.ICalendarDate\n * @public\n */\n@customElement(\"ui5-date\")\nclass CalendarDate extends UI5Element {\n\t/**\n\t * The date formatted according to the <code>formatPattern</code> property\n\t * of the <code>ui5-calendar</code> that hosts the component.\n\t *\n\t * @type {string}\n\t * @name sap.ui.webc.main.CalendarDate.prototype.value\n\t * @public\n\t */\n\t@property()\n\tvalue!: string;\n}\n\nCalendarDate.define();\n\nexport default CalendarDate;\n"]}
1
+ {"version":3,"file":"CalendarDate.js","sourceRoot":"","sources":["../src/CalendarDate.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,UAAU,MAAM,4CAA4C,CAAC;AAEpE;;;;;;;;;;;GAWG;AAEH,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,UAAU;CAUpC,CAAA;AADA;IADC,QAAQ,EAAE;2CACI;AATV,YAAY;IADjB,aAAa,CAAC,UAAU,CAAC;GACpB,YAAY,CAUjB;AAED,YAAY,CAAC,MAAM,EAAE,CAAC;AAEtB,eAAe,YAAY,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\n\n/**\n * @class\n *\n * <h3 class=\"comment-api-title\">Overview</h3>\n *\n * The <code>ui5-date</code> component defines a calendar date to be used inside <code>ui5-calendar</code>\n *\n * @constructor\n * @extends UI5Element\n * @abstract\n * @public\n */\n@customElement(\"ui5-date\")\nclass CalendarDate extends UI5Element {\n\t/**\n\t * The date formatted according to the <code>formatPattern</code> property\n\t * of the <code>ui5-calendar</code> that hosts the component.\n\t *\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\tvalue!: string;\n}\n\nCalendarDate.define();\n\nexport default CalendarDate;\n"]}
@@ -12,32 +12,31 @@ declare class CalendarHeader extends UI5Element {
12
12
  /**
13
13
  * Defines component's timestamp.
14
14
  * <b>Note:</b> set by the Calendar component
15
- * @type {sap.ui.webc.base.types.Integer}
16
- * @name sap.ui.webc.main.CalendarHeader.prototype.timestamp
15
+ *
17
16
  * @public
17
+ * @default undefined
18
18
  */
19
19
  timestamp?: number;
20
20
  /**
21
21
  * Defines component's primary calendar type.
22
22
  * <b>Note:</b> set by the Calendar component
23
- * @type {sap.ui.webc.base.types.CalendarType}
24
- * @name sap.ui.webc.main.CalendarHeader.prototype.primaryCalendarType
23
+ *
25
24
  * @public
25
+ * @default undefined
26
26
  */
27
27
  primaryCalendarType?: `${CalendarType}`;
28
28
  /**
29
29
  * Defines component's secondary calendar type.
30
30
  * <b>Note:</b> set by the Calendar component
31
- * @sience 1.0.0-rc.16
32
- * @defaultvalue undefined
33
- * @type {sap.ui.webc.base.types.CalendarType}
34
- * @name sap.ui.webc.main.CalendarHeader.prototype.secondaryCalendarType
31
+ *
32
+ * @since 1.0.0-rc.16
33
+ * @default undefined
35
34
  * @public
36
35
  */
37
36
  secondaryCalendarType?: `${CalendarType}`;
38
37
  /**
39
38
  * Stores information for month button for secondary calendar type
40
- * @type {object}
39
+ *
41
40
  * @private
42
41
  */
43
42
  buttonTextForSecondaryCalendarType: SecondaryCalendarButtonTexts;
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarHeader.js","sourceRoot":"","sources":["../src/CalendarHeader.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport CalendarType from \"@ui5/webcomponents-base/dist/types/CalendarType.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-left.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-right.js\";\nimport Icon from \"./Icon.js\";\nimport CalendarHeaderTemplate from \"./generated/templates/CalendarHeaderTemplate.lit.js\";\nimport {\n\tCALENDAR_HEADER_NEXT_BUTTON,\n\tCALENDAR_HEADER_PREVIOUS_BUTTON,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport calendarHeaderStyles from \"./generated/themes/CalendarHeader.css.js\";\n\ntype SecondaryCalendarButtonTexts = {\n\tmonthButtonText: string,\n\tmonthButtonInfo: string,\n\tyearButtonText: string,\n}\n\n@customElement({\n\ttag: \"ui5-calendar-header\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: CalendarHeaderTemplate,\n\tstyles: calendarHeaderStyles,\n\tdependencies: [Icon],\n})\n@event(\"next-press\")\n@event(\"previous-press\")\n@event(\"show-month-press\")\n@event(\"show-year-press\")\nclass CalendarHeader extends UI5Element {\n\t/**\n\t * Defines component's timestamp.\n\t * <b>Note:</b> set by the Calendar component\n\t * @type {sap.ui.webc.base.types.Integer}\n\t * @name sap.ui.webc.main.CalendarHeader.prototype.timestamp\n\t * @public\n\t */\n\t@property({ validator: Integer })\n\ttimestamp?: number;\n\n\t/**\n\t * Defines component's primary calendar type.\n\t * <b>Note:</b> set by the Calendar component\n\t * @type {sap.ui.webc.base.types.CalendarType}\n\t * @name sap.ui.webc.main.CalendarHeader.prototype.primaryCalendarType\n\t * @public\n\t */\n\t@property({ type: CalendarType })\n\tprimaryCalendarType?: `${CalendarType}`;\n\n\t/**\n\t * Defines component's secondary calendar type.\n\t * <b>Note:</b> set by the Calendar component\n\t * @sience 1.0.0-rc.16\n\t * @defaultvalue undefined\n\t * @type {sap.ui.webc.base.types.CalendarType}\n\t * @name sap.ui.webc.main.CalendarHeader.prototype.secondaryCalendarType\n\t * @public\n\t */\n\t@property({ type: CalendarType })\n\tsecondaryCalendarType?: `${CalendarType}`;\n\n\t/**\n\t * Stores information for month button for secondary calendar type\n\t * @type {object}\n\t * @private\n\t*/\n\t@property({ type: Object })\n\tbuttonTextForSecondaryCalendarType!: SecondaryCalendarButtonTexts;\n\n\t@property({ type: Boolean })\n\tisNextButtonDisabled!: boolean;\n\n\t@property({ type: Boolean })\n\tisPrevButtonDisabled!: boolean;\n\n\t@property({ type: Boolean })\n\tisMonthButtonHidden!: boolean;\n\n\t@property()\n\t_monthButtonText!: string;\n\n\t@property()\n\t_yearButtonText!: string;\n\n\t@property()\n\t_yearButtonTextSecType!: string;\n\n\t@property({ type: Boolean })\n\tisYearButtonHidden!: boolean;\n\n\t_prevButtonText?: string;\n\t_nextButtonText?: string;\n\t_secondMonthButtonText?: string;\n\t_secondYearButtonText?: string;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tstatic async onDefine() {\n\t\tCalendarHeader.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._prevButtonText = CalendarHeader.i18nBundle.getText(CALENDAR_HEADER_PREVIOUS_BUTTON);\n\t\tthis._nextButtonText = CalendarHeader.i18nBundle.getText(CALENDAR_HEADER_NEXT_BUTTON);\n\n\t\tif (this.hasSecondaryCalendarType) {\n\t\t\tthis._secondMonthButtonText = this.buttonTextForSecondaryCalendarType.monthButtonText;\n\t\t\tthis._secondYearButtonText = this.buttonTextForSecondaryCalendarType.yearButtonText;\n\t\t}\n\t}\n\n\tonPrevButtonClick(e: MouseEvent) {\n\t\tif (this.isPrevButtonDisabled) {\n\t\t\te.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.fireEvent(\"previous-press\", e);\n\t\te.preventDefault();\n\t}\n\n\tonNextButtonClick(e: MouseEvent) {\n\t\tif (this.isNextButtonDisabled) {\n\t\t\te.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.fireEvent(\"next-press\", e);\n\t\te.preventDefault();\n\t}\n\n\tonMonthButtonClick(e: MouseEvent) {\n\t\tthis.fireEvent(\"show-month-press\", e);\n\t}\n\n\tonMonthButtonKeyDown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.fireEvent(\"show-month-press\", e);\n\t\t}\n\t}\n\n\tonMonthButtonKeyUp(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis.fireEvent(\"show-month-press\", e);\n\t\t}\n\t}\n\n\tonYearButtonClick(e: MouseEvent) {\n\t\tthis.fireEvent(\"show-year-press\", e);\n\t}\n\n\tonYearButtonKeyDown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.fireEvent(\"show-year-press\", e);\n\t\t}\n\t}\n\n\tonYearButtonKeyUp(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis.fireEvent(\"show-year-press\", e);\n\t\t}\n\t}\n\n\tget hasSecondaryCalendarType() {\n\t\treturn !!this.secondaryCalendarType && this.secondaryCalendarType !== this.primaryCalendarType;\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\tprevButton: {\n\t\t\t\t\"ui5-calheader-arrowbtn\": true,\n\t\t\t\t\"ui5-calheader-arrowbtn-disabled\": this.isPrevButtonDisabled,\n\t\t\t},\n\t\t\tnextButton: {\n\t\t\t\t\"ui5-calheader-arrowbtn\": true,\n\t\t\t\t\"ui5-calheader-arrowbtn-disabled\": this.isNextButtonDisabled,\n\t\t\t},\n\t\t};\n\t}\n\n\tget accInfo() {\n\t\treturn {\n\t\t\tariaLabelMonthButton: this.hasSecondaryCalendarType\n\t\t\t\t? `${this._monthButtonText}, ${this.buttonTextForSecondaryCalendarType.monthButtonInfo}` : `${this._monthButtonText}`,\n\t\t};\n\t}\n}\n\nCalendarHeader.define();\n\nexport default CalendarHeader;\n"]}
1
+ {"version":3,"file":"CalendarHeader.js","sourceRoot":"","sources":["../src/CalendarHeader.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { isSpace, isEnter } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport CalendarType from \"@ui5/webcomponents-base/dist/types/CalendarType.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-left.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-right.js\";\nimport Icon from \"./Icon.js\";\nimport CalendarHeaderTemplate from \"./generated/templates/CalendarHeaderTemplate.lit.js\";\nimport {\n\tCALENDAR_HEADER_NEXT_BUTTON,\n\tCALENDAR_HEADER_PREVIOUS_BUTTON,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport calendarHeaderStyles from \"./generated/themes/CalendarHeader.css.js\";\n\ntype SecondaryCalendarButtonTexts = {\n\tmonthButtonText: string,\n\tmonthButtonInfo: string,\n\tyearButtonText: string,\n}\n\n@customElement({\n\ttag: \"ui5-calendar-header\",\n\tlanguageAware: true,\n\trenderer: litRender,\n\ttemplate: CalendarHeaderTemplate,\n\tstyles: calendarHeaderStyles,\n\tdependencies: [Icon],\n})\n@event(\"next-press\")\n@event(\"previous-press\")\n@event(\"show-month-press\")\n@event(\"show-year-press\")\nclass CalendarHeader extends UI5Element {\n\t/**\n\t * Defines component's timestamp.\n\t * <b>Note:</b> set by the Calendar component\n\t *\n\t * @public\n\t * @default undefined\n\t */\n\t@property({ validator: Integer })\n\ttimestamp?: number;\n\n\t/**\n\t * Defines component's primary calendar type.\n\t * <b>Note:</b> set by the Calendar component\n\t *\n\t * @public\n\t * @default undefined\n\t */\n\t@property({ type: CalendarType })\n\tprimaryCalendarType?: `${CalendarType}`;\n\n\t/**\n\t * Defines component's secondary calendar type.\n\t * <b>Note:</b> set by the Calendar component\n\t *\n\t * @since 1.0.0-rc.16\n\t * @default undefined\n\t * @public\n\t */\n\t@property({ type: CalendarType })\n\tsecondaryCalendarType?: `${CalendarType}`;\n\n\t/**\n\t * Stores information for month button for secondary calendar type\n\t *\n\t * @private\n\t*/\n\t@property({ type: Object })\n\tbuttonTextForSecondaryCalendarType!: SecondaryCalendarButtonTexts;\n\n\t@property({ type: Boolean })\n\tisNextButtonDisabled!: boolean;\n\n\t@property({ type: Boolean })\n\tisPrevButtonDisabled!: boolean;\n\n\t@property({ type: Boolean })\n\tisMonthButtonHidden!: boolean;\n\n\t@property()\n\t_monthButtonText!: string;\n\n\t@property()\n\t_yearButtonText!: string;\n\n\t@property()\n\t_yearButtonTextSecType!: string;\n\n\t@property({ type: Boolean })\n\tisYearButtonHidden!: boolean;\n\n\t_prevButtonText?: string;\n\t_nextButtonText?: string;\n\t_secondMonthButtonText?: string;\n\t_secondYearButtonText?: string;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tstatic async onDefine() {\n\t\tCalendarHeader.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tconstructor() {\n\t\tsuper();\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._prevButtonText = CalendarHeader.i18nBundle.getText(CALENDAR_HEADER_PREVIOUS_BUTTON);\n\t\tthis._nextButtonText = CalendarHeader.i18nBundle.getText(CALENDAR_HEADER_NEXT_BUTTON);\n\n\t\tif (this.hasSecondaryCalendarType) {\n\t\t\tthis._secondMonthButtonText = this.buttonTextForSecondaryCalendarType.monthButtonText;\n\t\t\tthis._secondYearButtonText = this.buttonTextForSecondaryCalendarType.yearButtonText;\n\t\t}\n\t}\n\n\tonPrevButtonClick(e: MouseEvent) {\n\t\tif (this.isPrevButtonDisabled) {\n\t\t\te.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.fireEvent(\"previous-press\", e);\n\t\te.preventDefault();\n\t}\n\n\tonNextButtonClick(e: MouseEvent) {\n\t\tif (this.isNextButtonDisabled) {\n\t\t\te.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.fireEvent(\"next-press\", e);\n\t\te.preventDefault();\n\t}\n\n\tonMonthButtonClick(e: MouseEvent) {\n\t\tthis.fireEvent(\"show-month-press\", e);\n\t}\n\n\tonMonthButtonKeyDown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.fireEvent(\"show-month-press\", e);\n\t\t}\n\t}\n\n\tonMonthButtonKeyUp(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis.fireEvent(\"show-month-press\", e);\n\t\t}\n\t}\n\n\tonYearButtonClick(e: MouseEvent) {\n\t\tthis.fireEvent(\"show-year-press\", e);\n\t}\n\n\tonYearButtonKeyDown(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.fireEvent(\"show-year-press\", e);\n\t\t}\n\t}\n\n\tonYearButtonKeyUp(e: KeyboardEvent) {\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t\tthis.fireEvent(\"show-year-press\", e);\n\t\t}\n\t}\n\n\tget hasSecondaryCalendarType() {\n\t\treturn !!this.secondaryCalendarType && this.secondaryCalendarType !== this.primaryCalendarType;\n\t}\n\n\tget classes() {\n\t\treturn {\n\t\t\tprevButton: {\n\t\t\t\t\"ui5-calheader-arrowbtn\": true,\n\t\t\t\t\"ui5-calheader-arrowbtn-disabled\": this.isPrevButtonDisabled,\n\t\t\t},\n\t\t\tnextButton: {\n\t\t\t\t\"ui5-calheader-arrowbtn\": true,\n\t\t\t\t\"ui5-calheader-arrowbtn-disabled\": this.isNextButtonDisabled,\n\t\t\t},\n\t\t};\n\t}\n\n\tget accInfo() {\n\t\treturn {\n\t\t\tariaLabelMonthButton: this.hasSecondaryCalendarType\n\t\t\t\t? `${this._monthButtonText}, ${this.buttonTextForSecondaryCalendarType.monthButtonInfo}` : `${this._monthButtonText}`,\n\t\t};\n\t}\n}\n\nCalendarHeader.define();\n\nexport default CalendarHeader;\n"]}